Esempio n. 1
0
        public PersonalDetailsViewModel GetPersonalDetails(int?id)
        {
            PersonalDetailsViewModel personalDetailsViewModel = new PersonalDetailsViewModel();

            personalDetailsViewModel.personalDetailsModel = new Models.PersonalDetailsModel();
            PersonalDetailsBusinessLayer pdBal = new PersonalDetailsBusinessLayer();
            PersonalDetails pd = pdBal.GetPersonalDetailsByID(id);

            if (pd == null)
            {
            }
            else
            {
                personalDetailsViewModel.personalDetailsModel.ID             = pd.ID;
                personalDetailsViewModel.personalDetailsModel.firstName      = pd.firstName;
                personalDetailsViewModel.personalDetailsModel.lastName       = pd.lastName;
                personalDetailsViewModel.personalDetailsModel.contactNumber  = pd.contactNumber;
                personalDetailsViewModel.personalDetailsModel.profession     = pd.profession;
                personalDetailsViewModel.personalDetailsModel.currentCity    = pd.currentCity;
                personalDetailsViewModel.personalDetailsModel.currentCountry = pd.currentCountry;
                personalDetailsViewModel.personalDetailsModel.dateOfBirth    = pd.dateOfBirth.ToString("yyyy-MM-dd");
                personalDetailsViewModel.personalDetailsModel.imageUrl       = pd.imageUrl;
                if (personalDetailsViewModel.personalDetailsModel.imageUrl == null)
                {
                    personalDetailsViewModel.personalDetailsModel.imageUrl = "/Images/PersonalImages/no-Image.png";
                }
            }

            return(personalDetailsViewModel);
        }
        public async Task <ActionResult> Edit(PersonalDetailsViewModel model)
        {
            if (!ModelState.IsValid)
            {
                model.UserName = User.Identity.Name;
                return(View(model));
            }

            try
            {
                var user = UserManager.FindByName(User.Identity.Name);

                // Set full name only if it was automatically generated
                if (user.FullName == UserInfoProvider.GetFullName(user.FirstName, null, user.LastName))
                {
                    user.FullName = UserInfoProvider.GetFullName(model.FirstName, null, model.LastName);
                }

                user.FirstName = model.FirstName;
                user.LastName  = model.LastName;

                await UserManager.UpdateAsync(user);

                return(RedirectToAction("YourAccount"));
            }
            catch (Exception ex)
            {
                Service.Resolve <IEventLogService>().LogException("AccountController", "Edit", ex);
                ModelState.AddModelError(String.Empty, ResHelper.GetString("DancingGoatMvc.YourAccount.SaveError"));

                model.UserName = User.Identity.Name;
                return(View(model));
            }
        }
Esempio n. 3
0
        public async Task <ActionResult> Edit(PersonalDetailsViewModel model)
        {
            if (!ModelState.IsValid)
            {
                model.UserName = User.Identity.Name;
                return(View(model));
            }

            try
            {
                var user = await userManager.FindByNameAsync(User.Identity.Name);

                // Set full name only if it was automatically generated
                if (user.FullName == UserInfoProvider.GetFullName(user.FirstName, null, user.LastName))
                {
                    user.FullName = UserInfoProvider.GetFullName(model.FirstName, null, model.LastName);
                }

                user.FirstName = model.FirstName;
                user.LastName  = model.LastName;

                await userManager.UpdateAsync(user);

                return(RedirectToAction(nameof(YourAccount)));
            }
            catch (Exception ex)
            {
                eventLogService.LogException("AccountController", "Edit", ex);
                ModelState.AddModelError(string.Empty, localizer["Personal details save failed"]);

                model.UserName = User.Identity.Name;
                return(View(model));
            }
        }
        UpdatePersonalDetails(
            PersonalDetailsViewModel model,
            ModelMethodContext context)
        {
            if (!context.ModelState.IsValid)
            {
                return;
            }

            var user = GetCurrentUser();

            user.UserDetails.Title       = model.Title;
            user.UserDetails.FirstName   = model.FirstName;
            user.UserDetails.LastName    = model.LastName;
            user.UserDetails.Gender      = model.Gender;
            user.UserDetails.DateOfBirth = model.DateOfBirth;

            var result = _userManager.Update(user);

            if (result.Succeeded)
            {
                RedirectToManager(ManageMessageId.UserDetailsUpdateSuccess);
                return;
            }

            AddErrors(result, context);
        }
        public ActionResult Edit()
        {
            var user  = UserManager.FindByName(User.Identity.Name);
            var model = new PersonalDetailsViewModel(user);

            return(View(model));
        }
        GetPersonalDetails()
        {
            var userId = _context.User.Identity.GetUserId();

            if (userId == null)
            {
                RedirectToLogin(
                    StateController.GetNavigationLink("UpdatePersonalDetails")
                    );
                return(null);
            }

            var user  = _userManager.FindById(userId);
            var model = new PersonalDetailsViewModel();

            if (user.UserDetails == null)
            {
                return(model);
            }

            model.Title       = user.UserDetails.Title;
            model.FirstName   = user.UserDetails.FirstName;
            model.LastName    = user.UserDetails.LastName;
            model.Gender      = user.UserDetails.Gender;
            model.DateOfBirth = user.UserDetails.DateOfBirth;

            return(model);
        }
