UNPKG

consumerportal

Version:

mydna Custimised for you

90 lines (78 loc) 2.7 kB
/// <reference path="../../includes.ts" /> module acctMgmtPersonalDetailsCtrl { import IUserService = services.IUserService; import IUser = services.IUser; interface IAcctMgmtPersonalDetailsController{ savePersonalDetails(): any; } interface IAcctMgmtPersonalDetailsScope extends angular.IScope{ myForm : angular.IFormController } class AcctMgmtPersonalDetailsController implements IAcctMgmtPersonalDetailsController{ static $inject = [ '$scope', 'appMemorySrvc', 'mydnaApis', 'errorHandlerSrvc', 'apiSrvc', 'scrollerSrvc', '$location', 'UtilitySrvc', 'userService', '$filter', 'user' ]; showErrors: any = false; // todo. why is this not boolean? frm: any; savedSuccessfully: boolean = false; formattedDate: any = ''; constructor( private $scope : IAcctMgmtPersonalDetailsScope, private appMemorySrvc: appMemorySrvc.IAppMemoryService, private mydnaApis: ImyDNAApis, private errorHandlerSrvc: errorHandlerSrvc.IErrorHandlerService, private apiSrvc: apiSrvc.IApiService, private scrollerSrvc: scrollerSrvc.IScrollerService, private $location: angular.ILocationService, private UtilitySrvc:UtilitySrvc.IUtilityService, private userService: services.IUserService, private $filter: angular.IFilterService, private UserInfo: IUser ){ this.frm = { FirstName: UserInfo.FirstName, MiddleName: UserInfo.MiddleName, LastName: UserInfo.LastName, dob: UserInfo.dob, Gender: UserInfo.Gender } } savePersonalDetails(){ this.scrollerSrvc.TopScroll(); this.showErrors = false; if(this.$scope.myForm.$valid) { this.$scope.$emit("disable-on-save-on"); this.apiSrvc.post_request( this.mydnaApis.PersonalDetails , this.frm).then(data => { this.savedSuccessfully = true; this.UserInfo.FirstName = this.frm.FirstName; this.UserInfo.MiddleName = this.frm.MiddleName; this.UserInfo.LastName = this.frm.LastName; this.UserInfo.dob = this.frm.dob; this.UserInfo.Gender = this.frm.Gender; this.appMemorySrvc.setUserInfo(this.UserInfo); this.$scope.$emit("disable-on-save-off"); }, err => { this.$scope.$emit("disable-on-save-off"); this.errorHandlerSrvc.errorHandler(err, 'debug', ''); }); } else { this.showErrors = true; } this.$scope.myForm.$setPristine(); } } angular.module('app').controller('acctMgmtPersonalDetailsCtrl', AcctMgmtPersonalDetailsController); }