diff --git a/plugins/bookmarks-by-zaso.css b/plugins/bookmarks-by-zaso.css index d15231bd..9ce13c7e 100644 --- a/plugins/bookmarks-by-zaso.css +++ b/plugins/bookmarks-by-zaso.css @@ -1,368 +1,380 @@ -#bookmarksBox * { - display: block; - width: auto; - height: auto; - font-family: Verdana,Geneva,sans-serif; - font-size: 13px; - line-height: 22px; - text-indent: 0; - text-decoration: none; - margin: 0; - padding: 0; + +#bookmarksBox *{ + display:block; + padding:0; + margin:0; + width:auto; + height:auto; + font-family:Verdana, Geneva, sans-serif; + font-size:13px; + line-height:22px; + text-indent:0; + text-decoration:none; } -#bookmarksBox { - margin-top: -100%; - position: absolute!important; - z-index: 4001; - top: 100px; - left: 100px; + +#bookmarksBox{ + margin-top:-100%; + position:absolute !important; + z-index:4001; + top:100px; + left:100px; +} +#bookmarksBox .addForm, +#bookmarksBox #bookmarksTypeBar, +#bookmarksBox h5{ + height:28px; + overflow:hidden; + color:#fff; + font-size:14px; } -#bookmarksBox .addForm,#bookmarksBox #bookmarksTypeBar,#bookmarksBox h5 { - height: 28px; - overflow: hidden; - color: #fff; - font-size: 14px; + +#bookmarksBox #topBar, +#bookmarksBox #topBar *{ + height:15px !important; } -#bookmarksBox #topBar,#bookmarksBox #topBar * { - height: 15px!important; +#bookmarksBox #topBar *{ + float:left !important; +} +#bookmarksBox .handle{ + text-indent:-20px; + width:209px; + text-align:center; + color:#fff; + line-height:8px; + cursor:move; } -#bookmarksBox #topBar * { - float: left!important; +#bookmarksBox #topBar .btn{ + display:block; + width:19px; + cursor:pointer; + color:#20a8b1; +} +#bookmarksBox #topBar #bookmarksMin{ + font-weight:bold; + text-align:center; + line-height:14px; + font-size:18px; +} +#bookmarksBox #topBar #bookmarksMin:hover{ + color:gold; } -#bookmarksBox .handle { - text-indent: -20px; - width: 209px; - text-align: center; - color: #fff; - line-height: 8px; - cursor: move; +#bookmarksBox #bookmarksTypeBar{ + clear:both; } -#bookmarksBox #topBar .btn { - display: block; - width: 19px; - cursor: pointer; - color: #20a8b1; +#bookmarksBox h5{ + padding:4px 0; + width:114px; + text-align:center; + color:#788; } -#bookmarksBox #topBar #bookmarksMin { - font-weight: 700; - text-align: center; - line-height: 14px; - font-size: 18px; +#bookmarksBox h5.current{ + cursor:default; + background:none; + color:#fff !important; +} +#bookmarksBox h5:hover{ + color:gold; + background:rgba(0,0,0,0); } -#bookmarksBox #topBar #bookmarksMin: hover { - color: #FFD700; +#bookmarksBox #topBar .btn, +#bookmarksBox .addForm, +#bookmarksBox .handle, +#bookmarksBox #bookmarksTypeBar, +#bookmarksBox .bookmarkList li.bookmarksEmpty, +#bookmarksBox .bookmarkList li.bkmrk a, +#bookmarksBox .bookmarkList li.bkmrk:hover{ + background-color:rgba(8,48,78,.85); } -#bookmarksBox #bookmarksTypeBar { - clear: both; +#bookmarksBox h5, +#bookmarksBox .bookmarkList li.bkmrk:hover .bookmarksLink, +#bookmarksBox .addForm *{ + background:rgba(0,0,0,.3); } -#bookmarksBox h5 { - width: 114px; - text-align: center; - color: #788; - padding: 4px 0; +#bookmarksBox .addForm *{ + display:block; + float:left; + padding:4px 8px 3px; } -#bookmarksBox h5.current { - cursor: default; - background: 0; - color: #fff!important; +#bookmarksBox .addForm a{ + cursor:pointer; + color:#20a8b1; + font-size:12px; + width:65px; + text-align:center; + line-height:20px; + padding:4px 0 3px; } -#bookmarksBox h5: hover { - color: #FFD700; - background: rgba(0,0,0,0); +#bookmarksBox .addForm a:hover{ + background:gold; + color:#000; + text-decoration:none; } -#bookmarksBox #topBar .btn,#bookmarksBox .addForm,#bookmarksBox .handle,#bookmarksBox #bookmarksTypeBar,#bookmarksBox .bookmarkList li.bookmarksEmpty,#bookmarksBox .bookmarkList li.bkmrk a,#bookmarksBox .bookmarkList li.bkmrk: hover { - background-color: rgba(8,48,78,.85); +#bookmarksBox .addForm input{ + font-size:11px !important; + color:#ffce00; + width:81px; + line-height:11px; + font-size:12px; + -webkit-box-sizing:content-box; + -moz-box-sizing:content-box; + box-sizing:content-box; } -#bookmarksBox h5,#bookmarksBox .bookmarkList li.bkmrk: hover .bookmarksLink,#bookmarksBox .addForm * { - background: rgba(0,0,0,.3); +#bookmarksBox #bkmrk_portals .addForm input{ + width:147px; } -#bookmarksBox .addForm * { - display: block; - float: left; - padding: 4px 8px 3px; +#bookmarksBox .addForm input:hover, +#bookmarksBox .addForm input:focus{ + outline:0; + background:rgba(0,0,0,.6); } -#bookmarksBox .addForm a { - cursor: pointer; - color: #20a8b1; - font-size: 12px; - width: 65px; - text-align: center; - line-height: 20px; - padding: 4px 0 3px; +#bookmarksBox .bookmarkList > ul{ + width:231px; + clear:both; + list-style-type:none; + color:#fff; + overflow:hidden; + max-height:550px; } -#bookmarksBox .addForm a: hover { - background: #FFD700; - color: #000; - text-decoration: none; +#bookmarksBox .sortable-placeholder{ + background:rgba(8,48,78,.55); + box-shadow:inset 1px 0 0 #20a8b1; +} +#bookmarksBox .ui-sortable-helper{ + border-top-width:1px; } -#bookmarksBox .addForm input { - font-size: 11px!important; - color: #ffce00; - width: 81px; - line-height: 11px; - -webkit-box-sizing: content-box; - -moz-box-sizing: content-box; - box-sizing: content-box; +#bookmarksBox .bookmarkList{ display:none; } +#bookmarksBox .bookmarkList.current{ display:block; } + +#bookmarksBox h5, +#bookmarksBox .addForm *, +#bookmarksBox ul li.bkmrk, +#bookmarksBox ul li.bkmrk a{ + height:22px; } -#bookmarksBox #bkmrk_portals .addForm input { - width: 147px; +#bookmarksBox h5, +#bookmarksBox ul li.bkmrk a{ + overflow:hidden; + cursor:pointer; + float:left; +} +#bookmarksBox ul .bookmarksEmpty{ text-indent:27px; color:#eee; } +#bookmarksBox ul .bookmarksRemoveFrom{ width:19px; text-align:center; color:#fff; } +#bookmarksBox ul .bookmarksLink{ width:171px; padding:0 10px 0 8px; color:gold; } +#bookmarksBox ul .bookmarksLink.selected{ color:#03fe03; } +#bookmarksBox ul .othersBookmarks .bookmarksLink{ width:190px; } + +#bookmarksBox ul .bookmarksLink:hover{ color:#03fe03; } +#bookmarksBox ul .bookmarksRemoveFrom:hover{ color:#fff; background:#e22; } + +/************************************/ + +#bookmarksBox, +#bookmarksBox * +{ border-color:#20a8b1; border-style:solid; border-width:0; } + +#bookmarksBox #topBar +, #bookmarksBox ul .bookmarkFolder +{ border-top-width:1px; } + +#bookmarksBox #topBar +, #bookmarksBox #bookmarksTypeBar +, #bookmarksBox .addForm +, #bookmarksBox ul .bookmarkFolder .folderLabel +, #bookmarksBox ul li.bkmrk +{ border-bottom-width:1px; } + +#bookmarksBox ul .bookmarkFolder +, #bookmarksBox ul .bookmarksRemoveFrom +{ border-right-width:1px; border-left-width:1px; } + +#bookmarksBox #topBar * +, #bookmarksBox #bookmarksTypeBar * +, #bookmarksBox .addForm * +{ border-left-width:1px; } + +#bookmarksBox #topBar +, #bookmarksBox #bookmarksTypeBar +, #bookmarksBox .addForm +{ border-right-width:1px; } + +#bookmarksBox ul .othersBookmarks .bookmarksRemoveFrom +, #bookmarksBox ul .bookmarkFolder .folderLabel .bookmarksRemoveFrom +{ border-left-width:0px; } + +/************************************/ + +#bookmarksShow{ + display:block; + position:absolute; + top:0; + left:250px; + width:47px; + margin-top:-36px; + height:64px; + cursor:pointer; + z-index:4005; + + background-position:center bottom; + background-repeat:no-repeat; + transition:margin-top 100ms ease-in-out; + background-image:url(@@INCLUDEIMAGE:plugins/bookmarks-by-zaso-logo.png@@); +} +#bookmarksShow:hover{ + margin-top:0px !important; } -#bookmarksBox .addForm input: hover,#bookmarksBox .addForm input: focus { - outline: 0; - background: rgba(0,0,0,.6); +#bookmarkStar{ + display:inline-block; + position:relative; + top:1px; + margin-right:3px; + width:16px; + height:15px; + overflow:hidden; + background-image:url(@@INCLUDEIMAGE:plugins/bookmarks-by-zaso-star.png@@); + background-position:left center; + background-repeat:no-repeat; +} +#bookmarkStar:hover, +#bookmarkStar.favorite{ + background-position:right center; } -#bookmarksBox .bookmarkList>ul { - width: 231px; - clear: both; - list-style-type: none; - color: #fff; - overflow: hidden; - max-height: 550px; +#bookmarksBox .handleScroll{ + cursor:s-resize; + width:3px; + right:3px; + background:gold; + opacity:.7; } -#bookmarksBox .sortable-placeholder { - background: rgba(8,48,78,.55); - box-shadow: inset 1px 0 0 #20a8b1; +/************************************/ + +#bookmarksBox .bookmarkList .bookmarkFolder{ + overflow:hidden; + margin-top:-1px; + height:auto; + background:rgba(8,58,78,.7); } -#bookmarksBox .bookmarkList { - display: none; +#bookmarksBox .bookmarkList ul li.sortable-placeholder{ + box-shadow:inset -1px 0 0 #20a8b1, inset 1px 0 0 #20a8b1, 0 -1px 0 #20a8b1; + background:rgba(8,58,78,.9); } -#bookmarksBox h5,#bookmarksBox .addForm *,#bookmarksBox ul li.bkmrk,#bookmarksBox ul li.bkmrk a { - height: 22px; +#bookmarksBox .bookmarkList .bkmrk.ui-sortable-helper{ + border-right-width:1px; + border-left-width:1px; +} +#bookmarksBox .bookmarkList ul li ul li.sortable-placeholder{ + height:23px; + box-shadow:inset 0 -1px 0 #20a8b1, inset 1px 0 0 #20a8b1; } -#bookmarksBox h5,#bookmarksBox ul li.bkmrk a { - overflow: hidden; - cursor: pointer; - float: left; +#bookmarksBox .bookmarkList ul li.bookmarkFolder.ui-sortable-helper, +#bookmarksBox .bookmarkList ul li.othersBookmarks ul, +#bookmarksBox .bookmarkList ul li.othersBookmarks ul li.sortable-placeholder{ + box-shadow:inset 0 -1px 0 #20a8b1; } -#bookmarksBox ul .bookmarksEmpty { - text-indent: 27px; - color: #eee; +#bookmarksBox .bookmarkList .bookmarkFolder .folderLabel .bookmarksAnchor span, +#bookmarksBox .bookmarkList .bookmarkFolder .folderLabel > span, +#bookmarksBox .bookmarkList .bookmarkFolder .folderLabel > span > span, +#bookmarksBox .bookmarkList .triangle{ + width:0px; + height:0px; } -#bookmarksBox ul .bookmarksRemoveFrom { - width: 19px; - text-align: center; - color: #fff; +/************************************/ + +#bookmarksBox .bookmarkList .bookmarkFolder .folderLabel{ + overflow:visible; + height:25px; + cursor:pointer; + background:#069; + text-indent:0px; +} +#bookmarksBox .bookmarkList .bookmarkFolder .folderLabel > *{ + height:25px; + float:left; +} +#bookmarksBox .bookmarkList .bookmarkFolder .folderLabel .bookmarksAnchor{ + line-height:25px; + color:#fff; + width:209px; +} +#bookmarksBox .bookmarkList .bookmarkFolder .folderLabel .bookmarksAnchor span{ + float:left; + border-width:5px 0 5px 7px; + border-color:transparent transparent transparent white; + margin:7px 7px 0 6px; +} +#bookmarksBox .bookmarkList .bookmarkFolder.active .folderLabel .bookmarksAnchor span{ + margin:9px 5px 0 5px; + border-width:7px 5px 0 5px; + border-color:white transparent transparent transparent; } -#bookmarksBox ul .bookmarksLink { - width: 171px; - color: #FFD700; - padding: 0 10px 0 8px; +/************************************************************************************************************/ + +#bookmarksBox .bookmarkList .bookmarkFolder .folderLabel > span, +#bookmarksBox .bookmarkList .bookmarkFolder .folderLabel > span > span{ + display:none; + border-width:0px 12px 10px 0; + border-color:transparent #20a8b1 transparent transparent; + margin:-20px 0 0; + position:relative; + top:21px; + left:219px; +} +#bookmarksBox .bookmarkList .bookmarkFolder .folderLabel > span > span{ + top:18px; + left:0px; + border-width:0px 10px 9px 0; + border-color:transparent #069 transparent transparent; +} +#bookmarksBox .bookmarkList .bookmarkFolder.active .folderLabel > span, +#bookmarksBox .bookmarkList .bookmarkFolder.active .folderLabel > span > span{ + display:block; +} +#bookmarksBox .bookmarkList .bookmarkFolder.active .folderLabel:hover > span > span{ + border-color:transparent #036 transparent transparent; } -#bookmarksBox ul .othersBookmarks .bookmarksLink { - width: 190px; +/************************************************************************************************************/ + +#bookmarksBox .bookmarkList .bookmarkFolder .folderLabel:hover .bookmarksAnchor{ + background:#036; } -#bookmarksBox ul .bookmarksRemoveFrom: hover { - color: #fff; - background: #e22; +#bookmarksBox .bookmarkList .bookmarkFolder ul{ + display:none; + margin-left:19px; +} +#bookmarksBox .bookmarkList .bookmarkFolder.active ul{ + display:block; + min-height:22px; } -#bookmarksBox,#bookmarksBox * { - border-color: #20a8b1; - border-style: solid; - border-width: 0; -} - -#bookmarksBox #topBar,#bookmarksBox #bookmarksTypeBar,#bookmarksBox .addForm,#bookmarksBox ul .bookmarkFolder .folderLabel,#bookmarksBox ul li.bkmrk { - border-bottom-width: 1px; -} - -#bookmarksBox #topBar *,#bookmarksBox #bookmarksTypeBar *,#bookmarksBox .addForm * { - border-left-width: 1px; -} - -#bookmarksBox #topBar,#bookmarksBox #bookmarksTypeBar,#bookmarksBox .addForm { - border-right-width: 1px; -} - -#bookmarksBox ul .othersBookmarks .bookmarksRemoveFrom,#bookmarksBox ul .bookmarkFolder .folderLabel .bookmarksRemoveFrom { - border-left-width: 0; -} - -#bookmarksShow { - display: block; - position: absolute; - top: 0; - left: 250px; - width: 47px; - margin-top: -100%; - height: 64px; - cursor: pointer; - z-index: 4005; - background-position: center bottom; - background-repeat: no-repeat; - transition: margin-top 100ms ease-in-out; - background-image: url(@@INCLUDEIMAGE:plugins/bookmarks-by-zaso-logo.png@@); -} - -#bookmarksShow: hover { - margin-top: 0!important; -} - -#bookmarkStar { - display: inline-block; - position: relative; - top: 1px; - margin-right: 3px; - width: 16px; - height: 15px; - overflow: hidden; - background-image: url(@@INCLUDEIMAGE:plugins/bookmarks-by-zaso-star.png@@); - background-position: left center; - background-repeat: no-repeat; -} - -#bookmarkStar: hover,#bookmarkStar.favorite { - background-position: right center; -} - -#bookmarksBox .handleScroll { - cursor: s-resize; - width: 3px; - right: 3px; - background: #FFD700; - opacity: .7; -} - -#bookmarksBox .bookmarkList .bookmarkFolder { - overflow: hidden; - margin-top: -1px; - height: auto; - background: rgba(8,58,78,.7); -} - -#bookmarksBox .bookmarkList ul li.sortable-placeholder { - box-shadow: inset -1px 0 0 #20a8b1,inset 1px 0 0 #20a8b1,0 -1px 0 #20a8b1; - background: rgba(8,58,78,.9); -} - -#bookmarksBox .bookmarkList ul li ul li.sortable-placeholder { - height: 23px; - box-shadow: inset 0 -1px 0 #20a8b1,inset 1px 0 0 #20a8b1; -} - -#bookmarksBox .bookmarkList ul li.bookmarkFolder.ui-sortable-helper,#bookmarksBox .bookmarkList ul li.othersBookmarks ul,#bookmarksBox .bookmarkList ul li.othersBookmarks ul li.sortable-placeholder { - box-shadow: inset 0 -1px 0 #20a8b1; -} - -#bookmarksBox .bookmarkList .bookmarkFolder .folderLabel .bookmarksAnchor span,#bookmarksBox .bookmarkList .bookmarkFolder .folderLabel>span,#bookmarksBox .bookmarkList .bookmarkFolder .folderLabel>span>span,#bookmarksBox .bookmarkList .triangle { - width: 0; - height: 0; -} - -#bookmarksBox .bookmarkList .bookmarkFolder .folderLabel { - overflow: visible; - height: 25px; - cursor: pointer; - background: #069; - text-indent: 0; -} - -#bookmarksBox .bookmarkList .bookmarkFolder .folderLabel>* { - height: 25px; - float: left; -} - -#bookmarksBox .bookmarkList .bookmarkFolder .folderLabel .bookmarksAnchor { - line-height: 25px; - color: #fff; - width: 209px; -} - -#bookmarksBox .bookmarkList .bookmarkFolder .folderLabel .bookmarksAnchor span { - float: left; - border-color: transparent transparent transparent #FFF; - border-width: 5px 0 5px 7px; - margin: 7px 7px 0 6px; -} - -#bookmarksBox .bookmarkList .bookmarkFolder.active .folderLabel .bookmarksAnchor span { - border-color: #FFF transparent transparent; - border-width: 7px 5px 0; - margin: 9px 5px 0; -} - -#bookmarksBox .bookmarkList .bookmarkFolder .folderLabel>span,#bookmarksBox .bookmarkList .bookmarkFolder .folderLabel>span>span { - display: none; - position: relative; - top: 21px; - left: 219px; - border-color: transparent #20a8b1 transparent transparent; - border-width: 0 12px 10px 0; - margin: -20px 0 0; -} - -#bookmarksBox .bookmarkList .bookmarkFolder .folderLabel>span>span { - top: 18px; - left: 0; - border-color: transparent #069 transparent transparent; - border-width: 0 10px 9px 0; -} - -#bookmarksBox .bookmarkList .bookmarkFolder.active .folderLabel: hover>span>span { - border-color: transparent #036 transparent transparent; -} - -#bookmarksBox .bookmarkList .bookmarkFolder .folderLabel: hover .bookmarksAnchor { - background: #036; -} - -#bookmarksBox .bookmarkList .bookmarkFolder ul { - display: none; - margin-left: 19px; -} - -#bookmarksBox .bookmarkList .bookmarkFolder.active ul { - display: block; - min-height: 22px; -} - -#bookmarksBox .bookmarkFolder.othersBookmarks ul { - margin-left: 0; -} - -#bookmarksBox .ui-sortable-helper,#bookmarksBox #topBar,#bookmarksBox ul .bookmarkFolder { - border-top-width: 1px; -} - -#bookmarksBox .bookmarkList.current,#bookmarksBox .bookmarkList .bookmarkFolder.active .folderLabel>span,#bookmarksBox .bookmarkList .bookmarkFolder.active .folderLabel>span>span { - display: block; -} - -#bookmarksBox ul .bookmarksLink.selected,#bookmarksBox ul .bookmarksLink: hover { - color: #03fe03; -} - -#bookmarksBox ul .bookmarkFolder,#bookmarksBox ul .bookmarksRemoveFrom,#bookmarksBox .bookmarkList .bkmrk.ui-sortable-helper { - border-right-width: 1px; - border-left-width: 1px; -} +#bookmarksBox .bookmarkFolder.othersBookmarks ul{ + margin-left:0; +} \ No newline at end of file diff --git a/plugins/bookmarks-by-zaso.user.js b/plugins/bookmarks-by-zaso.user.js index df6c715e..75142533 100644 --- a/plugins/bookmarks-by-zaso.user.js +++ b/plugins/bookmarks-by-zaso.user.js @@ -5,384 +5,376 @@ // @namespace https://github.com/jonatkins/ingress-intel-total-conversion // @updateURL @@UPDATEURL@@ // @downloadURL @@DOWNLOADURL@@ -// @description [@@BUILDNAME@@-@@BUILDDATE@@] Save your favorite Maps and Portals. +// @description [@@BUILDNAME@@-@@BUILDDATE@@] Save your favorite Maps and Portals and move the intelmap view in a second. The ingress world just a click. // @include https://www.ingress.com/intel* // @include http://www.ingress.com/intel* // @match https://www.ingress.com/intel* // @match http://www.ingress.com/intel* // ==/UserScript== -function wrapper() { -// ensure plugin framework is there, even if iitc is not yet loaded -if(typeof window.plugin !== 'function') window.plugin = function() {}; +function wrapper(){ + // ensure plugin framework is there, even if iitc is not yet loaded + if(typeof window.plugin !== 'function') window.plugin = function(){}; + // PLUGIN START //////////////////////////////////////////////////////// + // use own namespace for plugin + window.plugin.bookmarks = function(){}; -// PLUGIN START //////////////////////////////////////////////////////// + window.plugin.bookmarks.KEY_OTHER_BKMRK = 'idOthers'; + window.plugin.bookmarks.LOCAL_STORAGE_status_box = 'plugin-bookmarks-status-box'; + window.plugin.bookmarks.LOCAL_STORAGE_bkmrk_portals = 'plugin-bookmarks-portals-data'; + window.plugin.bookmarks.LOCAL_STORAGE_bkmrk_maps = 'plugin-bookmarks-maps-data'; + window.plugin.bookmarks.bkmrk_portals = {}; + window.plugin.bookmarks.bkmrk_maps = {}; -// use own namespace for plugin -window.plugin.bookmarks = function() {}; - -window.plugin.bookmarks.KEY_OTHER_BKMRK = 'idOthers'; -window.plugin.bookmarks.LOCAL_STORAGE_status_box = 'plugin-bookmarks-status-box'; -window.plugin.bookmarks.LOCAL_STORAGE_bkmrk_portals = 'plugin-bookmarks-portals-data'; -window.plugin.bookmarks.LOCAL_STORAGE_bkmrk_maps = 'plugin-bookmarks-maps-data'; - -window.plugin.bookmarks.bkmrk_portals = {}; -window.plugin.bookmarks.bkmrk_maps = {}; - -window.plugin.bookmarks.disabledMessage; -window.plugin.bookmarks.contentStarHTML; -window.plugin.bookmarks.bkmrkBox; -window.plugin.bookmarks.bkmrkRibbon; -window.plugin.bookmarks.loadList; -window.plugin.bookmarks.setupJS; + window.plugin.bookmarks.disabledMessage; + window.plugin.bookmarks.contentStarHTML; + window.plugin.bookmarks.bkmrkBox; + window.plugin.bookmarks.bkmrkRibbon; + window.plugin.bookmarks.loadList; + window.plugin.bookmarks.setupJS; /***************************************************************************************************************************************************************/ -window.plugin.bookmarks.addStarToSidebar = function() { - if(typeof(Storage) === "undefined") { $('#portaldetails > .imgpreview').after(plugin.bookmarks.disabledMessage); return; } - var title = $('#portaldetails > h3').text(); - $('#portaldetails > h3').html(plugin.bookmarks.contentStarHTML+title); - plugin.bookmarks.updateStarPortal(); -} -window.plugin.bookmarks.updateStarPortal = function() { - window.plugin.bookmarks.loadBookmarks('bkmrk_portals'); - var guid = window.selectedPortal; - var list = plugin.bookmarks['bkmrk_portals']; - $('#bookmarkStar').removeClass('favorite'); - $('.bkmrk a.bookmarksLink.selected').removeClass('selected'); - for(var idFolders in list) { - for(var idBkmrk in list[idFolders]['bkmrk']) { - var portalGuid = list[idFolders]['bkmrk'][idBkmrk]['guid']; - if(guid == portalGuid) { - $('#bookmarkStar').addClass('favorite'); - $('.bkmrk#'+idBkmrk+' a.bookmarksLink').addClass('selected'); - } - } - } -} -window.plugin.bookmarks.switchStarPortal = function() { - var guid = window.selectedPortal; + window.plugin.bookmarks.addStarToSidebar = function(){ + if(typeof(Storage) === "undefined"){ $('#portaldetails > .imgpreview').after(plugin.bookmarks.disabledMessage); return; } + var title = $('#portaldetails > h3').text(); + $('#portaldetails > h3').html(plugin.bookmarks.contentStarHTML+title); + plugin.bookmarks.updateStarPortal(); + } + window.plugin.bookmarks.updateStarPortal = function(){ + window.plugin.bookmarks.loadBookmarks('bkmrk_portals'); + var guid = window.selectedPortal; + var list = plugin.bookmarks['bkmrk_portals']; + $('#bookmarkStar').removeClass('favorite'); + $('.bkmrk a.bookmarksLink.selected').removeClass('selected'); - if($('#bookmarkStar').hasClass('favorite')) { - var list = plugin.bookmarks['bkmrk_portals']; + //If current portal is into bookmarks: select bookmark portal from portals list and select the star in sideabar + for(var idFolders in list){ + for(var idBkmrk in list[idFolders]['bkmrk']){ + var portalGuid = list[idFolders]['bkmrk'][idBkmrk]['guid']; + if(guid == portalGuid){ + $('#bookmarkStar').addClass('favorite'); + $('.bkmrk#'+idBkmrk+' a.bookmarksLink').addClass('selected'); + } + } + } + } + window.plugin.bookmarks.switchStarPortal = function(){ + var guid = window.selectedPortal; - for(var idFolders in list) { - for(var idBkmrk in list[idFolders]['bkmrk']) { - var portalGuid = list[idFolders]['bkmrk'][idBkmrk]['guid']; - if(guid == portalGuid) { - delete list[idFolders]['bkmrk'][idBkmrk]; - $('.bkmrk#'+idBkmrk+'').remove(); - } - } - } - } - else { - var linka = $('#portaldetails .linkdetails aside a:contains("Portal link")').attr('href'); - var namePortal = $('#portaldetails h3').text(); + //Remove portal from bookmarks + if($('#bookmarkStar').hasClass('favorite')){ + var list = plugin.bookmarks['bkmrk_portals']; - var ID = window.plugin.bookmarks.generateID(); + for(var idFolders in list){ + for(var idBkmrk in list[idFolders]['bkmrk']){ + var portalGuid = list[idFolders]['bkmrk'][idBkmrk]['guid']; + if(guid == portalGuid){ + delete list[idFolders]['bkmrk'][idBkmrk]; + $('.bkmrk#'+idBkmrk+'').remove(); + } + } + } + } + //Add portal into bookmarks + else{ + var linka = $('#portaldetails .linkdetails aside a:contains("Portal link")').attr('href'); + var namePortal = $('#portaldetails h3').text(); - var spac = linka.split('pll='); - var latlng = spac[1] ; - plugin.bookmarks['bkmrk_portals'][plugin.bookmarks.KEY_OTHER_BKMRK]['bkmrk'][ID] = {"guid":guid,"latlng":latlng,"label":namePortal}; - $('#bkmrk_portals li.othersBookmarks ul').append('
  • X'+namePortal+'
  • '); - } - window.plugin.bookmarks.storeBookmarks('bkmrk_portals'); - window.plugin.bookmarks.updateStarPortal(); -} -window.plugin.bookmarks.addBookmarkMap = function(elem) { - var mapLink = $(elem).attr('href'); - var pars = new RegExp('[\\?&]ll=([^&#]*)[&]z=([^&#]*)').exec(mapLink); - var res = pars[1].split(','); - res[2] = pars[2]; - var latlng = res[0]+','+res[1]; - var zoom = res[2]; + var ID = window.plugin.bookmarks.generateID(); - var ID = window.plugin.bookmarks.generateID(); + var spac = linka.split('pll='); + var latlng = spac[1] ; + plugin.bookmarks['bkmrk_portals'][plugin.bookmarks.KEY_OTHER_BKMRK]['bkmrk'][ID] = {"guid":guid,"latlng":latlng,"label":namePortal}; + $('#bkmrk_portals li.othersBookmarks ul').append('
  • X'+namePortal+'
  • '); + } + window.plugin.bookmarks.storeBookmarks('bkmrk_portals'); + window.plugin.bookmarks.updateStarPortal(); + } + window.plugin.bookmarks.addBookmarkMap = function(elem){ + var mapLink = $(elem).attr('href'); + var pars = new RegExp('[\\?&]ll=([^&#]*)[&]z=([^&#]*)').exec(mapLink); + var res = pars[1].split(','); + res[2] = pars[2]; + var latlng = res[0]+','+res[1]; + var zoom = res[2]; - var nameMap = $(elem).siblings('input').val(); - nameMap = nameMap.replace(/\//g, '/').replace(/\\/g, '\').replace(/"/g, '"').replace(/"/g, '''); + var ID = window.plugin.bookmarks.generateID(); - if(nameMap == '') { nameMap = ''; } - $(elem).siblings('input').val(''); + var nameMap = $(elem).siblings('input').val(); + nameMap = nameMap.replace(/\//g, '/').replace(/\\/g, '\').replace(/"/g, '"').replace(/"/g, '''); - plugin.bookmarks['bkmrk_maps'][plugin.bookmarks.KEY_OTHER_BKMRK]['bkmrk'][ID] = {"label":nameMap,"latlng":latlng,"z":parseInt(zoom)}; - plugin.bookmarks.storeBookmarks('bkmrk_maps'); + if(nameMap == ''){ nameMap = ''; } + $(elem).siblings('input').val(''); - if(nameMap=='') { nameMap = latlng+' ['+zoom+']'; } - $('#bkmrk_maps li.othersBookmarks ul').append('
  • X'+nameMap+'
  • '); -} + plugin.bookmarks['bkmrk_maps'][plugin.bookmarks.KEY_OTHER_BKMRK]['bkmrk'][ID] = {"label":nameMap,"latlng":latlng,"z":parseInt(zoom)}; + plugin.bookmarks.storeBookmarks('bkmrk_maps'); + + if(nameMap==''){ nameMap = latlng+' ['+zoom+']'; } + $('#bkmrk_maps li.othersBookmarks ul').append('
  • X'+nameMap+'
  • '); + } /***************************************************************************************************************************************************************/ -window.plugin.bookmarks.generateID = function() { - var d = new Date(); - var ID = d.getTime()+(Math.floor(Math.random()*99)+1); - var ID = 'id'+ID.toString(); - return ID; -} + window.plugin.bookmarks.generateID = function(){ + var d = new Date(); + var ID = d.getTime()+(Math.floor(Math.random()*99)+1); + var ID = 'id'+ID.toString(); + return ID; + } -window.plugin.bookmarks.openFolder = function(elem) { - var typeList = $(elem).parent().parent().parent().parent('div').attr('id'); - var ID = $(elem).parent().parent('li').attr('id'); - var newFlag; - var flag = plugin.bookmarks[typeList][ID]['state']; - if(flag) { newFlag = 0; } - else if(!flag) { newFlag = 1; } - window.plugin.bookmarks[typeList][ID]['state'] = newFlag; - window.plugin.bookmarks.storeBookmarks(typeList); -} -window.plugin.bookmarks.addFolder = function(typeList) { - var ID = window.plugin.bookmarks.generateID(); - var input = '#'+typeList+' .addForm input'; - var nameFolder = $(input).val(); - nameFolder = nameFolder.replace(/\//g, '/').replace(/\\/g, '\').replace(/"/g, '"').replace(/"/g, '''); - if(nameFolder == '') { nameFolder = 'Folder'; } - $(input).val(''); + window.plugin.bookmarks.openFolder = function(elem){ + var typeList = $(elem).parent().parent().parent().parent('div').attr('id'); + var ID = $(elem).parent().parent('li').attr('id'); + var newFlag; + var flag = plugin.bookmarks[typeList][ID]['state']; + if(flag){ newFlag = 0; } + else if(!flag){ newFlag = 1; } + window.plugin.bookmarks[typeList][ID]['state'] = newFlag; + window.plugin.bookmarks.storeBookmarks(typeList); + } + window.plugin.bookmarks.addFolder = function(typeList){ + var ID = window.plugin.bookmarks.generateID(); + var input = '#'+typeList+' .addForm input'; + var nameFolder = $(input).val(); + nameFolder = nameFolder.replace(/\//g, '/').replace(/\\/g, '\').replace(/"/g, '"').replace(/"/g, '''); + if(nameFolder == ''){ nameFolder = 'Folder'; } + $(input).val(''); - plugin.bookmarks[typeList][ID] = {"label":nameFolder,"state":0,"bkmrk":{}}; - plugin.bookmarks.storeBookmarks(typeList); + plugin.bookmarks[typeList][ID] = {"label":nameFolder,"state":0,"bkmrk":{}}; + plugin.bookmarks.storeBookmarks(typeList); - $('#'+typeList+' li.othersBookmarks').before('
  • X'+nameFolder+'
  • '); -} -window.plugin.bookmarks.deletBookmark = function(elem) { - var typeList = $(elem).parent().parent().parent().parent().parent('div').attr('id'); - var ID = $(elem).parent('li').attr('id'); - var IDfold = $(elem).parent().parent().parent('li').attr('id'); - delete window.plugin.bookmarks[typeList][IDfold]['bkmrk'][ID]; - window.plugin.bookmarks.storeBookmarks(typeList); - if(typeList == 'bkmrk_portals') { window.plugin.bookmarks.updateStarPortal(); } -} -window.plugin.bookmarks.deletFolder = function(elem) { - var typeList = $(elem).parent().parent().parent().parent('div').attr('id'); - var ID = $(elem).parent().parent('li').attr('id'); - delete plugin.bookmarks[typeList][ID]; - window.plugin.bookmarks.storeBookmarks(typeList); - if(typeList == 'bkmrk_portals') { window.plugin.bookmarks.updateStarPortal(); } -} + $('#'+typeList+' li.othersBookmarks').before('
  • X'+nameFolder+'
  • '); + } + window.plugin.bookmarks.deletBookmark = function(elem){ + var typeList = $(elem).parent().parent().parent().parent().parent('div').attr('id'); + var ID = $(elem).parent('li').attr('id'); + var IDfold = $(elem).parent().parent().parent('li').attr('id'); + delete window.plugin.bookmarks[typeList][IDfold]['bkmrk'][ID]; + window.plugin.bookmarks.storeBookmarks(typeList); + if(typeList == 'bkmrk_portals'){ window.plugin.bookmarks.updateStarPortal(); } + } + window.plugin.bookmarks.deletFolder = function(elem){ + var typeList = $(elem).parent().parent().parent().parent('div').attr('id'); + var ID = $(elem).parent().parent('li').attr('id'); + delete plugin.bookmarks[typeList][ID]; + window.plugin.bookmarks.storeBookmarks(typeList); + if(typeList == 'bkmrk_portals'){ window.plugin.bookmarks.updateStarPortal(); } + } -window.plugin.bookmarks.sortBookmarksFolder = function(typeList) { - window.plugin.bookmarks.loadBookmarks(typeList); - var newArr = {}; - $('#'+typeList+' li.bookmarkFolder').each(function() { - var idFold = $(this).attr('id'); - newArr[idFold] = window.plugin.bookmarks[typeList][idFold]; - }); - window.plugin.bookmarks[typeList] = newArr; - window.plugin.bookmarks.storeBookmarks(typeList); -} -window.plugin.bookmarks.sortBookmarks = function(typeList) { - window.plugin.bookmarks.loadBookmarks(typeList); - var list = window.plugin.bookmarks[typeList]; - var newArr = {}; + window.plugin.bookmarks.sortBookmarksFolder = function(typeList){ + window.plugin.bookmarks.loadBookmarks(typeList); + var newArr = {}; + $('#'+typeList+' li.bookmarkFolder').each(function(){ + var idFold = $(this).attr('id'); + newArr[idFold] = window.plugin.bookmarks[typeList][idFold]; + }); + window.plugin.bookmarks[typeList] = newArr; + window.plugin.bookmarks.storeBookmarks(typeList); + } + window.plugin.bookmarks.sortBookmarks = function(typeList){ + window.plugin.bookmarks.loadBookmarks(typeList); + var list = window.plugin.bookmarks[typeList]; + var newArr = {}; - $('#'+typeList+' li.bookmarkFolder').each(function() { - var idFold = $(this).attr('id'); - newArr[idFold] = window.plugin.bookmarks[typeList][idFold]; - newArr[idFold].bkmrk = {}; - }); + $('#'+typeList+' li.bookmarkFolder').each(function(){ + var idFold = $(this).attr('id'); + newArr[idFold] = window.plugin.bookmarks[typeList][idFold]; + newArr[idFold].bkmrk = {}; + }); - $('#'+typeList+' li.bkmrk').each(function() { - window.plugin.bookmarks.loadBookmarks(typeList); - var idFold = $(this).parent().parent('li').attr('id'); - var id = $(this).attr('id'); + $('#'+typeList+' li.bkmrk').each(function(){ + window.plugin.bookmarks.loadBookmarks(typeList); + var idFold = $(this).parent().parent('li').attr('id'); + var id = $(this).attr('id'); - var list = window.plugin.bookmarks[typeList]; - for(var idFoldersOrigin in list) { - for(var idBkmrk in list[idFoldersOrigin]['bkmrk']) { - if(idBkmrk == id) { - newArr[idFold].bkmrk[id] = window.plugin.bookmarks[typeList][idFoldersOrigin].bkmrk[id]; - } - } - } - }); - window.plugin.bookmarks[typeList] = newArr; - window.plugin.bookmarks.storeBookmarks(typeList); -} + var list = window.plugin.bookmarks[typeList]; + for(var idFoldersOrigin in list){ + for(var idBkmrk in list[idFoldersOrigin]['bkmrk']){ + if(idBkmrk == id){ + newArr[idFold].bkmrk[id] = window.plugin.bookmarks[typeList][idFoldersOrigin].bkmrk[id]; + } + } + } + }); + window.plugin.bookmarks[typeList] = newArr; + window.plugin.bookmarks.storeBookmarks(typeList); + } -window.plugin.bookmarks.storeBookmarks = function(typeList) { - var bookmarksObject = {}; - bookmarksObject[typeList] = plugin.bookmarks[typeList]; - var bookmarksObjectJSON = JSON.stringify(bookmarksObject); - localStorage[plugin.bookmarks['LOCAL_STORAGE_'+typeList]] = bookmarksObjectJSON; -} -window.plugin.bookmarks.loadBookmarks = function(typeList) { - var bookmarksObjectJSON = localStorage[plugin.bookmarks['LOCAL_STORAGE_'+typeList]]; - if(!bookmarksObjectJSON) return; - var bookmarksObject = JSON.parse(bookmarksObjectJSON); - plugin.bookmarks[typeList] = bookmarksObject[typeList]; -} -window.plugin.bookmarks.loadList = function(typeList) { - window.plugin.bookmarks.loadBookmarks(typeList); - var element = ''; + window.plugin.bookmarks.storeBookmarks = function(typeList){ + var bookmarksObject = {}; + bookmarksObject[typeList] = plugin.bookmarks[typeList]; + var bookmarksObjectJSON = JSON.stringify(bookmarksObject); + localStorage[plugin.bookmarks['LOCAL_STORAGE_'+typeList]] = bookmarksObjectJSON; + } + window.plugin.bookmarks.loadBookmarks = function(typeList){ + var bookmarksObjectJSON = localStorage[plugin.bookmarks['LOCAL_STORAGE_'+typeList]]; + if(!bookmarksObjectJSON) return; + var bookmarksObject = JSON.parse(bookmarksObjectJSON); + plugin.bookmarks[typeList] = bookmarksObject[typeList]; + } + window.plugin.bookmarks.loadList = function(typeList){ + window.plugin.bookmarks.loadBookmarks(typeList); + var element = ''; - var list = window.plugin.bookmarks[typeList]; - for(var idFolders in list) { - var folders = list[idFolders]; - var active = ''; + var list = window.plugin.bookmarks[typeList]; + for(var idFolders in list){ + var folders = list[idFolders]; + var active = ''; - var folderLabel = 'X'; - folderLabel += ''+folders['label']+''; + var folderLabel = 'X'; + folderLabel += ''+folders['label']+''; - if(folders['state']) { active = ' active'; } - if(idFolders == window.plugin.bookmarks.KEY_OTHER_BKMRK) { folderLabel = ''; active= ' othersBookmarks active' } - element += '
  • '+folderLabel+''; + } + $('#'+typeList+' ul').html(element); + } /***************************************************************************************************************************************************************/ -window.plugin.bookmarks.setupJS = function() { - $(document).ready(function() { - //ENABLED THE DRAGGABLE PROPERTY OF THE BOX - $('#bookmarksBox').draggable({ handle:'.handle', containment:'window' }); - $("#bookmarksBox #bookmarksMin , #bookmarksBox ul li, #bookmarksBox ul li a, #bookmarksBox h5, #bookmarksBox .addForm a").disableSelection(); - - //SWICTH VISIBILITY OF THE BOX - $('#bookmarksMin').click(function() { $('#bookmarksBox').animate({marginTop:'-100%'}, {duration:400, queue:false}); $('#bookmarksShow').animate({marginTop:-36}, {duration:400, queue:false}); localStorage[window.plugin.bookmarks['LOCAL_STORAGE_status_box']] = 0; }); - $('#bookmarksShow').click(function() { $('#bookmarksBox').animate({marginTop:0}, {duration:400, queue:false}); $('#bookmarksShow').animate({marginTop:-100}, {duration:400, queue:false}); localStorage[window.plugin.bookmarks['LOCAL_STORAGE_status_box']]= 1; }); - if(localStorage[window.plugin.bookmarks['LOCAL_STORAGE_status_box']] == 1) { $('#bookmarksShow').trigger('click'); }else { $('#bookmarksMin').trigger('click'); } - - //SWITCH LIST (MAPS/PORTALS) - $('#bookmarksBox h5').click(function() {$('h5').removeClass('current');$(this).addClass('current');var sectList = '#'+$(this).attr('class').replace(' current', '');$('#bookmarksBox .bookmarkList').removeClass('current');$(sectList).addClass('current');}); - - //ACTIVE VERTICAL SCROLL-BAR ON THE LONG LISTS - $('.bookmarkList > ul').enscroll({ showOnHover: true, verticalTrackClass: 'trackScroll', verticalHandleClass: 'handleScroll', minScrollbarLength:28 }); - - //ENABLED THE SORTABLE PROPERTY OF THE FOLDERS AND BOOKMARKS - $(".bookmarkList > ul").sortable({items:"li.bookmarkFolder:not(.othersBookmarks)",handle:".bookmarksAnchor",placeholder:"sortable-placeholder",forcePlaceholderSize:true, - update:function(event, ui) { - var typeList = $('#'+ui.item.context.id).parent().parent('.bookmarkList').attr('id'); - window.plugin.bookmarks.sortBookmarksFolder(typeList); - } - }); - $(".bookmarkList ul li ul").sortable({items:"li.bkmrk",connectWith:".bookmarkList ul ul",handle:".bookmarksLink",placeholder:"sortable-placeholder",forcePlaceholderSize:true, - update:function(event, ui) { - var typeList = $('#'+ui.item.context.id).parent().parent().parent().parent('.bookmarkList').attr('id'); - window.plugin.bookmarks.sortBookmarks(typeList); - } - }); - - //REMOVE FOLDER - $('.bookmarkList').on('click', '.folderLabel .bookmarksRemoveFrom', function(e) { - window.plugin.bookmarks.deletFolder(this); - $(this).parent().parent('li').remove(); - e.preventDefault(); - }); - - //REMOVE BOOKMARK - $('.bookmarkList').on('click', '.bkmrk .bookmarksRemoveFrom', function(e) { - window.plugin.bookmarks.deletBookmark(this); - $(this).parent('li').remove(); - e.preventDefault(); - }); - - //OPEN/CLOSE FOLDER - $('#bookmarksBox').on('click', '.bookmarksAnchor', function(e) { - window.plugin.bookmarks.openFolder(this); - $(this).parent().parent('li').toggleClass('active'); - e.preventDefault(); - }); - - //ADD BOOKMARK/FOLDER - $('#bookmarksBox .addForm a').click(function(e) { - var typeList = $(this).parent().parent('div').attr('id'); - if($(this).hasClass('newMap')) { window.plugin.bookmarks.addBookmarkMap(this); } - else { window.plugin.bookmarks.addFolder(typeList); } - - //REFRESS SORTABLE EVENT FOR BKMRK - $(".bookmarkList ul li ul").sortable({items:"li.bkmrk",connectWith:".bookmarkList ul ul",handle:".bookmarksLink",placeholder:"sortable-placeholder",forcePlaceholderSize:true, - update:function(event, ui) { - var typeList = $('#'+ui.item.context.id).parent().parent().parent().parent('.bookmarkList').attr('id'); - window.plugin.bookmarks.sortBookmarks(typeList); - } - }); - e.preventDefault(); - }); - }); -} + window.plugin.bookmarks.setupJS = function(){$(document).ready(function(){ + //ENABLED THE DRAGGABLE PROPERTY OF THE BOX + $('#bookmarksBox').draggable({ handle:'.handle', containment:'window' }); + $("#bookmarksBox #bookmarksMin , #bookmarksBox ul li, #bookmarksBox ul li a, #bookmarksBox h5, #bookmarksBox .addForm a").disableSelection(); -window.plugin.bookmarks.setupCSS = function() { - $("