Spaces:
Runtime error
Runtime error
| jQuery(document).ready(function($) { | |
| "use strict"; | |
| //Contact | |
| $('form.php-email-form').submit(function() { | |
| var f = $(this).find('.form-group'), | |
| ferror = false, | |
| emailExp = /^[^\s()<>@,;:\/]+@\w[\w\.-]+\.[a-z]{2,}$/i; | |
| f.children('input').each(function() { // run all inputs | |
| var i = $(this); // current input | |
| var rule = i.attr('data-rule'); | |
| if (rule !== undefined) { | |
| var ierror = false; // error flag for current input | |
| var pos = rule.indexOf(':', 0); | |
| if (pos >= 0) { | |
| var exp = rule.substr(pos + 1, rule.length); | |
| rule = rule.substr(0, pos); | |
| } else { | |
| rule = rule.substr(pos + 1, rule.length); | |
| } | |
| switch (rule) { | |
| case 'required': | |
| if (i.val() === '') { | |
| ferror = ierror = true; | |
| } | |
| break; | |
| case 'minlen': | |
| if (i.val().length < parseInt(exp)) { | |
| ferror = ierror = true; | |
| } | |
| break; | |
| case 'email': | |
| if (!emailExp.test(i.val())) { | |
| ferror = ierror = true; | |
| } | |
| break; | |
| case 'checked': | |
| if (! i.is(':checked')) { | |
| ferror = ierror = true; | |
| } | |
| break; | |
| case 'regexp': | |
| exp = new RegExp(exp); | |
| if (!exp.test(i.val())) { | |
| ferror = ierror = true; | |
| } | |
| break; | |
| } | |
| i.next('.validate').html((ierror ? (i.attr('data-msg') !== undefined ? i.attr('data-msg') : 'wrong Input') : '')).show('blind'); | |
| } | |
| }); | |
| f.children('textarea').each(function() { // run all inputs | |
| var i = $(this); // current input | |
| var rule = i.attr('data-rule'); | |
| if (rule !== undefined) { | |
| var ierror = false; // error flag for current input | |
| var pos = rule.indexOf(':', 0); | |
| if (pos >= 0) { | |
| var exp = rule.substr(pos + 1, rule.length); | |
| rule = rule.substr(0, pos); | |
| } else { | |
| rule = rule.substr(pos + 1, rule.length); | |
| } | |
| switch (rule) { | |
| case 'required': | |
| if (i.val() === '') { | |
| ferror = ierror = true; | |
| } | |
| break; | |
| case 'minlen': | |
| if (i.val().length < parseInt(exp)) { | |
| ferror = ierror = true; | |
| } | |
| break; | |
| } | |
| i.next('.validate').html((ierror ? (i.attr('data-msg') != undefined ? i.attr('data-msg') : 'wrong Input') : '')).show('blind'); | |
| } | |
| }); | |
| if (ferror) return false; | |
| else var str = $(this).serialize(); | |
| var this_form = $(this); | |
| var action = $(this).attr('action'); | |
| if( ! action ) { | |
| this_form.find('.loading').slideUp(); | |
| this_form.find('.error-message').slideDown().html('The form action property is not set!'); | |
| return false; | |
| } | |
| this_form.find('.sent-message').slideUp(); | |
| this_form.find('.error-message').slideUp(); | |
| this_form.find('.loading').slideDown(); | |
| $.ajax({ | |
| type: "POST", | |
| url: action, | |
| data: str, | |
| success: function(msg) { | |
| if (msg == 'OK') { | |
| this_form.find('.loading').slideUp(); | |
| this_form.find('.sent-message').slideDown(); | |
| this_form.find("input:not(input[type=submit]), textarea").val(''); | |
| } else { | |
| this_form.find('.loading').slideUp(); | |
| this_form.find('.error-message').slideDown().html(msg); | |
| } | |
| } | |
| }); | |
| return false; | |
| }); | |
| }); | |