function searchObject(){try{var t=location.search.slice(1).split("&"),n={};return t.forEach(function(t){t=t.split("=");n[t[0].toLowerCase()]=decodeURIComponent(t[1]||"")}),JSON.parse(JSON.stringify(n))}catch(i){return undefined}}var tables=[],app;$(window).resize(function(){showDialogOnResize()});showDialogOnResize();typeof String.prototype.endsWith!="function"&&(String.prototype.endsWith=function(n){return this.indexOf(n,this.length-n.length)!==-1});app=angular.module("formsbyair",["angularSpinner","ngSanitize","ui.bootstrap.modal","ui.bootstrap.rating","ui.bootstrap.datepickerPopup","ngFileUpload","ngAutocomplete","ui.validate","ng-currency","ui.bootstrap.popover","ngCookies","ui.bootstrap.typeahead","ng-percent","ng-autocapitalize","ui.bootstrap.buttons","ng-nzird","ng-nzbank","rzModule","ng-phone-number","validation.match"]).config(["$sceDelegateProvider","$compileProvider","$rootScopeProvider",function(n,t,i){i.digestTtl(20);t.debugInfoEnabled(!1);n.resourceUrlWhitelist(["self","https://www.google.com/maps/**"])}]);app.filter("autolinker",function(){return function(n){return Autolinker.link(n,"_blank")}});app.controller("changePasswordController",["$scope","$uibModalInstance","$http","formApp",function(n,t,i,r){n.change={};n.status=0;n.submitted=!1;n.save=function(){n.submitted=!0;n.changePasswordForm.$valid?(n.status=1,i.post("/changepassword",n.change).then(function(){r.$setPristine();location.reload();alert("Your password was updated successfully")}).catch(function(){n.status=3})):alert("Please enter valid passwords")};n.cancel=function(){t.dismiss()}}]);app.controller("formsbyair.baseController",["$scope","$http","$parse","Upload","$timeout","$cookies","$filter","$locale","$uibModal",function(n,t,i,r,u,f,e,o,s){function c(t){var i=t.DefaultValue,r,u;return i=="=DateTime.Today"?moment().toDate():i=="=DateTime.Time"?moment().format("h:mm a"):i=="=DateTime.Now"?moment().format():i=="=User.Name"?n.userName:i=="=User.Email"?n.userEmail:i=="=Manager.Name"?n.managerName:i=="=Manager.Email"?n.managerEmail:i=="=Referrer"?document.referrer:i.startsWith("=DateTime.Today.AddMonths(")?(r=i.replace("=DateTime.Today.AddMonths(","").replace(")",""),moment().add(r,"months").toDate()):i.startsWith("=GenerateCode(")?(u=i.replace("=GenerateCode(","").replace(")",""),n.guid(u)):i.startsWith("=Eval(")?null:i.indexOf("<<")>-1?t.AutofillKey&&i.indexOf("<<"+t.AutofillKey+">>")>-1?n.evaluateExpression(n.schema?n.schema.Form:schema.Form,i):null:i}function h(){return((1+Math.random())*65536|0).toString(16).substring(1)}n.templateVersion="276";n.loading=!0;n.schema=null;n.canvas=null;n.signaturePad=null;n.signatureElement=null;n.submitted=!1;n.submitAttempted=!1;n.status=-1;n.filesForUpload=[];n.fileNamesForUpload=[];n.userDownloadDocumentDeliveryId=null;n.section=0;n.display=0;n.skipping=!1;n.lastSection=0;n.sections=[];n.saveOptions={cookie:!1,emailAddress:null,emailElement:null};n.requestElement=null;n.showSave=!1;n.changePassword=function(){if(!n.formApp.$dirty||confirm("You will lose any unsaved changes in your form"))var t=s.open({templateUrl:"/app/views/changePassword.html?v="+n.templateVersion,controller:"changePasswordController",resolve:{formApp:function(){return n.formApp}}})};n.isTouchDevice=function(){return"ontouchstart"in window||navigator.MaxTouchPoints>0||navigator.msMaxTouchPoints>0};n.logout=function(){window.location="/logout?returnurl="+window.location.pathname};n.saveChanges=function(){n.showSave?n.showSave=!1:(n.saveOptions={cookie:!1,emailAddress:null,emailElement:null},n.formSaveEmailTag&&(n.saveOptions.emailElement=n.getElementByTag(n.schema.Form,n.formSaveEmailTag),n.saveOptions.emailAddress=n.saveOptions.emailElement.DocumentValue),n.status=0,n.showSave=!0,u(function(){var t=$("#ConfirmSaveChanges");n.scrollUp(t.offset().top,t.offset().top+t.outerHeight()+30)}))};n.previousVisibleGroup=function(n,t){for(var i=t;i>=0;i--){if(n.DocumentElements[i].VisibleGroup)return!0;if(n.DocumentElements[i].Visible)return!1}return!1};n.previousVisible=function(n,t){for(var i=t;i>=0;i--)if(n.DocumentElements[i].Visible)return!0;return!1};n.saveCancel=function(){n.showSave=!1};n.expression=function(n){return n};n.initSlider=function(){return u(function(){n.$broadcast("rzSliderForceRender")}),!0};n.getTemplate=function(t){switch(t.ElementType){case 0:switch(t.Type){case"diagram":return"/forms/elements/signature.html?v="+n.templateVersion;case"name":case"caps":case"int":return"/forms/elements/string.html?v="+n.templateVersion;default:return"/forms/elements/"+t.Type+".html?v="+n.templateVersion}case 1:return t.AllowMany?t.Format=="inline"?"/forms/elements/repeaterInline.html?v="+n.templateVersion:t.Format=="table"?"/forms/elements/repeaterTable.html?v="+n.templateVersion:"/forms/elements/repeater.html?v="+n.templateVersion:t.Inline?"/forms/elements/inline.html?v="+n.templateVersion:"/forms/elements/group.html?v="+n.templateVersion;case 3:return"/forms/elements/condition.html?v="+n.templateVersion;case 5:return"/forms/elements/section.html?v="+n.templateVersion;case 6:return"/forms/elements/validationService.html?v="+n.templateVersion;case 7:return"/forms/elements/request.html?v="+n.templateVersion;default:return""}};n.localeDateFormatDisplay=function(n){return n.Format=="month"?"mm/yyyy":n.Format=="year"?"yyyy":o.DATETIME_FORMATS.shortDate.substring(0,1).toLowerCase()=="m"?"mm/dd/yyyy":"dd/mm/yyyy"};n.localeDateFormat=function(n){return n.Format=="month"?"M!/yyyy":n.Format=="year"?"yyyy":o.DATETIME_FORMATS.shortDate.substring(0,1).toLowerCase()=="m"?"M!/d!/yyyy":"d!/M!/yyyy"};n.localeDateFormatMoment=function(n){return n.Format=="month"?"M/YYYY":n.Format=="year"?"YYYY":o.DATETIME_FORMATS.shortDate.substring(0,1).toLowerCase()=="m"?"M/D/YYYY":"D/M/YYYY"};n.toggleOpen=function(n,t,i){if(t.Open&&!i)t.Open=!1;else{if(t.AutoCollapse)for(var r=0;r<n.DocumentElements.length;r++)n.DocumentElements[r].Open=!1;t.Open=!0}};n.toggleOptionTextSelected=function(n){n.Selected||(n.DocumentValue=null,u(function(){n.DocumentValue=undefined}))};n.handleTypeaheadEnterKeySubmit=function(n,t){n.keyCode==13&&n.target.value&&!t.DocumentValue&&(n.target.value=null,n.preventDefault())};n.setPrefill=function(){n.prefill=!n.prefill};n.getMapSource=function(n){return"https://www.google.com/maps/embed?pb="+n};n.validateDateMinMax=function(t,i){t.Min&&i.$setValidity("min",!t.DocumentValue||moment(t.DocumentValue).isSameOrAfter(t.Min=="=DateTime.Now"?moment():moment(t.Min,n.localeDateFormatMoment(t)),t.Format));t.Max&&i.$setValidity("max",!t.DocumentValue||moment(t.DocumentValue).isSameOrBefore(t.Max=="=DateTime.Now"?moment():moment(t.Max,n.localeDateFormatMoment(t)),t.Format))};n.recordClick=function(t,i){i.target.tagName=="A"&&(i.preventDefault(),t.DocumentValue||(n.clearElement(t,null,null,!0),t.DocumentValue="true"),/AppleWebKit/.test(navigator.userAgent)&&!/Edge/.test(navigator.userAgent)?u(function(){window.open(i.target.href,i.target.target||"_blank")},350):window.open(i.target.href,i.target.target||"_blank"))};n.isNumber=function(n){return $.isNumeric(n)};n.repeaterRollupValues=function(t){var i=[];return n.repeaterRollupValuesRecursive(t,{count:0},i),i};n.repeaterRollupValuesRecursive=function(t,i,r){for(var u=0;u<t.DocumentElements.length&&i.count<4;u++)t.DocumentElements[u].ElementType==1||t.DocumentElements[u].ElementType==6?n.repeaterRollupValuesRecursive(t.DocumentElements[u],i,r):t.DocumentElements[u].ElementType!=0||t.DocumentElements[u].Type=="note"||t.DocumentElements[u].Type=="attachment"||t.DocumentElements[u].Type=="diagram"||t.DocumentElements[u].Type=="signature"||t.DocumentElements[u].Hidden||(t.DocumentElements[u].DocumentValue==null?r.push(null):t.DocumentElements[u].Type=="typeahead"||t.DocumentElements[u].Type=="lookup"||t.DocumentElements[u].Type=="nameValueList"?r.push(t.DocumentElements[u].DocumentValue.Name||t.DocumentElements[u].DocumentValue):t.DocumentElements[u].Type=="date"?r.push(moment(t.DocumentElements[u].DocumentValue).format(n.dateFormat=="dd/mm/yyyy"?"D/M/YYYY":"M/D/YYYY")):t.DocumentElements[u].Type=="currency"||t.DocumentElements[u].Format=="currency"?r.push(e("currency")(parseFloat(t.DocumentElements[u].DocumentValue))):t.DocumentElements[u].Type=="percent"||t.DocumentElements[u].Format=="percent"?r.push(e("percentage")(parseFloat(t.DocumentElements[u].DocumentValue))):r.push(t.DocumentElements[u].DocumentValue),i.count++)};n.lookupService=function(i,r,u){var f=i.SubscriptionId;return t.get("/api/v1/subscriptions/"+f+"/data?filter="+encodeURIComponent(r)+"&key="+n.key).then(function(n){if(u)i.DocumentValue=n.data[0];else return n.data})};n.lookupServiceSelect=function(i,r,u,f){var e=[],s,h,o;if(u&&u.element.AutofillKey&&n.getLinkedRepeaters(n.schema.Form,u.element.AutofillKey,e),s=u||{element:n.schema.Form},i&&i.GetExtendedData&&i.GetExtendedData==!0)return r.loading=!0,h=i.SubscriptionId,t.get("/api/v1/subscriptions/"+h+"/extendeddata?"+$.param(i.DocumentValue)+"&key="+n.key).then(function(t){i.DocumentValue=t.data;n.updateDefaults(s,i.AutofillKey);for(var u=0;u<e.length;u++)n.updateDefaults({element:e[u].DocumentElements[f]},i.AutofillKey);r.loading=!1});for(n.updateDefaults(s,i.AutofillKey),o=0;o<e.length;o++)n.updateDefaults({element:e[o].DocumentElements[f]},i.AutofillKey)};n.getDataFromService=function(i){if(i.DocumentValue==null){n.status=-6;i.DocumentValue={Name:""};var r={element:n.schema.Form},u=i.SubscriptionId;return t.get("/api/v1/subscriptions/"+u+"/extendeddata"+window.location.search).then(function(t){t.data&&(i.DocumentValue=t.data,n.updateDefaults(r,i.AutofillKey));n.status=0}).catch(function(t){n.status=2;n.errorDetails=t.data})}};n.lookupTable=function(t,i,r,u,f){var rt=i.TableId,l=[],a=null,v=null,p=null,k=null,d=0,s=[],g=null,e,tt,it,c,b,y,o;if(i.Type=="lookup"&&i.Hint!=null)if(e=i.Hint.indexOf(".indexOf("),e>=0){var h=i.Hint.substring(0,e).replace("<<","").replace(">>","").trim(),nt=null,w=h.indexOf(".");w>-1&&(nt=h.substring(w+1),h=h.substring(0,w));g=i.Hint.substring(e+9).replace(")","").trim();n.getDocumentValues(n.schema?n.schema.Form:schema.Form,h,s,nt);s=s.join("|").toLowerCase().split("|")}else e=i.Hint.indexOf("=="),e>=0?(tt=i.Hint.substring(e+2).trim(),v=n.evaluateExpression(t,tt),v!=null&&(a=i.Hint.substring(0,e).trim())):(e=i.Hint.indexOf("."),it=i.Hint.substring(0,e).trim(),p=n.getDocumentValue(t,it),k=i.Hint.substring(e+1).replace("<<","").replace(">>","").trim());for(c=0;c<tables.length;c++)if(tables[c].TableId==rt)for(b=tables[c].Data,y=0;y<b.length;y++)if(o=b[y],(p==null||p[o[k]])&&(r==null||(i.Type=="lookup"?o.Name.toString().toLowerCase()==r.toLowerCase():i.MatchStart?o.Name.toString().toLowerCase().indexOf(r.toLowerCase())==0:o.Name.toString().toLowerCase().indexOf(r.toLowerCase())>=0))&&(a==null||o[a]===""||v!=null&&o[a].toString().toLowerCase()==v.toString().toLowerCase())&&(s.length==0||s.indexOf(o[g].toString().toLowerCase())==-1)&&(l.push(o),d++,f&&d>=f))break;return u?(i.DocumentValue=l[0],!0):(i.Sort&&l.sort(function(n,t){return n=n.Name.toLowerCase(),t=t.Name.toLowerCase(),n>t?1:t>n?-1:0}),l)};n.lookupArray=function(t,i){var s=i.indexOf("<<"),h=i.indexOf(">>"),r=i.substring(s+2,h),u=r,o=null,f=r.indexOf("."),e;return f>-1?(o=r.substring(f+1),u=r.substring(0,f),n.getDocumentValue(t,u,o)):(e=[],n.getDocumentValues(n.schema?n.schema.Form:schema.Form,u,e),e)};n.updateDefaults=function(t,i){var l,y,h,c,e,u,r,f;if(t==null&&(t={element:n.schema.Form}),t.element.Elements&&t.element.Elements.length>0&&t.element.Elements[0].AllowMany&&t.element.Elements[0].DefaultValue!=null&&t.element.Elements[0].DefaultValue.startsWith("<<[ForEach:")){var w=t.element.Elements[0].DefaultValue.replace("<<[ForEach:","").replace("]>>",""),p=w.split(":"),s=[];for(l=0;l<p.length;l++){var o=p[l],a=null,v=o.indexOf(".");if(v>-1&&(a=o.substring(v+1),o=o.substring(0,v)),!i&&t.element.DocumentElements.length==0||o==i)if(t.element.DocumentElements.length=0,i)y=n.getDocumentValue(t,o,a),y&&(s=s.concat(y));else for(h=[],n.getDocumentValues(n.schema?n.schema.Form:schema.Form,o,h,a),c=0;c<h.length;c++)h[c]&&(s=s.concat(h[c]))}for(e=0;e<s.length;e++)if(t.element.DocumentElements.push(jQuery.extend(!0,{},t.element.Elements[0])),n.clearElement(t.element.DocumentElements[e],null),t.element.DocumentElements[e].Open=!0,t.element.DocumentElements[e].DocumentValue=s[e],t.element.Elements[0].AutofillKey)for(n.updateDefaults({element:t.element.DocumentElements[e],parent:t},t.element.Elements[0].AutofillKey),u=[],n.getLinkedRepeaters(n.schema?n.schema.Form:schema.Form,t.element.Elements[0].AutofillKey,u),r=0;r<u.length;r++)u[r].DocumentElements.push(jQuery.extend(!0,{},u[r].Elements[0])),u[r].DocumentElements[u[r].DocumentElements.length-1].LinkedRepeaterParent=t.element.DocumentElements[t.element.DocumentElements.length-1],n.clearElement(u[r].DocumentElements[u[r].DocumentElements.length-1]),n.toggleOpen(u[r],u[r].DocumentElements[u[r].DocumentElements.length-1])}if(t.element.DocumentElements)for(r=0;r<t.element.DocumentElements.length;r++)f=t.element.DocumentElements[r],f.DefaultValue!=null&&!f.DefaultValue.startsWith("<<[ForEach:")&&(!i&&f.DefaultValue.indexOf("<<")>-1&&f.DocumentValue==null||f.DefaultValue.indexOf("<<"+i+".")>-1||f.DefaultValue.indexOf("<<"+i+">>")>-1)&&(f.DocumentValue=n.evaluateExpression(t,f.DefaultValue),n.setElementValue(f,t)),f.DocumentElements&&n.updateDefaults({element:f,parent:t},i)};n.updateAddress=function(t){for(var f,e,i=t.addressGroup,u=t.result,r=0;r<i.DocumentElements.length;r++)i.DocumentElements[r].AutofillKey!=null&&(f=i.DocumentElements[r].AutofillKey.toString().toLowerCase(),f.endsWith("address1")?(e=n.getAddressComponent(u.address_components,"subpremise"),i.DocumentElements[r].DocumentValue=(e?e+"/":"")+(n.getAddressComponent(u.address_components,"street_number")+" "+n.getAddressComponent(u.address_components,"route")).trim()):f.endsWith("address2")?i.DocumentElements[r].DocumentValue=n.getAddressComponent(u.address_components,"sublocality"):f.endsWith("city")?i.DocumentElements[r].DocumentValue=n.getAddressComponent(u.address_components,"locality"):f.endsWith("state")?i.DocumentElements[r].DocumentValue=n.getAddressComponent(u.address_components,"administrative_area_level_1"):f.endsWith("postalcode")?i.DocumentElements[r].DocumentValue=n.getAddressComponent(u.address_components,"postal_code"):f.endsWith("country")&&(i.DocumentElements[r].Type=="lookup"||i.DocumentElements[r].Type=="typeahead"?n.lookupTable(i,i.DocumentElements[r],n.getAddressComponent(u.address_components,"country"),!0):i.DocumentElements[r].DocumentValue=i.DocumentElements[r].Type=="list"||i.DocumentElements[r].Type=="nameValueList"?n.getSelectedValue(i.DocumentElements[r].SimpleType.Values,n.getAddressComponent(u.address_components,"country")):n.getAddressComponent(u.address_components,"country")))};n.getAddressComponent=function(n,t){for(var r,i=0;i<n.length;i++)for(r=0;r<n[i].types.length;r++)if(n[i].types[r]==t)return n[i].long_name||"";return""};n.splitTerms=function(t,i){var r=t.replace(/(\n)/g,"bad3ce21-dd7d-48ad-bd82-0c63c019e237-53cda12c-cdb1\n"),u=r.indexOf("\n",r.length/2);return(u==-1&&(u=r.indexOf("\n")),u==-1)?i==0?n.formatTerms(r.trim().replace(/(bad3ce21-dd7d-48ad-bd82-0c63c019e237-53cda12c-cdb1)/g,"").replace(/^\s+|\s+$/g,"")):null:i==0?n.formatTerms(r.substring(0,u+1).trim().replace(/(bad3ce21-dd7d-48ad-bd82-0c63c019e237-53cda12c-cdb1)/g,"").replace(/^\s+|\s+$/g,"")):n.formatTerms(r.substring(u+1).trim().replace(/(bad3ce21-dd7d-48ad-bd82-0c63c019e237-53cda12c-cdb1)/g,"").replace(/^\s+|\s+$/g,""))};n.formatTerms=function(n){for(var t,f,i,e=n.split("\n"),r="",u=0;u<e.length;u++)t=e[u],f=t.indexOf("&nbsp; ")==0,f&&(t=t.slice(7)),t.indexOf("* ")==0||t.indexOf("*\t")==0?r+="<ul"+(f?" class='indented'":"")+"><li>"+t.substring(2)+"<\/li><\/ul>":t.indexOf("\t")>0?(i=t.substr(0,t.indexOf("\t")),r+="<ol><li><span>"+i+"<\/span>"+t.substring(i.length+1)+"<\/li><\/ol>"):(i=t.match(/^.{1,3}\.[^\s]*\s/),r+=i?"<ol"+(f?" class='indented'":"")+"><li><span>"+i[0]+"<\/span>"+t.substring(i[0].length)+"<\/li><\/ol>":e[u]+"\n");return r.slice(-1)=="\n"?r.slice(0,-1):r};n.parseHrefs=function(t,i){for(var e=/\bhref\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s>]*))/gi,u=t,f,r;(f=e.exec(t))!==null;)r=f[2]||f[1],r.indexOf(".[AttachmentUrl]")<0&&(u=u.replace(r,encodeURI(n.parseNote(r,i)).replace(/'/g,"%27")));return u};n.parseNote=function(t,i,r){if(t==null)return null;if(t.indexOf("<<")==-1)return t;while(t.indexOf("<<")>-1){var h=t.indexOf("<<"),c=t.indexOf(">>"),u=t.substring(h+2,c);if(u=="SectionValidationMessage")t=t.replace("<<"+u+">>",n.sections[n.section].SectionValidationMessage);else if(u=="SectionValidationTrace")t=t.replace("<<"+u+">>",n.sections[n.section].SectionValidationTrace);else if(u=="SectionValidationReference")t=t.replace("<<"+u+">>",n.sections[n.section].SectionValidationReference);else if(u=="SectionValidationDateTime")t=t.replace("<<"+u+">>",n.sections[n.section].SectionValidationDateTime);else if(u.startsWith("SectionValidationData"))t=t.replace("<<"+u+">>",n.$eval("sections[section]."+u));else{var o=u,s=null,f=null,e=u.indexOf(".");e>-1&&(s=u.substring(e+1),o=u.substring(0,e));f=n.getDocumentValue(i,o,s);t=f==null?t.replace("<<"+u+">>",""):t.replace("<<"+u+">>",f)}}return r&&!r.ExpressionCache?r.ExpressionCache=t:r&&t!=r.ExpressionCache&&(r.ExpressionCache=t,r.DocumentValue=null),t};n.setLimit=function(t,i){i.Elements&&i.Elements[0]&&i.Elements[0].Limit&&(i.Limit=n.evaluateExpression(t,i.Elements[0].Limit))};n.setFirst=function(n,t){return n.First=t,!0};n.buildSections=function(t,i){var u=n.sections.slice(),r;for(n.sections.length=0,t&&n.hideNavFirstSection&&n.schema.Form.DocumentElements[0].ElementType==5&&(n.schema.Form.DocumentElements[0].HideNav=!0),n.addSection(n.schema.Form,null),r=0;r<u.length-1;r++)n.sections.indexOf(u[r])<0&&!u[r].HideNav&&n.clearElement(u[r]);if(n.sections.length>0&&(n.lastSection=n.sections.length-1,t)){for(r=0;r<n.sections.length-1;r++)n.sections[r].Completed&&(n.sections[r].Visited=!0,n.sections[r+1].Visited=!0,(n.sections[r].Required||i)&&(n.section=r+1,n.display=r+1));n.trackFormEvent("section",n.schema.Form.Title+" - "+n.sections[n.section].Title)}};n.addSection=function(t,i){if(t.ElementType==5){if(t.HideNav&&t.Required&&t.Completed)return;if(t.Hidden&&!n.prefill)return;n.sections.push(t);return}if(t.DocumentElements!=null&&t.DocumentElements.length>0&&(t.ElementType!=3||i.DocumentValue!=null&&n.getElementValue(i).toString().toLowerCase()==t.Visibility.toLowerCase()))for(var r=0;r<t.DocumentElements.length;r++)n.addSection(t.DocumentElements[r],t)};n.clearServiceValidation=function(t){if((t.ElementType==5||t.ElementType==6)&&(t.DocumentValue=undefined),t.DocumentElements!=null&&t.DocumentElements.length>0)for(var i=0;i<t.DocumentElements.length;i++)n.clearServiceValidation(t.DocumentElements[i],t)};escapeValue=function(n){return typeof n=="string"?n.replace(/\\/g,"\\\\").replace(/'/g,"\\'"):n};unescapeValue=function(n){return typeof n=="string"?n.replace(/\\'/g,"'").replace(/\\\\/g,"\\"):n};n.evaluateOptions=function(n){for(var t=0;t<n.DocumentElements.length;t++)if(n.DocumentElements[t].Type=="option"&&n.DocumentElements[t].DocumentValue=="true")return n.DocumentValue=!0,!0;return n.DocumentValue=undefined,!0};n.evaluateExpression=function(parent,expression){for(var value,startTag;expression.indexOf("<<")>-1;){var start=expression.indexOf("<<"),end=expression.indexOf(">>"),tag=expression.substring(start+2,end),name=tag,property=null,startProperty=tag.indexOf(".");startProperty>-1&&(property=tag.substring(startProperty+1),name=tag.substring(0,startProperty));value=n.getDocumentValue(parent,name,property);value==null||value!=value?(startTag=expression.indexOf("<<"+tag+">>"),expression=startTag>0&&expression.substring(startTag-1,startTag)=="'"?expression.replace("<<"+tag+">>",""):expression.replace("<<"+tag+">>","null")):expression=expression.replace("<<"+tag+">>",escapeValue(value))}return unescapeValue(eval(expression.replace(/(?:\r\n|\r|\n)/g,"\\r\\n")))};n.getRepeaterParent=function(t){return t==null?null:t.element.AllowMany?t.element:n.getRepeaterParent(t.parent)};n.evaluateFormula=function(parent,element,expression){var result,duplicates,value,startTag;if(expression!=null){for(expression.startsWith("=Eval(")&&(expression=expression.substr(7,expression.length-9));expression.indexOf("sum(<<")>-1||expression.indexOf("join(<<")>-1||expression.indexOf("unique(<<")>-1||expression.indexOf("any(<<")>-1||expression.indexOf("<<")>-1;)if(expression.indexOf("sum(<<")>-1){var start=expression.indexOf("sum(<<"),end=expression.indexOf(">>)"),tag=expression.substring(start+6,end),name=tag,property=null,startProperty=tag.indexOf(".");startProperty>-1&&(property=tag.substring(startProperty+1),name=tag.substring(0,startProperty));result={value:0};n.sumDocumentValueRecursive(n.getRepeaterParent(parent)||n.schema.Form,name,result,property);expression=expression.replace("sum(<<"+tag+">>)",result.value)}else if(expression.indexOf("join(<<")>-1){var start=expression.indexOf("join(<<"),end=expression.indexOf(">>)"),tag=expression.substring(start+7,end),name=tag,property=null,startProperty=tag.indexOf(".");startProperty>-1&&(property=tag.substring(startProperty+1),name=tag.substring(0,startProperty));result={value:[]};n.joinDocumentValueRecursive(n.schema.Form,name,result,property);expression=expression.replace("join(<<"+tag+">>)",result.value.join())}else if(expression.indexOf("unique(<<")>-1){var start=expression.indexOf("unique(<<"),end=expression.indexOf(">>)"),tag=expression.substring(start+9,end),name=tag,property=null,startProperty=tag.indexOf(".");startProperty>-1&&(property=tag.substring(startProperty+1),name=tag.substring(0,startProperty));result={value:[]};n.joinDocumentValueRecursive(n.schema.Form,name,result,property);duplicates=result.value.reduce(function(n,t,i,r){return r.indexOf(t)!==i&&n.indexOf(t)<0&&n.push(t),n},[]);expression=expression.replace("unique(<<"+tag+">>)",duplicates.length>0?"false":"true")}else if(expression.indexOf("any(<<")>-1){var start=expression.indexOf("any(<<"),end=expression.indexOf(">>)"),tag=expression.substring(start+6,end),result=n.getElementByTag(parent.element,tag);expression=expression.replace("any(<<"+tag+">>)",result?"true":"false")}else{var start=expression.indexOf("<<"),end=expression.indexOf(">>"),tag=expression.substring(start+2,end);if(tag=="SectionValidationMessage")return n.sections[n.section].hasOwnProperty("SectionValidationMessage")&&(element.DocumentValue=n.sections[n.section].SectionValidationMessage),!0;if(tag=="SectionValidationTrace")return n.sections[n.section].hasOwnProperty("SectionValidationTrace")&&(element.DocumentValue=n.sections[n.section].SectionValidationTrace),!0;if(tag=="SectionValidationReference")return n.sections[n.section].hasOwnProperty("SectionValidationReference")&&(element.DocumentValue=n.sections[n.section].SectionValidationReference),!0;if(tag=="SectionValidationDateTime")return n.sections[n.section].hasOwnProperty("SectionValidationDateTime")&&(element.DocumentValue=n.sections[n.section].SectionValidationDateTime),!0;if(tag.startsWith("SectionValidationData"))return n.sections[n.section].hasOwnProperty("SectionValidationData")&&(element.DocumentValue=n.$eval("sections[section]."+tag)),!0;var name=tag,property=null,startProperty=tag.indexOf(".");if(startProperty>-1&&(property=tag.substring(startProperty+1),name=tag.substring(0,startProperty)),value=n.getDocumentValue(parent,name,property),property&&property.startsWith("[SectionValidation")&&value===undefined)return!0;value==null||value!=value?(startTag=expression.indexOf("<<"+tag+">>"),expression=startTag>0&&expression.substring(startTag-1,startTag)=="'"?expression.replace("<<"+tag+">>",""):expression.replace("<<"+tag+">>","null")):expression=expression.replace("<<"+tag+">>",escapeValue(value))}expression!=element.ExpressionCache&&(element.ExpressionCache=expression,element.DocumentValue=unescapeValue(eval(expression.replace(/(?:\r\n|\r|\n)/g,"\\r\\n"))))}return!0};n.getDocumentValue=function(t,i,r){var u;if(t!=null)if(t.element!=null){if(t.element.AutofillKey!=null&&t.element.AutofillKey.toString().toLowerCase()==i.toLowerCase())return n.getValue(t.element,r);if(u=n.getElementByTag(t.element,i,t.parent!=null?t.parent.element:undefined),u!=null)return n.getValue(u,r);if(t.element.LinkedRepeaterParent)return n.getDocumentValue(t.element.LinkedRepeaterParent,i,r);if(n.getElementByTag(t.element,i,t.parent!=null?t.parent.element:undefined,!0)!=null)return null;if(t.parent!=null)return n.getDocumentValue(t.parent,i,r)}else if(u=n.getElementByTag(t,i),u!=null)return n.getValue(u,r);return(u=n.getElementByTag(n.schema.Form,i),u!=null)?n.getValue(u,r):null};n.getValue=function(element,property){if(property!=null&&property.startsWith("["))try{return eval("element."+property.replace(/^\[(.+)\]$/,"$1"))}catch(err){return undefined}if(property!=null&&element.DocumentValue!=null)try{return eval("element.DocumentValue."+property)}catch(err){return undefined}return element.DocumentValue};n.getElementByTag=function(t,i,r,u){var f,o,e;if(t.AutofillKey!=null&&t.AutofillKey.toString().toLowerCase()==i.toLowerCase())return t;if(t.DocumentElements!=null&&t.DocumentElements.length>0&&(t.ElementType!=3||u||r&&r.DocumentValue!=null&&n.getElementValue(r).toString().toLowerCase()==t.Visibility.toLowerCase()))for(f=0;f<t.DocumentElements.length;f++)if(o=t.DocumentElements[f],e=n.getElementByTag(o,i,t,u),e!=null)return e;return null};n.getDocumentValues=function(t,i,r,u,f){var e,o;if(i&&(t.AutofillKey!=null&&t.AutofillKey.toString().toLowerCase()==i.toLowerCase()&&r.push(n.getValue(t,u)),t.DocumentElements!=null&&t.DocumentElements.length>0&&(t.ElementType!=3||f.DocumentValue!=null&&n.getElementValue(f).toString().toLowerCase()==t.Visibility.toLowerCase())))for(e=0;e<t.DocumentElements.length;e++)o=t.DocumentElements[e],n.getDocumentValues(o,i,r,u,t)};n.getLinkedRepeaters=function(t,i,r,u){var f,e;if(i)if(t.LinkedRepeater!=null&&t.LinkedRepeater.toString().toLowerCase()==i.toLowerCase()&&r.push(u),t.Elements!=null&&t.Elements.length>0)for(f=0;f<t.Elements.length;f++)e=t.Elements[f],n.getLinkedRepeaters(e,i,r,t);else if(t.DocumentElements!=null&&t.DocumentElements.length>0)for(f=0;f<t.DocumentElements.length;f++)e=t.DocumentElements[f],n.getLinkedRepeaters(e,i,r,t)};n.sumDocumentValueRecursive=function(t,i,r,u,f){var e,o;if(t.AutofillKey!=null&&t.AutofillKey.toString().toLowerCase()==i.toLowerCase()&&(r.value+=Number(n.getValue(t,u)||0)),t.DocumentElements!=null&&t.DocumentElements.length>0&&(t.ElementType!=3||f.DocumentValue!=null&&n.getElementValue(f).toString().toLowerCase()==t.Visibility.toLowerCase()))for(e=0;e<t.DocumentElements.length;e++)o=t.DocumentElements[e],n.sumDocumentValueRecursive(o,i,r,u,t)};n.joinDocumentValueRecursive=function(t,i,r,u,f){var e,o;if(t.AutofillKey!=null&&t.AutofillKey.toString().toLowerCase()==i.toLowerCase()&&r.value.push(n.getValue(t,u)||""),t.DocumentElements!=null&&t.DocumentElements.length>0&&(t.ElementType!=3||f.DocumentValue!=null&&n.getElementValue(f).toString().toLowerCase()==t.Visibility.toLowerCase()))for(e=0;e<t.DocumentElements.length;e++)o=t.DocumentElements[e],n.joinDocumentValueRecursive(o,i,r,u,t)};n.signEdit=function(t){n.saveSignature();n.signatureElement=t;setTimeout(function(){n.canvas=$("canvas")[0];var t=window.devicePixelRatio||1;n.canvas.width=n.canvas.offsetWidth*t;n.canvas.height=n.canvas.offsetHeight*t;n.canvas.getContext("2d").scale(t,t);n.signaturePad=new SignaturePad(n.canvas);n.signatureElement.DocumentValue!=null&&n.signaturePad.fromDataURL(n.signatureElement.DocumentValue)},50)};n.reset=function(t){n.submitted=!1;n.status=0;n.section=0;n.display=0;n.documentId="";n.userDownloadDocumentDeliveryId=null;n.formApp.$setPristine();n.filesForUpload.length=0;n.fileNamesForUpload.length=0;t?n.clearServiceValidation(n.schema.Form,null):(n.clearElement(n.schema.Form,null),n.buildSections());n.scrollTo(0)};n.checkValidationService=function(n,t){return(!n||n=="Fail"||n=="Error")&&t.Required?!1:!0};n.executeValidationService=function(i,f,e,o){try{(i.Format==null||i.Format=="")&&(n.submitted=!0);n.saveSignature();var s=i;s.DocumentValue="Validating";n.openInvalidRepeater(s);u(function(){var c,l,h;f.$valid?s.ConfirmationMessage==null||confirm(n.parseNote(s.ConfirmationMessage))?(n.status=-5,c=jQuery.extend(!0,{},i),n.filesForUpload.length=0,n.fileNamesForUpload.length=0,n.parseElement(c,null,!1),l={FormId:n.schema.FormId,Version:n.schema.Version,Form:c},n.filesForUpload.length>0?r.upload({url:"/api/v2/documents?subscriptionId="+s.SubscriptionId+"&documentId="+n.documentId+"&key="+n.key,method:"POST",data:{schema:r.json(l),filenames:r.json(n.fileNamesForUpload),files:n.filesForUpload}}).then(function(t){n.documentId=t.data.DocumentId;n.submitted=!1;u(function(){n.status=0;i.Format=="redirect"?(s.DocumentValue=null,s.DocumentDeliveryId=t.data.Reference,n.saveUrl=t.data.Url,n.submit(4)):(s.DocumentValue=t.data.Code,s.SectionValidationMessage=t.data.Message,s.SectionValidationTrace=t.data.Trace,s.SectionValidationReference=t.data.Reference,s.SectionValidationDateTime=t.data.DateTime,s.SectionValidationData=t.data.Data,s.SectionValidationWarnings=t.data.Warnings,t.data.Data&&n.updateDefaults(o,i.AutofillKey))})}).catch(function(t){n.documentId=t.data.DocumentId;s.DocumentValue=t.data.Code;s.SectionValidationMessage=t.data.Message;s.SectionValidationTrace=t.data.Trace;s.SectionValidationDateTime=t.data.DateTime;n.status=0}):t.post("/api/v2/documents?subscriptionId="+s.SubscriptionId+"&documentId="+n.documentId+"&key="+n.key,l).then(function(t){n.documentId=t.data.DocumentId;n.submitted=!1;u(function(){n.status=0;i.Format=="redirect"?(s.DocumentValue=null,s.DocumentDeliveryId=t.data.Reference,n.saveUrl=t.data.Url,n.submit(4)):(s.DocumentValue=t.data.Code,s.SectionValidationMessage=t.data.Message,s.SectionValidationTrace=t.data.Trace,s.SectionValidationReference=t.data.Reference,s.SectionValidationDateTime=t.data.DateTime,s.SectionValidationData=t.data.Data,s.SectionValidationWarnings=t.data.Warnings,t.data.Data&&n.updateDefaults(o,i.AutofillKey))})}).catch(function(t){n.documentId=t.data.DocumentId;s.DocumentValue=t.data.Code;s.SectionValidationMessage=t.data.Message;s.SectionValidationTrace=t.data.Trace;s.SectionValidationDateTime=t.data.DateTime;n.status=0})):s.DocumentValue=null:(s.DocumentValue=null,alert("Can't submit for verification, one or more questions have missing or invalid entries."),h=$(e.target.parentNode.parentNode.parentNode.parentNode),h=$(".help-block:visible",h).eq(0).parent(),h.prev().length!=0&&(h=h.prev()),n.scrollTo(h.offset().top-15))})}catch(h){n.status=2;n.errorDetails=h.message}};n.validateModel=function(){if(n.sections.length==0){if(!n.validateSectionModel(n.schema.Form))return!1}else for(var t=0;t<n.sections.length;t++)if(!n.validateSectionModel(n.sections[t]))return n.section=t,n.display=t,!1;return!0};n.validateSectionModel=function(t,i,r,u){var f,e,o;if(r)t.Type=="formula"&&n.evaluateFormula(i,t,t.Hint);else if((!n.isThirdPartyRequest||u)&&(t.ElementType==0&&(t.Type=="boolean"&&t.Required&&t.DocumentValue!="true"||t.Type=="formula"&&n.evaluateFormula(i,t,t.Hint)&&t.ValidationMethod&&!n.$eval((t.ValidationMethod!="expression"?t.ValidationMethod:"")+"('"+t.DocumentValue+"')")||t.Type!="boolean"&&t.Type!="formula"&&t.Required&&(t.DocumentValue==null||t.DocumentValue.toString()==""))||t.ElementType==1&&!t.AllowMany&&t.Required&&n.evaluateOptions(t)&&t.DocumentValue==undefined||t.ElementType==6&&t.Format!="post"&&!n.checkValidationService(t.DocumentValue,t)))return!1;if(t.DocumentElements!=null&&t.DocumentElements.length>0&&(t.ElementType!=3||i&&i.element.DocumentValue!=null&&n.getElementValue(i.element).toString().toLowerCase()==t.Visibility.toLowerCase()))for(f=0;f<t.DocumentElements.length;f++)if(e=t.DocumentElements[f],o=n.validateSectionModel(e,{parent:i,element:t},r||t.ElementType==4,u||t.RequestDocumentId==n.documentId),o==!1)return!1;return!0};n.nextSection=function(i){try{if(n.status<0&&!i||n.status==1||n.status==3)return;n.status=-1;n.submitted=!0;n.saveSignature();var f=n.sections[n.section];n.openInvalidRepeater(f);u(function(){if(n.prefill||n.formApp.$valid&&n.validateSectionModel(f))if(f.DocumentValue=null,f.SubscriptionId!=null)if(f.ValidationMethod==null||n.evaluateExpression(f,f.ValidationMethod))if(f.ConfirmationMessage==null||confirm(n.parseNote(f.ConfirmationMessage))){var e=jQuery.extend(!0,{},n.schema);n.filesForUpload.length=0;n.fileNamesForUpload.length=0;n.parseElement(e.Form,null,!1);n.filesForUpload.length>0?r.upload({url:"/api/v2/documents?subscriptionId="+f.SubscriptionId+"&documentId="+n.documentId+"&key="+n.key,method:"POST",data:{schema:r.json(e),filenames:r.json(n.fileNamesForUpload),files:n.filesForUpload}}).then(function(t){if(t.status==200){n.formApp.$setPristine();window.location=n.returnUrl;return}f.DocumentValue=t.data.Code;f.SectionValidationMessage=t.data.Message;f.SectionValidationTrace=t.data.Trace;f.SectionValidationReference=t.data.Reference;f.SectionValidationDateTime=t.data.DateTime;f.SectionValidationData=t.data.Data;f.SectionValidationWarnings=t.data.Warnings;n.documentId=t.data.DocumentId;n.submitted=!1;u(function(){n.moveNextSection(i)})}).catch(function(t){f.DocumentValue=t.data.Code;f.SectionValidationMessage=t.data.Message;f.SectionValidationTrace=t.data.Trace;f.SectionValidationDateTime=t.data.DateTime;n.documentId=t.data.DocumentId;n.displayNextSection()}):t.post("/api/v2/documents?subscriptionId="+f.SubscriptionId+"&documentId="+n.documentId+"&key="+n.key,e).then(function(t){if(t.status==200){n.formApp.$setPristine();window.location=n.returnUrl;return}f.DocumentValue=t.data.Code;f.SectionValidationMessage=t.data.Message;f.SectionValidationTrace=t.data.Trace;f.SectionValidationReference=t.data.Reference;f.SectionValidationDateTime=t.data.DateTime;f.SectionValidationData=t.data.Data;f.SectionValidationWarnings=t.data.Warnings;n.documentId=t.data.DocumentId;n.submitted=!1;u(function(){n.moveNextSection(i)})}).catch(function(t){f.DocumentValue=t.data.Code;f.SectionValidationMessage=t.data.Message;f.SectionValidationTrace=t.data.Trace;f.SectionValidationDateTime=t.data.DateTime;n.documentId=t.data.DocumentId;n.displayNextSection()})}else n.displayNextSection();else n.submitted=!1,n.moveNextSection(i);else f.ConfirmationMessage==null||confirm(n.parseNote(f.ConfirmationMessage))?(n.submitted=!1,n.moveNextSection(i)):n.displayNextSection();else n.displayNextSection(),u(function(){setTimeout(function(){alert("Can't move to the next section, one or more questions have missing or invalid entries.");var t=$(".help-block:visible").eq(0).parent();t.prev().length!=0&&(t=t.prev());n.scrollTo(t.offset().top-15)})})})}catch(e){n.status=2;n.errorDetails=e.message}};n.displayNextSection=function(){n.display!=n.section?(n.display=n.section,u(function(){n.skipping=!1;n.status=0},500)):(n.skipping=!1,n.status=0)};n.moveNextSection=function(t){var r=n.section,i=n.sections[n.section];n.prefill||(i.Completed=!0);n.buildSections();i.HideNav&&i.Required||n.section++;n.sections[n.section].Visited||(n.updateDefaults({element:n.sections[n.section]}),n.prefill||(n.sections[n.section].Visited=!0));t?n.moveSection(n.sectionTargetName,r):(n.displayNextSection(),n.trackFormEvent("section",n.schema.Form.Title+" - "+n.sections[n.section].Title),$("#bs-example-navbar-collapse-1").collapse("hide"),n.scrollTo(0))};n.previousSection=function(t){var r,i;if(t==null&&(t=n.section>0?n.section-1:0),t!=n.section&&!(n.status<0)&&n.status!=1&&n.status!=3){if(n.status=-1,t<n.section){for(r=n.section-1;r>=t;r--)if(i=n.sections[r],i.Required&&(i.ValidationMethod==null||n.evaluateExpression(i,i.ValidationMethod))){alert("Sorry, you can't navigate back to this section. If you need to modify your information you'll need to start again.");n.status=0;return}n.sections[n.section].DocumentValue=null;n.section=t;n.display=t;n.trackFormEvent("section",n.schema.Form.Title+" - "+n.sections[n.section].Title);$("#bs-example-navbar-collapse-1").collapse("hide");n.scrollTo(0);n.status=0}t>n.section&&(n.sectionTargetName=n.sections[t].Name,t>n.section+1&&(n.skipping=!0),n.moveSection(n.sectionTargetName))}};n.moveSection=function(t,i){i!=null&&(!n.sections[n.section].Completed&&!n.prefill||n.section==i||n.sections[n.section].Name==t||n.section>=n.sections.length-1)?(n.displayNextSection(),n.section!=i&&(n.trackFormEvent("section",n.schema.Form.Title+" - "+n.sections[n.section].Title),$("#bs-example-navbar-collapse-1").collapse("hide"),n.scrollTo(0))):n.nextSection(!0)};n.getSelectedValue=function(n,t){for(var i=0;i<n.length;i++)if(n[i].Value==t)return n[i].hasOwnProperty("Name")?n[i]:n[i].Value;return null};n.setElementDefault=function(t,i){var r,s,f,h,o,e,u;if(i!=null&&(t.DefaultValue!=null&&t.DocumentValue==null&&(t.DocumentValue=c(t)),n.setElementValue(t,i),t.AllowMany&&!t.AutoCollapse&&(t.Open=!0)),t.DocumentElements!=null&&t.DocumentElements.length>0){for(r=0;r<t.DocumentElements.length;r++)n.setElementDefault(t.DocumentElements[r],{parent:i,element:t}),r>0&&t.DocumentElements[r-1].Type=="signature"&&t.DocumentElements[r].Type=="date"&&(t.DocumentElements[r-1].SignatureDate=t.DocumentElements[r]);if(t.Elements!=null&&t.Elements.length>0&&t.Elements[0].AllowMany){if(t.Elements[0].TableId)for(s=t.Elements[0].TableId,f=0;f<tables.length;f++)if(tables[f].TableId==s)for(h=tables[f].Data,u=0;u<t.DocumentElements.length;u++)t.DocumentElements[u].DocumentValue=h[u];for(o=[],n.getLinkedRepeaters(n.schema?n.schema.Form:schema.Form,t.Elements[0].AutofillKey,o),e=0;e<t.DocumentElements.length;e++)for(u=0;u<o.length;u++)o[u].DocumentElements[e].LinkedRepeaterParent=t.DocumentElements[e];n.setElementDefault(t.Elements[0])}}};n.openInvalidRepeater=function(t,i){if(i!=null&&t.AllowMany&&t.RepeaterForm&&!t.RepeaterForm.$valid&&!t.Open&&(t.Open=!0),t.DocumentElements!=null&&t.DocumentElements.length>0)for(var r=0;r<t.DocumentElements.length;r++)n.openInvalidRepeater(t.DocumentElements[r],t)};n.removeVisible=function(n){delete n.Visible;delete n.VisibleGroup};n.clearElement=function(t,i,r,f){var a,h,l,o,e,s;if(f&&t.ElementType==5||f&&t.Elements!=null&&t.Elements.length>0&&t.Elements[0].AllowMany&&t.Elements[0].DefaultValue!=null)return!0;if(t.ElementType==5&&(delete t.Visited,delete t.Completed),i!=null&&(t.DocumentValue=r&&t.AutofillKey&&r[t.AutofillKey.toLowerCase()]?r[t.AutofillKey.toLowerCase()]:t.DefaultValue!=null?c(t):undefined,delete t.Audit,delete t.Selected,delete t.ExpressionCache,n.setElementValue(t,i)),t.DocumentElements!=null&&t.DocumentElements.length>0)if(t.DocumentElements[0].AllowMany&&!t.DocumentElements[0].LinkedRepeaterParent){if(t.DocumentElements[0].AutofillKey)for(o=[],n.getLinkedRepeaters(n.schema?n.schema.Form:schema.Form,t.DocumentElements[0].AutofillKey,o),s=0;s<o.length;s++)o[s].DocumentElements=[];t.DocumentElements=[]}else for(e=0;e<t.DocumentElements.length;e++)n.clearElement(t.DocumentElements[e],t,r,f),e>0&&t.DocumentElements[e-1].Type=="signature"&&t.DocumentElements[e].Type=="date"&&(t.DocumentElements[e-1].SignatureDate=t.DocumentElements[e]);if(t.Elements!=null&&t.Elements.length>0&&t.Elements[0].AllowMany&&!t.Elements[0].LinkedRepeater)if(t.Elements[0].TableId){for(a=t.Elements[0].TableId,h=0;h<tables.length;h++)if(tables[h].TableId==a)for(l=tables[h].Data,o=[],n.getLinkedRepeaters(n.schema?n.schema.Form:schema.Form,t.Elements[0].AutofillKey,o),e=0;e<l.length;e++)for(t.DocumentElements.push(jQuery.extend(!0,{},t.Elements[0])),n.clearElement(t.DocumentElements[e],null),t.DocumentElements[e].Open=!0,t.DocumentElements[e].DocumentValue=l[e],s=0;s<o.length;s++)o[s].DocumentElements.push(jQuery.extend(!0,{},o[s].Elements[0])),o[s].DocumentElements[o[s].DocumentElements.length-1].LinkedRepeaterParent=t.DocumentElements[e],n.clearElement(o[s].DocumentElements[o[s].DocumentElements.length-1],null),o[s].DocumentElements[o[s].DocumentElements.length-1].Open=!0}else t.Elements[0].Required&&u(function(){(t.DocumentElements==null||t.DocumentElements.length==0)&&n.addElement(t,t.Elements[0],null,r)})};n.getElementValue=function(n){return(n.Type=="typeahead"||n.Type=="lookup")&&n.DocumentValue!=null&&n.DocumentValue.hasOwnProperty("Name")?n.DocumentValue.Name:n.Type=="nameValueList"&&n.DocumentValue!=null&&n.DocumentValue.hasOwnProperty("Value")?n.DocumentValue.Value:n.DocumentValue};n.getParsedElementValue=function(n){return(n.Type=="typeahead"||n.Type=="lookup")&&n.DocumentValue!=null?JSON.parse(n.DocumentValue).Name:n.DocumentValue};n.setElementValue=function(t,i){if(t.Type=="addressPicker"&&(t.options={editable:t.AllowManualEntry},t.ValidationMethod!=null&&(t.options.country=t.ValidationMethod)),t.Type=="optionText"&&t.DocumentValue!=null&&t.DocumentValue!=""&&(t.Selected=!0),t.Type=="boolean"&&t.DocumentValue==undefined&&(t.DocumentValue=!1),t.Type=="date"&&(t.DateOptions={datepickerMode:t.Format,minMode:t.Format},t.DocumentValue!=null&&t.DocumentValue!=""&&(t.DocumentValue=new Date(t.DocumentValue))),t.Type=="number"&&t.DocumentValue!=null&&t.DocumentValue.toString()!=""&&(t.DocumentValue=Number(t.DocumentValue)),(t.Type=="typeahead"||t.Type=="lookup")&&t.DocumentValue!=null&&t.DocumentValue!="")try{var r=JSON.parse(t.DocumentValue);t.DocumentValue=r}catch(u){t.AllowManualEntry||(t.TableId?n.lookupTable(i,t,t.DocumentValue,!0):t.SubscriptionId&&n.lookupService(t,t.DocumentValue,!0))}(t.Type=="list"||t.Type=="nameValueList")&&(t.DocumentValue!=null&&t.DocumentValue!=""?t.DocumentValue=n.getSelectedValue(t.SimpleType.Values,t.DocumentValue):t.DocumentValue==""&&(t.DocumentValue=null));t.Type=="slider"&&(t.SliderOptions={floor:Number(t.Min),ceil:Number(t.Max),step:Number(t.Step),translate:function(n){return t.Format=="currency"?e("currency")(n,undefined,t.Decimals):e("number")(n)}},t.DocumentValue=t.DocumentValue!=null&&t.DocumentValue!=""?Number(t.DocumentValue):Number(t.Min));t.Type=="attachment"&&t.DocumentValue!=null&&(t.AttachmentUrl="/documents/"+n.documentId+"/request/elements/"+t.Name+"/attachments?filename="+encodeURIComponent(t.DocumentValue)+"&subscriptionId="+(t.SubscriptionId||""),t.AttachedTemplateUrl=t.AttachmentUrl)};n.cookieEnabled=function(){return navigator.cookieEnabled};n.deleteSavedForm=function(){confirm("Are you sure you want to delete this saved form?")&&(n.cookieEnabled()&&f.remove(n.formRef,{path:"/forms"}),t.delete("/api/v1/documents/"+n.documentId+"?key="+n.key).then(function(){n.request?n.cancel():window.location="/forms/"+n.formRef}).catch(function(){alert("An error ocurred when deleting your saved form, please try again later")}))};typeof String.prototype.startsWith!="function"&&(String.prototype.startsWith=function(n){return this.indexOf(n)===0});n.addElement=function(t,i,r,f){var s=r?$(r.target).closest("div:visible[id='repeatercontainer']"):null,e,o;if(t.DocumentElements.push(jQuery.extend(!0,{},i)),n.clearElement(t.DocumentElements[t.DocumentElements.length-1],null,f),n.toggleOpen(t,t.DocumentElements[t.DocumentElements.length-1]),i.AutofillKey!=null)for(e=[],n.getLinkedRepeaters(n.schema?n.schema.Form:schema.Form,i.AutofillKey,e),o=0;o<e.length;o++)e[o].DocumentElements.push(jQuery.extend(!0,{},e[o].Elements[0])),e[o].DocumentElements[e[o].DocumentElements.length-1].LinkedRepeaterParent=t.DocumentElements[t.DocumentElements.length-1],n.clearElement(e[o].DocumentElements[e[o].DocumentElements.length-1],null,f),n.toggleOpen(e[o],e[o].DocumentElements[e[o].DocumentElements.length-1]);s&&u(function(){var t=$("div:visible[id='bottom']",s).last();s=$("#container",s).eq(0).children().last().children().last();s=$("div:visible",s).eq(0);s.length>0&&n.scrollUp(s.offset().top,t.offset().top)})};n.removeElement=function(t,i){var f,r,u;if(confirm("Are you sure you want to remove this "+n.parseNote(i.Title)+"?")&&(f=t.element.DocumentElements.indexOf(i),t.element.DocumentElements.splice(f,1),i.AutofillKey!=null))for(r=[],n.getLinkedRepeaters(n.schema.Form,i.AutofillKey,r),u=0;u<r.length;u++)r[u].DocumentElements.splice(f,1)};n.duplicateLastElement=function(t,i){var r={element:t},u=r.element.DocumentElements[r.element.DocumentElements.length-1];n.duplicateElement(r,u,i)};n.duplicateElement=function(t,i,r){var f=r?$(r.target).closest("div:visible[id='repeatercontainer']"):null,s=t.element.DocumentElements.indexOf(i),e,o;if(t.element.DocumentElements.push(jQuery.extend(!0,{},i)),n.toggleOpen(t.element,t.element.DocumentElements[t.element.DocumentElements.length-1],!0),i.AutofillKey!=null)for(e=[],n.getLinkedRepeaters(n.schema.Form,i.AutofillKey,e),o=0;o<e.length;o++)e[o].DocumentElements.push(jQuery.extend(!0,{},e[o].DocumentElements[s])),e[o].DocumentElements[e[o].DocumentElements.length-1].LinkedRepeaterParent=t.element.DocumentElements[t.element.DocumentElements.length-1];f&&u(function(){var t=$("div:visible[id='bottom']",f).last();f=$("#container",f).eq(0).children().last().children().last();f=$("div:visible",f).eq(0);f.length>0&&n.scrollUp(f.offset().top,t.offset().top)})};n.saveSignature=function(){n.signatureElement!=null&&(n.signaturePad.isEmpty()?(n.signatureElement.DocumentValue=null,delete n.signatureElement.Audit,n.signatureElement.SignatureDate&&(n.signatureElement.SignatureDate.DocumentValue=undefined)):(n.signatureElement.DocumentValue=n.signaturePad.toDataURL(),n.signatureElement.Type=="signature"&&(n.signatureElement.Audit="Captured from "+n.ipAddress+" on "+navigator.userAgent,n.signatureElement.SignatureDate&&(n.signatureElement.SignatureDate.DocumentValue=moment().toDate()))),n.signatureElement=null,n.canvas=null,n.signaturePad=null)};n.signRemove=function(){n.signatureElement=null;n.canvas=null;n.signaturePad=null};n.signTrash=function(){n.signaturePad.clear()};n.signColor=function(t){n.signaturePad.minWidth=.5;n.signaturePad.penColor=t};n.signErase=function(){n.signaturePad.minWidth=10;n.signaturePad.penColor="rgb(255,255,255)"};n.signUpload=function(t){var i=n.canvas,u=i.getContext("2d"),r=new FileReader;r.onload=function(n){var t=new Image;t.onload=function(){u.drawImage(t,0,0,i.width,i.height)};t.src=n.target.result};r.readAsDataURL(t[0])};n.upload=function(t,i){var r,u;if(t&&t.length)for(r=0;r<t.length;r++)u=t[r],i.SubscriptionId&&u.name.toLowerCase().match(/\.docx$/)==null?alert("Please select a Microsoft Word (.docx) file"):n.filenameExistsForElement(n.schema.Form,i.Name,u.name)?alert("You've already attached a file with the same name to another item in this list, please select a different file."):i.DocumentValue=u};n.filenameExistsForElement=function(t,i,r){var u,f;if(t.Name==i&&t.DocumentValue!=null&&(t.DocumentValue.name&&t.DocumentValue.name==r||t.DocumentValue==r))return!0;if(t.DocumentElements!=null&&t.DocumentElements.length>0)for(u=0;u<t.DocumentElements.length;u++)if(f=n.filenameExistsForElement(t.DocumentElements[u],i,r),f==!0)return!0;return!1};n.parseElement=function(t,i,r,u){var f,e;if(u||(delete t.AutoCollapse,delete t.Required,delete t.Hidden,delete t.ReadOnly,delete t.PopupNote,delete t.ForceDropdown,delete t.ListType,delete t.Format,delete t.AllowManualEntry,delete t.MatchStart,delete t.GetExtendedData,delete t.Limit,delete t.Title,delete t.Prompt,delete t.Note,delete t.Hint,delete t.AutofillKey,delete t.SimpleType,delete t.DefaultValue,delete t.SubscriptionId,delete t.ValidationMethod,delete t.ValidationMessage,delete t.ValidationInline,delete t.ConfirmationMessage,delete t.TableId,delete t.Min,delete t.Max,delete t.Step,delete t.LinkedRepeater,delete t.Decimals,delete t.Inline,delete t.Width,delete t.Country,delete t.Sort,delete t.CssClass,delete t.Audit,delete t.SignatureDate,delete t.Selected,delete t.Elements,delete t.SliderOptions,delete t.DateOptions,delete t.ExpressionCache,delete t.Visible,delete t.VisibleGroup,delete t.First,delete t.CanDuplicate,delete t.CanSubmitPartial,delete t.ArrayExpression,delete t.DisplayProperty,delete t.AttachedTemplateUrl,delete t.Pop,delete t.ShowRequest,delete t.RequestEmailAddressElement,delete t.RequestEmailAddress,delete t.RequestEmailMessageElement,delete t.RequestEmailMessage),delete t.RepeaterForm,delete t.LinkedRepeaterParent,r)t.DocumentValue=undefined;else if((t.Type=="typeahead"||t.Type=="lookup")&&t.DocumentValue!=null&&t.DocumentValue.hasOwnProperty("Name"))t.DocumentValue=JSON.stringify(t.DocumentValue);else if(t.Type=="nameValueList"&&t.DocumentValue!=null&&t.DocumentValue.Value!=null)t.DocumentValue=t.DocumentValue.Value;else if(t.Type=="attachment"&&t.DocumentValue!=null)t.DocumentValue.name&&(n.filesForUpload.push(t.DocumentValue),n.fileNamesForUpload.push(t.Name+"."+t.DocumentValue.name),t.DocumentValue=t.DocumentValue.name);else if(t.Type=="date"&&t.DocumentValue!=null&&t.DocumentValue!=""){var h=t.DocumentValue.getFullYear().toString(),o=(t.DocumentValue.getMonth()+1).toString(),s=t.DocumentValue.getDate().toString();t.DocumentValue=h+"-"+(o[1]?o:"0"+o[0])+"-"+(s[1]?s:"0"+s[0])}else t.AllowMany&&t.DocumentValue&&(t.DocumentValue=undefined);if(t.DocumentElements!=null&&t.DocumentElements.length>0)for(f=r,f==!1&&t.ElementType==3&&(i.DocumentValue==null||n.getParsedElementValue(i).toString().toLowerCase()!=t.Visibility.toLowerCase())&&(f=!0),e=0;e<t.DocumentElements.length;e++)n.parseElement(t.DocumentElements[e],t,f,u)};n.toggleErrorDetails=function(){n.showErrorDetails=!n.showErrorDetails};n.openRequest=function(t){t.ShowRequest=!t.ShowRequest;t.ShowRequest&&n.formThirdPartyRequestEmailTag&&(t.RequestEmailAddressElement=n.getElementByTag(t,n.formThirdPartyRequestEmailTag),t.RequestEmailAddressElement&&(t.RequestEmailAddress=t.RequestEmailAddressElement.DocumentValue),t.RequestEmailMessageElement=n.getElementByTag(t,"RequestEmailMessage"))};n.cancelRequest=function(i){if(confirm("Are you sure you want to cancel this request?"))try{u(function(){n.status=-1;t.delete("/api/v1/documents/"+i.RequestDocumentId+"?key="+n.key).then(function(){i.ShowRequest=!1;i.DocumentValue=null;i.RequestDocumentId=null;i.RequestEmailAddressElement=null;i.RequestEmailAddress=null;i.RequestEmailMessageElement=null;i.RequestEmailMessage=null;n.status=0;n.formApp.$setDirty()}).catch(function(){n.status=0})})}catch(r){n.status=2;n.errorDetails=r.message}};n.generateRequest=function(i){try{u(function(){n.status=-1;t.post("/api/v2/documents/thirdpartyrequest?formId="+n.schema.FormId+"&documentId="+n.documentId+"&key="+n.key).then(function(t){i.RequestDocumentId=t.data.DocumentId;n.documentId=t.data.ParentDocumentId;i.DocumentValue='<span class="glyphicon glyphicon-ok" aria-hidden="true"><\/span>&nbsp;&nbsp;Generated request for this section: '+window.location.origin+"/forms/requests/"+i.RequestDocumentId;i.RequestEmailAddress?(i.RequestEmailAddressElement.DocumentValue=i.RequestEmailAddress,i.DocumentValue+='<br><span class="glyphicon glyphicon-ok" aria-hidden="true"><\/span>&nbsp;&nbsp;Sent request to '+i.RequestEmailAddress+" "+moment().format("D MMM YYYY h:mm A")):i.DocumentValue+='<br><span class="glyphicon glyphicon-arrow-right" aria-hidden="true"><\/span>&nbsp;&nbsp;Please send the request link above to the person that needs to complete it';i.RequestEmailMessage&&(i.RequestEmailMessageElement.DocumentValue=i.RequestEmailMessage);n.requestElement=i;n.status=0;n.submit(13,t.data.DocumentId)}).catch(function(){n.status=0})})}catch(r){n.status=2;n.errorDetails=r.message}};n.submit=function(i,e){try{if(n.status<0)return;if(n.status=i==4?n.saveUrl?-5:-2:i==3?-3:i==1?-4:-1,i<=0&&(n.submitted=!0),i==4&&n.saveOptions.emailElement)if(n.formApp.saveForm.$valid)n.saveOptions.emailElement.DocumentValue=n.saveOptions.emailAddress;else{alert("Please enter a valid email address, or no email address to save your changes.");n.status=0;return}n.submitAttempted=!0;n.saveSignature();n.openInvalidRepeater(n.schema.Form);u(function(){try{if(i>0||n.formApp.$valid&&n.validateModel()){n.trackFormEvent(i==4||i==3?"save":i==1?"submit-partial":"submit",n.schema.TrackingLabel?n.parseNote(n.schema.TrackingLabel):n.schema.Form.Title);var o=jQuery.extend(!0,{},n.schema);n.filesForUpload.length=0;n.fileNamesForUpload.length=0;n.parseElement(o.Form,null,!1);n.filesForUpload.length>0?r.upload({url:"/api/v2/documents?documentId="+(e||n.documentId)+"&type="+i+"&key="+n.key,method:"POST",data:{schema:r.json(o),filenames:r.json(n.fileNamesForUpload),files:n.filesForUpload}}).then(function(t){n.cookieEnabled()&&f.remove(n.formRef,{path:"/forms"});n.kioskModeEnabled?(alert(n.parseNote(n.confirmationMessage)),n.reset()):(n.formApp.$setPristine(),n.filesForUpload.length=0,n.fileNamesForUpload.length=0,n.userDownloadDocumentDeliveryId=t.data.UserDownloadDocumentDeliveryId,n.submitPartial=!1,n.showSave=!1,i==4?n.saveUrl?(o=jQuery.extend(!0,{},n.schema),n.parseElement(o.Form,null,!1,!0),sessionStorage.schema=JSON.stringify(o),sessionStorage.documentId=t.data.DocumentId,sessionStorage.section=n.section,window.location=n.saveUrl):(n.documentId=t.data.DocumentId,n.saveOptions.cookie&&f.put(n.formRef,n.documentId,{expires:moment().add(10,"days").toDate(),path:"/forms"}),n.status=5):i==5?(n.documentId=t.data.DocumentId,n.status=6):i==3||i==2?n.returnUrl?window.location=n.returnUrl:(n.documentId=t.data.DocumentId,n.status=4):i==-1?window.location=n.returnUrl:n.submitUrl?window.location=n.submitUrl:n.returnOnSubmit?(alert(n.parseNote(n.confirmationMessage)),n.embed?window.parent.postMessage(["formsbyair-close"],"*"):window.location=n.returnUrl):i==13?(n.requestElement.ShowRequest=!1,n.status=0,n.formApp.$setDirty()):n.status=3,n.embed&&u(function(){resizeParentFrame()}))}).catch(function(t){n.status=2;n.errorDetails=t.data}):t.post("/api/v2/documents?documentId="+(e||n.documentId)+"&type="+i+"&key="+n.key,o).then(function(t){n.cookieEnabled()&&f.remove(n.formRef,{path:"/forms"});n.kioskModeEnabled?(alert(n.parseNote(n.confirmationMessage)),n.reset()):(n.formApp.$setPristine(),n.userDownloadDocumentDeliveryId=t.data.UserDownloadDocumentDeliveryId,n.submitPartial=!1,n.showSave=!1,i==4?n.saveUrl?(o=jQuery.extend(!0,{},n.schema),n.parseElement(o.Form,null,!1,!0),sessionStorage.schema=JSON.stringify(o),sessionStorage.documentId=t.data.DocumentId,sessionStorage.section=n.section,window.location=n.saveUrl):(n.documentId=t.data.DocumentId,n.saveOptions.cookie&&f.put(n.formRef,n.documentId,{expires:moment().add(10,"days").toDate(),path:"/forms"}),n.status=5):i==5?(n.documentId=t.data.DocumentId,n.status=6):i==3||i==2?n.returnUrl?window.location=n.returnUrl:(n.documentId=t.data.DocumentId,n.status=4):i==-1?window.location=n.returnUrl:n.submitUrl?window.location=n.submitUrl:n.returnOnSubmit?(alert(n.parseNote(n.confirmationMessage)),n.embed?window.parent.postMessage(["formsbyair-close"],"*"):window.location=n.returnUrl):i==13?(n.requestElement.ShowRequest=!1,n.status=0,n.formApp.$setDirty()):n.status=3,n.embed&&u(function(){resizeParentFrame()}))}).catch(function(t){n.status=2;n.errorDetails=t.data})}else u(function(){setTimeout(function(){alert("Can't submit form, one or more questions have missing or invalid entries.");var t=$(".help-block:visible").eq(0).parent();t.prev().length!=0&&(t=t.prev());n.scrollTo(t.offset().top-15)});n.status=0})}catch(s){n.status=2;n.errorDetails=s.message}})}catch(o){n.status=2;n.errorDetails=o.message}};n.guid=function(n){return(h()+h()+h()+"4"+h().substr(0,3)+h()+h()+h()+h()).toLowerCase().substring(0,n)};n.scrollTo=function(t){n.embed?window.parent.postMessage(["formsbyair-scroll-to",t],"*"):$("html,body").animate({scrollTop:t},500)};n.scrollUp=function(t,i){n.embed?window.parent.postMessage(["formsbyair-scroll-up",t,i],"*"):i<$(document).scrollTop()+$(window).height()||(i-t<$(window).height()?$("html,body").animate({scrollTop:i-$(window).height()},250):$("html,body").animate({scrollTop:t},500))}}])