public ActionResult MethodUpdate(PaymentMethodModel model, GridCommand command) { if (!_permissionService.Authorize(StandardPermissionProvider.ManagePaymentMethods)) return AccessDeniedView(); var pm = _paymentService.LoadPaymentMethodBySystemName(model.SystemName); if (pm.IsPaymentMethodActive(_paymentSettings)) { if (!model.IsActive) { //mark as disabled _paymentSettings.ActivePaymentMethodSystemNames.Remove(pm.PluginDescriptor.SystemName); _settingService.SaveSetting(_paymentSettings); } } else { if (model.IsActive) { //mark as active _paymentSettings.ActivePaymentMethodSystemNames.Add(pm.PluginDescriptor.SystemName); _settingService.SaveSetting(_paymentSettings); } } var pluginDescriptor = pm.PluginDescriptor; pluginDescriptor.FriendlyName = model.FriendlyName; pluginDescriptor.DisplayOrder = model.DisplayOrder; PluginFileParser.SavePluginDescriptionFile(pluginDescriptor); //reset plugin cache _pluginFinder.ReloadPlugins(); return Methods(command); }
public ActionResult MethodUpdate(PaymentMethodModel model, GridCommand command) { if (!_permissionService.Authorize(StandardPermissionProvider.ManagePaymentMethods)) return AccessDeniedView(); var pm = _paymentService.LoadPaymentMethodBySystemName(model.SystemName); if (pm.IsPaymentMethodActive(_paymentSettings)) { if (!model.IsActive) { //mark as disabled _paymentSettings.ActivePaymentMethodSystemNames.Remove(pm.PluginDescriptor.SystemName); _settingService.SaveSetting(_paymentSettings); } } else { if (model.IsActive) { //mark as active _paymentSettings.ActivePaymentMethodSystemNames.Add(pm.PluginDescriptor.SystemName); _settingService.SaveSetting(_paymentSettings); } } return Methods(command); }
public ActionResult MethodUpdate(PaymentMethodModel model, GridCommand command) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageExternalAuthenticationMethods)) return AccessDeniedView(); if (!ModelState.IsValid) { return RedirectToAction("Methods"); } var eam = _openAuthenticationService.LoadExternalAuthenticationMethodBySystemName(model.SystemName); if (eam.IsMethodActive(_externalAuthenticationSettings)) { if (!model.IsActive) { //mark as disabled _externalAuthenticationSettings.ActiveAuthenticationMethodSystemNames.Remove(eam.PluginDescriptor.SystemName); _settingService.SaveSetting(_externalAuthenticationSettings); } } else { if (model.IsActive) { //mark as active _externalAuthenticationSettings.ActiveAuthenticationMethodSystemNames.Add(eam.PluginDescriptor.SystemName); _settingService.SaveSetting(_externalAuthenticationSettings); } } return Methods(command); }