{"version":3,"file":"sm.portal.vm.account.min.js","names":["jQuery","sm","window","portal","extend","vm","AccountViewModel","self","this","TemplatesLoaded","ko","observable","TemplateName","ForgotInformationPassword","ForgotInformationUsername","AccountSectionInfoText","ShouldShowAccountSectionCustom","custom","setCustomLocalizeKey","callCustomization","LoadModel","container","Config","viewModel","SetSectionsConfigData","PersonFirstName","PersonGID","PersonID","UserID","PersonGeneratedIdentifier","GeneratedIdentifier","utility","isNullOrEmpty","LoginUserName","AccountUsername","LoginDisplayName","PersonDisplayName","IsUserLoggedIn","MySection","Activate","HasApplicationFee","HasFee","ApplicationFeeRequired","FeeRequired","AdmissionsAcademicLevelFees","e","console","log","message","PasswordRequirementMessage","PasswordRegex","PasswordRegexPattern","PasswordMinLength","DataLoading","DataLoaded","UnBlockContainer","PageReady","ui","readyPage","GetDisclaimer","blockUI","url","_baseApiUri","ajax","type","dataType","contentType","headers","processData","crossDomain","xhrFields","withCredentials","success","data","textStatus","jqXHR","myElement","DOMParser","parseFromString","Payload","DisclaimerOnApplyNowPage","SettingValue","querySelectorAll","forEach","li","style","listStyleType","ul","paddingLeft","p_tag1","Array","from","map","p","innerText","IsDisclaimerTextEmpty","innerHTML","replace","_","match","msg","feeCount","length","i","ApplicationFeesAmount","DisclaimerText","smapi","access","ApiContainerModel","Status","unblockUI","error","exception","HandleError","LoadInitialData","ValidationTitle","ValidationMessages","page","application","handleErrorWithMessages","InitializeAndLoginUser","successCallback","firstName","doLogin","isInitialLogin","PortalUserName","NewAccountPassword","LoginPassword","customData","JustLogin","title","messages","IsError","ErrorMessages","ErrorHeader","getResourceValue","IsRequired","ShowNewAccount","ShowLogin","IsLoggedIn","PersonMID","computed","LoginAnchor","validatedObservable","NewAccountConfirmPassword","subscribe","newValue","isValid","LoggedInDisplay","ToggleLogin","focus","callback","_currentPersonId","PreviousUserLogin","serialize","encodeURIComponent","_ajaxUri","results","parseJSON","location","reload","attr","loginResult","JSON","parse","GetRequestValidationTokenAndRefreshValue","SetAuthorizationContext","global","val","formData","FormData","append","authorizationInfo","CurrentPersonId","_currentStudentId","CurrentStudentId","_currentAdvisorId","CurrentAdvisorId","ReplaceLoggedInHeader","LogoutUrl","scriptParams","LogoutURL","logoutUrl","_logoutUrl","Logout","href","template","text","smQuickLinks","html","cleanNode","applyBindings","DataContainer","Touched","DataLoadErrorCount","Initialize","section","loadTemplate","SectionTemplate","GetModelData","blockui","applicationMID","personMID","allCustomData","Account","BlockContainer","formatString","cnt","statusText","responseMsg","responseText","Message","messageToUser","block","unblock","SetFocus","ProcessOnServer","observableArray","ExtractATO","submitObject","mapping","toJS","AccountPassword","required","params","constant","validate_FieldRequired_Key","onlyIf","smPasswordLength","smPasswordPattern","smMatchingValue","validation","validator","valueToCompare","ModelErrors","group","IsVMValid","Completed","isCompleted","AllowNext","LostUsernameUrl","defaultUserLink","origin","wp_user_link","LostPasswordUrl","defaultPassLink","wp_pass_link"],"sources":["assets/js/viewmodels/common/sm.portal.vm.account.js"],"mappings":"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","ignoreList":[],"sourcesContent":["/// \r\n\r\n(function (jQuery, undefined) {\r\n var sm = window.sm = window.sm || {};\r\n var windowProxy;\r\n var actionQueue = [];\r\n\r\n if (typeof sm.portal === \"undefined\") {\r\n jQuery.extend(sm, { portal: {} });\r\n }\r\n if (typeof sm.portal.vm === \"undefined\") {\r\n jQuery.extend(sm.portal, { vm: {} });\r\n }\r\n\r\n function AccountViewModel() {\r\n\r\n // Self-Identification\r\n var self = this;\r\n\r\n this.TemplatesLoaded = ko.observable(false);\r\n this.TemplateName = ko.observable(\"NewAccountTemplate\");\r\n this.ForgotInformationPassword = ko.observable();\r\n this.ForgotInformationUsername = ko.observable();\r\n this.AccountSectionInfoText = ko.observable('');\r\n this.ShouldShowAccountSectionCustom = ko.observable(false);\r\n\r\n sm.portal.vm.custom.setCustomLocalizeKey(self);\r\n sm.portal.vm.custom.callCustomization('UpdatedForgotInfoPage',self);\r\n\r\n // Handlers\r\n this.LoadModel = function (container) {\r\n // update application section configurations\r\n if (container && container.Config) {\r\n viewModel.SetSectionsConfigData(\"Account\", container.Config);\r\n }\r\n\r\n // Set the main Entity\r\n this.PersonFirstName(container.PersonFirstName);\r\n this.PersonGID(container.PersonGID);\r\n this.PersonID(container.PersonID);\r\n this.UserID(container.UserID);\r\n this.PersonGeneratedIdentifier(container.GeneratedIdentifier);\r\n\r\n if (sm.portal.utility.isNullOrEmpty(this.LoginUserName())) {\r\n this.LoginUserName(container.AccountUsername);\r\n }\r\n this.LoginDisplayName(container.PersonDisplayName);\r\n\r\n if (!sm.portal.utility.isNullOrEmpty(container.AccountUsername)) {\r\n self.IsUserLoggedIn();\r\n if (!sm.portal.utility.isNullOrEmpty(self.MySection)) {\r\n self.MySection.Activate();\r\n }\r\n }\r\n\r\n // App Fee settings\r\n try {\r\n viewModel.HasApplicationFee(container.HasFee);\r\n viewModel.ApplicationFeeRequired(container.FeeRequired);\r\n\r\n if (container.HasFee) {\r\n viewModel.AdmissionsAcademicLevelFees(container.AdmissionsAcademicLevelFees);\r\n\r\n }\r\n } catch (e) {\r\n // Error loading fees?\r\n console.log(\"Error Loading Fee:\" + e.message);\r\n }\r\n\r\n // Password Settings\r\n self.PasswordRequirementMessage(container.PasswordRequirementMessage);\r\n self.PasswordRegex(container.PasswordRegexPattern);\r\n self.PasswordMinLength(container.PasswordMinLength);\r\n\r\n self.DataLoading(false);\r\n self.DataLoaded(true);\r\n self.UnBlockContainer();\r\n\r\n };\r\n this.PageReady = function () {\r\n // Ready Page\r\n sm.portal.ui.readyPage();\r\n };\r\n\r\n\r\n this.GetDisclaimer = function () {\r\n \r\n jQuery.blockUI();\r\n var url = _baseApiUri + 'api/studentportal/GetDisclaimer';\r\n \r\n jQuery.ajax({\r\n url: url,\r\n type: 'GET',\r\n dataType: 'json',\r\n contentType: 'application/json; charset=utf-8',\r\n headers: {\r\n \"x-api-version\": '1' //,\r\n },\r\n processData: false,\r\n crossDomain: true,\r\n\r\n xhrFields: {\r\n withCredentials: true\r\n },\r\n success: function (data, textStatus, jqXHR) {\r\n \r\n function ApplicationFeesAmount () {\r\n var msg = \"\";\r\n var feeCount = viewModel.AdmissionsAcademicLevelFees().length;\r\n \r\n for (i = 0; i < feeCount; i++) {\r\n msg += viewModel.AdmissionsAcademicLevelFees()[i];\r\n \r\n if (i !== feeCount - 1) {\r\n msg += \", \";\r\n }\r\n }\r\n msg = msg.replace(/\\${2,}/g, '$');\r\n return msg;\r\n \r\n };\r\n \r\n let myDoc = new DOMParser();\r\n\r\n let myElement = myDoc.parseFromString(data.Payload.DisclaimerOnApplyNowPage.SettingValue, 'text/html');\r\n \r\n myElement.querySelectorAll('ul li').forEach(li => li.style.listStyleType = 'disc');\r\n myElement.querySelectorAll('ul').forEach(ul => ul.style.paddingLeft = '40px');\r\n\r\n var p_tag1 = Array.from(myElement.querySelectorAll('body')).map((p) => {\r\n \r\n if(p.innerText != \"\"){\r\n viewModel.IsDisclaimerTextEmpty(false);\r\n }else{\r\n viewModel.IsDisclaimerTextEmpty(true);\r\n }\r\n \r\n const regex = /\\[(.+?)\\]/g;\r\n p = p.innerHTML;\r\n \r\n const replacedString = p.replace(regex, (_, match) => {\r\n return ApplicationFeesAmount();\r\n });\r\n \r\n return replacedString;\r\n });\r\n\r\n viewModel.DisclaimerText(p_tag1);\r\n\r\n var container = new smapi.access.ApiContainerModel(data.Status, data.Payload);\r\n viewModel.LoadModel(container);\r\n jQuery.unblockUI();\r\n \r\n },\r\n error: function (jqXHR, exception) {\r\n viewModel.HandleError(exception);\r\n jQuery.unblockUI();\r\n }\r\n });\r\n };\r\n\r\n\r\n this.LoadInitialData = function () {\r\n\r\n jQuery.blockUI();\r\n var url = _baseApiUri + 'api/studentportal/getapplicationsection?sectionName=account&attemptmid=';\r\n\r\n jQuery.ajax({\r\n url: url,\r\n type: 'GET',\r\n dataType: 'json',\r\n contentType: 'application/json; charset=utf-8',\r\n headers: {\r\n \"x-api-version\": '1' //,\r\n },\r\n processData: false,\r\n crossDomain: true,\r\n\r\n xhrFields: {\r\n withCredentials: true\r\n },\r\n success: function (data, textStatus, jqXHR) {\r\n var container = new smapi.access.ApiContainerModel(data.Status, data.Payload, data.ValidationTitle, data.ValidationMessages);\r\n viewModel.LoadModel(container);\r\n viewModel.PageReady();\r\n jQuery.unblockUI();\r\n },\r\n error: function (jqXHR, exception) {\r\n viewModel.HandleError(exception);\r\n sm.portal.page.application.handleErrorWithMessages(self, jqXHR, 'fetch');\r\n jQuery.unblockUI();\r\n }\r\n });\r\n };\r\n\r\n this.InitializeAndLoginUser = function (container, successCallback, firstName, doLogin, isInitialLogin) {\r\n var self = this;\r\n\r\n // Set the appropriate variables\r\n this.PersonID(container.PersonID);\r\n this.PersonGID(container.PersonGID);\r\n this.UserID(container.UserID);\r\n this.LoginUserName(container.PortalUserName);\r\n this.PersonGeneratedIdentifier(container.GeneratedIdentifier);\r\n\r\n if (!sm.portal.utility.isNullOrEmpty(firstName)) {\r\n this.PersonFirstName(firstName);\r\n }\r\n\r\n if (!sm.portal.utility.isNullOrEmpty(this.NewAccountPassword)) {\r\n this.LoginPassword(this.NewAccountPassword());\r\n var customData = {\r\n self: self,\r\n doLogin: doLogin,\r\n isInitialLogin: isInitialLogin,\r\n successCallback: successCallback\r\n }\r\n sm.portal.vm.custom.callCustomization('InitializeAndLoginUser', customData,function(){\r\n self.JustLogin(successCallback);\r\n });\r\n\r\n }\r\n };\r\n\r\n this.HandleError = function (title, messages) {\r\n this.IsError(true);\r\n this.ErrorMessages(messages);\r\n if (sm.portal.utility.isNullOrEmpty(title)) {\r\n viewModel.ErrorHeader(sm.portal.utility.getResourceValue('ThereWasAnError'));\r\n } else {\r\n viewModel.ErrorHeader(title);\r\n }\r\n };\r\n\r\n // Requirement Options\r\n this.IsRequired = ko.observable(true);\r\n\r\n // Account Values\r\n this.ShowNewAccount = ko.observable(true);\r\n this.ShowLogin = ko.observable(false);\r\n this.IsLoggedIn = ko.observable(false);\r\n\r\n // Existing Account \r\n this.PersonGID = ko.observable();\r\n this.PersonID = ko.observable();\r\n this.PersonGeneratedIdentifier = ko.observable();\r\n this.PersonMID = ko.computed(function () {\r\n if (!sm.portal.utility.isNullOrEmpty(this.PersonGID())) {\r\n return this.PersonGID();\r\n } else if (!sm.portal.utility.isNullOrEmpty(this.PersonID())) {\r\n return this.PersonID();\r\n }\r\n return \"\";\r\n }, this);\r\n this.LoginAnchor = ko.computed(function () {\r\n return '';\r\n });\r\n\r\n this.UserID = ko.observable();\r\n this.PersonFirstName = ko.observable();\r\n this.LoginUserName = ko.observable();\r\n this.LoginDisplayName = ko.observable();\r\n this.LoginPassword = ko.observable();\r\n\r\n // Password Requirements\r\n this.PasswordRequirementMessage = ko.observable();\r\n this.PasswordRegex = ko.observable();\r\n this.PasswordMinLength = ko.observable();\r\n\r\n this.NewAccountPassword = ko.validatedObservable();\r\n this.NewAccountConfirmPassword = ko.validatedObservable();\r\n\r\n /*** SUBSCRIPTIONS ***/\r\n this.NewAccountPassword.subscribe(function (newValue) {\r\n self.NewAccountConfirmPassword.isValid();\r\n }, this);\r\n this.NewAccountConfirmPassword.subscribe(function (newValue) {\r\n self.NewAccountPassword.isValid();\r\n }, this);\r\n /*** SUBSCRIPTIONS ***/\r\n\r\n // Already Logged In\r\n this.LoggedInDisplay = ko.computed(function () {\r\n if (!sm.portal.utility.isNullOrEmpty(this.PersonFirstName())) {\r\n return this.PersonFirstName();\r\n } else {\r\n return this.LoginUserName();\r\n }\r\n }, this);\r\n\r\n // Handlers \r\n this.ToggleLogin = function () {\r\n\r\n if (this.ShowNewAccount()) {\r\n this.ShowNewAccount(false);\r\n this.ShowLogin(true);\r\n // manual focus on input field\r\n jQuery(\"#username\").focus();\r\n } else {\r\n this.ShowNewAccount(true);\r\n this.ShowLogin(false);\r\n }\r\n if (this.MySection != null) {\r\n this.MySection.Activate();\r\n }\r\n\r\n viewModel.IsError(false);\r\n };\r\n this.IsUserLoggedIn = function (callback) {\r\n\r\n if (!sm.portal.utility.isNullOrEmpty(_currentPersonId) && _currentPersonId > 0) {\r\n\r\n // User is logged into the Portal - show the Logged In View\r\n this.IsLoggedIn(true);\r\n this.ShowNewAccount(false);\r\n this.ShowLogin(false);\r\n this.PersonID(_currentPersonId);\r\n\r\n } else if (!sm.portal.utility.isNullOrEmpty(this.LoginUserName()) && sm.portal.utility.isNullOrEmpty(this.NewAccountConfirmPassword())) {\r\n\r\n // We have a user ID, but they're not logged in - show the Login Form View\r\n this.IsLoggedIn(false);\r\n this.ShowNewAccount(false);\r\n this.ShowLogin(true);\r\n\r\n } else {\r\n\r\n // No one is logged in, no user name set - show the New Account View\r\n this.IsLoggedIn(false);\r\n this.ShowNewAccount(true);\r\n this.ShowLogin(false);\r\n }\r\n\r\n if (callback != undefined && callback != null) {\r\n callback();\r\n }\r\n };\r\n\r\n this.PreviousUserLogin = function () {\r\n var theForm = jQuery('#AccountForm');\r\n var data = theForm.serialize();\r\n\r\n if (sm.portal.utility.isNullOrEmpty(data)) {\r\n data = 'username=' + encodeURIComponent(this.LoginUserName()) + '&password=' + encodeURIComponent(this.LoginPassword()) + '&defaultDomain=U4SM&action=remote_login';\r\n }\r\n\r\n jQuery.blockUI();\r\n jQuery.ajax({\r\n url: _ajaxUri,\r\n type: 'POST',\r\n data: data,\r\n success: function (data, textStatus, jqXHR) {\r\n\r\n var results = jQuery.parseJSON(data);\r\n if (results.msg == 'success') {\r\n // Do Refresh\r\n location.reload();\r\n } else if (results.msg === \"ERROR: Invalid username or incorrect password.\" ) {\r\n viewModel.HandleError(results.msg);\r\n jQuery.unblockUI();\r\n } \r\n else {\r\n viewModel.HandleError(results.msg);\r\n sm.portal.page.application.handleErrorWithMessages(self, jqXHR, 'save');\r\n jQuery.unblockUI();\r\n }\r\n\r\n },\r\n error: function (jqXHR, exception) {\r\n viewModel.HandleError(exception);\r\n sm.portal.page.application.handleErrorWithMessages(self, jqXHR, 'save');\r\n jQuery.unblockUI();\r\n }\r\n });\r\n\r\n };\r\n\r\n this.JustLogin = function (successCallback) {\r\n var theForm = jQuery(\"#AccountForm\");\r\n var data = theForm.serialize();\r\n if (sm.portal.utility.isNullOrEmpty(data)) {\r\n data = \"username=\" + encodeURIComponent(this.LoginUserName()) + \"&password=\" + encodeURIComponent(this.LoginPassword()) + \"&defaultDomain=U4SM&action=remote_login\";\r\n }\r\n\r\n jQuery(\"#NewAccountPassword\").attr(\"disabled\", \"disabled\");\r\n jQuery(\"#NewAccountConfirmPassword\").attr(\"disabled\", \"disabled\");\r\n\r\n jQuery.ajax({\r\n url: _ajaxUri,\r\n type: 'POST',\r\n data: data,\r\n success: function (data, textStatus, jqXHR) {\r\n var loginResult = JSON.parse(data);\r\n if (loginResult.msg === 'success') {\r\n self.GetRequestValidationTokenAndRefreshValue(function () {\r\n self.SetAuthorizationContext(successCallback);\r\n });\r\n\r\n } else {\r\n viewModel.HandleError(loginResult.msg);\r\n sm.portal.page.application.handleErrorWithMessages(self, jqXHR, 'save');\r\n }\r\n },\r\n error: function (jqXHR, exception) {\r\n viewModel.HandleError(exception);\r\n sm.portal.page.application.handleErrorWithMessages(self, jqXHR, 'save');\r\n jQuery.unblockUI();\r\n }\r\n });\r\n };\r\n\r\n this.GetRequestValidationTokenAndRefreshValue = function (callback) {\r\n\r\n jQuery.blockUI();\r\n\r\n jQuery.ajax({\r\n type: 'GET',\r\n url: _baseApiUri + 'api/CSRFProtection/GetToken',\r\n contentType: false,\r\n global: true,\r\n crossDomain: true,\r\n xhrFields: {\r\n withCredentials: true\r\n },\r\n success: function (data) {\r\n jQuery.unblockUI();\r\n\r\n if (data) {\r\n jQuery('input[name=__RequestVerificationToken]').val(data);\r\n callback();\r\n }\r\n },\r\n error: function (jqXHR, exception) {\r\n jQuery.unblockUI();\r\n viewModel.HandleError(exception);\r\n }\r\n });\r\n }\r\n\r\n this.SetAuthorizationContext = function (successCallback) {\r\n var formData = new FormData();\r\n formData.append('action', 'get_authorization_info');\r\n\r\n jQuery.ajax({\r\n url: _ajaxUri,\r\n type: 'POST',\r\n data: formData,\r\n processData: false,\r\n contentType: false,\r\n success: function (data, textStatus, jqXHR) {\r\n var authorizationInfo = jQuery.parseJSON(data);\r\n\r\n if (authorizationInfo.msg == 'success') {\r\n _currentPersonId = authorizationInfo.CurrentPersonId;\r\n _currentStudentId = authorizationInfo.CurrentStudentId;\r\n _currentAdvisorId = authorizationInfo.CurrentAdvisorId;\r\n\r\n self.IsUserLoggedIn();\r\n self.ReplaceLoggedInHeader(authorizationInfo.LogoutUrl);\r\n scriptParams.LogoutURL = authorizationInfo.LogoutUrl;\r\n\r\n sm.portal.vm.custom.callCustomization('IdleLogoutUser');\r\n\r\n if (successCallback && typeof successCallback === \"function\") {\r\n successCallback();\r\n }\r\n } else {\r\n viewModel.HandleError(authorizationInfo.msg);\r\n }\r\n },\r\n error: function (jqXHR, exception) {\r\n viewModel.HandleError(exception);\r\n jQuery.unblockUI();\r\n }\r\n });\r\n }\r\n\r\n this.ReplaceLoggedInHeader = function (logoutUrl) {\r\n var _logoutUrl = logoutUrl;\r\n\r\n var viewModel = {\r\n LoginUserName: self.LoginUserName(),\r\n Logout: function () {\r\n window.location.href = _logoutUrl;\r\n }\r\n };\r\n\r\n var template = jQuery('#loggedInPageHeaderTemplate').text();\r\n var smQuickLinks = jQuery('nav div.smQuickLinks');\r\n var customData = {\r\n smQuickLinks: smQuickLinks,\r\n _logoutUrl: _logoutUrl\r\n }\r\n smQuickLinks.html(template);\r\n \r\n sm.portal.vm.custom.callCustomization('UpdatedsmQuickLinks', customData, function(){\r\n ko.cleanNode(smQuickLinks[0]);\r\n ko.applyBindings(viewModel, smQuickLinks[0])});\r\n\r\n };\r\n\r\n /*** SECTION PROPERTIES ***/\r\n this.DataLoaded = ko.observable(false);\r\n this.DataLoading = ko.observable(false);\r\n this.DataContainer = ko.observable(\"AccountContainer\");\r\n this.Touched = ko.observable(false);\r\n this.DataLoadErrorCount = ko.observable(0);\r\n\r\n this.MySection = null;\r\n /*** SECTION PROPERTIES ***/\r\n\r\n /*** SECTION METHODS ***/\r\n this.Initialize = function (section) {\r\n this.MySection = section;\r\n // Change the Section Template accordingly...this should only get called on the Application...\r\n if (self.ShowNewAccount()) {\r\n var loadTemplate = sm.portal.vm.custom.callCustomization('TemplateToLoad',section);\r\n if(sm.portal.utility.isNullOrEmpty(loadTemplate)){\r\n section.SectionTemplate(\"NewAccountTemplate\");\r\n }\r\n } else if (self.IsLoggedIn()) {\r\n section.SectionTemplate(\"LoggedInTemplate\");\r\n } else {\r\n section.SectionTemplate(\"AccountTemplate\");\r\n }\r\n };\r\n\r\n this.GetModelData = function (blockui, applicationMID, personMID, callback) {\r\n \r\n if (!self.DataLoaded() && !self.DataLoading()) {\r\n\r\n self.DataLoading(true);\r\n if(!sm.portal.utility.isNullOrEmpty(viewModel.allCustomData())) {\r\n self.LoadModel(viewModel.allCustomData().Account.Payload);\r\n self.GetDisclaimer();\r\n callback && callback(viewModel.allCustomData().Account.Payload);\r\n return;\r\n }\r\n if (blockui) { self.BlockContainer() }\r\n var url = _baseApiUri + sm.portal.utility.formatString('api/studentportal/getapplicationsection?sectionName=account&attemptmid={0}', applicationMID);\r\n\r\n jQuery.ajax({\r\n url: url,\r\n type: 'GET',\r\n dataType: 'json',\r\n contentType: 'application/json; charset=utf-8',\r\n headers: {\r\n \"x-api-version\": '1' //,\r\n },\r\n processData: false,\r\n crossDomain: true,\r\n\r\n xhrFields: {\r\n withCredentials: true\r\n },\r\n success: function (data, textStatus, jqXHR) {\r\n var container = new smapi.access.ApiContainerModel(data.Status, data.Payload, data.ValidationTitle, data.ValidationMessages);\r\n if (data.Status == 'success') {\r\n self.LoadModel(container.Payload);\r\n self.GetDisclaimer();\r\n }\r\n else if (data.Status == 'validationerror') {\r\n viewModel.HandleError(container.ValidationTitle, container.ValidationMessages);\r\n sm.portal.page.application.handleErrorWithMessages(self, jqXHR, 'fetch');\r\n } else if (data.Status == 'error') {\r\n var cnt = self.DataLoadErrorCount() + 1;\r\n self.DataLoadErrorCount(cnt);\r\n\r\n if (cnt <= 1) { // 1 extra try\r\n self.DataLoaded(false);\r\n self.DataLoading(false);\r\n self.GetModelData(false, applicationMID, personMID);\r\n } else {\r\n viewModel.HandleError(container.ValidationTitle, container.ValidationMessages);\r\n sm.portal.page.application.handleErrorWithMessages(self, jqXHR, 'fetch');\r\n }\r\n }\r\n self.UnBlockContainer();\r\n callback && callback(data);\r\n },\r\n error: function (jqXHR, exception) {\r\n var statusText = jqXHR.statusText;\r\n var responseMsg = sm.portal.utility.getResourceValue('UnknownError');\r\n\r\n try {\r\n if (jqXHR != null && jqXHR.responseText != null) {\r\n responseMsg = jQuery.parseJSON(jqXHR.responseText).Message;\r\n }\r\n } catch (e) {\r\n responseMsg = sm.portal.utility.getResourceValue('CouldNotRetrieveErrorMessage');\r\n }\r\n\r\n var messageToUser = sm.portal.utility.formatString(\"{0} - {1}\", statusText, responseMsg);\r\n viewModel.HandleError(sm.portal.utility.getResourceValue('ErrorRetrievingSectionData'), [messageToUser]);\r\n self.UnBlockContainer();\r\n sm.portal.page.application.handleErrorWithMessages(self, jqXHR, 'fetch');\r\n callback && callback();\r\n }\r\n });\r\n } else {\r\n callback && callback();\r\n }\r\n };\r\n this.BlockContainer = function () {\r\n jQuery(\"#\" + self.DataContainer()).block({ message: sm.portal.utility.getResourceValue('Loading') });\r\n };\r\n this.UnBlockContainer = function () {\r\n jQuery(\"#\" + self.DataContainer()).unblock();\r\n try { viewModel.SetFocus(); } catch (e) { }\r\n };\r\n this.ProcessOnServer = function () {\r\n return true;\r\n };\r\n /*** SECTION METHODS ***/\r\n\r\n // Error Handling\r\n this.ErrorHeader = ko.observable();\r\n this.ErrorMessages = ko.observableArray();\r\n this.IsError = ko.observable();\r\n\r\n // Extraction Method\r\n this.ExtractATO = function () {\r\n var submitObject = ko.mapping.toJS(this);\r\n var data = {\r\n AccountPassword: submitObject.NewAccountPassword,\r\n PersonID: submitObject.PersonID,\r\n PersonGID: submitObject.PersonGID\r\n };\r\n\r\n return data;\r\n };\r\n\r\n /*** VALIDATION METHODS ***/\r\n // NOTE: ALL Custom Rules for these fields\r\n this.NewAccountPassword.extend({\r\n required: {\r\n params: true,\r\n message: sm.portal.utility.getResourceValue(smapi.constant.validate_FieldRequired_Key),\r\n onlyIf: function () {\r\n return self.IsRequired() === true && self.ShowNewAccount() === true;\r\n }\r\n },\r\n smPasswordLength: {\r\n params: [self.PasswordMinLength, self.PasswordRequirementMessage, self.IsRequired],\r\n onlyIf: function () {\r\n return self.ShowNewAccount() === true;\r\n }\r\n },\r\n smPasswordPattern: {\r\n params: [self.PasswordRegex, self.PasswordRequirementMessage, self.IsRequired],\r\n onlyIf: function () {\r\n return self.ShowNewAccount() === true;\r\n }\r\n }\r\n });\r\n this.NewAccountConfirmPassword.extend({\r\n smMatchingValue: {\r\n params: self.NewAccountPassword,\r\n message: sm.portal.utility.getResourceValue('PasswordsDoNoMatch'),\r\n onlyIf: function () {\r\n return self.ShowNewAccount() === true;\r\n }\r\n },\r\n validation: {\r\n validator: function (val, valueToCompare) {\r\n return valueToCompare == val;\r\n },\r\n message: sm.portal.utility.getResourceValue('PasswordsDoNoMatch'),\r\n params: self.NewAccountPassword\r\n }\r\n });\r\n\r\n // Set Model Grouping for validation\r\n this.ModelErrors = ko.validation.group(this);\r\n // Check if Model is valid \r\n // (will NOT validate attached models, unless we\r\n // init that in ui.js - currently it has performance problems)\r\n this.IsVMValid = function () {\r\n if (this.ModelErrors().length == 0) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n };\r\n this.Completed = ko.computed(function () {\r\n var isCompleted = true;\r\n\r\n if (this.ShowLogin()) {\r\n isCompleted = false;\r\n } else if (this.ShowNewAccount()) {\r\n isCompleted = this.IsVMValid();\r\n } else if (!this.IsLoggedIn()) {\r\n isCompleted = false;\r\n }\r\n\r\n return isCompleted;\r\n\r\n }, this);\r\n this.AllowNext = ko.computed(function () {\r\n if (sm.portal.utility.isNullOrEmpty(this.NewAccountPassword()) || sm.portal.utility.isNullOrEmpty(this.NewAccountConfirmPassword())) {\r\n return false;\r\n }\r\n return this.NewAccountPassword() === this.NewAccountConfirmPassword();\r\n }, this);\r\n this.LostUsernameUrl = ko.computed(function () {\r\n var defaultUserLink = window.location.origin + '/u4sm_page/forgot-information/?option=ma_show_email_user'; \r\n var wp_user_link = jQuery('#lost_User_link').attr('href');\r\n // check for link is available or not in wordpress\r\n if (wp_user_link) {\r\n return wp_user_link;\r\n }\r\n \r\n return defaultUserLink; \r\n });\r\n this.LostPasswordUrl = ko.computed(function () {\r\n var defaultPassLink = window.location.origin + '/u4sm_page/forgot-information/?option=ma_show_email_password';\r\n var wp_pass_link = jQuery('#lost_Pass_link').attr('href');\r\n // check for link is available or not in wordpress\r\n if (wp_pass_link) {\r\n return wp_pass_link;\r\n }\r\n \r\n return defaultPassLink;\r\n });\r\n /*** VALIDATION METHODS ***/\r\n\r\n return self;\r\n };\r\n\r\n jQuery.extend(true, sm.portal.vm, {\r\n AccountViewModel: AccountViewModel\r\n });\r\n\r\n})(jQuery);"]}