مستخدم:Rami.Awad/gadget-bandsportals.js

ملاحظة: بعد الحفظ، قد يلزمك إفراغ الكاش لرؤية التغييرات.

// <noinclude>[[تصنيف:MediaWiki:Fonction Monobook en JavaScript]]</noinclude> <source lang=javascript>
 
// Documentation : [[Projet:JavaScript/Notices/BandeauxPortails]]
 
// Licence : Domaine public 
 
// <source lang=javascript>
// ==================================================================================================================== DEBUT DU CODE
// ====================================================================================================================
//<pre><nowiki>
 
/////////////////////////////////////////////////////////////////////////////////// Variables personnalisables
 
 
if(typeof(BandeauxPortails_AutoEdit)=='undefined') var BandeauxPortails_AutoEdit = true;         // Publication automatique
 
if(typeof(BandeauxPortails_MinorEdit)=='undefined') var BandeauxPortails_MinorEdit = true;       // Modification mineure
 
if(typeof(BandeauxPortails_TailleListe)=='undefined') var BandeauxPortails_TailleListe = 14;     // Nombre de suggestions
 
if(typeof(BandeauxPortails_ListeBas)=='undefined') var BandeauxPortails_ListeBas = false;        // Affichage des suggestions vers le bas
 
if(typeof(BandeauxPortails_KeyboardDelay)=='undefined') var BandeauxPortails_KeyboardDelay = 5;  // Délai (en secondes) lors de la sélection d'une suggestion au clavier
 
 
 
/////////////////////////////////////////////////////////////////////////////////// Fonctions actives au chargement de la page
if ( true  ) {
	// Script is not working since [[phab:T72470]], exit early.
} else if( ((wgAction=="view")||(wgAction=="purge"))&&(wgNamespaceNumber==0)){
      addOnloadHook(BandeauxPortails);
}else if((wgAction=="edit")&&(wgNamespaceNumber==0)){
      addOnloadHook(BandeauxPortails_Edit);
}
 
function BandeauxPortails(){ 
      var UlBandeaux = document.getElementById('bandeau-portail');
      if(!UlBandeaux) BandeauxPortails_CreateUl();
      BandeauxPortails_ModifyUl();
}
 
function BandeauxPortails_CreateUl(){
      var CatLinks = document.getElementById('catlinks');
      if(!CatLinks) return;
      var Bandeau = document.createElement('ul');
      Bandeau.id = 'bandeau-portail';
      Bandeau.className = 'bandeau-portail';
      CatLinks.parentNode.insertBefore(Bandeau,CatLinks);
}
 
