Bug 14509: Reject invalid passwords
[koha.git] / koha-tmpl / intranet-tmpl / prog / en / js / members.js
1 // this function checks id date is like DD/MM/YYYY
2 function CheckDate(field) {
3 var d = field.value;
4 if (d!=="") {
5       var amin = 1900;
6       var amax = 2100;
7       var date = d.split("/");
8       var ok=1;
9       var msg;
10       if ( (date.length < 2) && (ok==1) ) {
11         msg = MSG_SEPARATOR.format(field.name);
12         alert(msg); ok=0; field.focus();
13         return;
14       }
15       var dd   = date[0];
16       var mm   = date[1];
17       var yyyy = date[2];
18       // checking days
19       if ( ((isNaN(dd))||(dd<1)||(dd>31)) && (ok==1) ) {
20         msg = MSG_INCORRECT_DAY.format(field.name);
21         alert(msg); ok=0; field.focus();
22         return false;
23       }
24       // checking months
25       if ( ((isNaN(mm))||(mm<1)||(mm>12)) && (ok==1) ) {
26         msg = MSG_INCORRECT_MONTH.format(field.name);
27         alert(msg); ok=0; field.focus();
28         return false;
29       }
30       // checking years
31       if ( ((isNaN(yyyy))||(yyyy<amin)||(yyyy>amax)) && (ok==1) ) {
32         msg = MSG_INCORRECT_YEAR.format(field.name);
33         alert(msg); ok=0; field.focus();
34         return false;
35       }
36    }
37 }
38
39 //function test if member is unique and if it's right the member is registred
40 function unique() {
41 var msg1;
42 var msg2;
43 if (  document.form.check_member.value==1){
44     if (document.form.categorycode.value != "I"){
45
46         msg1 += MSG_DUPLICATE_PATRON;
47         alert(msg1);
48     check_form_borrowers(0);
49     document.form.submit();
50
51     }else{
52         msg2 += MSG_DUPLICATE_ORGANIZATION;
53         alert(msg2);
54     check_form_borrowers(0);
55     }
56 }
57 else
58 {
59     document.form.submit();
60 }
61
62 }
63 //end function
64 //function test if date enrooled < date expiry
65 // WARNING: format-specific test.
66 function check_manip_date(status) {
67 if (status=='verify'){
68 // this part of function('verify') is used to check if dateenrolled<date expiry
69 if (document.form.dateenrolled !== '' && document.form.dateexpiry.value !=='') {
70 var myDate1=document.form.dateenrolled.value.split ('/');
71 var myDate2=document.form.dateexpiry.value.split ('/');
72     if ((myDate1[2]>myDate2[2])||(myDate1[2]==myDate2[2] && myDate1[1]>myDate2[1])||(myDate1[2]==myDate2[2] && myDate1[1]>=myDate2[1] && myDate1[0]>=myDate2[0]))
73
74         {
75         document.form.dateenrolled.focus();
76         var msg = MSG_LATE_EXPIRY;
77         alert(msg);
78         }
79     }
80     }
81 }
82 //end function
83
84 function check_password( password ) {
85     if ( password.match(/^\s/) || password.match(/\s$/)) {
86         return false;
87     }
88     return true;
89 }
90
91 // function to test all fields in forms and nav in different forms(1 ,2 or 3)
92 function check_form_borrowers(nav){
93     var statut=0;
94     var message = "";
95     var message_champ="";
96     if (document.form.check_member.value == 1 )
97     {
98         if (document.form_double.answernodouble) {
99             if( (!(document.form_double.answernodouble.checked))){
100                 document.form.nodouble.value=0;
101             } else {
102                 document.form.nodouble.value=1;
103             }
104         }
105     }
106
107     if ( document.form.password.value != document.form.password2.value ){
108             if ( message_champ !== '' ){
109                 message_champ += "\n";
110             }
111             message_champ+= MSG_PASSWORD_MISMATCH;
112             statut=1;
113     }
114
115     if ( ! check_password( document.form.password.value ) ) {
116         message_champ += MSG_PASSWORD_CONTAINS_TRAILING_SPACES;
117         statut = 1;
118     }
119
120     //patrons form to test if you checked no to the question of double
121     if (statut!=1 && document.form.check_member.value > 0 ) {
122         if (!(document.form_double.answernodouble.checked)){
123             message_champ+= MSG_DUPLICATE_SUSPICION;
124             statut=1;
125             document.form.nodouble.value=0;
126         } else {
127             document.form.nodouble.value=1;
128         }
129     }
130
131     if (statut==1){
132         //alert if at least 1 error
133         alert(message+"\n"+message_champ);
134         return false;
135     } else {
136         return true;
137     }
138 }
139
140 function Dopop(link) {
141 // //   var searchstring=document.form.value[i].value;
142     var newin=window.open(link,'popup','width=600,height=400,resizable=no,toolbar=false,scrollbars=no,top');
143 }
144
145 function Dopopguarantor(link) {
146
147     var newin=window.open(link,'popup','width=600,height=400,resizable=no,toolbar=false,scrollbars=yes,top');
148 }
149
150 $(document).ready(function(){
151     if($("#yesdebarred").is(":checked")){
152         $("#debarreduntil").show();
153     } else {
154         $("#debarreduntil").hide();
155     }
156     $("#yesdebarred,#nodebarred").change(function(){
157         if($("#yesdebarred").is(":checked")){
158             $("#debarreduntil").show();
159             $("#datedebarred").focus();
160         } else {
161             $("#debarreduntil").hide();
162         }
163     });
164     var mandatory_fields = $("input[name='BorrowerMandatoryField']").val().split ('|');
165     $(mandatory_fields).each(function(){
166         $("[name='"+this+"']").attr('required', 'required');
167     });
168 });