Ticket #1689: form_check.js.php

File form_check.js.php, 10.9 KB (added by php@…, 6 years ago)
Line 
1<?php
2/* -----------------------------------------------------------------------------------------
3 $Id: form_check.js.php 1296 2005-10-08 17:52:26Z mz $
4
5 XT-Commerce - community made shopping
6 http://www.xt-commerce.com
7
8 Copyright (c) 2003 XT-Commerce
9 -----------------------------------------------------------------------------------------
10 based on:
11 (c) 2000-2001 The Exchange Project (earlier name of osCommerce)
12 (c) 2002-2003 osCommerce(form_check.js.php,v 1.9 2003/05/19); www.oscommerce.com
13 (c) 2003 nextcommerce (form_check.js.php,v 1.3 2003/08/13); www.nextcommerce.org
14
15 Released under the GNU General Public License
16 ---------------------------------------------------------------------------------------*/
17
18?>
19<script type="text/javascript">
20<!--//
21
22 var form = "";
23 var submitted = false;
24 var error = false;
25 var error_message = "";
26 var selected;
27 var submitter = null;
28
29 function submitFunction() {
30 submitter = 1;
31 }
32
33 function check_email(field_name_1, field_name_2, field_size, message_1, message_2) {
34 if (form.elements[field_name_1] && (form.elements[field_name_1].type != "hidden")) {
35 var email_address = form.elements[field_name_1].value;
36 var confirm_email_address = form.elements[field_name_2].value;
37
38 if (email_address == '' || email_address.length < field_size) {
39 error_message = error_message + "* " + message_1 + "\n";
40 error = true;
41 } else if (email_address != confirm_email_address) {
42 error_message = error_message + "* " + message_2 + "\n";
43 error = true;
44 }
45 }
46 }
47
48 function check_input(field_name, field_size, message) {
49 if (form.elements[field_name] && (form.elements[field_name].type != "hidden")) {
50 var field_value = form.elements[field_name].value;
51
52 if (field_value == '' || field_value.length < field_size) {
53 error_message = error_message + "* " + message + "\n";
54 error = true;
55 }
56 }
57 }
58
59 function check_radio(field_name, message) {
60 var isChecked = false;
61
62 if (form.elements[field_name] && (form.elements[field_name].type != "hidden")) {
63 var radio = form.elements[field_name];
64
65 for (var i=0; i<radio.length; i++) {
66 if (radio[i].checked == true) {
67 isChecked = true;
68 break;
69 }
70 }
71
72 if (isChecked == false) {
73 error_message = error_message + "* " + message + "\n";
74 error = true;
75 }
76 }
77 }
78
79 function check_select(field_name, field_default, message) {
80 if (form.elements[field_name] && (form.elements[field_name].type != "hidden")) {
81 var field_value = form.elements[field_name].value;
82
83 if (field_value == field_default) {
84 error_message = error_message + "* " + message + "\n";
85 error = true;
86 }
87 }
88 }
89
90 function check_password(field_name_1, field_name_2, field_size, message_1, message_2) {
91 if (form.elements[field_name_1] && (form.elements[field_name_1].type != "hidden")) {
92 var password = form.elements[field_name_1].value;
93 var confirmation = form.elements[field_name_2].value;
94
95 if (password == '' || password.length < field_size) {
96 error_message = error_message + "* " + message_1 + "\n";
97 error = true;
98 } else if (password != confirmation) {
99 error_message = error_message + "* " + message_2 + "\n";
100 error = true;
101 }
102 }
103 }
104
105// function check_password_new(field_name_1, field_name_2, field_name_3, field_size, message_1, message_2, message_3) {
106 function check_password_new(field_name_1, field_name_2, field_size, message_1, message_2) {
107 if (form.elements[field_name_1] && (form.elements[field_name_1].type != "hidden")) {
108// var password_current = form.elements[field_name_1].value;
109 var password_new = form.elements[field_name_1].value;
110 var password_confirmation = form.elements[field_name_2].value;
111
112// if (password_current == '' || password_current.length < field_size) {
113// error_message = error_message + "* " + message_1 + "\n";
114// error = true;
115// } else if (password_new == '' || password_new.length < field_size) {
116 if (password_new == '' || password_new.length < field_size) {
117// error_message = error_message + "* " + message_2 + "\n";
118 error_message = error_message + "* " + message_1 + "\n";
119 error = true;
120 } else if (password_new != password_confirmation) {
121// error_message = error_message + "* " + message_3 + "\n";
122 error_message = error_message + "* " + message_2 + "\n";
123 error = true;
124 }
125 }
126 }
127
128 function check_form(form_name) {
129 if (submitted == true) {
130 alert(unescape("<?php echo xtc_js_lang(JS_ERROR_SUBMITTED); ?>"));
131 return false;
132 }
133
134 error = false;
135 form = form_name;
136 error_message = unescape("<?php echo xtc_js_lang(JS_ERROR); ?>");
137
138 <?php if (ACCOUNT_GENDER == 'true') { ?>
139 if ($('input[name=gender]').prop("type") == 'radio') {
140 <?php echo ' check_radio("gender", "' . xtc_js_lang(ENTRY_GENDER_ERROR) . '");' . "\n"; ?>
141 } else {
142 check_select("gender", '', "<?php echo xtc_js_lang(ENTRY_GENDER_ERROR); ?>");
143 }
144 <?php } ?>
145
146 check_input("firstname", <?php echo ENTRY_FIRST_NAME_MIN_LENGTH; ?>, "<?php echo xtc_js_lang(ENTRY_FIRST_NAME_ERROR); ?>");
147 check_input("lastname", <?php echo ENTRY_LAST_NAME_MIN_LENGTH; ?>, "<?php echo xtc_js_lang(ENTRY_LAST_NAME_ERROR); ?>");
148
149 <?php if (ACCOUNT_DOB == 'true') echo ' check_input("dob", ' . ENTRY_DOB_MIN_LENGTH . ', "' . xtc_js_lang(ENTRY_DATE_OF_BIRTH_ERROR) . '");' . "\n"; ?>
150
151 check_email("email_address", "confirm_email_address", <?php echo ENTRY_EMAIL_ADDRESS_MIN_LENGTH; ?>, "<?php echo xtc_js_lang(ENTRY_EMAIL_ADDRESS_ERROR); ?>", "<?php echo xtc_js_lang(ENTRY_EMAIL_ERROR_NOT_MATCHING); ?>");
152 check_input("street_address", <?php echo ENTRY_STREET_ADDRESS_MIN_LENGTH; ?>, "<?php echo xtc_js_lang(ENTRY_STREET_ADDRESS_ERROR); ?>");
153 check_input("postcode", <?php echo ENTRY_POSTCODE_MIN_LENGTH; ?>, "<?php echo xtc_js_lang(ENTRY_POST_CODE_ERROR); ?>");
154 check_input("city", <?php echo ENTRY_CITY_MIN_LENGTH; ?>, "<?php echo xtc_js_lang(ENTRY_CITY_ERROR); ?>");
155
156 <?php if (ACCOUNT_STATE == 'true') echo ' check_input("state", ' . ENTRY_STATE_MIN_LENGTH . ', "' . xtc_js_lang(ENTRY_STATE_ERROR) . '");' . "\n"; ?>
157
158 check_select("country", "", "<?php echo xtc_js_lang(ENTRY_COUNTRY_ERROR); ?>");
159 <?php if (ACCOUNT_TELEPHONE_OPTIONAL == 'false') { ?>
160 check_input("telephone", <?php echo ENTRY_TELEPHONE_MIN_LENGTH; ?>, "<?php echo xtc_js_lang(ENTRY_TELEPHONE_NUMBER_ERROR); ?>");
161 <?php } ?>
162 check_password("password", "confirmation", <?php echo ENTRY_PASSWORD_MIN_LENGTH; ?>, "<?php echo xtc_js_lang(ENTRY_PASSWORD_ERROR); ?>", "<?php echo xtc_js_lang(ENTRY_PASSWORD_ERROR_NOT_MATCHING); ?>");
163// check_password_new("password_current", "password_new", "password_confirmation", <?php echo xtc_js_lang(ENTRY_PASSWORD_MIN_LENGTH); ?>, "<?php echo xtc_js_lang(ENTRY_PASSWORD_ERROR); ?>", "<?php echo xtc_js_lang(ENTRY_PASSWORD_NEW_ERROR); ?>", "<?php echo xtc_js_lang(ENTRY_PASSWORD_NEW_ERROR_NOT_MATCHING); ?>");
164 check_password_new("password_new", "password_confirmation", <?php echo xtc_js_lang(ENTRY_PASSWORD_MIN_LENGTH); ?>, "<?php echo xtc_js_lang(ENTRY_PASSWORD_NEW_ERROR); ?>", "<?php echo xtc_js_lang(ENTRY_PASSWORD_NEW_ERROR_NOT_MATCHING); ?>");
165
166 if (error == true) {
167 alert(unescape(error_message));
168 return false;
169 } else {
170 submitted = true;
171 return true;
172 }
173 }
174
175 function check_form_review() {
176 var error = 0;
177 var error_message = unescape("<?php echo xtc_js_lang(JS_ERROR); ?>");
178 var review = document.getElementById("product_reviews_write").review.value;
179 if (review.length < <?php echo REVIEW_TEXT_MIN_LENGTH; ?>) {
180 error_message = error_message + unescape("<?php echo xtc_js_lang(JS_REVIEW_TEXT); ?>");
181 error = 1;
182 }
183 var author = document.getElementById("product_reviews_write").author.value;
184 if (author.length < <?php echo ENTRY_FIRST_NAME_MIN_LENGTH; ?>) {
185 error_message = error_message + unescape("<?php echo xtc_js_lang(JS_REVIEW_AUTHOR); ?>");
186 error = 1;
187 }
188 if (!((document.getElementById("product_reviews_write").rating[0].checked) || (document.getElementById("product_reviews_write").rating[1].checked) || (document.getElementById("product_reviews_write").rating[2].checked) || (document.getElementById("product_reviews_write").rating[3].checked) || (document.getElementById("product_reviews_write").rating[4].checked))) {
189 error_message = error_message + unescape("<?php echo xtc_js_lang(JS_REVIEW_RATING); ?>");
190 error = 1;
191 }
192 if (error == 1) {
193 alert(error_message);
194 return false;
195 } else {
196 return true;
197 }
198 }
199
200 function check_form_search() {
201 var error_message = unescape("<?php echo xtc_js_lang(JS_ERROR); ?>");
202 var error_found = false;
203 var error_field;
204 var keywords = document.getElementById("advanced_search").keywords.value;
205 var pfrom = document.getElementById("advanced_search").pfrom.value;
206 var pto = document.getElementById("advanced_search").pto.value;
207 var pfrom_float;
208 var pto_float;
209 if ( (keywords == '' || keywords.length < 1) && (pfrom == '' || pfrom.length < 1) && (pto == '' || pto.length < 1) ) {
210 error_message = error_message + unescape("<?php echo xtc_js_lang(JS_AT_LEAST_ONE_INPUT); ?>");
211 error_field = document.getElementById("advanced_search").keywords;
212 error_found = true;
213 }
214 if (pfrom.length > 0) {
215 pfrom_float = parseFloat(pfrom);
216 if (isNaN(pfrom_float)) {
217 error_message = error_message + unescape("<?php echo xtc_js_lang(JS_PRICE_FROM_MUST_BE_NUM); ?>");
218 error_field = document.getElementById("advanced_search").pfrom;
219 error_found = true;
220 }
221 } else {
222 pfrom_float = 0;
223 }
224 if (pto.length > 0) {
225 pto_float = parseFloat(pto);
226 if (isNaN(pto_float)) {
227 error_message = error_message + unescape("<?php echo xtc_js_lang(JS_PRICE_TO_MUST_BE_NUM); ?>");
228 error_field = document.getElementById("advanced_search").pto;
229 error_found = true;
230 }
231 } else {
232 pto_float = 0;
233 }
234 if ( (pfrom.length > 0) && (pto.length > 0) ) {
235 if ( (!isNaN(pfrom_float)) && (!isNaN(pto_float)) && (pto_float < pfrom_float) ) {
236 error_message = error_message + unescape("<?php echo xtc_js_lang(JS_PRICE_TO_LESS_THAN_PRICE_FROM); ?>");
237 error_field = document.getElementById("advanced_search").pto;
238 error_found = true;
239 }
240 }
241 if (error_found == true) {
242 alert(error_message);
243 error_field.focus();
244 return false;
245 }
246 }
247
248 function check_form_optional(form_name) {
249 var form = form_name;
250 var firstname = form.elements['firstname'].value;
251 var lastname = form.elements['lastname'].value;
252 var street_address = form.elements['street_address'].value;
253 if (firstname == '' && lastname == '' && street_address == '') {
254 return true;
255 } else {
256 return check_form(form_name);
257 }
258 }
259
260//-->
261</script>