public ActionResult CustomerUser(CustomerUserSettingsModel model) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageSettings)) { return(AccessDeniedView()); } var customerSettings = _settingService.LoadSetting <CustomerSettings>(); var dateTimeSettings = _settingService.LoadSetting <DateTimeSettings>(); var externalAuthenticationSettings = _settingService.LoadSetting <ExternalAuthenticationSettings>(); customerSettings = model.CustomerSettings.ToEntity(customerSettings); _settingService.SaveSetting(customerSettings); dateTimeSettings.DefaultStoreTimeZoneId = model.DateTimeSettings.DefaultStoreTimeZoneId; dateTimeSettings.AllowCustomersToSetTimeZone = model.DateTimeSettings.AllowCustomersToSetTimeZone; _settingService.SaveSetting(dateTimeSettings); externalAuthenticationSettings.AutoRegisterEnabled = model.ExternalAuthenticationSettings.AutoRegisterEnabled; _settingService.SaveSetting(externalAuthenticationSettings); //activity log _customerActivityService.InsertActivity("EditSettings", _localizationService.GetResource("ActivityLog.EditSettings")); SuccessNotification(_localizationService.GetResource("Admin.Configuration.Updated")); //selected tab SaveSelectedTabIndex(); return(RedirectToAction("CustomerUser")); }
public ActionResult CustomerUser() { if (!_permissionService.Authorize(StandardPermissionProvider.ManageSettings)) { return(AccessDeniedView()); } var customerSettings = _settingService.LoadSetting <CustomerSettings>(); var dateTimeSettings = _settingService.LoadSetting <DateTimeSettings>(); var externalAuthenticationSettings = _settingService.LoadSetting <ExternalAuthenticationSettings>(); //merge settings var model = new CustomerUserSettingsModel(); model.CustomerSettings = customerSettings.ToModel(); model.DateTimeSettings.AllowCustomersToSetTimeZone = dateTimeSettings.AllowCustomersToSetTimeZone; model.DateTimeSettings.DefaultStoreTimeZoneId = _dateTimeHelper.DefaultStoreTimeZone.Id; foreach (var timeZone in _dateTimeHelper.GetSystemTimeZones()) { model.DateTimeSettings.AvailableTimeZones.Add(new SelectListItem { Text = timeZone.DisplayName, Value = timeZone.Id, Selected = timeZone.Id.Equals(_dateTimeHelper.DefaultStoreTimeZone.Id, StringComparison.InvariantCultureIgnoreCase) }); } model.ExternalAuthenticationSettings.AutoRegisterEnabled = externalAuthenticationSettings.AutoRegisterEnabled; return(View(model)); }
public async Task <IActionResult> CustomerUser( int storeScope, CustomerSettings customerSettings, AddressSettings addressSettings, PrivacySettings privacySettings) { var model = new CustomerUserSettingsModel(); await MapperFactory.MapAsync(customerSettings, model.CustomerSettings); await MapperFactory.MapAsync(addressSettings, model.AddressSettings); await MapperFactory.MapAsync(privacySettings, model.PrivacySettings); AddLocales(model.Locales, (locale, languageId) => { locale.Salutations = addressSettings.GetLocalizedSetting(x => x.Salutations, languageId, storeScope, false, false); }); return(View(model)); }
public async Task <IActionResult> CustomerUser( CustomerUserSettingsModel model, int storeScope, CustomerSettings customerSettings, AddressSettings addressSettings, PrivacySettings privacySettings) { var ignoreKey = $"{nameof(model.CustomerSettings)}.{nameof(model.CustomerSettings.RegisterCustomerRoleId)}"; foreach (var key in ModelState.Keys.Where(x => x.EqualsNoCase(ignoreKey))) { ModelState[key].Errors.Clear(); } if (!ModelState.IsValid) { return(View(model)); } ModelState.Clear(); await MapperFactory.MapAsync(model.CustomerSettings, customerSettings); await MapperFactory.MapAsync(model.AddressSettings, addressSettings); await MapperFactory.MapAsync(model.PrivacySettings, privacySettings); foreach (var localized in model.Locales) { await _localizedEntityService.ApplyLocalizedSettingAsync(addressSettings, x => x.Salutations, localized.Salutations, localized.LanguageId, storeScope); } await _db.SaveChangesAsync(); return(NotifyAndRedirect("CustomerUser")); }