mNo edit summary |
mNo edit summary |
||
Line 102: | Line 102: | ||
'u:dev:MediaWiki:Rollback/code.js', |
'u:dev:MediaWiki:Rollback/code.js', |
||
'u:dev:MediaWiki:SOAPReport.js', |
'u:dev:MediaWiki:SOAPReport.js', |
||
+ | 'u:dev:MediaWiki:ThemeSwitcher.js', |
||
'u:dev:MediaWiki:UserAccountAge/code2.js', |
'u:dev:MediaWiki:UserAccountAge/code2.js', |
||
'u:dev:MediaWiki:UserActivityLink.js', |
'u:dev:MediaWiki:UserActivityLink.js', |
||
Line 188: | Line 189: | ||
$(SkinPropagation.init); |
$(SkinPropagation.init); |
||
− | |||
− | // FandomDesktop thing 2 |
||
− | $(function() { |
||
− | if (mw.config.get('skin') !== 'fandomdesktop') return; |
||
− | var theme = mw.util.getParamValue('usetheme'); |
||
− | if (['light','dark'].indexOf(theme) === -1) return; |
||
− | $.get(mw.util.wikiScript('wikia')+'?controller=ThemeApi&method=brandThemeVariables&variant='+theme).done(function(data){ |
||
− | var $s = $('#pcjThemeSwitch')[0] || $('<style>').attr('id','pcjThemeSwitch').appendTo('body'); |
||
− | $($s).text(data); |
||
− | $('body').removeClass('theme-fandomdesktop-light theme-fandomdesktop-dark').addClass('theme-fandomdesktop-'+theme); |
||
− | }); |
||
− | }); |
Revision as of 16:48, 2 June 2021
window.AjaxBlock = {
expiryTimes: {
'2 hours': '2 hours',
'1 day': '1 day',
'3 days': '3 days',
'1 week': '1 week',
'2 weeks': '2 weeks',
'1 month': '1 month',
'3 months': '3 months',
'6 months': '6 months',
'1 year': '1 year',
'infinite': 'infinite'
},
check: {
talk: true,
autoBlock: true,
override: true,
noCreate: true
}
};
// AjaxDelete
window.AjaxDelete = {
deleteReasons: {
'Author request': 'Author request',
'Broken redirect': 'Broken redirect',
'Cleanup': 'Cleanup',
'Marked for deletion': 'Marked for deletion',
'[[w:Help:Spam|Spam]]': 'Spam',
'[[w:Help:Vandalism|Vandalism]]': 'Vandalism',
},
reload: true
};
// CustomHeaderDropdown
window.CustomHeaderLinks = [
{
text: 'Local Administrators',
href: mw.util.getUrl('Special:ListAdmins')
},
{
text: 'Recent Changes',
href: mw.util.getUrl('Special:RecentChanges')
},
{
text: 'DiscussionsRC',
href: mw.util.getUrl('Special:SocialActivity')
},
{
text: 'Add New Image',
href: mw.util.getUrl('Special:Upload')
},
{
text: 'Add New Video',
href: mw.util.getUrl('Special:Video')
}
];
// GDM Dashboard link in the toolbar
$('#WikiaBar .toolbar .tools').append('<li><a href="https://discussions.fandom.com/wiki/Data:Dashboard">GDM Dashboard</a></li>');
// JWB
importScriptURI('//en.wikipedia.org/w/index.php?title=User:Joeytje50/JWB.js/load.js&action=raw&ctype=text/javascript');
// QuickCreate GDM userpage
window.qtUserPageTemplate = '{{w:User:TheKorraFanatic/GDM}}';
// Remove deletion autofills
if (mw.config.get('wgAction') === 'delete') {
$('#wpReason').removeAttr('value');
}
// WHAM
window.WHAMBotMe = true;
window.WHAMDelay = 1000;
window.WHAMDeleteReason = "Cleanup";
// Imports
importArticles({
type: 'script',
articles: [
'u:dev:MediaWiki:AbuseLogRC.js',
'u:dev:MediaWiki:AdminDashboard JS-Button/code.js',
'u:dev:MediaWiki:AjaxBatchDelete.js',
'u:dev:MediaWiki:AjaxBatchUndelete.js',
'u:dev:MediaWiki:AjaxBlock/code.js',
'u:dev:MediaWiki:AjaxDelete/code.js',
'u:dev:MediaWiki:AnchoredRollback/code.js',
'u:dev:MediaWiki:AjaxUndo/code.js',
'u:dev:MediaWiki:BackToTopButton/code.js',
'u:dev:MediaWiki:BlogLink/code.js',
'u:dev:MediaWiki:CustomHeaderDropdown.js',
'u:dev:MediaWiki:DisableInfoboxBuilder.js',
'u:dev:MediaWiki:ListFiles/code.js',
'u:dev:MediaWiki:MarkForDeletion/code.js',
'u:dev:MediaWiki:MassBlock/code.js',
'u:dev:MediaWiki:MassProtect/code.js',
'u:dev:MediaWiki:PortableCSSPad/code.js',
'u:dev:MediaWiki:ProtectionIcons.js',
'u:dev:MediaWiki:QuickCreateUserPage/code.js',
'u:dev:MediaWiki:QuickDiff/code.js',
'u:dev:MediaWiki:Rollback/code.js',
'u:dev:MediaWiki:SOAPReport.js',
'u:dev:MediaWiki:ThemeSwitcher.js',
'u:dev:MediaWiki:UserAccountAge/code2.js',
'u:dev:MediaWiki:UserActivityLink.js',
'u:dev:MediaWiki:VanguardTools.js',
'u:dev:MediaWiki:WHAM/code.2.js',
]
});
// FandomDesktop thing
window.SkinPropagation = {
skin: '',
init: function() {
if (window.location.href.indexOf('useskin=') == -1) return;
var url = SkinPropagation.parseURL(window.location.href);
if (url.query.useskin) {
SkinPropagation.skin = (url.query.propagateskin || url.query.useskin);
}
if (SkinPropagation.skin != '') {
$(document.body).bind('click.skinpropagation', SkinPropagation.clicEvent);
$('form').bind('submit.skinpropagation', SkinPropagation.submitEvent);
}
},
parseURL: function(url) {
var ret = {base:'',qs:'',query:{},hash:''};
var loc = url.indexOf('#');
if (loc != -1) {
ret.hash = url.substr(loc+1);
url = url.substr(0,loc);
}
loc = url.indexOf('?');
if (loc != -1) {
ret.qs = url.substr(loc+1);
url = url.substr(0,loc);
var paras = ret.qs.split('&');
for (var i = 0; i < paras.length; i++) {
var p = paras[i].split('=');
if (p.length == 2) {
ret.query[p[0]] = p[1];
}
}
}
ret.base = url;
return ret;
},
getURL: function(url) {
var nurl = url.base + '?';
for (var p in url.query) {
nurl += p + '=' + url.query[p] + '&';
}
nurl = nurl.substr(0,nurl.length-1);
if (url.hash != '') {
nurl += '#'+ url.hash;
}
return nurl;
},
clicEvent: function(e) {
if (e.target.tagName.toLowerCase() != 'a') return;
if (e.target.href.indexOf(window.wgServer) != 0) return;
var url = SkinPropagation.parseURL(e.target.href);
var thisloc = SkinPropagation.parseURL(window.location.href);
if (url.base == thisloc.base && url.qs == thisloc.qs && url.hash != '') {
return;
}
if (url.query.useskin && url.query.useskin != SkinPropagation.skin) {
url.query.propagateskin = SkinPropagation.skin;
} else {
url.query.useskin = SkinPropagation.skin;
}
e.target.href = SkinPropagation.getURL(url);
},
submitEvent: function(e) {
if (this.action.indexOf(window.wgServer) != 0) return;
if (this.method == 'post') {
var url = SkinPropagation.parseURL(this.action);
url.query.useskin = SkinPropagation.skin;
this.action = SkinPropagation.getURL(url);
} else {
$(this).append('<input type="hidden" name="useskin" value="'+SkinPropagation.skin+'"/>');
}
},
stop: function() {
$(document.body).unbind('click.skinpropagation');
$('form').unbind('submit.skinpropagation');
}
};
$(SkinPropagation.init);