User:Gxnx0xmx0xn/gn0Marks.js

// gn0Marks // // // A bookmarking tool for Wikipedia. // Adapted (i.e., jury-rigged) in 2015 by User:Gxnx0xmx0xn on enwp from WikiMarks by User:Twinzor on enwp. // // See User:Gxnx0xmx0xn/gn0Marks for more info on installation.

////////////////////////// //--// //---gn0m0n.com// //--// //////////////--//	//////////////--// //////////////--//	//////////////--//	//////////////--// //////////////--// ////////////////////////// // PS: I don't really know JavaScript so this is probably a klugey solution. But it works for me.

//Reading configuration or setting defaults if not present: if(typeof markThisTabTitleConfig == 'undefined') { var markThisTitle="Add to gn0Marks"; } else { var markThisTitle= markThisTabTitleConfig; }

if(typeof myMarksTitleConfig == 'undefined') { var myMarksTitle="My gn0Marks"; } else { var markThisTitle= markThisTabTitleConfig; }

if(typeof WikimarkConfigWikimarksPage == 'undefined') { var wikimarkspage = "/mygn0Marks"; } else { var wikimarkspage = "/"+WikimarkConfigWikimarksPage; } if(typeof WikimarkConfigKeepSection == 'undefined') { var wikimarksect = 0; } else { var wikimarksect = WikimarkConfigKeepSection; } if(typeof WikimarkConfigListType == 'undefined') { var listtype = "*"; } else { var listtype = WikimarkConfigListType; } if(typeof WikimarkConfigAddMenu == 'undefined') { var addMenulocation = "p-cactions"; var menuPrefix = "ca-"; } else if( WikimarkConfigAddMenu == "cactions" ) { var addMenulocation = "p-cactions"; var menuPrefix = "ca-"; } else if( WikimarkConfigAddMenu == "personal" ) { var addMenulocation = "p-personal"; var menuPrefix = "pt-"; } else if( WikimarkConfigAddMenu == "toolbox" ) { var addMenulocation = "p-tb"; var menuPrefix = "t-"; } else if( WikimarkConfigAddMenu == "navigation" ) { var addMenulocation = "p-navigation"; var menuPrefix = "n-"; } else { var addMenulocation = "p-cactions"; var menuPrefix = "ca-"; } if(typeof WikimarkConfigViewMenu == 'undefined') { var viewMenulocation = "p-cactions"; var menuPrefixV = "ca-"; } else if( WikimarkConfigViewMenu == "cactions" ) { var viewMenulocation = "p-cactions"; var menuPrefixV = "ca-"; } else if( WikimarkConfigViewMenu == "personal" ) { var viewMenulocation = "p-personal"; var menuPrefixV = "pt-"; } else if( WikimarkConfigViewMenu == "toolbox" ) { var viewMenulocation = "p-tb"; var menuPrefixV = "t-"; } else if( WikimarkConfigViewMenu == "navigation" ) { var viewMenulocation = "p-navigation"; var menuPrefixV = "n-"; } else { var viewMenulocation = "p-cactions"; var menuPrefixV = "ca-"; } if(typeof WikimarkConfigWikimarksUsername == 'undefined') { var wikimarkEncodedUserName = encodeURIComponent(wgUserName); } else { var wikimarkEncodedUserName = WikimarkConfigWikimarksUsername; } var wikimarklinkprefix = wgServer+wgScript; $(WikiMarkInit); function WikiMarkInit { if(typeof WikimarkConfigViewNextTo == 'undefined') { var viewNextto = ''; }   else { var viewNextto = document.getElementById(menuPrefixV+WikimarkConfigViewNextTo); }   if(typeof WikimarkConfigAddNextTo == 'undefined') { var addNextto = ''; }   else { var addNextto = document.getElementById(menuPrefix+WikimarkConfigAddNextTo); }   addPortletLink (addMenulocation, 'javascript:doAddWikiMark', markThisTitle, menuPrefix+'addwikimark', 'Bookmark this page', '', addNextto); addPortletLink (viewMenulocation, wikimarklinkprefix+"?title=User:"+wikimarkEncodedUserName+wikimarkspage, myMarksTitle, menuPrefixV+'showwikimark', 'Open your gn0Marks', '', viewNextto); } function doAddWikiMark { var wikimarkNewpage = wgPageName.replace(/_/g, " "); if(wikimarkNewpage.indexOf("File:")==0) { wikimarkNewpage = ":" + wikimarkNewpage; }   else if(wikimarkNewpage.indexOf("Category:")==0) { wikimarkNewpage = ":" + wikimarkNewpage; }   var wikimarkNewpageName = wikimarkNewpage; if(wikimarksect == 1) { var newpageURL = location.href; if(newpageURL.indexOf("#")) { anchor = newpageURL.split("#"); newpageSect = anchor[1]; var wikimarkNewpageLink = wikimarkNewpage; wikimarkNewpage = wikimarkNewpage + "#" + newpageSect; wikimarkNewpage = wikimarkNewpage.replace(/_/g, " "); wikimarkNewpageName = wikimarkNewpageLink + " (Section: " + newpageSect + ")"; }   }    if(wikimarkNewpageName == wikimarkNewpage) { var wikimarkLinktext = wikimarkNewpage; }   else { var wikimarkLinktext = wikimarkNewpage+"|"+wikimarkNewpageName; }   var f;    f=window.open(wikimarklinkprefix+"?title=User:"+wikimarkEncodedUserName+wikimarkspage+"&action=edit") f.id="WikiMarksLoader"; f.onload=function { var wikimark_cmt = "Adding "+wikimarkNewpage+" to my WikiMarks list."; e=f.document.editform; e.wpTextbox1.value+=listtype+"["+"["+wikimarkLinktext+"]"+"]\n"; e.wpSummary.value=wikimark_cmt; e.wpSave.click; //       f.close;        // This closes the gn0Marks window. You can comment it out if you prefer. jsMsg("You're the man now, dawg. "+wikimarkNewpageName+" has been added to your gn0Marks."); }; }