private void UpdateWebConfigSetting(LanguageAndCulture languageAndCulture, ActionKey action) { if ((Config.LanguageAndCultures.Exists(ln => ln == languageAndCulture.Language) && action == ActionKey.Add) || (!Config.LanguageAndCultures.Exists(ln => ln == languageAndCulture.Language) && action == ActionKey.Delete)) { return; } else if (!Config.LanguageAndCultures.Exists(ln => ln == languageAndCulture.Language) && action == ActionKey.Add) { Config.LanguageAndCultures.Add(languageAndCulture.Language); var setting = new WebConfigSetting() { Key = ConfigKey.LanguageAndCultures.ToString(), Value = string.Join(",", Config.LanguageAndCultures), InjectToJavaScript = false, Description = "", MasterDataKeyValueId = 0, MasterDataKeyValuePropertyName = "" }; var option = JsonConvert.SerializeObject(setting); _webConfigManager.AddOrUpdateSetting(ConfigKey.LanguageAndCultures.ToString(), string.Join(",", Config.LanguageAndCultures), option); } else if (Config.LanguageAndCultures.Exists(ln => ln == languageAndCulture.Language) && action == ActionKey.Delete) { Config.LanguageAndCultures.Remove(languageAndCulture.Language); var setting = new WebConfigSetting() { Key = ConfigKey.LanguageAndCultures.ToString(), Value = string.Join(",", Config.LanguageAndCultures), InjectToJavaScript = false, Description = "", MasterDataKeyValueId = 0, MasterDataKeyValuePropertyName = "" }; var option = JsonConvert.SerializeObject(setting); _webConfigManager.AddOrUpdateSetting(ConfigKey.LanguageAndCultures.ToString(), string.Join(",", Config.LanguageAndCultures), option); } }
public async Task <WebConfigSetting> Save(JObject data) { dynamic dataDto = data; bool isMasterDataSetting = dataDto.IsMasterDataSetting; string value = dataDto.Value; string key = dataDto.Key; int id; JavaScriptType javaScriptType = dataDto.JavaScriptType; try { id = dataDto.MasterDataKeyValueId; } catch (Exception) { id = 0; } if (isMasterDataSetting) { var masterData = await _contentManagementContext.MasterDataKeyValues.FirstOrDefaultAsync( md => md.Id == id); if (masterData == null) { throw new KhodkarInvalidException(LanguageManager.ToAsErrorMessage(ExceptionKey.SettingNotFound)); } key = masterData.Code; value = Helper.GetPropertyValueByName(masterData, Convert.ToString(dataDto.MasterDataKeyValuePropertyName)); } var setting = new WebConfigSetting() { Key = key, Value = value, InjectToJavaScript = dataDto.InjectToJavaScript, Description = dataDto.Description, MasterDataKeyValueId = id, MasterDataKeyValuePropertyName = dataDto.MasterDataKeyValuePropertyName, JavaScriptType = javaScriptType.ToString() }; var option = JsonConvert.SerializeObject(setting); _webConfigManager.AddOrUpdateSetting(key, value, option); setting.Key = key; setting.Value = value; return(setting); }