Esempio n. 7
0
        public async Task <ActionResult> Edit(PersonalDetailsViewModel model)
        {
            if (!ModelState.IsValid)
            {
                model.UserName = User.Identity.Name;
                return(View(model));
            }

            try
            {
                var user = UserManager.FindByName(User.Identity.Name);

                user.FirstName = model.FirstName;
                user.LastName  = model.LastName;

                var userStore = new UserStore(SiteContext.CurrentSiteName);
                await userStore.UpdateAsync(user);

                return(RedirectToAction("YourAccount"));
            }
            catch (Exception ex)
            {
                EventLogProvider.LogException("AccountController", "Edit", ex);
                ModelState.AddModelError(String.Empty, ResHelper.GetString("DancingGoatMvc.YourAccount.SaveError"));

                model.UserName = User.Identity.Name;
                return(View(model));
            }
        }
Esempio n. 8
0
        public async Task <ActionResult> Edit()
        {
            var user = await userManager.FindByNameAsync(User.Identity.Name);

            var model = new PersonalDetailsViewModel(user);

            return(View(model));
        }
Esempio n. 9
0
        public ActionResult SaveProfile(PersonalDetailsViewModel viewModel)
        {
            var action = new SavePersonalDetailsAction <ActionResult>(ServiceRegistry.AuthenticationService)
            {
                OnComplete = (m) => View("EditProfile", m)
            };

            return(action.Invoke(viewModel, ResolveUserAccountId()));
        }
        public ActionResult Create(PersonalDetailsViewModel personalDetailsViewModel)
        {
            if (ModelState.IsValid)
            {
                _personalDetailsManager.IsRegister(personalDetailsViewModel);
                return(RedirectToAction("Create", "ContactDetails"));
            }

            return(View(personalDetailsViewModel));
        }
Esempio n. 11
0
        public ActionResult EditProfile()
        {
            var managerResponse = ServiceRegistry.ManagerService.LoadManager(new GenericEntityRequest(ResolveManagerId()));

            var manager = managerResponse.Manager;

            var viewModel = PersonalDetailsViewModel.Create(managerResponse.Username, manager.FirstName, manager.LastName, manager.EmailAddress, manager.ContactNumber);

            return(View(viewModel));
        }
Esempio n. 12
0
        public async Task <IActionResult> EditPersonalDetails(PersonalDetailsViewModel model, CancellationToken cancellationToken)
        {
            if (!ModelState.IsValid)
            {
                return(PartialView(ViewNames.Manage._EditPersonalDetailsModalPartial, model));
            }

            var user = await _siteContext.AppDb.UserRepository.GetLoginUserByUserNameAsync(HttpContext.User.Identity.Name, cancellationToken);

            if (user == null)
            {
                _logger.LogError($"Username '{HttpContext.User.Identity.Name}' not found in repository");
                TempData.Put <ManageMessage>(nameof(ManageMessage), new ManageMessage {
                    AlertType = SiteAlertTagHelper.AlertType.Danger, MessageId = MessageId.ChangePersonalDetailsFailure
                });
                return(JsonAjaxRedirectForModal(Url.Action(nameof(Index), nameof(Manage), new { Organization = _siteContext.UrlSegmentValue })));
            }

            user.Gender    = model.Gender;
            user.FirstName = model.FirstName;
            user.LastName  = model.LastName;
            user.Nickname  = model.Nickname ?? string.Empty;
            try
            {
                await _siteContext.AppDb.GenericRepository.SaveEntityAsync(user, false, false, cancellationToken);
            }
            catch (Exception e)
            {
                _logger.LogError($"Failure saving personal data for user id '{GetCurrentUserId()}'", e);
                TempData.Put <ManageMessage>(nameof(ManageMessage), new ManageMessage {
                    AlertType = SiteAlertTagHelper.AlertType.Danger, MessageId = MessageId.ChangePersonalDetailsFailure
                });
                return(JsonAjaxRedirectForModal(Url.Action(nameof(Index), nameof(Manage), new { Organization = _siteContext.UrlSegmentValue })));
            }

            _logger.LogInformation($"Personal data for user id '{GetCurrentUserId()}' updated");
            TempData.Put <ManageMessage>(nameof(ManageMessage), new ManageMessage {
                AlertType = SiteAlertTagHelper.AlertType.Success, MessageId = MessageId.ChangePersonalDetailsSuccess
            });
            return(JsonAjaxRedirectForModal(Url.Action(nameof(Index), nameof(Manage), new { Organization = _siteContext.UrlSegmentValue })));
        }