function BandeauxPortails_ModifyUl(){
      var BandeauUl = document.getElementById('bandeau-portail');
      if(!BandeauUl) return;
      var BandeauLi = BandeauUl.getElementsByTagName('li');
      for(var a=0;a<BandeauLi.length;a++){
            Li = BandeauLi[a];
            var Lien = Li.getElementsByTagName('a')[1];
            if(Lien){
                  var TitreDecode = Lien.title.split('صندوق بوابات:').join('')
                  TitreDecode = TitreDecode.replace(/ \(page inexistante\)/g, "");
                  var Titre = encodeURIComponent(TitreDecode);
                  var SpanLien = Lien.parentNode
                  SpanLien.id = 'lienPortail_' + a;
                  SpanLien.innerHTML += ' • '
                                       +'<a href="javascript:BandeauxPortails_SupprOne(\''+Titre+'\')" title="إزالة البوابة '+TitreDecode+'">(-)</a>'
                                       +' • '
                                       +'<a href="javascript:BandeauxPortails_ModifyOne(\''+a+'\',\''+Titre+'\')" title="تغيير البوابة '+TitreDecode+'">(±)</a>';
            }          
      }
      var BandeauInexistant = BandeauUl.getElementsByTagName('a');
      for(var a=100;a<(BandeauInexistant.length+100);a++){
            if(hasClass(BandeauInexistant[(a-100)], "new")){
                  var Lien = BandeauInexistant[(a-100)];
                  if(Lien.title.indexOf("صندوق بوابات:")==-1){
                        var TitreDecode = Lien.innerHTML.split('صندوق بوابات:').join('');
                        TitreDecode = TitreDecode.replace(/^ /,'');
                        Titre = encodeURIComponent(TitreDecode).replace(/'/g,"ZAPPOSTROPHE");
                        var NewLi = document.createElement('li');
                        NewLi.innerHTML = '<span id="lienPortail_' + a + '" >'
                                         +'<a class="new" href="' + Lien.href + '" title="'+Lien.title+'" >'+TitreDecode+'</a>'
                                         +' • '
                                         +'<a href="javascript:BandeauxPortails_SupprOne(\''+Titre+'\')" title="إزالة البوابة '+TitreDecode+'">(-)</a>'
                                         +' • '
                                         +'<a href="javascript:BandeauxPortails_ModifyOne(\''+a+'\',\''+Titre+'\')" title="تغيير البوابة '+TitreDecode+'">(±)</a>';
                        Lien.parentNode.insertBefore(NewLi, Lien);
                        Lien.parentNode.removeChild(Lien);
                  }
            }
      }
      var AddLi = document.createElement('li');
      AddLi.id = 'lienPortail_add';
      AddLi.innerHTML += '<span class="bandeau-portail-element">'
                        +'<span class="bandeau-portail-texte" id="BandeauxPortails_Add" >'
                        +'<b><a title="بوابة:تصفح" href="/wiki/بوابة:تصفح">البوابات</a>: </b><a href="javascript:BandeauxPortails_AddOne()" title="إضافة البوابة" >(+)</a>'
                        +'</span>'
                        +'</span>';
      BandeauUl.appendChild(AddLi);
      BandeauxPortails_Update();
}
 
/////////////////////////////////////////////////////////////////////////////////// Mise à jour des bandeaux effectivement présents
 
function BandeauxPortails_Update(){
     var url = mw.config.get('wgServer') + mw.config.get('wgScript') + '?title=' + wgPageName.replace(/&/g, "%26") + '&oldid='+wgCurRevisionId+'&action=raw';
     //alert(url);
     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;
          var Contenu = BandeauxPortails_Request.responseText;
          //alert(Contenu);
          if(Contenu=='') return;
          Contenu = Contenu.replace(/\{\{صندوق بوابات/ig, "\{\{صندوق بوابات");
          Contenu = Contenu.replace(/\{\{صندوق بوابات /ig, "\{\{صندوق بوابات\|");
          var ParamsModele = Contenu.split('{{صندوق بوابات|')[1].split('}}')[0] + '|';
          ParamsModele = BandeauxPortails_CleanModele(ParamsModele);
          //alert(ParamsModele);
          var AllParamsModele = new Array();
          while(ParamsModele.indexOf('|')!=-1){
               var NewParam = ParamsModele.split('|')[0];
               if(NewParam!='') AllParamsModele.push(NewParam);
               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= "إزالة البوابات "+AllParamsModele[m];
               var LienModify = Span.getElementsByTagName('a')[2];
               LienModify.href= "javascript:BandeauxPortails_ModifyOne(\'"+m+"\',\'"+encodeURIComponent(AllParamsModele[m]).replace(/'/g,"ZAPPOSTROPHE")+"\')";
               LienModify.title= "تغيير البوابات "+AllParamsModele[m];
          }
     }
     BandeauxPortails_Request.send(null);
}
 
/////////////////////////////////////////////////////////////////////////////////// Formulaires
 
function BandeauxPortails_Cancel(id){ 
          var Span = document.getElementById(id); 
          Span.style.display = 'inline'; 
          var Parent = Span.parentNode; 
          var Form = Parent.getElementsByTagName('form')[0]; 
          Parent.removeChild(Form); 
}
 
function BandeauxPortails_SupprOne(Portail){ 
          Portail = Portail.replace(/ZAPPOSTROPHE/g,"'")
          var SurEtCertain = confirm('هل تريد بالفعل إزالة البوابة « '+Portail+' » ?');
          if(!SurEtCertain) return;
          var editlk = document.getElementById('ca-edit').getElementsByTagName('a')[0].href;
          var url = editlk + '&removeportail=' + Portail + 'ENDR' ;
          document.location = url ;
}
 
function BandeauxPortails_ModifyOne( id, portail ) {
     portail = portail.replace(/ZAPPOSTROPHE/g,"'")
     var Span = document.getElementById('lienPortail_' + id);
     Span.style.display = "none";
     var Form = document.createElement('form');
     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+'\')" />'
                     +'<input type="button" '
                     +'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() ;
}
 
function BandeauxPortails_ModifyThatOne(id, oldportail){ 
     oldportail = oldportail.replace(/ZAPPOSTROPHE/g,"'")
     var Input = document.getElementById('InputModify_'+id);
     var Portail = Input.value;
     if((Portail!='')&&(Portail!=oldportail)){
          Portail = Portail.substr(0,1).toUpperCase() + Portail.substr(1,Portail.length);
          var editlk = document.getElementById('ca-edit').getElementsByTagName('a')[0].href;
          var url = editlk + '&removeportail=' + encodeURIComponent( oldportail ) + 'ENDR&newportail=' + encodeURIComponent( Portail ) + 'ENDA';
          document.location = url ;
     }else{
          BandeauxPortails_Cancel('lienPortail_'+id);
     }
}
 
function BandeauxPortails_AddOne(){ 
     var Span = document.getElementById('BandeauxPortails_Add');
     Span.style.display = "none";
     var Form = document.createElement('form');
     Form.style.display ="inline";
     Form.innerHTML = '<select id="SelectAdd" style="display:none;" title="إقتراحات" />'
                     +'<b><a title="بوابة:تصفح" href="/wiki/بوابة:تصفح">البوابات</a>: </b><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() ;
 
}
 
function BandeauxPortails_AddThatOne(){ 
     var Input = document.getElementById('InputAdd');
     var Portail = Input.value;
     if(Portail!=''){
          Portail = Portail.substr(0,1).toUpperCase() + Portail.substr(1,Portail.length);
          var editlk = document.getElementById('ca-edit').getElementsByTagName('a')[0].href;
          var url = editlk + '&newportail=' + encodeURIComponent( Portail ) + 'ENDA';
          document.location = url ;
     }else{
          BandeauxPortails_Cancel('BandeauxPortails_Add');
     }
}
 
 
/////////////////////////////////////////////////////////////////////////////////// Suggestions
 
var BandeauxPortails_TextChanged_running = 0 ;
 
function BandeauxPortails_TextChanged(id){
     if ( BandeauxPortails_TextChanged_running ) return ;
     if(BandeauxPortails_TailleListe==0) return;
 
     var Select = document.getElementById( id ) ;
     var idInput = id.split('Select').join('Input')
     var Input = document.getElementById(idInput) ;
     //if((!Input)||(!Select)) return;     
     var Value = Input.value;
     Value = Value.replace(/.*\|/g, "");
     if(Value=='') return;
     BandeauxPortails_TextChanged_running = 1;  
 
     var url = wgServer + '/w/api.php?action=query&list=allpages&apnamespace=10&aplimit='+BandeauxPortails_TailleListe+'&apfrom=بوابة%20'+Value;
 
     var BandeauxPortails_Request = sajax_init_object();
     BandeauxPortails_Request.open("GET", url, true);
     BandeauxPortails_Request.send(null);
     BandeauxPortails_Request.onreadystatechange = function() {
          if(BandeauxPortails_Request.readyState == 4 && BandeauxPortails_Request.status == 200) {
               Select.innerHTML = '';
 
               var Temp = document.createElement('div');
               //document.body.insertBefore(Temp, document.body.firstChild);
               Temp.innerHTML = BandeauxPortails_Request.responseText;
               var Infos = Temp.getElementsByTagName('span');
               var NbOptions = 0;
               for(var a=0;a<Infos.length;a++){
                    Info = Infos[a].innerHTML;
                    if(Info.indexOf('title=')!=-1){
                         var TitrePage = Info.split('Portail')[1].split('"')[0];
                         TitrePage = TitrePage.replace(/^ /,'');
                         TitrePage = BandeauxPortails_HTMLDecode(TitrePage);
                         TitrePageEncode = TitrePage.replace(/'/g,"ZAPOSTROPHE");
                         Select.innerHTML +=  '<option value="'+TitrePage+'" '
                                             +'onclick="BandeauxPortails_TextChanged_Set(\''+idInput+'\', \''+TitrePageEncode+'\'); '
                                             +'BandeauxPortails_TextChanged(\''+id+'\');" '
                                             +'>'+TitrePage+'</option>';
                         NbOptions++
                    }
               }
               if(NbOptions>0){
                    Select.onchange = function(){
                         var Selected = this.getElementsByTagName('option');
                         for(var a=0;a<Selected.length;a++){
                               if(Selected[a].selected){
                                     var TextSelected = Selected[a].value;
                                     var OldValue = document.getElementById(idInput).value;
                                     if(OldValue.indexOf('|')!=-1){
                                          var OldValuePlus = OldValue.replace(/.*\|/g, "");
                                          if(OldValuePlus!="") OldValue = OldValue.split(OldValuePlus).join("")
                                     }else{
                                          OldValue = "";
                                     }
                                     document.getElementById(idInput).value = OldValue + TextSelected;
                                     setTimeout("BandeauxPortails_TextChanged(\'"+id+"\');", BandeauxPortails_KeyboardDelay*1000);
                               } 
                         }
                    }
 
                    Select.size = NbOptions;
                    Select.style.display = 'inline';
                    Select.style.zIndex = 5 ;
                    Select.style.position = "absolute" ;
                    Input.style.width = Select.offsetWidth + "px" ;
 
                    if(BandeauxPortails_ListeBas){
                         Select.style.top = (parseInt(Input.offsetTop) + parseInt(Input.offsetHeight)) + 'px';
                    }else{
                         Select.style.top = (parseInt(Input.offsetTop) - Select.offsetHeight) + 'px';
                    }
                    Select.style.left = (parseInt(Input.parentNode.offsetLeft ) - 1) + 'px';
               }else{
                    Select.style.display = 'none';
                    Select.innerHTML = '';
               }
               BandeauxPortails_TextChanged_running = 0;
          }
     }
}
 
function BandeauxPortails_TextChanged_Set(id, text){
     text = text.replace(/ZAPOSTROPHE/g,"'");
     var OldValue = document.getElementById(id).value;
     if(OldValue.indexOf('|')!=-1){
          var OldValuePlus = OldValue.replace(/.*\|/g, "");
          if(OldValuePlus!="") OldValue = OldValue.split(OldValuePlus).join("")
     }else{
          OldValue = "";
     }
     document.getElementById(id).value = OldValue + text;
     document.getElementById(id).focus() ;
}
 
/////////////////////////////////////////////////////////////////////////////////// Edition
 
function BandeauxPortails_Edit(){ 
     var TextArea = document.getElementById('wpTextbox1');
     if(!TextArea) return;
     var URL = location.href;
     if((URL.indexOf('&removeportail=')==-1)&&(URL.indexOf('&newportail=')==-1)) return;
     if(BandeauxPortails_AutoEdit) document.editform.style.display = "none";
 
     var EditURL = URL.substring(0, URL.indexOf("&removeportail="));
     var URL = URL.split(EditURL).join('');
 
 
     var  RemovePortalText = decodeURIComponent(URL.substring(0, URL.indexOf("ENDR")).replace(/.*=/g,''));
 
     var  AddPortalText = decodeURIComponent(URL.substring(0, URL.indexOf("ENDA")).replace(/.*=/g,''));
     var  AddPortalText = AddPortalText.replace(/\|$/g,'');
 
     var OldText = TextArea.value;
     OldText = OldText.replace(/\{\{Portail /ig, "\{\{صندوق بوابات\|"); // Cas d'un bandeau unique : {{Portail Truc}} -> {{Portail|Truc}}
 
     if((OldText.indexOf('{{صندوق بوابات|')!=-1)||(OldText.indexOf('{{صندوق بوابات|')!=-1)){ 
// ==================================================================================== 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('');
          var OldModele = ApresModele.substring(0, ApresModele.indexOf('}}')) + '}}';
          var SuiteModele = ApresModele.split(OldModele).join('');
 
          OldModele = BandeauxPortails_CleanModele(OldModele); 
 
          if((URL.indexOf('&newportail=')!=-1)&&((OldModele.indexOf('|'+AddPortalText+'|')!=-1)||(OldModele.indexOf('|'+AddPortalText+'}')!=-1))){
               alert('بوابة ' + AddPortalText + ' موجودة مسبقا.');
               document.editform.style.display = "مغلق";
               return;
          }
          if((URL.indexOf('&removeportail=')!=-1)&&(URL.indexOf('&newportail=')!=-1)){
               var NouveauModele = OldModele
               NouveauModele = NouveauModele.split('|' +RemovePortalText+ '|').join('|');
               NouveauModele = NouveauModele.split('|' +RemovePortalText+ '}}').join('}}');
               NouveauModele = NouveauModele.split('}}').join('|' + AddPortalText + '}}');
               var Sommaire = 'تغيير سريع للبوابة : - '+RemovePortalText+' , + '+AddPortalText.replace(/\|/g," , + ");
          }else if(URL.indexOf('&removeportail=')!=-1){
               var NouveauModele = OldModele
               NouveauModele = NouveauModele.split('|' +RemovePortalText+ '|').join('|');
               NouveauModele = NouveauModele.split('|' +RemovePortalText+ '}}').join('}}');
               var Sommaire = 'إزالة سريعة للبوابة : - '+RemovePortalText;          
          }else if(URL.indexOf('&newportail=')!=-1){
               var NouveauModele = OldModele.split('}}').join('|' + AddPortalText + '}}');
               var Sommaire = 'إضافة سريعة {{صندوق بوابات}} : + '+AddPortalText.replace(/\|/g," , + ");          
          } 
          NouveauModele = BandeauxPortails_CleanModele(NouveauModele);
          if(NouveauModele.indexOf('|')==-1){
               var NoParam = confirm('خطأ :\nيجب تحديد {{بوابة}} واحدة على الأقل.\n\nهل تريد حذف  {{البوابة}} ?');
               if(!NoParam){
                    document.editform.style.display = "مغلق";
                    return;
               }else{
                    NouveauModele = "";
               }
          }
     }else{ 
// ==================================================================================== Il n'y a pas de modèle {{Portail}}
          var NouveauModele = '{{صندوق بوابات|' + AddPortalText + '}}\n\n';
 
          var Sommaire = 'إضافة سريعة {{بوابة}} : + '+AddPortalText.replace(/\|/g," , + ");          
          if((OldText.indexOf('{{DEFAULTSORT:')!=-1)||(OldText.indexOf('[[تصنيف:')!=-1)||(OldText.indexOf('[[تصنيف:')!=-1)||(OldText.indexOf('[[تصنيف:')!=-1)||(OldText.indexOf('[[تصنيف:')!=-1)){
// ------------------------------------------------------------------------------------ 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 SuiteModele = OldText.split(DebutModele1).join('').split(DebutModele2).join('').split(DebutModele3).join('').split(DebutModele4).join('').split(DebutModele5).join('')      
               var DebutModele = OldText.split(SuiteModele).join('');
          }else{
// ------------------------------------------------------------------------------------ Il n'y a pas de catégories 
               var interWiki = new RegExp('^\\s*\\[\\[([a-z][a-z].?(x?-[^\\]]+)?|simple|tokipona):([^\\]]*)\\]\\]\\s*$');
               var blank = new RegExp('^\\s*$');
               var lines = OldText.split('\n');
               var DebutModele = '';
               var SuiteModele = '';
               var FoundInterwiki = false;
               for (var lineId = lines.length - 1; lineId >= 0; --lineId){
                    if (!interWiki.exec(lines[lineId]) && !blank.exec(lines[lineId])){
                         DebutModele = lines.slice(0, lineId + 1).join('\n');
                         SuiteModele = lines.slice(lineId + 1).join('\n');
                         break;
                    }
               }
               DebutModele = DebutModele + '\n\n';
               while(SuiteModele.indexOf('\n\n')!=-1){
                    SuiteModele = SuiteModele.split("\n\n").join("\n");
               }
               SuiteModele = SuiteModele.replace(/^\n/, "");
          }
     } 
     var TexteFinal = DebutModele + NouveauModele + SuiteModele;
     var SommaireFinal = Sommaire + ' ; بواسطة [[وب:التحكم بالبوابة|التحكم بالبوابة]]';
     document.getElementById('wpMinoredit').checked = BandeauxPortails_MinorEdit;
     document.getElementById('wpTextbox1').value = TexteFinal;
     document.getElementById('wpSummary').value = SommaireFinal;
     if(BandeauxPortails_AutoEdit)document.editform.submit();
}
 
function BandeauxPortails_HTMLDecode(text){
      var EncodedCharacter = new Array();
      var DecodedCharacter = new Array();
      var CharacterCount = 0;
 
      EncodedCharacter[CharacterCount] = "&amp;";
      DecodedCharacter[CharacterCount] = "&";
      CharacterCount++;
      EncodedCharacter[CharacterCount] = "&#039;";
      DecodedCharacter[CharacterCount] = "'";
      CharacterCount++;
      EncodedCharacter[CharacterCount] = "&quot;";
      DecodedCharacter[CharacterCount] = '"';
      CharacterCount++;
 
      for(var a=0;a<EncodedCharacter.length;a++){
            while(text.indexOf(EncodedCharacter[a])!=-1){
                  text = text.split(EncodedCharacter[a]).join(DecodedCharacter[a]);
                  if(text.indexOf(EncodedCharacter[a])==-1) break;
            }
      }
      return text;
}
 
// Nettoyage modèle (espaces, retour à la ligne, pipes)
function  BandeauxPortails_CleanModele(Modele){
          Modele = Modele.replace(/\n/ig, ""); 
          Modele = Modele.replace(/ \|/ig, "\|");
          Modele = Modele.replace(/\| /ig, "\|");
          Modele = Modele.replace(/\|\|/ig, "\|");
          Modele = Modele.replace(/\|\}/ig, "\}");
          return Modele;
}
 
//</nowiki></pre>
// ====================================================================================================================
// ==================================================================================================================== FIN DU CODE
//</source>