Inscris-toi pour écrire dans l'encyclopédie Wikimini!

Utilisateur:Dr Brains/wikimini.js

Aller à : navigation, rechercher

Note : après avoir enregistré tes préférences, tu devras forcer son rechargement complet en ignorant le contenu actuel du cache de ton explorateur pour voir les changements : Mozilla / Firefox / Konqueror / Safari : maintiens la touche Majuscule (Shift) en cliquant le bouton Actualiser (Reload,) ou presse Maj-Ctrl-R (Maj-Cmd-R sur Apple Mac) ; Internet Explorer / Opera : maintiens la touche Ctrl en cliquant le bouton Actualiser ou presse Ctrl-F5.

// __NORICHEDITOR__
//DebutSectionAuto : Cette section est produite automatiquement
//ConfigSectionAuto

//FinSectionAuto
// __NORICHEDITOR__

//importScript('Mediawiki:Gadgets-Body.js');

importScriptURI('https://fr.wikipedia.org/wiki/Utilisateur:Dr_Brains/LiveRCparam.css&action=raw&ctype=text/css');

function CheckCSSStyle(){
  var Text = "<ul>";
  var CSSs = document.styleSheets;
  for(var a=0,l=CSSs.length;a<l;a++){
    var CSS = CSSs[a];
    Text += "<li>" + a + " :<ul>";
    var CSSrules = false;
    try{ CSSrules = CSS.cssRules || CSS.rules; }catch(e){ }
    if(!CSSrules) continue;
    for(var b=0,m=CSSrules;b<m;b++){
        Text += "<li>" + CSSrules[b].cssText+"</li>";
    }
    Text += "</ul></li>";
  }
  Text += "</ul>";

  var TempDiv = document.createElement('div');
  TempDiv.id = "TempDiv";
  TempDiv.innerHTML = Text;
  document.body.appendChild(TempDiv);
}
addOnloadHook(CheckCSSStyle);



////////////////////////////////////////////////////////// Alerte de nouveaux messages //// DEBUT

if(wgCanonicalSpecialPageName != "NewMessages" && wgUserGroups!=null) addOnloadHook(function (){
     var Adresse = wgServer + wgArticlePath.split('$1').join("Special:NewMessages");
     var Requete = sajax_init_object();
     Requete.open("GET", Adresse, true);
     Requete.onreadystatechange = function() {
          if( Requete.readyState != 4 )  return;
          var ElementTraitement = document.createElement('div');
          ElementTraitement.style.display = "none";
          document.body.appendChild(ElementTraitement);
          ElementTraitement.innerHTML = Requete.responseText;
          var GotNewMessages = 0;
          var Forms = ElementTraitement.getElementsByTagName('form');
          for(var a=0;a<Forms.length;a++){
               if(!hasClass(Forms[a], "lqt_newmessages_read_button")) continue;
               GotNewMessages++
          }
          ElementTraitement.parentNode.removeChild(ElementTraitement);
          if(GotNewMessages>0){
               var Title = document.getElementsByTagName('h1')[0];
               var Message = document.createElement('div');
               Message.className = "usermessage";
               Message.innerHTML = '<img height="25" width="25" src="http://upload.wikimedia.org/wikipedia/commons/thumb/3/36/Nuvola_apps_email.png/25px-Nuvola_apps_email.png" alt="Nuvola apps email.png" />&nbsp;&nbsp;Tu as <a href="'+wgServer + wgArticlePath.split('$1').join("Special:NewMessages") + '" title="Voir ta boîte à  messages">'+GotNewMessages+(GotNewMessages==1 ? " nouveau message" : " nouveaux messages" ) + '</a>';
               Title.parentNode.insertBefore(Message,Title);
          }
     }
     Requete.send(null);
});

////////////////////////////////////////////////////////// Alerte de nouveaux messages //// FIN



////////////////////////////////////////////////////////// Bienvenutage //// DEBUT

importScript('Utilisateur:Dr Brains/Bienvenutage.js');

////////////////////////////////////////////////////////// Bienvenutage //// FIN

// ############################################################################################################### //

////////////////// Modèle:Information sur pages de description d'images ////////////////////////////////

var DefaultTemplate = '__NORICH'+'EDITOR__{{Information\n'
                    + '|description=$1\n'
                    + '|auteur=$2\n'
                    + '|source=$3\n'
                    + '}}'


if(wgCanonicalSpecialPageName=="Upload"){
      addOnloadHook(Upload_ChangeForm);
}else if((wgNamespaceNumber==6)&&((wgAction=="edit")||(wgAction=="submit"))){
      addOnloadHook(Edit_ChangeForm);
}

