Skip to content

Commit 2e03a16

Browse files
committed
Fixed bug that time validation incorrect
1 parent eaf8dc2 commit 2e03a16

File tree

1 file changed

+47
-41
lines changed

1 file changed

+47
-41
lines changed

jquery.formvalidator.js

Lines changed: 47 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,7 @@
178178

179179
/**
180180
* Adds message to error message stack if not already in the message stack
181-
* @param string mess
181+
* @param {String} mess
182182
*/
183183
var addErrorMessage = function(mess) {
184184
if (jQuery.inArray(mess, errorMessages) < 0)
@@ -317,7 +317,7 @@ jQueryFormUtils.defaultBorderColor = null;
317317

318318
/**
319319
* Validate email
320-
* @return boolean
320+
* @return {Boolean}
321321
*/
322322
jQueryFormUtils.validateEmail = function(email) {
323323
// TODO: is this regexp enough for validating email correct?
@@ -327,7 +327,7 @@ jQueryFormUtils.validateEmail = function(email) {
327327

328328
/**
329329
* Validate phone number, at least 7 digits only one hyphen and plus allowed
330-
* @return boolean
330+
* @return {Boolean}
331331
*/
332332
jQueryFormUtils.validatePhoneNumber = function(tele) {
333333
var numPlus = tele.match(/\+/g);
@@ -344,8 +344,8 @@ jQueryFormUtils.validatePhoneNumber = function(tele) {
344344

345345
/**
346346
* Validate that string is a swedish telephone number
347-
* @param number
348-
* @return boolean
347+
* @param {Number}
348+
* @return {Boolean}
349349
*/
350350
jQueryFormUtils.validateSwedishMobileNumber = function(number) {
351351
if (!jQueryFormUtils.validatePhoneNumber(number))
@@ -363,7 +363,7 @@ jQueryFormUtils.validateSwedishMobileNumber = function(number) {
363363

364364
/**
365365
* Is this a valid birth date YYYY-MM-DD
366-
* @return boolean
366+
* @return {Boolean}
367367
*/
368368
jQueryFormUtils.validateBirthdate = function(val) {
369369
if (!this.validateDate(val))
@@ -390,8 +390,8 @@ jQueryFormUtils.validateBirthdate = function(val) {
390390

391391
/**
392392
* Is it a correct date YYYY-MM-DD
393-
* @param string val
394-
* @return bool
393+
* @param {String} val
394+
* @return {Boolean}
395395
*/
396396
jQueryFormUtils.validateDate = function(val) {
397397
// enklast m�jliga...
@@ -413,7 +413,8 @@ jQueryFormUtils.validateDate = function(val) {
413413

414414
/**
415415
* skum fix. är talet 05 eller lägre ger parseInt rätt int annars får man 0 när man kör parseInt?
416-
* @param val
416+
* @param {String} val
417+
* @param {Number}
417418
*/
418419
jQueryFormUtils.parseDateInt = function(val) {
419420
if (val.indexOf('0') == 0)
@@ -423,7 +424,8 @@ jQueryFormUtils.parseDateInt = function(val) {
423424

424425
/**
425426
* Validate swedish security number yyymmddXXXX
426-
* @param securityNumber
427+
* @param {String} securityNumber
428+
* @return {Boolean}
427429
*/
428430
jQueryFormUtils.validateSwedishSecurityNumber = function(securityNumber) {
429431
if (!securityNumber.match(/^(\d{4})(\d{2})(\d{2})(\d{4})$/))
@@ -454,53 +456,53 @@ jQueryFormUtils.validateSwedishSecurityNumber = function(securityNumber) {
454456

455457
/**
456458
* Validate time HH:mm
457-
* @param string time
458-
* @return bool
459+
* @param {String} time
460+
* @return {Boolean}
459461
*/
460462
jQueryFormUtils.validateTime = function(time) {
461463
if (time.match(/^(\d{2}):(\d{2})$/) == null)
462464
return false;
463465
else {
464466
var hours = parseInt(time.split(':')[0]);
465467
var minutes = parseInt(time.split(':')[1]);
466-
if (hours > 24 || minutes > 59)
468+
if((hours > 24 || minutes > 59) || (hours == 24 && minutes > 0))
467469
return false;
468470
}
469471
return true;
470472
};
471473

472474
/**
473475
* Validate float value
474-
* @param string val
475-
* @return bool
476+
* @param {String} val
477+
* @return {Boolean}
476478
*/
477479
jQueryFormUtils.validateFloat = function(val) {
478480
return val.match(/^(\-|)([0-9]+)\.([0-9]+)$/) != null;
479481
};
480482

481483
/**
482484
* Validate that given value is a number
483-
* @param string val
484-
* @return bool
485+
* @param {String} val
486+
* @return {Boolean}
485487
*/
486488
jQueryFormUtils.validateInteger = function(val) {
487489
return val != '' && val.replace(/[0-9]/g, '') == '';
488490
};
489491

490492
/**
491493
* Has month only 30 days?
492-
* @param number m
493-
* @return bool
494+
* @param {Number} m
495+
* @return {Boolean}
494496
*/
495497
jQueryFormUtils.isShortMonth = function(m) {
496498
return (m % 2 == 0 && m < 7) || (m % 2 != 0 & m > 7);
497499
};
498500

499501
/**
500502
* Simple spam check
501-
* @param string val
502-
* @param string classAttr
503-
* @return bool
503+
* @param {String} val
504+
* @param {String} classAttr
505+
* @return {Boolean}
504506
*/
505507
jQueryFormUtils.simpleSpamCheck = function(val, classAttr) {
506508
var answer = classAttr.match(/captcha([0-9a-z]+)/i)[1].replace('captcha', '');
@@ -509,8 +511,8 @@ jQueryFormUtils.simpleSpamCheck = function(val, classAttr) {
509511

510512
/**
511513
* Validate domain name
512-
* @param string val
513-
* @return bool
514+
* @param {String} val
515+
* @return {Boolean}
514516
*/
515517
jQueryFormUtils.validateDomain = function(val) {
516518
val = val.replace('http://', '').replace('www.', '');
@@ -572,11 +574,11 @@ jQueryFormUtils.validateDomain = function(val) {
572574
* Validate the value of given element according to the validation rule
573575
* defined in attribute with given name. Will return true if valid,
574576
* error message otherwise
575-
* @param jQuery el
576-
* @param Object language (jQueryFormUtils.LANG)
577-
* @param string validationRuleAttr
578-
* @param jQuery form
579-
* @return string|true
577+
* @param {jQuery} el
578+
* @param {Object} language (jQueryFormUtils.LANG)
579+
* @param {String} validationRuleAttr
580+
* @param {jQuery} form
581+
* @return {String}|{Boolean}
580582
*/
581583
jQueryFormUtils.validateInput = function(el, language, validationRuleAttr, form) {
582584
var value = jQuery.trim(el.val());
@@ -586,8 +588,8 @@ jQueryFormUtils.validateInput = function(el, language, validationRuleAttr, form)
586588

587589
/**
588590
* <input data-validation="length12" /> => getAttribute($(element).attr('class'), 'length') = 12
589-
* @param string classValue
590-
* @param string attributeName
591+
* @param {String} attrValue
592+
* @param {String} attrName
591593
* @returns integer
592594
*/
593595
var getAttributeInteger = function(attrValue, attrName) {
@@ -702,7 +704,8 @@ jQueryFormUtils.validateInput = function(el, language, validationRuleAttr, form)
702704
};
703705

704706
/**
705-
* Error dialogs
707+
* Error dialogs
708+
* @var {Object}
706709
*/
707710
jQueryFormUtils.LANG = {
708711
errorTitle : 'Form submission failed!',
@@ -729,8 +732,8 @@ jQueryFormUtils.LANG = {
729732

730733
/**
731734
* Validate url
732-
* @param string url
733-
* @return bool
735+
* @param {String} url
736+
* @return {Boolean}
734737
*/
735738
jQueryFormUtils.validateUrl = function(url) {
736739
var urlFilter = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/;
@@ -739,18 +742,21 @@ jQueryFormUtils.validateUrl = function(url) {
739742

740743
/**
741744
* Restrict input length
742-
* @param inputElement Jquery Html object
743-
* @param maxLengthElement jQuery Html Object
745+
* @param {jQuery} inputElement Jquery Html object
746+
* @param {jQuery} maxLengthElement jQuery Html Object
747+
* @return void
744748
*/
745749
jQueryFormUtils.lengthRestriction = function(inputElement, maxLengthElement) {
746750
this.input = inputElement;
747751
this.maxLength = parseInt(maxLengthElement.text());
748752
var self = this;
749753

750754
$(this.input).keyup(function() {
751-
$(this).val($(this).val().substring(0, self.maxLength));
752-
maxLengthElement.text(self.maxLength - $(this).val().length);
753-
}).focus(function() {
754-
$(this).keyup();
755-
}).keyup();
755+
$(this).val($(this).val().substring(0, self.maxLength));
756+
maxLengthElement.text(self.maxLength - $(this).val().length);
757+
})
758+
.focus(function() {
759+
$(this).keyup();
760+
})
761+
.keyup();
756762
};

0 commit comments

Comments
 (0)