Utilisateur:QcBot/Portal1.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) ;
Chrome / Internet Explorer / Opera : maintenez la touche Ctrl en cliquant sur le bouton Actualiser ou pressez Ctrl-F5.if( (mw.config.get('wgNamespaceNumber')>-1)&&( (mw.config.get('wgAction')=="edit")||(mw.config.get('wgAction')=="submit")) ){
if(typeof(CreatePortal_Reference)=="undefined"){
var CreatePortal_Reference = 'Portail:Guam';
}
if(typeof(CreatePortal_ComposantDeReference)=="undefined"){
var CreatePortal_ComposantDeReference = new Array();
CreatePortal_ComposantDeReference.push("");
CreatePortal_ComposantDeReference.push("/Cadre introduction");
CreatePortal_ComposantDeReference.push("/Cadres dynamiques");
CreatePortal_ComposantDeReference.push("/Cadre standard");
CreatePortal_ComposantDeReference.push("/Introduction");
CreatePortal_ComposantDeReference.push("/Le saviez-vous ?");
CreatePortal_ComposantDeReference.push("/Le saviez-vous ?/Introduction");
CreatePortal_ComposantDeReference.push("/Suivi/Articles récents");
CreatePortal_ComposantDeReference.push("/Page au hasard");
CreatePortal_ComposantDeReference.push("/Page au hasard/Liste");
CreatePortal_ComposantDeReference.push("/Lumière sur...");
CreatePortal_ComposantDeReference.push("/Lumière sur.../Introduction");
CreatePortal_ComposantDeReference.push("/Articles récompensés");
CreatePortal_ComposantDeReference.push("/Sélection");
CreatePortal_ComposantDeReference.push("/Image au hasard");
CreatePortal_ComposantDeReference.push("/Image au hasard/Introduction");
CreatePortal_ComposantDeReference.push("/Navigation");
}
addOnloadHook(CreatePortal_AddButton);
document.write('<style type="text/css">'
+ '#MenuReplaceSpan{'
+ 'text-align:left;'
+ '}'
+ '</style>');
}
function CreatePortal_AddButton(){
if(!document.editform) return;
var Toolbar = document.getElementById('toolbar');
if(!Toolbar){
Toolbar = document.createElement('div');
Toolbar.id = 'toolbar';
document.editform.insertBefore(Toolbar, document.editform.firstChild);
}
var button = '<img src="http://upload.wikimedia.org/wikipedia/commons/0/0d/Button_wikification.png" heigth="23" width="23" alt="Composant de portail" />';
var NewButton = document.createElement('a')
NewButton.title = "Créer un élément de portail";
NewButton.href="javascript:CreatePortal_OpenMenu();";
NewButton.innerHTML = button;
Toolbar.appendChild(NewButton);
}
function CreatePortal_Cancel(){
var MenuDiv = document.getElementById('Menu_Composant_de_portail');
MenuDiv.parentNode.removeChild(MenuDiv);
}
function CreatePortal_OpenMenu(){
var OldMenuDiv = document.getElementById('Menu_Composant_de_portail');
if(OldMenuDiv) return;
var Toolbar = document.getElementById('toolbar');
if(!Toolbar) Toolbar = document.getElementById('Oldbar');
var MenuDiv = document.createElement('div');
MenuDiv.id = 'Menu_Composant_de_portail';
Toolbar.parentNode.insertBefore(MenuDiv, Toolbar.nextSibling);
var MenuSelect = document.createElement('select');
MenuSelect.id = 'SelectComposant';
MenuSelect.onchange = function(){
var Selected = this.getElementsByTagName('option');
for(var a=0;a<Selected.length;a++){
if(Selected[a].selected){
var TextSelected = Selected[a].value;
CreatePortal_GetComposant(TextSelected);
}
}
}
MenuSelect.innerHTML += '<option value="Type de composant" disabled="disabled" selected="selected" >Type de composant</option>';
for(var a=0;a<CreatePortal_ComposantDeReference.length;a++){
MenuSelect.innerHTML += '<option value="'+CreatePortal_ComposantDeReference[a]+'" >'+CreatePortal_ComposantDeReference[a]+'</option>';
}
MenuDiv.appendChild(MenuSelect);
var CurrentPortal = mw.config.get('wgTitle').split('/')[0];
var MenuSpan = document.createElement('span');
MenuSpan.id = 'MenuReplaceSpan';
MenuDiv.appendChild(MenuSpan);
MenuSpan.innerHTML = '<label for="CreatePortal_Replace1">Texte à remplacer</label>'
+ '<input id="CreatePortal_Replace1" type="text" value="'+CreatePortal_Reference.split(':')[1]+'" />'
+ '<label for="CreatePortal_Replace2">Texte de remplacement</label>'
+ '<input id="CreatePortal_Replace2" type="text" value="'+CurrentPortal+'" />'
+ '<input type="button" value="Remplacer" onclick="CreatePortal_Replace();" onselect="CreatePortal_Replace();"/>'
+ ' <input type="button" value="Annuler" onclick="CreatePortal_Cancel();" onselect="CreatePortal_Cancel();"/>'
}
function CreatePortal_GetComposant(SousPage){
var Page = CreatePortal_Reference + SousPage;
var AdresseRequete = mw.config.get('wgServer') + mw.config.get('wgScript') + '?title=' + Page + '&action=edit';
var NouvelleRequete = new XMLHttpRequest();
NouvelleRequete.open("GET", AdresseRequete, true);
NouvelleRequete.send(null);
NouvelleRequete.onreadystatechange = function() {
if(NouvelleRequete.readyState == 4 && NouvelleRequete.status == 200) {
var ElementTraitement = document.createElement('div');
ElementTraitement.innerHTML = NouvelleRequete.responseText;
var EditTextArea = ElementTraitement.getElementsByTagName('textarea')[0].value;
document.getElementById('wpTextbox1').value = EditTextArea;
var OldText = document.getElementById('CreatePortal_Replace1').value;
var NewText = document.getElementById('CreatePortal_Replace2').value;
if((OldText!='')&&(NewText!='')) CreatePortal_Replace();
}
}
}
function CreatePortal_Replace(){
var OldText = document.getElementById('CreatePortal_Replace1').value;
var NewText = document.getElementById('CreatePortal_Replace2').value;
var Text = document.getElementById('wpTextbox1').value;
if((OldText=='')&&(NewText=='')) return;
if((OldText!='')&&(NewText!='')){
if(NewText.indexOf(OldText)!=-1){
alert("Le texte de remplacement contient le texte à remplacer.\nCela va générer une boucle et ne peut donc pas être effectué.\nVeuillez choisir d'autres paramètres.")
return;
}
}
while(Text.indexOf(OldText)!=-1){
Text = Text.split(OldText).join(NewText);
if(Text.indexOf(OldText)==-1) break;
}
document.getElementById('wpTextbox1').value = Text;
document.getElementById('CreatePortal_Replace1').value = NewText;
document.getElementById('CreatePortal_Replace2').value = OldText;
}