PageSourceSearch

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

js lamballe-armor.bzh collected 2026-10-02 12:00:02 UTC 3,942 bytes, 110 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
38
39function AlertMessageCheck(Ctrl, strMsg)
40{
41  alkAlert(strMsg);
42  return;
43}
44
45function isCheckboxRequire(oForm, oCtrl) {
46  // ensemble de checkbox de même nom (nom avec [])
47  var oListCheck = oForm.elements[oCtrl.name];
48  if ( oListCheck ){
49    if ( oListCheck.length>1 ){
50      var bRes = false;
51      for (var i=0; i<oListCheck.length && !bRes; i++){
52        bRes = bRes || oListCheck[i].checked;
53      }
54      return bRes;
55    }
56    else {
57      return oListCheck.checked;
58    }
59  }
60  
61  var nbElt = oCtrl.value;
62  var bRes = false;
63  for(var i=0; i<nbElt; i++) {
64    var oCB = oForm.elements[oCtrl.name+"_"+i.toString()];
65    bRes = bRes || oCB.checked;
66  }
67  return bRes;
68}
69
70function verifNbCheck(oForm, oCtrl, oMin, oMax, strLabel)
71{
72  var nbCheck = 0;
73  var oListCheck = oForm.elements[oCtrl.name];
74  if ( oListCheck ){
75    if ( oListCheck.length>1 ){
76      for (var i=0; i<oListCheck.length; i++){
77        if ( oListCheck[i].checked )
78          nbCheck++;
79      }
80    }
81    else {
82      if ( oListCheck.checked )
83        nbCheck++;
84    }
85  } else {
86    var nElt = oCtrl.value;
87    for(var i=0; i<nbElt; i++) {
88      var oCB = oForm.elements[oCtrl.name+"_"+i.toString()];
89      if (oCB.checked)
90        nbCheck++;
91    }
92  }
93    
94  var reason = "";
95  if( oMin != "" && nbCheck < oMin ) {
96    reason = ( oMin==oMax
97               ? _ngtf("Le champ %s nécessite que %s case soit cochée", "Le champ %s nécessite que %s cases soient cochées.", oMin, strLabel, oMin)  
98               : _ngtf("Le champ %s nécessite qu'au moins %s case soit cochée", "Le champ %s nécessite qu'au moins %s cases soient cochées.", oMin, strLabel, oMin) ); 
99    return reason;
100  }
101  
102  if( oMax != "" && nbCheck > oMax ) {
103    reason = ( oMin==oMax
104               ? _ngtf("Le champ %s nécessite que %s case soit cochée", "Le champ %s nécessite que %s cases soient cochées.", oMax, strLabel, oMax)  
105               : _ngtf("Le champ %s nécessite qu'au plus %s case soit cochée", "Le champ %s nécessite qu'au plus %s cases soient cochées.", oMax, strLabel, oMax) ); 
106    return reason;    
107  }
108
109  return reason;
110}

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.