public Task <string> RenderViewAsync(SkinTawkToModule module, SkinTawkToModuleController.DisplayModel model) { ScriptBuilder sb = new ScriptBuilder(); ConfigData config = ConfigDataProvider.GetConfigAsync().Result; sb.Append($@" // https://www.tawk.to/javascript-api/ var Tawk_API = Tawk_API || {{}}, Tawk_LoadStart = new Date();"); if (Manager.HaveUser) { sb.Append($@" Tawk_API.visitor = {{ name: '{JE(Manager.UserName)}', email: '{JE(Manager.UserEmail)}', hash: '{JE(model.Hash)}' }};"); } sb.Append($@" (function() {{ var s1=document.createElement('script'),s0=document.getElementsByTagName('script')[0]; s1.async=true; s1.src = '{JE(string.Format("https://embed.tawk.to/{0}/default", Utility.UrlEncodePath(config.Account)))}'; s1.charset='UTF-8'; s1.setAttribute('crossorigin','*'); s0.parentNode.insertBefore(s1,s0); }})();"); Manager.ScriptManager.AddLast(sb.ToString()); return(Task.FromResult <string>(null)); }
private void LoadConfig() { m_configProvider = new ConfigProvider(); m_configDataProvider = new ConfigDataProvider(); StoryConfig.PreloadInGameConfig(); m_configDataProvider.InitialInfo(); }
public async Task AddSupportAsync(YetaWFManager manager) { ScriptManager scripts = manager.ScriptManager; string area = AreaRegistration.CurrentPackage.AreaName; ConfigData config = await ConfigDataProvider.GetConfigAsync(); scripts.AddConfigOption(area, "ExcludedPagesCss", config.ExcludedPagesCss); scripts.AddConfigOption(area, "IncludedPagesCss", config.IncludedPagesCss); }
/// <summary> /// 修改报名页面显示的单例对象 /// </summary> /// <param name="ConfigDatas"></param> /// <returns></returns> public static ConfigDataProvider ConfigProviderCreate(ConfigData[] ConfigDatas) { ConfigDataProvider datas = new ConfigDataProvider { IsEditFlag = true, ConfigDatas = ConfigDatas }; return(datas); }
public static ConfigDataCache CreateInstance(ConfigDataProvider datas) { if (_instance == null || datas.IsEditFlag) { lock (lockHelper) { _instance = new ConfigDataCache(datas); } } return(_instance); }
/// <summary> /// 初始化报名页面显示的单例对象 /// </summary> /// <returns></returns> public static ConfigDataProvider ConfigProviderCreate() { ////序列化 //string json = Newtonsoft.Json.JsonConvert.SerializeObject(datas, Newtonsoft.Json.Formatting.Indented); //string path = System.Web.HttpContext.Current.Server.MapPath("/App_Data/Config/Yuruisoft.RS.Config/ConfigDataProvider.json.txt"); //File.WriteAllText(path, json, Encoding.Default); //反序列化,通过读本地配置拿数据 string path = System.Web.HttpContext.Current.Server.MapPath("/App_Data/Config/Yuruisoft.RS.Config/ConfigDataProvider.json.txt"); string strjson = System.IO.File.ReadAllText(path, Encoding.Default); ConfigDataProvider datas = Newtonsoft.Json.JsonConvert.DeserializeObject <ConfigDataProvider>(strjson); return(datas); }
public async Task <ActionResult> Config() { using (ConfigDataProvider dataProvider = new ConfigDataProvider()) { Model model = new Model { }; ConfigData data = await dataProvider.GetItemAsync(); if (data == null) { throw new Error(this.__ResStr("notFound", "The messenger settings could not be found")); } model.SetData(data); return(View(model)); } }
public async Task <ActionResult> SharingSidebar() { ConfigData config = await ConfigDataProvider.GetConfigAsync(); if (string.IsNullOrWhiteSpace(config.Code)) { return(new EmptyResult()); } DisplayModel model = new DisplayModel() { Code = config.Code, }; return(View(model)); }
public async Task <ActionResult> SkinHighlightJS() { ConfigData config = await ConfigDataProvider.GetConfigAsync(); // find theme specific skin Package package = AreaRegistration.CurrentPackage; SkinAccess skinAccess = new SkinAccess(); string theme = skinAccess.FindHighlightJSSkin(config.HighlightJSSkin); await Manager.AddOnManager.AddAddOnNamedAsync(package.AreaName, "SkinHighlightJS", theme); // add client-side init Manager.ScriptManager.AddLast("YetaWF_SyntaxHighlighter_HighlightJS", "YetaWF_SyntaxHighlighter.HighlightJS.init();"); return(new EmptyResult()); }
public async Task <ActionResult> Config() { using (ConfigDataProvider configDP = new ConfigDataProvider()) { Model model = new Model { }; ConfigData data = await configDP.GetItemAsync(); if (data == null) { throw new Error(this.__ResStr("notFound", "Currency converter configuration not found.")); } model.SetData(data); return(View(model)); } }
public async Task <ActionResult> Config_Partial(Model model) { using (ConfigDataProvider dataProvider = new ConfigDataProvider()) { ConfigData data = await dataProvider.GetItemAsync();// get the original item if (!ModelState.IsValid) { return(PartialView(model)); } data = model.GetData(data); // merge new data into original model.SetData(data); // and all the data back into model for final display await dataProvider.UpdateConfigAsync(data); return(FormProcessed(model, this.__ResStr("okSaved", "Messenger Settings saved"))); } }
public async Task <ActionResult> SkinSyntaxHighlighter() { ConfigData config = await ConfigDataProvider.GetConfigAsync(); // find theme specific skin Package package = AreaRegistration.CurrentPackage; SkinAccess skinAccess = new SkinAccess(); string theme = skinAccess.FindSyntaxHighlighterSkin(config.SyntaxHighlighterSkin); await Manager.AddOnManager.AddAddOnNamedAsync(package.AreaName, "SkinSyntaxHighlighter", theme); // add client-side init string url = VersionManager.GetAddOnNamedUrl(package.AreaName, "SkinSyntaxHighlighter"); Manager.ScriptManager.AddLast("AlexGorbatchevCom_SyntaxHighlighter", "YetaWF_SyntaxHighlighter.AlexGorbatchevCom.init('" + url + "');"); return(new EmptyResult()); }
public async Task <ActionResult> SkinTawkTo() { ConfigData config = await ConfigDataProvider.GetConfigAsync(); if (Manager.EditMode || !config.IsConfigured) { return(new EmptyResult()); } DisplayModel model = new DisplayModel(); if (Manager.HaveUser) { byte[] key = System.Text.Encoding.UTF8.GetBytes(config.APIKey); using (var hmacsha256 = new System.Security.Cryptography.HMACSHA256(key)) { model.Hash = ByteArrayToString(hmacsha256.ComputeHash(System.Text.Encoding.UTF8.GetBytes(Manager.UserEmail))); } } return(View(model)); }
public async Task RunItemAsync(SchedulerItemBase evnt) { if (evnt.EventName == EventCreateBackup) { SiteBackup siteBackup = new SiteBackup(); List <string> errorList = new List <string>(); ConfigData config = await ConfigDataProvider.GetConfigAsync(); await siteBackup.CreateAsync(errorList, DataOnly : config.DataOnly); } else if (evnt.EventName == EventRemoveOldBackups) { SiteBackup siteBackup = new SiteBackup(); List <string> errorList = new List <string>(); ConfigData config = await ConfigDataProvider.GetConfigAsync(); await siteBackup.RemoveOldBackupsAsync(errorList, config.Days); } else { throw new Error(this.__ResStr("eventNameErr", "Unknown scheduler event {0}"), evnt.EventName); } }
public async Task <ActionResult> Config_Partial(Model model) { using (ConfigDataProvider configDP = new ConfigDataProvider()) { ConfigData data = await configDP.GetItemAsync();// get the original item if (data == null) { throw new Error(this.__ResStr("alreadyDeleted", "The currency converter configuration has been removed and can no longer be updated.")); } if (!ModelState.IsValid) { return(PartialView(model)); } data = model.GetData(data); // merge new data into original model.SetData(data); // and all the data back into model for final display await configDP.UpdateConfigAsync(data); // save updated item return(FormProcessed(model, this.__ResStr("okSaved", "Currency converter configuration saved"))); } }
public CommandSetWarp(IPlugin plugin) { _plugin = plugin; _dataProvider = (WarpsDataProvider)plugin.Container.Resolve <IDataProvider>("data"); _configProvider = (ConfigDataProvider)plugin.Container.Resolve <IDataProvider>("config"); }
public CommandSetWarpPay(IPlugin plugin, WarpsDataProvider dataProvider, ConfigDataProvider configProvider) : base(plugin) { _dataProvider = dataProvider; _configProvider = configProvider; }