Utilisateur:Dr Brains/BotFramework.js/Functions.js

Une page de Wikipédia, l'encyclopédie libre.
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.
  // Text Functions

function BotFramework_getText(Key){
   var Text = BotFramework_Texts[Key];
   if(Text) return Text;
   return mw.html.escape("<"+Text+">");
}

function BotFramework_Parse(Text, nobr, notags ){
    Text = Text.replace(/&amp;/g, "&");
    if(notags){
        Text = Text.replace(/</g, "&lt;");
        Text = Text.replace(/>/g, "&gt;");
    }else{
        Text = Text.replace(/&lt;/g, "<");
        Text = Text.replace(/&gt;/g, ">");
    }
    if(nobr) Text = Text.replace(/<br/g, "&lt;br").replace(/<\/br/g, "&lt;\/br");
    return Text;
}

function BotFramework_CleanElement(Element){
     if(Element){ while(Element.firstChild){ Element.removeChild(Element.firstChild); } }
}


// ===============================================================================================================





// Parser
/*
if (window.DOMParser) var BotFrameworkParser = new DOMParser();
function BotFramework_Parse(string) {
     if (window.DOMParser) {
          return BotFrameworkParser.parseFromString(string, "text/xml");
     } else if (window.ActiveXObject) {
          var gml_xmldoc = new ActiveXObject("Microsoft.XMLDOM");
          gml_xmldoc.async = "false";
          ret = gml_xmldoc.loadXML(string);      
          if (!ret) return null;
          return gml_xmldoc.documentElement;
     }
     return null;
}
*/

// Remplacement de page

function BotFramework_Replace(RequestResult, Target){
     if(!Target) Target = document.body;
     while(Target.firstChild){ Target.removeChild(Target.firstChild); }
     Target.innerHTML = RequestResult.responseText;
}

// Recherche élément par id non-unique

function BotFramework_getElementWithId( elementId , elementTagName , elementParentNode ){
      if(!elementParentNode) elementParentNode = document; 
      if(!elementTagName) elementTagName = "*";  
      if (elementParentNode.getElementById) return elementParentNode.getElementById(elementId); 
      var TheElement = false;
      var Elements = elementParentNode.getElementsByTagName(elementTagName);
      var elementcount = 0;
      while(elementcount<Elements.length){
            var Id = Elements[elementcount].getAttribute('id');
            if(Id){
                  if(Id==elementId){
                        TheElement = Elements[elementcount];
                        break;
                  }
            }
            elementcount++
      }
      if (! TheElement) return null;
      return TheElement;
}

function BotFramework_ManageAPITimestamp(Timestamp){
    if(!Timestamp) return false;
    var DateUgly = Timestamp.replace(/Z/g, "").split("T")[0];
    var Time = Timestamp.split("T")[1].replace(/Z/g, "").split(":");
    var Hour = parseInt(Time[0]);
    var Minutes = parseInt(Time[1]);
    var Seconds = parseInt(Time[2]);
    var Date = DateUgly.split("-");
    var Year = parseInt(Date[0]);
    var Month = parseInt(Date[1]);
    var Day = parseInt(Date[2]);
    var Date = new Array(Year, Month, Day, Hour, Minutes, Seconds);
    return Date;
}


function BotFramework_compareDates(date1, date2){
    if(typeof(date1)=="string") date1 = BotFramework_ManageAPITimestamp(date1);
    if(date2){
        if(typeof(date2)=="string") date2 = BotFramework_ManageAPITimestamp(date2);
    }else{
        var today = new Date();
        var seconds = today.getSeconds()
        var minutes = today.getMinutes();
        var hour = today.getHours();
        var day = today.getDate();
        var month = (today.getMonth() + 1)
        var year = today.getYear();
        if (year < 2000) year = year + 1900;
        date2 = new Array(year, month, day, hour, minutes, seconds);
    }
  var TimeFromZeroDate1 = Date.parse(date1[1]+" "+date1[2]+" "+date1[0]+" "+date1[3]+":"+date1[4]+":"+date1[5]);
  var TimeFromZeroDate2 = Date.parse(date2[1]+" "+date2[2]+" "+date2[0]+" "+date2[3]+":"+date2[4]+":"+date2[5]);
  return (TimeFromZeroDate2-TimeFromZeroDate1);
}

function BotFramework_AddZero(Number, Size){
     var Base = 10;
     var Multiplicator = 1;
     var ZeroString = "";
     if(Size){
          for(var a=1;a<Size;a++){
               Multiplicator = (Multiplicator*Base);
               if(Number<Multiplicator) ZeroString = "0" + ZeroString;
          }
     }else{
          if(Number<Base) ZeroString = "0" + ZeroString;
     }
     return ZeroString + Number;
}