function Create_Form(){
      var Form = document.createElement("table");
      Form.className = "Information_Image";
      Form.width = "100%";
      Form.innerHTML = '<tr><th scope=row style="width:175px;text-align:right;">'
                     + '<b>Description</b><br/><span>Que représente cette image ?</span>'
                     + '</th><td>'
                     + '<textarea width="100%" id="UploadDescription" ></textarea>'
                     + '</td></tr>'
                     + '<tr><th scope=row style="text-align:right;">'
                     + '<b>Auteur</b><br/><span>Qui a créé cette image ?</span>'
                     + '</th><td>'
                     + '<textarea width="100%" id="UploadAuteur" ></textarea>'
                     + '</td></tr>'
                     + '<tr><th scope=row style="text-align:right;">'
                     + '<b>Source</b><br/><span>Où as-tu trouvé cette image ?</span>'
                     + '</th><td>'
                     + '<textarea width="100%" id="UploadSource" ></textarea>'
                     + '</td></tr>'
      return Form;
}

// SPECIAL:UPLOAD

function Upload_ChangeForm(){
      var UploadDescription = document.getElementById("wpUploadDescription");
      if(!UploadDescription) return;
      //UploadDescription.style.display = "none";
      UploadDescription.style.opacity = "0.7";

      var Inputs = document.getElementsByTagName('input');
      var FoundInput = false;
      for(var a=0;a<Inputs.length;a++){
            if((!FoundInput)&&(Inputs[a].name == "wpUpload")){
                  FoundInput = true;
                  Inputs[a].id = "UploadSaveInput";
                  Inputs[a].disabled = "disabled";
            } 
      }

      var NewUploadDescription = Create_Form();
      UploadDescription.parentNode.insertBefore(NewUploadDescription, UploadDescription);

      var UploadDescription = document.getElementById("UploadDescription");
      UploadDescription.onkeyup = function(){
            Upload_UpdateOldForm("wpUploadDescription", "UploadSaveInput");
      }
      var UploadAuteur = document.getElementById("UploadAuteur");
      UploadAuteur.onkeyup = function(){
            Upload_UpdateOldForm("wpUploadDescription", "UploadSaveInput");
      }
      var UploadSource = document.getElementById("UploadSource");
      UploadSource.onkeyup = function(){
            Upload_UpdateOldForm("wpUploadDescription", "UploadSaveInput");
      }
}

// EDIT

function Edit_ChangeForm(){
      var UploadDescription = document.getElementById("wpTextbox1");
      if(!UploadDescription) return;
      //UploadDescription.style.display = "none";
      UploadDescription.style.opacity = "0.7";

      var InputSave = document.getElementById('wpSave');
      InputSave.disabled = "disabled";

      var NewUploadDescription = Create_Form();
      UploadDescription.parentNode.insertBefore(NewUploadDescription, UploadDescription);

      var Params = Edit_Getparams();

      var UploadDescription = document.getElementById("UploadDescription");
      UploadDescription.value = Params[0];
      UploadDescription.onkeyup = function(){
            Upload_UpdateOldForm("wpTextbox1", "wpSave");
      }
      var UploadAuteur = document.getElementById("UploadAuteur");
      UploadAuteur.value = Params[1];
      UploadAuteur.onkeyup = function(){
            Upload_UpdateOldForm("wpTextbox1", "wpSave");
      }
      var UploadSource = document.getElementById("UploadSource");
      UploadSource.value = Params[2];
      UploadSource.onkeyup = function(){
            Upload_UpdateOldForm("wpTextbox1", "wpSave");
      }
}

