{"version":3,"file":"sm.portal.vm.demographic.uk.min.js","names":["jQuery","undefined","sm","window","IsUKCountry","id","demographic","match","ko","utils","arrayForEach","UKCountries","ukCountry","ID","toString","portal","extend","vm","ukdemographic","ExtractATO","demoMain","dateFormat","resources","portalResource","getValue","toUpperCase","visaExpirationDate","moment","VisaExpirationDate","format","dateOfEntryToUK","DateOfServiceStart","DateOfServiceEnd","DateOfEntryToUK","passportExpiration","PassportExpiration","AlienIDNumber","ReligionID","CriminalConviction","GenderID","utility","isNullOrEmpty","CitizenshipID","citizenship","Citizenships","PassportNumber","PermanentResidentStatusID","PermanentResidentFlagID","VisaTypeID","RequireVisa","PassportIssuePlace","VisaNumber","IsPrimary","custom","callCustomization","DualNationalityID","dualNationality","smapi","community","CitizenshipModel","CountryID","DualNationalityItemID","GID","DualNationalityItemGID","push","AnythingPopulated","EthnicOriginIDUK","LoadModel","container","Genders","access","loadListItemModels","Payload","ListData","Gender","GenderIdentities","GenderIdentity","SexualOrientations","SexualOrientation","ReligionOptions","Demographic","GenderIdentityID","SexualOrientationID","data","EthnicOriginIDs","shouldClearEthnicIDs","observableArray","ShowForeignBornDetails","showForeignBornDetails","SystemCountryID","InitializeLocalizationProperties","demo","validatedObservable"],"sources":["assets/js/localization/uk/helpers/viewmodels/admissions/sm.portal.vm.demographic.uk.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.vm === \"undefined\") {\r\n jQuery.extend(sm.portal, { vm: {} });\r\n }\r\n if (typeof sm.portal.vm.ukdemographic === \"undefined\") {\r\n jQuery.extend(sm.portal.vm, { ukdemographic: {} });\r\n }\r\n\r\n function InitializeLocalizationProperties(demo){\r\n //Ethnic Origins is a single select in UK portal.\r\n demo.EthnicOriginIDUK = ko.validatedObservable();\r\n }\r\n\r\n function ShowForeignBornDetails(demographic)\r\n {\r\n var showForeignBornDetails = false;\r\n\r\n if (!sm.portal.utility.isNullOrEmpty(demographic.CitizenshipID()) && !sm.portal.utility.isNullOrEmpty(demographic.SystemCountryID())) {\r\n if (demographic.CitizenshipID().toString() != demographic.SystemCountryID().toString()) {\r\n\r\n if (IsUKCountry(demographic.SystemCountryID().toString(), demographic)) {\r\n showForeignBornDetails = !IsUKCountry(demographic.CitizenshipID().toString(),demographic);\r\n } else {\r\n showForeignBornDetails = true;\r\n }\r\n }\r\n }\r\n\r\n\r\n return showForeignBornDetails;\r\n }\r\n\r\n function IsUKCountry (id, demographic) {\r\n var match = false;\r\n ko.utils.arrayForEach(demographic.UKCountries(), function (ukCountry) {\r\n if (ukCountry.ID().toString() === id.toString()) {\r\n match = true;\r\n }\r\n });\r\n\r\n return match;\r\n }\r\n\r\n function LoadModel(demographic, container)\r\n {\r\n var dateFormat = sm.resources.portalResource.getValue('DateFormatExample').toUpperCase();\r\n demographic.Genders = smapi.access.loadListItemModels(container.Payload.ListData.Gender, demographic.Genders);\r\n demographic.GenderIdentities = smapi.access.loadListItemModels(container.Payload.ListData.GenderIdentity, demographic.GenderIdentities);\r\n demographic.SexualOrientations = smapi.access.loadListItemModels(container.Payload.ListData.SexualOrientation, demographic.SexualOrientations);\r\n demographic.ReligionOptions = smapi.access.loadListItemModels(container.Payload.ListData.ReligionOptions, demographic.ReligionOptions);\r\n demographic.UKCountries = smapi.access.loadListItemModels(container.Payload.ListData.UKCountries, demographic.UKCountries);\r\n\r\n \r\n if (container.Payload.Demographic != null) {\r\n demographic.GenderID(container.Payload.Demographic.GenderID);\r\n demographic.GenderIdentityID(container.Payload.Demographic.GenderIdentityID);\r\n demographic.SexualOrientationID(container.Payload.Demographic.SexualOrientationID);\r\n demographic.DualNationalityID(container.Payload.Demographic.DualNationalityID);\r\n demographic.ReligionID(container.Payload.Demographic.ReligionID);\r\n demographic.RequireVisa(container.Payload.Demographic.RequireVisa.toString());\r\n demographic.VisaNumber(container.Payload.Demographic.VisaNumber);\r\n\r\n var data = {\r\n demographic : demographic,\r\n container : container\r\n }\r\n sm.portal.vm.custom.callCustomization('LoadDemographicData', data,\r\n function () {\r\n if (container.Payload.Demographic.DateOfEntryToUK != null && container.Payload.Demographic.DateOfEntryToUK != undefined) {\r\n demographic.DateOfEntryToUK(moment(container.Payload.Demographic.DateOfEntryToUK, 'YYYY-MM-DDTHH:mm:ss').format(dateFormat));\r\n } else {\r\n demographic.DateOfEntryToUK(container.Payload.Demographic.DateOfEntryToUK);\r\n } \r\n }\r\n );\r\n\r\n demographic.EthnicOriginIDUK(container.Payload.Demographic.EthnicOriginIDs[0]);\r\n //This is needed to wipe the list out again. \r\n\r\n var shouldClearEthnicIDs= sm.portal.vm.custom.callCustomization('EthnicOriginArr');\r\n \r\n if(sm.portal.utility.isNullOrEmpty(shouldClearEthnicIDs)){\r\n demographic.EthnicOriginIDs = ko.observableArray();\r\n }\r\n\r\n if (container.Payload.Demographic.PassportExpiration != null && container.Payload.Demographic.PassportExpiration != undefined) {\r\n demographic.PassportExpiration(moment(container.Payload.Demographic.PassportExpiration, 'YYYY-MM-DDTHH:mm:ss').format(dateFormat));\r\n } else {\r\n demographic.PassportExpiration(container.Payload.Demographic.PassportExpiration);\r\n }\r\n demographic.PassportIssuePlace(container.Payload.Demographic.PassportIssuePlace);\r\n demographic.CriminalConviction(container.Payload.Demographic.CriminalConviction);\r\n }\r\n\r\n }\r\n\r\n function AnythingPopulated (demographic) \r\n {\r\n if (!sm.portal.utility.isNullOrEmpty(demographic.EthnicOriginIDUK())) return true;\r\n if (!sm.portal.utility.isNullOrEmpty(demographic.DualNationalityID())) return true;\r\n if (!sm.portal.utility.isNullOrEmpty(demographic.ReligionID())) return true;\r\n if (!sm.portal.utility.isNullOrEmpty(demographic.RequireVisa())) return true;\r\n if (!sm.portal.utility.isNullOrEmpty(demographic.DateOfEntryToUK())) return true;\r\n if (!sm.portal.utility.isNullOrEmpty(demographic.PassportExpiration())) return true;\r\n if (!sm.portal.utility.isNullOrEmpty(demographic.PassportIssuePlace())) return true;\r\n if (!sm.portal.utility.isNullOrEmpty(demographic.VisaNumber())) return true;\r\n if (!sm.portal.utility.isNullOrEmpty(demographic.CriminalConviction())) return true;\r\n }\r\n function ExtractATO(demographic, demoMain){\r\n var dateFormat = sm.resources.portalResource.getValue('DateFormatExample').toUpperCase();\r\n var visaExpirationDate = moment(demographic.VisaExpirationDate(), dateFormat).format('YYYY-MM-DD');\r\n var dateOfServiceStart = moment(demographic.DateOfServiceStart(), dateFormat).format('YYYY-MM-DD');\r\n var dateOfServiceEnd = moment(demographic.DateOfServiceEnd(), dateFormat).format('YYYY-MM-DD');\r\n var dateOfEntryToUK = moment(demographic.DateOfEntryToUK(), dateFormat).format('YYYY-MM-DD');\r\n var passportExpiration = moment(demographic.PassportExpiration(), dateFormat).format('YYYY-MM-DD');\r\n\r\n demoMain.AlienIDNumber = demographic.AlienIDNumber;\r\n demoMain.ReligionID = demographic.ReligionID;\r\n demoMain.CriminalConviction = demographic.CriminalConviction;\r\n demoMain.GenderID = demographic.GenderID;\r\n //demoMain.EthnicOrigins[0] = demographic.EthnicOriginIDUK();\r\n\r\n if (!sm.portal.utility.isNullOrEmpty(demographic.CitizenshipID()) && demographic.CitizenshipID() > 0) {\r\n var citizenship = demoMain.Citizenships()[0];\r\n \r\n citizenship.PassportNumber = demographic.PassportNumber();\r\n citizenship.PermanentResidentStatusID = demographic.PermanentResidentFlagID();\r\n citizenship.VisaTypeID = demographic.VisaTypeID();\r\n citizenship.VisaExpirationDate = moment(demographic.VisaExpirationDate(), dateFormat).format('YYYY-MM-DD');\r\n citizenship.RequireVisa = demographic.RequireVisa;\r\n citizenship.VisaExpirationDate = visaExpirationDate;\r\n citizenship.DateOfEntryToUK = dateOfEntryToUK;\r\n citizenship.PassportExpiration = passportExpiration;\r\n citizenship.PassportIssuePlace = demographic.PassportIssuePlace;\r\n citizenship.VisaNumber = demographic.VisaNumber;\r\n citizenship.IsPrimary = true;\r\n\r\n if (!demographic.RequireVisa())\r\n sm.portal.vm.custom.callCustomization('UpdateCitizenshipData', citizenship);\r\n\r\n }\r\n\r\n if (!sm.portal.utility.isNullOrEmpty(demographic.DualNationalityID()) && demographic.DualNationalityID() > 0) {\r\n\r\n var dualNationality = new smapi.community.CitizenshipModel({\r\n CountryID: demographic.DualNationalityID(),\r\n IsPrimary: false,\r\n ID: demographic.DualNationalityItemID(),\r\n GID: demographic.DualNationalityItemGID()\r\n });\r\n demoMain.Citizenships().push(dualNationality);\r\n }\r\n }\r\n\r\n jQuery.extend(true, sm.portal.vm.ukdemographic, {\r\n ExtractATO: ExtractATO,\r\n AnythingPopulated : AnythingPopulated,\r\n LoadModel : LoadModel,\r\n ShowForeignBornDetails : ShowForeignBornDetails,\r\n InitializeLocalizationProperties : InitializeLocalizationProperties\r\n\r\n });\r\n\r\n})(jQuery);"]}