/*!
* BootstrapValidator (http://bootstrapvalidator.com)
* The best jQuery plugin to validate form fields. Designed to use with Bootstrap 3
*
* @version v0.5.0, built on 2014-07-14 4:31:02 PM
* @author https://twitter.com/nghuuphuoc
* @copyright (c) 2013 - 2014 Nguyen Huu Phuoc
* @license MIT
*/
(function($){var BootstrapValidator=function(form,options){this.$form=$(form);this.options=$.extend({},$.fn.bootstrapValidator.DEFAULT_OPTIONS,options);this.$invalidFields=$([]);this.$submitButton=null;this.STATUS_NOT_VALIDATED="NOT_VALIDATED";this.STATUS_VALIDATING="VALIDATING";this.STATUS_INVALID="INVALID";this.STATUS_VALID="VALID";var ieVersion=(function(){var v=3,div=document.createElement("div"),a=div.all||[];while(div.innerHTML="",a[0]){}return v>4?v:!v}());var el=document.createElement("div");this._changeEvent=(ieVersion===9||!("oninput" in el))?"keyup":"input";this._submitIfValid=null;this._cacheFields={};this._init()};BootstrapValidator.prototype={constructor:BootstrapValidator,_init:function(){var that=this,options={excluded:this.$form.attr("data-bv-excluded"),trigger:this.$form.attr("data-bv-trigger"),message:this.$form.attr("data-bv-message"),container:this.$form.attr("data-bv-container"),group:this.$form.attr("data-bv-group"),submitButtons:this.$form.attr("data-bv-submitbuttons"),threshold:this.$form.attr("data-bv-threshold"),live:this.$form.attr("data-bv-live"),onSuccess:this.$form.attr("data-bv-onsuccess"),onError:this.$form.attr("data-bv-onerror"),fields:{},feedbackIcons:{valid:this.$form.attr("data-bv-feedbackicons-valid"),invalid:this.$form.attr("data-bv-feedbackicons-invalid"),validating:this.$form.attr("data-bv-feedbackicons-validating")}};this.$form.attr("novalidate","novalidate").addClass(this.options.elementClass).on("submit.bv",function(e){e.preventDefault();that.validate()}).on("click.bv",this.options.submitButtons,function(){that.$submitButton=$(this);that._submitIfValid=true}).find("[name], [data-bv-field]").each(function(){var $field=$(this),field=$field.attr("name")||$field.attr("data-bv-field"),opts=that._parseOptions($field);if(opts){$field.attr("data-bv-field",field);options.fields[field]=$.extend({},opts,options.fields[field])}});this.options=$.extend(true,this.options,options);for(var field in this.options.fields){this._initField(field)}this.$form.trigger($.Event("init.form.bv"),{bv:this,options:this.options});if(this.options.onSuccess){this.$form.on("success.form.bv",function(e){$.fn.bootstrapValidator.helpers.call(that.options.onSuccess,[e])})}if(this.options.onError){this.$form.on("error.form.bv",function(e){$.fn.bootstrapValidator.helpers.call(that.options.onError,[e])})}},_parseOptions:function($field){var field=$field.attr("name")||$field.attr("data-bv-field"),validators={},validator,v,enabled,optionName,optionValue,html5AttrName,html5AttrMap;for(v in $.fn.bootstrapValidator.validators){validator=$.fn.bootstrapValidator.validators[v];enabled=$field.attr("data-bv-"+v.toLowerCase())+"";html5AttrMap=("function"===typeof validator.enableByHtml5)?validator.enableByHtml5($field):null;if((html5AttrMap&&enabled!=="false")||(html5AttrMap!==true&&(""===enabled||"true"===enabled))){validator.html5Attributes=$.extend({},{message:"message",onerror:"onError",onsuccess:"onSuccess"},validator.html5Attributes);validators[v]=$.extend({},html5AttrMap===true?{}:html5AttrMap,validators[v]);for(html5AttrName in validator.html5Attributes){optionName=validator.html5Attributes[html5AttrName];optionValue=$field.attr("data-bv-"+v.toLowerCase()+"-"+html5AttrName);if(optionValue){if("true"===optionValue){optionValue=true}else{if("false"===optionValue){optionValue=false}}validators[v][optionName]=optionValue}}}}var opts={excluded:$field.attr("data-bv-excluded"),feedbackIcons:$field.attr("data-bv-feedbackicons"),trigger:$field.attr("data-bv-trigger"),message:$field.attr("data-bv-message"),container:$field.attr("data-bv-container"),group:$field.attr("data-bv-group"),selector:$field.attr("data-bv-selector"),threshold:$field.attr("data-bv-threshold"),onStatus:$field.attr("data-bv-onstatus"),onSuccess:$field.attr("data-bv-onsuccess"),onError:$field.attr("data-bv-onerror"),validators:validators},emptyOptions=$.isEmptyObject(opts),emptyValidators=$.isEmptyObject(validators);if(!emptyValidators||(!emptyOptions&&this.options.fields&&this.options.fields[field])){opts.validators=validators;return opts}else{return null}},_initField:function(field){var fields=$([]);switch(typeof field){case"object":fields=field;field=field.attr("data-bv-field");break;case"string":fields=this.getFieldElements(field);fields.attr("data-bv-field",field);break;default:break}if(this.options.fields[field]===null||this.options.fields[field].validators===null){return}if(fields.length===0){delete this.options.fields[field];return}var validatorName;for(validatorName in this.options.fields[field].validators){if(!$.fn.bootstrapValidator.validators[validatorName]){delete this.options.fields[field].validators[validatorName]}}if(this.options.fields[field].enabled===null){this.options.fields[field].enabled=true}var that=this,total=fields.length,type=fields.attr("type"),updateAll=(total===1)||("radio"===type)||("checkbox"===type),event=("radio"===type||"checkbox"===type||"file"===type||"SELECT"===fields.eq(0).get(0).tagName)?"change":this._changeEvent,trigger=(this.options.fields[field].trigger||this.options.trigger||event).split(" "),events=$.map(trigger,function(item){return item+".update.bv"}).join(" ");for(var i=0;i").css("display","none").addClass("help-block").attr("data-bv-validator",validatorName).attr("data-bv-for",field).attr("data-bv-result",this.STATUS_NOT_VALIDATED).html(this._getMessage(field,validatorName)).appendTo($message)}if(this.options.fields[field].validators[validatorName].onSuccess){$field.on("success.validator.bv",function(e,data){$.fn.bootstrapValidator.helpers.call(that.options.fields[field].validators[validatorName].onSuccess,[e,data])})}if(this.options.fields[field].validators[validatorName].onError){$field.on("error.validator.bv",function(e,data){$.fn.bootstrapValidator.helpers.call(that.options.fields[field].validators[validatorName].onError,[e,data])})}}if(this.options.fields[field].feedbackIcons!==false&&this.options.fields[field].feedbackIcons!=="false"&&this.options.feedbackIcons&&this.options.feedbackIcons.validating&&this.options.feedbackIcons.invalid&&this.options.feedbackIcons.valid&&(!updateAll||i===total-1)){$parent.removeClass("has-success").removeClass("has-error").addClass("has-feedback");var $icon=$("").css("display","none").addClass("form-control-feedback").attr("data-bv-icon-for",field).insertAfter(("checkbox"===type||"radio"===type)?$field.parent():$field);if($parent.find("label").length===0){$icon.css("top",0)}if($parent.find(".input-group").length!==0){$icon.css({top:0,"z-index":100}).insertAfter($parent.find(".input-group").eq(0))}}}if(this.options.fields[field].onSuccess){fields.on("success.field.bv",function(e,data){$.fn.bootstrapValidator.helpers.call(that.options.fields[field].onSuccess,[e,data])})}if(this.options.fields[field].onError){fields.on("error.field.bv",function(e,data){$.fn.bootstrapValidator.helpers.call(that.options.fields[field].onError,[e,data])})}if(this.options.fields[field].onStatus){fields.on("status.field.bv",function(e,data){$.fn.bootstrapValidator.helpers.call(that.options.fields[field].onStatus,[e,data])})}events=$.map(trigger,function(item){return item+".live.bv"}).join(" ");switch(this.options.live){case"submitted":break;case"disabled":fields.off(events);break;case"enabled":default:fields.off(events).on(events,function(){if(that._exceedThreshold($(this))){that.validateField($(this))}});break}fields.trigger($.Event("init.field.bv"),{bv:this,field:field,element:fields})},_getMessage:function(field,validatorName){if(!this.options.fields[field]||!$.fn.bootstrapValidator.validators[validatorName]||!this.options.fields[field].validators||!this.options.fields[field].validators[validatorName]){return""}var options=this.options.fields[field].validators[validatorName];switch(true){case (!!options.message):return options.message;case (!!this.options.fields[field].message):return this.options.fields[field].message;case (!!$.fn.bootstrapValidator.i18n[validatorName]):return $.fn.bootstrapValidator.i18n[validatorName]["default"];default:return this.options.message}},_getMessageContainer:function($field,group){var $parent=$field.parent();if($parent.is(group)){return $parent}var cssClasses=$parent.attr("class");if(!cssClasses){return this._getMessageContainer($parent,group)}cssClasses=cssClasses.split(" ");var n=cssClasses.length;for(var i=0;i=threshold)},_onError:function(e){if(e.isDefaultPrevented()){return}if("submitted"===this.options.live){this.options.live="enabled";var that=this;for(var field in this.options.fields){(function(f){var fields=that.getFieldElements(f);if(fields.length){var type=$(fields[0]).attr("type"),event=("radio"===type||"checkbox"===type||"file"===type||"SELECT"===$(fields[0]).get(0).tagName)?"change":that._changeEvent,trigger=that.options.fields[field].trigger||that.options.trigger||event,events=$.map(trigger.split(" "),function(item){return item+".live.bv"}).join(" ");fields.off(events).on(events,function(){if(that._exceedThreshold($(this))){that.validateField($(this))}})}})(field)}}var $invalidField=this.$invalidFields.eq(0);if($invalidField){var $tabPane=$invalidField.parents(".tab-pane"),tabId;if($tabPane&&(tabId=$tabPane.attr("id"))){$('a[href="#'+tabId+'"][data-toggle="tab"]').tab("show")}$invalidField.focus()}},_onSuccess:function(e){if(e.isDefaultPrevented()){return}this.disableSubmitButtons(true).defaultSubmit()},_onFieldValidated:function($field,validatorName){var field=$field.attr("data-bv-field"),validators=this.options.fields[field].validators,counter={},numValidators=0,data={bv:this,field:field,element:$field,validator:validatorName};if(validatorName){switch($field.data("bv.result."+validatorName)){case this.STATUS_INVALID:$field.trigger($.Event("error.validator.bv"),data);break;case this.STATUS_VALID:$field.trigger($.Event("success.validator.bv"),data);break;default:break}}counter[this.STATUS_NOT_VALIDATED]=0;counter[this.STATUS_VALIDATING]=0;counter[this.STATUS_INVALID]=0;counter[this.STATUS_VALID]=0;for(var v in validators){if(validators[v].enabled===false){continue}numValidators++;var result=$field.data("bv.result."+v);if(result){counter[result]++}}if(counter[this.STATUS_VALID]===numValidators){this.$invalidFields=this.$invalidFields.not($field);$field.trigger($.Event("success.field.bv"),data)}else{if(counter[this.STATUS_NOT_VALIDATED]===0&&counter[this.STATUS_VALIDATING]===0&&counter[this.STATUS_INVALID]>0){this.$invalidFields=this.$invalidFields.add($field);$field.trigger($.Event("error.field.bv"),data)}}},getFieldElements:function(field){if(!this._cacheFields[field]){this._cacheFields[field]=(this.options.fields[field]&&this.options.fields[field].selector)?$(this.options.fields[field].selector):this.$form.find('[name="'+field+'"]')}return this._cacheFields[field]},disableSubmitButtons:function(disabled){if(!disabled){this.$form.find(this.options.submitButtons).removeAttr("disabled")}else{if(this.options.live!=="disabled"){this.$form.find(this.options.submitButtons).attr("disabled","disabled")}}return this},validate:function(){if(!this.options.fields){return this}this.disableSubmitButtons(true);for(var field in this.options.fields){this.validateField(field)}this._submit();return this},validateField:function(field){var fields=$([]);switch(typeof field){case"object":fields=field;field=field.attr("data-bv-field");break;case"string":fields=this.getFieldElements(field);break;default:break}if(this.options.fields[field]&&this.options.fields[field].enabled===false){return this}var that=this,type=fields.attr("type"),total=("radio"===type||"checkbox"===type)?1:fields.length,updateAll=("radio"===type||"checkbox"===type),validators=this.options.fields[field].validators,validatorName,validateResult;for(var i=0;i").attr("type","hidden").attr("data-bv-submit-hidden","").attr("name",this.$submitButton.attr("name")).val(this.$submitButton.val()).appendTo(this.$form)}this.$form.off("submit.bv").submit()},getInvalidFields:function(){return this.$invalidFields},getSubmitButton:function(){return this.$submitButton},getMessages:function(field,validator){var that=this,messages=[],$fields=$([]);switch(true){case (field&&"object"===typeof field):$fields=field;break;case (field&&"string"===typeof field):var f=this.getFieldElements(field);if(f.length>0){var type=f.attr("type");$fields=("radio"===type||"checkbox"===type)?f.eq(0):f}break;default:$fields=this.$invalidFields;break}var filter=validator?'[data-bv-validator="'+validator+'"]':"";$fields.each(function(){messages=messages.concat($(this).data("bv.messages").find('.help-block[data-bv-for="'+$(this).attr("data-bv-field")+'"][data-bv-result="'+that.STATUS_INVALID+'"]'+filter).map(function(){var v=$(this).attr("data-bv-validator"),f=$(this).attr("data-bv-for");return(that.options.fields[f].validators[v].enabled===false)?"":$(this).html()}).get())});return messages},getOptions:function(field,validator,option){if(!field){return this.options}if("object"===typeof field){field=field.attr("data-bv-field")}if(!this.options.fields[field]){return null}var options=this.options.fields[field];if(!validator){return options}if(!options.validators||!options.validators[validator]){return null}return option?options.validators[validator][option]:options.validators[validator]},updateOption:function(field,validator,option,value){if("object"===typeof field){field=field.attr("data-bv-field")}if(this.options.fields[field]&&this.options.fields[field].validators[validator]){this.options.fields[field].validators[validator][option]=value;this.updateStatus(field,this.STATUS_NOT_VALIDATED,validator)}return this},addField:function(field,options){var fields=$([]);switch(typeof field){case"object":fields=field;field=field.attr("data-bv-field")||field.attr("name");break;case"string":delete this._cacheFields[field];fields=this.getFieldElements(field);break;default:break}fields.attr("data-bv-field",field);var type=fields.attr("type"),total=("radio"===type||"checkbox"===type)?1:fields.length;for(var i=0;i9999||month<=0||month>12){return false}var numDays=[31,28,31,30,31,30,31,31,30,31,30,31];if(year%400===0||(year%100!==0&&year%4===0)){numDays[1]=29}if(day<=0||day>numDays[month-1]){return false}if(notInFuture===true){var currentDate=new Date(),currentYear=currentDate.getFullYear(),currentMonth=currentDate.getMonth(),currentDay=currentDate.getDate();return(year0)},mod11And10:function(value){var check=5,length=value.length;for(var i=0;i=min&&value<=max,message:$.fn.bootstrapValidator.helpers.format(options.message||$.fn.bootstrapValidator.i18n.between["default"],[min,max])}:{valid:value>min&&valueparseInt(max,10))){isValid=false}switch(true){case (!!min&&!!max):message=$.fn.bootstrapValidator.helpers.format(options.message||$.fn.bootstrapValidator.i18n.choice.between,[parseInt(min,10),parseInt(max,10)]);break;case (!!min):message=$.fn.bootstrapValidator.helpers.format(options.message||$.fn.bootstrapValidator.i18n.choice.less,parseInt(min,10));break;case (!!max):message=$.fn.bootstrapValidator.helpers.format(options.message||$.fn.bootstrapValidator.i18n.choice.more,parseInt(max,10));break;default:break}return{valid:isValid,message:message}}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.creditCard=$.extend($.fn.bootstrapValidator.i18n.creditCard||{},{"default":"Please enter a valid credit card number"});$.fn.bootstrapValidator.validators.creditCard={validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}if(/[^0-9-\s]+/.test(value)){return false}value=value.replace(/\D/g,"");if(!$.fn.bootstrapValidator.helpers.luhn(value)){return false}var cards={AMERICAN_EXPRESS:{length:[15],prefix:["34","37"]},DINERS_CLUB:{length:[14],prefix:["300","301","302","303","304","305","36"]},DINERS_CLUB_US:{length:[16],prefix:["54","55"]},DISCOVER:{length:[16],prefix:["6011","622126","622127","622128","622129","62213","62214","62215","62216","62217","62218","62219","6222","6223","6224","6225","6226","6227","6228","62290","62291","622920","622921","622922","622923","622924","622925","644","645","646","647","648","649","65"]},JCB:{length:[16],prefix:["3528","3529","353","354","355","356","357","358"]},LASER:{length:[16,17,18,19],prefix:["6304","6706","6771","6709"]},MAESTRO:{length:[12,13,14,15,16,17,18,19],prefix:["5018","5020","5038","6304","6759","6761","6762","6763","6764","6765","6766"]},MASTERCARD:{length:[16],prefix:["51","52","53","54","55"]},SOLO:{length:[16,18,19],prefix:["6334","6767"]},UNIONPAY:{length:[16,17,18,19],prefix:["622126","622127","622128","622129","62213","62214","62215","62216","62217","62218","62219","6222","6223","6224","6225","6226","6227","6228","62290","62291","622920","622921","622922","622923","622924","622925"]},VISA:{length:[16],prefix:["4"]}};var type,i;for(type in cards){for(i in cards[type].prefix){if(value.substr(0,cards[type].prefix[i].length)===cards[type].prefix[i]&&$.inArray(value.length,cards[type].length)!==-1){return true}}}return false}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.cusip=$.extend($.fn.bootstrapValidator.i18n.cusip||{},{"default":"Please enter a valid CUSIP number"});$.fn.bootstrapValidator.validators.cusip={validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}value=value.toUpperCase();if(!/^[0-9A-Z]{9}$/.test(value)){return false}var converted=$.map(value.split(""),function(item){var code=item.charCodeAt(0);return(code>="A".charCodeAt(0)&&code<="Z".charCodeAt(0))?(code-"A".charCodeAt(0)+10):item}),length=converted.length,sum=0;for(var i=0;i9){num-=9}sum+=num}sum=(10-(sum%10))%10;return sum===converted[length-1]}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.cvv=$.extend($.fn.bootstrapValidator.i18n.cvv||{},{"default":"Please enter a valid CVV number"});$.fn.bootstrapValidator.validators.cvv={html5Attributes:{message:"message",ccfield:"creditCardField"},validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}if(!/^[0-9]{3,4}$/.test(value)){return false}if(!options.creditCardField){return true}var creditCard=validator.getFieldElements(options.creditCardField).val();if(creditCard===""){return true}creditCard=creditCard.replace(/\D/g,"");var cards={AMERICAN_EXPRESS:{length:[15],prefix:["34","37"]},DINERS_CLUB:{length:[14],prefix:["300","301","302","303","304","305","36"]},DINERS_CLUB_US:{length:[16],prefix:["54","55"]},DISCOVER:{length:[16],prefix:["6011","622126","622127","622128","622129","62213","62214","62215","62216","62217","62218","62219","6222","6223","6224","6225","6226","6227","6228","62290","62291","622920","622921","622922","622923","622924","622925","644","645","646","647","648","649","65"]},JCB:{length:[16],prefix:["3528","3529","353","354","355","356","357","358"]},LASER:{length:[16,17,18,19],prefix:["6304","6706","6771","6709"]},MAESTRO:{length:[12,13,14,15,16,17,18,19],prefix:["5018","5020","5038","6304","6759","6761","6762","6763","6764","6765","6766"]},MASTERCARD:{length:[16],prefix:["51","52","53","54","55"]},SOLO:{length:[16,18,19],prefix:["6334","6767"]},UNIONPAY:{length:[16,17,18,19],prefix:["622126","622127","622128","622129","62213","62214","62215","62216","62217","62218","62219","6222","6223","6224","6225","6226","6227","6228","62290","62291","622920","622921","622922","622923","622924","622925"]},VISA:{length:[16],prefix:["4"]}};var type,i,creditCardType=null;for(type in cards){for(i in cards[type].prefix){if(creditCard.substr(0,cards[type].prefix[i].length)===cards[type].prefix[i]&&$.inArray(creditCard.length,cards[type].length)!==-1){creditCardType=type;break}}}return(creditCardType===null)?false:(("AMERICAN_EXPRESS"===creditCardType)?(value.length===4):(value.length===3))}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.date=$.extend($.fn.bootstrapValidator.i18n.date||{},{"default":"Please enter a valid date"});$.fn.bootstrapValidator.validators.date={html5Attributes:{message:"message",format:"format",separator:"separator"},validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}options.format=options.format||"MM/DD/YYYY";var formats=options.format.split(" "),dateFormat=formats[0],timeFormat=(formats.length>1)?formats[1]:null,amOrPm=(formats.length>2)?formats[2]:null,sections=value.split(" "),date=sections[0],time=(sections.length>1)?sections[1]:null;if(formats.length!==sections.length){return false}var separator=options.separator;if(!separator){separator=(date.indexOf("/")!==-1)?"/":((date.indexOf("-")!==-1)?"-":null)}if(separator===null||date.indexOf(separator)===-1){return false}date=date.split(separator);dateFormat=dateFormat.split(separator);if(date.length!==dateFormat.length){return false}var year=date[$.inArray("YYYY",dateFormat)],month=date[$.inArray("MM",dateFormat)],day=date[$.inArray("DD",dateFormat)];if(!year||!month||!day){return false}var minutes=null,hours=null,seconds=null;if(timeFormat){timeFormat=timeFormat.split(":");time=time.split(":");if(timeFormat.length!==time.length){return false}hours=time.length>0?time[0]:null;minutes=time.length>1?time[1]:null;seconds=time.length>2?time[2]:null;if(seconds){seconds=parseInt(seconds,10);if(isNaN(seconds)||seconds<0||seconds>60){return false}}if(hours){hours=parseInt(hours,10);if(isNaN(hours)||hours<0||hours>=24||(amOrPm&&hours>12)){return false}}if(minutes){minutes=parseInt(minutes,10);if(isNaN(minutes)||minutes<0||minutes>59){return false}}}return $.fn.bootstrapValidator.helpers.date(year,month,day)}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.different=$.extend($.fn.bootstrapValidator.i18n.different||{},{"default":"Please enter a different value"});$.fn.bootstrapValidator.validators.different={html5Attributes:{message:"message",field:"field"},validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}var compareWith=validator.getFieldElements(options.field);if(compareWith===null){return true}if(value!==compareWith.val()){validator.updateStatus(options.field,validator.STATUS_VALID,"different");return true}else{return false}}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.digits=$.extend($.fn.bootstrapValidator.i18n.digits||{},{"default":"Please enter only digits"});$.fn.bootstrapValidator.validators.digits={validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}return/^\d+$/.test(value)}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.ean=$.extend($.fn.bootstrapValidator.i18n.ean||{},{"default":"Please enter a valid EAN number"});$.fn.bootstrapValidator.validators.ean={validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}if(!/^(\d{8}|\d{12}|\d{13})$/.test(value)){return false}var length=value.length,sum=0,weight=(length===8)?[3,1]:[1,3];for(var i=0;i()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;return emailRegExp.test(value)}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.file=$.extend($.fn.bootstrapValidator.i18n.file||{},{"default":"Please choose a valid file"});$.fn.bootstrapValidator.validators.file={html5Attributes:{extension:"extension",maxsize:"maxSize",message:"message",type:"type"},validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}var ext,extensions=options.extension?options.extension.toLowerCase().split(","):null,types=options.type?options.type.toLowerCase().split(","):null,html5=(window.File&&window.FileList&&window.FileReader);if(html5){var files=$field.get(0).files,total=files.length;for(var i=0;iparseInt(options.maxSize,10)){return false}ext=files[i].name.substr(files[i].name.lastIndexOf(".")+1);if(extensions&&$.inArray(ext.toLowerCase(),extensions)===-1){return false}if(types&&$.inArray(files[i].type.toLowerCase(),types)===-1){return false}}}else{ext=value.substr(value.lastIndexOf(".")+1);if(extensions&&$.inArray(ext.toLowerCase(),extensions)===-1){return false}}return true}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.greaterThan=$.extend($.fn.bootstrapValidator.i18n.greaterThan||{},{"default":"Please enter a value greater than or equal to %s",notInclusive:"Please enter a value greater than %s"});$.fn.bootstrapValidator.validators.greaterThan={html5Attributes:{message:"message",value:"value",inclusive:"inclusive"},enableByHtml5:function($field){var min=$field.attr("min");if(min){return{value:min}}return false},validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}var compareTo=$.isNumeric(options.value)?options.value:validator.getDynamicOption($field,options.value);value=parseFloat(value);return(options.inclusive===true||options.inclusive===undefined)?{valid:value>=compareTo,message:$.fn.bootstrapValidator.helpers.format(options.message||$.fn.bootstrapValidator.i18n.greaterThan["default"],compareTo)}:{valid:value>compareTo,message:$.fn.bootstrapValidator.helpers.format(options.message||$.fn.bootstrapValidator.i18n.greaterThan.notInclusive,compareTo)}}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.grid=$.extend($.fn.bootstrapValidator.i18n.grid||{},{"default":"Please enter a valid GRId number"});$.fn.bootstrapValidator.validators.grid={validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}value=value.toUpperCase();if(!/^[GRID:]*([0-9A-Z]{2})[-\s]*([0-9A-Z]{5})[-\s]*([0-9A-Z]{10})[-\s]*([0-9A-Z]{1})$/g.test(value)){return false}value=value.replace(/\s/g,"").replace(/-/g,"");if("GRID:"===value.substr(0,5)){value=value.substr(5)}return $.fn.bootstrapValidator.helpers.mod37And36(value)}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.hex=$.extend($.fn.bootstrapValidator.i18n.hex||{},{"default":"Please enter a valid hexadecimal number"});$.fn.bootstrapValidator.validators.hex={validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}return/^[0-9a-fA-F]+$/.test(value)}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.hexColor=$.extend($.fn.bootstrapValidator.i18n.hexColor||{},{"default":"Please enter a valid hex color"});$.fn.bootstrapValidator.validators.hexColor={enableByHtml5:function($field){return("color"===$field.attr("type"))},validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}return/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(value)}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.iban=$.extend($.fn.bootstrapValidator.i18n.iban||{},{"default":"Please enter a valid IBAN number",countryNotSupported:"The country code %s is not supported",country:"Please enter a valid IBAN number in %s",countries:{AD:"Andorra",AE:"United Arab Emirates",AL:"Albania",AO:"Angola",AT:"Austria",AZ:"Azerbaijan",BA:"Bosnia and Herzegovina",BE:"Belgium",BF:"Burkina Faso",BG:"Bulgaria",BH:"Bahrain",BI:"Burundi",BJ:"Benin",BR:"Brazil",CH:"Switzerland",CI:"Ivory Coast",CM:"Cameroon",CR:"Costa Rica",CV:"Cape Verde",CY:"Cyprus",CZ:"Czech Republic",DE:"Germany",DK:"Denmark",DO:"Dominican Republic",DZ:"Algeria",EE:"Estonia",ES:"Spain",FI:"Finland",FO:"Faroe Islands",FR:"France",GB:"United Kingdom",GE:"Georgia",GI:"Gibraltar",GL:"Greenland",GR:"Greece",GT:"Guatemala",HR:"Croatia",HU:"Hungary",IE:"Ireland",IL:"Israel",IR:"Iran",IS:"Iceland",IT:"Italy",JO:"Jordan",KW:"Kuwait",KZ:"Kazakhstan",LB:"Lebanon",LI:"Liechtenstein",LT:"Lithuania",LU:"Luxembourg",LV:"Latvia",MC:"Monaco",MD:"Moldova",ME:"Montenegro",MG:"Madagascar",MK:"Macedonia",ML:"Mali",MR:"Mauritania",MT:"Malta",MU:"Mauritius",MZ:"Mozambique",NL:"Netherlands",NO:"Norway",PK:"Pakistan",PL:"Poland",PS:"Palestinian",PT:"Portugal",QA:"Qatar",RO:"Romania",RS:"Serbia",SA:"Saudi Arabia",SE:"Sweden",SI:"Slovenia",SK:"Slovakia",SM:"San Marino",SN:"Senegal",TN:"Tunisia",TR:"Turkey",VG:"Virgin Islands, British"}});$.fn.bootstrapValidator.validators.iban={html5Attributes:{message:"message",country:"country"},REGEX:{AD:"AD[0-9]{2}[0-9]{4}[0-9]{4}[A-Z0-9]{12}",AE:"AE[0-9]{2}[0-9]{3}[0-9]{16}",AL:"AL[0-9]{2}[0-9]{8}[A-Z0-9]{16}",AO:"AO[0-9]{2}[0-9]{21}",AT:"AT[0-9]{2}[0-9]{5}[0-9]{11}",AZ:"AZ[0-9]{2}[A-Z]{4}[A-Z0-9]{20}",BA:"BA[0-9]{2}[0-9]{3}[0-9]{3}[0-9]{8}[0-9]{2}",BE:"BE[0-9]{2}[0-9]{3}[0-9]{7}[0-9]{2}",BF:"BF[0-9]{2}[0-9]{23}",BG:"BG[0-9]{2}[A-Z]{4}[0-9]{4}[0-9]{2}[A-Z0-9]{8}",BH:"BH[0-9]{2}[A-Z]{4}[A-Z0-9]{14}",BI:"BI[0-9]{2}[0-9]{12}",BJ:"BJ[0-9]{2}[A-Z]{1}[0-9]{23}",BR:"BR[0-9]{2}[0-9]{8}[0-9]{5}[0-9]{10}[A-Z][A-Z0-9]",CH:"CH[0-9]{2}[0-9]{5}[A-Z0-9]{12}",CI:"CI[0-9]{2}[A-Z]{1}[0-9]{23}",CM:"CM[0-9]{2}[0-9]{23}",CR:"CR[0-9]{2}[0-9]{3}[0-9]{14}",CV:"CV[0-9]{2}[0-9]{21}",CY:"CY[0-9]{2}[0-9]{3}[0-9]{5}[A-Z0-9]{16}",CZ:"CZ[0-9]{2}[0-9]{20}",DE:"DE[0-9]{2}[0-9]{8}[0-9]{10}",DK:"DK[0-9]{2}[0-9]{14}",DO:"DO[0-9]{2}[A-Z0-9]{4}[0-9]{20}",DZ:"DZ[0-9]{2}[0-9]{20}",EE:"EE[0-9]{2}[0-9]{2}[0-9]{2}[0-9]{11}[0-9]{1}",ES:"ES[0-9]{2}[0-9]{4}[0-9]{4}[0-9]{1}[0-9]{1}[0-9]{10}",FI:"FI[0-9]{2}[0-9]{6}[0-9]{7}[0-9]{1}",FO:"FO[0-9]{2}[0-9]{4}[0-9]{9}[0-9]{1}",FR:"FR[0-9]{2}[0-9]{5}[0-9]{5}[A-Z0-9]{11}[0-9]{2}",GB:"GB[0-9]{2}[A-Z]{4}[0-9]{6}[0-9]{8}",GE:"GE[0-9]{2}[A-Z]{2}[0-9]{16}",GI:"GI[0-9]{2}[A-Z]{4}[A-Z0-9]{15}",GL:"GL[0-9]{2}[0-9]{4}[0-9]{9}[0-9]{1}",GR:"GR[0-9]{2}[0-9]{3}[0-9]{4}[A-Z0-9]{16}",GT:"GT[0-9]{2}[A-Z0-9]{4}[A-Z0-9]{20}",HR:"HR[0-9]{2}[0-9]{7}[0-9]{10}",HU:"HU[0-9]{2}[0-9]{3}[0-9]{4}[0-9]{1}[0-9]{15}[0-9]{1}",IE:"IE[0-9]{2}[A-Z]{4}[0-9]{6}[0-9]{8}",IL:"IL[0-9]{2}[0-9]{3}[0-9]{3}[0-9]{13}",IR:"IR[0-9]{2}[0-9]{22}",IS:"IS[0-9]{2}[0-9]{4}[0-9]{2}[0-9]{6}[0-9]{10}",IT:"IT[0-9]{2}[A-Z]{1}[0-9]{5}[0-9]{5}[A-Z0-9]{12}",JO:"JO[0-9]{2}[A-Z]{4}[0-9]{4}[0]{8}[A-Z0-9]{10}",KW:"KW[0-9]{2}[A-Z]{4}[0-9]{22}",KZ:"KZ[0-9]{2}[0-9]{3}[A-Z0-9]{13}",LB:"LB[0-9]{2}[0-9]{4}[A-Z0-9]{20}",LI:"LI[0-9]{2}[0-9]{5}[A-Z0-9]{12}",LT:"LT[0-9]{2}[0-9]{5}[0-9]{11}",LU:"LU[0-9]{2}[0-9]{3}[A-Z0-9]{13}",LV:"LV[0-9]{2}[A-Z]{4}[A-Z0-9]{13}",MC:"MC[0-9]{2}[0-9]{5}[0-9]{5}[A-Z0-9]{11}[0-9]{2}",MD:"MD[0-9]{2}[A-Z0-9]{20}",ME:"ME[0-9]{2}[0-9]{3}[0-9]{13}[0-9]{2}",MG:"MG[0-9]{2}[0-9]{23}",MK:"MK[0-9]{2}[0-9]{3}[A-Z0-9]{10}[0-9]{2}",ML:"ML[0-9]{2}[A-Z]{1}[0-9]{23}",MR:"MR13[0-9]{5}[0-9]{5}[0-9]{11}[0-9]{2}",MT:"MT[0-9]{2}[A-Z]{4}[0-9]{5}[A-Z0-9]{18}",MU:"MU[0-9]{2}[A-Z]{4}[0-9]{2}[0-9]{2}[0-9]{12}[0-9]{3}[A-Z]{3}",MZ:"MZ[0-9]{2}[0-9]{21}",NL:"NL[0-9]{2}[A-Z]{4}[0-9]{10}",NO:"NO[0-9]{2}[0-9]{4}[0-9]{6}[0-9]{1}",PK:"PK[0-9]{2}[A-Z]{4}[A-Z0-9]{16}",PL:"PL[0-9]{2}[0-9]{8}[0-9]{16}",PS:"PS[0-9]{2}[A-Z]{4}[A-Z0-9]{21}",PT:"PT[0-9]{2}[0-9]{4}[0-9]{4}[0-9]{11}[0-9]{2}",QA:"QA[0-9]{2}[A-Z]{4}[A-Z0-9]{21}",RO:"RO[0-9]{2}[A-Z]{4}[A-Z0-9]{16}",RS:"RS[0-9]{2}[0-9]{3}[0-9]{13}[0-9]{2}",SA:"SA[0-9]{2}[0-9]{2}[A-Z0-9]{18}",SE:"SE[0-9]{2}[0-9]{3}[0-9]{16}[0-9]{1}",SI:"SI[0-9]{2}[0-9]{5}[0-9]{8}[0-9]{2}",SK:"SK[0-9]{2}[0-9]{4}[0-9]{6}[0-9]{10}",SM:"SM[0-9]{2}[A-Z]{1}[0-9]{5}[0-9]{5}[A-Z0-9]{12}",SN:"SN[0-9]{2}[A-Z]{1}[0-9]{23}",TN:"TN59[0-9]{2}[0-9]{3}[0-9]{13}[0-9]{2}",TR:"TR[0-9]{2}[0-9]{5}[A-Z0-9]{1}[A-Z0-9]{16}",VG:"VG[0-9]{2}[A-Z]{4}[0-9]{16}"},validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}value=value.replace(/[^a-zA-Z0-9]/g,"").toUpperCase();var country=options.country;if(!country){country=value.substr(0,2)}else{if(typeof country!=="string"||!this.REGEX[country]){country=validator.getDynamicOption($field,country)}}if(!this.REGEX[country]){return{valid:false,message:$.fn.bootstrapValidator.helpers.format($.fn.bootstrapValidator.i18n.iban.countryNotSupported,country)}}if(!(new RegExp("^"+this.REGEX[country]+"$")).test(value)){return{valid:false,message:$.fn.bootstrapValidator.helpers.format(options.message||$.fn.bootstrapValidator.i18n.iban.country,$.fn.bootstrapValidator.i18n.iban.countries[country])}}value=value.substr(4)+value.substr(0,4);value=$.map(value.split(""),function(n){var code=n.charCodeAt(0);return(code>="A".charCodeAt(0)&&code<="Z".charCodeAt(0))?(code-"A".charCodeAt(0)+10):n});value=value.join("");var temp=parseInt(value.substr(0,1),10),length=value.length;for(var i=1;i31||month>12){return false}var sum=0;for(var i=0;i<6;i++){sum+=(7-i)*(parseInt(value.charAt(i),10)+parseInt(value.charAt(i+6),10))}sum=11-sum%11;if(sum===10||sum===11){sum=0}if(sum!==k){return false}switch(countryCode.toUpperCase()){case"BA":return(10<=rr&&rr<=19);case"MK":return(41<=rr&&rr<=49);case"ME":return(20<=rr&&rr<=29);case"RS":return(70<=rr&&rr<=99);case"SI":return(50<=rr&&rr<=59);default:return true}},_ba:function(value){return this._validateJMBG(value,"BA")},_mk:function(value){return this._validateJMBG(value,"MK")},_me:function(value){return this._validateJMBG(value,"ME")},_rs:function(value){return this._validateJMBG(value,"RS")},_si:function(value){return this._validateJMBG(value,"SI")},_bg:function(value){if(!/^\d{10}$/.test(value)&&!/^\d{6}\s\d{3}\s\d{1}$/.test(value)){return false}value=value.replace(/\s/g,"");var year=parseInt(value.substr(0,2),10)+1900,month=parseInt(value.substr(2,2),10),day=parseInt(value.substr(4,2),10);if(month>40){year+=100;month-=40}else{if(month>20){year-=100;month-=20}}if(!$.fn.bootstrapValidator.helpers.date(year,month,day)){return false}var sum=0,weight=[2,4,8,5,10,9,7,3,6];for(var i=0;i<9;i++){sum+=parseInt(value.charAt(i),10)*weight[i]}sum=(sum%11)%10;return(sum+""===value.substr(9,1))},_br:function(value){if(/^1{11}|2{11}|3{11}|4{11}|5{11}|6{11}|7{11}|8{11}|9{11}|0{11}$/.test(value)){return false}if(!/^\d{11}$/.test(value)&&!/^\d{3}\.\d{3}\.\d{3}-\d{2}$/.test(value)){return false}value=value.replace(/\./g,"").replace(/-/g,"");var d1=0;for(var i=0;i<9;i++){d1+=(10-i)*parseInt(value.charAt(i),10)}d1=11-d1%11;if(d1===10||d1===11){d1=0}if(d1+""!==value.charAt(9)){return false}var d2=0;for(i=0;i<10;i++){d2+=(11-i)*parseInt(value.charAt(i),10)}d2=11-d2%11;if(d2===10||d2===11){d2=0}return(d2+""===value.charAt(10))},_ch:function(value){if(!/^756[\.]{0,1}[0-9]{4}[\.]{0,1}[0-9]{4}[\.]{0,1}[0-9]{2}$/.test(value)){return false}value=value.replace(/\D/g,"").substr(3);var length=value.length,sum=0,weight=(length===8)?[3,1]:[1,3];for(var i=0;i=1980){year-=100}if(year>1953){return false}}else{if(year<1954){year+=100}}if(!$.fn.bootstrapValidator.helpers.date(year,month,day)){return false}if(value.length===10){var check=parseInt(value.substr(0,9),10)%11;if(year<1985){check=check%10}return(check+""===value.substr(9,1))}return true},_dk:function(value){if(!/^[0-9]{6}[-]{0,1}[0-9]{4}$/.test(value)){return false}value=value.replace(/-/g,"");var day=parseInt(value.substr(0,2),10),month=parseInt(value.substr(2,2),10),year=parseInt(value.substr(4,2),10);switch(true){case ("5678".indexOf(value.charAt(6))!==-1&&year>=58):year+=1800;break;case ("0123".indexOf(value.charAt(6))!==-1):case ("49".indexOf(value.charAt(6))!==-1&&year>=37):year+=1900;break;default:year+=2000;break}return $.fn.bootstrapValidator.helpers.date(year,month,day)},_ee:function(value){return this._lt(value)},_es:function(value){if(!/^[0-9A-Z]{8}[-]{0,1}[0-9A-Z]$/.test(value)&&!/^[XYZ][-]{0,1}[0-9]{7}[-]{0,1}[0-9A-Z]$/.test(value)){return false}value=value.replace(/-/g,"");var index="XYZ".indexOf(value.charAt(0));if(index!==-1){value=index+value.substr(1)+""}var check=parseInt(value.substr(0,8),10);check="TRWAGMYFPDXBNJZSQVHLCKE"[check%23];return(check===value.substr(8,1))},_fi:function(value){if(!/^[0-9]{6}[-+A][0-9]{3}[0-9ABCDEFHJKLMNPRSTUVWXY]$/.test(value)){return false}var day=parseInt(value.substr(0,2),10),month=parseInt(value.substr(2,2),10),year=parseInt(value.substr(4,2),10),centuries={"+":1800,"-":1900,A:2000};year=centuries[value.charAt(6)]+year;if(!$.fn.bootstrapValidator.helpers.date(year,month,day)){return false}var individual=parseInt(value.substr(7,3),10);if(individual<2){return false}var n=value.substr(0,6)+value.substr(7,3)+"";n=parseInt(n,10);return"0123456789ABCDEFHJKLMNPRSTUVWXY".charAt(n%31)===value.charAt(10)},_hr:function(value){if(!/^[0-9]{11}$/.test(value)){return false}return $.fn.bootstrapValidator.helpers.mod11And10(value)},_ie:function(value){if(!/^\d{7}[A-W][AHWTX]?$/.test(value)){return false}var getCheckDigit=function(value){while(value.length<7){value="0"+value}var alphabet="WABCDEFGHIJKLMNOPQRSTUV",sum=0;for(var i=0;i<7;i++){sum+=parseInt(value.charAt(i),10)*(8-i)}sum+=9*alphabet.indexOf(value.substr(7));return alphabet[sum%23]};if(value.length===9&&("A"===value.charAt(8)||"H"===value.charAt(8))){return value.charAt(7)===getCheckDigit(value.substr(0,7)+value.substr(8)+"")}else{return value.charAt(7)===getCheckDigit(value.substr(0,7))}},_is:function(value){if(!/^[0-9]{6}[-]{0,1}[0-9]{4}$/.test(value)){return false}value=value.replace(/-/g,"");var day=parseInt(value.substr(0,2),10),month=parseInt(value.substr(2,2),10),year=parseInt(value.substr(4,2),10),century=parseInt(value.charAt(9),10);year=(century===9)?(1900+year):((20+century)*100+year);if(!$.fn.bootstrapValidator.helpers.date(year,month,day,true)){return false}var sum=0,weight=[3,2,7,6,5,4,3,2];for(var i=0;i<8;i++){sum+=parseInt(value.charAt(i),10)*weight[i]}sum=11-sum%11;return(sum+""===value.charAt(8))},_lt:function(value){if(!/^[0-9]{11}$/.test(value)){return false}var gender=parseInt(value.charAt(0),10),year=parseInt(value.substr(1,2),10),month=parseInt(value.substr(3,2),10),day=parseInt(value.substr(5,2),10),century=(gender%2===0)?(17+gender/2):(17+(gender+1)/2);year=century*100+year;if(!$.fn.bootstrapValidator.helpers.date(year,month,day,true)){return false}var sum=0,weight=[1,2,3,4,5,6,7,8,9,1];for(var i=0;i<10;i++){sum+=parseInt(value.charAt(i),10)*weight[i]}sum=sum%11;if(sum!==10){return sum+""===value.charAt(10)}sum=0;weight=[3,4,5,6,7,8,9,1,2,3];for(i=0;i<10;i++){sum+=parseInt(value.charAt(i),10)*weight[i]}sum=sum%11;if(sum===10){sum=0}return(sum+""===value.charAt(10))},_lv:function(value){if(!/^[0-9]{6}[-]{0,1}[0-9]{5}$/.test(value)){return false}value=value.replace(/\D/g,"");var day=parseInt(value.substr(0,2),10),month=parseInt(value.substr(2,2),10),year=parseInt(value.substr(4,2),10);year=year+1800+parseInt(value.charAt(6),10)*100;if(!$.fn.bootstrapValidator.helpers.date(year,month,day,true)){return false}var sum=0,weight=[10,5,8,4,2,1,6,3,7,9];for(var i=0;i<10;i++){sum+=parseInt(value.charAt(i),10)*weight[i]}sum=(sum+1)%11%10;return(sum+""===value.charAt(10))},_nl:function(value){while(value.length<9){value="0"+value}if(!/^[0-9]{4}[.]{0,1}[0-9]{2}[.]{0,1}[0-9]{3}$/.test(value)){return false}value=value.replace(/\./g,"");if(parseInt(value,10)===0){return false}var sum=0,length=value.length;for(var i=0;i31&&month>12){return false}if(gender!==9){year=centuries[gender+""]+year;if(!$.fn.bootstrapValidator.helpers.date(year,month,day)){return false}}var sum=0,weight=[2,7,9,1,4,6,3,5,8,2,7,9],length=value.length;for(var i=0;i=currentYear)?(year+1900):(year+2000);if(!$.fn.bootstrapValidator.helpers.date(year,month,day)){return false}return $.fn.bootstrapValidator.helpers.luhn(value)}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.identical=$.extend($.fn.bootstrapValidator.i18n.identical||{},{"default":"Please enter the same value"});$.fn.bootstrapValidator.validators.identical={html5Attributes:{message:"message",field:"field"},validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}var compareWith=validator.getFieldElements(options.field);if(compareWith===null){return true}if(value===compareWith.val()){validator.updateStatus(options.field,validator.STATUS_VALID,"identical");return true}else{return false}}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.imei=$.extend($.fn.bootstrapValidator.i18n.imei||{},{"default":"Please enter a valid IMEI number"});$.fn.bootstrapValidator.validators.imei={validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}switch(true){case /^\d{15}$/.test(value):case /^\d{2}-\d{6}-\d{6}-\d{1}$/.test(value):case /^\d{2}\s\d{6}\s\d{6}\s\d{1}$/.test(value):value=value.replace(/[^0-9]/g,"");return $.fn.bootstrapValidator.helpers.luhn(value);case /^\d{14}$/.test(value):case /^\d{16}$/.test(value):case /^\d{2}-\d{6}-\d{6}(|-\d{2})$/.test(value):case /^\d{2}\s\d{6}\s\d{6}(|\s\d{2})$/.test(value):return true;default:return false}}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.integer=$.extend($.fn.bootstrapValidator.i18n.integer||{},{"default":"Please enter a valid number"});$.fn.bootstrapValidator.validators.integer={enableByHtml5:function($field){return("number"===$field.attr("type"))&&($field.attr("step")===undefined||$field.attr("step")%1===0)},validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}return/^(?:-?(?:0|[1-9][0-9]*))$/.test(value)}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.ip=$.extend($.fn.bootstrapValidator.i18n.ip||{},{"default":"Please enter a valid IP address",ipv4:"Please enter a valid IPv4 address",ipv6:"Please enter a valid IPv6 address"});$.fn.bootstrapValidator.validators.ip={html5Attributes:{message:"message",ipv4:"ipv4",ipv6:"ipv6"},validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}options=$.extend({},{ipv4:true,ipv6:true},options);if(options.ipv4){return{valid:/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/.test(value),message:options.message||$.fn.bootstrapValidator.i18n.ip.ipv4}}else{if(options.ipv6){return{valid:/^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?\s*$/.test(value),message:options.message||$.fn.bootstrapValidator.i18n.ip.ipv6}}}return false}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.isbn=$.extend($.fn.bootstrapValidator.i18n.isbn||{},{"default":"Please enter a valid ISBN number"});$.fn.bootstrapValidator.validators.isbn={validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}var type;switch(true){case /^\d{9}[\dX]$/.test(value):case (value.length===13&&/^(\d+)-(\d+)-(\d+)-([\dX])$/.test(value)):case (value.length===13&&/^(\d+)\s(\d+)\s(\d+)\s([\dX])$/.test(value)):type="ISBN10";break;case /^(978|979)\d{9}[\dX]$/.test(value):case (value.length===17&&/^(978|979)-(\d+)-(\d+)-(\d+)-([\dX])$/.test(value)):case (value.length===17&&/^(978|979)\s(\d+)\s(\d+)\s(\d+)\s([\dX])$/.test(value)):type="ISBN13";break;default:return false}value=value.replace(/[^0-9X]/gi,"");var chars=value.split(""),length=chars.length,sum=0,i,checksum;switch(type){case"ISBN10":sum=0;for(i=0;i57)?(c-55).toString():value.charAt(i))}var digits="",n=converted.length,group=(n%2!==0)?0:1;for(i=0;i0}return $.trim($field.val())!==""}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.numeric=$.extend($.fn.bootstrapValidator.i18n.numeric||{},{"default":"Please enter a valid float number"});$.fn.bootstrapValidator.validators.numeric={html5Attributes:{message:"message",separator:"separator"},enableByHtml5:function($field){return("number"===$field.attr("type"))&&($field.attr("step")!==undefined)&&($field.attr("step")%1!==0)},validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}var separator=options.separator||".";if(separator!=="."){value=value.replace(separator,".")}return !isNaN(parseFloat(value))&&isFinite(value)}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.phone=$.extend($.fn.bootstrapValidator.i18n.phone||{},{"default":"Please enter a valid phone number",countryNotSupported:"The country code %s is not supported",country:"Please enter a valid phone number in %s",countries:{GB:"United Kingdom",US:"USA"}});$.fn.bootstrapValidator.validators.phone={html5Attributes:{message:"message",country:"country"},COUNTRY_CODES:["GB","US"],validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}var country=options.country;if(typeof country!=="string"||$.inArray(country,this.COUNTRY_CODES)===-1){country=validator.getDynamicOption($field,country)}if(!country||$.inArray(country.toUpperCase(),this.COUNTRY_CODES)===-1){return{valid:false,message:$.fn.bootstrapValidator.helpers.format($.fn.bootstrapValidator.i18n.phone.countryNotSupported,country)}}var isValid=true;switch(country.toUpperCase()){case"GB":value=$.trim(value);isValid=(/^\(?(?:(?:0(?:0|11)\)?[\s-]?\(?|\+)44\)?[\s-]?\(?(?:0\)?[\s-]?\(?)?|0)(?:\d{2}\)?[\s-]?\d{4}[\s-]?\d{4}|\d{3}\)?[\s-]?\d{3}[\s-]?\d{3,4}|\d{4}\)?[\s-]?(?:\d{5}|\d{3}[\s-]?\d{3})|\d{5}\)?[\s-]?\d{4,5}|8(?:00[\s-]?11[\s-]?11|45[\s-]?46[\s-]?4\d))(?:(?:[\s-]?(?:x|ext\.?\s?|\#)\d+)?)$/).test(value);break;case"US":default:value=value.replace(/\D/g,"");isValid=(/^(?:(1\-?)|(\+1 ?))?\(?(\d{3})[\)\-\.]?(\d{3})[\-\.]?(\d{4})$/).test(value)&&(value.length===10);break}return{valid:isValid,message:$.fn.bootstrapValidator.helpers.format(options.message||$.fn.bootstrapValidator.i18n.phone.country,$.fn.bootstrapValidator.i18n.phone.countries[country])}}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.regexp=$.extend($.fn.bootstrapValidator.i18n.regexp||{},{"default":"Please enter a value matching the pattern"});$.fn.bootstrapValidator.validators.regexp={html5Attributes:{message:"message",regexp:"regexp"},enableByHtml5:function($field){var pattern=$field.attr("pattern");if(pattern){return{regexp:pattern}}return false},validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}var regexp=("string"===typeof options.regexp)?new RegExp(options.regexp):options.regexp;return regexp.test(value)}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.remote=$.extend($.fn.bootstrapValidator.i18n.remote||{},{"default":"Please enter a valid value"});$.fn.bootstrapValidator.validators.remote={html5Attributes:{message:"message",url:"url",name:"name"},validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}var name=$field.attr("data-bv-field"),data=options.data||{},url=options.url,type=options.type||"POST";if("function"===typeof data){data=data.call(this,validator)}if("function"===typeof url){url=url.call(this,validator)}data[options.name||name]=value;var dfd=new $.Deferred();var xhr=$.ajax({type:type,url:url,dataType:"json",data:data});xhr.then(function(response){dfd.resolve($field,"remote",response.valid===true||response.valid==="true",response.message?response.message:null)});dfd.fail(function(){xhr.abort()});return dfd}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.rtn=$.extend($.fn.bootstrapValidator.i18n.rtn||{},{"default":"Please enter a valid RTN number"});$.fn.bootstrapValidator.validators.rtn={validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}if(!/^\d{9}$/.test(value)){return false}var sum=0;for(var i=0;i9){tmp-=9}}sum+=tmp}return(sum%10===0)}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.step=$.extend($.fn.bootstrapValidator.i18n.step||{},{"default":"Please enter a valid step of %s"});$.fn.bootstrapValidator.validators.step={html5Attributes:{message:"message",base:"baseValue",step:"step"},validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}options=$.extend({},{baseValue:0,step:1},options);value=parseFloat(value);if(!$.isNumeric(value)){return false}var round=function(x,precision){var m=Math.pow(10,precision);x=x*m;var sign=(x>0)|-(x<0),isHalf=(x%1===0.5*sign);if(isHalf){return(Math.floor(x)+(sign>0))/m}else{return Math.round(x)/m}},floatMod=function(x,y){if(y===0){return 1}var dotX=(x+"").split("."),dotY=(y+"").split("."),precision=((dotX.length===1)?0:dotX[1].length)+((dotY.length===1)?0:dotY[1].length);return round(x-y*Math.floor(x/y),precision)};var mod=floatMod(value-options.baseValue,options.step);return{valid:mod===0||mod===options.step,message:$.fn.bootstrapValidator.helpers.format(options.message||$.fn.bootstrapValidator.i18n.step["default"],[options.step])}}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.stringCase=$.extend($.fn.bootstrapValidator.i18n.stringCase||{},{"default":"Please enter only lowercase characters",upper:"Please enter only uppercase characters"});$.fn.bootstrapValidator.validators.stringCase={html5Attributes:{message:"message","case":"case"},validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}var stringCase=(options["case"]||"lower").toLowerCase();return{valid:("upper"===stringCase)?value===value.toUpperCase():value===value.toLowerCase(),message:options.message||(("upper"===stringCase)?$.fn.bootstrapValidator.i18n.stringCase.upper:$.fn.bootstrapValidator.i18n.stringCase["default"])}}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.stringLength=$.extend($.fn.bootstrapValidator.i18n.stringLength||{},{"default":"Please enter a value with valid length",less:"Please enter less than %s characters",more:"Please enter more than %s characters",between:"Please enter value between %s and %s characters long"});$.fn.bootstrapValidator.validators.stringLength={html5Attributes:{message:"message",min:"min",max:"max"},enableByHtml5:function($field){var maxLength=$field.attr("maxlength");if(maxLength){return{max:parseInt(maxLength,10)}}return false},validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}var min=$.isNumeric(options.min)?options.min:validator.getDynamicOption($field,options.min),max=$.isNumeric(options.max)?options.max:validator.getDynamicOption($field,options.max),length=value.length,isValid=true,message=options.message||$.fn.bootstrapValidator.i18n.stringLength["default"];if((min&&lengthparseInt(max,10))){isValid=false}switch(true){case (!!min&&!!max):message=$.fn.bootstrapValidator.helpers.format(options.message||$.fn.bootstrapValidator.i18n.stringLength.between,[parseInt(min,10),parseInt(max,10)]);break;case (!!min):message=$.fn.bootstrapValidator.helpers.format(options.message||$.fn.bootstrapValidator.i18n.stringLength.more,parseInt(min,10));break;case (!!max):message=$.fn.bootstrapValidator.helpers.format(options.message||$.fn.bootstrapValidator.i18n.stringLength.less,parseInt(max,10));break;default:break}return{valid:isValid,message:message}}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.uri=$.extend($.fn.bootstrapValidator.i18n.uri||{},{"default":"Please enter a valid URI"});$.fn.bootstrapValidator.validators.uri={html5Attributes:{message:"message",allowlocal:"allowLocal"},enableByHtml5:function($field){return("url"===$field.attr("type"))},validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}var allowLocal=options.allowLocal===true||options.allowLocal==="true",urlExp=new RegExp("^(?:(?:https?|ftp)://)(?:\\S+(?::\\S*)?@)?(?:"+(allowLocal?"":("(?!(?:10|127)(?:\\.\\d{1,3}){3})(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})"))+"(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z\\u00a1-\\uffff0-9]+-?)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]+-?)*[a-z\\u00a1-\\uffff0-9]+)*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,})))(?::\\d{2,5})?(?:/[^\\s]*)?$","i");return urlExp.test(value)}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.uuid=$.extend($.fn.bootstrapValidator.i18n.uuid||{},{"default":"Please enter a valid UUID number",version:"Please enter a valid UUID version %s number"});$.fn.bootstrapValidator.validators.uuid={html5Attributes:{message:"message",version:"version"},validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}var patterns={"3":/^[0-9A-F]{8}-[0-9A-F]{4}-3[0-9A-F]{3}-[0-9A-F]{4}-[0-9A-F]{12}$/i,"4":/^[0-9A-F]{8}-[0-9A-F]{4}-4[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i,"5":/^[0-9A-F]{8}-[0-9A-F]{4}-5[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i,all:/^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/i},version=options.version?(options.version+""):"all";return{valid:(null===patterns[version])?true:patterns[version].test(value),message:options.version?$.fn.bootstrapValidator.helpers.format(options.message||$.fn.bootstrapValidator.i18n.uuid.version,options.version):(options.message||$.fn.bootstrapValidator.i18n.uuid["default"])}}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.vat=$.extend($.fn.bootstrapValidator.i18n.vat||{},{"default":"Please enter a valid VAT number",countryNotSupported:"The country code %s is not supported",country:"Please enter a valid %s VAT number",countries:{AT:"Austrian",BE:"Belgian",BG:"Bulgarian",CH:"Swiss",CY:"Cypriot",CZ:"Czech",DE:"German",DK:"Danish",EE:"Estonian",ES:"Spanish",FI:"Finnish",FR:"French",GB:"United Kingdom",GR:"Greek",EL:"Greek",HU:"Hungarian",HR:"Croatian",IE:"Irish",IT:"Italian",LT:"Lithuanian",LU:"Luxembourg",LV:"Latvian",MT:"Maltese",NL:"Dutch",NO:"Norwegian",PL:"Polish",PT:"Portuguese",RO:"Romanian",RU:"Russian",RS:"Serbian",SE:"Swedish",SI:"Slovenian",SK:"Slovak"}});$.fn.bootstrapValidator.validators.vat={html5Attributes:{message:"message",country:"country"},COUNTRY_CODES:["AT","BE","BG","HR","CY","CZ","DK","EE","FI","FR","DE","GR","EL","HU","IE","IT","LV","LT","LU","MT","NL","NO","PL","PT","RO","RU","RS","SK","SI","ES","SE","CH","GB"],validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}var country=options.country;if(!country){country=value.substr(0,2)}else{if(typeof country!=="string"||$.inArray(country.toUpperCase(),this.COUNTRY_CODES)===-1){country=validator.getDynamicOption($field,country)}}if($.inArray(country,this.COUNTRY_CODES)===-1){return{valid:false,message:$.fn.bootstrapValidator.helpers.format($.fn.bootstrapValidator.i18n.vat.countryNotSupported,country)}}var method=["_",country.toLowerCase()].join("");return this[method](value)?true:{valid:false,message:$.fn.bootstrapValidator.helpers.format(options.message||$.fn.bootstrapValidator.i18n.vat.country,$.fn.bootstrapValidator.i18n.vat.countries[country.toUpperCase()])}},_at:function(value){if(!/^ATU[0-9]{8}$/.test(value)){return false}value=value.substr(3);var sum=0,weight=[1,2,1,2,1,2,1],temp=0;for(var i=0;i<7;i++){temp=parseInt(value.charAt(i),10)*weight[i];if(temp>9){temp=Math.floor(temp/10)+temp%10}sum+=temp}sum=10-(sum+4)%10;if(sum===10){sum=0}return(sum+""===value.substr(7,1))},_be:function(value){if(!/^BE[0]{0,1}[0-9]{9}$/.test(value)){return false}value=value.substr(2);if(value.length===9){value="0"+value}if(value.substr(1,1)==="0"){return false}var sum=parseInt(value.substr(0,8),10)+parseInt(value.substr(8,2),10);return(sum%97===0)},_bg:function(value){if(!/^BG[0-9]{9,10}$/.test(value)){return false}value=value.substr(2);var sum=0,i=0;if(value.length===9){for(i=0;i<8;i++){sum+=parseInt(value.charAt(i),10)*(i+1)}sum=sum%11;if(sum===10){sum=0;for(i=0;i<8;i++){sum+=parseInt(value.charAt(i),10)*(i+3)}}sum=sum%10;return(sum+""===value.substr(8))}else{if(value.length===10){var egn=function(value){var year=parseInt(value.substr(0,2),10)+1900,month=parseInt(value.substr(2,2),10),day=parseInt(value.substr(4,2),10);if(month>40){year+=100;month-=40}else{if(month>20){year-=100;month-=20}}if(!$.fn.bootstrapValidator.helpers.date(year,month,day)){return false}var sum=0,weight=[2,4,8,5,10,9,7,3,6];for(var i=0;i<9;i++){sum+=parseInt(value.charAt(i),10)*weight[i]}sum=(sum%11)%10;return(sum+""===value.substr(9,1))},pnf=function(value){var sum=0,weight=[21,19,17,13,11,9,7,3,1];for(var i=0;i<9;i++){sum+=parseInt(value.charAt(i),10)*weight[i]}sum=sum%10;return(sum+""===value.substr(9,1))},vat=function(value){var sum=0,weight=[4,3,2,7,6,5,4,3,2];for(var i=0;i<9;i++){sum+=parseInt(value.charAt(i),10)*weight[i]}sum=11-sum%11;if(sum===10){return false}if(sum===11){sum=0}return(sum+""===value.substr(9,1))};return(egn(value)||pnf(value)||vat(value))}}return false},_ch:function(value){if(!/^CHE[0-9]{9}(MWST)?$/.test(value)){return false}value=value.substr(3);var sum=0,weight=[5,4,3,2,7,6,5,4];for(var i=0;i<8;i++){sum+=parseInt(value.charAt(i),10)*weight[i]}sum=11-sum%11;if(sum===10){return false}if(sum===11){sum=0}return(sum+""===value.substr(8,1))},_cy:function(value){if(!/^CY[0-5|9]{1}[0-9]{7}[A-Z]{1}$/.test(value)){return false}value=value.substr(2);if(value.substr(0,2)==="12"){return false}var sum=0,translation={"0":1,"1":0,"2":5,"3":7,"4":9,"5":13,"6":15,"7":17,"8":19,"9":21};for(var i=0;i<8;i++){var temp=parseInt(value.charAt(i),10);if(i%2===0){temp=translation[temp+""]}sum+=temp}sum="ABCDEFGHIJKLMNOPQRSTUVWXYZ"[sum%26];return(sum+""===value.substr(8,1))},_cz:function(value){if(!/^CZ[0-9]{8,10}$/.test(value)){return false}value=value.substr(2);var sum=0,i=0;if(value.length===8){if(value.charAt(0)+""==="9"){return false}sum=0;for(i=0;i<7;i++){sum+=parseInt(value.charAt(i),10)*(8-i)}sum=11-sum%11;if(sum===10){sum=0}if(sum===11){sum=1}return(sum+""===value.substr(7,1))}else{if(value.length===9&&(value.charAt(0)+""==="6")){sum=0;for(i=0;i<7;i++){sum+=parseInt(value.charAt(i+1),10)*(8-i)}sum=11-sum%11;if(sum===10){sum=0}if(sum===11){sum=1}sum=[8,7,6,5,4,3,2,1,0,9,10][sum-1];return(sum+""===value.substr(8,1))}else{if(value.length===9||value.length===10){var year=1900+parseInt(value.substr(0,2),10),month=parseInt(value.substr(2,2),10)%50%20,day=parseInt(value.substr(4,2),10);if(value.length===9){if(year>=1980){year-=100}if(year>1953){return false}}else{if(year<1954){year+=100}}if(!$.fn.bootstrapValidator.helpers.date(year,month,day)){return false}if(value.length===10){var check=parseInt(value.substr(0,9),10)%11;if(year<1985){check=check%10}return(check+""===value.substr(9,1))}return true}}}return false},_de:function(value){if(!/^DE[0-9]{9}$/.test(value)){return false}value=value.substr(2);return $.fn.bootstrapValidator.helpers.mod11And10(value)},_dk:function(value){if(!/^DK[0-9]{8}$/.test(value)){return false}value=value.substr(2);var sum=0,weight=[2,7,6,5,4,3,2,1];for(var i=0;i<8;i++){sum+=parseInt(value.charAt(i),10)*weight[i]}return(sum%11===0)},_ee:function(value){if(!/^EE[0-9]{9}$/.test(value)){return false}value=value.substr(2);var sum=0,weight=[3,7,1,3,7,1,3,7,1];for(var i=0;i<9;i++){sum+=parseInt(value.charAt(i),10)*weight[i]}return(sum%10===0)},_es:function(value){if(!/^ES[0-9A-Z][0-9]{7}[0-9A-Z]$/.test(value)){return false}value=value.substr(2);var dni=function(value){var check=parseInt(value.substr(0,8),10);check="TRWAGMYFPDXBNJZSQVHLCKE"[check%23];return(check+""===value.substr(8,1))},nie=function(value){var check=["XYZ".indexOf(value.charAt(0)),value.substr(1)].join("");check=parseInt(check,10);check="TRWAGMYFPDXBNJZSQVHLCKE"[check%23];return(check+""===value.substr(8,1))},cif=function(value){var first=value.charAt(0),check;if("KLM".indexOf(first)!==-1){check=parseInt(value.substr(1,8),10);check="TRWAGMYFPDXBNJZSQVHLCKE"[check%23];return(check+""===value.substr(8,1))}else{if("ABCDEFGHJNPQRSUVW".indexOf(first)!==-1){var sum=0,weight=[2,1,2,1,2,1,2],temp=0;for(var i=0;i<7;i++){temp=parseInt(value.charAt(i+1),10)*weight[i];if(temp>9){temp=Math.floor(temp/10)+temp%10}sum+=temp}sum=10-sum%10;return(sum+""===value.substr(8,1)||"JABCDEFGHI"[sum]===value.substr(8,1))}}return false};var first=value.charAt(0);if(/^[0-9]$/.test(first)){return dni(value)}else{if(/^[XYZ]$/.test(first)){return nie(value)}else{return cif(value)}}},_fi:function(value){if(!/^FI[0-9]{8}$/.test(value)){return false}value=value.substr(2);var sum=0,weight=[7,9,10,5,8,4,2,1];for(var i=0;i<8;i++){sum+=parseInt(value.charAt(i),10)*weight[i]}return(sum%11===0)},_fr:function(value){if(!/^FR[0-9A-Z]{2}[0-9]{9}$/.test(value)){return false}value=value.substr(2);if(!$.fn.bootstrapValidator.helpers.luhn(value.substr(2))){return false}if(/^[0-9]{2}$/.test(value.substr(0,2))){return value.substr(0,2)===(parseInt(value.substr(2)+"12",10)%97+"")}else{var alphabet="0123456789ABCDEFGHJKLMNPQRSTUVWXYZ",check;if(/^[0-9]{1}$/.test(value.charAt(0))){check=alphabet.indexOf(value.charAt(0))*24+alphabet.indexOf(value.charAt(1))-10}else{check=alphabet.indexOf(value.charAt(0))*34+alphabet.indexOf(value.charAt(1))-100}return((parseInt(value.substr(2),10)+1+Math.floor(check/11))%11)===(check%11)}},_gb:function(value){if(!/^GB[0-9]{9}$/.test(value)&&!/^GB[0-9]{12}$/.test(value)&&!/^GBGD[0-9]{3}$/.test(value)&&!/^GBHA[0-9]{3}$/.test(value)&&!/^GB(GD|HA)8888[0-9]{5}$/.test(value)){return false}value=value.substr(2);var length=value.length;if(length===5){var firstTwo=value.substr(0,2),lastThree=parseInt(value.substr(2),10);return("GD"===firstTwo&&lastThree<500)||("HA"===firstTwo&&lastThree>=500)}else{if(length===11&&("GD8888"===value.substr(0,6)||"HA8888"===value.substr(0,6))){if(("GD"===value.substr(0,2)&&parseInt(value.substr(6,3),10)>=500)||("HA"===value.substr(0,2)&&parseInt(value.substr(6,3),10)<500)){return false}return(parseInt(value.substr(6,3),10)%97===parseInt(value.substr(9,2),10))}else{if(length===9||length===12){var sum=0,weight=[8,7,6,5,4,3,2,10,1];for(var i=0;i<9;i++){sum+=parseInt(value.charAt(i),10)*weight[i]}sum=sum%97;if(parseInt(value.substr(0,3),10)>=100){return(sum===0||sum===42||sum===55)}else{return(sum===0)}}}}return true},_gr:function(value){if(!/^GR[0-9]{9}$/.test(value)){return false}value=value.substr(2);if(value.length===8){value="0"+value}var sum=0,weight=[256,128,64,32,16,8,4,2];for(var i=0;i<8;i++){sum+=parseInt(value.charAt(i),10)*weight[i]}sum=(sum%11)%10;return(sum+""===value.substr(8,1))},_el:function(value){if(!/^EL[0-9]{9}$/.test(value)){return false}value="GR"+value.substr(2);return this._gr(value)},_hu:function(value){if(!/^HU[0-9]{8}$/.test(value)){return false}value=value.substr(2);var sum=0,weight=[9,7,3,1,9,7,3,1];for(var i=0;i<8;i++){sum+=parseInt(value.charAt(i),10)*weight[i]}return(sum%10===0)},_hr:function(value){if(!/^HR[0-9]{11}$/.test(value)){return false}value=value.substr(2);return $.fn.bootstrapValidator.helpers.mod11And10(value)},_ie:function(value){if(!/^IE[0-9]{1}[0-9A-Z\*\+]{1}[0-9]{5}[A-Z]{1,2}$/.test(value)){return false}value=value.substr(2);var getCheckDigit=function(value){while(value.length<7){value="0"+value}var alphabet="WABCDEFGHIJKLMNOPQRSTUV",sum=0;for(var i=0;i<7;i++){sum+=parseInt(value.charAt(i),10)*(8-i)}sum+=9*alphabet.indexOf(value.substr(7));return alphabet[sum%23]};if(/^[0-9]+$/.test(value.substr(0,7))){return value.charAt(7)===getCheckDigit(value.substr(0,7)+value.substr(8)+"")}else{if("ABCDEFGHIJKLMNOPQRSTUVWXYZ+*".indexOf(value.charAt(1))!==-1){return value.charAt(7)===getCheckDigit(value.substr(2,5)+value.substr(0,1)+"")}}return true},_it:function(value){if(!/^IT[0-9]{11}$/.test(value)){return false}value=value.substr(2);if(parseInt(value.substr(0,7),10)===0){return false}var lastThree=parseInt(value.substr(7,3),10);if((lastThree<1)||(lastThree>201)&&lastThree!==999&&lastThree!==888){return false}return $.fn.bootstrapValidator.helpers.luhn(value)},_lt:function(value){if(!/^LT([0-9]{7}1[0-9]{1}|[0-9]{10}1[0-9]{1})$/.test(value)){return false}value=value.substr(2);var length=value.length,sum=0,i;for(i=0;i3){sum=0;weight=[9,1,4,8,3,10,2,5,7,6,1];for(i=0;i9){sum=0}return(sum+""===value.substr(8,1))},_no:function(value){if(!/^NO[0-9]{9}$/.test(value)){return false}value=value.substr(2);var sum=0,weight=[3,2,7,6,5,4,3,2];for(var i=0;i<8;i++){sum+=parseInt(value.charAt(i),10)*weight[i]}sum=11-sum%11;if(sum===11){sum=0}return(sum+""===value.substr(8,1))},_pl:function(value){if(!/^PL[0-9]{10}$/.test(value)){return false}value=value.substr(2);var sum=0,weight=[6,5,7,2,3,4,5,6,7,-1];for(var i=0;i<10;i++){sum+=parseInt(value.charAt(i),10)*weight[i]}return(sum%11===0)},_pt:function(value){if(!/^PT[0-9]{9}$/.test(value)){return false}value=value.substr(2);var sum=0,weight=[9,8,7,6,5,4,3,2];for(var i=0;i<8;i++){sum+=parseInt(value.charAt(i),10)*weight[i]}sum=11-sum%11;if(sum>9){sum=0}return(sum+""===value.substr(8,1))},_ro:function(value){if(!/^RO[1-9][0-9]{1,9}$/.test(value)){return false}value=value.substr(2);var length=value.length,weight=[7,5,3,2,1,7,5,3,2].slice(10-length),sum=0;for(var i=0;i9){sum=sum%10}return(sum+""===value.substr(9,1))}else{if(value.length===12){var sum1=0,weight1=[7,2,4,10,3,5,9,4,6,8,0],sum2=0,weight2=[3,7,2,4,10,3,5,9,4,6,8,0];for(i=0;i<11;i++){sum1+=parseInt(value.charAt(i),10)*weight1[i];sum2+=parseInt(value.charAt(i),10)*weight2[i]}sum1=sum1%11;if(sum1>9){sum1=sum1%10}sum2=sum2%11;if(sum2>9){sum2=sum2%10}return(sum1+""===value.substr(10,1)&&sum2+""===value.substr(11,1))}}return false},_rs:function(value){if(!/^RS[0-9]{9}$/.test(value)){return false}value=value.substr(2);var sum=10,temp=0;for(var i=0;i<8;i++){temp=(parseInt(value.charAt(i),10)+sum)%10;if(temp===0){temp=10}sum=(2*temp)%11}return((sum+parseInt(value.substr(8,1),10))%10===1)},_se:function(value){if(!/^SE[0-9]{10}01$/.test(value)){return false}value=value.substr(2,10);return $.fn.bootstrapValidator.helpers.luhn(value)},_si:function(value){if(!/^SI[0-9]{8}$/.test(value)){return false}value=value.substr(2);var sum=0,weight=[8,7,6,5,4,3,2];for(var i=0;i<7;i++){sum+=parseInt(value.charAt(i),10)*weight[i]}sum=11-sum%11;if(sum===10){sum=0}return(sum+""===value.substr(7,1))},_sk:function(value){if(!/^SK[1-9][0-9][(2-4)|(6-9)][0-9]{7}$/.test(value)){return false}return(parseInt(value.substr(2),10)%11===0)}}}(window.jQuery));(function($){$.fn.bootstrapValidator.i18n.vin=$.extend($.fn.bootstrapValidator.i18n.vin||{},{"default":"Please enter a valid VIN number"});$.fn.bootstrapValidator.validators.vin={validate:function(validator,$field,options){var value=$field.val();if(value===""){return true}if(!/^[a-hj-npr-z0-9]{8}[0-9xX][a-hj-npr-z0-9]{8}$/i.test(value)){return false}value=value.toUpperCase();var chars={A:1,B:2,C:3,D:4,E:5,F:6,G:7,H:8,J:1,K:2,L:3,M:4,N:5,P:7,R:9,S:2,T:3,U:4,V:5,W:6,X:7,Y:8,Z:9,"1":1,"2":2,"3":3,"4":4,"5":5,"6":6,"7":7,"8":8,"9":9,"0":0},weights=[8,7,6,5,4,3,2,10,0,9,8,7,6,5,4,3,2],sum=0,length=value.length;for(var i=0;i