PageSourceSearch

https://www.lamballe-armor.bzh/lib/lib_formtxt.js

js lamballe-armor.bzh collected 2026-10-02 12:00:07 UTC 8,102 bytes, 213 lines download raw bytes

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.