function Edit_Getparams(){
      var Params = new Array();
      var TotalValue = document.getElementById("wpTextbox1").value;
      if(TotalValue.match(/\{\{(I|i)nformation/)){
            Params[0] = TotalValue.split("|description=")[1].split("\n|auteur=")[0];
            Params[1] = TotalValue.split("|auteur=")[1].split("\n|source=")[0];
            Params[2] = TotalValue.split("|source=")[1].split("\n}}")[0];
      }else{
            Params[0] = TotalValue.replace(/__NORICHEDITOR__/g, "");
            Params[1] = "";
            Params[2] = "";
      }
      return Params;
}



function Upload_UpdateOldForm(IDForm, IDInput){
      var OldDescription = document.getElementById(IDForm);
      var SaveInput = document.getElementById(IDInput);

      var UploadDescription = document.getElementById("UploadDescription");
      var UploadAuteur = document.getElementById("UploadAuteur");
      var UploadSource = document.getElementById("UploadSource");
      if((!OldDescription)||(!SaveInput)||(!UploadDescription)||(!UploadAuteur)||(!UploadSource)) return;

      var ValueDescription = UploadDescription.value;
      var ValueAuteur = UploadAuteur.value;
      var ValueSource = UploadSource.value;

      var NewTemplate = DefaultTemplate;
      NewTemplate = NewTemplate.split("$1").join(ValueDescription);
      NewTemplate = NewTemplate.split("$2").join(ValueAuteur);
      NewTemplate = NewTemplate.split("$3").join(ValueSource);

      OldDescription.value = NewTemplate;

      if((ValueDescription=="")||(ValueAuteur="")||(ValueSource=="")){
            SaveInput.disabled="disabled";
      }else{
            SaveInput.disabled = "";
      }
}

////////////////////////////////////////////////////////////////////////////////////////

var wgNamespageNumbers = new Array();
var wgNamespageNames = new Array();
wgNamespageNumbers.push(0);
wgNamespageNames.push('main');
wgNamespageNumbers.push(1);
wgNamespageNames.push('Discussion');
wgNamespageNumbers.push(2);
wgNamespageNames.push('Utilisateur');
wgNamespageNumbers.push(3);
wgNamespageNames.push('Discussion utilisateur');
wgNamespageNumbers.push(4);
wgNamespageNames.push('Wikimini');
wgNamespageNumbers.push(5);
wgNamespageNames.push('Discussion Wikimini');
wgNamespageNumbers.push(6);
wgNamespageNames.push('Fichier');
wgNamespageNumbers.push(7);
wgNamespageNames.push('Discussion fichier');
wgNamespageNumbers.push(8);
wgNamespageNames.push('Mediawiki');
wgNamespageNumbers.push(9);
wgNamespageNames.push('Discussion MediaWiki');
wgNamespageNumbers.push(10);
wgNamespageNames.push('Modèle');
wgNamespageNumbers.push(11);
wgNamespageNames.push('Discussion modèle');
wgNamespageNumbers.push(12);
wgNamespageNames.push('Aide');
wgNamespageNumbers.push(13);
wgNamespageNames.push('Discussion aide');
wgNamespageNumbers.push(14);
wgNamespageNames.push('Catégorie');
wgNamespageNumbers.push(15);
wgNamespageNames.push('Discussion catégorie');

if(wgPageName=="Utilisateur:Dr_Brains") addOnloadHook(Bot_AddLink)

function Bot_AddLink(){
      var FirstLi = document.getElementById("ca-nstab-user");
      if(!FirstLi) return;
      var NewLi = document.createElement('li');
      var NewLink = document.createElement('a');
      NewLink.innerHTML = "BOT&nbsp;:&nbsp;Ajout texte"
      NewLink.href= "javascript:Bot_Menu();";
      NewLi.appendChild(NewLink);
      FirstLi.parentNode.insertBefore(NewLi, FirstLi);
}

function Bot_Menu(){
      if(document.getElementById("MenuBot")) return;
      var agt=navigator.userAgent.toLowerCase();
      var is_ie = ((agt.indexOf("msie") != -1) && (agt.indexOf("opera") == -1));
      if(is_ie){
            LargeurEcran = parseInt(screen.width);
            HauteurEcran = parseInt(screen.height);
      }else{
            LargeurEcran = parseInt(window.innerWidth);
            HauteurEcran = parseInt(window.innerHeight);
      }

      var MenuDiv = document.createElement('div');
      MenuDiv.id = "MenuBot";
      MenuDiv.style.position = "fixed";
      MenuDiv.style.zIndex = 50000;

      var Buttons = '<input type="button" value="Valider" '
                  + 'onclick="Bot_OK()" onselect="Bot_OK()" />'
                  + '<input type="button" value="Annuler" '
                  + 'onclick="Bot_Cancel()" onselect="Bot_Cancel()" />'

      var Menu = document.createElement('fieldset');
      MenuDiv.appendChild(Menu);
      document.body.appendChild(MenuDiv);
      var Legend = document.createElement('legend');
      Legend.innerHTML = Buttons;
      Menu.appendChild(Legend);
      Menu.style.backgroundColor='white';
      Menu.style.border='3px double black';

      var NamespaceForm = document.createElement('fieldset');
      NamespaceForm.id = "Bot_Form_Namespace";
      var NamespaceLegend = document.createElement('legend');
      NamespaceLegend.innerHTML = "Espace de noms";
      NamespaceForm.appendChild(NamespaceLegend);
      var NamespaceSelect = document.createElement('select');
      var Option = document.createElement('option');
      Option.id = wgNamespageNumbers.join('|');
      Option.value = "TOUS";
      Option.innerHTML = "TOUS";
      NamespaceSelect.appendChild(Option);
      for(var a=0;a<wgNamespageNumbers.length;a++){
            var Option = document.createElement('option');
            Option.id = wgNamespageNumbers[a];
            Option.value = wgNamespageNames[a];
            Option.innerHTML = wgNamespageNames[a];
            NamespaceSelect.appendChild(Option);
      }
      NamespaceForm.appendChild(NamespaceSelect);

      var ReplaceForm = document.createElement('fieldset');
      ReplaceForm.id = "Bot_Form_Replace";
      var ReplaceLegend = document.createElement('legend');
      ReplaceLegend.innerHTML = "Remplacement (RegExp)";
      ReplaceForm.appendChild(ReplaceLegend);
      var Replacefrom = document.createElement('input');
      Replacefrom.type = "text";
      Replacefrom.id = "Bot_Form_ReplaceFrom";
      var Replaceto = document.createElement('input');
      Replaceto.type = "text";
      Replaceto.id = "Bot_Form_ReplaceTo";
      ReplaceForm.appendChild(Replacefrom);
      ReplaceForm.appendChild(document.createTextNode(" >>> "));
      ReplaceForm.appendChild(Replaceto);

      var AddTextForm = document.createElement('fieldset');
      var AddTextLegend = document.createElement('legend');
      AddTextLegend.innerHTML = "Ajout";
      AddTextForm.appendChild(AddTextLegend);
      AddTextForm.id = "Bot_Form_Add";
      var AddBefore = document.createElement('input');
      AddBefore.type = "text";
      AddBefore.id = "Bot_Form_AddBefore";
      AddBeforeLabel = document.createElement('label');
      AddBeforeLabel.for = "Bot_Form_AddBefore";
      AddBeforeLabel.innerHTML = "avant ";
      var AddAfter = document.createElement('input');
      AddAfter.type = "text";
      AddAfter.id = "Bot_Form_AddAfter";
      AddAfterLabel = document.createElement('label');
      AddAfterLabel.for = "Bot_Form_AddAfter";
      AddAfterLabel.innerHTML = "après";
      AddTextForm.appendChild(AddBefore);
      AddTextForm.appendChild(AddBeforeLabel);
      AddTextForm.appendChild(AddAfter);
      AddTextForm.appendChild(AddAfterLabel);

      Menu.appendChild(NamespaceForm);
      Menu.appendChild(ReplaceForm);
      Menu.appendChild(AddTextForm);

      PositionGauche = parseInt((LargeurEcran-MenuDiv.clientWidth)/2) ;
      PositionHaut = parseInt((HauteurEcran-MenuDiv.clientHeight)/5) ;
      MenuDiv.style.left=PositionGauche + 'px';
      MenuDiv.style.top=PositionHaut + 'px';
}

function Bot_Cancel(){
      var Menu = document.getElementById("MenuBot");
      if(Menu) Menu.parentNode.removeChild(Menu);
}

function Bot_OK(){
      var MenuNamespace = document.getElementById("Bot_Form_Namespace");
      var MenuReplaceFrom = document.getElementById("Bot_Form_ReplaceFrom");
      var MenuReplaceTo = document.getElementById("Bot_Form_ReplaceTo");
      var MenuAddBefore = document.getElementById("Bot_Form_AddBefore");
      var MenuAddAfter = document.getElementById("Bot_Form_AddAfter");
      if(!MenuNamespace || !MenuReplaceFrom || !MenuReplaceTo || !MenuAddBefore || !MenuAddAfter) return;

      var NamespaceOption = false;
      var Options = MenuNamespace.getElementsByTagName('option');
      for(var a=0;a<Options.length;a++){
            if(Options[a].selected) NamespaceOption = Options[a].id;
      }
      
      var ReplaceFrom = MenuReplaceFrom.value;
      var ReplaceTo = MenuReplaceTo.value;

      var AddBefore = MenuAddBefore.value;
      var AddAfter = MenuAddAfter.value;

      Bot_Cancel();
      Bot_Run(NamespaceOption, ReplaceFrom, ReplaceTo, AddBefore, AddAfter);
}

function Bot_Run(NamespaceOption, ReplaceFrom, ReplaceTo, AddBefore, AddAfter, PagesArray, APIContinue){
      if(!PagesArray) PagesArray = new Array();
      if(!APIContinue) APIContinue = "";
      if( (wgUserGroups.indexOf("bot")!=-1) || (wgUserGroups.indexOf("sysop")!=-1) ){
            var Bot_APILIimit = 4999;
      }else{
            var Bot_APILIimit = 499;
      }
      var Adresse = wgServer+wgScriptPath+'/api.php?format=xml&action=query&list=allpages&apnamespace='+NamespaceOption+'&apfilterredir=nonredirects&aplimit='+Bot_APILIimit + APIContinue;
      alert(Adresse);





}
Wikiboo Outils personnels