public IActionResult RewardPointsOnDateCreateOrUpdate(string btnId, RewardPointsOnDateModel model) { if (!_permissionService.Authorize(StandardPermissionProvider.ManagePlugins)) { return(AccessDeniedView()); } var settings = _rewardPointsOnDateSettingsService.GetRewardPointsOnDateSettingsById(model.Id); if (settings != null) { //update existing settings settings = model.ToSettings(settings); _rewardPointsOnDateSettingsService.UpdateRewardPointsOnDateSettings(settings); } else { //create new settings //settings = model.MapTo(new RewardPointsOnDateSettings()); settings = model.ToSettings(new RewardPointsOnDateSettings()); _rewardPointsOnDateSettingsService.InsertRewardPointsOnDateSettings(settings); } //localization foreach (var localized in model.Locales) { _localizedEntityService.SaveLocalizedValue(settings, x => x.Message, localized.Message, localized.LanguageId); } ViewBag.RefreshPage = true; ViewBag.btnId = btnId; return(View("~/Plugins/Misc.ExtendedRewardPointsProgram/Views/CreateOrUpdateRewardPointsOnDateSettings.cshtml", model)); }
public IActionResult RewardPointsOnDateCreateOrUpdate(int id) { if (!_permissionService.Authorize(StandardPermissionProvider.ManagePlugins)) { return(AccessDeniedView()); } var model = new RewardPointsOnDateModel(); var settings = _rewardPointsOnDateSettingsService.GetRewardPointsOnDateSettingsById(id); if (settings != null) { model = settings.ToSettingsModel <RewardPointsOnDateModel>(); //localization AddLocales(_languageService, model.Locales, (locale, languageId) => { locale.Message = _localizationService.GetLocalized(settings, x => x.Message, languageId, false, false); }); } else { AddLocales(_languageService, model.Locales); model.AwardingDateUtc = DateTime.UtcNow; } //stores model.AvailableStores.Add(new SelectListItem { Text = _localizationService.GetResource("Admin.Common.All"), Value = "0" }); foreach (var store in _storeService.GetAllStores()) { model.AvailableStores.Add(new SelectListItem { Text = store.Name, Value = store.Id.ToString() }); } //customer roles model.AvailableCustomerRoles.Add(new SelectListItem { Text = _localizationService.GetResource("Admin.Common.All"), Value = "0" }); foreach (var role in _customerService.GetAllCustomerRoles(true)) { model.AvailableCustomerRoles.Add(new SelectListItem { Text = role.Name, Value = role.Id.ToString() }); } return(View("~/Plugins/Misc.ExtendedRewardPointsProgram/Views/CreateOrUpdateRewardPointsOnDateSettings.cshtml", model)); }