{"version":3,"file":"sm.portal.vm.inquiry.min.js","names":["jQuery","undefined","sm","window","portal","extend","vm","InquiryViewModel","self","this","CaptchaAnswer","ko","validatedObservable","PersonFirstName","PersonMiddleName","PersonLastName","PersonHomePhoneNumber","PersonEmailAddress","ConfirmPersonEmailAddress","WarningMessages","observableArray","PersonDisplayName","observable","AccountRequirement","CaptchaQuestion","CaptchaAnswerVerification","PasswordChangeRedirectID","PersonPreferredContact","PersonID","PersonGID","ApplicationID","ApplicationGID","LinkToApplication","LinkToChangePassword","TermsAndConditions","TermsAndConditionsLoaded","AccountViewModel","AddressViewModel","MailingAddressViewModel","AcademicDetails","AcademicDetailsViewModel","PreferredContactTypes","smapi","access","ListItemModel","Loading","TemplatesLoaded","TemplateName","subscribe","newValue","viewModel","ShowAddress","ShowPhone","SelectedCountryID","systemCountryID","SystemCountry","ID","SelectedTemplateID","AvailableTemplates","AdmissionsProgramIDOne","utility","isNullOrEmpty","removeClass","hide","AdmissionsProgramIDTwo","AdmissionsProgramIDThree","AcademicLevelID","LevelOfStudyEnabled","ForceNoModified","isModified","SetupEntityProperties","entity","LoadModel","container","Payload","Entity","options","AvailableOptions","IsLevelOfStudyActivated","PortalApplicationURL","PortalForgotInfoURL","PortalForgotInfoRedirectID","LevelsOfStudy","length","ExpectedEntrancePeriodRequired","IsExpectedEntrancePeriodRequired","mapping","fromJS","ListData","CommunicationType","SetAvailableOptions","MainAddress","LoadAddressModel","CountryID","MailingAddressTemplateID","IsRequired","TermsConditions","termsModel","TermsConditionsViewModel","UpdateOptions","data","event","originalEvent","blockUI","url","_baseApiUri","formatString","optionsSelected","JSON","stringify","CampusID","LevelOfStudyID","DeliveryMethodID","AdmissionsProgramIDs","SelectedAdmissionPrograms","StartPeriodID","ExpectedStartPeriodID","AjaxPost","onSuccess","textStatus","jqXHR","SetAvaliableOptions","target","id","unblockUI","OnError","exception","HandleError","complete","jqXhr","focus","AcademicLevels","loadListItemModels","AdmissionsProgramsOne","AdmissionsPrograms","filter","x","Value","AdmissionsProgramsTwo","AdmissionsProgramsThree","DeliveryMethods","Campuses","AcademicPeriods","ExpectedStartPeriods","sort","l","r","Sequence","find","element","defaultLevelOfStudy","IsDefault","PageReady","click","attr","val","getResourceValue","SubmitInquiry","removeAttr","ui","readyPage","LoadInitialData","ajax","type","dataType","contentType","headers","processData","crossDomain","xhrFields","withCredentials","success","ApiContainerModel","Status","ValidationTitle","ValidationMessages","error","title","messages","IsError","ErrorMessages","ErrorHeader","PreferredContactTypeRequired","required","ResultMessage","computed","NewAccountPassword","FullLinkForSuccess","baseURL","queryString","portalUrl","indexOf","ShowResults","ShowResultLink","ShowPeriodOption","ShowStartDateOption","ExtractATO","toJS","stdPerson","community","PersonModel","Surname","GivenName","MiddleName","stdEmail","ElectronicAddressModel","ElectronicAddresses","push","stdPhone","PhoneNumberModel","Number","PhoneNumbers","stdAddress","AddressCity","Addresses","stdAdmissionsAttempt","admissions","AdmissionsAttemptModel","AdmissionsAcademicLevelID","stdAdmProgramOne","AdmissionsAttemptProgramModel","AdmissionProgramID","AdmissionsAttemptPrograms","stdAdmProgramTwo","stdAdmProgramThree","termsAndConditions","PersonalInformation","AdmissionsInformation","TermsData","baseUri","successHandler","IsVMValid","DisplayName","params","message","constant","validate_FieldRequired_Key","maxLength","validate_0CharactersOrLess_Key","onlyIf","pattern","validate_ItsNotAValidPhoneNumber","minLength","email","validate_ErrorInFormat0_Key","validation","IsLoggedIn","validator","async","responseText","validate_DuplicateEmail_Key","ShowNewAccount","smMatchingValue","ModelErrors","group","o","IsInquiryFormValid","Completed"],"sources":["assets/js/viewmodels/admissions/sm.portal.vm.inquiry.js"],"mappings":"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","ignoreList":[],"sourcesContent":["\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 /************************************************/\r\n /* Admissions Inquiry View Model */\r\n /************************************************/\r\n function InquiryViewModel() {\r\n\r\n // Self-Identification\r\n var self = this;\r\n\r\n this.CaptchaAnswer = ko.validatedObservable();\r\n\r\n this.PersonFirstName = ko.validatedObservable();\r\n this.PersonMiddleName = ko.validatedObservable();\r\n this.PersonLastName = ko.validatedObservable();\r\n this.PersonHomePhoneNumber = ko.validatedObservable();\r\n this.PersonEmailAddress = ko.validatedObservable();\r\n this.ConfirmPersonEmailAddress = ko.validatedObservable();\r\n\r\n this.WarningMessages = ko.observableArray();\r\n\r\n this.PersonDisplayName = ko.observable();\r\n this.AccountRequirement = ko.observable();\r\n this.CaptchaQuestion = ko.observable();\r\n this.CaptchaAnswerVerification = ko.observable();\r\n this.PasswordChangeRedirectID = ko.observable();\r\n this.PersonPreferredContact = ko.observable();\r\n this.PersonID = ko.observable();\r\n this.PersonGID = ko.observable();\r\n this.ApplicationID = ko.observable();\r\n this.ApplicationGID = ko.observable();\r\n\r\n this.LinkToApplication = ko.observable();\r\n this.LinkToChangePassword = ko.observable();\r\n\r\n this.TermsAndConditions = ko.observable();\r\n this.TermsAndConditionsLoaded = ko.observable(false);\r\n\r\n // Model Data\r\n this.AccountViewModel = ko.observable(new sm.portal.vm.AccountViewModel());\r\n this.AddressViewModel = ko.observable(new sm.portal.vm.MailingAddressViewModel());\r\n this.AcademicDetails = ko.observable(\r\n new sm.portal.vm.AcademicDetailsViewModel()\r\n );\r\n\r\n // List Data Collections\r\n this.PreferredContactTypes = ko.observable([new smapi.access.ListItemModel()]);\r\n\r\n this.Loading = ko.observable(false);\r\n this.TemplatesLoaded = ko.observable(false);\r\n this.TemplateName = ko.observable(\"FullInquiryTemplate\");\r\n\r\n // Subscriptions\r\n this.PersonPreferredContact.subscribe(function (newValue) {\r\n\r\n switch (newValue) {\r\n case \"CommunicationType.EmailCommunication\":\r\n viewModel.ShowAddress(false);\r\n viewModel.ShowPhone(false);\r\n this.AddressViewModel().SelectedCountryID('');\r\n break;\r\n case \"CommunicationType.PhoneCommunication\":\r\n viewModel.ShowAddress(false);\r\n viewModel.ShowPhone(true);\r\n this.AddressViewModel().SelectedCountryID('');\r\n break;\r\n case \"CommunicationType.MailCommunication\":\r\n viewModel.ShowAddress(true);\r\n viewModel.ShowPhone(false);\r\n var systemCountryID = this.AddressViewModel().SystemCountry().ID();\r\n if (systemCountryID > 0) {\r\n this.AddressViewModel().SelectedCountryID(systemCountryID);\r\n this.AddressViewModel().SelectedTemplateID(this.AddressViewModel().AvailableTemplates()[0].ID());\r\n }\r\n break;\r\n }\r\n\r\n }, this);\r\n this.AcademicDetails().AdmissionsProgramIDOne.subscribe(function (newValue) {\r\n if (!sm.portal.utility.isNullOrEmpty(newValue)) {\r\n jQuery(\"div.programOption\").removeClass('error');\r\n jQuery('label[for=\"AdmissionsProgramIDMessage\"]').hide();\r\n }\r\n }, this);\r\n this.AcademicDetails().AdmissionsProgramIDTwo.subscribe(function (newValue) {\r\n if (!sm.portal.utility.isNullOrEmpty(newValue)) {\r\n jQuery(\"div.programOption\").removeClass('error');\r\n jQuery('label[for=\"AdmissionsProgramIDMessage\"]').hide();\r\n }\r\n }, this);\r\n this.AcademicDetails().AdmissionsProgramIDThree.subscribe(function (newValue) {\r\n if (!sm.portal.utility.isNullOrEmpty(newValue)) {\r\n jQuery(\"div.programOption\").removeClass('error');\r\n jQuery('label[for=\"AdmissionsProgramIDMessage\"]').hide();\r\n }\r\n }, this);\r\n this.AcademicDetails().AcademicLevelID.subscribe(function (newValue) {\r\n if (this.Loading() || !this.AcademicDetails().LevelOfStudyEnabled()) {\r\n return;\r\n }\r\n }, this);\r\n\r\n // Handlers\r\n this.ForceNoModified = function() {\r\n this.CaptchaAnswer.isModified(false);\r\n\r\n this.PersonFirstName.isModified(false);\r\n this.PersonMiddleName.isModified(false);\r\n this.PersonLastName.isModified(false);\r\n this.PersonHomePhoneNumber.isModified(false);\r\n this.PersonEmailAddress.isModified(false);\r\n this.ConfirmPersonEmailAddress.isModified(false);\r\n\r\n this.AcademicDetails().ForceNoModified();\r\n };\r\n\r\n this.SetupEntityProperties = function(entity) {\r\n\r\n this.PersonFirstName(entity.PersonFirstName);\r\n this.PersonMiddleName(entity.PersonMiddleName);\r\n this.PersonLastName(entity.PersonLastName);\r\n this.PersonHomePhoneNumber(entity.PersonHomePhoneNumber);\r\n this.PersonEmailAddress(entity.PersonEmailAddress);\r\n }\r\n\r\n this.LoadModel = function (container) {\r\n this.Loading(true);\r\n\r\n // Set the main Entity\r\n var entity = container.Payload.Entity;\r\n var options = container.Payload.AvailableOptions;\r\n\r\n this.IsLevelOfStudyActivated = container.Payload.IsLevelOfStudyActivated;\r\n this.SetupEntityProperties(entity);\r\n\r\n this.AccountRequirement(container.Payload.AccountRequirement);\r\n this.CaptchaQuestion(container.Payload.CaptchaQuestion);\r\n this.CaptchaAnswerVerification(container.Payload.CaptchaAnswer);\r\n this.LinkToApplication(container.Payload.PortalApplicationURL);\r\n this.LinkToChangePassword(container.Payload.PortalForgotInfoURL);\r\n this.PasswordChangeRedirectID(container.Payload.PortalForgotInfoRedirectID);\r\n self.AcademicDetails().LevelOfStudyEnabled(self.IsLevelOfStudyActivated && options.LevelsOfStudy.length > 0);\r\n this.AcademicDetails().ExpectedEntrancePeriodRequired(container.Payload.IsExpectedEntrancePeriodRequired);\r\n\r\n // Set the list data\r\n ko.mapping.fromJS(container.Payload.ListData.CommunicationType, {}, this.PreferredContactTypes);\r\n\r\n this.AcademicDetails().SetAvailableOptions(\r\n options, entity\r\n );\r\n\r\n this.AddressViewModel().LoadModel(container);\r\n if (container.Payload.MainAddress != undefined && container.Payload.MainAddress != null && container.Payload.MainAddress.ID != 0) {\r\n this.AddressViewModel().LoadAddressModel(container.Payload.MainAddress);\r\n\r\n // Set the Selected Country and Selected Template values\r\n this.AddressViewModel().SelectedCountryID(container.Payload.MainAddress.CountryID);\r\n this.AddressViewModel().SelectedTemplateID(container.Payload.MainAddress.MailingAddressTemplateID);\r\n }\r\n else {\r\n\r\n var systemCountryID = this.AddressViewModel().SystemCountry().ID();\r\n if (systemCountryID > 0) {\r\n this.AddressViewModel().SelectedCountryID(systemCountryID);\r\n this.AddressViewModel().SelectedTemplateID(this.AddressViewModel().AvailableTemplates()[0].ID());\r\n }\r\n }\r\n\r\n // Take care of the case of validation showing on load\r\n this.ForceNoModified();\r\n\r\n // Load the Account Model if necessary\r\n this.AccountViewModel().LoadModel(entity);\r\n\r\n // Modify the Account Model Requirement\r\n this.AccountViewModel().IsRequired(this.AccountRequirement() == 'required');\r\n\r\n if (container.Payload.TermsConditions) {\r\n var termsModel = new sm.portal.vm.TermsConditionsViewModel(\"AfterTerms\", container.Payload.TermsConditions, null);\r\n termsModel.LoadModel(container);\r\n\r\n this.TermsAndConditions(termsModel);\r\n this.TermsAndConditionsLoaded(true);\r\n }\r\n\r\n // Set the loading flag\r\n this.Loading(false);\r\n };\r\n\r\n\r\n this.UpdateOptions = function (data, event) {\r\n //call api for new options\r\n if (event.originalEvent)\r\n {\r\n if (!this.Loading())\r\n {\r\n // self.BlockContainer();\r\n jQuery.blockUI();\r\n this.Loading(true);\r\n\r\n var url = _baseApiUri + sm.portal.utility.formatString('api/PortalInquiry/GetAdmissionsOfferingMatrix');\r\n var optionsSelected = JSON.stringify(\r\n {\r\n CampusID: sm.portal.utility.isNullOrEmpty(this.AcademicDetails().CampusID()) ? null : this.AcademicDetails().CampusID(),\r\n AcademicLevelID: sm.portal.utility.isNullOrEmpty(this.AcademicDetails().AcademicLevelID()) ? null : this.AcademicDetails().AcademicLevelID(),\r\n LevelOfStudyID: sm.portal.utility.isNullOrEmpty(this.AcademicDetails().LevelOfStudyID()) ? null : this.AcademicDetails().LevelOfStudyID(),\r\n DeliveryMethodID: sm.portal.utility.isNullOrEmpty(this.AcademicDetails().DeliveryMethodID()) ? null : this.AcademicDetails().DeliveryMethodID(),\r\n AdmissionsProgramIDs: this.AcademicDetails().SelectedAdmissionPrograms(),\r\n StartPeriodID: sm.portal.utility.isNullOrEmpty(this.AcademicDetails().ExpectedStartPeriodID()) ? null : this.AcademicDetails().ExpectedStartPeriodID()\r\n });\r\n\r\n sm.portal.utility.AjaxPost(\r\n url,\r\n optionsSelected,\r\n onSuccess = function(data, textStatus, jqXHR) {\r\n self.SetAvaliableOptions(data, event.target.id);\r\n\r\n self.Loading(false);\r\n jQuery.unblockUI();\r\n },\r\n OnError = function(jqXHR, exception) {\r\n viewModel.HandleError(exception);\r\n self.Loading(false);\r\n jQuery.unblockUI();\r\n },\r\n complete = function (jqXhr, textStatus) {\r\n event.target.focus();\r\n }\r\n );\r\n\r\n }\r\n }\r\n };\r\n\r\n this.SetAvaliableOptions = function (options, id) {\r\n self.AcademicDetails().LevelOfStudyEnabled(self.IsLevelOfStudyActivated && options.LevelsOfStudy.length > 0);\r\n\r\n self.AcademicDetails().AcademicLevels(smapi.access.loadListItemModels(options.AcademicLevels, [], true));\r\n self.AcademicDetails().AdmissionsProgramsOne(smapi.access.loadListItemModels(options.AdmissionsPrograms.filter(function (x) { return x.Value !== self.AcademicDetails().AdmissionsProgramIDTwo() && x.Value !== self.AcademicDetails().AdmissionsProgramIDThree(); }), [], true));\r\n self.AcademicDetails().AdmissionsProgramsTwo(smapi.access.loadListItemModels(options.AdmissionsPrograms.filter(function (x) { return x.Value !== self.AcademicDetails().AdmissionsProgramIDOne() && x.Value !== self.AcademicDetails().AdmissionsProgramIDThree(); }), [], true));\r\n self.AcademicDetails().AdmissionsProgramsThree(smapi.access.loadListItemModels(options.AdmissionsPrograms.filter(function (x) { return x.Value !== self.AcademicDetails().AdmissionsProgramIDOne() && x.Value !== self.AcademicDetails().AdmissionsProgramIDTwo(); }), [], true));\r\n self.AcademicDetails().DeliveryMethods(smapi.access.loadListItemModels(options.DeliveryMethods, [], true));\r\n self.AcademicDetails().Campuses(smapi.access.loadListItemModels(options.Campuses, [], true));\r\n self.AcademicDetails().AcademicPeriods(smapi.access.loadListItemModels(options.ExpectedStartPeriods, [], true));\r\n self.AcademicDetails().LevelsOfStudy(smapi.access.loadListItemModels(options.LevelsOfStudy.sort(function (l, r) { return l.Sequence - r.Sequence; }), []));\r\n\r\n if (id === 'AcademicLevelID') {\r\n if (!!self.AcademicDetails().LevelOfStudyID() && !!options.LevelsOfStudy.find(function (element) { return element.ID == self.AcademicDetails().LevelOfStudyID(); })) {\r\n return;\r\n }\r\n\r\n var defaultLevelOfStudy = self.AcademicDetails().LevelOfStudyEnabled() && self.AcademicDetails().AcademicLevelID()\r\n ? options.LevelsOfStudy.find(function (element) { return element.IsDefault; })\r\n : undefined;\r\n self.AcademicDetails().LevelOfStudyID(!!defaultLevelOfStudy ? defaultLevelOfStudy.ID : undefined);\r\n }\r\n };\r\n\r\n this.PageReady = function () {\r\n // Submit Handler\r\n jQuery(\"#SubmitInquiry\").click(function () {\r\n jQuery.blockUI();\r\n jQuery(\"#SubmitInquiry\").attr(\"disabled\", \"disabled\").val(sm.portal.utility.getResourceValue('Submitting'));\r\n\r\n viewModel.SubmitInquiry(_baseApiUri, function (container) {\r\n jQuery(\"#SubmitInquiry\").removeAttr('disabled').val('Submit');\r\n //jQuery.unblockUI();\r\n });\r\n });\r\n\r\n // Ready Page\r\n sm.portal.ui.readyPage();\r\n };\r\n this.LoadInitialData = function () {\r\n jQuery.blockUI();\r\n var url = _baseApiUri + 'api/portalinquiry/get';\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 jQuery.unblockUI();\r\n }\r\n });\r\n };\r\n this.HandleError = function (title, messages) {\r\n this.IsError(true);\r\n if (messages) {\r\n this.ErrorMessages(messages);\r\n }\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 this.PreferredContactTypeRequired = function (type) {\r\n var required = false;\r\n switch (type) {\r\n //case 'EMAIL':\r\n // if (this.PersonPreferredContact() === 'CommunicationType.EmailCommunication') {\r\n // required = true;\r\n // }\r\n // break;\r\n case 'MAIL':\r\n if (this.PersonPreferredContact() === 'CommunicationType.MailCommunication') {\r\n required = true;\r\n }\r\n break;\r\n case 'PHONE':\r\n if (this.PersonPreferredContact() === 'CommunicationType.PhoneCommunication') {\r\n required = true;\r\n }\r\n break;\r\n }\r\n return required;\r\n };\r\n\r\n this.ResultMessage = ko.computed(function() {\r\n // Branch the message based on Membership requirements.\r\n if (this.AccountRequirement() == \"none\" || (this.AccountRequirement() == \"optional\" && sm.portal.utility.isNullOrEmpty(this.AccountViewModel().NewAccountPassword()))) {\r\n\r\n return sm.portal.utility.getResourceValue('StartApplicationLogInNewPassword');\r\n }\r\n return sm.portal.utility.getResourceValue('StartApplicationPrePopulateData');\r\n }, this);\r\n this.FullLinkForSuccess = ko.computed(function () {\r\n\r\n var baseURL = this.LinkToApplication();\r\n var queryString = \"gid=\" + this.PersonGID() + \"&attemptGID=\" + this.ApplicationGID(); // PersonGID - only if it's populated...\r\n\r\n // If the membership requirement is OPTIONAL or NONE, we may need to redirect elsewhere\r\n if (this.AccountRequirement() == \"none\" || (this.AccountRequirement() == \"optional\" && sm.portal.utility.isNullOrEmpty(this.AccountViewModel().NewAccountPassword()))) {\r\n baseURL = this.LinkToChangePassword();\r\n queryString += \"&option=ma_show_email_password&redirectid=\" + this.PasswordChangeRedirectID();\r\n }\r\n\r\n // If we don't have a URL or a Query String, return\r\n if (sm.portal.utility.isNullOrEmpty(baseURL) || sm.portal.utility.isNullOrEmpty(queryString)) {\r\n return \"\";\r\n }\r\n\r\n var portalUrl = baseURL;\r\n if (baseURL.indexOf(\"?\") >= 0) {\r\n portalUrl += \"&\";\r\n } else {\r\n portalUrl += \"?\";\r\n }\r\n portalUrl += queryString;\r\n return portalUrl;\r\n }, this);\r\n\r\n // Selected Options\r\n this.ShowResults = ko.observable(false);\r\n this.ShowResultLink = ko.observable(false);\r\n this.ShowPhone = ko.observable(false);\r\n this.ShowAddress = ko.observable(false);\r\n this.ShowPeriodOption = ko.observable(true);\r\n this.ShowStartDateOption = ko.observable(false);\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\r\n var submitObject = ko.mapping.toJS(this);\r\n // Get the Person data in standard model\r\n var stdPerson = new smapi.community.PersonModel({\r\n Surname: self.PersonLastName(),\r\n GivenName: self.PersonFirstName(),\r\n MiddleName: self.PersonMiddleName(),\r\n ID: self.PersonID()\r\n });\r\n\r\n // Get the Email Address object in standard model\r\n var stdEmail = new smapi.community.ElectronicAddressModel({\r\n Value: self.PersonEmailAddress()\r\n });\r\n stdPerson.ElectronicAddresses.push(stdEmail);\r\n\r\n // Add in the Phone Number object in standard model\r\n var stdPhone = null;\r\n if (!sm.portal.utility.isNullOrEmpty(self.PersonHomePhoneNumber())) {\r\n stdPhone = new smapi.community.PhoneNumberModel({\r\n Number: self.PersonHomePhoneNumber()\r\n });\r\n stdPerson.PhoneNumbers.push(stdPhone);\r\n }\r\n\r\n // Add in the Address object in standard model\r\n var stdAddress = null;\r\n\r\n if (!sm.portal.utility.isNullOrEmpty(self.AddressViewModel().AddressCity())) {\r\n stdAddress = self.AddressViewModel().ExtractATO();\r\n stdPerson.Addresses.push(stdAddress);\r\n }\r\n\r\n // Set the Admissions / Academic details in standard model\r\n var stdAdmissionsAttempt = new smapi.admissions.AdmissionsAttemptModel({\r\n PersonID: -1,\r\n AdmissionsAcademicLevelID: self.AcademicDetails().AcademicLevelID(),\r\n ExpectedStartPeriodID: self.AcademicDetails().ExpectedStartPeriodID(),\r\n CampusID: self.AcademicDetails().CampusID(),\r\n DeliveryMethodID: self.AcademicDetails().DeliveryMethodID(),\r\n LevelOfStudyID: self.AcademicDetails().LevelOfStudyEnabled() ? self.AcademicDetails().LevelOfStudyID() : null\r\n });\r\n\r\n stdAdmissionsAttempt.Surname(self.PersonLastName());\r\n stdAdmissionsAttempt.MiddleName(self.PersonMiddleName());\r\n stdAdmissionsAttempt.GivenName(self.PersonFirstName());\r\n\r\n // Add in a Program object for each selected.\r\n if (!sm.portal.utility.isNullOrEmpty(self.AcademicDetails().AdmissionsProgramIDOne())) {\r\n var stdAdmProgramOne = new smapi.admissions.AdmissionsAttemptProgramModel({\r\n AdmissionsAcademicLevelID: self.AcademicDetails().AcademicLevelID(),\r\n AdmissionProgramID: self.AcademicDetails().AdmissionsProgramIDOne()\r\n\r\n });\r\n stdAdmissionsAttempt.AdmissionsAttemptPrograms.push(stdAdmProgramOne);\r\n }\r\n if (!sm.portal.utility.isNullOrEmpty(self.AcademicDetails().AdmissionsProgramIDTwo())) {\r\n var stdAdmProgramTwo = new smapi.admissions.AdmissionsAttemptProgramModel({\r\n AdmissionsAcademicLevelID: self.AcademicDetails().AcademicLevelID(),\r\n AdmissionProgramID: self.AcademicDetails().AdmissionsProgramIDTwo()\r\n\r\n });\r\n stdAdmissionsAttempt.AdmissionsAttemptPrograms.push(stdAdmProgramTwo);\r\n }\r\n if (!sm.portal.utility.isNullOrEmpty(self.AcademicDetails().AdmissionsProgramIDThree())) {\r\n var stdAdmProgramThree = new smapi.admissions.AdmissionsAttemptProgramModel({\r\n AdmissionsAcademicLevelID: self.AcademicDetails().AcademicLevelID(),\r\n AdmissionProgramID: self.AcademicDetails().AdmissionsProgramIDThree()\r\n\r\n });\r\n stdAdmissionsAttempt.AdmissionsAttemptPrograms.push(stdAdmProgramThree);\r\n }\r\n\r\n if (!sm.portal.utility.isNullOrEmpty(viewModel.ApplicationID())) {\r\n stdAdmissionsAttempt.ID = viewModel.ApplicationID();\r\n }\r\n\r\n var termsAndConditions = null;\r\n if (!sm.portal.utility.isNullOrEmpty(self.TermsAndConditions())) {\r\n termsAndConditions = self.TermsAndConditions().ExtractATO();\r\n }\r\n\r\n var submitModel = {\r\n ID: self.ApplicationID(),\r\n\r\n // Account Data\r\n NewAccountPassword: self.AccountViewModel().NewAccountPassword(),\r\n PersonID: self.PersonID(),\r\n PersonGID: self.PersonGID(),\r\n\r\n PersonalInformation: ko.toJS(stdPerson),\r\n AdmissionsInformation: ko.toJS(stdAdmissionsAttempt),\r\n TermsData: ko.toJS(termsAndConditions)\r\n };\r\n return submitModel;\r\n };\r\n\r\n // Core Method\r\n this.SubmitInquiry = function (baseUri, successHandler) {\r\n\r\n if (self.IsVMValid()) {\r\n var url = baseUri + 'api/portalinquiry/SubmitInquiry';\r\n var data = this.ExtractATO();\r\n\r\n jQuery.ajax({\r\n url: url,\r\n type: 'POST',\r\n dataType: 'json',\r\n data: JSON.stringify(data),\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 xhrFields: {\r\n withCredentials: true\r\n },\r\n success: function (data, textStatus, jqXHR) {\r\n\r\n var container = new smapi.access.ApiContainerModel(data.Status, data.Payload, data.ValidationTitle, data.ValidationMessages);\r\n if (data.Status == 'submitted') {\r\n // Show the results message, hide the rest\r\n viewModel.IsError(false);\r\n viewModel.PersonDisplayName(container.Payload.DisplayName);\r\n viewModel.PersonGID(container.Payload.PersonGID);\r\n viewModel.PersonID(container.Payload.PersonID);\r\n viewModel.ApplicationID(container.Payload.ApplicationID);\r\n viewModel.ApplicationGID(container.Payload.ApplicationGID);\r\n viewModel.ShowResults(true);\r\n viewModel.ShowResultLink(true);\r\n viewModel.WarningMessages(data.Payload.WarningMessages);\r\n jQuery.unblockUI();\r\n }\r\n else if (data.Status == 'validationerror') {\r\n\r\n viewModel.HandleError(container.ValidationTitle, container.ValidationMessages);\r\n jQuery.unblockUI();\r\n\r\n } else if (data.Status == 'error') {\r\n\r\n viewModel.HandleError(container.ValidationTitle, container.ValidationMessages);\r\n jQuery.unblockUI();\r\n }\r\n\r\n // Call the Success Handler\r\n successHandler(container);\r\n },\r\n error: function (jqXHR, exception) {\r\n\r\n viewModel.HandleError(exception);\r\n jQuery.unblockUI();\r\n }\r\n });\r\n }\r\n else {\r\n jQuery.unblockUI();\r\n }\r\n };\r\n\r\n // Validation Methods\r\n this.PersonFirstName.extend({\r\n required: {\r\n params: true,\r\n message: sm.portal.utility.getResourceValue(smapi.constant.validate_FieldRequired_Key)\r\n },\r\n maxLength: {\r\n params: 100,\r\n message: sm.portal.utility.formatString(sm.portal.utility.getResourceValue(smapi.constant.validate_0CharactersOrLess_Key), '100')\r\n }\r\n });\r\n this.PersonMiddleName.extend({\r\n maxLength: {\r\n params: 100,\r\n message: sm.portal.utility.formatString(sm.portal.utility.getResourceValue(smapi.constant.validate_0CharactersOrLess_Key), '100')\r\n }\r\n });\r\n this.PersonLastName.extend({\r\n required: {\r\n params: true,\r\n message: sm.portal.utility.getResourceValue(smapi.constant.validate_FieldRequired_Key)\r\n },\r\n maxLength: {\r\n params: 100,\r\n message: sm.portal.utility.formatString(sm.portal.utility.getResourceValue(smapi.constant.validate_0CharactersOrLess_Key), '100')\r\n }\r\n });\r\n this.PersonHomePhoneNumber.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.PreferredContactTypeRequired('PHONE');\r\n }\r\n },\r\n pattern: {\r\n params: /^(?:(?:\\(?(?:00|\\+)([1-4]\\d\\d|[1-9]\\d?)\\)?)?[\\-\\.\\ \\\\\\/]?)?((?:\\(?\\d{1,}\\)?[\\-\\.\\ \\\\\\/]?){0,})(?:[\\-\\.\\ \\\\\\/]?(?:#|ext\\.?|extension|x)[\\-\\.\\ \\\\\\/]?(\\d+))?$/i,\r\n message: sm.portal.utility.getResourceValue(smapi.constant.validate_ItsNotAValidPhoneNumber),\r\n onlyIf: function () {\r\n return self.PreferredContactTypeRequired('PHONE');\r\n }\r\n },\r\n maxLength: {\r\n params: 20,\r\n message: sm.portal.utility.formatString(sm.portal.utility.getResourceValue(smapi.constant.validate_0CharactersOrLess_Key), '20'),\r\n onlyIf: function () {\r\n return self.PreferredContactTypeRequired('PHONE');\r\n }\r\n },\r\n minLength: {\r\n params: 6,\r\n message: sm.portal.utility.getResourceValue(smapi.constant.validate_ItsNotAValidPhoneNumber),\r\n onlyIf: function () {\r\n return self.PreferredContactTypeRequired('PHONE');\r\n }\r\n }\r\n });\r\n this.PersonEmailAddress.extend({\r\n required: {\r\n params: true,\r\n message: sm.portal.utility.getResourceValue(smapi.constant.validate_FieldRequired_Key)\r\n },\r\n email: {\r\n params: true,\r\n message: sm.portal.utility.formatString(sm.portal.utility.getResourceValue(smapi.constant.validate_ErrorInFormat0_Key), 'Example@domain.com')\r\n },\r\n validation: {\r\n onlyIf: function () {\r\n return !self.AccountViewModel().IsLoggedIn();\r\n },\r\n validator: function (val) {\r\n var url = _baseApiUri + 'api/studentportal/DuplicatedEmail?email=' + val;\r\n var duplicatedEmail = jQuery.ajax({\r\n url: url,\r\n type: 'GET',\r\n async: false,\r\n dataType: 'html',\r\n contentType: 'application/json; charset=utf-8',\r\n crossDomain: true,\r\n xhrFields: {\r\n withCredentials: true\r\n },\r\n success: function (data, textStatus, jqXHR) {\r\n return data;\r\n }\r\n });\r\n\r\n if (duplicatedEmail.responseText == \"true\")\r\n return false;\r\n\r\n return true;\r\n },\r\n message: sm.portal.utility.getResourceValue(smapi.constant.validate_DuplicateEmail_Key)\r\n }\r\n });\r\n this.ConfirmPersonEmailAddress.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.AccountViewModel().IsRequired() === true && self.AccountViewModel().ShowNewAccount() === true;\r\n }\r\n },\r\n smMatchingValue: {\r\n params: self.PersonEmailAddress,\r\n message: sm.portal.utility.getResourceValue('EmailDoesNotMatch'),\r\n onlyIf: function () {\r\n return self.AccountViewModel().IsRequired() === true && self.AccountViewModel().ShowNewAccount() === true;\r\n }\r\n }\r\n });\r\n\r\n this.CaptchaAnswer.extend({\r\n required: {\r\n params: true,\r\n message: sm.portal.utility.getResourceValue(smapi.constant.validate_FieldRequired_Key),\r\n },\r\n smMatchingValue: {\r\n params: self.CaptchaAnswerVerification,\r\n message: sm.portal.utility.getResourceValue('AntiSpamAnswerMismatch')\r\n }\r\n });\r\n\r\n // Set Model Grouping for validation\r\n this.ModelErrors = ko.validation.group(this);\r\n\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 var o = this.ModelErrors().length == 0 && this.AccountViewModel().IsVMValid();\r\n if (this.PreferredContactTypeRequired('MAIL'))\r\n o = o && this.AddressViewModel().IsVMValid();\r\n return o;\r\n\r\n };\r\n this.IsInquiryFormValid = ko.computed(function () {\r\n if(!self.IsVMValid())\r\n return false;\r\n\r\n if(!self.AcademicDetails().IsVMValid())\r\n return false;\r\n\r\n if(self.TermsAndConditionsLoaded() && !self.TermsAndConditions().Completed())\r\n return false;\r\n\r\n return true;\r\n }, this);\r\n /*** VALIDATION METHODS ***/\r\n\r\n return self;\r\n }\r\n\r\n jQuery.extend(true, sm.portal.vm, {\r\n InquiryViewModel: InquiryViewModel\r\n });\r\n\r\n})(jQuery);\r\n"]}