Esempio n. 13
0
        public async Task <IActionResult> EditPersonalDetails(CancellationToken cancellationToken)
        {
            var model = new PersonalDetailsViewModel();
            var user  = await _siteContext.AppDb.UserRepository.GetLoginUserByUserNameAsync(HttpContext.User.Identity.Name, cancellationToken);

            if (user == null)
            {
                _logger.LogError($"User id '{GetCurrentUserId()}' not found in repository");
                TempData.Put <ManageMessage>(nameof(ManageMessage), new ManageMessage {
                    AlertType = SiteAlertTagHelper.AlertType.Danger, MessageId = MessageId.ChangePersonalDetailsFailure
                });
                ModelState.AddModelError(string.Empty, _localizer["Personal details not found"]);
                return(PartialView(ViewNames.Manage._EditPersonalDetailsModalPartial, model));
            }

            model.Gender    = user.Gender;
            model.FirstName = user.FirstName;
            model.LastName  = user.LastName;
            model.Nickname  = user.Nickname;

            return(PartialView(ViewNames.Manage._EditPersonalDetailsModalPartial, model));
        }
Esempio n. 14
0
        public async Task <IActionResult> PersonalDetails()
        {
            var user = await _userManager.GetUserAsync(User);

            if (user == null)
            {
                return(RedirectToAction("Login"));
            }
            var userRoles = await _userManager.GetRolesAsync(user);

            var model = new PersonalDetailsViewModel
            {
                TaiKhoan = user.UserName,
                Ten      = user.Ten,
                NgaySinh = user.NgaySinh,
                GioiTinh = user.GioiTinh,
                SDT      = user.SDT,
                Email    = user.Email,
                DiaChi   = user.DiaChi,
                Roles    = userRoles
            };

            return(View(model));
        }
Esempio n. 15
0
 public PersonalDetailsView(PersonalDetailsViewModel viewModel) : base(viewModel)
 {
     InitializeComponent();
     this.viewModel = viewModel;
 }
Esempio n. 16
0
 public void IsUpdate(PersonalDetailsViewModel personalDetailsViewModel)
 {
     _personalDetailsRepository.IsUpdatee(personalDetailsMapping.MapToModel(personalDetailsViewModel));
     _personalDetailsRepository.UnitOfWork.Save();
 }
