parent
5d141b3b78
commit
e5dfcfe398
|
@ -26,7 +26,7 @@ INSERT INTO [Dicts] ([Category], [Name], [Code], [Define]) VALUES ('头像地址
|
|||
INSERT INTO [Dicts] ([Category], [Name], [Code], [Define]) VALUES ('网站样式', '蓝色样式', 'blue.css', 0);
|
||||
INSERT INTO [Dicts] ([Category], [Name], [Code], [Define]) VALUES ('网站样式', '黑色样式', 'black.css', 0);
|
||||
INSERT INTO [Dicts] ([Category], [Name], [Code], [Define]) VALUES ('网站样式', 'AdminLTE', 'lte.css', 0);
|
||||
INSERT INTO [Dicts] ([Category], [Name], [Code], [Define]) VALUES ('当前样式', '使用样式', 'blue.css', 0);
|
||||
INSERT INTO [Dicts] ([Category], [Name], [Code], [Define]) VALUES ('网站设置', '使用样式', 'blue.css', 0);
|
||||
INSERT INTO [Dicts] ([Category], [Name], [Code], [Define]) VALUES ('网站设置', '前台首页', '~/Home/Index', 0);
|
||||
|
||||
-- 网站UI设置
|
||||
|
|
Binary file not shown.
|
@ -22,8 +22,8 @@ namespace Bootstrap.Admin.Controllers.Api
|
|||
/// <param name="values"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
[ButtonAuthorize(Url = "~/Admin/Settings", Auth = "saveTitle,saveFooter,saveTheme,saveUISettings,clearCache,clearAllCache,loginSettings,lockScreen,defaultApp,blazor")]
|
||||
public bool Post([FromBody]IEnumerable<BootstrapDict> values) => DictHelper.SaveSettings(values);
|
||||
[ButtonAuthorize(Url = "~/Admin/Settings", Auth = "saveTitle,saveFooter,saveTheme,saveUISettings,loginSettings,lockScreen,defaultApp,blazor,iplocate")]
|
||||
public bool Post([FromBody]IEnumerable<BootstrapDict> values) => DictHelper.SaveUISettings(values);
|
||||
|
||||
/// <summary>
|
||||
/// 获取网站缓存站点集合
|
||||
|
|
|
@ -165,7 +165,13 @@ namespace Bootstrap.Admin.Pages.Views.Admin.Components
|
|||
/// </summary>
|
||||
protected void SaveWebTitle()
|
||||
{
|
||||
var ret = DictHelper.SaveWebTitle(Model.Title);
|
||||
var ret = DictHelper.SaveSettings(new BootstrapDict[]{
|
||||
new BootstrapDict() {
|
||||
Category = "网站设置",
|
||||
Name = "网站标题",
|
||||
Code = Model.Title
|
||||
}
|
||||
});
|
||||
RootLayout?.OnWebTitleChanged(Model.Title);
|
||||
ShowMessage("保存网站标题", ret);
|
||||
}
|
||||
|
@ -175,7 +181,13 @@ namespace Bootstrap.Admin.Pages.Views.Admin.Components
|
|||
/// </summary>
|
||||
protected void SaveWebFooter()
|
||||
{
|
||||
var ret = DictHelper.SaveWebFooter(Model.Footer);
|
||||
var ret = DictHelper.SaveSettings(new BootstrapDict[]{
|
||||
new BootstrapDict() {
|
||||
Category = "网站设置",
|
||||
Name = "网站页脚",
|
||||
Code = Model.Footer
|
||||
}
|
||||
});
|
||||
RootLayout?.OnWebFooterChanged(Model.Footer);
|
||||
ShowMessage("保存网站页脚", ret);
|
||||
}
|
||||
|
|
|
@ -11,7 +11,9 @@ $(function () {
|
|||
case 'footer':
|
||||
data = dataBinder.get();
|
||||
$.bc({
|
||||
url: Settings.url, data: [{ name: '网站页脚', code: data.Footer, category: '网站设置' }], title: '保存网站页脚', method: "post",
|
||||
url: Settings.url, data: [
|
||||
{ name: 'SaveWebFooter', code: data.Footer }
|
||||
], title: '保存网站页脚', method: "post",
|
||||
callback: function (result) {
|
||||
if (result) $('#websiteFooter').text(data.Footer);
|
||||
}
|
||||
|
@ -20,16 +22,20 @@ $(function () {
|
|||
case 'title':
|
||||
data = dataBinder.get();
|
||||
$.bc({
|
||||
url: Settings.url, data: [{ name: '网站标题', code: data.Title, category: '网站设置' }], title: '保存网站标题', method: "post",
|
||||
url: Settings.url, data: [
|
||||
{ name: 'SaveWebTitle', code: data.Title }
|
||||
], title: '保存网站标题', method: "post",
|
||||
callback: function (result) {
|
||||
if (result) $('#websiteTitle').text(data.Title);
|
||||
if (result) $('#websiteTitle, aside .nav-brand a span').text(data.Title);
|
||||
}
|
||||
});
|
||||
break;
|
||||
case 'css':
|
||||
var cssDefine = $css.val();
|
||||
$.bc({
|
||||
url: Settings.url, data: [{ name: '使用样式', code: cssDefine, category: '当前样式' }], title: '保存网站样式', method: "post",
|
||||
url: Settings.url, data: [
|
||||
{ name: 'SaveTheme', code: cssDefine }
|
||||
], title: '保存网站样式', method: "post",
|
||||
callback: function (result) {
|
||||
if (result) {
|
||||
window.setTimeout(function () { window.location.reload(true); }, 1000);
|
||||
|
@ -43,9 +49,9 @@ $(function () {
|
|||
var fixedTableHeader = $('#tableHeader').prop('checked') ? "1" : "0";
|
||||
$.bc({
|
||||
url: Settings.url, data: [
|
||||
{ name: '卡片标题状态', code: cardTitle, category: '网站设置' },
|
||||
{ name: '侧边栏状态', code: uiSettings, category: '网站设置' },
|
||||
{ name: '固定表头', code: fixedTableHeader, category: '网站设置' }
|
||||
{ name: 'ShowCardTitle', code: cardTitle },
|
||||
{ name: 'ShowSideBar', code: uiSettings },
|
||||
{ name: 'FixedTableHeader', code: fixedTableHeader }
|
||||
], title: '保存网站设置', method: "post",
|
||||
callback: function (result) {
|
||||
if (result) {
|
||||
|
@ -58,13 +64,19 @@ $(function () {
|
|||
var mobile = $('#mobile').prop('checked') ? "1" : "0";
|
||||
var oauth = $('#oauth').prop('checked') ? "1" : "0";
|
||||
$.bc({
|
||||
url: Settings.url, data: [{ name: 'OAuth 认证登录', code: oauth, category: '网站设置' }, { name: '短信验证码登录', code: mobile, category: '网站设置' }], title: '登录设置', method: "post"
|
||||
url: Settings.url, data: [
|
||||
{ name: 'OAuth', code: oauth },
|
||||
{ name: 'SMS', code: mobile }
|
||||
], title: '登录设置', method: "post"
|
||||
});
|
||||
break;
|
||||
case 'saveAutoLock':
|
||||
var autoLock = $('#lockScreen').prop('checked') ? "1" : "0";
|
||||
$.bc({
|
||||
url: Settings.url, data: [{ name: '自动锁屏', code: autoLock, category: '网站设置' }, { name: '自动锁屏时长', code: $('#lockPeriod').val(), category: '网站设置' }], title: '保存自动锁屏设置', method: "post",
|
||||
url: Settings.url, data: [
|
||||
{ name: 'AutoLock', code: autoLock },
|
||||
{ name: 'AutoLockPeriod', code: $('#lockPeriod').val() }
|
||||
], title: '保存自动锁屏设置', method: "post",
|
||||
callback: function (result) {
|
||||
if (result) {
|
||||
window.setTimeout(function () { window.location.reload(true); }, 1000);
|
||||
|
@ -75,13 +87,13 @@ $(function () {
|
|||
case 'saveDefaultApp':
|
||||
var defaultApp = $('#defaultApp').prop('checked') ? "1" : "0";
|
||||
$.bc({
|
||||
url: Settings.url, data: [{ name: '默认应用程序', code: defaultApp, category: '网站设置' }], title: '保存默认应用程序设置', method: "post"
|
||||
url: Settings.url, data: [{ name: 'DefaultApp', code: defaultApp }], title: '保存默认应用程序设置', method: "post"
|
||||
});
|
||||
break;
|
||||
case 'saveBlazor':
|
||||
var blazor = $('#blazor').prop('checked') ? "1" : "0";
|
||||
$.bc({
|
||||
url: Settings.url, data: [{ name: 'Blazor', code: blazor, category: '网站设置' }], title: 'Blazor 设置', method: "post",
|
||||
url: Settings.url, data: [{ name: 'Blazor', code: blazor }], title: 'Blazor 设置', method: "post",
|
||||
callback: function (result) {
|
||||
if (result) {
|
||||
// 通过值设置是否显示 Blazor 挂件
|
||||
|
@ -95,7 +107,7 @@ $(function () {
|
|||
case 'saveIpLocator':
|
||||
var iplocator = $iplocator.val();
|
||||
$.bc({
|
||||
url: Settings.url, data: [{ name: 'IP地理位置接口', code: iplocator, category: '网站设置' }], title: '保存地理位置服务设置', method: "post"
|
||||
url: Settings.url, data: [{ name: 'IPLocator', code: iplocator }], title: '保存地理位置服务设置', method: "post"
|
||||
});
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -101,7 +101,7 @@ namespace Bootstrap.DataAccess
|
|||
/// <returns></returns>
|
||||
public virtual string RetrieveActiveTheme()
|
||||
{
|
||||
var theme = DictHelper.RetrieveDicts().FirstOrDefault(d => d.Name == "使用样式" && d.Category == "当前样式" && d.Define == 0);
|
||||
var theme = DictHelper.RetrieveDicts().FirstOrDefault(d => d.Name == "使用样式" && d.Category == "网站设置" && d.Define == 0);
|
||||
return theme == null ? string.Empty : (theme.Code.Equals("site.css", StringComparison.OrdinalIgnoreCase) ? string.Empty : theme.Code);
|
||||
}
|
||||
|
||||
|
|
|
@ -116,30 +116,34 @@ namespace Bootstrap.DataAccess
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// 保存网站标题
|
||||
/// 保存网站UI设置
|
||||
/// </summary>
|
||||
/// <param name="code"></param>
|
||||
/// <param name="items"></param>
|
||||
/// <returns></returns>
|
||||
public static bool SaveWebTitle(string code)
|
||||
public static bool SaveUISettings(IEnumerable<BootstrapDict> items)
|
||||
{
|
||||
var ret = DictHelper.SaveSettings(new BootstrapDict[]
|
||||
var cache = new Dictionary<string, string>()
|
||||
{
|
||||
new BootstrapDict() { Category = "网站设置", Name = "网站标题", Code = code }
|
||||
});
|
||||
return ret;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 保存网站页脚
|
||||
/// </summary>
|
||||
/// <param name="code"></param>
|
||||
/// <returns></returns>
|
||||
public static bool SaveWebFooter(string code)
|
||||
{
|
||||
var ret = DictHelper.SaveSettings(new BootstrapDict[]
|
||||
["SaveWebTitle"] = "网站标题",
|
||||
["SaveWebFooter"] = "网站页脚",
|
||||
["SaveTheme"] = "使用样式",
|
||||
["ShowCardTitle"] = "卡片标题状态",
|
||||
["ShowSideBar"] = "侧边栏状态",
|
||||
["FixedTableHeader"] = "固定表头",
|
||||
["OAuth"] = "OAuth 认证登录",
|
||||
["SMS"] = "短信验证码登录",
|
||||
["AutoLock"] = "自动锁屏",
|
||||
["AutoLockPeriod"] = "自动锁屏时长",
|
||||
["DefaultApp"] = "默认应用程序",
|
||||
["Blazor"] = "Blazor",
|
||||
["IPLocator"] = "IP地理位置接口"
|
||||
};
|
||||
var ret = DictHelper.SaveSettings(items.Where(i => cache.Any(c => c.Key == i.Name)).Select(i => new BootstrapDict()
|
||||
{
|
||||
new BootstrapDict() { Category = "网站设置", Name = "网站页脚", Code = code }
|
||||
});
|
||||
Category = "网站设置",
|
||||
Name = cache[i.Name],
|
||||
Code = i.Code
|
||||
}));
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue