//<nowiki>
Xv = 'v2.2a';
Xn = 'XReport';
XReport = `${Xn} ${Xv}`;
XLink = ']';
XLinkS = `<small>${XLink}</small>`;
XLinkK = `(${XLink} ${Xv})`;
sig = ' --~~~~';
pSummary = 'Reporting: Page ] '+XLinkK;
uSummary = 'Reporting ] '+XLinkK;
blocation = mw.config.get('wgMFMode') === 'stable' ? 'p-tb' : 'p-cactions';
api = new mw.Api();
DB = mw.config.get('wgDBname');
curPageName = mw.config.get('wgPageName');
RelevantPageName = mw.config.get('wgRelevantPageName') != null ? mw.config.get('wgRelevantPageName').replace(/_/g, ' ') : '';
RelevantUserName = mw.config.get('wgRelevantUserName') != null ? mw.config.get('wgRelevantUserName') : '';
Server = mw.config.get('wgServer').replace(/^(https?)?:?\/\//, '').split('.');
iwPrefix = null;
iwPrefix = Server === 'wikimedia' ? Server : iwPrefix;
iwPrefix = Server === 'mediawiki' ? 'mw' : iwPrefix;
iwPrefix = Server === 'wiktionary' ? 'wikt:' + Server : iwPrefix;
iwPrefix = Server === 'wikiquote' ? 'q:' + Server : iwPrefix;
iwPrefix = Server === 'wikinews' ? 'n:' + Server : iwPrefix;
iwPrefix = Server === 'wikibooks' ? 'b: ' + Server: iwPrefix;
iwPrefix = Server === 'wikisource' ? 's:' + Server: iwPrefix;
iwPrefix = Server === 'wikiversity' ? 'v:' + Server : iwPrefix;
iwPrefix = Server === 'mediawiki' ? 'voy:' + Server : iwPrefix;
if (Server == 'wikidata') {
iwPrefix = Server === 'test' ? 'testwikidata' : iwPrefix;
iwPrefix = Server === 'www' ? 'd' : iwPrefix;
} else if (Server == 'wikipedia') {
iwPrefix = .includes(Server) ? Server + 'wiki' : iwPrefix;
iwPrefix = iwPrefix === null ? 'w:' + Server : iwPrefix;
}
metaapi = mw.config.get('wgDBname') === 'metawiki' ? new mw.Api() : new mw.ForeignApi('https://meta.wikimedia.org/w/api.php');
metaapi.get({
action: 'query',
prop: 'revisions',
titles: 'User:TenWhile6/XReport/languageData.json',
rvlimit: '1',
rvprop: 'content',
rvslots: 'main',
formatversion: '2',
format: 'json'
}).done( function(Ldata) {
LangData = JSON.parse(Ldata.query.pages.revisions.slots.main.content);
var lang = mw.user.options.get('language') in LangData ? mw.user.options.get('language') : 'en';
var mwh = '<div style=\'position:absolute; right:1em; top:0.1em\'><p style=\'color:red\'>Made with ❤️ by <a href=\'' + (lang === 'de' ? 'https://de.wikipedia.orghttps://wikines.com/de/User:TenWhile6' : 'https://meta.wikimedia.orghttps://wikines.com/de/User:TenWhile6') + '\'>TenWhile6</a></p></div>';
function trnslt(key) {
if (LangData) {
return LangData;
}
return LangData.en;
}
var WikiData = {
'SRG': {
'page': 'Steward requests/Global',
'section': -1,
'regex': '{{\\s*ockide\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '=== Global lock for $1 ===\n{{Status}}\n*{{LockHide|1=$1}}\n$2 '+XLinkS+sig,
'I': {
'page': 'Steward requests/Global',
'section': 1,
'regex': '{{\\s*uxotool\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '=== Global block for ] ===\n{{Status}}\n* {{Luxotool|$1}}\n$2 '+XLinkS+sig,
},
'H': {
'page': 'Steward requests/Global',
'section': -1,
'regex': '{{\\s*ockide\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '=== Global lock ===\n{{Status}}\n*{{LockHide|1=$1|hidename=1}}\n$2 '+XLinkS+sig,
'summary': 'Reporting user '+XLinkK
},
'reason':
},
'GSR': {
'page': 'Global sysops/Requests',
'regex': '{{\\s*ockide\\s*\\|\\s*(1(\\s*)=|)\\s*$1',
'rtext': '* Please block {{LockHide|1=$1|2=$3}} $2 '+XLinkS+sig,
'summary': 'Reporting user '+XLinkK
},
// GS-Opted-Out Wikis -- Status: 09.08.2024
'alswiki': {
'page': 'Wikipedia:Vandalismusmeldung',
'regex': '==\\s*Benutzer:$1\\s*==',
'regeX': '|{{\\s*enutzer\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '== ] ==\n{{Benutzer|$1}} $2 '+XLinkS+sig,
'P': {
'page': 'Wikipedia:Vandalismusmeldung',
'regex': '==\\s*Seite \\s*$1\\s*==',
'regeX': '|{{\\s*rtikel\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '== Seite ] ==\n{{Artikel|$1}} $2 '+XLinkS+sig
}
},
'anwiki': {
'page': 'Wikipedia:Peticions a los almenistradors',
'regex': '==\\s*Report concerning User:$1\\s*==',
'rtext': '== Report concerning User:$1 ==\n* ] – $2 '+XLinkS+sig,
},
'arwiki': {}, // 'page': 'ويكيبيديا:إخطار الإداريين/منع/الحالية',
'bgwiki': {
'page': 'Уикипедия:Заявки_към_администраторите',
'regex': '==\\s*Блокиране на $1\\s*==',
'rtext': '== Блокиране на $1 ==\n]\n\n$2 '+XLinkS+sig
},
'bnwiki': {
'page': 'উইকিপিডিয়া:প্রশাসকদের আলোচনাসভা',
'regex': '==\\s*বাধাদানের অনুরোধ: $1\\s*==',
'rtext': '== বাধাদানের অনুরোধ: $1 ==\n* ]\n\n$2 '+XLinkS+sig
},
'bswiki': {}, // 'page': 'Wikipedia:Pitanja za administratore'
'cawiki': {}, // 'page': 'Viquipèdia:Observatori del vandalisme'
'commonswiki': {
'page': 'Commons:Administrators\' noticeboard/Vandalism',
'regex': '==\\s*$1\\s*==',
'regeX': '|{{\\s*andal\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '{{subst:Report vandal|$1|$2 '+XLinkS+sig+'}}'
},
'cswiki': {}, // 'page': 'Wikipedie:Nástěnka správců'
'cswikisource': {}, // 'page': 'Wikizdroje:Nástěnka správců'
'cswiktionary': {}, // 'page': 'Wikislovník:Nástěnka správců'
'cywiki': {}, // 'page': 'Wicipedia:Negesfwrdd gweinyddiaeth'
'dawiki': {}, // 'page': 'Wikipedia:Anmodning om administratorassistance'
'dewiki': {
'page': 'Wikipedia:Vandalismusmeldung',
'regex': '==\\s*Benutzer:$1\\s*==',
'regeX': '|{{\\s*enutzer\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'summary': 'Meldung: ] (] '+ Xv+')',
'rtext': '== ] ==\n{{Benutzer|$1}} $2 <small><small>]</small></small>'+sig,
'P': {
'page': 'Wikipedia:Vandalismusmeldung',
'regex': '==\\s*Seite \\s*$1\\s*==',
'regeX': '|{{\\s*rtikel\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'summary': 'Meldung: Seite ] (] '+ Xv+')',
'rtext': '== Seite ] ==\n{{Artikel|$1}} $2 <small><small>]</small></small>'+sig
},
'reason':
},
'dewikibooks': {
'page': 'Wikibooks:Vandalensperrung',
'regex': '==\\s*Benutzer:$1\\s*==',
'regeX': '|{{\\s*andal\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '== ] ==\n{{Vandale|$1}} $2 '+XLinkS+sig
},
'dewikisource': {}, // no report page
'dewikivoyage': {}, // no report page
'dewiktionary': {
'page': 'Wiktionary:Vandalismusmeldung',
'regex': '==\\s*Benutzer:$1\\s*==',
'regeX': '|{{\\s*andal\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '== ] ==\n{{Benutzer|$1}} $2 '+XLinkS+sig
},
'elwiki': {
'page': 'Βικιπαίδεια:Σημειωματάριο διαχειριστών',
'regex': '{{\\s*ser\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '== Report concerning ] ==\n* {{User|$1}}\n$2 '+XLinkS+sig
},
'enwiki': {
'page': 'Wikipedia:Administrator intervention against vandalism',
'regex': '{{\\s*vandal\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'regeX': '|{{\\s*andal\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '*{{vandal|$1}} – $2 '+XLinkS+sig
},
'enwikiquote': {
'page': 'Wikiquote:Vandalism in progress',
'regex': '==\\s*Report concerning ]\\s*==',
'regeX': '|{{\\s*andal\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '== Report concerning ] ==\n\n* {{vandal|$1}}\n$2 '+XLinkS+sig
},
'enwikisource': {
'page': 'Wikisource:Administrators\' noticeboard',
'regex': '==\\s*Report concerning ]\\s*==',
'regeX': '|{{\\s*andal\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '== Report concerning ] ==\n\n* {{vandal|$1}}\n$2 '+XLinkS+sig
},
'enwiktionary': {
'page': 'Wiktionary:Vandalism in progress',
'regex': '{{\\s*andal\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '* {{vandal|$1}} – $2 '+XLinkS+sig
},
'eowiki': {
'page': 'Vikipedio:Diskutejo/Administrejo',
'regex': '==\\s*Report concerning ]\\s*==',
'regeX': '|{{\\s*ser\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '== Report concerning ] ==\n\n* {{user|$1}}\n$2 '+XLinkS+sig
},
'eswiki': {
'page': 'Wikipedia:Vandalismo en curso',
'regex': '==\\s*$1\\s*==',
'rtext': '{{subst:ReportevandalismoIP|1=$1|2=$2 '+XLinkS+'}}'
},
'eswikinews': {
'page': 'Wikinoticias:Tablón de anuncios de los administradores',
'regex': '{{\\s*dmin-U\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '== Vandalismo reiterado ==\n;Estado de solicitud\n* {{EstadoTAA|}}\n;Usuarios/Artículos implicados\n* {{Admin-U|$1}}\n\n;Problema\n* $2\n\n;Usuario que solicita\n* '+XLinkS+sig+'\n\n;Respuesta\n(a rellenar por un administrador)',
},
'etwiki': {}, // no report page
'euwiki': {}, // no report page
'fawiki': {
// 'page': 'ویکیپدیا:تابلوی اعلانات مدیران',
},
'fiwiki': {
'page': 'Wikipedia:Ylläpitäjien ilmoitustaulu',
'regex': 'Käyttäjä:\\s*$1\\s*',
'rtext': '== Estopyyntö $1 ({{subst:LOCALDAY}}.{{subst:LOCALMONTH}}.{{subst:LOCALYEAR}}) ==\n<big>$1</big>\n*\'\'\'Toiminnot:\'\'\' ] | ] | ] | ]\n*\'\'\'Lisätiedot:\'\'\' $2 '+XLinkS+sig
},
'frwiki': {
'page': 'Wikipédia:Vandalisme en cours',
'regex': '{{\\s*+\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '== Demande de blocage de $1 ==\n\n* Auteur du vandalisme : {{u+|$1}}\n* Type de dégâts : $2\n\n<!-- Merci de ne pas modifier la ligne ci-dessous -->\n<small></small> Message déposé par'+sig
},
'frwikisource': {}, //
'frwikiversity': {}, //
'frwiktionary': {}, //
'glwiki': {
'page': 'Wikipedia:Taboleiro dos administradores/Bloqueos e proteccións',
'regex': '\\s*$1]]\\s*==',
'rtext': '== Informe sobre ] ==\n\nBloquea {{user|$1}}: $2 '+XLinkS+sig
},
'hewiki': {}, //
'hewikisource': {}, //
'hrwiki': {}, //
'huwiki': {
'page': 'Wikipédia:Adminisztrátorok üzenőfala',
'regex': '==\\s*$1\\s*==',
'regeX': '|{{\\s*ser\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '== $1 ==\nSzeretnék neki blokkot: {{user|$1}}. $2 '+XLinkS+sig,
I: {
'page': 'Wikipédia:Adminisztrátorok üzenőfala',
'regex': '==\\s*$1\\s*==',
'regeX': '|{{\\s*non\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '== $1 ==\nSzeretnék neki blokkot: {{anon|$1}}. $2 '+XLinkS+sig,
}
},
'idwiki': {
'page': 'Wikipedia:Intervensi pengurus terhadap vandalisme',
'regex': '$1 }}',
'rtext': '== ] ==\n* {{vandal-m|$1}} $2 '+XLinkS+sig
},
'iswiki': {}, //
'itwiki': {
'page': 'Wikipedia:Vandalismi in corso',
'regex': '{{\\s*andalo\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '{{vandalo|$1}} $2 '+XLinkS+sig
},
'jawiki': {}, // 'page': 'Wikipedia:管理者伝言板/投稿ブロック'
'kawiki': {}, //
'kowiki': {
'page': '위키백과:사용자 관리 요청/2024년 제32주',
'regex': '{{\\s*사링\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '== $1 ==\n* {{사링|$1}}\n$2 '+XLinkS+sig
},
'ltwiki': {
'page': 'Vikipedija:Pranešimai apie pažeidimus',
// REGEX FEHLT
'rtext': '== ] ==\nReport concerning ]: $2 '+XLinkS+sig,
},
'lvwiki': {
'page': 'Vikipēdija:Administratoru ziņojumu dēlis',
'regex': '{{\\s*ser\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '== Report concerning $1 ==\n{{User|$1}} $2 '+XLinkS+sig,
},
'metawiki': {
'page': 'Meta:Requests for help from a sysop or bureaucrat',
'regex': '==\\s*Report concerning User:$1\\s*==',
'regeX': '|{{\\s*andal\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '== Report concerning User:$1 ==\n{{vandal|1=$1}} — \'\'\'Reasons:\'\'\' $2 '+XLinkS+sig
},
'mkwiki': {}, //
'mlwiki': {}, //
'mrwiki': {}, //
'mswiki': {}, // 'page': 'Wikipedia:Campur tangan penyelia terhadap vandalisme'
'nlwiki': {
'page': 'Wikipedia:Verzoekpagina voor moderatoren/RegBlok',
'section': 2,
'regex': '===\\s*$1\\s*===',
'regeX': '|{{\\s*g\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '=== $1 ===\n*{{lg|$1}} $2 '+XLinkS+sig,
'I': {
'page': 'Wikipedia:Verzoekpagina voor moderatoren/IPBlok',
'section': 2,
'regex': '{{\\s*g\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '*{{lg|$1}} $2 '+XLinkS+sig
},
'P': {
'page': 'Wikipedia:Verzoekpagina voor moderatoren/Beveiligen',
'section': 1,
'regex': '\\s*$1\\s*',
'rtext': '== ] ==\n$2 '+XLinkS+sig
},
},
'nlwiktionary': {}, //
'nnwiki': {}, //
'nowiki': {}, // 'page': 'Wikipedia:Pågående vandalisme'
'plwiki': {
'page': 'Wikipedia:Prośby do administratorów',
'regex': '==\\s*Zgłoszenie w sprawie użytkownika $1\\s*==',
'regeX': '|{{\\s*w\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '== Zgłoszenie w sprawie użytkownika $1 ==\n\n* {{lw|$1}}\n\n$2\n\nZgłasza: '+XLinkS+sig
},
'plwikimedia': {}, //
'plwikisource': {}, //
'plwiktionary': {}, //
'ptwiki': {}, // 'page': 'Wikipédia:Pedidos/Notificações de vandalismo'
'rowiki': {}, //
'ruwiki': {}, // 'page': 'Википедия:Запросы к администраторам/Быстрые'
'sewikimedia': {}, //
'simplewiki': {
'page': 'Wikipedia:Vandalism in progress',
'regex': '{{\\s*andal\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '*{{Vandal|$1}} – $2 '+XLinkS+sig,
I: {
'page': 'Wikipedia:Vandalism in progress',
'regex': '{{\\s*andal\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '*{{IPvandal|$1}} – $2 '+XLinkS+sig,
}
},
'skwiki': {
'page': 'Wikipédia:Nástenka správcov',
'regex': '==\\s*Hlásení vandalizmu: $1\\s*==',
'regeX': '|{{\\s*edaktor\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '== Hlásení vandalizmu: $1 ==\n{{Redaktor|$1}}\n\n$2 '+XLinkS+sig
},
'slwiki': {
'page': 'Wikipedija:Prošnje za administratorsko pomoč',
'regex': '==\\s*Report concerning User:$1\\s*==',
'regeX': '|{{\\s*ser\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '== User:$1 ==\n{{User|$1}} $2 '+XLinkS+sig
},
'sourceswiki': {
'page': 'Wikisource:Vandalism in progress',
'regex': '==\\s*$1\\s*==',
'regeX': '|{{\\s*ser\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'section': '0',
'rtext': '== $1 ==\n* {{User|$1}}\n$2 '+XLinkS+sig
},
'specieswiki': {
'page': 'Wikispecies:Administrators\' Noticeboard',
'regex': '==\\s*Report concerning ]\\s*==',
'regeX': '|{{\\s*ser\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '== Report concerning ] ==\n\n* {{user|$1}}\n$2 '+XLinkS+sig
},
'srwiki': {}, // 'page': 'Википедија:Пријаве вандализама'
'svwiki': {}, // 'page': 'Wikipedia:Begäran om åtgärder'
'svwiktionary': {}, //
'tawiki': {}, //
'test2wiki': {
'page': 'User:TenWhile6/X',
'regex': '==\\s*Report concerning User:$1\\s*==',
'rtext': '== Report concerning User:$1 ==\n* ] – $2 '+XLinkS+sig,
P: {
'page': 'User:TenWhile6/X',
'regex': '==\\s*Report concerning Page $1\\s*==',
'rtext': '== Report concerning Page $1 ==\n* ] – $2 '+XLinkS+sig
}
},
'tewiki': {}, //
'thwiki': {
'page': 'วิกิพีเดีย:รายชื่อการก่อกวน',
// REGEX FEHLT
'rtext': '* {{ก่อกวน|$1}} $2. '+XLinkS+sig,
},
'tlwiki': {}, //
'trwiki': {}, // 'page': 'Vikipedi:Kullanıcı engelleme talepleri'
'urwiki': {
'page': 'ویکیپیڈیا:دیوان_خاص',
'regex': '==\\s*User:$1\\s*==',
'rtext': '== ] پر پابندئی لگائیں ==\n* {{user|$1}} $2 '+XLinkS+sig,
},
'viwiki': {}, // 'page': 'Wikipedia:Tin nhắn cho bảo quản viên'
'wikidatawiki': {
'page': 'Wikidata:Administrators\' noticeboard',
'regex': '==\\s*Report concerning User:$1\\s*==',
'regeX': '|{{\\s*andal\\s*\\|\\s*(1(\\s*)=|)\\s*$1\\s*}}',
'rtext': '{{subst:VandalReport|$1|$2 '+XLinkS+'}}',
P: {
'page': 'Wikidata:Administrators\' noticeboard',
'rtext': '== Protection request for ] ==\n\nPlease semi-protect ]. \'\'\'Reason:\'\'\' $2 '+XLinkS+sig,
}
},
'zh_yuewiki': {}, //
'zhwiki': {}, // 'page': 'Wikipedia:当前的破坏'
};
function DBdata(modus, status, key) {
DBx = modus === true ? 'SRG' : DB;
DBx = modus === 'GSR' ? 'GSR' : DBx;
if (status === 'I') {
if ('I' in WikiData) {
if (WikiData) {
return WikiData;
} else {
if (.includes(key)) {
return '';
}
else {
mw.notify(`1. Error: DBdata() at ${DBx} status ${status} key ${key}`,{'type':'error','title':XReport});
}
}
}
else {
status = 'U';
}
}
if (status === 'U') {
if (WikiData) {
return WikiData;
}
else {
if (key == 'reason') {
return ;
}
else if (.includes(key)) {
return '';
}
else {
mw.notify(`2. Error: DBdata() at ${DBx} status ${status} in ${key}`,{'type':'error','title':XReport});
}
}
}
else if (status === 'P' && WikiData) {
return WikiData;
}
else if (status === 'P' && .includes(key)) {
return '';
}
else if (status === 'H') {
if (WikiData) {
return WikiData;
}
else {
if (.includes(key)) {
return '';
}
}
}
else {
mw.notify(`3. Error: DBdata() at ${DBx} status ${status} in ${key}`,{'type':'error','title':XReport});
}
}
( function() {
function getUserDialog(){
var style = '.XR-page-buttons{width: 100%; text-align: right}' + '.XR-intro-text{font-size: 80%; margin-bottom: 1em;}' + '.XR-errors{color: red; margin: 1em;}';
mw.util.addCSS(style);
function CreateUserDialog(config){
CreateUserDialog.parent.call(this, config);
}
OO.inheritClass(CreateUserDialog, OO.ui.ProcessDialog);
CreateUserDialog.static.name = 'CreateUserDialog';
CreateUserDialog.static.title = XReport;
CreateUserDialog.prototype.initialize = function() {
var self = this;
CreateUserDialog.parent.prototype.initialize.call( this);
var $introText = $( '<div />',{class: 'XR-intro-text'})
.append( $( '<p/>').append(mwh));
var $errorsField = $( '<div />',{class: 'XR-errors'});
var $doneField = $( '<div />',{class: 'done'});
const clearError = function() {
$errorsField.text( '');
self.updateSize();
};
this.curPageID = 'page-1';
var GSR = false;
if (!(DB in WikiData)){
GSR = true;
}
else {
if (!('page' in WikiData)) {
$introText.append( $( '<span>')
.text('This wiki is currently not enabled for local reporting, it will be added soon.'));
}
}
var typeInput = new OO.ui.ButtonSelectWidget({
items: [
new OO.ui.ButtonOptionWidget({data: GSR ? 'GSR' : false, label: GSR ? 'GS/R' : trnslt('local-button'), disabled: GSR ? false : ('page' in WikiData ? false : true), icon: GSR ? undefined : 'home'}).on('click', function() {hideInput.setDisabled(true);hideInput.setSelected(false);localReasonCheckboxes.toggle(true);globalReasonCheckboxes.toggle(false);self.updateSize();}),
new OO.ui.ButtonOptionWidget({data: true, label: trnslt('global-button')}).on('click', function() {hideInput.setDisabled(false);localReasonCheckboxes.toggle(false);globalReasonCheckboxes.toggle(true);self.updateSize();})
]
});
typeInput.selectItemByLabel(GSR ? 'GS/R' : ('page' in WikiData ? trnslt('local-button') : trnslt('global-button')));
//var usernameInput = new OO.ui.TextInputWidget({align: 'top', required: true, validate: 'non-empty', value:RelevantUserName});
var usernameInput = new mw.widgets.UserInputWidget({align: 'top', required: true, validate: 'non-empty', value:RelevantUserName});
var hideInput = new OO.ui.CheckboxInputWidget({align: 'top', disabled: GSR ? true : ('page' in WikiData ? true : false), selected: false});
var hideInputField = new OO.ui.FieldLayout(hideInput,{label: trnslt('hide-username'), align: 'inline'});
var reasonInput = new OO.ui.MultilineTextInputWidget({align: 'top', placeholder: lang === 'de' ? 'Benutzerdefinierte Begründung (optional)' : '', /*required: true,*/ rows: 3, autosize: true});
var localReportReasons = DBdata(GSR ? 'GSR' : false, 'U', 'reason');
var localCheckboxes = ;
var localCheckboxesEach = ;
for (var Lxxx in localReportReasons) {
localCheckboxesEach.push(new OO.ui.CheckboxInputWidget({align: 'top', selected: false}));
}
for (var Lrrr in localCheckboxesEach){
localCheckboxes.push(new OO.ui.FieldLayout(localCheckboxesEach,{label: localReportReasons, align: 'inline'}));
}
localReasonCheckboxes = new OO.ui.FieldLayout(new OO.ui.Widget({content: }),{label: trnslt('reason')});
var globalReportReasons = DBdata(true, 'U', 'reason');
var globalCheckboxes = ;
var globalCheckboxesEach = ;
for (var Gxxx in globalReportReasons) {
globalCheckboxesEach.push(new OO.ui.CheckboxInputWidget({align: 'top', selected: false}));
}
for (var Grrr in globalCheckboxesEach){
globalCheckboxes.push(new OO.ui.FieldLayout(globalCheckboxesEach,{label: globalReportReasons, align: 'inline'}));
}
globalReasonCheckboxes = new OO.ui.FieldLayout(new OO.ui.Widget({content: }),{label: trnslt('reason')});
var page1Buttons = new OO.ui.HorizontalLayout({
items: [
new OO.ui.ButtonWidget({label: trnslt('close'), align: 'left' , icon:'close'}).on( 'click', function() {
self.close();
clearError();
}),
new OO.ui.ButtonWidget({label: trnslt('button'), flags: ,icon: 'feedback'}).on( 'click', function() {
var username = usernameInput.getValue();
if (!username){
$errorsField.text (trnslt('error-user'));
self.updateSize();
return;
}
var reason = reasonInput.getValue();
var modus = typeInput.findSelectedItem().getData();
var hidden = hideInput.isSelected();
var xapi = modus ? metaapi : (modus === 'GSR' ? metaapi : api);
var statusX = mw.util.isIPAddress(username, true) ? 'I' : 'U';
var status = statusX === 'U' ? (hidden ? 'H' : 'U') : statusX;
var regex = DBdata(modus, status, 'regex').replace('$1', username) + DBdata(modus, status, 'regeX').replace('$1', username);
xapi.get({
action: 'query',
prop: 'revisions',
formatversion: 2,
rvprop: 'content',
rvslots: 'main',
rvlimit: 1,
titles: DBdata(modus, status, 'page'),
}).then(function(data){
if (data.error){
mw.notify(`Error: reportuser() at ${DB}, action: api.get`,{'type':'error','title':XReport,autoHide: false});
return;
}
else if (data.query.pages.revisions == undefined){
mw.notify(`Error: reportuser() at ${DB}, action: api.get, error: undefined`,{'type':'error','title':XReport,autoHide: false});
return;
}
else if (data.query.pages.revisions.slots.main.content.match(new RegExp(regex,'g')) !== null && regex !== ''){
$errorsField.text (trnslt('error-requested'));
self.updateSize();
return;
}
var finalReason = '';
var rReasons = modus ? globalReportReasons : localReportReasons;
var cEach = modus ? globalCheckboxesEach : localCheckboxesEach;
for (let i = 0;i<(rReasons).length;i++) {
if (cEach.isSelected()) {
if (finalReason != '') {
finalReason = finalReason + ', ';
}
finalReason = finalReason + rReasons;
}
}
if (reason) {
if (finalReason != '') {
finalReason = finalReason + '. ';
}
finalReason = finalReason + reason;
}
if (finalReason === ''){
$errorsField.text (trnslt('error-reason'));
self.updateSize();
return;
}
else {
clearError();
self.switchTo('page-2');
$doneField.append($( '<span>')
.text(trnslt('process'))
.prop('style', 'position:relative; top:0.35em; color: black; font-weight: bold')
);
self.updateSize();
closeButton.setDisabled(true);
var success = function() {
$doneField.append( $( '<span>')
.text(trnslt('success'))
.prop('style', 'position:relative; left:1.5em; top:0.35em; color: #009000; font-weight: bold'));
closeButton.setDisabled(false);
timeout = function() {
window.location.reload();
self.close();
};
setTimeout(timeout, 5000);
};
finalReason = finalReason.replace( /(.*)--~~~~/g, '$1');
finalReason = finalReason.replace( /(.*)~~~~/g, '$1');
if (finalReason.charAt(0) === ''){
finalReason = finalReason.substr(1);
}
uSummary = DBdata(modus, status, 'summary') !== '' ? DBdata(modus, status, 'summary') : uSummary;
uSummary = uSummary.replace('$1', username).replace('$1', username);
var importrptext = DBdata(modus, status, 'rtext');
var reporttext = (importrptext.charAt(0) === '*' ? '\n' : '\n\n')+importrptext.replace('$1', username).replace('$1', username).replace('$1', username).replace('$1', username).replace('$1', username).replace('$1', username).replace('$2', finalReason).replace('$3', `${iwPrefix}:`).replace('9$', username);
if (DBdata(modus, status, 'section')){
xapi.get({
action: 'parse',
page: DBdata(modus, status, 'page'),
prop: 'sections'
}).done( function(response){
const sections = response.parse.sections.length;
sectionnum = DBdata(modus, status, 'section');
if (sectionnum === -1){
sectionnum = sections - 1;
}
xapi.get({
action: 'parse',
page: DBdata(modus, status, 'page'),
prop: 'wikitext',
section: sectionnum
}).done( function(result){
var wikitext = result.parse.wikitext + reporttext;
xapi.postWithEditToken({
action: 'edit',
title: DBdata(modus, status, 'page'),
section: sectionnum,
text: wikitext,
summary: uSummary,
notminor: true,
nocreate: true
}).then(function(data) {
if (data.error && data.error.info){
mw.notify(`Error: XReportUser at ${DB}, action: postWithEditToken`,{'type':'error','title':XReport,autoHide: false});
} else{
success();
}
});
});
});
}
else{
xapi.postWithEditToken({
action: 'edit',
title: DBdata(modus, status, 'page'),
watchlist: 'nochange',
summary: uSummary,
appendtext: reporttext,
})
.then(function(data){
if (data.error && data.error.info){
mw.notify(`Error: XReportUser at ${DB}, action: postWithEditToken`,{'type':'error','title':XReport,autoHide: false});
} else{
success();
}
});
}
}
});
self.updateSize();
})
],
classes:
});
var page1Form = new OO.ui.FieldsetLayout({
items: [
new OO.ui.FieldLayout(typeInput,{label: trnslt('type')}),
new OO.ui.FieldLayout(
new OO.ui.Widget({
content: [
new OO.ui.FieldsetLayout({
content: [
usernameInput,
hideInputField,
]
})
]
}),{
label: trnslt('username')
}),
globalReasonCheckboxes,
localReasonCheckboxes,
new OO.ui.FieldLayout(reasonInput,{label: `Manuelle ${trnslt('reason')}`}),
new OO.ui.FieldLayout(new OO.ui.Widget({content: }),{align: 'top'})
]
});
var closeButton = new OO.ui.ButtonWidget({label: trnslt('close'), flags: , icon:'close'}).on( 'click', function() {
window.location.reload();
self.close();
});
var page2Buttons = new OO.ui.HorizontalLayout({
items: ,
classes:
});
var page2Form = new OO.ui.FieldsetLayout({
items: [
new OO.ui.FieldLayout( new OO.ui.Widget({content: }),{align: 'top'})
]
});
this.panelLayout = new OO.ui.PanelLayout({padded: true, expanded: false});
this.panelLayout.$element.append(
$introText,
$errorsField,
$doneField,
$('<div />',{id: 'page-1'}).append( page1Form.$element),
$('<div />',{id: 'page-2' , style: 'display:none'}).append( page2Form.$element)
);
this.$body.append( this.panelLayout.$element);
};
CreateUserDialog.prototype.getBodyHeight = function() {
return this.panelLayout.$element.outerHeight( true);
};
CreateUserDialog.prototype.switchTo = function(nextPageID){
$( '#' + this.curPageID).hide();
this.curPageID = nextPageID;
$( '#' + nextPageID).show();
this.updateSize();
};
return new CreateUserDialog({
size: 'medium'
});
}
var dialog, windowManager;
function openUserDialog(){
if (!dialog){
dialog = getUserDialog();
windowManager = new OO.ui.WindowManager();
$('body').append(windowManager.$element);
windowManager.addWindows();
localReasonCheckboxes.toggle(true);
globalReasonCheckboxes.toggle(false);
}
windowManager.openWindow(dialog);
}
var portletLink = mw.util.addPortletLink(
blocation,
'#',
trnslt('title'),
'ca-reportuser',
trnslt('description'),
null,
'#ca-reportuser'
);
$(portletLink).click(function(e) {
e.preventDefault();
openUserDialog();
});
mw.loader.using();
})();
if ('P' in WikiData){
( function() {
function getPageDialog() {
var style = '.XR-page-buttons{width: 100%; text-align: right}' + '.XR-intro-text{font-size: 80%; margin-bottom: 1em;}' + '.XR-errors{color: red; margin: 1em;}';
mw.util.addCSS(style);
function CreatePageDialog(config){
CreatePageDialog.parent.call(this, config);
}
OO.inheritClass(CreatePageDialog, OO.ui.ProcessDialog);
CreatePageDialog.static.name = 'CreatePageDialog';
CreatePageDialog.static.title = XReport;
CreatePageDialog.prototype.initialize = function() {
var self = this;
CreatePageDialog.parent.prototype.initialize.call( this);
var $introText = $( '<div />',{class: 'XR-intro-text'})
.append( $( '<p/>').append(mwh));
var $errorsField = $( '<div />',{class: 'XR-errors'});
var $doneField = $( '<div />',{class: 'done'});
const clearError = function() {
$errorsField.text( '');
self.updateSize();
};
this.curPageID = 'page-1';
var pagenameInput = new OO.ui.TextInputWidget({align: 'top', required: true, validate: 'non-empty', value:RelevantPageName});
var reasonInput = new OO.ui.MultilineTextInputWidget({align: 'top', required: true, rows: 3, autosize: true});
var page1Buttons = new OO.ui.HorizontalLayout({
items: [
new OO.ui.ButtonWidget({label: trnslt('close'), align: 'left', icon:'close'}).on( 'click', function() {
self.close();
clearError();
}),
new OO.ui.ButtonWidget({label: trnslt('button'), flags: ,icon: 'feedback'}).on( 'click', function() {
var pagename = pagenameInput.getValue();
if (!pagename){
$errorsField.text (trnslt('error-page'));
self.updateSize();
return;
}
var reason = reasonInput.getValue();
if (!reason){
$errorsField.text (trnslt('error-reason'));
self.updateSize();
return;
}
var modus = false;
var xapi = modus ? metaapi : api;
var status = 'P';
var Vregex = DBdata(modus, status, 'regex').replace('$1', pagename) + DBdata(modus, status, 'regeX').replace('$1', pagename);
xapi.get({
action: 'query',
prop: 'revisions',
formatversion: 2,
rvprop: 'content',
rvslots: 'main',
rvlimit: 1,
titles: DBdata(modus, status, 'page'),
})
.then(function(data){
if (data.error){
mw.notify(`Error: reportpage() at ${DB}, action: api.get`,{'type':'error','title':XReport,autoHide: false});
return;
}
else if (data.query.pages.revisions == undefined){
mw.notify(`Error: reportpage() at ${DB}, action: api.get, error: undefined`,{'type':'error','title':XReport,autoHide: false});
return;
}
if ( data.query.pages.revisions.slots.main.content.match( new RegExp( Vregex, 'g')) !== null && Vregex !== ''){
$errorsField.text (trnslt('error-requested'));
self.updateSize();
return;
}
else if (pagename.startsWith('Spezial:') || pagename.startsWith('Special:')){
$errorsField.text (trnslt('error-specialpage'));
self.updateSize();
return;
}
else {
clearError();
self.switchTo('page-2');
$doneField.append($( '<span>')
.text(trnslt('process'))
.prop('style', 'position:relative; top:0.35em; color: black; font-weight: bold')
);
self.updateSize();
closeButton.setDisabled(true);
var success = function() {
$doneField.append( $( '<span>')
.text(trnslt('success'))
.prop('style', 'position:relative; left:1.5em; top:0.35em; color: #009000; font-weight: bold'));
closeButton.setDisabled(false);
timeout = function() {
window.location.reload();
self.close();
};
setTimeout(timeout, 5000);
};
reason = reason.replace( /(.*)--~~~~/g, '$1');
reason = reason.replace( /(.*)~~~~/g, '$1');
if (reason.charAt(0) === ''){
reason = reason.substr(1);
}
pagename = pagename.replace(/_/g, ' ');
pSummary = DBdata(modus, status, 'summary') !== '' ? DBdata(modus, status, 'summary').replace('$1', pagename) : pSummary.replace('$1', pagename);
var reporttext = '\n'+DBdata(modus, status, 'rtext').replace('$1', pagename).replace('$1', pagename).replace('$2', reason);
if ('section' in WikiData){
api.get({
action: 'parse',
page: DBdata(modus, status, 'page'),
prop: 'wikitext',
section: DBdata(modus, status, 'section')
}).done( function(result){
var wikitext = result.parse.wikitext + reporttext;
api.postWithEditToken({
action: 'edit',
title: DBdata(modus, status, 'page'),
section: DBdata(modus, status, 'section'),
text: wikitext,
summary: pSummary,
notminor: true,
nocreate: true
}).then(function(data){
if (data.error && data.error.info){
mw.notify(`Error: XReportPage at ${DB}, action: postWithEditToken`,{'type':'error','title':XReport,autoHide: false});
} else{
success();
}
});
});
}
else {
api.postWithEditToken({
action: 'edit',
title: DBdata(modus, status, 'page'),
watchlist: 'nochange',
summary: pSummary,
appendtext: reporttext,
})
.then(function(data){
if (data.error && data.error.info){
mw.notify(`Error: XReportPage at ${DB}, action: postWithEditToken`,{'type':'error','title':XReport,autoHide: false});
} else{
success();
}
});
self.updateSize();
}
}
});
})
],
classes:
});
var page1Form = new OO.ui.FieldsetLayout({
items: [
new OO.ui.FieldLayout(
new OO.ui.Widget({
content: [
new OO.ui.FieldsetLayout({
content: [
pagenameInput,
]
})
]
}),{
label: trnslt('pagename')
}),
new OO.ui.FieldLayout(reasonInput,{label: trnslt('reason')}),
new OO.ui.FieldLayout(new OO.ui.Widget({content: }),{align: 'top'})
]
});
var closeButton = new OO.ui.ButtonWidget({label: trnslt('close'), flags: , icon:'close'}).on( 'click', function() {
window.location.reload();
self.close();
});
var page2Buttons = new OO.ui.HorizontalLayout({
items: ,
classes:
});
var page2Form = new OO.ui.FieldsetLayout({
items: [
new OO.ui.FieldLayout( new OO.ui.Widget({content: }),{align: 'top'})
]
});
this.panelLayout = new OO.ui.PanelLayout({padded: true, expanded: false});
this.panelLayout.$element.append(
$introText,
$errorsField,
$doneField,
$('<div />',{id: 'page-1'}).append( page1Form.$element),
$('<div />',{id: 'page-2' , style: 'display:none'}).append( page2Form.$element)
);
this.$body.append( this.panelLayout.$element);
};
CreatePageDialog.prototype.getBodyHeight = function() {
return this.panelLayout.$element.outerHeight( true);
};
CreatePageDialog.prototype.switchTo = function(nextPageID){
$( '#' + this.curPageID).hide();
this.curPageID = nextPageID;
$( '#' + nextPageID).show();
this.updateSize();
};
return new CreatePageDialog({
size: 'medium'
});
}
var dialog, windowManager;
function openPageDialog(){
if (!dialog){
dialog = getPageDialog();
windowManager = new OO.ui.WindowManager();
$('body').append(windowManager.$element);
windowManager.addWindows();
}
windowManager.openWindow(dialog);
}
var portletLink = mw.util.addPortletLink(
blocation,
'#',
trnslt('Ptitle'),
'ca-reportpage',
trnslt('Pdescription'),
null,
'#ca-reportpage'
);
$(portletLink).click(function(e){
e.preventDefault();
openPageDialog();
});
mw.loader.using();
})();
}
if (.includes(DB) && (mw.config.get('wgNamespaceNumber') >= 0 || mw.config.get('wgArticleId'))){
( function() {
function getQDDialog(){
var style = '.XR-page-buttons{width: 100%; text-align: right}' + '.XR-intro-text{font-size: 80%; margin-bottom: 1em;}' + '.XR-errors{color: red; margin: 1em;}';
mw.util.addCSS(style);
function CreateQDDialog(config){
CreateQDDialog.parent.call(this, config);
}
OO.inheritClass(CreateQDDialog, OO.ui.ProcessDialog);
CreateQDDialog.static.name = 'CreateQDDialog';
CreateQDDialog.static.title = XReport;
CreateQDDialog.prototype.initialize = function() {
var self = this;
CreateQDDialog.parent.prototype.initialize.call( this);
var $introText = $( '<div />',{class: 'XR-intro-text'})
.append( $( '<p/>').append(mwh));
var $errorsField = $( '<div />',{class: 'XR-errors'});
var $doneField = $( '<div />',{class: 'done'});
const clearError = function() {
$errorsField.text( '');
self.updateSize();
};
this.curPageID = 'page-1';
var GSR = DB in WikiData;
var deleteReasons = ;
if (DB == 'metawiki') {
deleteReasons = ;
}
var checkboxes = ;
var checkboxesEach = ;
var gsrCheck = new OO.ui.CheckboxInputWidget({align: 'top', selected: false});
var gsrInput = GSR ? new OO.ui.FieldLayout(new OO.ui.Widget({content: })]}),{label: 'This is a global sysop wiki.'}) : '';
for (var xxx in deleteReasons) {
checkboxesEach.push(new OO.ui.CheckboxInputWidget({align: 'top', selected: false}));
}
for (var rrr in checkboxesEach){
checkboxes.push(new OO.ui.FieldLayout(checkboxesEach,{label: deleteReasons, align: 'inline'}));
}
var QDreasonInput = new OO.ui.MultilineTextInputWidget({align: 'top', placeholder: lang === 'de' ? 'Benutzerdefinierte Begründung (optional)' : '', rows: 1, autosize: true});
var page1Buttons = new OO.ui.HorizontalLayout({
items: [
new OO.ui.ButtonWidget({label: trnslt('close'), align: 'left' , icon:'close'}).on( 'click', function() {
self.close();
clearError();
}),
new OO.ui.ButtonWidget({label: trnslt('SDtitle'), flags: ,icon: 'feedback'}).on( 'click', function() {
var finalReason = '';
for (let i = 0;i<deleteReasons.length;i++) {
if (checkboxesEach.isSelected()) {
if (finalReason != '') {
finalReason = finalReason + ', ';
}
finalReason = finalReason + deleteReasons;
}
}
var manualReason = QDreasonInput.getValue();
if (manualReason) {
if (finalReason != '') {
finalReason = finalReason + '. ';
}
finalReason = finalReason + manualReason;
}
if (finalReason === ''){
$errorsField.text (trnslt('error-reason'));
self.updateSize();
return;
}
//var gsr = gsrCheck.isSelected();
var xapi = /*modus ? metaapi : */api;
var regex = '{{|{{öschen';
xapi.get({
action: 'query',
prop: 'revisions',
formatversion: 2,
rvprop: 'content',
rvslots: 'main',
rvlimit: 1,
titles: curPageName,
}).then(function(data) {
if (data.error) {
mw.notify(`Error: quickdeletion() at ${DB}, action: api.get`,{'type':'error','title':XReport,autoHide: false});
return;
}
else if (data.query.pages.revisions == undefined){
mw.notify(`Error: quickdeletion() at ${DB}, action: api.get, error: undefined`,{'type':'error','title':XReport,autoHide: false});
return;
}
else if (data.query.pages.revisions.slots.main.content.match(new RegExp(regex,'g')) !== null && regex !== ''){
$errorsField.text(trnslt('error-SDrequested'));
self.updateSize();
return;
}
else{
clearError();
self.switchTo('page-2');
$doneField.append($( '<span>')
.text(trnslt('SDprocess'))
.prop('style', 'position:relative; top:0.35em; color: black; font-weight: bold')
);
self.updateSize();
closeButton.setDisabled(true);
var success = function() {
$doneField.append( $( '<span>')
.text(trnslt('success'))
.prop('style', 'position:relative; left:1.5em; top:0.35em; color: #009000; font-weight: bold'));
closeButton.setDisabled(false);
timeout = function() {
window.location.reload();
self.close();
};
setTimeout(timeout, 5000);
};
finalReason = finalReason.replace( /(.*)--~~~~/g, '$1');
finalReason = finalReason.replace( /(.*)~~~~/g, '$1');
if (finalReason.charAt(0) === ''){
finalReason = finalReason.substr(1);
}
xapi.get({
action: 'parse',
page: curPageName,
prop: 'wikitext'
}).done( function(result) {
var wikitext = `<noinclude>{{SLA|${finalReason} <small>]</small> --~~~~}}</noinclude>\n`+result.parse.wikitext;
if (DB == 'metawiki') {
wikitext = `<noinclude>{{delete|${finalReason} <small>]</small>}}</noinclude>\n`+result.parse.wikitext;
}
xapi.postWithEditToken({
action: 'edit',
title: curPageName,
text: wikitext,
summary: '+SLA (] '+ Xv+')',
notminor: true,
nocreate: true
}).then(function(data){
if (data.error && data.error.info){
mw.notify(`Error: XReportQD at ${DB}, action: postWithEditToken`,{'type':'error','title':XReport,autoHide: false});
} else {
success();
}
});
});
}
});
self.updateSize();
})
],
classes:
});
var page1Form = new OO.ui.FieldsetLayout({
items: [
/*gsrInput,*/
new OO.ui.FieldLayout(new OO.ui.Widget({content: }),{label: trnslt('reason')}),
new OO.ui.FieldLayout(QDreasonInput,{label: trnslt('c-reason')}),
new OO.ui.FieldLayout(new OO.ui.Widget({content: }),{align: 'top'})
]
});
var closeButton = new OO.ui.ButtonWidget({label: trnslt('close'), flags: , icon:'close'}).on( 'click', function() {
window.location.reload();
self.close();
});
var page2Buttons = new OO.ui.HorizontalLayout({
items: ,
classes:
});
var page2Form = new OO.ui.FieldsetLayout({
items: [
new OO.ui.FieldLayout( new OO.ui.Widget({content: }),{align: 'top'})
]
});
this.panelLayout = new OO.ui.PanelLayout({padded: true, expanded: false});
this.panelLayout.$element.append(
$introText,
$errorsField,
$doneField,
$('<div />',{id: 'page-1'}).append( page1Form.$element),
$('<div />',{id: 'page-2' , style: 'display:none'}).append( page2Form.$element)
);
this.$body.append( this.panelLayout.$element);
};
CreateQDDialog.prototype.getBodyHeight = function() {
return this.panelLayout.$element.outerHeight( true);
};
CreateQDDialog.prototype.switchTo = function(nextPageID){
$( '#' + this.curPageID).hide();
this.curPageID = nextPageID;
$( '#' + nextPageID).show();
this.updateSize();
};
return new CreateQDDialog({
size: 'medium'
});
}
var dialog, windowManager;
function openQDDialog(){
if (!dialog){
dialog = getQDDialog();
windowManager = new OO.ui.WindowManager();
$('body').append(windowManager.$element);
windowManager.addWindows();
}
windowManager.openWindow(dialog);
}
var portletLink = mw.util.addPortletLink(
blocation,
'#',
trnslt('SDtitle'),
'ca-quickdeletion',
trnslt('SDdescription'),
null,
'#ca-quickdeletion'
);
$(portletLink).click(function(e){
e.preventDefault();
openQDDialog();
});
mw.loader.using();
})();
}
});
//</nowiki>