الفرق بين المراجعتين لصفحة: «ميدياويكي:Gadget-BandeauxPortails.js»
تم حذف المحتوى تمت إضافة المحتوى
جديدة '// //<source lang=javascript> // Documentation : w:fr:Projet:JavaScript/Notices/BandeauxPortails // Code copié-collé depuis https://fr.wikipedia.org/wiki/MediaWiki:Gadget-Band...' |
لا ملخص تعديل |
||
سطر 1:
//*[[:fr:mediawiki:gadget-bandeauxportails.js]]*/
//<source lang=javascript>
// Documentation : [[
// Licence : Domaine public
السطر 35 ⟵ 34:
if(typeof window.BandeauxPortails_SkipConfirm === 'undefined') window.BandeauxPortails_SkipConfirm = false;
var BandeauxPortails_EditParams = new Array();
/////////////////////////////////////////////////////////////////////////////////// Édition
السطر 97 ⟵ 87:
Modele = Modele.replace(/\|\}/ig, "\}");
return Modele;
}
السطر 119 ⟵ 101:
var OldText = TextArea.value;
OldText = OldText.replace(/\{\{
if((OldText.indexOf('{{
// ==================================================================================== Il y a déjà un modèle {{Portail}}
var AvantModeleUp = OldText.substring(0, OldText.indexOf('{{
var AvantModeleLow = OldText.substring(0, OldText.indexOf('{{
var ApresModele = OldText.split(AvantModeleUp).join('').split(AvantModeleLow).join('');
var DebutModele = OldText.split(ApresModele).join('');
السطر 134 ⟵ 116:
if(AddPortalText){
if(((OldModele.indexOf('|'+AddPortalText+'|')!=-1)||(OldModele.indexOf('|'+AddPortalText+'}')!=-1))){
alert('
document.editform.style.display = "";
return;
السطر 144 ⟵ 126:
NouveauModele = NouveauModele.split('|' +RemovePortalText+ '}}').join('}}');
NouveauModele = NouveauModele.split('}}').join('|' + AddPortalText + '}}');
var Sommaire = '
}else if(RemovePortalText){
var NouveauModele = OldModele;
NouveauModele = NouveauModele.split('|' +RemovePortalText+ '|').join('|');
NouveauModele = NouveauModele.split('|' +RemovePortalText+ '}}').join('}}');
var Sommaire = '
}else if(AddPortalText){
var NouveauModele = OldModele.split('}}').join('|' + AddPortalText + '}}');
var Sommaire = '
}
NouveauModele = BandeauxPortails_CleanModele(NouveauModele);
if(NouveauModele.indexOf('|')==-1){
if(BandeauxPortails_SkipConfirm || confirm('
NouveauModele = "";
}else{
السطر 166 ⟵ 148:
// ==================================================================================== Il n'y a pas de modèle {{Portail}}
if(!AddPortalText){
alert('
document.editform.style.display = "";
return;
}
var NouveauModele = '{{
var Sommaire = '
if((OldText.indexOf('{{DEFAULTSORT:')!=-1)||(OldText.indexOf('
// ------------------------------------------------------------------------------------ Il y a des catégories
var DebutModele1 = OldText.substring(0, OldText.indexOf('{{DEFAULTSORT:'));
var DebutModele2 = OldText.substring(0, OldText.indexOf('
var DebutModele3 = OldText.substring(0, OldText.indexOf('
var DebutModele4 = OldText.substring(0, OldText.indexOf('[[
var DebutModele5 = OldText.substring(0, OldText.indexOf('[[
var DebutModele6 = OldText.substring(0, OldText.indexOf('[[category:'));
var SuiteModele = OldText.split(DebutModele1).join('').split(DebutModele2).join('').split(DebutModele3).join('').split(DebutModele4).join('').split(DebutModele5).join('').split(DebutModele6).join(''); var DebutModele = OldText.split(SuiteModele).join('');
}else{
السطر 204 ⟵ 187:
}
var TexteFinal = DebutModele + NouveauModele + SuiteModele;
var SommaireFinal = Sommaire + '
document.getElementById('wpMinoredit').checked = BandeauxPortails_MinorEdit;
if(BandeauxPortails_Watchthis==1) document.getElementById('wpWatchthis').checked = "checked";
السطر 210 ⟵ 193:
document.getElementById('wpTextbox1').value = TexteFinal;
document.getElementById('wpSummary').value = SommaireFinal;
if(BandeauxPortails_AutoEdit)
}
السطر 250 ⟵ 210:
function BandeauxPortails_Update(){
var
var BandeauxPortails_Request = sajax_init_object();
BandeauxPortails_Request.open("GET", url, true);
BandeauxPortails_Request.onreadystatechange = function() {
if(BandeauxPortails_Request.readyState != 4 || BandeauxPortails_Request.status != 200) return;
if(Contenu=='') return;
Contenu = Contenu.replace(/\{\{
Contenu = Contenu.replace(/\{\{بوابة /ig, "\{\{شريط بوابات\|");
var ParamsModele =
ParamsModele = BandeauxPortails_CleanModele(ParamsModele);
var AllParamsModele = new Array();
ParamsModele = ParamsModele.split(NewParam+'|')[1];
}
for(var m=0;m<AllParamsModele.length;m++){ var Span = document.getElementById('lienPortail_'+m);
if(!Span) continue;
var LienRemove = Span.getElementsByTagName('a')[1];
LienRemove.href= "javascript:BandeauxPortails_SupprOne(\'"+encodeURIComponent(AllParamsModele[m]).replace(/'/g,"ZAPPOSTROPHE")+"\')";
LienRemove.title= "
var LienModify = Span.getElementsByTagName('a')[2];
LienModify.href= "javascript:BandeauxPortails_ModifyOne(\'"+m+"\',\'"+encodeURIComponent(AllParamsModele[m]).replace(/'/g,"ZAPPOSTROPHE")+"\')";
LienModify.title= "
}
};
BandeauxPortails_Request.send(null);
}
السطر 291 ⟵ 254:
window.BandeauxPortails_SupprOne = function(Portail){
Portail = Portail.replace(/ZAPPOSTROPHE/g,"'");
if (BandeauxPortails_SkipConfirm || confirm('
BandeauxPortails_EditParams["PortalToRemove"] = Portail;
BandeauxPortails_Edit();
السطر 329 ⟵ 292:
Form.style.display ="inline";
Form.innerHTML = '<select id="SelectModify_'+id+'" style="display:none;" title="
+'<input id="InputModify_'+id+'" type="text" value="'+portail+'" '
+'onkeyup="BandeauxPortails_TextChanged(\'SelectModify_'+id+'\')" />'
السطر 335 ⟵ 298:
+'onclick="BandeauxPortails_ModifyThatOne(\''+id+'\',\''+portail.replace(/'/g,"ZAPPOSTROPHE")+'\');" '
+'onselect="BandeauxPortails_ModifyThatOne(\''+id+'\',\''+portail.replace(/'/g,"ZAPPOSTROPHE")+'\');" '
+'value="
+'<input type="button" '
+'onclick="BandeauxPortails_Cancel(\'lienPortail_'+id+'\')" '
+'onselect="BandeauxPortails_Cancel(\'lienPortail_'+id+'\')" '
+'value="
Span.parentNode.insertBefore(Form,Span);
document.getElementById('InputModify_'+id).focus() ;
السطر 368 ⟵ 331:
return false;
} ;
Form.innerHTML = '<select id="SelectAdd" style="display:none;" title="
+'<input id="InputAdd" type="text" value="" onkeyup="BandeauxPortails_TextChanged(\'SelectAdd\')" />'
+'<input type="button" '
+'onclick="BandeauxPortails_AddThatOne();" '
+'onselect="BandeauxPortails_AddThatOne();" '
+'value="
+'<input type="button" '
+'onclick="BandeauxPortails_Cancel(\'BandeauxPortails_Add\')" '
+'onselect="BandeauxPortails_Cancel(\'BandeauxPortails_Add\')" '
+'value="
Span.parentNode.insertBefore(Form,Span);
document.getElementById('InputAdd').focus() ;
السطر 489 ⟵ 452:
}
function BandeauxPortails_TextChanged_Merge(id
var UpResults = BandeauxPortails_Up_Results;
var LowResults = BandeauxPortails_Low_Results;
السطر 500 ⟵ 463:
UpResults[b] = BandeauxPortails_TextChanged_MergeNoaccent(UpResults[b])+"|"+UpResults[b];
}
UpResults.sort();
for(var b=0;b<UpResults.length;b++){
var ThisPage = UpResults[b];
ThisPage = ThisPage.replace(/.*\|/g, "");
السطر 510 ⟵ 471:
ThisPage = ThisPage.substr(0,1).toLowerCase() + ThisPage.substr(1,ThisPage.length);
}
if(
ResultArray.push(ThisPage);
}
السطر 522 ⟵ 483:
Value = Value.substr(0,1).toUpperCase() + Value.substr(1,Value.length);
var Redirect = (BandeauxPortails_ShowRedirect ? "" : "&apfilterredir=nonredirects");
var
var BandeauxPortails_Request = sajax_init_object();
BandeauxPortails_Request.open("GET", url, true);
BandeauxPortails_Request.onreadystatechange = function() {
if(BandeauxPortails_Request.readyState != 4) return;
BandeauxPortails_Up_Results = [];
var ObjetXML = BandeauxPortails_Request.responseXML;
var AllPages = ObjetXML.getElementsByTagName('p');
for(var b=0;b<AllPages.length;b++){
var Titre = AllPages[b].getAttribute('title').replace(/قالب:شريط بوابة /, "");
var TitreUp = Titre.substr(0,1).toUpperCase() + Titre.substr(1,Titre.length);
if(Titre==TitreUp && Titre.indexOf("قالب:")==-1){
BandeauxPortails_Up_Results.push(Titre);
}
}
BandeauxPortails_TextChanged_running_Up = 0;
if(BandeauxPortails_TextChanged_running_Low==0) BandeauxPortails_TextChanged_Merge(id);
};
BandeauxPortails_Request.send(null);
}
السطر 552 ⟵ 509:
Value = Value.substr(0,1).toLowerCase() + Value.substr(1,Value.length);
var Redirect = (BandeauxPortails_ShowRedirect ? "" : "&apfilterredir=nonredirects");
var
var BandeauxPortails_Request = sajax_init_object();
BandeauxPortails_Request.open("GET", url, true);
BandeauxPortails_Request.onreadystatechange = function() {
if(BandeauxPortails_Request.readyState != 4) return;
BandeauxPortails_Low_Results = [];
var ObjetXML = BandeauxPortails_Request.responseXML;
var AllPages = ObjetXML.getElementsByTagName('p');
for(var b=0;b<AllPages.length;b++){
var Titre = AllPages[b].getAttribute('title').replace(/قالب:شريط بوابة /, "");
var TitreLow = Titre.substr(0,1).toLowerCase() + Titre.substr(1,Titre.length);
if(Titre==TitreLow && Titre.indexOf("قالب:")==-1){
BandeauxPortails_Low_Results.push(Titre);
}
}
BandeauxPortails_TextChanged_running_Low = 0;
if(BandeauxPortails_TextChanged_running_Up==0) BandeauxPortails_TextChanged_Merge(id);
};
BandeauxPortails_Request.send(null);
}
window.BandeauxPortails_TextChanged = function(id){
if(BandeauxPortails_TailleListe==0) return;
var Select = document.getElementById( id ) ;
var idInput = id.split('Select').join('Input');
السطر 609 ⟵ 563:
var Lien = Li.getElementsByTagName('a')[1];
if(Lien){
var TitreDecode = Lien.title.split('
TitreDecode = TitreDecode.replace(/ \(
var Titre = encodeURIComponent(TitreDecode);
var SpanLien = Lien.parentNode;
SpanLien.id = 'lienPortail_' + a;
SpanLien.innerHTML += '
+'<a href="javascript:BandeauxPortails_SupprOne(\''+Titre+'\')" title="
+'
+'<a href="javascript:BandeauxPortails_ModifyOne(\''+a+'\',\''+Titre+'\')" title="
}
}
السطر 624 ⟵ 578:
if($(BandeauInexistant[a-100]).hasClass('new')){
var Lien = BandeauInexistant[(a-100)];
if(Lien.title.indexOf("
var TitreDecode = Lien.innerHTML.split('
TitreDecode = TitreDecode.replace(/^ /,'');
Titre = encodeURIComponent(TitreDecode).replace(/'/g,"ZAPPOSTROPHE");
السطر 632 ⟵ 586:
+'<a class="new" href="' + Lien.href + '" title="'+Lien.title+'" >'+TitreDecode+'</a>'
+' • '
+'<a href="javascript:BandeauxPortails_SupprOne(\''+Titre+'\')" title="
+' • '
+'<a href="javascript:BandeauxPortails_ModifyOne(\''+a+'\',\''+Titre+'\')" title="
Lien.parentNode.insertBefore(NewLi, Lien);
Lien.parentNode.removeChild(Lien);
السطر 644 ⟵ 598:
AddLi.innerHTML += '<span class="bandeau-portail-element">'
+'<span class="bandeau-portail-texte" id="BandeauxPortails_Add" >'
+'<a href="javascript:BandeauxPortails_AddOne()" title="
+'</span>'
+'</span>';
|