var BTAspxValidator=function(){function i(n){var i=RequiredFieldValidatorEvaluateIsValid(n),r=n.controltovalidate,t=$("#"+r);switch(t.get(0).nodeName){case"INPUT":case"TEXTAREA":$(n).attr("data-showPlaceholder")==="true"&&(i?t.attr("placeholder",""):t.attr("placeholder",$(n).attr("data-placeholder")));t.val().trim()===""&&t.val("")}return i}function r(n,t){var r=$(n).attr("data-placeholder")||"Required",i=$("#"+n.controltovalidate);t?i.attr("placeholder",""):i.attr("placeholder",r)}function u(i,r){var u=r||!1,f=i.filter(function(n){return(u||typeof n.enabled=="undefined"||n.enabled!==!1)&&typeof n.controltovalidate!="undefined"&&document.getElementById(n.controltovalidate)!==null}).reduce(function(n,t){return n[t.controltovalidate]?n[t.controltovalidate].push(t):n[t.controltovalidate]=[t],n},{});$.each(f,function(t,i){n(t,!AllValidatorsValid(i))});t()}function t(){var t=$(".summary-validator-header"),i=$(".summary-validator-background > ul"),n;t.length&&i.length&&(n=0,i.children().each(function(t,i){i.innerText&&i.innerText.length>0&&n++}),t.text("Please correct the following "+btStringHandler.pluralise(n,"field","fields")+":"))}function n(n,t){f($("#"+n),t)}function f(n,t){var i=n.attr("type");n.length>0&&n.get(0).nodeName=="INPUT"&&i&&i.toLowerCase()==="file"&&(n=n.closest("table"));n.toggleClass("ValidationErrorBorder",t)}function e(n,t){var i=!0,e,o;if(t.Value&&t.Value.length>0){var u=n.attributes.decimalPlaces.value,f=btNumeric.TryParse(t.Value,null,u),r="";n.attributes.nextLine.value=="True"&&(r="<br/>");f==null&&(i=!1);i?(e=Number(n.attributes.min.value),o=Number(n.attributes.max.value),f<e&&(i=!1,n.innerHTML=r+"Must Enter a Valid Amount Equal or Above "+btNumeric.ToString(e,u,!1,btJScriptGlobals.getBuilderCurrencySymbol)),f>o&&(i=!1,n.innerHTML=r+"Must Enter a Valid Amount Equal or Below "+btNumeric.ToString(o,u,!1,btJScriptGlobals.getBuilderCurrencySymbol))):n.innerHTML=r+"Must Enter a Valid Amount"}t.IsValid=i}function o(n,t){var i=!0,r,u,f;t.Value&&t.Value.length>0&&(r=s(t.Value),i=r.isValid(),i?(u=new Date(n.attributes.minDate.value),f=new Date(n.attributes.maxDate.value),r.toDate()<u&&(i=!1,n.innerHTML="<br/>Must Enter a Valid Date on or after "+btDateTimeHandler.dateToShortDateString(u)),r.toDate()>f&&(i=!1,n.innerHTML="<br/>Must Enter a Valid Date on or before "+btDateTimeHandler.dateToShortDateString(f))):n.innerHTML="<br/>Must Enter a Valid Date ("+btJScriptGlobals.builderShortDateFormatForMoment+")");t.IsValid=i}function s(n){return n=n.replace(/[ \/.-]/g,btJScriptGlobals.dateSeperator),n.indexOf("T")>=0&&(n=btDateTimeHandler.dateToShortDateString(btDateTimeHandler.momentFromWebApi(n).toDate())),moment(n,btJScriptGlobals.builderShortDateFormatForMoment,!0)}function h(t){return function(i,r){var f=[],e=Page_Validators.filter(function(n){return n.dataset.customFieldError&&n.dataset.customFieldErrorGroup===t}),s=e.filter(function(t){return ValidatorValidate(t,t.validationGroup),f.includes(t.controltovalidate)||(n(t.controltovalidate,!t.isvalid),t.isvalid||f.push(t.controltovalidate)),!t.isvalid}),u,o;e.forEach(function(n){n.errormessage=""});u=s.map(function(n){return n.dataset.customFieldError});o=u.filter(function(n,t){return u.indexOf(n)==t});i.errormessage="<div class='error-column'>Custom fields: <\/div><p class='error-column' style='padding-left: 5px'>"+o.join("<br>")+"<\/p>";r.IsValid=u.length===0}}function c(n){var i=document.getElementById(n),t;if(i&&(i.evaluationfunction=BTAspxValidator.ValidateRequiredField,i.controltovalidate&&(t=document.getElementById(i.controltovalidate),t)))if($(t).next()&&$(t).next().hasClass("chosen-container"))$(t).on("chosen:hiding_dropdown",function(n){ValidatorOnChange(n)});else $(t).next()&&$(t).next().hasClass("ui-multiselect")?$(t).multiselect({close:function(n){ValidatorOnChange(n)}}):$(t).data("datepicker")!=null?($(t).datepicker("option",{onClose:function(){$(t).blur()}}),$(t).blur(function(n){ValidatorOnChange(n)})):$(t).blur(function(n){ValidatorOnChange(n)})}return{ValidateRequiredField:i,ValidateDate:o,ValidateCurrency:e,ToggleValidationErrorBorder:n,EnableValidationErrorBorder:u,ValidateAllCustomFields:h,InitRequiredField:c,UpdateValidationSummaryText:t,TogglePlaceholderMessage:r}}();$(document).ready(function(){var n,t,i,r;typeof Page_ClientValidate!="undefined"&&(n=Page_ClientValidate,Page_ClientValidate=function(t){var r=n(t),i;return typeof Page_Validators!="undefined"&&(i=[],Page_Validators.forEach(function(n){(typeof n.enabled=="undefined"||n.enabled!=!1)&&IsValidationGroupMatch(n,t)&&typeof n.controltovalidate!="undefined"&&$(n).attr("data-custom-field-error-group")==undefined&&i.push(n)}),BTAspxValidator.EnableValidationErrorBorder(i)),r});typeof ValidatorEnable!="undefined"&&(t=ValidatorEnable,ValidatorEnable=function(n,i){t(n,i);typeof n.controltovalidate!="undefined"&&BTAspxValidator.EnableValidationErrorBorder([n],!0)});typeof ValidationSummaryOnSubmit!="undefined"&&(i=ValidationSummaryOnSubmit,ValidationSummaryOnSubmit=function(n){i(n);BTAspxValidator.UpdateValidationSummaryText()});typeof ValidatorOnChange!="undefined"&&(r=ValidatorOnChange,ValidatorOnChange=function(n){var t,i;r(n);t=typeof n.srcElement!="undefined"&&n.srcElement!=null?n.srcElement:n.target;typeof t.Validators!="undefined"?i=t.Validators:t.tagName.toLowerCase()=="label"&&(t=document.getElementById(t.htmlFor),i=t.Validators);t&&i&&BTAspxValidator.EnableValidationErrorBorder(i)})})