User:King of Herdaz/common.js

From The Coppermind
Jump to navigation Jump to search

Note: After saving, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Go to Menu → Settings (Opera → Preferences on a Mac) and then to Privacy & security → Clear browsing data → Cached images and files.
//change syntax highlighter timeout time
('//www.mediawiki.org/w/index.php?title=MediaWiki:Gadget-DotsSyntaxHighlighter.js&action=raw&ctype=text/javascript');

syntaxHighlighterConfig = {
    timeout: 45,
}

//customize toolbar
var customizeToolbar = function() {
    /* Your code goes here */
    //removing original buttons I don't want

    //Remove default references button
    $( '#wpTextbox1' ).wikiEditor( 'removeFromToolbar', {
	section: 'main',
	group: 'insert',
	tool: 'reference'
    });

    //remove bulleted list button
    $( '#wpTextbox1' ).wikiEditor( 'removeFromToolbar', {
	section: 'advanced',
	group: 'format',
	tool: 'ulist'
    });

    //remove numbered list button
    $( '#wpTextbox1' ).wikiEditor( 'removeFromToolbar', {
	section: 'advanced',
	group: 'format',
	tool: 'olist'
    });

    //remove <br> button so I can replace it with my own <br/> button
    $( '#wpTextbox1' ).wikiEditor( 'removeFromToolbar', {
	section: 'advanced',
	group: 'format',
	tool: 'newline'
    });

    //remove table button
    $( '#wpTextbox1' ).wikiEditor( 'removeFromToolbar', {
	section: 'advanced',
	group: 'insert',
	tool: 'table'
    });

    //remove File button
    $( '#wpTextbox1' ).wikiEditor( 'removeFromToolbar', {
	section: 'main',
	group: 'insert',
	tool: 'file'
    });

    //Adding various buttons

    // Adding category button to the "main" section
    $('#wpTextbox1').wikiEditor('addToToolbar', {
	section: 'main',
	group: 'insert',
	tools: {
	    category: {
		label: 'Category',
		type: 'button',
		icon: '//upload.wikimedia.org/wikipedia/commons/2/2d/Button_clipboard_category.png',
		action: {
		    type: 'encapsulate',
		    options: {
			pre:"[[Category: ",
			post: "]]"
		    }
		}
	    }
	}
    });

    // Adding Artist header button for galleries to the "main" section
    $('#wpTextbox1').wikiEditor('addToToolbar', {
	section: 'main',
	group: 'insert',
	tools: {
	    artistHeader: {
		label: 'Artist header',
		type: 'button',
		icon: '//upload.wikimedia.org/wikipedia/commons/3/3a/Button_av-img.png',
		action: {
		    type: 'encapsulate',
		    options: {
			pre: '| <small><center>by {' + '{a|',
			post: '}}</center></small>'
		    }
		}
	    }
	}
    });

    // Adding image template button to the "main" section
    $('#wpTextbox1').wikiEditor('addToToolbar', {
	section: 'main',
	group: 'insert',
	tools: {
	    image: {
		label: 'Image template',
		type: 'button',
		icon: '//upload.wikimedia.org/wikipedia/commons/d/d8/Vector_toolbar_insert_image_button.png',
		action: {
		    type: 'encapsulate',
		    options: {
			pre:'{' + '{image|',
			post: '|side=|width=|caption}}'
		    }
		}
	    }
	}
    });

    // Adding Wikipedia link button to the "main" section
    $('#wpTextbox1').wikiEditor('addToToolbar', {
	section: 'main',
	group: 'insert',
	tools: {
	    wikipedia: {
		label: 'Wikipedia',
		type: 'button',
		icon: '//upload.wikimedia.org/wikipedia/commons/c/cb/Button_wikipedia.png',
		action: {
		    type: 'encapsulate',
		    options: {
			pre:"[[Wikipedia: ",
			post: "|]]"
		    }
		}
	    }
	}
    });

    // Adding <br/> button to the "main" section
    $('#wpTextbox1').wikiEditor('addToToolbar', {
	section: 'main',
	group: 'insert',
	tools: {
	    break: {
		label: 'Break tag',
		type: 'button',
		icon: '//upload.wikimedia.org/wikipedia/commons/1/13/Button_enter.png',
		action: {
		    type: 'encapsulate',
		    options: {
			pre:'<' + 'br />'
		    }
		}
	    }
	}
    });

    // Adding link button to the "main" section
    $('#wpTextbox1' ).wikiEditor( 'addToToolbar', {
	section: 'main',
	group: 'insert',
	tools: {
	    simpleLink: {
		label: 'Link',
		type: 'button',
		icon: '//upload.wikimedia.org/wikipedia/commons/9/97/Button_int_link.png',
		action: {
		    type: 'encapsulate',
		    options: {
			pre: "[[",
			post: "]]"
		    }
		}
	    }
	}
    });

    // Adding hidden text button to the "main" section
    $('#wpTextbox1' ).wikiEditor( 'addToToolbar', {
	section: 'main',
	group: 'insert',
	tools: {
	    hidden: {
		label: 'Hidden text',
		type: 'button',
		icon: '//upload.wikimedia.org/wikipedia/commons/1/1b/Button_hide_wiki_tag.png',
		action: {
		    type: 'encapsulate',
		    options: {
			pre: "<!--",
			post: "-->"
		    }
		}
	    }
	}
    });

    // Adding columns button to the "main" section
    $('#wpTextbox1' ).wikiEditor( 'addToToolbar', {
	section: 'main',
	group: 'insert',
	tools: {
	    columns: {
		label: 'Columns',
		type: 'button',
		icon: '//upload.wikimedia.org/wikipedia/commons/2/25/Vector_toolbar_bulleted_list_button.png',
		action: {
		    type: 'encapsulate',
		    options: {
			pre: '{' + '{columns|' + '\n',
			post: '\n' + '}}'
		    }
		}
	    }
	}
    });

    // Adding a <code> button to the "main" section
    $('#wpTextbox1' ).wikiEditor( 'addToToolbar', {
	section: 'main',
	group: 'insert',
	tools: {
	    code: {
		label: 'Code',
		type: 'button',
		icon: '//upload.wikimedia.org/wikipedia/commons/2/23/Button_code.png',
		action: {
		    type: 'encapsulate',
		    options: {
			pre: '<' + 'code>',
			post: '</' + 'code>'
		    }
		}
	    }
	}
    });

    //Adding a bunch of dropdowns to the "advanced" section for easy access

    //Add new art dropdown to the "advanced" section
    $( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
	section: 'advanced',
	groups: {
	    list: {
		tools: {
		    art: {
			label: 'art',
			type: 'select',
			list: {
			    gallerysubpage: {
				label: "gallery subpage",
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '== Official artwork ==' + '\n' + '<' + 'gallery mode="packed" heights=200px caption="Official artwork">' + '\n' + '\n' + '</gallery>' + '\n' + '\n' + '== Portraits ==' + '\n' + '<' + 'gallery mode="packed" heights=200px caption="Portraits">' + '\n' + '\n' + '</gallery>' + '\n' + '\n' + '== Scenes ==' + '\n' + '<' + 'gallery mode="packed" heights=200px caption="Scenes">' + '\n' + '\n' + '</gallery>' + '\n' + '\n' + '[' + '[Category:Gallery Subpages]]'
				    }
				}
			    },
			    'basicgallerysubpage': {
				label: 'simple gallery subpage',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '== Gallery ==\n<' + 'gallery mode="packed" heights=200px caption="Gallery">\n',
					post: '</gallery>' + '\n' + '\n' + '[' + '[Category:Gallery Subpages]]'
				    }
				}
			    },
			    'artbox': {
				label: '{' + '{art}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{art' + '\n' + '|#artist=' + '\n' + '|series=' + '\n' + '|#source=',
					post: '\n' + '|type=' + '\n' + '}}'
				    }
				}
			    },
			    '#artistheading': {
				label: '#artist header',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '| <small><center>by {' + '{a|',
					post: '}}</center></small>'
				    }
				}
			    },
			    'artistheading': {
				label: 'artist header',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '| <small><center>by ',
					post: '</center></small>'
				    }
				}
			    },
			    'templateA': {
				label: '{' + '{a}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{a|',
					post: '}}'
				    }
				}
			    },
			    'bookcovercat': {
				label: '{' + '{cat tag|Books|book cover}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{cat tag|Books|book cover}}'
				    }
				}
			    },
			    'charactercat': {
				label: '{' + '{cat tag|Character images}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{cat tag|Character images}}'
				    }
				}
			    },
			    'artcat': {
				label: '{' + '{cat tag|Art}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{cat tag|Art}}'
				    }
				}
			    },
			    'interiorartcat': {
				label: '{' + '{cat tag|Interior art}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{cat tag|Interior art}}'
				    }
				}
			    },
			    'galleryheader': {
				label: 'gallery header',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '<' + 'gallery caption="Gallery" mode="packed" heights=200px>' + '\n'
				    }
				}
			    },
			    'endgallery': {
				label: '</gallery>',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '</gallery>'
				    }
				}
			    },
			    'officialart': {
				label: '|official=y',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '|official=y' + '\n'
				    }
				}
			    },
			    'tracer': {
				label: '|tracer=',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|tracer='
				    }
				}
			    },
			    'modified': {
				label: '|modified=',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|modified='
				    }
				}
			    },
			    'bookparam': {
				label: '|book=',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|book='
				    }
				}
			    },
			    'artistbox': {
				label: '{' + '{artist}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{'+'{artist' + '\n' + '|image=' + '\n' + '|alias=' + '\n' + '|fb=' + '\n' + '|reddit=' + '\n' + '|behance=' + '\n' + '|da=' + '\n' + '|ig=' + '\n' + '|as=' + '\n' + '|tumblr=' + '\n' + '|twitter=' + '\n' + '|site=' + '\n' + '|license=all|some|none|official' + '\n' + '|contact=' + '\n' + '|type=fan|interior|cover|multimedia' + '\n' + '|no-notify=y' + '\n' + '}}' + '\n' + '\n' + '\n' + '== Gallery ==' + '\n'
				    }
				}
			    },
			    'email': {
				label: 'Email',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '[mailto:',
					post: ' Email]'
				    }
				}
			    },
			    'clearright': {
				label: 'clear:right',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '<br style="clear:right;"/>'
				    }
				}
			    },
			    'clearleft': {
				label: 'clear:left',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '<br style="clear:left;"/>'
				    }
				}
			    },
			    'metadone': {
				label: '{' + '{meta/done}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{meta/done}}'
				    }
				}
			    }
			}
		    }
		}
	    }
	}
    } );

    //Add new references dropdown to the "advanced" section
    $( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
	section: 'advanced',
	groups: {
	    list: {
		tools: {
		    references: {
			label: 'refs',
			type: 'select',
			list: {
			    'book': {
				label: '{' + '{book ref}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{book ref|',
					post: '}}'
				    }
				}
			    },
			    'wob': {
				label: '{' + '{wob ref}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{wob ref|',
					post: '}}'
				    }
				}
			    },
			    'ref': {
				label: '{' + '{ref}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{ref|text=',
					post: '}}'
				    }
				}
			    },
			    'epigraph': {
				label: '{' + '{epigraph ref}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{epigraph ref|',
					post: '}}'
				    }
				}
			    },
			    'au': {
				label: '{' + '{au ref}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{au ref|',
					post: '}}'
				    }
				}
			    },
			    'msh': {
				label: '{' + '{msh ref}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{msh ref|',
					post: '}}'
				    }
				}
			    },
			    'tes': {
				label: '{' + '{tes ref}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{tes ref|',
					post: '}}'
				    }
				}
			    },
			    'file': {
				label: '{' + '{file ref}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{file ref|',
					post: '}}'
				    }
				}
			    },
			    'mapref': {
				label: '{' + '{map ref}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{map ref|',
					post: '}}'
				    }
				}
			    },
			    'url': {
				label: '{' + '{url ref}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{url ref|url=',
					post: '|text=|date=|site=}}'
				    }
				}
			    },
			    '17s': {
				label: '{' + '{17s ref}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{17s ref|topic/news/post',
					post: '|id#|description|date=}}'
				    }
				}
			    }
			}
		    }
		}
	    }
	}
    } );

    //Adding an infobox dropdown to the "advanced" section
    $( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
	section: 'advanced',
	groups: {
	    list: {
		tools: {
		    infoboxes: {
			label: 'infoboxes',
			type: 'select',
			list: {
			    'character': {
				label: '{' + '{character}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{character' + '\n' + '|image=' + '\n' + '|unnamed=y' + '\n' + '|merge-family=y' + '\n' + '|parents=' + '\n' + '|spouse=' + '\n' + '|siblings=' + '\n' + '|children=' + '\n' + '|ancestors=' + '\n' + '|relatives=' + '\n' + '|descendants=' + '\n' + '|born=' + '\n' + '|died=' + '\n' + '|abilities=' + '\n' + '|bonded=' + '\n' + '|titles=' + '\n' + '|aliases=' + '\n' + '|skills=' + '\n' + '|achievements=' + '\n' + '|#profession=' + '\n' + '|profession=' + '\n' + '|occupation=' + '\n' + '|religion=' + '\n' + '|groups=' + '\n' + '|species=' + '\n' + '|era=' + '\n' + '|birthplace=' + '\n' + '|residence=' + '\n' + '|ethnicity=' + '\n' + '|nation=' + '\n' + '|nationality='
				    }
				}
			    },
			    'architecture': {
				label: '{' + '{architecture}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{architecture' + '\n' + '|image=' + '\n' + '|owner= / owners=' + '\n' + '|usage=' + '\n' + '|era=' + '\n' + '|city=' + '\n' + '|state=' + '\n' + '|dominance=' + '\n' + '|princedom=' + '\n' + '|region=' + '\n' + '|nation='
				    }
				}
			    },
			    'business': {
				label: '{' + '{business}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{business' + '\n' + '|image=' + '\n' + '|owner= / owners=' + '\n' + '|founder= / founders=' + '\n' + '|leader= / leaders=' + '\n' + '|members=' + '\n' + '|services=' + '\n' + '|products=' + '\n' + '|era=' + '\n' + '|city=' + '\n' + '|nation='
				    }
				}
			    },
			    'culture': {
				label: '{' + '{culture}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{culture' + '\n' + '|image=' + '\n' + '|related=' + '\n' + '|type=' + '\n' + '|era=' + '\n' + '|origin='
				    }
				}
			    },
			    'event': {
				label: '{' + '{event}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{event' + '\n' + '|image=' + '\n' + '|partof=' + '\n' + '|date=' + '\n' + '|era=' + '\n' + '|participants=' + '\n' + '|effects=' + '\n' + '|city= / state= / region= / nation=' + '\n' + '|princedom= / dominance=' + '\n' + '|location='
				    }
				}
			    },
			    'food': {
				label: '{' + '{food}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{food' + '\n' + '|image=' + '\n' + '|ingredients=' + '\n' + '|type=' + '\n' + '|taste=' + '\n' + '|origin='
				    }
				}
			    },
			    'geography': {
				label: '{' + '{geography}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{geography' + '\n' + '|map= / |image=' + '\n' + '|type=' + '\n' + '|era=' + '\n' + '|region='
				    }
				}
			    },
			    'group': {
				label: '{' + '{group}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{group' + '\n' + '|image=' + '\n' + '|founder= / founders=' + '\n' + '|leader= / leaders=' + '\n' + '|hq=' + '\n' + '|type=' + '\n' + '|era='
				    }
				}
			    },
			    'item': {
				label: '{' + '{item}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{item' + '\n' + '|image=' + '\n' + '|owner= / owners=' + '\n' + '|creator= / creators=' + '\n' + '|type=' + '\n' + '|function='
				    }
				}
			    },
			    'lifeform': {
				label: '{' + '{lifeform}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{lifeform' + '\n' + '|image=' + '\n' + '|type=' + '\n' + '|abilities=' + '\n' + '|use=' + '\n' + '|native=' + '\n' + '|sapient=y'
				    }
				}
			    },
			    'settlement': {
				label: '{' + '{settlement}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{settlement' + '\n' + '|map/image=' + '\n' + '|ruler=' + '\n' + '|occupied=' + '\n' + '|era=' + '\n' + '|state=' + '\n' + '|dominance=' + '\n' + '|princedom=' + '\n' + '|region=' + '\n' + '|nation='
				    }
				}
			    },
			    'location': {
				label: '{' + '{location}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{location' + '\n' + '|map/image=' + '\n' + '|capital=' + '\n' + '|ruler=' + '\n' + '|occupied=' + '\n' + '|era=' + '\n' + '|city=' + '\n' + '|state=' + '\n' + '|dominance=' + '\n' + '|princedom=' + '\n' + '|region=' + '\n' + '|nation='
				    }
				}
			    },
			    'literature': {
				label: '{' + '{literature}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{literature' + '\n' + '|image=' + '\n' + '|type=' + '\n' + '|author=' + '\n' + '|language=' + '\n' + '|era='
				    }
				}
			    },
			    'vehicle': {
				label: '{' + '{vehicle}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{vehicle' + '\n' + '|image=' + '\n' + '|owner/owners=' + '\n' + '|creator/creators=' + '\n' + '|type=' + '\n' + '|captain='
				    }
				}
			    }
			}
		    }
		}
	    }
	}
    } );

    //Add new build-a-box dropdown to the "advanced" section
    $( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
	section: 'advanced',
	groups: {
	    list: {
		tools: {
		    simplecharacterinfobox: {
			label: 'build-a-box',
			type: 'select',
			list: {
			    'start': {
				label: '{' + '{character',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{character'
				    }
				}
			    },
			    'residence': {
				label: '|residence=',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|residence='
				    }
				}
			    },
			    'imageparam': {
				label: '|image=',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|image='
				    }
				}
			    },
			    'profession': {
				label: '|profession=',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|profession='
				    }
				}
			    },
			    '#profession': {
				label: '|#profession=',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|#profession='
				    }
				}
			    },
			    'skills': {
				label: '|skills=',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|skills='
				    }
				}
			    },
			    'species': {
				label: '|species=',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|species='
				    }
				}
			    },
			    'abilities': {
				label: '|abilities=',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|abilities='
				    }
				}
			    },
			    'ethnicity': {
				label: '|ethnicity=',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|ethnicity='
				    }
				}
			    },
			    'born': {
				label: '|born=',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|born='
				    }
				}
			    },
			    'died': {
				label: '|died=',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|died='
				    }
				}
			    },
			    'nationality': {
				label: '|nationality=',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|nationality='
				    }
				}
			    },
			    'bonded': {
				label: '|bonded=',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|bonded='
				    }
				}
			    }
			}
		    }
		}
	    }
	}
    } );

    //Add new infobox endings dropdown to the "advanced" section
    $( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
	section: 'advanced',
	groups: {
	    list: {
		tools: {
		    endings: {
			label: 'ends',
			type: 'select',
			list: {
			    'sa': {
				label: 'Stormlight',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|world=Roshar' + '\n' + '|universe=[[Cosmere]]' + '\n' + '|books=[[The Stormlight Archive]]' + '\n' + '}}'
				    }
				}
			    },
			    'mbe1': {
				label: 'MB Era 1',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|world=Scadrial' + '\n' + '|universe=[[Cosmere]]' + '\n' + '|books=[[Mistborn Era 1]]' + '\n' + '}}'
				    }
				}
			    },
			    'mbe2': {
				label: 'MB Era 2',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|world=Scadrial' + '\n' + '|universe=[[Cosmere]]' + '\n' + '|books=[[Mistborn Era 2]]' + '\n' + '}}'
				    }
				}
			    },
			    'wb': {
				label: 'Warbreaker',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|world=Nalthis' + '\n' + '|universe=[[Cosmere]]' + '\n' + '|books=[[Warbreaker]]' + '\n' + '}}'
				    }
				}
			    },
			    'ela': {
				label: 'Elantris',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|world=Sel' + '\n' + '|universe=[[Cosmere]]' + '\n' + '|books=[[Elantris (book)|Elantris]]' + '\n' + '}}'
				    }
				}
			    },
			    'alc': {
				label: 'Alcatraz',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|earth=Alcatraz' + '\n' + '|books=[[Alcatraz Versus the Evil Librarians (series)|Alcatraz Versus the Evil Librarians]]' + '\n' + '}}'
				    }
				}
			    },
			    'ws': {
				label: 'White Sand',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|world=Taldain' + '\n' + '|universe=[[Cosmere]]' + '\n' + '|books=[[White Sand]]' + '\n' + '}}'
				    }
				}
			    },
			    'first-born': {
				label: 'Firstborn',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|nation=High Empire' + '\n' + '|books=[[Firstborn]]' + '\n' + '}}'
				    }
				}
			    },
			    'skyward': {
				label: 'Skyward',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '|world=',
					post: '\n' + '|universe=[[Cytoverse]]' + '\n' + '|books=[[Skyward (series)]]' + '\n' + '}}'
				    }
				}
			    }
			}
		    }
		}
	    }
	}
    } );

    //Add new page ends dropdown to the "advanced" section
    $( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
	section: 'advanced',
	groups: {
	    list: {
		tools: {
		    bottoms: {
			label: 'bottoms',
			type: 'select',
			list: {
			    'pagename': {
				label: '{' + '{SUBST:PAGENAME}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '\'\'\'{' + '{SUBST:PAGENAME}}\'\'\''
				    }
				}
			    },
			    'subpagename': {
				label: '{' + '{SUBST:SUBPAGENAME}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '\'\'\'{' + '{SUBST:SUBPAGENAME}}\'\'\''
				    }
				}
			    },
			    'notes': {
				label: '== Notes ==',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n\n' + '== Notes =='
				    }
				}
			    },
			    'refsection': {
				label: '<' + 'references/>',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '<' + 'references />'
				    }
				}
			    },
			    'stub': {
				label: '{' + '{stub}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '{' + '{stub}}'
				    }
				}
			    },
			    'partial': {
				label: '{' + '{partial}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '{' + '{partial}}'
				    }
				}
			    },
			    'complete': {
				label: '{' + '{complete}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '{' + '{complete}}'
				    }
				}
			    },
			    'alcatraz': {
				label: '{' + '{Alcatraz}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '{' + '{Alcatraz}}'
				    }
				}
			    },
			    'elantris': {
				label: '{' + '{Elantris}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '{' + '{Elantris}}'
				    }
				}
			    },
			    'mbera1': {
				label: '{' + '{Mistborn|Era 1}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '{' + '{Mistborn|Era 1}}'
				    }
				}
			    },
			    'mbera2': {
				label: '{' + '{Mistborn|Era 2}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '{' + '{Mistborn|Era 2}}'
				    }
				}
			    },
			    'reckoners': {
				label: '{' + '{Reckoners}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '{' + '{Reckoners}}'
				    }
				}
			    },
			    'sky': {
				label: '{' + '{Skyward}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '{' + '{Skyward}}'
				    }
				}
			    },
			    'storm': {
				label: '{' + '{Stormlight}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '{' + '{Stormlight}}'
				    }
				}
			    },
			    'warbreaker': {
				label: '{' + '{Warbreaker}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '{' + '{Warbreaker}}'
				    }
				}
			    },
			    'firstborn': {
				label: '{' + '{Firstborn}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '{' + '{Firstborn}}'
				    }
				}			    },
			    'whitesand': {
				label: '{' + '{White Sand}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '{' + '{White Sand}}'
				    }
				}
			    }
			}
		    }
		}
	    }
	}
    } );

    //Add new dropdown of commonly used tags to the "advanced" section
    $( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
	section: 'advanced',
	groups: {
	    list: {
		tools: {
		    tags: {
			label: 'tags',
			type: 'select',
			list: {
			    'cattag': {
				label: '{' + '{cat tag|}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{cat tag|',
					post: '}}'
				    }
				}
			    },
			    'tagplus': {
				label: '{' + '{tag+|}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{tag+|',
					post: '}}'
				    }
				}
			    },
			    'tag': {
				label: '{' + '{tag|}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{tag|',
					post: '}}'
				    }
				}
			    },
			    'move': {
				label: '{' + '{move|}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{move|',
					post: '}}'
				    }
				}
			    },
			    'merge': {
				label: '{' + '{merge|}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{merge|',
					post: '}}'
				    }
				}
			    },
			    'anchor': {
				label: '{' + '{anchor|}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{anchor|',
					post: '}}'
				    }
				}
			    },
			    'delete': {
				label: '{' + '{delete}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{delete}}'
				    }
				}
			    },
			    'cite': {
				label: '{' + '{cite}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{cite}}'
				    }
				}
			    },
			    'theory': {
				label: '{' + '{theory}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{theory}}'
				    }
				}
			    },
			    'disputed': {
				label: '{' + '{disputed}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{disputed}}'
				    }
				}
			    },
			    'expand': {
				label: '{' + '{expand}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{expand}}'
				    }
				}
			    },
			    'clarify': {
				label: '{' + '{clarify}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{clarify}}'
				    }
				}
			    },
			    'uncanonical': {
				label: '{' + '{uncanonical}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{uncanonical}}'
				    }
				}
			    },
			    'copyright': {
				label: '{' + '{copyright}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{copyright}}'
				    }
				}
			    }
			}
		    }
		}
	    }
	}
    } );

    //Add new dropdown for other stuff to the "advanced" section
    $( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
	section: 'advanced',
	groups: {
	    list: {
		tools: {
		    other: {
			label: 'other',
			type: 'select',
			list: {
			    'for': {
				label: '{' + '{for|',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{for|',
					post: '}}'
				    }
				}
			    },
			    'smallcaps': {
				label: '{' + '{small caps}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{small caps|',
					post: '}}'
				    }
				}
			    },
			    'collapsible': {
				label: 'Collapsing',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{| class="mw-collapsible mw-collapsed" width=100%' + '\n' + '|-' + '\n' + '|' + '\n' + '|-' + '\n' + '|' + '\n',
					post: '\n' + '|}'
				    }
				}
			    },
			    //Redirect cat tags
			    'nominal': {
				label: 'Nominal',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '[' + '[Category: Nominal redirects]]'
				    }
				}
			    },
			    'structural': {
				label: 'Structural',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '[' + '[Category: Structural redirects]]'
				    }
				}
			    },
			    'subsection': {
				label: 'Subsection',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '[' + '[Category: Subsection redirects]]'
				    }
				}
			    },
			    'correction': {
				label: 'Correction',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '[' + '[Category: Correction redirects]]'
				    }
				}
			    },
			    'forgallery': {
				label: '{' + '{for|/' + 'Gallery',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{for|/Gallery|more images}}'
				    }
				}
			    },
			    'roshardate': {
				label: '{' + '{rosharan date}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{rosharan date|',
					post: '}}'
				    }
				}
			    },
			    'pre': {
				label: '<pre>',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '<pre>',
					post: '</pre>'
				    }
				}
			    },
			    'dpl': {
				label: '<dynamicpagelist>',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '<DynamicPageList>' + '\n' + 'mode=ordered' + '\n' + 'category=' + '\n' + 'notcategory=' + '\n' + 'namespace=' + '\n' + 'ordermethod=sortkey' + '\n' + 'order=ascending' + '\n' + '</DynamicPageList>'
				    }
				}
			    },
			    'forresidents': {
				label: '{' + '{for|Residents',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{for|:Category:Residents of {' + '{SUBST:PAGENAME}}|a full list see}}'
				    }
				}
			    },
			    'prefixindex': {
				label: 'PrefixIndex',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{Special:PrefixIndex/{' + '{FULLPAGENAME}}/|stripprefix=1}}'
				    }
				}
			    },
			    'spoiler': {
				label: '{' + '{spoiler|}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '{' + '{spoiler|',
					post: '}}'
				    }
				}
			    },
			    'update': {
				label: '{' + '{update|}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '{' + '{update|',
					post: '}}'
				    }
				}
			    },
			    'substpagename': {
				label: '{' + '{SUBST:PAGENAME}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{SUBST:PAGENAME}}'
				    }
				}
			    },
			    'demoted': {
				label: '{' + '{demoted|}}',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\n' + '{' + '{demoted|',
					post: '}}'
				    }
				}
			    }
			}
		    }
		}
	    }
	}
    } );

    //Add new broadsheet citations dropdown to the "advanced" section
    $( '#wpTextbox1' ).wikiEditor( 'addToToolbar', {
	section: 'advanced',
	groups: {
	    list: {
		tools: {
		    broadsheets: {
			label: 'broadsheets',
			type: 'select',
			list: {
			    'elendel-ref': {
				label: 'Elendel ref',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{file ref|Elendel_Daily_broadsheet.png|\'\'The Elendel Daily\'\' broadsheet}}'
				    }
				}
			    },
			    'house-ref': {
				label: 'House ref',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{file ref|House_Record_broadsheet.jpg|\'\'The House Record\'\' broadsheet}}'
				    }
				}
			    },
			    'ascendancy-ref': {
				label: 'Ascendancy ref',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '{' + '{file ref|New_Ascendancy_broadsheet.jpg|\'\'The New Ascendancy\'\' broadsheet}}'
				    }
				}
			    },
			    'elendel': {
				label: 'Elendel',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\'\'[[Elendel Daily]]\'\''
				    }
				}
			    },
			    'house': {
				label: 'House',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\'\'[[House Record]]\'\''
				    }
				}
			    },
			    'ascendancy': {
				label: 'Ascendancy',
				action: {
				    type: 'encapsulate',
				    options: {
					pre: '\'\'[[New Ascendancy]]\'\''
				    }
				}
			    }
			}
		    }
		}
	    }
	}
    } );
};

/* 
 * Check if view is in edit mode and that the required modules are available. Then, customize the toolbar...
 * Don't touch below this line!
 */
if (['edit', 'submit'].indexOf(mw.config.get('wgAction')) !== -1) {
    mw.loader.using('user.options').then(function() {
	// This can be the string "0" if the user disabled the preference ([[phab:T54542#555387]])
	if (mw.user.options.get('usebetatoolbar') == 1) {
	    $.when(
		mw.loader.using('ext.wikiEditor'), $.ready
	    ).then(customizeToolbar);
	}
    });
}