Edit C:\Users\Administrator\AppData\Local\Microsoft\Windows\INetCache\IE\2KQ37U68\edit_js[2].htm
/****************************************************************************** * Copyright (c) 2000-2008 e-Deal * * e-Deal S.A. * 55 rue Brillat Savarin * 75013 Paris * France * * T: +33 (0)1 53 80 80 30 * F: +33 (0)1 73 01 69 77 * http://www.e-deal.com * * La diffusion de ce code source sous quelque forme que ce soit sans * l'autorisation de E-DEAL est interdite. * * Vous �tes autoris�s � modifier ce code source uniquement pour votre usage * propre et sous r�serve que les mentions de copyright demeurent intactes. * * Ce code est fourni en l'�tat. Aucune garantie d'aucune sorte, explicite ou * implicite n'est donn�e. En aucun cas E-DEAL ne pourra �tre tenu pour * responsable des dommages pouvant r�sulter de l'utilisation de ce code * source. ******************************************************************************/ function presentFieldsValue() { var elem = document.forms[0].elements; var sep = "|"; if (document.forms[0].$$multivalSeparator) { sep = document.forms[0].$$multivalSeparator.value; } if (typeof(Utils) == "object") { for (i=0;i<elem.length;i++) { Utils.normalizeInputFromViewForSave(elem[i].name, document.forms[0], sep); } } var i=0; myTab = new Array(); myTab.push("IntActID"); for (i=0;i<elem.length;i++) { if ( ($(elem[i]).attr("ed") == "true") || (elem[i].type == "select-multiple") || (elem[i].type == "checkbox") || (elem[i].type == "radio")) { var ignoreItem = false; var name = elem[i].name; for (j = myTab.length; (myTab[j] != name) && j>-1; j--); if (j == -1) { myTab[myTab.length] = name; } } } document.forms[0].elements["$$presentFields"].value = myTab.join(sep); } /****************************************************************************** * Copyright (c) 2000-2011 e-Deal * * e-Deal S.A. * 55 rue Brillat Savarin * 75013 Paris * France * * T: +33 (0)1 53 80 80 30 * F: +33 (0)1 73 01 69 77 * http://www.e-deal.com * * La diffusion de ce code source sous quelque forme que ce soit sans * l'autorisation de E-DEAL est interdite. * * Vous �tes autoris�s � modifier ce code source uniquement pour votre usage * propre et sous r�serve que les mentions de copyright demeurent intactes. * * Ce code est fourni en l'�tat. Aucune garantie d'aucune sorte, explicite ou * implicite n'est donn�e. En aucun cas E-DEAL ne pourra �tre tenu pour * responsable des dommages pouvant r�sulter de l'utilisation de ce code * source. ******************************************************************************/ /** * Remove all selected items from a select multiple object. * fldName specified an hidden input containing list the values separated by '$$multivalSeparator'. * The name of the select multiple element is 'lbl' + fldName. If not exist, it is just fldName and * the string representation of the values list doesn't be store. * * @param fldName name of the field (required). * @param frmName name of the form (optional, default is forms[0]). */ function unselectMultiple(fldName, frmName) { var f = null; var i; if(frmName) { f = document.forms[frmName]; } else { f = document.forms[0]; } if(!f) return; var lblFld = f.elements['lbl' + fldName]; var realFld = f.elements[fldName]; var multivalSeparator = (f.elements['$$multivalSeparator'] ? f.elements['$$multivalSeparator'].value : '|'); var usedFld = lblFld ? lblFld : realFld; if(usedFld && usedFld.selectedIndex != -1) { if(lblFld) { var vectValue = realFld.value.split(multivalSeparator); for(i = lblFld.options.length - 1; i >= 0; i--) { fldValue = lblFld.options[i].value; if(fldValue != '_blank') { if(lblFld.options[i].selected) { lblFld.options[i] = null; vectValue[i] = null; } } } realFld.value = ''; for(i = 0, j = 0; i < vectValue.length; i++) { realFld.value += (vectValue[i] == null ? '' : (j++ == 0 ? '' : multivalSeparator) + vectValue[i]); } } else { for(i = realFld.options.length - 1; i >= 0; i--) { fldValue = realFld.options[i].value; if(fldValue != '_blank') { if(realFld.options[i].selected) { realFld.options[i] = null; } } } } } } /** * Convert money (in String) in another currency * Conversion can be only from a euro-zone currency to euro or reverse * Symbols : * frf : Franc francais * dem : Deutsch mark * itl : Lire italienne * iep : Livre irlandaise * esp : Peseta espagnole * pte : Escudo portugais * nlg : Florin hollandais * fim : Mark finlandais * bef : Franc belge * luf : Franc luxembourgeois * ats : Shilling autrichien * eur : Euro */ function convert(money, curr1, curr2) { if (money == '') { return ''; } var value = parseFloat(money); if (isNaN(value)) { return ''; } var convVal; if (curr1.toLowerCase() == 'frf' && curr2.toLowerCase() == 'eur') { // conversion franc francais -> euro convVal = (100 *parseFloat(value)) / 6.55957; } else if (curr1.toLowerCase() == 'eur' && curr2.toLowerCase() == 'frf') { // conversion euro -> franc francais convVal = (100 *parseFloat(value)) * 6.55957; } else if (curr1.toLowerCase() == 'dem' && curr2.toLowerCase() == 'eur') { // conversion mark (Allemagne) -> euro convVal = (100 *parseFloat(value)) / 1.95583; } else if (curr1.toLowerCase() == 'eur' && curr2.toLowerCase() == 'dem') { // conversion euro -> mark (Allemagne) convVal = (100 *parseFloat(value)) * 1.95583; } else if (curr1.toLowerCase() == 'itl' && curr2.toLowerCase() == 'eur') { // conversion lire (Italie) -> euro convVal = (100 *parseFloat(value)) / 1936.27; } else if (curr1.toLowerCase() == 'eur' && curr2.toLowerCase() == 'itl') { // conversion euro -> lire (Italie) convVal = (100 *parseFloat(value)) * 1936.27; } else if (curr1.toLowerCase() == 'iep' && curr2.toLowerCase() == 'eur') { // conversion livre irlandaise -> euro convVal = (100 *parseFloat(value)) / 0.787564; } else if (curr1.toLowerCase() == 'eur' && curr2.toLowerCase() == 'iep') { // conversion euro -> livre irlandaise convVal = (100 *parseFloat(value)) * 0.787564; } else if (curr1.toLowerCase() == 'esp' && curr2.toLowerCase() == 'eur') { // conversion peseta (Espagne) -> euro convVal = (100 *parseFloat(value)) / 166.386; } else if (curr1.toLowerCase() == 'eur' && curr2.toLowerCase() == 'esp') { // conversion euro -> peseta (Espagne) convVal = (100 *parseFloat(value)) * 166.386; } else if (curr1.toLowerCase() == 'pte' && curr2.toLowerCase() == 'eur') { // conversion escudo (Portugal) -> euro convVal = (100 *parseFloat(value)) / 200.482; } else if (curr1.toLowerCase() == 'eur' && curr2.toLowerCase() == 'pte') { // conversion euro -> escudo (Portugal) convVal = (100 *parseFloat(value)) * 200.482; } else if (curr1.toLowerCase() == 'nlg' && curr2.toLowerCase() == 'eur') { // conversion florin (Pays-Bas) -> euro convVal = (100 *parseFloat(value)) / 2.20371; } else if (curr1.toLowerCase() == 'eur' && curr2.toLowerCase() == 'nlg') { // conversion euro -> florin (Pays-Bas) convVal = (100 *parseFloat(value)) * 2.20371; } else if (curr1.toLowerCase() == 'fim' && curr2.toLowerCase() == 'eur') { // conversion Mark finlandais (Finlande) -> euro convVal = (100 *parseFloat(value)) / 5.94573; } else if (curr1.toLowerCase() == 'eur' && curr2.toLowerCase() == 'fim') { // conversion euro -> Mark finlandais (Finlande) convVal = (100 *parseFloat(value)) * 5.94573; } else if (curr1.toLowerCase() == 'bef' && curr2.toLowerCase() == 'eur') { // conversion franc belge -> euro convVal = (100 *parseFloat(value)) / 40.3399; } else if (curr1.toLowerCase() == 'eur' && curr2.toLowerCase() == 'bef') { // conversion euro -> franc belge convVal = (100 *parseFloat(value)) * 40.3399; } else if (curr1.toLowerCase() == 'luf' && curr2.toLowerCase() == 'eur') { // conversion franc luxembourgeois -> euro convVal = (100 *parseFloat(value)) / 40.3399; } else if (curr1.toLowerCase() == 'eur' && curr2.toLowerCase() == 'luf') { // conversion euro -> franc luxembourgeois convVal = (100 *parseFloat(value)) * 40.3399; } else if (curr1.toLowerCase() == 'ats' && curr2.toLowerCase() == 'eur') { // conversion schilling (Autriche) -> euro convVal = (100 *parseFloat(value)) / 13.7603; } else if (curr1.toLowerCase() == 'eur' && curr2.toLowerCase() == 'ats') { // conversion euro -> schilling (Autriche) convVal = (100 *parseFloat(value)) * 13.7603; } return (Math.round(convVal)/100).toString(); } /* removing leading and tail spaces and replaces mlti^le spaces by one single space */ function trimStr(str) { if (str == "") { return str; } var res = str; while (res.indexOf(" ") > -1) { res = res.split(" ").join(" "); } if (res.indexOf(" ") == 0) { res = res.substring(1); } if (res.lastIndexOf(" ") == (res.length - 1)) { res = res.substring(0, res.length - 1); } return res; } function flEscape(str) { if (str == "") { return str; }else { //return escape(str).split("+").join("%2b"); return encodeURIComponent(str).split("+").join("%2b"); } } /** * replaces some special caracters by corresponding codes */ function formatToWeb(str, edit) { var result; // if (!str || trimStr(str).length == 0) if (false) result = edit ? "" : " "; else { var buffer = ""; var c; var i; for (i = 0; i < str.length; i++) { c = str.substring(i, i+1); switch (c) { case '\n' : buffer += edit ? "\n" : "<br>"; break; case '<' : buffer += "<"; break; case '>' : buffer += ">"; break; case '&' : buffer += "&"; break; case '"' : buffer += """; break; case 'Ã? ' : buffer += "à"; break; case 'Ã?¢' : buffer += "â"; break; case 'Ã?¤' : buffer += "ä"; break; case 'Ã?©' : buffer += "é"; break; case 'Ã?¨' : buffer += "è"; break; case 'Ã?ª' : buffer += "ê"; break; case 'Ã?«' : buffer += "ë"; break; case 'Ã?®' : buffer += "î"; break; case 'Ã?¯' : buffer += "ï"; break; case 'Ã?´' : buffer += "ô"; break; case 'Ã?¶' : buffer += "ö"; break; case 'Ã?¹' : buffer += "ù"; break; case 'Ã?»' : buffer += "û"; break; case 'Ã?¼' : buffer += "ü"; break; case 'Ã?¤' : buffer += "¤"; break; case 'Ã?£' : buffer += "£"; break; case 'Ã?µ' : buffer += "µ"; break; case 'Ã?²' : buffer += "²"; break; case 'Ã?§' : buffer += "§"; break; case 'Ã?§' : buffer += "ç"; break; default : buffer += c; } } result = buffer; } return result; } /** * replaces some special caracters by corresponding codes */ function formatToJavascript(pStr) { var i = 0; var strResult = ''; // if (!str || trimStr(str).length == 0) if(pStr) { for(i = 0; i < pStr.length; i++) { c = pStr.charAt(i); switch (c) { case '\n' : strResult += '\\n'; break; case '"' : strResult += '\\\"'; break; case '\'' : strResult += '\\\''; break; case '\\' : strResult += '\\\\'; break; default : strResult += c; } } } return strResult; } /** * returns the given number rounded up to the given number of decimals */ function roundDecimal(nbr , nbDecimals) { var multi = 1; var i; var nbDec = 2; if (nbDecimals) nbDec = nbDecimals; for (i=0 ; i < nbDec ; i++) multi *= 10; return (Math.round(multi * nbr)/multi); } /** * replace key by value in specified string */ function strReplace(pStr, pKey, pValue) { return pStr.split(pKey).join(pValue); } /** * lite Vector class */ function FlVector(pArray) { this.elements = pArray ? pArray : new Array(); this.size = FlVectorSize; this.isEmpty = FlVectorIsEmpty; this.addElement = FlVectorAddElement; this.removeElementAt = FlVectorRemoveElementAt; this.removeElement = FlVectorRemoveElement; this.elementAt = FlVectorElementAt; this.contains = FlVectorContains; this.toString = FlVectorToString; } function FlVectorSize() { return this.elements.length; } function FlVectorIsEmpty() { return this.elements.length == 0; } function FlVectorAddElement(pObj) { this.elements[this.elements.length] = pObj; } function FlVectorRemoveElementAt(pIndex) { var i = 0; if(pIndex >= 0 && pIndex < this.elements.length) { this.elements[pIndex] = null; for(i = pIndex + 1; i < this.elements.length; i++) { this.elements[i - 1] = this.elements[i]; } this.elements.length = this.elements.length - 1; } } function FlVectorRemoveElement(pObj) { var i = 0; for(i = 0; i < this.elements.length; i++) { if(this.elements[i] == pObj) { this.removeElementAt(i); } } } function FlVectorElementAt(pIndex) { if(pIndex >= 0 && pIndex < this.elements.length) { return this.elements[pIndex]; } else { return null; } } function FlVectorContains(pObj) { var i = 0; for(i = 0; i < this.elements.length; i++) { if(this.elements[i] == pObj) { return true; } } return false; } function FlVectorToString(pSeparator) { return this.elements.join(pSeparator ? pSeparator : ';'); } function trimString(str) { str = this != window? this : str; return str.replace(/^\s+/g, '').replace(/\s+$/g, ''); } String.prototype.trim = trimString; function arrayIndexOf(value, array) { array = this != window ? this : array; if (array) { for (var i = 0; i < array.length; i++) { if (array[i] == value) { return i; } } } return -1; } function arrayLastIndexOf(value, array) { array = this != window ? this : array; if (array) { for (var i = array.length - 1; i <= 0; i--) { if (array[i] == value) { return i; } } } return -1; } function replaceParam(url, paramName, newValue){ if (!url) { return; } var queryStringIdx = url.indexOf("?"); if (queryStringIdx == -1) { return url + "?" + paramName + "=" + encodeURIComponent(newValue); } var queryString = url.substring(queryStringIdx + 1, url.length); var paramNames = new Array(); var paramValues = new Array(); var params = queryString.split('&'); var paramIdx = -1; for (var i = 0; i < params.length; i++) { var idx = params[i].indexOf("="); paramNames[i] = params[i].substring(0, idx); if (paramNames[i] == paramName && paramIdx == -1) { paramIdx = i; } paramValues[i] = params[i].substring(idx + 1, params[i].length); } if (paramIdx == -1) { paramNames.push(paramName); paramValues.push(newValue); } else { paramValues[paramIdx] = newValue; } var newQueryArray = new Array(); for (var i =0; i < paramNames.length; i++) { if (paramValues[i]) { newQueryArray.push(paramNames[i] + "=" + paramValues[i]); } } return url.substring(0, queryStringIdx) + "?" + newQueryArray.join("&"); } /* * Allowing to impose a max length for * provided object (textarea for example) * And display specified message in order * to inform current user if its text is * truncate */ function imposeMaxLength(Event, Object) { var MaxLenght = 3000; if(Event.type="blur" && Object.value.length > MaxLenght){ alert(getMessage("M903F","Champ tronqué à la limite de taille suivante:", true)+" "+MaxLenght); Object.value = Object.value.substring(0, MaxLenght); } return (Object.value.length < MaxLenght)||(Event.keyCode == 8 ||Event.keyCode==46||(Event.keyCode>=35&&Event.keyCode<=40)); } // Ce fichier contient les fonctions de contrÃ?´le de saisie // // La fonction principale est checkField(-, -, -, -, -) //================================================== // Declaration des formats par défaut //================================================== var centuryLimit = 90; var separateurDecimal = ","; var separateurMilliers = " "; var dateFormatIn = "dd/mm/yy"; var dateFormatOut = "DD/MM/yyyy"; var dateSeparator = "/"; var hourSeparator = ":"; //================================================== // tempStatus ecrit un message dans la barre d'état // et l'enlève automatiquement au bout de 4 sec //================================================== function tempStatus(message) { window.status = message; window.setTimeout("window.status=''", 4000); } //================================================== // myReplace remplace une sous-chaine sans la // considérer comme une expression régulière regex //================================================== function myReplace(str, oldStr, newStr) { return str.split(oldStr).join(newStr); } //================================================== // removeLeadingZeros enlève les 0 du début de la // chaine afin d'éviter qu'elle ne soit considérée // comme un entier en base 8 ou 16 //================================================== function removeLeadingZeros(str) { if (str == '') return str; var i = 0; while (i < str.length && str.substr(i , 1) == '0') i++; if (i == str.length) return '0'; return str.substr(i); } //================================================== // checkDate controle si une chaine (non vide) // peut Ã?ªtre intertprÃ?©tÃ?©e en date Ã?©tant donnÃ?© // un format d'entrÃ?©e Si c'est le cas, elle // elle rend la date suivant un format de retour, // sinon elle rend la chaine vide //================================================== function checkDate(strDate, srcFormat, dstFormat) { // Le format : // mm, MM, dd, DD, yy, yyyy //-------------------------------------------------- // On verifie que le format d'entrÃ?©e est acceptable //-------------------------------------------------- var srcFmt = srcFormat.split(dateSeparator); var srcIndex = new Array(-1, -1, -1); var i; if(srcFmt.length != 3) { return ''; } for(i = 0; i < 3; i++) { if(srcFmt[i].toLowerCase() == 'dd') { srcIndex[0] = i; } else if(srcFmt[i].toLowerCase() == 'mm') { srcIndex[1] = i; } else if(srcFmt[i].toLowerCase() == 'yy' || srcFmt[i].toLowerCase() == 'yyyy') { srcIndex[2] = i; } else { return ''; } } for(i = 0; i < 3; i++) { if(srcIndex[i] == -1) return ''; } //-------------------------------------------------- // On verifie si le format de retour est acceptable //-------------------------------------------------- var dstIndex; var dstFmt; if (!dstFormat || dstFormat == '') { dstFmt = srcFmt; dstIndex = srcIndex; } else { dstFmt = dstFormat.split(dateSeparator); dstIndex = new Array(-1, -1, -1); if(dstFmt.length != 3) return ''; for(i = 0; i < 3; i++) { if(dstFmt[i].toLowerCase() == 'dd') { dstIndex[0] = i; } else if(dstFmt[i].toLowerCase() == 'mm') { dstIndex[1] = i; } else if(dstFmt[i].toLowerCase() == 'yy' || dstFmt[i].toLowerCase() == 'yyyy') { dstIndex[2] = i; } else { return ''; } } for(i = 0; i < 3; i++) { if(dstIndex[i] == -1) return ''; } } //-------------------------------------------------- // Les formats sont OK, on vÃ?©rifie la valeur donnÃ?©e //-------------------------------------------------- var majFmt = new Array('DD', 'MM', 'YY'); var unsortedDate = strDate.split(dateSeparator); if (unsortedDate.length != 3) return ''; for(i = 0; i < 3; i++) { // if(isNaN(unsortedDate[i])) { if(isNaN(removeLeadingZeros(unsortedDate[i]))) { return ''; } } var sortDate = new Array(3); for(i = 0; i < 3; i++) { // sortDate[i] = parseInt(unsortedDate[srcIndex[i]]); sortDate[i] = parseInt(removeLeadingZeros(unsortedDate[srcIndex[i]])); // modif // rajoutÃ?© par RaF pour 赩ter que dd/mm/ se transforme en dd/mm/NaN if (isNaN(sortDate[i])) { return ''; } // fin modif } // vÃ?©rification du mois if(sortDate[1] < 1 || sortDate[1] > 12) { return ''; } // passage Ã? 4 chiffres de l'annÃ?©e if(sortDate[2] < 100) { if(sortDate[2] > centuryLimit) { sortDate[2] += 1900; } else { sortDate[2] += 2000; } } // vÃ?©rification du jours var maxDays; switch (sortDate[1]) { case 2: if((sortDate[2] % 4) == 0 && (!((sortDate[2] % 100) == 0) || (sortDate[2] % 400) == 0)) { maxDays = 29; } else { maxDays = 28; } break; case 4: case 6: case 9: case 11: maxDays = 30; default: maxDays = 31; } if(sortDate[0] < 1 || sortDate[0] > maxDays) return ''; //-------------------------------------------------- // La valeur donnÃ?©e est OK, // on la rend selon le format de retour //-------------------------------------------------- for(i = 0; i < 3; i++) { if(dstFmt[dstIndex[i]].substring(0, 2) == majFmt[i]) { unsortedDate[dstIndex[i]] = '0000' + sortDate[i].toString(); unsortedDate[dstIndex[i]] = unsortedDate[dstIndex[i]].substring(unsortedDate[dstIndex[i]].length - dstFmt[dstIndex[i]].length); } else { unsortedDate[dstIndex[i]] = sortDate[i].toString(); if(unsortedDate[dstIndex[i]].length > dstFmt[dstIndex[i]].length) { unsortedDate[dstIndex[i]] = parseInt(unsortedDate[dstIndex[i]].substring(unsortedDate[dstIndex[i]].length - dstFmt[dstIndex[i]].length)).toString(); } } } return unsortedDate.join(dateSeparator); } //================================================== // checkHour verifie si une chaine peut être // inteprétée en une heure. Le second paramètre // est le séparateur des heures / minutes //================================================== function checkHour(strHour, key) { var dstHour = new Array(0, 0); var srcHour = strHour.split(key); if(srcHour.length == 2) { for(i = 0; i < 2; i++) { dstHour[i] = srcHour[i]; } } else { if(strHour.length <= 2) { dstHour[0] = strHour; } else if(strHour.length <= 4) { dstHour[0] = strHour.substring(0, strHour.length - 2); dstHour[1] = strHour.substring(strHour.length - 2); } else { return ''; } } var hourLimit = new Array(23, 59); for(i = 0; i < 2; i++) { if(isNaN(dstHour[i])) { return ''; } else if(parseInt(dstHour[i]) < 0 || parseInt(dstHour[i]) > hourLimit[i]) { return ''; } else { dstHour[i] = '00' + dstHour[i]; dstHour[i] = dstHour[i].substring(dstHour[i].length - 2); } } return dstHour.join(key); } //================================================== // checkEmail contrôle si une chaine peut être // syntaxiquement considérée comme une adresse // e-mail, si c'est le cas elle rend la valeur // d'entrée sinon elle rend la chaine vide. //================================================== <!-- <!-- /*function checkEmail(laValeur) { --> <!-- pos = laValeur.indexOf("@"); --> <!-- if (pos == -1) --> <!-- return ""; --> <!-- gauche = laValeur.substring(0 , pos); --> <!-- droite = laValeur.substr(pos + 1); --> <!-- if ( gauche == "" || encodeURIComponent(gauche) != gauche ) --> <!-- return ""; --> <!-- pos = droite.indexOf("."); --> <!-- if (pos == 0) --> <!-- return ""; --> <!-- pos = droite.indexOf(".."); --> <!-- if (pos != -1) --> <!-- return ""; --> <!-- pos = droite.lastIndexOf("."); --> <!-- if (pos == -1) --> <!-- return ""; --> <!-- if (droite.indexOf("@") != -1) --> <!-- return ""; --> <!-- if (encodeURIComponent(droite) != droite) --> <!-- return ""; --> <!-- if ( (pos != (droite.length - 3)) && (pos != (droite.length - 4)) && (pos!=(droite.length-5)) ) --> <!-- return ""; --> <!-- return laValeur; --> <!-- } --> <!-- modifiée vers celle en dessous à cause d'un problème de validation d'email le 24/11/2015 par amb & htu --> <!-- http://u-project2.umanis.com/view.php?id=31724 */--> --> function checkEmail(laValeur) { var re = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,32}(?:\.[a-z]{2,32})?)$/i; if (re.test(laValeur)) return laValeur; else return ""; } //================================================== // checkInteger essaie de convertir une chaine en // un nombre entier; si elle y arrive, elle rend // une chaine qu'est le nombre trouvé reformatté // avec l'éventuel séparateur de milliers. //================================================== function checkInteger(laValeur , sepMil) { var sep=separateurMilliers; var valTxt; var i; var j; var c; var res=""; var neg=0; if (sepMil) sep = sepMil; valTxt = removeLeadingZeros(laValeur); valTxt = myReplace(valTxt, " ", ""); valTxt = myReplace(valTxt, sep, ""); if (valTxt == null || valTxt == '') { valTxt = '0'; } for (i=0 ; i<valTxt.length ; i++) { c = valTxt.substr(i , 1); if (i>0) if (c<"0" || c>"9") return ""; else if ((c<"0" || c>"9") && c!="-") return ""; } nVal = parseInt(valTxt); if (isNaN(nVal)) return ""; valTxt = nVal.toString(); if (valTxt.substr(0 , 1) == "-") { neg = 1; valTxt = valTxt.substr(1); } res=""; for (j=0 , i=valTxt.length-1 ; i>=0 ; i-- , j++) { if (j!=0 && j%3 == 0) res = sep + res; res = valTxt.substr(i , 1) + res; } if (neg == 1) res = "-" + res; return res; } //================================================== // checkFloat essaie de convertir une chaine en // un nombre réel; si elle y arrive, elle rend // une chaine qu'est le nombre trouvé reformatté // avec le séparateur de décimaux et l'éventuel // séparateur de milliers. //================================================== function checkFloat(laValeur , sepDeci, sepMil) { var sep=separateurMilliers; var sepDec=separateurDecimal; var valTxt; var i; var j; var c; var res=""; var neg=0; var pos; var sepDec; if (sepMil) sep = sepMil; if (sepDeci) sepDec = sepDeci; if (laValeur != '0' && laValeur != ('0' + sepDec + '0')) { valTxt = removeLeadingZeros(laValeur); } else { valTxt = laValeur; } valTxt = myReplace(valTxt, " ", ""); valTxt = myReplace(valTxt, sep, ""); valTxt = myReplace(valTxt , sepDec , "."); for (i=0 ; i<valTxt.length ; i++) { c = valTxt.substr(i , 1); if (i>0) if ((c<"0" || c>"9") && c!=".") return ""; else if ((c<"0" || c>"9") && c!="." && c!="-") return ""; } if ( valTxt.indexOf(".") > -1 && valTxt.lastIndexOf(".") != valTxt.indexOf(".") ) return ""; nVal = parseFloat(valTxt); if (isNaN(nVal)) return ""; valTxt = nVal.toString(); if (valTxt.substr(0 , 1) == "-") { neg = 1; valTxt = valTxt.substr(1); } pos = valTxt.indexOf("."); if (pos == -1) { partieEntiere = valTxt; partieDecimale = ""; } else if (pos == 0) { partieEntiere = "0"; partieDecimale = valTxt.substr(1); } else { partieEntiere = valTxt.substr(0, pos); partieDecimale = valTxt.substr(pos+1); } res=""; for (j=0 , i=partieEntiere.length-1 ; i>=0 ; i-- , j++) { if (j!=0 && j%3 == 0) res = sep + res; res = partieEntiere.substr(i , 1) + res; } if (neg == 1) res = "-" + res; if (partieDecimale != "") res = res + sepDec + partieDecimale; return res; } //================================================== // checkString permet d'appliquer un format sur une // chaîne de caractères. Le format est spécifié // dans le second paramètre. Il vaut 'lower', // 'upper', 'capitalize' ou 'remaccents' (to remove accents). //================================================== function checkString(val, op) { if (val == '') { return ''; } if (op.toLowerCase() == 'upper') { return val.toUpperCase(); } else if (op.toLowerCase() == 'lower') { return val.toLowerCase(); } else if (op.toLowerCase() == 'capitalize') { result = val.substring(0,1).toUpperCase(); for (i=1 ; i<val.length ; i++) if (val.substring(i-1, i) == ' ' || val.substring(i-1, i) == '-' || val.substring(i-1, i) == '\\' || val.substring(i-1, i) == '/') result += val.substring(i, i+1).toUpperCase(); else result += val.substring(i, i+1).toLowerCase(); return result; } else if (op.toLowerCase() == 'remaccents') { result = val; result = val; while(result.indexOf('à ') > -1) { result = result.replace('à ', 'a'); } while(result.indexOf('â') > -1) { result = result.replace('â', 'a'); } while(result.indexOf('ä') > -1) { result = result.replace('ä', 'a'); } while(result.indexOf('ç') > -1) { result = result.replace('ç', 'c'); } while(result.indexOf('é') > -1) { result = result.replace('é', 'e'); } while(result.indexOf('è') > -1) { result = result.replace('è', 'e'); } while(result.indexOf('ê') > -1) { result = result.replace('ê', 'e'); } while(result.indexOf('ë') > -1) { result = result.replace('ë', 'e'); } while(result.indexOf('ï') > -1) { result = result.replace('ï', 'i'); } while(result.indexOf('î') > -1) { result = result.replace('î', 'i'); } while(result.indexOf('ô') > -1) { result = result.replace('ô', 'o'); } while(result.indexOf('ö') > -1) { result = result.replace('ö', 'o'); } while(result.indexOf('ù') > -1) { result = result.replace('ù', 'u'); } while(result.indexOf('û') > -1) { result = result.replace('û', 'u'); } while(result.indexOf('ü') > -1) { result = result.replace('ü', 'u'); } return result; } else { return val; } } function checkUrl(val) { if (val == '') { return ''; } if (val.substring(0,7).toLowerCase() == 'http://'.toLowerCase()) { if (val.substring(7,8) !='' ){ return true; }else { return false; } } else if (val.substring(0,6).toLowerCase() == 'ftp://'.toLowerCase()) { if (val.substring(6,7) !='' ){ return true; }else { return false; } } else if (val.substring(0,8).toLowerCase() == 'https://'.toLowerCase()) { if (val.substring(8,9) !='' ){ return true; }else { return false; } } else if (val.substring(0,4).toLowerCase() == 'www.'.toLowerCase()) { if (val.substring(4,5) !='' ){ return true; }else { return false; } } else { return false } } // checkField est la fonction qui regroupe tous les tests function checkField(laValeur , leType , estOblig , format1 , format2) { if (laValeur == "") if (estOblig) return false; else return true; if (leType.toLowerCase() == "date") return checkDate(laValeur , format1 , format2) if (leType.toLowerCase() == "hour") return checkHour(laValeur , format1); if (leType.toLowerCase() == "email") return checkEmail(laValeur); if (leType.toLowerCase() == "integer") return checkInteger(laValeur , format1); if (leType.toLowerCase() == "float") return checkFloat(laValeur , format1 , format2); if (leType.toLowerCase() == "string") return checkString(laValeur , format1); return laValeur; } //================================================== // toSysNum prend en premier paramètre une valeur // numérique en chaine, en second paramètre le // séparateur de décimaux, en 3eme paramètre le // séparateur de milliers; et rend une chaine // prête pour un parse. //================================================== function toSysNum(valeur , sepDeci , sepMil) { var sep=separateurMilliers; var sepDec=separateurDecimal; if (sepMil) sep = sepMil; if (sepDeci) sepDec = sepDeci; var res; res = myReplace(valeur , " " , ""); res = myReplace(res , sep , ""); res = myReplace(res , sepDec , "."); return res; } //================================================== // prepNumsForSubmit prend en premier paramètre le // séparateur de décimaux, en second paramètre le // séparateur de milliers; les paramètres suivants // étant les 'Field' à reformatter. //================================================== function prepNumsForSubmit() { args = prepNumsForSubmit.arguments; sepDec = args[0]; sepMil = args[1]; for (i=2 ; i<args.length ; i++) { fld = args[i]; fldVal = fld.value; fldVal = myReplace(fldVal, " ", ""); fldVal = myReplace(fldVal , sepMil , ""); fldVal = myReplace(fldVal , sepDec , "."); fld.value = fldVal; } } function prepAutoNumsForSubmit(frmName, sepDec, sepMil) { return; } function ctrlNumField(aField, aType , mesg, sepDeci , sepMillier) { if (myReplace(aField.value , " " , "") == "") { aField.value = ""; return true; } var sepMil = separateurMilliers; var sepDec = separateurDecimal; if (sepMillier) sepMil = sepMillier; if (sepDeci) sepDec = sepDeci; var v; if (aType.toLowerCase() == "integer") v = checkField(aField.value, aType, false, sepMil); else v = checkField(aField.value, aType, false, sepDec, sepMil); if (v) { aField.value = v; return true; } if (mesg) { tempStatus(mesg); } aField.value = ''; return false; } function ctrlDateField(aField, mesg, formatIn, formatOut) { if (myReplace(aField.value , " " , "") == "") { aField.value = ""; return true; } var formIn = dateFormatIn; var formOut = dateFormatOut; if (formatIn) { formIn = formatIn; } if (formatOut) { formOut = formatOut; } v = checkField(aField.value, 'date', false, formIn, formOut); if (v) { aField.value = v; return true; } if (mesg) { tempStatus(mesg); } aField.value = ''; return false; } function ctrlHourField(aField, mesg, sep) { if (myReplace(aField.value , " " , "") == "") { aField.value = ""; return true; } var separator = hourSeparator; if (sep) { separator = sep; } v = checkField(aField.value, 'hour', false, separator); if (v) { aField.value = v; return true; } if (mesg) { tempStatus(mesg); } aField.value = ''; return false; } //============================================ // Compare deux dates // parametres : // date1 la partie jour de la première date (par defaut '01/01/1970') // hour1 la partie horaire de la première date (par défaut '00:00') // date2 la partie jour de la deuxième date (par defaut '01/01/1970') // hour2 la partie horaire de la deuxième date (par defaut '00:00') // formatDate le format de la date en entrée (par défaut 'DD/MM/yyyy') // sepHeure le séparateur des heures (par défaut : ) // renvoit le nombre de millisecondes de différence // 0 si (date1, hour1)==(date2, hour2) // >0 si (date1, hour1) > (date2, hour2) // <0 si (date1, hour1) < (date2, hour2) //============================================================= function compareDate(date1, hour1, date2, hour2, formatDate, sepHeure) { fDate = dateFormatOut; sep = hourSeparator; if (formatDate) { fDate = formatDate; } if (sepHeure) { sep = sepHeure; } var d1; var h1; var d2; var h2; if (date1) { d1 = date1; } else { d1 = checkField("01/01/1970", "date", false, dateFormatOut, fDate); } if (hour1) { h1 = hour1; } else { h1 = checkField("00:00", "hour", false, hourSeparator, sep); } if (date2) { d2 = date2; } else { d2 = checkField("01/01/1970", "date", false, dateFormatOut, fDate); } if (hour2) { h2 = hour2; } else { h2 = checkField("00:00", "hour", false, hourSeparator, sep); } //controle s1 = checkHour(h1 , sep); s2 = checkDate(d1, fDate, 'MM/DD/yyyy'); s3 = checkHour( h2 , sep); s4 = checkDate(d2, fDate, 'MM/DD/yyyy'); startTime = new Date(s2.concat(" ").concat(s1)); endTime = new Date(s4.concat(" ").concat(s3)); millidiff = startTime - endTime; return millidiff; } function openCalendar(field, dateFormat) { var found=0; var pos=-1; while (found == 0) { pos++; if (document.forms[pos]) { if (document.forms[pos] == field.form) { found = 1; } } if (pos > 20) { pos = -1; found = 1; } } var curDateStr = ""; var curDate = parseDate((dateFormat ? dateFormat : "dd/MM/yyyy"), field.value); if (curDate != null) { curDateStr = "&calyear=" + curDate[0] + "&calmonth=" + curDate[1]; } var winDateSel = window.open("/galaxie/common/calendar/calendar_popup.jsp?fn=" + field.name + "&fp=" + pos + (dateFormat ? "&df=" + dateFormat : "") + curDateStr, "DateSelector", "menubar=no,toolbar=no,scrollbars=auto,resizable=yes,width=250,height=280"); } function strReplace(pStr, pKey, pValue) { return pStr.split(pKey).join(pValue); } function removeLeadingZeros(inStr) { var res = inStr; while (res.length > 0 && res.substring(0,1) == "0") { res = res.substring(1); } return res; } function parseDate(patern, value) { var yk = "yyyy"; var yp = patern.indexOf(yk); if (yp == -1) { yk = "yyy"; yp = patern.indexOf(yk); } if (yp == -1) { yk = "yy"; yp = patern.indexOf(yk); } var mk = "MM" var mp = patern.indexOf(mk); if (mp == -1) { mk = "M"; mp = patern.indexOf(mk); } var dk = "dd" var dp = patern.indexOf(dk); if (dp == -1) { dk = "d"; dp = patern.indexOf(dk); } if (yp == -1 || mp == -1 || dp == -1) { return null; } var yi=0, mi=0, di=0; if (yp < mp && mp < dp) { yi = 1; mi = 2; di = 3; } else if (mp < yp && yp < dp) { yi = 2; mi = 1; di = 3; } else if (yp < dp && dp < mp) { yi = 1; mi = 3; di = 2; } else if (dp < yp && yp < mp) { yi = 2; mi = 3; di = 1; } else if (mp < dp && dp < yp) { yi = 3; mi = 1; di = 2; } else if (dp < mp && mp < yp) { yi = 3; mi = 2; di = 1; } var strRegExp = patern; strRegExp = strReplace(strRegExp, "\\", "\\\\"); strRegExp = strReplace(strRegExp, "/", "\\/"); strRegExp = strReplace(strRegExp, "*", "\\*"); strRegExp = strReplace(strRegExp, "+", "\\+"); strRegExp = strReplace(strRegExp, "?", "\\?"); strRegExp = strReplace(strRegExp, ".", "\\."); strRegExp = strReplace(strRegExp, dk, "([\\d.]+)"); strRegExp = strReplace(strRegExp, mk, "([\\d.]+)"); strRegExp = strReplace(strRegExp, yk, "([\\d.]+)"); var regexpr, yvt, mvt, dvt; eval("regexpr = /" + strRegExp + "/"); yvt = value.replace(regexpr, "$"+yi); mvt = value.replace(regexpr, "$"+mi); dvt = value.replace(regexpr, "$"+di); if (yvt == value || mvt == value || dvt == value) { return null; } var yv, mv, dv; yv = parseInt(removeLeadingZeros(yvt)); mv = parseInt(removeLeadingZeros(mvt)); dv = parseInt(removeLeadingZeros(dvt)); if (isNaN(dv) || isNaN(mv) || isNaN(yv)) { return null; } return new Array(yv, mv, dv); }
Ms-Dos/Windows
Unix
Write backup
jsp File Browser version 1.2 by
www.vonloesch.de