222 lines
7.5 KiB
PHP
222 lines
7.5 KiB
PHP
{include file="public/header" /}
|
|
<style>
|
|
.config-container {
|
|
padding: 20px;
|
|
background-color: #fff;
|
|
border-radius: 8px;
|
|
/* box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08); */
|
|
}
|
|
|
|
.config-header {
|
|
display: flex;
|
|
align-items: center;
|
|
margin-bottom: 30px;
|
|
padding-bottom: 15px;
|
|
border-bottom: 1px solid #eee;
|
|
}
|
|
|
|
.config-header span {
|
|
font-size: 18px;
|
|
color: #2c3e50;
|
|
font-weight: 500;
|
|
margin-right: 20px;
|
|
}
|
|
|
|
.config-header a {
|
|
text-decoration: none;
|
|
}
|
|
|
|
.config-header a span {
|
|
padding: 6px 15px;
|
|
background: #f8f9fa;
|
|
border-radius: 4px;
|
|
color: #606266;
|
|
font-size: 14px;
|
|
transition: all 0.3s;
|
|
}
|
|
|
|
.config-header a span:hover {
|
|
background: #e9ecef;
|
|
color: #409EFF;
|
|
}
|
|
|
|
.layui-form-item {
|
|
margin-bottom: 25px;
|
|
}
|
|
|
|
.layui-form-label {
|
|
color: #606266;
|
|
font-weight: 500;
|
|
}
|
|
|
|
.layui-input {
|
|
border-radius: 4px;
|
|
}
|
|
|
|
.layui-input:focus {
|
|
border-color: #409EFF;
|
|
}
|
|
|
|
.layui-textarea {
|
|
border-radius: 4px;
|
|
min-height: 100px;
|
|
}
|
|
|
|
.layui-word-aux {
|
|
color: #909399;
|
|
}
|
|
|
|
.layui-btn {
|
|
border-radius: 4px;
|
|
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
|
|
transition: all 0.3s;
|
|
}
|
|
|
|
.layui-btn:hover {
|
|
transform: translateY(-1px);
|
|
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
|
|
}
|
|
|
|
.upload-preview {
|
|
margin-top: 10px;
|
|
}
|
|
|
|
.upload-preview img {
|
|
border-radius: 4px;
|
|
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
|
|
transition: all 0.3s;
|
|
}
|
|
|
|
.upload-preview img:hover {
|
|
transform: scale(1.02);
|
|
}
|
|
|
|
.save-button-container {
|
|
text-align: center;
|
|
margin-top: 40px;
|
|
padding-top: 20px;
|
|
border-top: 1px solid #eee;
|
|
}
|
|
|
|
.save-button-container .layui-btn {
|
|
padding: 0 50px;
|
|
height: 40px;
|
|
line-height: 40px;
|
|
font-size: 15px;
|
|
}
|
|
</style>
|
|
|
|
<div class="config-container">
|
|
<div class="config-header">
|
|
<span>站点配置</span>
|
|
<!-- <a href="{$config['admin_route']}Yunzer/configlist">
|
|
<span>站点管理</span>
|
|
</a> -->
|
|
</div>
|
|
|
|
<form class="layui-form">
|
|
{foreach($lists as $lists_v)}
|
|
{if($lists_v['config_type'] == 1)}
|
|
<div class="layui-form-item">
|
|
<label class="layui-form-label">{$lists_v['config_info']}</label>
|
|
<div class="layui-input-inline" style="width: 350px;">
|
|
<input type="text" class="layui-input" id="{$lists_v['config_name']}" name="{$lists_v['config_name']}"
|
|
placeholder="{$lists_v['config_desc']}" value="{$lists_v['config_value']}">
|
|
</div>
|
|
<div class="layui-form-mid layui-word-aux">{$lists_v['config_desc']}</div>
|
|
</div>
|
|
{elseif($lists_v['config_type'] == 2)/}
|
|
<div class="layui-form-item">
|
|
<label class="layui-form-label">{$lists_v['config_info']}</label>
|
|
<div class="layui-input-inline">
|
|
<button type="button" class="layui-btn layui-btn-normal" id="{$lists_v['config_name']}">
|
|
<i class="layui-icon layui-icon-upload"></i> 上传图片
|
|
</button>
|
|
</div>
|
|
<div class="layui-form-mid layui-word-aux">{$lists_v['config_desc']}</div>
|
|
</div>
|
|
<div class="layui-form-item">
|
|
<label class="layui-form-label">{$lists_v['config_info']}预览</label>
|
|
<div class="layui-input-block">
|
|
<div class="layui-upload-list upload-preview" id="yulan_{$lists_v['config_name']}" style="width:90%;">
|
|
{if !empty($lists_v['config_value'])}
|
|
<div class="upload_pic_li" style="position:relative;width:120px;margin:0 10px 10px 0">
|
|
<img style="background-color: #efefef;height:120px;object-fit:cover;"
|
|
src="{$lists_v['config_value']}" class="layui-upload-img" onmouseover="show_img(this)"
|
|
onmouseleave="hide_img()">
|
|
<input type="hidden" name="{$lists_v['config_name']}" value="{$lists_v['config_value']}" />
|
|
</div>
|
|
{/if}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<script type="text/javascript">
|
|
layui.use(['layer', 'upload'], function () {
|
|
layer = layui.layer;
|
|
upload = layui.upload;
|
|
$ = layui.jquery;
|
|
|
|
upload.render({
|
|
elem: "#{$lists_v['config_name']}",
|
|
url: "{$config['admin_route']}index/upload_img",
|
|
multiple: true,
|
|
done: function (res, title) {
|
|
if (res.code > 0) {
|
|
return layer.msg("上传失败," + res.msg, { icon: 2 });
|
|
} else {
|
|
$("#yulan_{$lists_v['config_name']}").html('<div class="upload_pic_li" style="position:relative;width:120px;margin:0 10px 10px 0"><img style="width:120px;height:120px;object-fit:cover;" src="' + res.url + '" class="layui-upload-img" onmouseover="show_img(this)" onmouseleave="hide_img()"><input type="hidden" name="{$lists_v['config_name']}" value="' + res.data + '"/></div>');
|
|
layer.msg("上传成功", { icon: 1 });
|
|
}
|
|
}
|
|
});
|
|
})
|
|
</script>
|
|
{elseif($lists_v['config_type'] == 3)/}
|
|
<div class="layui-form-item">
|
|
<label class="layui-form-label">{$lists_v['config_info']}</label>
|
|
<div class="layui-input-block">
|
|
<textarea class="layui-textarea" id="{$lists_v['config_name']}" name="{$lists_v['config_name']}"
|
|
placeholder="{$lists_v['config_desc']}">{$lists_v['config_value']}</textarea>
|
|
</div>
|
|
</div>
|
|
{elseif($lists_v['config_type'] == 4)/}
|
|
<div class="layui-form-item">
|
|
<label class="layui-form-label">{$lists_v['config_info']}</label>
|
|
<div class="layui-input-inline">
|
|
<input type="checkbox" name="{$lists_v['config_name']}_checkbox" lay-skin="switch" lay-text="开启|关闭" {if
|
|
$lists_v['config_value']=='1' }checked{/if}>
|
|
<input type="hidden" name="{$lists_v['config_name']}"
|
|
value="{if $lists_v['config_value'] == '1'}1{else}0{/if}">
|
|
</div>
|
|
<div class="layui-form-mid layui-word-aux">{$lists_v['config_desc']}</div>
|
|
</div>
|
|
{/if}
|
|
{/foreach}
|
|
</form>
|
|
|
|
<div class="save-button-container">
|
|
<button type="button" class="layui-btn layui-btn-normal" onclick="save()">
|
|
<i class="layui-icon layui-icon-ok"></i> 保存配置
|
|
</button>
|
|
</div>
|
|
</div>
|
|
|
|
<script type="text/javascript">
|
|
function save() {
|
|
var loadIndex = layer.load(1, {
|
|
shade: [0.1, '#fff']
|
|
});
|
|
$.post('{$config["admin_route"]}yunzer/configvalue', $('form').serialize(), function (res) {
|
|
layer.close(loadIndex);
|
|
if (res.code > 0) {
|
|
layer.msg(res.msg, { 'icon': 2 });
|
|
} else {
|
|
layer.msg(res.msg, { 'icon': 1 });
|
|
setTimeout(function () {
|
|
history.go(0);
|
|
}, 1000);
|
|
}
|
|
}, 'json');
|
|
}
|
|
</script>
|
|
{include file="public/tail" /} |