1/*licence/ 2 3Module écrit, supporté par la société Alkante SAS <[email protected]> 4 5Nom du module : Alkanet::Library 6Librairie js et php globale à Alkanet. 7Ce module appartient au framework Alkanet. 8 9Ce logiciel est régi par la licence CeCILL-C soumise au droit français et 10respectant les principes de diffusion des logiciels libres. Vous pouvez 11utiliser, modifier et/ou redistribuer ce programme sous les conditions 12de la licence CeCILL-C telle que diffusée par le CEA, le CNRS et l'INRIA 13sur le site http://www.cecill.info. 14 15En contrepartie de l'accessibilité au code source et des droits de copie, 16de modification et de redistribution accordés par cette licence, il n'est 17offert aux utilisateurs qu'une garantie limitée. Pour les mêmes raisons, 18seule une responsabilité restreinte pèse sur l'auteur du programme, le 19titulaire des droits patrimoniaux et les concédants successifs. 20 21A cet égard l'attention de l'utilisateur est attirée sur les risques 22associés au chargement, à l'utilisation, à la modification et/ou au 23développement et à la reproduction du logiciel par l'utilisateur étant 24donné sa spécificité de logiciel libre, qui peut le rendre complexe à 25manipuler et qui le réserve donc à des développeurs et des professionnels 26avertis possédant des connaissances informatiques approfondies. Les 27utilisateurs sont donc invités à charger et tester l'adéquation du 28logiciel à leurs besoins dans des conditions permettant d'assurer la 29sécurité de leurs systèmes et ou de leurs données et, plus généralement, 30à l'utiliser et l'exploiter dans les mêmes conditions de sécurité. 31 32Le fait que vous puissiez accéder à cet en-tête signifie que vous avez 33pris connaissance de la licence CeCILL-C, et que vous en avez accepté les 34termes. 35 36/licence*/ 37 38String.prototype.isTextAlpha = function() { 39 return new RegExp("^[A-Za-zÃÃÃÃÃÃÃÃÃÃÃà âçèéêëîôùû\\-' ]+$").test(this); 40} 41String.prototype.isTextFileName = function() { 42 return new RegExp("^[0-9a-z_\\-\\.]+$").test(this); 43} 44String.prototype.isTextNum = function() { 45 return new RegExp("^\\d+$").test(this); 46} 47String.prototype.trim = function() { 48 return this.replace(new RegExp("^\\s+|\\s+$"), ''); 49} 50function isFieldEmpty(obj, strMsg) 51{ 52 var strTmp = _gt("Ce champ est obligatoire."); 53 54 if( typeof(strMsg) != 'undefined' ) strTmp = strMsg; 55 56 if( obj.value.trim() == "" ) { 57 alkAlert(strTmp); 58 obj.focus(); 59 return true; 60 } 61 return false; 62} 63function isChaineVide(obj, strMsg) 64{ 65 return isFieldEmpty(obj, strMsg); 66} 67function AlertMessage(Ctrl, strMsg) 68{ 69 alkAlert(strMsg); 70 Ctrl.focus(); 71 return; 72} 73function AlkReplaceSpecialChar(oCtrl) { 74 if( typeof(oCtrl) != "undefined" && 75 typeof(oCtrl.value) != "undefined" ) { 76 var strTexte = new String(oCtrl.value); 77 var strNew = ""; 78 for (j=0; j<strTexte.length; j++) { 79 if( strTexte.charCodeAt(j) == 8217 ) strNew = strNew + "'"; 80 else if( strTexte.charCodeAt(j) == 8364 ) strNew = strNew + "â¬"; 81 else if( strTexte.charCodeAt(j) == 339 ) strNew = strNew + "oe"; 82 else if( strTexte.charCodeAt(j) == 338 ) strNew = strNew + "OE"; 83 else if( strTexte.charCodeAt(j) > 255 ) strNew = strNew + " "; 84 else strNew = strNew + strTexte.charAt(j); 85 } 86 oCtrl.value = strNew; 87 } 88} 89 90function verifMailValid(adresse, strLabel) 91{ 92 var tabAdresse = adresse.split(";"); 93 for(var i=0; i<tabAdresse.length; i++) { 94 adresse = tabAdresse[i].trim(); 95 if ( new RegExp("^[A-Za-z0-9\-_][!$#%&'*+-\\/=^?_`{}|~A-Za-z0-9]*@[A-Za-z0-9\\-_][A-Za-z0-9\\.\\-_]*\\.[A-Za-z0-9\\-_]{2,6}$").test(adresse) && 96 !new RegExp("\\.\\.").test(adresse) && adresse.split("@").length==2 ) 97 continue; 98 99 return _gtf("Le champ %s nécessite une adresse électronique valide.", strLabel)+"\n"+ 100 _gtf("L'adresse '%s' doit être de la forme '[email protected]' où x, y, z sont des chaînes de caractères non vides et sans espace.", adresse); 101 } 102 return ""; 103} 104 105function verifTextNum(strValue, oMin, oMax, strLabel) 106{ 107 reason = ""; 108 var strV = new String(strValue);
109 if( strV.isTextNum() == false ) { 110 reason = _gtf("Le champ %s n'accepte que des chiffres.", strLabel); 111 return reason; 112 } 113 if( oMin != "" && strV.length < oMin ) { 114 reason = ( oMin==oMax 115 ? _ngtf("Le champ %s nécessite %s chiffre", "Le champ %s nécessite %s chiffres", oMin, strLabel, oMin) 116 : _ngtf("Le champ %s nécessite au moins %s chiffre", "Le champ %s nécessite au moins %s chiffres", oMin, strLabel, oMin) ); 117 return reason; 118 } 119 if( oMax != "" && strV.length > oMax ) { 120 reason = ( oMin==oMax 121 ? _ngtf("Le champ %s nécessite %s chiffre", "Le champ %s nécessite %s chiffres", oMax, strLabel, oMax) 122 : _ngtf("Le champ %s nécessite au plus %s chiffre", "Le champ %s nécessite au plus %s chiffres", oMax, strLabel, oMax) ); 123 return reason; 124 } 125 return reason; 126} 127 128function verifTextFileName(strValue, oMin, oMax, strLabel) 129{ 130 reason = ""; 131 var strV = new String(strValue); 132 if( strV.isTextFileName() == false ) { 133 reason = _gtf("Le champ %s n'accepte que des lettres minuscules, des chiffres, le tiret, le souligné et le point.", strLabel); 134 return reason; 135 } 136 if( oMin != "" && strV.length < oMin ) { 137 reason = ( oMin==oMax 138 ? _ngtf("Le champ %s nécessite %s caractère", "Le champ %s nécessite %s caractères", oMin, strLabel, oMin) 139 : _ngtf("Le champ %s nécessite au moins %s caractère", "Le champ %s nécessite au moins %s caractères", oMin, strLabel, oMin) ); 140 return reason; 141 } 142 if( oMax != "" && strV.length > oMax ) { 143 reason = ( oMin==oMax 144 ? _ngtf("Le champ %s nécessite %s caractère", "Le champ %s nécessite %s caractères", oMax, strLabel, oMax) 145 : _ngtf("Le champ %s nécessite au plus %s caractère", "Le champ %s nécessite au plus %s caractères", oMax, strLabel, oMax) ); 146 return reason; 147 } 148 return reason; 149} 150 151function verifTextAlpha(strValue, oMin, oMax, strLabel) 152{ 153 reason = ""; 154 var strV = new String(strValue); 155 if( strV.isTextAlpha() == false ) { 156 reason = _gtf("Le champ %s n'accepte que des lettres, l'apostrophe, le tiret et l'espace.", strLabel); 157 return reason; 158 } 159 if( oMin != "" && strV.length < oMin ) { 160 reason = ( oMin==oMax 161 ? _ngtf("Le champ %s nécessite %s caractère", "Le champ %s nécessite %s caractères", oMin, strLabel, oMin) 162 : _ngtf("Le champ %s nécessite au moins %s caractère", "Le champ %s nécessite au moins %s caractères", oMin, strLabel, oMin) ); 163 return reason; 164 } 165 if( oMax != "" && strV.length > oMax ) { 166 reason = ( oMin==oMax 167 ? _ngtf("Le champ %s nécessite %s caractère", "Le champ %s nécessite %s caractères", oMax, strLabel, oMax) 168 : _ngtf("Le champ %s nécessite au plus %s caractère", "Le champ %s nécessite au plus %s caractères", oMax, strLabel, oMax) ); 169 return reason; 170 } 171 return reason; 172} 173 174function verifTextUrl(strValue, iTypeUrl) 175{ 176 reason = ""; 177 var strV = new String(strValue); 178 179 if(iTypeUrl == 0) { 180 reason = commence_par(strValue, "http://"); 181 } 182 if(iTypeUrl == 1) { 183 reason = commence_par(strValue, "https://"); 184 } 185 if(iTypeUrl == 2) { 186 reason = commence_par(strValue, "ftp://"); 187 } 188 189 return reason; 190} 191 192function commence_par(strValue, strDebut) 193{ 194 var reason = ""; 195 strValue = strValue.toString(); 196 if (strValue.indexOf(strDebut) != 0) 197 reason = _gtf("la valeur doit commencer par %s", strDebut); 198 return reason; 199} 200function validLongueurTextArea(oTextArea, lengthMax, guid) 201{ 202 var nbCar = lengthMax - oTextArea.textLength; 203 var oMsg = document.getElementById("counter_"+guid); 204 if (!oMsg) return; 205 if ( nbCar>=0 ){ 206 oMsg.className = ""; 207 oMsg.innerHTML = "("+_gtf("%s car. restant", nbCar)+")"; 208 } 209 else { 210 oMsg.className = "txtWarning"; 211 oMsg.innerHTML = "("+_gtf("%s car. excédant", Math.abs(nbCar))+")"; 212 } 213}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.