This is the user console object which is created under the WM version 4.x script
This script should not be not be installed directly. It is a library for other scripts to include with the meta directive // @require https://update.greasyfork.org/scripts/6907/28423/WM%20User%20Console%20Object.js
// ==UserScript== // @name WM User Console Object // @namespace MerricksdadWMUserConsoleObject // @description This is the user console object which is created under the WM version 4.x script // @license http://creativecommons.org/licenses/by-nc-nd/3.0/us/ // @version 4.0.0.4 // @copyright Charlie Ewing except where noted // ==/UserScript== //this script requires some functions in the WM Common Library //this script needs access to a pre-defined JSON object (function(){ //*************************************************************************************************************************************** //***** Visual Console Object //*************************************************************************************************************************************** WM.console = { initialized: false, sidekickNode: null, //remember the sidekicks list feedNode: null, //remember where to put the feed data loading: true, //set to false after sidekicks have time to load priorityNode: null, priorityBuild: null, dynamicBuild: null, //new content tabContainer:null, //outer tab control configButton:null, //userConfig.open control collectTabControl:null, //app filter tab control dynamicIcons: function(){ //define a crapload of icons var icons={ //128x128 pixel icons row0:["refresh","world","check",null,"moveUpLevelLeft","moveUpLevelRight","moveDownLevelLeft","moveDownLevelRight","filter","plus","minus","multiply","import","reset","object","array"], row1:["expandDown","expandUp","expandLeft","expandRight","moveTopLeft","moveBottomLeft",null,"allSidekicks","location","sortAsc","sortDesc","tools","treeExpand","treeCollapse","exportGrab","grab"], row2:["playDown","playUp","playLeft","playRight","like","unlike","uncheckAll","checkAll","layoutSmall","layoutDetail","layoutList","sidekick","refreshProcess","cancelProcess","importData","heartbeat"], row3:["arrowDown","arrowUp","arrowRight","arrowLeft","rssUpRight","rssUpLeft","rssDownRight","rssDownLeft","pin","pinned","redPhone","shuffle",null,"birth","comment"], row4:["plugin","identify","add","remove","openInNewWindow","restoreDown","stop","pause","trash","action","logo",null,"moveOutLevel","moveInLevel","removeGlobal","toGlobal"], row5:["clone","hatch","tag","noImage","accordionExpandH","accordionCollapseH","accordionExpandV","accordionCollapseV","gotoLibrary","addFilter","removeFilter","maximize","addFeed","addGlobal","fromGlobal","checkGlobal"], //32px icons row6:["firefox","chrome",null,"tabs"], //16px icons row7:["treeCollapseS","treeExpandS","layoutSmallColor","layoutDetailColor","layoutListColor",null,null,null,null,null,null,"noImageSmall"], }; var ret=".resourceIcon {display:block; background-image:url('"+WM.resources.iconsURL+"') !important;}\n"; //create css statements //for rows 0-5,6,7 var sizes=[8,16,24,32,48,64]; for (var si=0,len=sizes.length;si<len;si++){ var s=sizes[si]; for (var r=0;r<=6;r++){ for (var i=0;i<20;i++){ var iconName=icons["row"+r][i]; if (iconName!=null) { ret+="."+iconName+s+" {background-position:"+(-i*s)+"px "+(-r*s)+"px; width:"+s+"px; height:"+s+"px; background-size:"+(1024/(64/s))+"px;}\n"; } } } r=6; for (var i=0;i<20;i++){ var iconName=icons["row"+r][i]; if (iconName!=null) { //6 rows of icons 2 times this size var yOffset=(6*s*2); ret+="."+iconName+s+" {background-position:"+(-(i*s))+"px "+(-yOffset)+"px; width:"+s+"px; height:"+s+"px; background-size:"+(1024/(64/(s*2)))+"px;}\n"; } } r=7; for (var i=0;i<20;i++){ var iconName=icons["row"+r][i]; if (iconName!=null) { //6 rows of icons 4 times this size //plus 1 row of icons twice this size var yOffset=(6*s*4) + (1*s*2); ret+="."+iconName+s+" {background-position:"+(-(i*s))+"px "+(-yOffset)+"px; width:"+s+"px; height:"+s+"px; background-size:"+(1024/(64/(s*4)))+"px;}\n"; } } } return ret; }, globalStyle:function(){try{ return ""+ //icon sheets WM.console.dynamicIcons()+ "html {height:100%; width:100%;}\n"+ "body {margin:0 !important; font-family:tahoma,arial; font-size:small;}\n"+ "a:hover {text-decoration: none !important;}\n"+ "#content4 {display:none !important; }\n"+ "#wmContent {background-color:#DDDDEE; position:relative; z-index:900;}\n"+ ".post.classic {position:relative; min-height:90px; border-bottom:1px solid #CCCCDD; padding-bottom:10px; padding-top:10px; clear:both;}\n"+ ".post.classic .actor {margin-top:5px; margin-bottom:10px; font-weight:700; color:#3B5998; display:inline;}\n"+ ".post.classic .picture {padding-top:5px; padding-right:10px; float:left;}\n"+ ".post.classic .picture img {width:90px; height:90px; background-color:white; border:1px solid; border-radius:5px;}\n"+ ".post.classic .body {vertical-align:top;}\n"+ ".post.classic .title {margin-top:5px; font-weight:700; color:#3B5998;display:block;}\n"+ ".post.classic .caption {display:block; }\n"+ ".post.classic .description {padding-top:5px; display:block;}\n"+ ".post.classic .postDate {}\n"+ ".post.classic .appName {position:relative; left:10px;}\n"+ ".post.classic .linkText {color:#899ADB; float:right; padding-right:32px;}\n"+ ".post.classic.noimage {min-height:1px;}\n"+ ".post.short {float:left; position:relative;}\n"+ ".post.short .floater {overflow:hidden; display:block; background-color: white; border:0px solid; border-radius:5px; position:absolute; z-index:3; padding:0; width:0px;}\n"+ ".post.short:hover .floater {-moz-transition-property: width,height,padding,border;-moz-transition-delay:1s; width:240px; padding:5px 10px;border:1px solid;}\n"+ ".post.short .actor {display:block;}\n"+ ".post.short .picture {position:relative;}\n"+ ".post.short .picture img {position:relative; width:100%; height:100%; background-color:white;}\n"+ ".post.short .postDate {display:block;}\n"+ ".post.short .appName {display:block;}\n"+ ".post.short .linkText {display:block;}\n"+ ".post.short .progress {opacity:0.25; background-color:#00FF00;}\n"+ ".post.short.working .picture img {opacity:0.25;}\n"+ ".post.short.excluded .picture img {opacity:0.25;}\n"+ ".post.short.timeout .picture img {opacity:0.25;}\n"+ ".post.short.paused .picture img {opacity:0.25;}\n"+ ".post.short.nodef .picture img {opacity:0.25;}\n"+ ".post.short.accepted .picture img {opacity:0.25;}\n"+ ".post.short.failed .picture img {opacity:0.25;}\n"+ ".post.short.colored .picture img {opacity:0.25;}\n"+ ".post.short.scam .picture img {opacity:0.25;}\n"+ ".post.short.pinned .picture img {opacity:0.25;}\n"+ ".post.dev {position:relative; min-height:90px; border-bottom:1px solid #CCCCDD; padding-bottom:20px; padding-top:10px; clear:both;}\n"+ ".post.dev>div:first-child {display: inline-block; margin-right: 16px; border: none;}\n"+ ".wm.content > div > .toolBox {display:inline;}\n"+ ".wm.content > div > .toolBox > div {display:inline;}\n"+ ".post .toolBox {display:block; vertical-align:top; position:relative !important;}\n"+ ".post .toolBox > div {display:block; float:right;}\n"+ "div.excluded {background-color:gray !important;}\n"+ "div.working {background-color:yellow !important;}\n"+ "div.timeout {background-color:orange !important;}\n"+ "div.paused {background-color:silver !important;}\n"+ "div.pinned {background-color:silver !important;}\n"+ "div.nodef {background-color:deepskyblue !important;}\n"+ "div.failed {background-color:red !important;}\n"+ "div.accepted {background-color:limegreen !important;}\n"+ "div.scam {background-color:purple !important;}\n"+ ".pausedHover {display:none; position:absolute; right:50%; top:50%;}\n"+ ".pausedHover>img {margin-left:-32px; margin-top:-32px;}\n"+ ".pausedHover>img:hover {background-color:rgba(0,255,0,0.5); border-radius:20%;}\n"+ ".post.paused.short>.floater>.pausedHover>img {background-color:rgba(0,255,0,0.5); border-radius:20%;}\n"+ ".post.paused>.pausedHover, .post.paused>.floater>.pausedHover {display:block;}\n"+ ".underline {border-bottom:1px solid #CCCCDD;}\n"+ ".toolTip {display:none; border:1px solid #767676; border-radius:3px; background-color:white; color:black; position:absolute; font-size:8pt; padding:5px; line-height: 12px; z-index:9999;}\n"+ "*:hover > .toolTip {display:block;}\n"+ ".menuNode {width:0px; height:0px; position:absolute; background:none; border:none;top:-5px;}\n"+ ".toolTip.menuNode > ul {position:absolute; background-color: white; border: 1px solid; border-radius: 5px 5px 5px 5px; padding: 2px; min-width:100px;}\n"+ ".toolTip.menuNode > ul > li {position:relative; line-height:1.28; }\n"+ ".toolTip.right.menuNode {right:5px; }\n"+ ".toolTip.left.menuNode {left:-5px; }\n"+ ".toolTip.right.menuNode > ul {left:0px;}\n"+ ".toolTip.right.menuNode > ul > li {text-align:left;}\n"+ ".toolTip.left.menuNode > ul {right:0px;}\n"+ ".toolTip.left.menuNode > ul > li {text-align:right;}\n"+ //little button div ".littleButton {background-color:threedshadow; border-radius:5px; margin:1px; display:inline-block; vertical-align:middle;}\n"+ ".littleButton:hover {background-color:highlight !important;}\n"+ ".littleButton>img {position:relative; display:block; margin:2px;}\n"+ ".littleButton.oddOrange {background-color:#FF9968;}\n"+ ".littleButton.oddBlack {background-color:#82976E;}\n"+ ".littleButton.oddBlue {background-color:#51D1EA;}\n"+ ".littleButton.oddGreen {background-color:#B7E54F;}\n"+ ".menuEntry, .menuList > li {position:relative; border-radius:3px; border:1px solid white; padding:3px; min-width:100px;}\n"+ ".menuEntry:hover, .menuList > li:hover {border-color:#CCCCDD; background-color:#E0E8F6; }\n"+ ".accFailBlock {color: white !important;font-size: small !important;left: 16px;line-height: 12px;margin-bottom: -12px;padding: 0 !important;position: relative;top: -32px;}\n"+ ".accFailBlock .fail {background-color: #C3463A; border-radius: 2px 2px 2px 2px; box-shadow: 1px 1px 1px rgba(0, 39, 121, 0.77); padding: 1px 2px;}\n"+ ".accFailBlock .accept {background-color: #46B754; border-radius: 2px 2px 2px 2px; box-shadow: 1px 1px 1px rgba(0, 39, 121, 0.77); padding: 1px 2px;}\n"+ //rules manager "#wmPriorityBuilder {margin:5px; position: relative; background-color:white; min-height:95%;}\n"+ "#wmPriorityBuilder .validator > :before {content:'and: '}\n"+ "#wmPriorityBuilder .validator:first-child > :before {content:'where: '}\n"+ "#wmPriorityBuilder .action > :before {content:'and: '}\n"+ "#wmPriorityBuilder .action:first-child > :before {content:'do: '}\n"+ //collection feed node "#wmFeedNode {margin:5px; position: relative; background-color:white;}\n"+ //sidekick manager "#wmSidekickList {margin:5px; position: relative; background-color:white; min-height:95%;}\n"+ //feeds manager "#wmFeedsList {margin:5px; position: relative; background-color:white; min-height:95%;}\n"+ //dynamic grabber "#wmDynamicBuilder {margin:5px; position: relative; background-color:white; min-height:95%;}\n"+ //friend tracker "#wmFriendTracker {margin:5px; position: relative; background-color:white; min-height:95%;}\n"+ ".expanded {display:block;}\n"+ ".collapsed {display:none;}\n"+ "label {font-weight:bold; margin-right:5px;}\n"+ ".unsaved {background-color:lightyellow !important;}\n"+ ".whiteover:hover {background-color:#FFFFFF !important;}\n"+ ".blueover:hover {background-color:#E0E8F6 !important;}\n"+ ".red {background-color:#C3463A !important; border: 2px solid #982B2F !important; text-shadow: -1px -1px 1px #982B2F, 1px 1px 1px #982B2F, 1px -1px 1px #982B2F, -1px 1px 1px #982B2F; text-transform: none !important; font-color:white !important;}\n"+ ".red:hover {background-color:#EA1515 !important;}\n"+ ".green {background-color:#46B754 !important; border: 2px solid #256E46 !important; text-shadow: -1px -1px 1px #256E46, 1px 1px 1px #256E46, 1px -1px 1px #256E46, -1px 1px 1px #256E46; text-transform: none !important; font-color:white !important;}\n"+ ".green:hover {background-color:#A6E11D !important;}\n"+ ".blue {background-color:#51C2FB !important; border: 2px solid #057499 !important; text-shadow: -1px -1px 1px #057499, 1px 1px 1px #057499, 1px -1px 1px #057499, -1px 1px 1px #057499; text-transform: none !important; font-color:white !important;}\n"+ ".blue:hover {background-color:#C2DEFF !important;}\n"+ ".gray {background-color:#999999 !important; border: 2px solid #666666 !important; text-shadow: -1px -1px 1px #666666, 1px 1px 1px #666666, 1px -1px 1px #666666, -1px 1px 1px #666666; text-transform: none !important; font-color:white !important;}\n"+ ".gray:hover {background-color:#C3C3C3 !important;}\n"+ ".odd {background-image: -moz-linear-gradient(center top , orange, red); box-shadow: 1px 1px 1px black; -moz-transform: rotate(15deg);}\n"+ ".odd:hover {-moz-transform: none;}\n"+ ".post.mosquito {width:16px; height:16px;}\n"+ ".post.tiny {width:24px; height:24px;}\n"+ ".post.small {width:32px; height:32px;}\n"+ ".post.medium {width:48px; height:48px;}\n"+ ".post.large {width:64px; height:64px;}\n"+ ".post.xlarge {width:96px; height:96px;}\n"+ ".floater.mosquito {left:8px;top:8px;}\n"+ ".floater.tiny {left:12px;top:12px;}\n"+ ".floater.small {left:16px;top:16px;}\n"+ ".floater.medium {left:24px;top:24px;}\n"+ ".floater.large {left:32px;top:32px;}\n"+ ".floater.xlarge {left:48px;top:48px;}\n"+ ".post.mosquito.working .picture img {width:24px; height:24px;left:-4px;top:-4px;}\n"+ ".post.tiny.working .picture img {width:32px; height:32px;left:-4px;top:-4px;}\n"+ ".post.small.working .picture img {width:48px; height:48px;left:-8px;top:-8px;}\n"+ ".post.medium.working .picture img {width:64px; height:64px;left:-8px;top:-8px;}\n"+ ".post.large.working .picture img {width:96px; height:96px;left:-16px;top:-16px;}\n"+ ".post.xlarge.working .picture img {width:128px; height:128px;left:-16px;top:-16px;}\n"+ //"div.pinned {border-radius: 6px; background-color: black !important;}\n"+ //".post.short.pinned .picture img {border-radius: 5px; height:80% !important; width:80% !important; margin-left:10%; margin-top:10%;}\n"+ "#wmContent>.jsfTabControl>.tabs {top:10%; width:100px; position:relative;}\n"+ "#wmContent>.jsfTabControl>.pages {border-radius:5px;}\n"+ "#wmContent>.jsfTabControl>.tabs>.jsfTab {text-align:center;}\n"+ ".jsfTabControl>.tabs {font-family:impact; font-size:large; color:inactivecaptiontext;}\n"+ "input,select,label,textarea {font-family:tahoma,arial; font-size:small; vertical-align:baseline !important;}\n"+ ".jsfComboBox {line-height:normal;}\n"+ "button {font-family:tahoma,arial; font-size:small; vertical-align:top !important;}\n"+ "input[type=\"checkbox\"] {font-family:tahoma,arial; font-size:small; vertical-align:middle !important;}\n"+ ".nomargin {margin:0 !important;}\n"+ ".hidden {display:none !important;}\n"+ ".block {display:block !important;}\n"+ ".alignTop {vertical-align:top !important;}\n"+ ".fit {width:100% !important;}\n"+ ".indent {margin-left:16px;}\n"+ "img.crisp {image-rendering: -moz-crisp-edges;}\n"+ ".listItem {position:relative; clear:both;}\n"+ ".listItem.disabled {opacity:0.5 !important; background-color:#eeeeee;}\n"+ ".listItem .toolBox {position: absolute; right: 0px; top: 0;}\n"+ ".listItem select {border:0px; padding:0px; margin: 0px; margin-left:6px; margin-right:6px; background-color:#eeeeee; vertical-align:middle;}\n"+ ".listItem input {border:0px; padding:0px; margin: 0px; margin-left:6px; margin-right:6px; background-color:#eeeeee; vertical-align:middle;}\n"+ ".listItem textarea {background-color:#eeeeee; border:0px;}\n"+ ".header {background-color: window; font-family:impact; font-size:2em; color:inactivecaptiontext; border-radius:5px 5px 0 0; padding-left:6px;}\n"+ ".headerCaption {background-color: window; color: inactivecaptiontext; font-family: arial; font-size: small; padding-bottom: 6px; padding-left: 16px; padding-right: 16px; padding-top: 6px; border-radius:0 0 5px 5px;}\n"+ ".headerCaption+.toolBox, .header+.toolBox {border-bottom:1px solid activeborder; margin-bottom: 5px; margin-top: 5px; padding-bottom: 5px;}\n"+ ".line {border-top:1px solid #c0c0c0; line-height:2em;}\n"+ ".subsection {margin-left:28px;}\n"+ ".optioncontainer {max-height:12em; overflow-y:auto; background-color:rgb(238, 238, 238);}\n"+ ".optioncontainer>.line {line-height:normal;}\n"+ ".singleCol .post.classic {}\n"+ ".twoCol .post.classic {display: inline-block; width: 50%; vertical-align: top;}\n"+ ".twoCol .post.classic > .body {padding-right:28px;}\n"+ ".threeCol .post.classic {display: inline-block; width: 33%; vertical-align: top;}\n"+ ".threeCol .post.classic > .body {padding-right:28px;}\n"+ ".fourCol .post.classic {display: inline-block; width: 25%; vertical-align: top;}\n"+ ".fourCol .post.classic > .body {padding-right:28px;}\n"+ ".w400 {width:400px;}\n"+ ".foundWM {background-color:green;}\n"+ "" }catch(e){log("WM.console.globalStyle: "+e);}}, init: function(params){try{ debug.print("WM.console.init:"); var validateFBElements=["globalContainer","content"]; params=params||{}; //if console does not already exist if (!WM.console.tabContainer) { try{ var gs = WM.console.globalStyle(); addGlobalStyle(gs,"styleConsole4"); }catch(e){log("WM.console.init.addGlobalStyle: "+e);}; /*//attach to facebook page var baseNode=$("globalContainer"); if (baseNode) baseNode=baseNode.parentNode; //or attach to page body else baseNode=($("body")||document.body); */ var intendedPositionNode = document.body.childNodes[0]; //debug.print(intendedPositionNode); //sort fields shared by post sorting and grouping var sortFields = [ {value:"age",title:"Time elasped since created (ms)."}, {value:"alreadyProcessed",title:"History contains a status code for this post."}, {value:"appID"}, {value:"appName",title:"App name as it appears on FB."}, {value:"date",title:"The datetime the post was created, in unix format. Does not contain millisecond data."}, {value:"fromID",title:"The FB id of the person who created this post."}, {value:"fromName",title:"The display name of the person who created this post."}, {value:"fromNameLastFirst",title:"As fromName but displayed as LastName, FirstName"}, {value:"id",title:"The post object id as it is connected with FB."}, {value:"idText",title:"Either the whichText of the post, or the statusText of a post already processed."}, {value:"isAccepted"}, {value:"isFailed"}, {value:"isTimeout"}, {value:"isExcluded"}, {value:"isCollect",title:"A flag for if this post is to be collected."}, {value:"isForMe"}, {value:"isLiked"}, {value:"isMyPost"}, {value:"isPaused"}, {value:"isPinned"}, {value:"isScam"}, {value:"isStale"}, {value:"isUndefined"}, {value:"isWishlist"}, {value:"isW2W",title:"If this post is a Wall-to-wall post or just a general feed post."}, {value:"msg",title:"The comment attached to the post body by the post creator."}, {value:"postedDay",title:"The year/month/day portion of the creation time for this post."}, {value:"postedHour",title:"The year/month/day/hour portion of the creation time for this post."}, {value:"priority",title:"Priority 0 being the first post you would want processed, and Priority 50 being default."}, {value:"status",title:"The status code returned by the sidekick associated with this post."}, {value:"which",title:"The sidekick-defined bonus type id for this kind of post."}, {value:"whichText",title:"The text associated with this bonus type id."}, {value:null,name:"(none)"}, ]; //create our content window var newNodeBody; document.body.insertBefore(newNodeBody=createElement("div",{id:"wmContent"},[ //toolbox (WM.console.tabContainer=new jsForms.tabControl({ dock:"fillAndShare", sizeOffset:{height:-3,width:0}, alignment:"left", tabs:[ { //collect tab text:"Collect", image:null, onSelect:function(){WM.console.collectTabControl.redraw();}, content:[ createElement("div",{className:"header",textContent:"Collect"}), createElement("div",{className:"headerCaption",textContent:"View friends' posts and manage all your collection needs."}), createElement("div",{className:"toolBox medium"},[ createElement("span",{className:"littleButton oddBlue",title:"Fetch Visible Posts Now",onclick:function(){WM.fetch({newer:true,bypassPause:true});} },[createElement("img",{className:"resourceIcon rssUpRight24"})]), //createElement("span",{className:"littleButton",title:"Fetch Older Posts Now",onclick:function(){WM.fetch({older:true,bypassPause:true});} },[createElement("img",{className:"resourceIcon rssDownLeft24"})]), WM.console.pauseFetchButton=createElement("span",{className:"littleButton oddOrange",title:"Pause Automatic Fetching",onclick:function(){WM.pauseFetching();} },[createElement("img",{className:"resourceIcon expandDown24"})]), WM.console.pauseCollectButton=createElement("span",{className:"littleButton oddOrange",title:"Pause Automatic Collection",onclick:function(){WM.pauseCollecting();} },[createElement("img",{className:"resourceIcon stop24"})]), createElement("span",{className:"littleButton",name:"0",title:"Classic View",onclick:WM.setDisplay},[createElement("img",{className:"resourceIcon layoutListColor24"})]), createElement("span",{className:"littleButton",name:"1",title:"Short View",onclick:WM.setDisplay},[createElement("img",{className:"resourceIcon layoutSmallColor24"})]), createElement("span",{className:"littleButton",name:"2",title:"Developer View",onclick:WM.setDisplay},[createElement("img",{className:"resourceIcon layoutDetailColor24"})]), createElement("span",{className:"littleButton",title:"Reset Counters",onclick:function(){WM.resetCounters();}},[createElement("img",{className:"resourceIcon refresh24"})]), createElement("span",{className:"littleButton oddOrange",title:"Clean Now",onclick:function(){WM.cleanPosts();}},[createElement("img",{className:"resourceIcon trash24"})]), createElement("span",{className:"littleButton",title:"ReID All",onclick:function(){WM.reIDAll();}},[createElement("img",{className:"resourceIcon identify24"})]), createElement("label",{className:"indent",textContent:"Sort By: "}), createElement("select",{id:"wmSortBy",className:"", title:"Sort By:", onchange:function(){WM.sortPosts({by:this.value});WM.redrawPosts({postRedraw:false,reorder:true});} },(function(){ var ret=[]; for (var i=0;i<sortFields.length;i++) ret.push(createElement("option",{value:sortFields[i].value,title:sortFields[i].title||"",textContent:sortFields[i].name||sortFields[i].value})); return ret; })()), createElement("span",{className:"littleButton oddGreen",title:"Sort Ascending",onclick:function(){WM.sortPosts({direction:"asc"});WM.redrawPosts({reorder:true, postRedraw:false});}},[createElement("img",{className:"resourceIcon sortAsc24"})]), createElement("span",{className:"littleButton oddOrange",title:"Sort Descending",onclick:function(){WM.sortPosts({direction:"desc"});WM.redrawPosts({reorder:true, postRedraw:false});}},[createElement("img",{className:"resourceIcon sortDesc24"})]), createElement("label",{className:"indent",textContent:"Group By: "}), createElement("select",{id:"wmGroupBy",className:"", title:"Group By:", onchange:function(){WM.constructGroups({by:this.value});WM.redrawPosts({postRedraw:false,reorder:true});} },(function(){ var ret=[]; for (var i=0;i<sortFields.length;i++) ret.push(createElement("option",{value:sortFields[i].value,title:sortFields[i].title||"",textContent:sortFields[i].name||sortFields[i].value})); return ret; })()), createElement("span",{className:"littleButton oddGreen",title:"Group Ascending",onclick:function(){WM.sortGroups({direction:"asc"});WM.redrawPosts({reorder:true, postRedraw:false});}},[createElement("img",{className:"resourceIcon sortAsc24"})]), createElement("span",{className:"littleButton oddOrange",title:"Group Descending",onclick:function(){WM.sortGroups({direction:"desc"});WM.redrawPosts({reorder:true, postRedraw:false});}},[createElement("img",{className:"resourceIcon sortDesc24"})]), createElement("label",{className:"indent",textContent:"Columns: ",title:"Classic Mode Only"}), createElement("select",{title:"Cols:", onchange:function(){WM.setDisplayCols({cols:this.value});} },[ createElement("option",{value:1,textContent:"One",selected:WM.quickOpts.displayCols==1}), createElement("option",{value:2,textContent:"Two",selected:WM.quickOpts.displayCols==2}), createElement("option",{value:3,textContent:"Three",selected:WM.quickOpts.displayCols==3}), createElement("option",{value:4,textContent:"Four",selected:WM.quickOpts.displayCols==4}) ]), createElement("span",{className:"littleButton oddBlue",title:"Autolike Queue"},[ createElement("img",{className:"resourceIcon like24"}), createElement("div",{className:"accFailBlock"},[ WM.console.likeQueueCounterNode=createElement("span",{className:"accept",textContent:"0"}) ]) ]), ]), //app filter tabs (WM.console.collectTabControl=new jsForms.tabControl({ dock:"fillAndShare", subStyle:"coolBar", shareSinglePage:true, preventAutoSelectTab:true, tabs:[ { //default show all tab text:"Show ALL", image:"", imageClass:"resourceIcon allSidekicks32", appFilter:"All", onSelect:WM.setAppFilter, selected:(WM.quickOpts.filterApp=="All"), content:null, //because page is shared } ], sharedContent:[ //bonus display node WM.console.feedNode=createElement("div",{id:"wmFeedNode",style:"position: relative;"}), ], })).node, ], }, { //sidekicks tab text:"Manage Sidekicks", image:null, content:[ createElement("div",{className:"header",textContent:"Manage Sidekicks"}), createElement("div",{className:"headerCaption",textContent:"Control some of the features of sidekicks."}), WM.console.sidekickNode=createElement("div",{id:"wmSidekickList",className:"scrollY"}), ], }, { //feeds tab text:"Manage Feeds", image:null, content:[ createElement("div",{className:"header",textContent:"Manage Feeds"}), createElement("div",{className:"headerCaption",textContent:"Add direct links to friends or other public profiles, and fetch posts from those feeds faster."}), createElement("div",{className:"toolBox medium columnRight"},[ createElement("div",{},[ createElement("div",{className:"littleButton oddGreen",title:"Add Feed",onclick:WM.feedManager.newFeed},[createElement("img",{className:"resourceIcon plus24"})]), ]) ]), WM.console.feedManagerNode=createElement("div",{id:"wmFeedsList",className:"scrollY"}), ], }, { //rules tab text:"Manage Rules", image:null, content:[ createElement("div",{className:"header",textContent:"Manage Rules"}), createElement("div",{className:"headerCaption",textContent:"Create rules like macros to control exactly how posts are handled."}), createElement("div",{className:"toolBox medium columnRight"},[ createElement("div",{},[ createElement("div",{className:"littleButton oddGreen",title:"Add Rule",onclick:WM.rulesManager.newRule},[createElement("img",{className:"resourceIcon plus24"})]), createElement("div",{className:"littleButton oddBlue",title:"Reset All Limits",onclick:WM.rulesManager.resetAllLimits},[createElement("img",{className:"resourceIcon reset24"})]), createElement("div",{className:"littleButton oddBlue",title:"Convert Dynamics",onclick:WM.rulesManager.convertDynamics},[createElement("img",{className:"resourceIcon exportGrab24"})]), createElement("div",{className:"littleButton oddBlue",title:"Import Rule",onclick:WM.rulesManager.importRule},[createElement("img",{className:"resourceIcon importData24"})]), createElement("div",{className:"littleButton oddBlue",title:"Export All Rules",onclick:WM.rulesManager.showData},[createElement("img",{className:"resourceIcon object24"})]), WM.rulesManager.toggleHBNode=createElement("div",{className:"littleButton "+(WM.quickOpts.heartbeatDisabled?"oddOrange":"oddGreen"),title:"Toggle Heartbeat",onclick:WM.rulesManager.toggleHeartbeat},[createElement("img",{className:"resourceIcon heartbeat24"})]), ]) ]), WM.console.priorityBuild=createElement("div",{id:"wmPriorityBuilder",className:"scrollY"}), ], }, { //dynamics tab text:"Dynamic Grabber", image:null, content:[ createElement("div",{className:"header",textContent:"Dynamic Grabber"}), createElement("div",{className:"headerCaption",textContent:"Create tests to capture posts sidekicks might not."}), createElement("div",{className:"toolBox medium columnRight"},[ createElement("div",{},[ createElement("div",{className:"littleButton oddGreen",title:"Add Test",onclick:WM.grabber.newTest},[createElement("img",{className:"resourceIcon plus24"})]), createElement("div",{className:"littleButton oddBlue",title:"Import Test",onclick:WM.grabber.importTest},[createElement("img",{className:"resourceIcon importData24"})]), ]) ]), WM.console.dynamicBuild=createElement("div",{id:"wmDynamicBuilder",className:"scrollY"}), ], }, { //friends tab text:"Friend Tracker", image:null, content:[ createElement("div",{className:"header",textContent:"Friend Tracker"}), createElement("div",{className:"headerCaption",textContent:"Track player friends and your interactions with them."}), createElement("div",{className:"toolBox medium columnRight"},[ createElement("span",{className:"littleButton oddOrange",title:"Clean Now",onclick:function(){WM.friendTracker.clearAll();}},[ createElement("img",{className:"resourceIcon trash24"}) ]), createElement("label",{className:"indent",textContent:"Sort By: "}), createElement("select",{title:"Sort By:", onchange:function(){WM.friendTracker.sort({sortBy:this.value});} },[ createElement("option",{value:"acceptCount",textContent:"acceptCount",title:"How many posts WM remembers as collected successfully from this user."}), createElement("option",{value:"failCount",textContent:"failCount",title:"How many posts WM remembers as failed from this user."}), createElement("option",{value:"id",textContent:"id",title:"The facebook id of the user."}), createElement("option",{value:"lastKnownPostDate",textContent:"lastKnownPostDate",title:"The date of the last known post WM received for this user."}), createElement("option",{value:"name",textContent:"name",title:"The name of the user, with last name first."}), createElement("option",{value:"postCount",textContent:"postCount",title:"How many posts WM remembers receiving related to this user."}), createElement("option",{value:"totalCount",textContent:"totalCount",title:"How many posts WM remembers failed OR accepted from this user."}) ]), createElement("span",{className:"littleButton oddGreen",title:"Sort Ascending",onclick:function(){WM.friendTracker.sort({sortOrder:"asc"});}},[createElement("img",{className:"resourceIcon sortAsc24"})]), createElement("span",{className:"littleButton oddOrange",title:"Sort Descending",onclick:function(){WM.friendTracker.sort({sortOrder:"desc"});}},[createElement("img",{className:"resourceIcon sortDesc24"})]), ]), WM.console.friendBuild=createElement("div",{id:"wmFriendTracker",className:"scrollY"}), ], }, { //options tab text:"Options", image:null, content:[ createElement("div",{className:"header",textContent:"Options"}), createElement("div",{className:"headerCaption",textContent:"Manage script and sidekick configuration, or link to updates."}), //config menu button createElement("div",{},[ createElement("label",{textContent:"Open the options menu: "}), WM.console.configButton=createElement("button",{ className:"jsfHidden", textContent:"WM Options", onclick:function(){ //open options menu WM.config.open(); }, }), ]), //update script button createElement("div",{},[ createElement("label",{textContent:"Update Script (Current Version: "+WM.version+") :"}), createElement("button",{ className:"", textContent:"Update Script", onclick:function(){ //open update url in new window/tab window.open(WM.scriptUpdateURL,"_blank"); }, }), ]), ], }, ] })).node ]), intendedPositionNode); //debug.print(newNodeBody); //destroy facebook content on page //if ($("content")) $("content").style.display="none !important"; //init sort order $("wmSortBy").value=WM.quickOpts.sortBy; //init group order $("wmGroupBy").value=WM.quickOpts.groupBy; //init display mode with (WM.console.feedNode){ className = className.toggleWordB(["1","3"].inArray(WM.quickOpts.displayMode),"short"); } WM.setDisplayCols({cols:WM.quickOpts.displayCols}); } WM.console.initialized = true; //give sidekicks time to dock if (params["callback"]||null) { var fx = params["callback"]; delete params["callback"]; doAction(fx); } }catch(e){log("WM.console.init: "+e);}}, }; //end WM.console })();