Utilisateur:Spartan.arbinger/common.js
Note : après avoir enregistré la page, vous devrez forcer le rechargement complet du cache de votre navigateur pour voir les changements.
Mozilla / Firefox / Konqueror / Safari : maintenez la touche Majuscule (Shift) en cliquant sur le bouton Actualiser (Reload) ou pressez Maj-Ctrl-R (Cmd-R sur Apple Mac) ;
Firefox (sur GNU/Linux) / Chrome / Internet Explorer / Opera : maintenez la touche Ctrl en cliquant sur le bouton Actualiser ou pressez Ctrl-F5.importScript('User:LD/nsLinkSearch.js')
mw.loader.load('//test.wikipedia.org/w/index.php?title=User:Laerdon/ConvoWizard.js&action=raw&ctype=text/javascript');
var NewMessage_PagesASurveiller = new Array();
NewMessage_PagesASurveiller.push("Wikipédia:Demande d'intervention sur un message système");
function loadModule( src ) {
var e = document.createElement( 'script' );
e.setAttribute( 'type', 'module' );
e.setAttribute( 'src', src );
document.head.appendChild( e );
}
mw.loader.using( 'mediawiki.util', function () {
$( function ( $ ) {
var now = new Date();
var jourMoisAnnee = now.toLocaleString( 'fr-FR', { day: 'numeric', month: 'long', year: 'numeric' } );
NewMessage_PagesASurveiller.push('Wikipédia:Le Bistro/' + jourMoisAnnee);
mw.util.addPortletLink(
'p-navigation',
mw.util.getUrl( 'Wikipédia:Le Bistro/' + jourMoisAnnee ),
'Bistro du jour',
'n-bistro',
'Accéder à la sous-page des discussions d’aujourd’hui'
);
} );
} );
$(function () {
mw.util.addPortletLink(
"p-tb", // toolbox portlet
"http://ramselehof.de/wikipedia/wikiblame.php?user_lang=en&lang=" + mw.config.get('wgContentLanguage')
+ "&project=wikipedia&article=" + mw.config.get('wgPageName')
+ "&needle=&skipversions=0&ignorefirst=0&limit=500&searchmethod=int&order=desc&user=",
"WikiBlame" // link label
)});
importScript( 'en:User:Headbomb/unreliable.js' );
// Userscript development
importScript('Utilisateur:spartan.arbinger/C-helper-codex-version.js');
importScript('Utilisateur:spartan.arbinger/global.js');
obtenir('AddContribNumberInNewPages');
loadModule('https://xtools.wmcloud.org/pageinfo-gadget.js')
mw.loader.using('mediawiki.util', function () {
mw.loader.load( '//en.wikipedia.org/w/index.php?title=User:Diegodlh/Web2Cit/script.js&action=raw&ctype=text/javascript' );
mw.loader.load("//www.wikidata.org/w/index.php?title=User:Yair rand/WikidataInfo.js&action=raw&ctype=text/javascript");
mw.loader.load('//en.wikipedia.org/w/index.php?title=User:Joeytje50/JWB.js/load.js&action=raw&ctype=text/javascript');
mw.loader.using(['mediawiki.api', 'mediawiki.util']).then(function () {
$(document).ready(function () {
if (mw.config.get('wgAction') !== 'view' || mw.config.get('wgNamespaceNumber') < 0) return;
var api = new mw.Api();
var minCaractèresVisibles = 55;
var sectionsExclues = [
"Références", "Notes et références", "Bibliographie", "Sources",
"Citations", "Références bibliographiques", "Bibliographie et références", "Notes"
];
// Solution 1 : Détection simplifiée des références en utilisant deux regex distinctes
function contientReference(texte) {
// Détecte les balises <ref> et <ref .../>
var regexRefTag = /<ref\b[^>]*>(.*?)<\/ref>|<ref\b[^>]*\/\s*>/gi;
// Détecte certains templates de citation
var regexCitationTemplate = /\{\{\s*(Citation|Réf nécessaire|refnec|référence souhaitée|Article|Brevet|Chapitre|Écouter en ligne|Écrit|Interview|Jugement|Lien conférence|Lien web|Livret album|Loi|Note bande dessinée|Ouvrage|ADB|Ahcdo|Appletons|Archives BAA|Arnold|ASIN|BDUSC|Beckerath|Berliner Adressbuch|BerlinerArchitekturwelt|Bibcode|Bibliographie|Bibliographie bande dessinée|BNF|BVK|Cassini-Ehess|Circulaire UAI|Détail des éditions|Détail édition|Deutsche Biographie|Citation Journal The Times|Cite Appletons|Cite book|Cite DGRBM|Cite DNB|Cite Earth Impact DB|Cite GNIS|Cite isbn|Cite magazine|Cite NIE|Cite ohp|Cite report|Cite wikisource|CODEN|COinS bibliographique|Commentaire biblio|Commentaire biblio SRL|DictSciBiogr|DNB|DNP|Doi|DSB|EAN|EbookRef|Efn|ELP|ERIC|Ethno|Ethnogroupe|Gardiner|Gartenlaube|Glotto|GOSA|Gref|Grimal|HDR|HDR pays|Helck|Identifiants biblio|Intérêt d'un article bibliographique spécifique|ISBN|ISBN à vérifier|ISBN erroné|ISBN rectifié|ISBN souhaité|ISMN|ISSN|ISSN à vérifier|ISSN erroné|Josh|KBR|LCCN|LDLBerlin|Lien arXiv|Lingua|Lire en ligne|Lire sur Wikisource|LThK|LuiseBMS|LuiseLexBez|LuiseLexStr|Marine Corps|Marquage des ouvrages utilisés|MGG2|Module biblio|NDB|Nutall|OberamtWürtt|ÖBL|OCLC|ODNB|OikoFisc|OikoListes|Orc DNML|OstroHEB|Ouvrage arm|OxDByz|Perlentaucher|Légende plume|Plume|Présentation en ligne|RCN|Recherche ASIN|Recherche CODEN|Recherche ISBN|Recherche ISSN|Recherche LCCN|Recherche OCLC|Redford|Ref bande dessinée|Réf CIA WF|Refbegin|Référence Harvard|Référence Harvard sans parenthèses|Référence Wikidata|RGG|RömppOnline|Säbi|Sfn|sfn|Sfn2|Sfnp|SUDOC|Trad|TRE|Trop d'ouvrages|Voir en ligne|ZeitschrBauwesen|ZentralblBauverw|Zooky|Ref-ABCgo|Ref-Adelkhah-ModerneIran|AIA4|AlainRey|Albert HLR|Ref-Allanson-SW|Americana|AmmRes|Ancre d'ouvrage|André|ANF Blanc-Misseron|AnnuaireTogo2002|AntMét|ApoArg|ApoBib|ApoÉpi|Argonautiques orphiques|Arxiv|Arxiv2|Atlas de l'islam radical|Atlas des châteaux forts en France|Atlas des villes et villages fortifiés en France|Atlas-Libération-France|Aufeminin|Ref-Avesta-Razi|Ref Bacon Day Gibson Les Paul Book|Ref Bacon Ultimate Guitar Book|Ref Gang of Four Design Patterns|Baird, 1853|Base Chaillot|BDUSC|Bertall|Bertone 2008|BFR|Livre de la Bible|Livre de la Bible crampon|Réf Bible|RInt Bible|Bible Sefarim|Abréviation livre de la Bible|Chapitre de la Bible|Livre de la Bible sur Wikisource|Bibleverse|Bibliographie sur l'Union européenne|BibliographieDeLance|Bilbo le hobbit|BioBretonne|BIUM|Black and Bolton 2001|Blackburn|BLKO|Blogoff|Bologne|BR-Firefly|BR-Serenity|Bunkai. L'art de décoder les katas|Byzantium and Venice: A Study in Diplomatic and Cultural Relations|Byzantium Confronts the West|California's Geographic Names|Livre Camenzind|Canadian Parliamentary Guide 1994|Carnet d'Aire|Carpenter - Tolkien|Carteret1927|CaseyDublin|CastrilloConstantinople|GEC|Catalogue Arvo Pärt 2009|Caves (2002)|Buffière|Châteaux et enceintes de la France médiévale (Tome 1)|Châteaux et enceintes de la France médiévale (Tome 2)|CheynetClio|Chitwood & Chitwood, 1950|CHOC-3|Christianismes disparus-Ehrman|CicCorr|CicDis|Cite Americana|Cite archive|Cite book|Cite NIE|Citeref|Classé BCIN|Classé BIC|Classé Kulturális Örökség|Classé MH|Classé MN Lux|Classé Nemzeti Örökség|Classé OPCRR|CLI|GIEC AR3|GIEC AR4|CNCD|COCKS-FERET-6|Collection Fondation Dali|CongBio|Contre les élections (Reybrouck)|Cornu|Cours gratuit|CreamThompson|CreamWelch|CtéPer|Cths|CWR|Cytuj książkę|DAGR|Dalloz|Damiano-Appia|Data analysis for politics and policy (Edward R. Tufte)|De l'esprit des lois (Montesquieu)|Dechambre|DEJ|Demmil|Député européen|Député grec|Deutsche Biographie|DicoChineseMedicine|Dictionary of Australian Biography|Dictionnaire Baraquin|Dictionnaire biographique des députés socialistes à la Chambre des Députés|Nouveau Dictionnaire de biographies roussillonnaises|Dictionnaire des châteaux et des fortifications du Moyen Âge en France|Dictionnaire des Pyrénées|Dictionnaire Godin|Dictionnaire historique des juristes français (XIIe-XXe siècle)|Dictionnaire historique des rues de Paris|Dictionnaire mondial de la bande dessinée|Dictionnaire mondial de la BD 2010|Die Provinzen des Osmanischen Reiches|Ref-Digard-Iran20s|Dion Cassius Histoire romaine|Dioscoride|Ref-Diry-Vendôme|Discographie Arvo Pärt 2005|DMAGR2|DMAGR3|Document de référence du Réseau ferré luxembourgeois|Documentation de source|Donato|DSB|Ref Duchossoir Gibson Electrics|Ducourthial|Dum DG|Dum MDSA|DVDBibliographie|EdH|Ehrenberg, 1830|EMedicine|EMedicine2|Emperor Michael Palaeologus and the West|Enciclopedia cat|Encyclopédie berbère|Encyclopédie Treccani|Envisioning Information (Edward R. Tufte)|Espenson-FS|Espenson-SF|Essays on the Latin Orient|Étalonnoir|ÉtiEth|EurLex|Extrait country studies|Extrait vidéo|Faraut|Favier-DFM|Ref-fc|FCR|Ferré - Rivages|FerShâ|Fff1|Fff3|Firefly-AC|Firefly-OC1|Firefly-OC2|Firefly-SF|FishFish|Citation bloc|note|Infobox)\b.*?\}\}/gi;
return regexRefTag.test(texte) || regexCitationTemplate.test(texte);
}
// Retourne le texte visible en supprimant les balises HTML
// et en retirant le contenu situé entre triples apostrophes ('''...''')
function getTexteVisible(texte) {
var div = document.createElement('div');
div.innerHTML = texte;
var resultat = div.textContent || div.innerText || '';
resultat = resultat.replace(/'''[^']+'''/g, '');
return resultat;
}
// Détermine si la ligne représente un fichier, une catégorie ou une image
function estFichier(ligne) {
return ligne.startsWith("[[Fichier:") || ligne.startsWith("[[Image:") || ligne.startsWith("[[Catégorie:") || ligne.startsWith("[[File:");
}
/**
* Traite un paragraphe extrait.
* Si le paragraphe est éligible (longueur visible suffisante et absence de référence),
* on insère "{{Réf nécessaire}}" dans la dernière ligne non vide, juste avant la ponctuation finale.
*/
function traiterParagraphe(paragraphe, indexDebut, lignesOriginales) {
var texteVisible = getTexteVisible(paragraphe);
if (texteVisible.length >= minCaractèresVisibles && !contientReference(paragraphe)) {
var lignesParagraphe = paragraphe.split('\n');
for (var i = lignesParagraphe.length - 1; i >= 0; i--) {
if (lignesParagraphe[i].trim() !== "") {
// Si la ligne se termine par une ponctuation, insère le template juste avant
var modifiée = lignesParagraphe[i].replace(/([.!?:…])$/, '{{Réf nécessaire}}$1');
// Sinon, ajoute un point et le template
if (modifiée === lignesParagraphe[i]) {
modifiée += '{{Réf nécessaire}}.';
}
lignesParagraphe[i] = modifiée;
break;
}
}
return lignesParagraphe.join('\n');
} else {
return paragraphe;
}
}
/**
* Fonction principale pour récupérer le contenu de la page, traiter chaque paragraphe puis enregistrer la modification.
*/
function ajouterRefNecessaire() {
var titre = mw.config.get('wgPageName');
api.get({
action: 'query',
prop: 'revisions',
titles: titre,
rvprop: 'content',
rvslots: 'main',
formatversion: 2
}).done(function (data) {
var page = data.query.pages[0];
if (!page || page.missing) {
mw.notify('Erreur : Impossible de récupérer le contenu de la page.', { type: 'error' });
return;
}
var contenu = page.revisions[0].slots.main.content;
var lignes = contenu.split("\n");
var nouvellesLignes = [];
var bufferParagraphe = [];
var indexBufferDebut = 0;
// Flags de contrôle pour les blocs à exclure
var inTableau = false;
var inModele = false; // flag pour gérer les modèles multi-lignes
var inSectionExclue = false;
var inPremierTexte = true;
var inBoiteDeroulante = false;
var inGallery = false;
var inLegend = false;
var inRef = false;
for (var i = 0; i < lignes.length; i++) {
var ligne = lignes[i];
// Gestion des références longues
if (ligne.includes("<ref")) {
if (bufferParagraphe.length > 0) {
nouvellesLignes.push(traiterParagraphe(bufferParagraphe.join("\n"), indexBufferDebut, lignes));
bufferParagraphe = [];
}
inRef = true;
}
if (inRef) {
nouvellesLignes.push(ligne);
if (ligne.includes("</ref")) {
inRef = false;
}
continue;
}
// Gestion des boîtes déroulantes
if (ligne.includes("{{Boîte déroulante/début")) {
if (bufferParagraphe.length > 0) {
nouvellesLignes.push(traiterParagraphe(bufferParagraphe.join("\n"), indexBufferDebut, lignes));
bufferParagraphe = [];
}
inBoiteDeroulante = true;
}
if (inBoiteDeroulante) {
nouvellesLignes.push(ligne);
if (ligne.includes("{{Boîte déroulante/fin")) {
inBoiteDeroulante = false;
}
continue;
}
// Gestion des galeries
if (ligne.includes("<gallery")) {
if (bufferParagraphe.length > 0) {
nouvellesLignes.push(traiterParagraphe(bufferParagraphe.join("\n"), indexBufferDebut, lignes));
bufferParagraphe = [];
}
inGallery = true;
}
if (inGallery) {
nouvellesLignes.push(ligne);
if (ligne.includes("</gallery")) {
inGallery = false;
}
continue;
}
// Gestion des légendes
if (ligne.includes("{{Légende/Début}}")) {
if (bufferParagraphe.length > 0) {
nouvellesLignes.push(traiterParagraphe(bufferParagraphe.join("\n"), indexBufferDebut, lignes));
bufferParagraphe = [];
}
inLegend = true;
}
if (inLegend) {
nouvellesLignes.push(ligne);
if (ligne.includes("{{Légende/Fin}}")) {
inLegend = false;
}
continue;
}
// Gestion des fichiers/images/catégories
if (estFichier(ligne.trim())) {
if (bufferParagraphe.length > 0) {
nouvellesLignes.push(traiterParagraphe(bufferParagraphe.join("\n"), indexBufferDebut, lignes));
bufferParagraphe = [];
}
nouvellesLignes.push(ligne);
continue;
}
// Gestion des modèles
if (inModele) {
// Si la ligne fait partie du modèle et commence par '|', on la copie directement
if (ligne.trim().startsWith('|')) {
nouvellesLignes.push(ligne);
continue;
}
// Ajoute la ligne et vérifie la fin du modèle
nouvellesLignes.push(ligne);
if (ligne.indexOf('}}') !== -1) {
inModele = false;
}
continue;
}
if (ligne.trim().startsWith('{{')) {
if (ligne.trim().endsWith('}}')) {
nouvellesLignes.push(ligne);
} else {
inModele = true;
nouvellesLignes.push(ligne);
}
continue;
}
// Gestion des tableaux
if (ligne.trim().startsWith("{|")) {
inTableau = true;
}
if (inTableau) {
nouvellesLignes.push(ligne);
if (ligne.trim().startsWith("|}")) {
inTableau = false;
}
continue;
}
// Gestion des listes
if (ligne.trim().startsWith("*") || ligne.trim().startsWith("#") || ligne.trim().startsWith(";")) {
if (bufferParagraphe.length > 0) {
nouvellesLignes.push(traiterParagraphe(bufferParagraphe.join("\n"), indexBufferDebut, lignes));
bufferParagraphe = [];
}
nouvellesLignes.push(ligne);
continue;
}
// Gestion des titres de section
if (ligne.trim().startsWith("==") && ligne.trim().endsWith("==")) {
if (bufferParagraphe.length > 0) {
nouvellesLignes.push(traiterParagraphe(bufferParagraphe.join("\n"), indexBufferDebut, lignes));
bufferParagraphe = [];
}
inPremierTexte = false;
var titreSection = ligne.replace(/==/g, '').trim();
inSectionExclue = sectionsExclues.some(function (motCle) {
return titreSection.indexOf(motCle) !== -1;
});
nouvellesLignes.push(ligne);
continue;
}
// Dans les sections exclues ou dans le premier texte, on ne touche pas au contenu
if (inSectionExclue || inPremierTexte) {
if (bufferParagraphe.length > 0) {
nouvellesLignes.push(traiterParagraphe(bufferParagraphe.join("\n"), indexBufferDebut, lignes));
bufferParagraphe = [];
}
nouvellesLignes.push(ligne);
continue;
}
// Ligne vide : marque la fin d’un paragraphe
if (ligne.trim() === "") {
if (bufferParagraphe.length > 0) {
nouvellesLignes.push(traiterParagraphe(bufferParagraphe.join("\n"), indexBufferDebut, lignes));
bufferParagraphe = [];
}
nouvellesLignes.push(ligne);
continue;
}
// Sinon, on accumule la ligne dans le buffer du paragraphe
if (bufferParagraphe.length === 0) {
indexBufferDebut = i;
}
bufferParagraphe.push(ligne);
}
// Si un paragraphe reste non traité en fin de page
if (bufferParagraphe.length > 0) {
nouvellesLignes.push(traiterParagraphe(bufferParagraphe.join("\n"), indexBufferDebut, lignes));
}
var nouveauContenu = nouvellesLignes.join("\n");
if (nouveauContenu === contenu) {
mw.notify("Aucun paragraphe sans source trouvé.", { type: 'warn' });
return;
}
api.postWithToken('csrf', {
action: 'edit',
title: titre,
text: nouveauContenu,
summary: 'Ajout automatique de {{Réf nécessaire}} aux paragraphes non sourcés',
minor: true,
bot: true
}).done(function () {
mw.notify("Modification enregistrée avec succès !", { type: 'success' });
location.reload();
}).fail(function () {
mw.notify("Erreur lors de la modification de la page.", { type: 'error' });
});
}).fail(function () {
mw.notify("Erreur lors de la récupération du contenu de la page.", { type: 'error' });
});
}
// Ajoute un lien dans la barre d'outils pour lancer la modification
function ajouterLienBarreOutils() {
var $lien = $('<li>')
.addClass('mw-list-item')
.append($('<a>')
.attr('href', '#')
.append($('<span>').text('Références nécessaires'))
.click(function (e) {
e.preventDefault();
if (confirm("Voulez-vous vraiment ajouter {{Réf nécessaire}} à tous les paragraphes sans sources ?")) {
ajouterRefNecessaire();
}
})
);
$('#p-cactions ul').append($lien);
}
ajouterLienBarreOutils();
});
});
var markblocked_contributions = 'Special:Contributions';
mw.loader.load('//en.wikipedia.org/w/index.php?title=MediaWiki:Gadget-markblocked.js&bcache=1&maxage=259200&action=raw&ctype=text/javascript');
importScript('Utilisateur:LD/PV.js')
importScript('Utilisateur:0x010C/script/AppendDatabox.js');
importScript('Utilisateur:0x010C/script/PopupVandalism.js');
//Paramètres de PopupVandalism.js
var PopVand_Mode = "both";
var PopVand_Color = true;
/// OnlineAdmins : https://fr.wikipedia.org/wiki/Utilisateur:Antimuonium/OnlineAdmins.js
// affichage du nombre d'admins en ligne
importScript('Utilisateur:Antimuonium/OnlineAdmins.js');
importScript('Utilisateur:Spartan.arbinger/GlobalManager.js');
importScript('Utilisateur:Spartan.arbinger/vsc.js');
var defautArchiv = 'Archives '+new Date().getFullYear(); // Nom de la sous-page par défaut (donne ici ; PAGE/Archive 2014)
var smartArchiv = false; // INACTIF Utilise par défaut la dernière page d'archive modifiée (true/false)
var autoHeader = true; // Insère automatiquement {{archive de discussion}} sur les nouvelles pages d'archive
var reloadTime = 500; // Temps en millisecondes avant que la page ne se recharge quand l'opération est terminée (0 = immédiatement)
importScript('Utilisateur:NoFWDaddress/OneClickArchiver.js');
importScript('Utilisateur:Antimuonium/ExpandDiffs.js');
window.xdone_options = {
'done_message': '{{Fait.}} Cordialement, [[Utilisateur:Spartan.arbinger|Spartan.arbinger]] ([[Discussion utilisateur:Spartan.arbinger|discuter]]) 28 décembre 2024 à 14:52 (CET)'
};
importScript( 'User:Arkanosis/xdone.js' );
//importScript('Utilisateur:Spartan.arbinger/WatchUsers.js');
obtenir('PagesSansBandeauDePortail');
// [[File:Krinkle_RTRC.js]]
//mw.loader.load('//meta.wikimedia.org/w/index.php?title=User:Krinkle/RTRC.js&action=raw&ctype=text/javascript');
importScript('User:Orlodrim/portail-eval.js');
window.alwaysEval = true; //mettez cette valeur à ''true'' si vous voulez que l'évaluation soit lancée automatiquement (à éviter en temps normal)
window.initEvalProjectNames = function()
{
evalProjectNames=[] ;//liste de vos projets
evalProjectNames.push("Cinéma") ;
evalProjectNames.push("Iran") ;//mettre ici autant de lignes comme celle-ci que de projets que vous voulez évaluer
};
// boutone de barre de luxe
var bdl_buttons = [
// Définition des boutons.
{
tagOpen: "==== {{S|",
tagClose: "}} ====",
imageFileNameOOUI: "thumb/3/35/OOjs_UI_icon_italic-s.svg/24px-OOjs_UI_icon_italic-s.svg.png",
tooltip: "Section",
buttonId: "Section-tag",
group: "insert",
},
{
tagOpen: "{{date|",
tagClose: "|lang=fr}} ",
imageFileNameOOUI: "thumb/d/dd/OOjs_UI_icon_clock.svg/24px-OOjs_UI_icon_clock.svg.png",
tooltip: "Date",
buttonId: "Date-tag",
group: "insert",
},
{
tagOpen: "{{ébauche-étym|",
tagClose: "}}",
imageFileNameOOUI: "thumb/a/ac/OOjs_UI_icon_ongoingConversation-ltr.svg/24px-OOjs_UI_icon_ongoingConversation-ltr.svg.png",
tooltip: "Eb-étym",
buttonId: "Ebétym-tag",
group: "insert",
},
{
tagOpen: "{{pron|",
tagClose: "|fr}} ",
imageFileNameOOUI: "thumb/8/8a/OOjs_UI_icon_volumeUp-rtl.svg/24px-OOjs_UI_icon_volumeUp-rtl.svg.png",
tooltip: "Prononciation",
buttonId: "Prononciation-tag",
group: "insert",
},
{
tagOpen: "#* {{exemple|",
tagClose: "|source=|lien=|lang=fr}}\n",
imageFileNameOOUI: "thumb/b/b3/OOjs_UI_icon_ellipsis.svg/24px-OOjs_UI_icon_ellipsis.svg.png",
tooltip: "Ébauche-exe",
buttonId: "Ébauche-exe-tag",
group: "insert",
},
{
tagOpen: "\n==== {{S|traductions}} ====\n{{trad-début}}",
tagClose: "\n{{trad-fin}}\n",
imageFileNameOOUI: "thumb/4/43/OOjs_UI_icon_language-ltr.svg/24px-OOjs_UI_icon_language-ltr.svg.png",
tooltip: "Traductions",
buttonId: "Traductions-tag",
group: "insert",
},
];
// <nowiki>
// Licence : Domaine public
if(mw.config.get('wgNamespaceNumber')==14){
addOnloadHook(BandeauxPortailsBOT_AddLink);
}
function BandeauxPortailsBOT_AddLink(){
var OngletsCactions = document.getElementById('p-cactions').getElementsByTagName('ul')[0];
OngletsCactions.innerHTML += '<li><a href="javascript:BandeauxPortailsBOT_OpenMenu();">Portail (bot)</a></li>';
}
function BandeauxPortailsBOT_getScreenSize(){
var HauteurEcran = 0;
if( typeof( window.innerHeight ) == 'number' ) {
HauteurEcran = parseInt(window.innerHeight);
}else if( document.documentElement && document.documentElement.clientHeight ){
HauteurEcran = parseInt(document.documentElement.clientHeight);
}else if( document.body && document.body.clientHeight ){
HauteurEcran = parseInt(document.body.clientHeight);
}
var LargeurEcran = 0;
if( typeof( window.innerWidth ) == 'number' ) {
LargeurEcran = parseInt(window.innerWidth);
}else if( document.documentElement && document.documentElement.clientWidth ){
LargeurEcran = parseInt(document.documentElement.clientWidth);
}else if( document.body && document.body.clientWidth ){
LargeurEcran = parseInt(document.body.clientWidth);
}
var ScreenSize = new Object();
ScreenSize.H = HauteurEcran;
ScreenSize.W = LargeurEcran;
return ScreenSize;
}
function BandeauxPortailsBOT_OpenMenu(){
if(document.getElementById('BandeauxPortailsBOT_Menu')) return;
var ScreenSize = BandeauxPortailsBOT_getScreenSize();
var HauteurEcran = ScreenSize.H;
var LargeurEcran = ScreenSize.W;
var Menu = document.createElement('div');
Menu.id='BandeauxPortailsBOT_Menu';
Menu.className = 'BandeauxPortailsBOT_Menu';
Menu.style.position='fixed';
Menu.style.zIndex= 500;
Menu.style.padding='5px';
Menu.style.backgroundColor='white';
Menu.style.border='3px double black';
Menu.style.width= 'auto';
document.body.appendChild(Menu);
var MenuContent = ''
+ '<fieldset id="OptionsValue" ><legend>Modification des bandeaux de portail</legend>'
+ '<table id="BandeauxPortailsBOT_OptionsTable"><tr><td width="280px" valign="middle" align="center">'
+ '<label for="RemoveBandeau">Bandeaux à retirer</label>'
+ '</td><td valign="middle" align="center">'
+ '<label for="linkedModifs">Liaison</label>'
+ '</td><td width="280px" valign="middle" align="center">'
+ '<label for="RemoveBandeau">Bandeaux à ajouter</label>'
+ '</td></tr><tr><td valign="middle" align="center">'
+ '<input type="text" id="RemoveBandeau1" class="RemoveBandeau" value="" size="40"/>'
+ '</td><td valign="middle" align="center">'
+ '<input type="checkbox" class="linkedModifs" style="cursor:pointer;" />'
+ '</td><td valign="middle" align="center">'
+ '<input type="text" class="AddBandeau" value="" size="40"/>'
+ '</td></tr><tr><td valign="middle" align="center">'
+ '<input type="text" class="RemoveBandeau" value="" size="40"/>'
+ '</td><td valign="middle" align="center">'
+ '<input type="checkbox" class="linkedModifs" style="cursor:pointer;" />'
+ '</td><td valign="middle" align="center">'
+ '<input type="text" class="AddBandeau" value="" size="40"/>'
+ '</td></tr><tr><td valign="middle" align="center">'
+ '<input type="text" class="RemoveBandeau" value="" size="40"/>'
+ '</td><td valign="middle" align="center">'
+ '<input type="checkbox" class="linkedModifs" style="cursor:pointer;" />'
+ '</td><td valign="middle" align="center">'
+ '<input type="text" class="AddBandeau" value="" size="40"/>'
+ '</td></tr><tr><td valign="middle" align="center">'
+ '<input type="text" class="RemoveBandeau" value="" size="40"/>'
+ '</td><td valign="middle" align="center">'
+ '<input type="checkbox" class="linkedModifs" style="cursor:pointer;" />'
+ '</td><td valign="middle" align="center">'
+ '<input type="text" class="AddBandeau" value="" size="40"/>'
+ '</td></tr><tr><td valign="middle" align="center">'
+ '<input type="text" class="RemoveBandeau" value="" size="40"/>'
+ '</td><td valign="middle" align="center">'
+ '<input type="checkbox" class="linkedModifs" style="cursor:pointer;" />'
+ '</td><td valign="middle" align="center">'
+ '<input type="text" class="AddBandeau" value="" size="40"/>'
+ '</td></tr><tr><td valign="middle" align="center">'
+ '<input type="text" class="RemoveBandeau" value="" size="40"/>'
+ '</td><td valign="middle" align="center">'
+ '<input type="checkbox" class="linkedModifs" style="cursor:pointer;" />'
+ '</td><td valign="middle" align="center">'
+ '<input type="text" class="AddBandeau" value="" size="40"/>'
+ '</td></tr></table></fieldset>'
+ '<center id="OptionsButtons" >'
+ '<input type="checkbox" id="SousCats" style="cursor:pointer;" />'
+ '<label for="SousCats">Traiter les sous-catégories ?</label>'
+ ' '
+ '<input type="checkbox" id="Autoconfirm" style="cursor:pointer;" />'
+ '<label for="Autoconfirm">Publier sans confirmation manuelle ?</label>'
+ ' '
+ '<input type="checkbox" id="AutoWatch" style="cursor:pointer;" />'
+ '<label for="AutoWatch">Suivre les pages modifiées ?</label>'
+ ' '
+ '<input type="button" style="cursor:pointer;" '
+ ' value="OK" title="Appliquer" '
+ ' onclick="BandeauxPortailsBOT_GetOptions(true);" onselect="BandeauxPortailsBOT_GetOptions(true);"/>'
+ ' '
+ '<input type="button" style="cursor:pointer;" '
+ ' value="Fermer" title="Fermer le menu" '
+ ' onclick="BandeauxPortailsBOT_CloseMenu();" onselect="BandeauxPortailsBOT_CloseMenu();"/>'
+ '</center>';
Menu.innerHTML = MenuContent;
PositionGauche = parseInt((LargeurEcran-Menu.clientWidth)/2) ;
PositionHaut = parseInt((HauteurEcran-Menu.clientHeight)/3) ;
Menu.style.left=PositionGauche + 'px';
Menu.style.top=PositionHaut + 'px';
document.getElementById("RemoveBandeau1").focus();
}
function BandeauxPortailsBOT_CloseMenu(){
var Menu = document.getElementById('BandeauxPortailsBOT_Menu');
if(Menu) Menu.parentNode.removeChild(Menu);
}
function BandeauxPortailsBOT_GetOptions(First){
var Options = new Object();
Options.SousCats = (document.getElementById("SousCats").checked ? true : false);
Options.Autoconfirm = (document.getElementById("Autoconfirm").checked ? true : false);
Options.AutoWatch = (document.getElementById("AutoWatch").checked ? true : false);
Options.Changes = new Array();
var Table = document.getElementById("BandeauxPortailsBOT_OptionsTable");
var TRs = Table.getElementsByTagName("tr");
for(var a=0,l=TRs.length;a<l;a++){
var TR = TRs[a];
var RemoveBandeau = $.makeArray( $(TR).find('input.RemoveBandeau') )[0];
var AddBandeau = $.makeArray( $(TR).find('input.AddBandeau') )[0];
var linkedModifs = $.makeArray( $(TR).find('input.linkedModifs') )[0];
if(!RemoveBandeau || !AddBandeau || !linkedModifs ) continue;
RemoveBandeau = RemoveBandeau.value;
AddBandeau = AddBandeau.value;
if(!RemoveBandeau && !AddBandeau) continue;
linkedModifs = (linkedModifs.checked ? true : false);
Options.Changes.push({"RemoveBandeau":RemoveBandeau,"AddBandeau":AddBandeau,"linkedModifs":linkedModifs});
}
if(Options.Changes.length==0) return;
Options.APIlimit = ( (mw.config.get('wgUserGroups').indexOf("sysop")!=-1)||(mw.config.get('wgUserGroups').indexOf("bot")!=-1) ? 4999 : 499 );
Options.categorylist = new Array(mw.config.get('wgPageName').replace(/_/g," "));
Options.pagelist = new Array();
Options.first = true;
if(First) BandeauxPortailsBOT_Run(Options);
else BandeauxPortailsBOT_RunAgain(Options);
}
function BandeauxPortailsBOT_UpdateMenu(Options){
var Menu = document.getElementById('BandeauxPortailsBOT_Menu');
if(!Menu) return;
var CatList = document.createElement('fieldset');
CatList.id = 'BandeauxPortailsBOT_MenuCats'
var CatListContent = ''
+ '<legend>Sélectionner les catégories à prendre en compte</legend>'
+ '<div id="BandeauxPortailsBOT_MenuCatsList" style="max-height:250px;overflow-y:auto;">'
+ '<ul>'
var AllCats = Options.categorylist;
for(var a=0,l=AllCats.length;a<l;a++){
CatListContent += '<li style="white-space:nowrap;">'
+ '<input type="checkbox" checked="checked" value="'+AllCats[a]+'" class="CatListCheckbox" '
+ (AllCats[a] == mw.config.get('wgPageName').replace(/_/g," ") ? 'disabled="disabled" ' : '') +'/>'
+ ' '+AllCats[a].split(mw.config.get('wgFormattedNamespaces')[14]+':').join("")
+ '</li>'
}
CatListContent += '</ul></div>';
CatList.innerHTML = CatListContent;
var CatButtons = document.createElement('center');
var CatButtonsContent = ''
+ '<input type="button" style="cursor:pointer;" '
+ ' value="OK" title="Appliquer" '
+ ' onclick="BandeauxPortailsBOT_GetOptions(false);" onselect="BandeauxPortailsBOT_GetOptions(false);"/>'
+ ' '
+ '<input type="button" style="cursor:pointer;" '
+ ' value="Fermer" title="Fermer le menu" '
+ ' onclick="BandeauxPortailsBOT_CloseMenu();" onselect="BandeauxPortailsBOT_CloseMenu();"/>'
CatButtons.innerHTML = CatButtonsContent;
var OptionsValue = document.getElementById("OptionsValue");
if(OptionsValue) OptionsValue.style.display = "none";
var OptionsButtons = document.getElementById("OptionsButtons");
if(OptionsButtons) OptionsButtons.style.display = "none";
Menu.appendChild(CatList);
Menu.appendChild(CatButtons);
var ScreenSize = BandeauxPortailsBOT_getScreenSize();
var LargeurEcran = ScreenSize.W;
var HauteurEcran = ScreenSize.H;
PositionGauche = parseInt((LargeurEcran-Menu.clientWidth)/2) ;
PositionHaut = parseInt((HauteurEcran-Menu.clientHeight)/3) ;
Menu.style.left=PositionGauche + 'px';
Menu.style.top=PositionHaut + 'px';
}
function BandeauxPortailsBOT_RunAgain(Options){
var MenuCats = document.getElementById('BandeauxPortailsBOT_MenuCatsList');
if(!MenuCats) return;
Options.categorylist = new Array(mw.config.get('wgPageName').replace(/_/g," "));
var CatList = $.makeArray( $(MenuCats).find('input.CatListCheckbox') );
for(var a=0,l=CatList.length;a<l;a++){
var Cat = CatList[a];
if(Cat.checked && Options.categorylist.indexOf(Cat.value)==-1) Options.categorylist.push(Cat.value);
}
Options.first = false;
BandeauxPortailsBOT_Run(Options);
}
function BandeauxPortailsBOT_Run(Options){
if(!Options.categorycontinue) Options.categorycontinue = '';
if(!Options.categoryCount) Options.categoryCount = 0;
var NouvelleRequete = sajax_init_object()
var AdresseRequete = mw.config.get('wgServer') + mw.config.get('wgScriptPath') + '/api.php?format=xml&action=query&list=categorymembers'
+ '&cmlimit='+Options.APIlimit
+ '&cmtitle=' + encodeURIComponent(Options.categorylist[Options.categoryCount])
+ Options.categorycontinue;
NouvelleRequete.open("GET", AdresseRequete, true);
NouvelleRequete.onreadystatechange = function() {
if(NouvelleRequete.readyState != 4 || NouvelleRequete.status != 200) return;
var ElementTraitement = NouvelleRequete.responseXML;
var Pages = ElementTraitement.getElementsByTagName('cm');
for(a=0;a<Pages.length;a++){
var PageNamespace = parseInt(Pages[a].getAttribute('ns'));
if((PageNamespace!=0)&&(PageNamespace!=1)&&(PageNamespace!=14)) continue;
var TitrePage = Pages[a].getAttribute('title');
TitrePage = TitrePage.split(mw.config.get('wgFormattedNamespaces')[1] + ':').join("");
if((TitrePage.indexOf(mw.config.get('wgFormattedNamespaces')[14] + ':')!=-1)&&(Options.SousCats)){
if(Options.first && Options.categorylist.indexOf(TitrePage)==-1)
Options.categorylist.push(TitrePage);
}else if(TitrePage.indexOf(mw.config.get('wgFormattedNamespaces')[14] + ':')==-1){
if(Options.pagelist.indexOf(TitrePage)==-1) Options.pagelist.push(TitrePage);
}
}
var MustContinue = ElementTraitement.getElementsByTagName('cmcontinue')[0];
if(MustContinue){
Options.categorycontinue = "&cmcontinue="+encodeURIComponent(MustContinue.fistChild.getAttribute("cmcontinue"));
BandeauxPortailsBOT_Run(Options);
}else{
Options.categoryCount = (Options.categoryCount+1)
Options.categorycontinue = "";
var NewCategory = Options.categorylist[Options.categoryCount];
if(NewCategory){
BandeauxPortailsBOT_Run(Options);
}else{
if(Options.first && Options.SousCats) BandeauxPortailsBOT_UpdateMenu(Options);
else BandeauxPortailsBOT_SortList(Options);
}
}
}
NouvelleRequete.send(null);
}
function BandeauxPortailsBOT_SortList(Options){
var PopContent = 'Nombre de pages à vérifier : ' + Options.pagelist.length ;
Options.pageCount = 0
var Pop = confirm(PopContent);
if(Pop) BandeauxPortailsBOT_AddBandeau(Options);
else BandeauxPortailsBOT_CloseMenu();
}
function BandeauxPortailsBOT_AddNextBandeau(Options){
Options.pageCount++
BandeauxPortailsBOT_AddBandeau(Options);
}
function BandeauxPortailsBOT_AddBandeau(Options){
if(!Options.pageCount) Options.pageCount = 0;
var Page = Options.pagelist[Options.pageCount];
if(!Page){ alert('Travail terminé'); window.location.reload(); }
var url = mw.config.get('wgServer') + mw.config.get('wgScript') + '?title=' + encodeURIComponent(Page) + '&action=edit';
var NouvelleRequete = sajax_init_object();
NouvelleRequete.open("GET", url, true);
NouvelleRequete.onreadystatechange = function() {
if(NouvelleRequete.readyState != 4 || NouvelleRequete.status != 200) return;
while(document.body.firstChild){ document.body.removeChild(document.body.firstChild);}
var ElementTraitement = document.createElement('div');
document.body.appendChild(ElementTraitement);
ElementTraitement.innerHTML = NouvelleRequete.responseText;
var TextArea = document.getElementById('wpTextbox1');
if(!TextArea){alert(url); return; }
var OldText = TextArea.value;
if((OldText.indexOf('#REDIRECT')!=-1)||(OldText.indexOf('#redirect')!=-1)||(OldText=='')){
BandeauxPortailsBOT_AddNextBandeau(Options);
return;
}
var NewValues = BandeauxPortailsBOT_reallyAddBandeau(Options, OldText);
if(!NewValues) return;
var TexteFinal = NewValues.Text;
var Sommaire = NewValues.Comment;
var SommaireFinal = Sommaire + ' ; ([[Utilisateur:Dr Brains/BandeauxPortailsBOT.js|script]])'
document.getElementById('wpTextbox1').value = TexteFinal;
document.getElementById('wpSummary').value = SommaireFinal;
document.getElementById('wpMinoredit').checked = "checked";
document.getElementById('wpWatchthis').checked = (Options.AutoWatch ? "checked" : false);
if(!Options.Autoconfirm){
var SurEtCertain = confirm('Sommaire : ' + Sommaire);
if(!SurEtCertain){
var SurEtCertainBis = confirm('Page suivante ?');
if(!SurEtCertainBis){
window.location.reload();
return;
}else{
BandeauxPortailsBOT_AddNextBandeau(Options);
return;
}
}
}
var action = document.getElementById("editform").action;
var boundary = '--------123xyz';
var data = '';
data += '--' + boundary + '\nContent-Disposition: form-data; name="wpTextbox1"\n\n' + TexteFinal + '\n'
data += '--' + boundary + '\nContent-Disposition: form-data; name="wpSection"\n\n' + document.editform.wpSection.value + '\n'
data += '--' + boundary + '\nContent-Disposition: form-data; name="wpSummary"\n\n' + SommaireFinal + '\n'
data += '--' + boundary + '\nContent-Disposition: form-data; name="wpMinoredit"\n\n' + document.editform.wpMinoredit.value + '\n'
data += '--' + boundary + '\nContent-Disposition: form-data; name="wpWatchthis"\n\n' + document.editform.wpWatchthis.value + '\n'
data += '--' + boundary + '\nContent-Disposition: form-data; name="wpStarttime"\n\n' + document.editform.wpStarttime.value + '\n'
data += '--' + boundary + '\nContent-Disposition: form-data; name="wpEdittime"\n\n' + document.editform.wpEdittime.value + '\n'
data += '--' + boundary + '\nContent-Disposition: form-data; name="wpEditToken"\n\n' + document.editform.wpEditToken.value + '\n'
var ajaxSubmit = sajax_init_object();
ajaxSubmit.open('POST', action, true);
ajaxSubmit.setRequestHeader('Content-Type', 'multipart/form-data; boundary='+boundary);
ajaxSubmit.onreadystatechange = function(){
if (ajaxSubmit.readyState != 4) return;
while(document.body.firstChild){document.body.removeChild(document.body.firstChild);}
var ElementTraitementBis = document.createElement('div');
document.body.appendChild(ElementTraitementBis);
ElementTraitementBis.innerHTML = ajaxSubmit.responseText;
if(!document.getElementById("editform")){
BandeauxPortailsBOT_AddNextBandeau(Options);
}else{
var DeuxiemeEssai = confirm('Problème !\n\nRéessayer ?');
if(DeuxiemeEssai) BandeauxPortailsBOT_AddBandeau(Options);
}
}
ajaxSubmit.send(data + '--' + boundary);
}
NouvelleRequete.send(null);
}
function BandeauxPortailsBOT_reallyAddBandeau(Options, OldText){
OldText = OldText.replace(/\{\{Portail /ig, "\{\{Portail\|"); // {{Portail Truc}} -> {{Portail|Truc}}
var Changes = Options.Changes;
var PortailRegExp = new RegExp('\\{\\{( |_)*(p|P)ortail( |_)*\\|[^\\}]+\\}\\}(\n)*', 'g');
var OldPortailMatch = OldText.match(PortailRegExp);
var AllParams = new Array();
var PortailIndex = -1;
if(OldPortailMatch!=null){
PortailIndex = OldText.indexOf(OldPortailMatch[0]);
for(var a=0,l=OldPortailMatch.length;a<l;a++){
var ThisTemplate = BandeauxPortailsBOT_CleanModele(OldPortailMatch[a]);
var AllParamsInThisTemplate = ThisTemplate.split("|");
for(var m=1,p=AllParamsInThisTemplate.length;m<p;m++){
var ThisParam = AllParamsInThisTemplate[m];
if(!ThisParam) continue;
ThisParam = ThisParam.replace(/(\||\})/g, "");
ThisParam = ThisParam.replace(/_/g, " ");
ThisParam = ThisParam.replace(/^ /g, "");
ThisParam = ThisParam.replace(/ $/g, "");
if(ThisParam && AllParams.indexOf(AllParams)==-1) AllParams.push(ThisParam);
}
OldText = OldText.replace(OldPortailMatch[a], "");
}
}
var OldParams = AllParams.join("|");
for(var a=0,l=Options.Changes.length;a<l;a++){
var ThisChangeOptions = Options.Changes[a];
var RemoveBandeau = ThisChangeOptions.RemoveBandeau;
var AddBandeau = ThisChangeOptions.AddBandeau;
var linkedModifs = ThisChangeOptions.linkedModifs;
if(AddBandeau && RemoveBandeau){
var paramIndex = AllParams.indexOf(RemoveBandeau);
if(linkedModifs){
if(paramIndex!=-1) AllParams.splice(paramIndex, 1, AddBandeau);
else if(RemoveBandeau=="*" && AllParams.length!=0) AllParams = new Array(AddBandeau);
}else{
if(paramIndex!=-1) AllParams.splice(paramIndex, 1);
if(RemoveBandeau=="*") AllParams = new Array(AddBandeau);
else if(AllParams.indexOf(AddBandeau)==-1) AllParams.push(AddBandeau);
}
}else if(AddBandeau){
if(AllParams.indexOf(AddBandeau)==-1) AllParams.push(AddBandeau);
}else if(RemoveBandeau){
var paramIndex = AllParams.indexOf(RemoveBandeau);
if(paramIndex!=-1) AllParams.splice(paramIndex, 1);
else if(RemoveBandeau=="*") AllParams = new Array();
}
}
var NewParams = AllParams.join("|");
if(OldParams==NewParams){
BandeauxPortailsBOT_AddNextBandeau(Options);
return false;
}
var BOT = ( (mw.config.get('wgUserGroups').indexOf("bot")!=-1) ? '[Bot] ' : '');
var Sommaire = BOT+'Modification automatique de {{Portail}} : "'+OldParams+'" → "'+NewParams+'"';
var NouveauModele = "{{Portail|$1}}\n";
NouveauModele = NouveauModele.split("$1").join(AllParams.join("|"));
if(AllParams.length==0) NouveauModele = "";
if(PortailIndex==-1){
var DefaultsortCatIndex = OldText.match(new RegExp("\\{\\{DEFAULTSORT:","g"));
if(DefaultsortCatIndex!=null){
PortailIndex = OldText.indexOf(DefaultsortCatIndex[0]);
}else{
var AnyCatIndex = OldText.match(new RegExp("\\[\\[(c|C)(ategory|atégorie):","g"));
if(AnyCatIndex!=null){
PortailIndex = OldText.indexOf(AnyCatIndex[0]);
}else{
var interWikiIndex = OldText.match(new RegExp('^\\s*\\[\\[([a-z][a-z].?(x?-[^\\]]+)?|simple|tokipona):([^\\]]*)\\]\\]\\s*$'));
if(interWikiIndex!=null){
PortailIndex = OldText.indexOf(interWikiIndex[0]);
}else{
PortailIndex = OldText.length;
}
}
}
}
var NewText = OldText.substring(0,PortailIndex)+NouveauModele+ OldText.substring(PortailIndex,OldText.length);
var Result = new Object();
Result.Text = NewText;
Result.Comment = Sommaire;
return Result;
}
function BandeauxPortailsBOT_CleanModele(Modele){
Modele = Modele.replace(/\n/g,"");
Modele = Modele.replace(/\| /g,"\|");
Modele = Modele.replace(/ \|/g,"\|");
Modele = Modele.replace(/\|\}/g,"\}");
Modele = Modele.replace(/\|\|/g,"\|");
return Modele;
}
// </nowiki>
xpatrolEnableClear = true; // Active la fonctionnalité de blanchiment de page
xpatrolEnableBanner = true; // Active la fonctionnalité d'ajout de bandeau
xpatrolEnablePurge = true; // Active la fonctionnalité de demande de purge d'historique
xpatrolPurgeWarnEditor = true; // Coche par défaut la case pour avertir le contributeur concerné lors d'une demande de purge d'historique
xpatrolSignatureRegistered = 'Merci d\'avance~~' + '~~'; // Modifie la signature utilisée pour les demandes de purge d'historique automatisées
xpatrolSignatureAnonymous = 'Cordialement~~' + '~~'; // Modifie la signature utilisée pour les messages d'avertissement automatisés
xpatrolCopyvioWarningTemplate = 'Bienvenue Copyvio 1'; // Modifie le modèle utilisé pour les messages d'avertissement automatisés
xpatrolWatchMain = true; // Ajoute les articles blanchis dans la liste de suivi
xpatrolWatchOthers = true;
});
//importScript('User:Arkanosis/xpatrol.js');
$( function () {
var pNavUl = document.querySelector( '#p-navigation ul' );
if ( pNavUl === null ) {
return;
}
NewMessage_PagesASurveiller.push('Wikipédia:Bulletin des administrateurs');
NewMessage_PagesASurveiller.push('Wikipédia:Requête aux administrateurs');
NewMessage_PagesASurveiller.push('Wikipédia:Vérificateur d \'utilisateurs/Requêtes');
NewMessage_PagesASurveiller.push('Wikipédia:Vandalisme_en_cours');
NewMessage_PagesASurveiller.push('Wikipédia:Demande_de_suppression_immédiate');
mw.loader.using( 'mediawiki.util', function() {
pNavUl.appendChild( document.createElement( 'br' ) );
mw.util.addPortletLink( 'p-navigation', mw.util.getUrl( 'Wikipédia:BULPAT' ), 'bulletin patrouille ', 'n-admin' );
mw.util.addPortletLink( 'p-navigation', mw.util.getUrl( 'Wikipédia:Bulletin des administrateurs' ), 'Bulletin admin', 'n-badmin' );
mw.util.addPortletLink( 'p-navigation', mw.util.getUrl( 'Wikipédia:Bulletin_des_bureaucrates' ), 'Bulletin stewart', 'n-bstewart' );
mw.util.addPortletLink( 'p-navigation', mw.util.getUrl( 'Wikipédia:Requête aux administrateurs' ), 'Requêtes', 'n-radmin' );
mw.util.addPortletLink( 'p-navigation', mw.util.getUrl( 'Wikipédia:Vérificateur d\'adresses IP/Requêtes' ), 'RCU', 'n-rcu' );
mw.util.addPortletLink( 'p-navigation', mw.util.getUrl( 'Wikipédia:VEC' ), 'vandale', 'n-vec' );
mw.util.addPortletLink( 'p-navigation', mw.util.getUrl( 'Wikipédia:DSI' ), 'en instance de suppression', 'n-dsi' );
mw.util.addPortletLink( 'p-navigation', mw.util.getUrl( 'Projet:OIA' ), 'observatoire des ia ', 'n-admin' );
mw.util.addPortletLink( 'p-navigation', mw.util.getUrl( 'WP:MWS' ), 'gestion des site suspect ', 'n-admin' );
pNavUl.appendChild( document.createElement( 'br' ) );
mw.util.addPortletLink( 'p-navigation', mw.util.getUrl( 'Special:Newpages' ), 'Nouvelles pages', 'n-npages' );
mw.util.addPortletLink( 'p-navigation', mw.util.getUrl( 'Special:Shortpages' ), 'Articles courts', 'n-spages' );
mw.util.addPortletLink( 'p-navigation', mw.util.getUrl( 'Special:Log' ), 'Journaux', 'n-logs' );
pNavUl.appendChild( document.createElement( 'br' ) );
mw.util.addPortletLink( 'p-navigation', mw.util.getUrl( 'Special:BlockIp' ), 'Bloquer', 'n-blockip' );
} );
} );
// NoSource.js
/**
* Suivi du jour
*
* Lien vers le suivi du jour dans le panneau de navigation
*/
//<syntaxhighlight lang="javascript">//<pre>
function TodaySuiviDate() {
var m = ["janvier", "février", "mars", "avril", "mai", "juin", "juillet", "août", "septembre", "octobre", "novembre", "décembre"];
var today = new Date();
var day = today.getDate();
return (day + " " + m[today.getMonth()]);
}
function SuiviDuJour()
{
mw.util.addPortletLink('p-navigation', 'http://fr.wikipedia.org/w/index.php?title=Sp%C3%A9cial%3ASuivi+des+liens&target=' + TodaySuiviDate().replace(/ /g,"+") + '&showlinkedto=1', 'Suivi du jour', 'n-suividj');
}
addOnloadHook(SuiviDuJour);
importScript('User:Utilisateur:Spartan.arbinger/chelper.js');
importScript('User:Aelxen/Mes scripts/NoDetectSource.js');
importScript('Utilisateur:Dr_Brains/ScriptManager.js');
mw.loader.load("//meta.wikimedia.org/wiki/User:Krinkle/RTRC.js?action=raw&ctype=text/javascript");
obtenir('BlockLogById');
obtenir('verifHomon');
obtenir('LiensRouges');
obtenir('StructuredCategories');
obtenir('DeluxeBar');
obtenir('NewMessage');
// QualiDetect.js
importScript('Utilisateur:LD/PV.js');
importScript('Utilisateur:Jules*/Gadget_blocked.js')
importScript('User:Aelxen/Mes scripts/QualiDetect.js');
mw.loader.load("https://github.com/Frederisk/Wikitext-Extension-Gadget/releases/latest/download/index-vscode.js");