Esempio n. 17
0
        public PartialViewResult PersonalDetails(PersonalDetailsInputModel inputModel)
        {
            if (job == null)
            {
                job = CreateJob();
            }

            if (ModelState.IsValid)
            {
                SetJobIdCookie(job.Guid);

                if (job.Customer != null)
                {
                    job.Customer.FullName = inputModel.Name;
                    job.Customer.Email = inputModel.Email.ToLower();
                    job.Customer.Telephone = inputModel.Telephone;
                }
                else
                {
                    job.Customer = new Customer
                    {
                        FullName = inputModel.Name,
                        Email = inputModel.Email.ToLower(),
                        Telephone = inputModel.Telephone
                    };
                }

                jobService.SaveJob(job);

                return WebsiteDetails();
            }

            var viewModel = new PersonalDetailsViewModel
            {
                Name = inputModel.Name,
                Email = inputModel.Email.ToLower(),
                Telephone = inputModel.Telephone
            };

            return PartialView("PersonalDetails", viewModel);
        }
        public void Edit(TLSecureValue value)
        {
            if (value == null)
            {
                return;
            }

            if (PhoneNumberViewModel.IsValidType(value.Type))
            {
                ShellViewModel.ShowCustomMessageBox(AppResources.PassportDeletePhoneNumberAlert, AppResources.AppName,
                                                    AppResources.Done.ToLowerInvariant(), AppResources.Cancel.ToLowerInvariant(),
                                                    dismissed =>
                {
                    if (dismissed == CustomMessageBoxResult.RightButton)
                    {
                        IsWorking = true;
                        MTProtoService.DeleteSecureValueAsync(new TLVector <TLSecureValueTypeBase> {
                            new TLSecureValueTypePhone()
                        },
                                                              result => Execute.BeginOnUIThread(() =>
                        {
                            IsWorking = false;

                            for (var i = 0; i < Items.Count; i++)
                            {
                                if (PhoneNumberViewModel.IsValidType(Items[i].Type))
                                {
                                    Items.RemoveAt(i--);
                                }
                            }
                        }),
                                                              error => Execute.BeginOnUIThread(() =>
                        {
                            IsWorking = false;
                        }));
                    }
                });
            }
            else if (EmailViewModel.IsValidType(value.Type))
            {
                ShellViewModel.ShowCustomMessageBox(AppResources.PassportDeleteEmailAlert, AppResources.AppName,
                                                    AppResources.Done.ToLowerInvariant(), AppResources.Cancel.ToLowerInvariant(),
                                                    dismissed =>
                {
                    if (dismissed == CustomMessageBoxResult.RightButton)
                    {
                        IsWorking = true;
                        MTProtoService.DeleteSecureValueAsync(new TLVector <TLSecureValueTypeBase> {
                            new TLSecureValueTypeEmail()
                        },
                                                              result => Execute.BeginOnUIThread(() =>
                        {
                            IsWorking = false;

                            for (var i = 0; i < Items.Count; i++)
                            {
                                if (EmailViewModel.IsValidType(Items[i].Type))
                                {
                                    Items.RemoveAt(i--);
                                }
                            }
                        }),
                                                              error => Execute.BeginOnUIThread(() =>
                        {
                            IsWorking = false;
                        }));
                    }
                });
            }
            else if (ResidentialAddressViewModel.IsValidType(value.Type))
            {
                StateService.SecureValue = value;
                StateService.Password    = _passwordBase;
                NavigationService.UriFor <ResidentialAddressViewModel>().Navigate();
            }
            else if (PersonalDetailsViewModel.IsValidType(value.Type))
            {
                StateService.SecureValue = value;
                StateService.Password    = _passwordBase;
                NavigationService.UriFor <PersonalDetailsViewModel>().Navigate();
            }
        }
        public void AddDocument()
        {
            var items = new List <TLSecureValueTypeBase>
            {
                new TLSecureValueTypePhone(),
                new TLSecureValueTypeEmail(),
                new TLSecureValueTypePersonalDetails(),
                new TLSecureValueTypePassport(),
                new TLSecureValueTypeDriverLicense(),
                new TLSecureValueTypeIdentityCard(),
                new TLSecureValueTypeInternalPassport(),
                new TLSecureValueTypeAddress(),
                new TLSecureValueTypePassportRegistration(),
                new TLSecureValueTypeUtilityBill(),
                new TLSecureValueTypeBankStatement(),
                new TLSecureValueTypeRentalAgreement(),
                new TLSecureValueTypeTemporaryRegistration(),
            };

            var dict = new Dictionary <Type, Type>();

            foreach (var item in Items)
            {
                dict[item.Type.GetType()] = item.Type.GetType();
            }

            var panel = new StackPanel {
                Margin = new Thickness(0.0, 12.0, 0.0, 0.0)
            };
            var messageBox = ShellViewModel.ShowCustomMessageBox(
                null, AppResources.PassportNoDocumentsAdd,
                null, null,
                dismissed =>
            {
            },
                items.Count > 10 ?
                (object)new ScrollViewer {
                MaxHeight = 650.0, Content = panel, VerticalScrollBarVisibility = ScrollBarVisibility.Auto, HorizontalScrollBarVisibility = ScrollBarVisibility.Disabled
            } :
                panel);

            for (var i = 0; i < items.Count; i++)
            {
                if (!dict.ContainsKey(items[i].GetType()))
                {
                    var listBoxItem = new ListBoxItem
                    {
                        Content =
                            new TextBlock
                        {
                            Text     = SecureRequiredTypeToCaptionConverter.Convert(items[i]),
                            FontSize = 27,
                            Margin   = new Thickness(12.0)
                        },
                        DataContext = items[i]
                    };
                    TiltEffect.SetIsTiltEnabled(listBoxItem, true);
                    listBoxItem.Tap += (sender, args) =>
                    {
                        messageBox.Dismiss();
                        var item = sender as ListBoxItem;
                        if (item != null)
                        {
                            var secureValueType = item.DataContext as TLSecureValueTypeBase;
                            if (secureValueType != null)
                            {
                                if (PhoneNumberViewModel.IsValidType(secureValueType))
                                {
                                    StateService.SecureType = secureValueType;
                                    StateService.Password   = _passwordBase;
                                    NavigationService.UriFor <PhoneNumberViewModel>().Navigate();
                                }
                                else if (EmailViewModel.IsValidType(secureValueType))
                                {
                                    StateService.SecureType = secureValueType;
                                    StateService.Password   = _passwordBase;
                                    NavigationService.UriFor <EmailViewModel>().Navigate();
                                }
                                else if (ResidentialAddressViewModel.IsValidType(secureValueType))
                                {
                                    StateService.SecureType = secureValueType;
                                    StateService.Password   = _passwordBase;
                                    NavigationService.UriFor <ResidentialAddressViewModel>().Navigate();
                                }
                                else if (PersonalDetailsViewModel.IsValidType(secureValueType))
                                {
                                    StateService.SecureType = secureValueType;
                                    StateService.Password   = _passwordBase;
                                    NavigationService.UriFor <PersonalDetailsViewModel>().Navigate();
                                }
                            }
                        }
                    };

                    panel.Children.Add(listBoxItem);
                }
            }
        }
        public IActionResult Index()
        {
            var model = new PersonalDetailsViewModel();

            return(View(model));
        }
 public Task <ActionResult> EditPersonalDetails(PersonalDetailsViewModel model)
 {
     return(null);
 }
        protected static bool SetSecretAndDecryptSecureValues(TLPasswordSettings83 passwordSettings, TLString password, IList <TLSecureValue> values)
        {
            if (passwordSettings == null)
            {
                return(false);
            }

            var secureSettings = passwordSettings.SecureSettings;

            if (secureSettings == null)
            {
                return(false);
            }

            var secureAlgo = secureSettings.SecureAlgo;

            if (secureAlgo == null)
            {
                return(false);
            }

            Secret = Utils.Passport.DecryptSecureSecret(
                secureSettings.SecureSecret,
                password,
                secureAlgo);

            // cannot decrypt secureSecret, corrupt data
            if (Secret == null)
            {
                return(false);
            }

            if (values == null)
            {
                return(true);
            }

            foreach (var value in values)
            {
                try
                {
                    if (value.Data != null)
                    {
                        var decryptedData = Utils.Passport.DecryptSecureValue(value, Secret);

                        if (!TLString.IsNullOrEmpty(decryptedData))
                        {
                            if (ResidentialAddressViewModel.IsValidDataType(value.Type))
                            {
                                value.Data.DecryptedData = JsonUtils.FromJSON <ResidentialAddressRootObject>(decryptedData.Data);
                            }
                            else if (PersonalDetailsViewModel.IsValidProofType(value.Type))
                            {
                                value.Data.DecryptedData = JsonUtils.FromJSON <PersonalDetailsDocumentRootObject>(decryptedData.Data);
                            }
                            else if (PersonalDetailsViewModel.IsValidDataType(value.Type))
                            {
                                value.Data.DecryptedData = JsonUtils.FromJSON <PersonalDetailsRootObject>(decryptedData.Data);
                            }
                            else
                            {
                                value.Data.DecryptedData = decryptedData;
                            }
                        }
                    }
                }
                catch (Exception ex)
                {
                    Telegram.Api.Helpers.Execute.ShowDebugMessage(ex.ToString());
                }
            }

            return(true);
        }
Esempio n. 23
0
        public PartialViewResult PersonalDetails()
        {
            var viewModel = new PersonalDetailsViewModel();

            if (job != null && job.Customer != null)
            {
                viewModel.Name = job.Customer.FullName;
                viewModel.Email = job.Customer.Email;
                viewModel.Telephone = job.Customer.Telephone;
            }

            SetQuoteStepCookie(QuoteStep.PersonalDetails);
            return PartialView("PersonalDetails", viewModel);
        }