Utilisateur:Dr Brains/BotFramework.js/Functions.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. // 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(/&/g, "&");
if(notags){
Text = Text.replace(/</g, "<");
Text = Text.replace(/>/g, ">");
}else{
Text = Text.replace(/</g, "<");
Text = Text.replace(/>/g, ">");
}
if(nobr) Text = Text.replace(/<br/g, "<br").replace(/<\/br/g, "<\/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;
}