407 lines
22 KiB
PHP
407 lines
22 KiB
PHP
{extend name='public/base' /}
|
|
{block name='content'}
|
|
{include file='public/content_header' /}
|
|
<section class="content">
|
|
<div class="row">
|
|
<div class="col-md-12">
|
|
<div class="box box-primary">
|
|
<!-- 表单头部 -->
|
|
<div class="box-header with-border">
|
|
<div class="btn-group">
|
|
<a class="btn flat btn-sm btn-default BackButton">
|
|
<i class="fa fa-arrow-left"></i>
|
|
返回
|
|
</a>
|
|
</div>
|
|
</div>
|
|
<!-- 表单 -->
|
|
<form id="dataForm" class="form-horizontal dataForm" action="" method="post"
|
|
enctype="multipart/form-data">
|
|
<!-- 表单字段区域 -->
|
|
<div class="box-body">
|
|
<div class="form-group">
|
|
<label for="setting_group_id" class="col-sm-2 control-label">所属分组</label>
|
|
<div class="col-sm-10 col-md-4">
|
|
<select name="setting_group_id" id="setting_group_id" class="form-control field-select"
|
|
data-placeholder="请选择所属分组">
|
|
<option value=""></option>
|
|
{foreach name='setting_group_list' id='item'}
|
|
<option value="{$item.id}" {if isset($data) &&
|
|
$data.setting_group_id==$item.id}selected{/if}>
|
|
{$item.name}
|
|
</option>
|
|
{/foreach}
|
|
</select>
|
|
</div>
|
|
</div>
|
|
<script>
|
|
$('#setting_group_id').select2();
|
|
</script>
|
|
<div class="form-group">
|
|
<label for="name" class="col-sm-2 control-label">名称</label>
|
|
<div class="col-sm-10 col-md-4">
|
|
<input id="name" name="name" value="{$data.name|default=''}" placeholder="请输入名称"
|
|
type="text" class="form-control field-text">
|
|
</div>
|
|
</div>
|
|
<div class="form-group">
|
|
<label for="description" class="col-sm-2 control-label">描述</label>
|
|
<div class="col-sm-10 col-md-4">
|
|
<input id="description" name="description" value="{$data.description|default=''}"
|
|
placeholder="请输入描述" type="text" class="form-control field-text">
|
|
</div>
|
|
</div>
|
|
<div class="form-group">
|
|
<label for="code" class="col-sm-2 control-label">代码</label>
|
|
<div class="col-sm-10 col-md-4">
|
|
<input id="code" name="code" value="{$data.code|default=''}" placeholder="请输入代码"
|
|
type="text" class="form-control field-text">
|
|
</div>
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label class="col-sm-2 control-label">设置配置</label>
|
|
<div class="col-sm-10 col-md-8">
|
|
<div class="box">
|
|
<div class="box-body table-responsive">
|
|
<table id="goods" class="table table-hover table-bordered datatable"
|
|
width="100%">
|
|
<thead>
|
|
<tr class="input-type">
|
|
<th>操作</th>
|
|
<th>设置类型</th>
|
|
<th>设置名称</th>
|
|
<th>设置字段</th>
|
|
<th>设置内容</th>
|
|
<th>设置选项</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody id="dataBody">
|
|
{if isset($data)}
|
|
{foreach name='data.content' id='item'}
|
|
<tr>
|
|
<td>
|
|
<a class="btn btn-xs btn-primary" onclick="addNew(this,1)">插入</a>
|
|
<a class="btn btn-xs btn-success" onclick="addNew(this,2)">追加</a>
|
|
<a class="btn btn-xs btn-danger" onclick="delThis(this,1)">删除</a>
|
|
</td>
|
|
|
|
<td>
|
|
<select name="config_type[]" class="form-control">
|
|
<option value="text" {if $item.type=='text'}selected{/if}>
|
|
文本[text]
|
|
</option>
|
|
<option value="number" {if $item.type=='number'}selected{/if}>
|
|
数字[number]
|
|
</option>
|
|
<option value="password" {if
|
|
$item.type=='password'}selected{/if}>密码[password]
|
|
</option>
|
|
<option value="mobile" {if $item.type=='mobile'}selected{/if}>
|
|
手机号[mobile]
|
|
</option>
|
|
<option value="email" {if $item.type=='email'}selected{/if}>
|
|
邮箱[email]
|
|
</option>
|
|
<option value="id_card" {if $item.type=='id_card'}selected{/if}>
|
|
身份证号[id_card]
|
|
</option>
|
|
<option value="url" {if $item.type=='url'}selected{/if}>
|
|
网址[url]
|
|
</option>
|
|
<option value="ip" {if $item.type=='ip'}selected{/if}>IP地址[ip]
|
|
</option>
|
|
<option value="textarea" {if
|
|
$item.type=='textarea'}selected{/if}>文本域[textarea]
|
|
</option>
|
|
<option value="checkbox" {if
|
|
$item.type=='checkbox'}selected{/if}>复选[checkbox]
|
|
</option>
|
|
<option value="switch" {if $item.type=='switch'}selected{/if}>
|
|
开关[switch]
|
|
</option>
|
|
<option value="radio" {if $item.type=='radio'}selected{/if}>
|
|
单选[radio]
|
|
</option>
|
|
<option value="select" {if $item.type=='select'}selected{/if}>
|
|
选择列表[select]
|
|
</option>
|
|
<option value="multi_select" {if
|
|
$item.type=='multi_select'}selected{/if}>
|
|
多项选择列表[multi-select]
|
|
</option>
|
|
<option value="image" {if $item.type=='image'}selected{/if}>
|
|
图片上传[image]
|
|
</option>
|
|
<option value="multi_image" {if
|
|
$item.type=='multi_image'}selected{/if}>
|
|
多图上传[multi-image]
|
|
</option>
|
|
<option value="file" {if $item.type=='file'}selected{/if}>
|
|
文件上传[file]
|
|
</option>
|
|
<option value="multi_file" {if
|
|
$item.type=='multi_file'}selected{/if}>多文件上传[multi-file]
|
|
</option>
|
|
<option value="date" {if $item.type=='date'}selected{/if}>
|
|
日期[date]
|
|
</option>
|
|
<option value="date_range" {if
|
|
$item.type=='date_range'}selected{/if}>日期范围[date-range]
|
|
</option>
|
|
<option value="datetime" {if
|
|
$item.type=='datetime'}selected{/if}>日期时间[datetime]
|
|
</option>
|
|
<option value="datetime_range" {if
|
|
$item.type=='datetime_range'}selected{/if}>
|
|
日期时间范围[datetime-range]
|
|
</option>
|
|
<option value="year" {if $item.type=='year'}selected{/if}>
|
|
年[year]
|
|
</option>
|
|
<option value="year_range" {if
|
|
$item.type=='year_range'}selected{/if}>年范围[year-range]
|
|
</option>
|
|
<option value="year_month" {if
|
|
$item.type=='year_month'}selected{/if}>年月[year-month]
|
|
</option>
|
|
<option value="year_month_range" {if
|
|
$item.type=='year_month_range'}selected{/if}>
|
|
年月范围[year-month-range]
|
|
</option>
|
|
<option value="map" {if $item.type=='map'}selected{/if}>
|
|
地图选点[map]
|
|
</option>
|
|
<option value="color" {if $item.type=='color'}selected{/if}>
|
|
颜色选择[color]
|
|
</option>
|
|
<option value="icon" {if $item.type=='icon'}selected{/if}>
|
|
图标选择[icon]
|
|
</option>
|
|
<option value="editor" {if $item.type=='editor'}selected{/if}>
|
|
富文本编辑器[editor]
|
|
</option>
|
|
</select>
|
|
</td>
|
|
|
|
<td>
|
|
<input class="form-control" placeholder="名称" value="{$item.name}"
|
|
name="config_name[]">
|
|
|
|
</td>
|
|
<td>
|
|
<input class="form-control" placeholder="字段" value="{$item.field}"
|
|
name="config_field[]">
|
|
|
|
</td>
|
|
|
|
<td>
|
|
<input class="form-control" name="config_content[]"
|
|
value="{$item.content}" placeholder="选项/默认值(默认值为内容或者第一个选项)"/>
|
|
</td>
|
|
<td>
|
|
<textarea class="form-control" name="config_option[]"
|
|
placeholder="设置选项(单选,复选,选择列表等需要填写此项。格式为 字段||中文名称+换行符)">{$item.option}</textarea>
|
|
</td>
|
|
</tr>
|
|
{/foreach}
|
|
{/if}
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label for="sort_number" class="col-sm-2 control-label">排序</label>
|
|
<div class="col-sm-10 col-md-4">
|
|
<div class="input-group">
|
|
<input id="sort_number" name="sort_number"
|
|
value="{$data.sort_number|default='1000'}" placeholder="请输入排序" type="number"
|
|
class="form-control field-number">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<script>
|
|
$('#sort_number')
|
|
.bootstrapNumber({
|
|
upClass: 'success',
|
|
downClass: 'primary',
|
|
center: true
|
|
});
|
|
</script>
|
|
|
|
</div>
|
|
<!-- 表单底部 -->
|
|
<div class="box-footer">
|
|
{:token()}
|
|
<div class="col-sm-2">
|
|
</div>
|
|
<div class="col-sm-10 col-md-4">
|
|
{if !isset($data)}
|
|
<div class="btn-group pull-right">
|
|
<label class="createContinue">
|
|
<input type="checkbox" value="1" id="_create" name="_create"
|
|
title="继续添加数据">继续添加</label>
|
|
</div>
|
|
{/if}
|
|
<div class="btn-group">
|
|
<button type="submit" class="btn flat btn-info dataFormSubmit">
|
|
保存
|
|
</button>
|
|
</div>
|
|
<div class="btn-group">
|
|
<button type="reset" class="btn flat btn-default dataFormReset">
|
|
重置
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<table>
|
|
<tbody id="data-template" style="display: none">
|
|
<tr>
|
|
<td>
|
|
<a class="btn btn-xs btn-primary" onclick="addNew(this,1)">插入</a>
|
|
<a class="btn btn-xs btn-success" onclick="addNew(this,2)">追加</a>
|
|
<a class="btn btn-xs btn-danger" onclick="delThis(this,1)">删除</a>
|
|
</td>
|
|
<td>
|
|
<select name="config_type[]" class="form-control">
|
|
<option value="text">文本[text]</option>
|
|
<option value="number">数字[number]</option>
|
|
<option value="password">密码[password]</option>
|
|
<option value="mobile">手机号[mobile]</option>
|
|
<option value="email">邮箱[email]</option>
|
|
<option value="id_card">身份证号[id_card]</option>
|
|
<option value="url">网址[url]</option>
|
|
<option value="ip">IP地址[ip]</option>
|
|
<option value="textarea">文本域[textarea]</option>
|
|
<option value="checkbox">复选[checkbox]</option>
|
|
<option value="switch">开关[switch]</option>
|
|
<option value="radio">单选[radio]</option>
|
|
<option value="select">选择列表[select]</option>
|
|
<option value="multi_select">多项选择列表[multi-select]</option>
|
|
<option value="image">图片上传[image]</option>
|
|
<option value="multi_image">多图上传[multi-image]</option>
|
|
<option value="file">文件上传[file]</option>
|
|
<option value="multi_file">多文件上传[multi-file]</option>
|
|
<option value="date">日期[date]</option>
|
|
<option value="date_range">日期范围[date-range]</option>
|
|
<option value="datetime">日期时间[datetime]</option>
|
|
<option value="datetime_range">日期时间范围[datetime-range]</option>
|
|
<option value="year">年[year]</option>
|
|
<option value="year_range">年范围[year-range]</option>
|
|
<option value="year_month">年月[year-month]</option>
|
|
<option value="year_month_range">年月范围[year-month-range]</option>
|
|
<option value="map">地图选点[map]</option>
|
|
<option value="color">颜色选择[color]</option>
|
|
<option value="icon">图标选择[icon]</option>
|
|
<option value="editor">富文本编辑器[editor]</option>
|
|
</select>
|
|
</td>
|
|
<td>
|
|
<input class="form-control" placeholder="名称" name="config_name[]">
|
|
|
|
</td>
|
|
<td>
|
|
<input class="form-control" placeholder="字段" name="config_field[]">
|
|
|
|
</td>
|
|
|
|
<td>
|
|
<input class="form-control" name="config_content[]" placeholder="选项/默认值(默认值为内容或者第一个选项)"/>
|
|
</td>
|
|
<td>
|
|
<textarea class="form-control" name="config_option[]"
|
|
placeholder="设置选项(单选,复选,选择列表等需要填写此项。格式为 字段||中文名称+换行符)"></textarea>
|
|
</td>
|
|
</tr>
|
|
|
|
</tbody>
|
|
</table>
|
|
|
|
<script>
|
|
/** 表单验证 **/
|
|
$('#dataForm').validate({
|
|
rules: {
|
|
'setting_group_id': {
|
|
required: true,
|
|
},
|
|
'name': {
|
|
required: true,
|
|
},
|
|
'description': {
|
|
required: true,
|
|
},
|
|
'code': {
|
|
required: true,
|
|
},
|
|
'sort_number': {
|
|
required: true,
|
|
},
|
|
|
|
},
|
|
messages: {
|
|
'setting_group_id': {
|
|
required: "所属分组不能为空",
|
|
},
|
|
'name': {
|
|
required: "名称不能为空",
|
|
},
|
|
'description': {
|
|
required: "描述不能为空",
|
|
},
|
|
'code': {
|
|
required: "代码不能为空",
|
|
},
|
|
'sort_number': {
|
|
required: "排序不能为空",
|
|
},
|
|
|
|
}
|
|
});
|
|
|
|
|
|
function addNew(obj, type) {
|
|
var template = $('#data-template').html();
|
|
if (obj == null) {
|
|
$("#dataBody").append(template);
|
|
} else {
|
|
if (type === 1) {
|
|
$(obj).parent().parent().before(template);
|
|
} else {
|
|
$(obj).parent().parent().after(template);
|
|
}
|
|
}
|
|
|
|
$('#dataBody select').select2();
|
|
}
|
|
|
|
function delThis(obj) {
|
|
layer.confirm('您确认删除本行吗?', {title: '删除确认', closeBtn: 1, icon: 3}, function () {
|
|
$(obj).parent().parent().remove();
|
|
layer.closeAll();
|
|
});
|
|
}
|
|
</script>
|
|
|
|
{if !isset($data)}
|
|
<script>
|
|
$(function () {
|
|
addNew(null, 1);
|
|
});
|
|
</script>
|
|
{else/}
|
|
<script>
|
|
$('#dataBody select').select2();
|
|
</script>
|
|
{/if}
|
|
|
|
{/block} |