{"version":3,"file":"sm.portal.vm.financialAid.widget.min.js","names":["jQuery","sm","window","portal","extend","widget","FinancialAidSummaryViewModel","this","FinancialAidPeriodDisplay","ko","observable","TotalAwards","CostOfAttendance","RemainingNeed","CurrencySymbol","PrimaryEFC","AlternateEFC","TotalIncome","CanadaFeatureEnabled","utility","isCanadaFeatureEnabled","Need","LoadModel","container","entity","Payload","SelectedPeriod","isNullOrEmpty","Name","packageTotals","totalAwards","totalCostOfAttendance","totalRemainingNeed","primaryEFC","altEFC","currencySymbol","totalIncome","need","Loaded","IsError","ErrorHeader","ErrorMessages","observableArray","HandleError","header","msgs","getResourceValue","GetModelData","studentID","url","_baseApiUri","ajax","type","dataType","contentType","headers","processData","crossDomain","xhrFields","withCredentials","success","data","textStatus","jqXHR","smapi","access","ApiContainerModel","Status","ValidationTitle","ValidationMessages","self","ui","readyPage","error","exception","statusText","responseMsg","responseText","parseJSON","Message","messageToUser","formatString","viewModel","e"],"sources":["assets/js/viewmodels/academic/sm.portal.vm.financialAid.widget.js"],"mappings":"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","ignoreList":[],"sourcesContent":["(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.widget === \"undefined\") {\r\n jQuery.extend(sm.portal, { widget: {} });\r\n }\r\n\r\n // Financial Aid View Model\r\n // Simple Model\r\n function FinancialAidSummaryViewModel() {\r\n\r\n // Properties \r\n this.FinancialAidPeriodDisplay = ko.observable();\r\n this.TotalAwards = ko.observable();\r\n this.CostOfAttendance = ko.observable();\r\n this.RemainingNeed = ko.observable();\r\n this.CurrencySymbol = ko.observable();\r\n this.PrimaryEFC = ko.observable();\r\n this.AlternateEFC = ko.observable();\r\n this.TotalIncome = ko.observable();\r\n this.CanadaFeatureEnabled = ko.observable(sm.portal.utility.isCanadaFeatureEnabled());\r\n\r\n this.Need = ko.observable();\r\n // Loading\r\n this.LoadModel = function (container) {\r\n\r\n var entity = container.Payload;\r\n\r\n if (entity.SelectedPeriod && !sm.portal.utility.isNullOrEmpty(entity)) {\r\n if (!sm.portal.utility.isNullOrEmpty(entity.SelectedPeriod)) {\r\n this.FinancialAidPeriodDisplay(entity.SelectedPeriod.Name);\r\n }\r\n\r\n this.TotalAwards(entity.packageTotals.totalAwards);\r\n this.CostOfAttendance(entity.packageTotals.totalCostOfAttendance);\r\n this.RemainingNeed(entity.packageTotals.totalRemainingNeed);\r\n this.PrimaryEFC(entity.packageTotals.primaryEFC);\r\n this.AlternateEFC(entity.packageTotals.altEFC);\r\n this.CurrencySymbol(entity.currencySymbol);\r\n this.TotalIncome(entity.packageTotals.totalIncome);\r\n this.Need(entity.packageTotals.need);\r\n }\r\n\r\n this.Loaded(true);\r\n };\r\n this.Loaded = ko.observable(false);\r\n\r\n this.IsError = ko.observable(false);\r\n this.ErrorHeader = ko.observable();\r\n this.ErrorMessages = ko.observableArray();\r\n this.HandleError = function (header, msgs) {\r\n this.IsError(true);\r\n this.ErrorMessages(msgs);\r\n if (sm.portal.utility.isNullOrEmpty(header)) {\r\n this.ErrorHeader(sm.portal.utility.getResourceValue('ThereWasAnError'));\r\n } else {\r\n this.ErrorHeader(header);\r\n }\r\n };\r\n\r\n // Data Retrieval (NOTE: this could be handled via the parent view model, but this is here as a stand-alone)\r\n this.GetModelData = function (studentID) {\r\n\r\n var url = _baseApiUri + 'api/student360/getprofilesection/?sec=financialaid&studentid=' + studentID\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);\r\n }\r\n sm.portal.ui.readyPage();\r\n },\r\n error: function (jqXHR, exception) {\r\n\r\n var statusText = jqXHR.statusText;\r\n var responseMsg = sm.portal.utility.getResourceValue('UnknownError');\r\n\r\n if (jqXHR != null && !sm.portal.utility.isNullOrEmpty(jqXHR.responseText)) {\r\n responseMsg = jQuery.parseJSON(jqXHR.responseText).Message;\r\n }\r\n var messageToUser = sm.portal.utility.formatString(\"{0} - {1}\", statusText, responseMsg);\r\n try {\r\n viewModel.HandleError(sm.portal.utility.getResourceValue('ErrorAccessingPage'), [messageToUser]);\r\n } catch (e) { }\r\n }\r\n });\r\n };\r\n\r\n var self = this;\r\n return self;\r\n };\r\n\r\n jQuery.extend(true, sm.portal.widget, {\r\n FinancialAidSummaryViewModel: FinancialAidSummaryViewModel\r\n });\r\n})(jQuery);"]}