feat/task1-c-wallet
parent
3b2b449734
commit
efaaefaa45
|
|
@ -1,6 +1,8 @@
|
|||
<?php
|
||||
namespace app\admin\controller;
|
||||
|
||||
use app\service\SlideService;
|
||||
|
||||
/**
|
||||
* 轮播图片管理
|
||||
* @author Devil
|
||||
|
|
@ -39,109 +41,50 @@ class Slide extends Common
|
|||
public function Index()
|
||||
{
|
||||
// 参数
|
||||
$param = array_merge($_POST, $_GET);
|
||||
$params = input();
|
||||
|
||||
// 模型对象
|
||||
$m = db('Slide');
|
||||
// 分页
|
||||
$number = 10;
|
||||
|
||||
// 条件
|
||||
$where = $this->GetIndexWhere();
|
||||
$where = SlideService::SlideListWhere($params);
|
||||
|
||||
// 获取总数
|
||||
$total = SlideService::SlideTotal($where);
|
||||
|
||||
// 分页
|
||||
$number = MyC('admin_page_number');
|
||||
$page_param = array(
|
||||
$page_params = array(
|
||||
'number' => $number,
|
||||
'total' => $m->where($where)->count(),
|
||||
'where' => $param,
|
||||
'url' => url('Admin/Slide/Index'),
|
||||
'total' => $total,
|
||||
'where' => $params,
|
||||
'page' => isset($params['page']) ? intval($params['page']) : 1,
|
||||
'url' => url('admin/customview/index'),
|
||||
);
|
||||
$page = new \base\Page($page_param);
|
||||
$page = new \base\Page($page_params);
|
||||
$this->assign('page_html', $page->GetPageHtml());
|
||||
|
||||
// 获取列表
|
||||
$list = $this->SetDataHandle($m->where($where)->limit($page->GetPageStarNumber(), $number)->order('is_enable desc, sort asc')->select());
|
||||
|
||||
// 参数
|
||||
$this->assign('param', $param);
|
||||
|
||||
// 分页
|
||||
$this->assign('page_html', $page->GetPageHtml());
|
||||
$data_params = array(
|
||||
'limit_start' => $page->GetPageStarNumber(),
|
||||
'limit_number' => $number,
|
||||
'where' => $where,
|
||||
'field' => '*',
|
||||
);
|
||||
$data = SlideService::SlideList($data_params);
|
||||
$this->assign('data_list', $data['data']);
|
||||
|
||||
// 是否启用
|
||||
$this->assign('common_is_enable_list', lang('common_is_enable_list'));
|
||||
|
||||
// 数据列表
|
||||
$this->assign('list', $list);
|
||||
$this->display('Index');
|
||||
}
|
||||
// 所属平台
|
||||
$this->assign('common_platform_type', lang('common_platform_type'));
|
||||
|
||||
/**
|
||||
* [SetDataHandle 数据处理]
|
||||
* @author Devil
|
||||
* @blog http://gong.gg/
|
||||
* @version 0.0.1
|
||||
* @datetime 2016-12-29T21:27:15+0800
|
||||
* @param [array] $data [轮播图片数据]
|
||||
* @return [array] [处理好的数据]
|
||||
*/
|
||||
private function SetDataHandle($data)
|
||||
{
|
||||
if(!empty($data))
|
||||
{
|
||||
$common_is_enable_tips = lang('common_is_enable_tips');
|
||||
foreach($data as &$v)
|
||||
{
|
||||
// 是否启用
|
||||
$v['is_enable_text'] = $common_is_enable_tips[$v['is_enable']]['name'];
|
||||
// 事件类型
|
||||
$this->assign('common_app_event_type', lang('common_app_event_type'));
|
||||
|
||||
// 图片地址
|
||||
$v['images_url'] = empty($v['images_url']) ? '' : config('IMAGE_HOST').$v['images_url'];
|
||||
|
||||
// 添加时间
|
||||
$v['add_time_text'] = date('Y-m-d H:i:s', $v['add_time']);
|
||||
|
||||
// 更新时间
|
||||
$v['upd_time_text'] = date('Y-m-d H:i:s', $v['upd_time']);
|
||||
}
|
||||
}
|
||||
return $data;
|
||||
}
|
||||
|
||||
/**
|
||||
* [GetIndexWhere 列表条件]
|
||||
* @author Devil
|
||||
* @blog http://gong.gg/
|
||||
* @version 0.0.1
|
||||
* @datetime 2016-12-10T22:16:29+0800
|
||||
*/
|
||||
private function GetIndexWhere()
|
||||
{
|
||||
$where = array();
|
||||
|
||||
// 模糊
|
||||
if(!empty($_REQUEST['keyword']))
|
||||
{
|
||||
$where['name'] = array('like', '%'.I('keyword').'%');
|
||||
}
|
||||
|
||||
// 是否更多条件
|
||||
if(I('is_more', 0) == 1)
|
||||
{
|
||||
if(I('is_enable', -1) > -1)
|
||||
{
|
||||
$where['is_enable'] = intval(I('is_enable', 0));
|
||||
}
|
||||
|
||||
// 表达式
|
||||
if(!empty($_REQUEST['time_start']))
|
||||
{
|
||||
$where['add_time'][] = array('gt', strtotime(I('time_start')));
|
||||
}
|
||||
if(!empty($_REQUEST['time_end']))
|
||||
{
|
||||
$where['add_time'][] = array('lt', strtotime(I('time_end')));
|
||||
}
|
||||
}
|
||||
return $where;
|
||||
// 参数
|
||||
$this->assign('params', $params);
|
||||
return $this->fetch();
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -153,14 +96,36 @@ class Slide extends Common
|
|||
*/
|
||||
public function SaveInfo()
|
||||
{
|
||||
// 轮播图片信息
|
||||
$data = empty($_REQUEST['id']) ? array() : db('Slide')->find(I('id'));
|
||||
$this->assign('data', $data);
|
||||
|
||||
// 参数
|
||||
$this->assign('param', array_merge($_POST, $_GET));
|
||||
$params = input();
|
||||
|
||||
$this->display('SaveInfo');
|
||||
// 数据
|
||||
if(!empty($params['id']))
|
||||
{
|
||||
// 获取列表
|
||||
$data_params = array(
|
||||
'limit_start' => 0,
|
||||
'limit_number' => 1,
|
||||
'where' => ['id'=>intval($params['id'])],
|
||||
'field' => '*',
|
||||
);
|
||||
$data = SlideService::SlideList($data_params);
|
||||
$this->assign('data', empty($data['data'][0]) ? [] : $data['data'][0]);
|
||||
}
|
||||
|
||||
// 是否启用
|
||||
$this->assign('common_is_enable_list', lang('common_is_enable_list'));
|
||||
|
||||
// 所属平台
|
||||
$this->assign('common_platform_type', lang('common_platform_type'));
|
||||
|
||||
// 事件类型
|
||||
$this->assign('common_app_event_type', lang('common_app_event_type'));
|
||||
|
||||
// 编辑器文件存放地址
|
||||
$this->assign('editor_path_type', 'slide');
|
||||
|
||||
return $this->fetch();
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -175,93 +140,13 @@ class Slide extends Common
|
|||
// 是否ajax请求
|
||||
if(!IS_AJAX)
|
||||
{
|
||||
$this->error('非法访问');
|
||||
return $this->error('非法访问');
|
||||
}
|
||||
|
||||
// 图片
|
||||
$this->FileSave('images_url', 'file_images_url', 'slide');
|
||||
|
||||
// 添加
|
||||
if(empty($_POST['id']))
|
||||
{
|
||||
$this->Add();
|
||||
|
||||
// 编辑
|
||||
} else {
|
||||
$this->Edit();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* [Add 轮播图片添加]
|
||||
* @author Devil
|
||||
* @blog http://gong.gg/
|
||||
* @version 0.0.1
|
||||
* @datetime 2016-12-18T16:20:59+0800
|
||||
*/
|
||||
private function Add()
|
||||
{
|
||||
// 轮播图片模型
|
||||
$m = D('Slide');
|
||||
|
||||
// 数据自动校验
|
||||
if($m->create($_POST, 1))
|
||||
{
|
||||
// 额外数据处理
|
||||
$m->name = I('name');
|
||||
$m->jump_url = I('jump_url');
|
||||
$m->images_url = I('images_url');
|
||||
$m->is_enable = intval(I('is_enable', 0));
|
||||
$m->bg_color = I('bg_color');
|
||||
$m->sort = intval(I('sort'));
|
||||
$m->add_time = time();
|
||||
|
||||
// 数据添加
|
||||
if($m->add())
|
||||
{
|
||||
$this->ajaxReturn('新增成功');
|
||||
} else {
|
||||
$this->ajaxReturn('新增失败', -100);
|
||||
}
|
||||
} else {
|
||||
$this->ajaxReturn($m->getError(), -1);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* [Edit 轮播图片编辑]
|
||||
* @author Devil
|
||||
* @blog http://gong.gg/
|
||||
* @version 0.0.1
|
||||
* @datetime 2016-12-17T22:13:40+0800
|
||||
*/
|
||||
private function Edit()
|
||||
{
|
||||
// 轮播图片模型
|
||||
$m = D('Slide');
|
||||
|
||||
// 数据自动校验
|
||||
if($m->create($_POST, 2))
|
||||
{
|
||||
// 额外数据处理
|
||||
$m->name = I('name');
|
||||
$m->jump_url = I('jump_url');
|
||||
$m->images_url = I('images_url');
|
||||
$m->is_enable = intval(I('is_enable', 0));
|
||||
$m->bg_color = I('bg_color');
|
||||
$m->sort = intval(I('sort'));
|
||||
$m->upd_time = time();
|
||||
|
||||
// 更新数据库
|
||||
if($m->where(array('id'=>I('id')))->save())
|
||||
{
|
||||
$this->ajaxReturn('编辑成功');
|
||||
} else {
|
||||
$this->ajaxReturn('编辑失败或数据未改变', -100);
|
||||
}
|
||||
} else {
|
||||
$this->ajaxReturn($m->getError(), -1);
|
||||
}
|
||||
// 开始处理
|
||||
$params = input();
|
||||
$ret = SlideService::SlideSave($params);
|
||||
return json($ret);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -276,39 +161,13 @@ class Slide extends Common
|
|||
// 是否ajax请求
|
||||
if(!IS_AJAX)
|
||||
{
|
||||
$this->error('非法访问');
|
||||
return $this->error('非法访问');
|
||||
}
|
||||
|
||||
// 参数处理
|
||||
$id = I('id');
|
||||
|
||||
// 删除数据
|
||||
if(!empty($id))
|
||||
{
|
||||
// 模型
|
||||
$m = db('Slide');
|
||||
|
||||
// 是否存在
|
||||
$data = $m->find($id);
|
||||
if(empty($data))
|
||||
{
|
||||
$this->ajaxReturn('资源不存在或已被删除', -2);
|
||||
}
|
||||
if($data['is_enable'] == 1)
|
||||
{
|
||||
$this->ajaxReturn(lang('common_already_is_enable_error'), -3);
|
||||
}
|
||||
|
||||
// 删除
|
||||
if($m->where(array('id'=>$id))->delete() !== false)
|
||||
{
|
||||
$this->ajaxReturn('删除成功');
|
||||
} else {
|
||||
$this->ajaxReturn('删除失败或资源不存在', -100);
|
||||
}
|
||||
} else {
|
||||
$this->ajaxReturn('参数错误', -1);
|
||||
}
|
||||
// 开始处理
|
||||
$params = input();
|
||||
$ret = SlideService::SlideDelete($params);
|
||||
return json($ret);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -320,19 +179,16 @@ class Slide extends Common
|
|||
*/
|
||||
public function StatusUpdate()
|
||||
{
|
||||
// 参数
|
||||
if(empty($_POST['id']) || !isset($_POST['state']))
|
||||
// 是否ajax请求
|
||||
if(!IS_AJAX)
|
||||
{
|
||||
$this->ajaxReturn('参数错误', -1);
|
||||
return $this->error('非法访问');
|
||||
}
|
||||
|
||||
// 数据更新
|
||||
if(db('Slide')->where(array('id'=>I('id')))->save(array('is_enable'=>I('state'))))
|
||||
{
|
||||
$this->ajaxReturn('编辑成功');
|
||||
} else {
|
||||
$this->ajaxReturn('编辑失败或数据未改变', -100);
|
||||
}
|
||||
// 开始处理
|
||||
$params = input();
|
||||
$ret = SlideService::SlideStatusUpdate($params);
|
||||
return json($ret);
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
@ -24,7 +24,8 @@
|
|||
<ul class="plug-file-upload-view goods-category-icon-images-view" data-form-name="icon" data-max-number="1" data-dialog-type="images">
|
||||
<li>
|
||||
<input type="hidden" name="icon" value="" />
|
||||
<img class="icon-images-view" src="{{$image_host}}/Public/admin/default/images/default-images.png" />
|
||||
<img src="{{$image_host}}/static/admin/default/images/default-images.png" />
|
||||
<i>×</i>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="plug-file-upload-submit" data-view-tag="ul.goods-category-icon-images-view">+上传图片</div>
|
||||
|
|
@ -34,7 +35,8 @@
|
|||
<ul class="plug-file-upload-view goods-category-big_images-images-view" data-form-name="big_images" data-max-number="1" data-dialog-type="images">
|
||||
<li>
|
||||
<input type="hidden" name="big_images" value="" />
|
||||
<img class="big_images-images-view" src="{{$image_host}}/Public/admin/default/images/default-images.png" />
|
||||
<img src="{{$image_host}}/static/admin/default/images/default-images.png" />
|
||||
<i>×</i>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="plug-file-upload-submit" data-view-tag="ul.goods-category-big_images-images-view">+上传图片</div>
|
||||
|
|
@ -86,7 +88,7 @@
|
|||
<!-- save win end -->
|
||||
|
||||
<!-- list start -->
|
||||
<div id="tree" class="m-t-15" data-rank="3" data-additional='[{"field":"bg_color", "value":"", "type":"input"}, {"field":"bg_color", "value":"", "type":"css", "tag":"button.colorpicker-submit", "style":"background-color"}, {"field":"icon", "value":"", "type":"input"}, {"field":"icon_url", "value":"{{$image_host}}/static/admin/default/images/default-images.png", "type":"attr", "tag":".icon-images-view", "style":"src"}, {"field":"big_images", "value":"", "type":"input"}, {"field":"big_images_url", "value":"{{$image_host}}/static/admin/default/images/default-images.png", "type":"attr", "tag":".big_images-images-view", "style":"src"}, {"field":"vice_name", "value":"", "type":"input"}, {"field":"describe", "value":"", "type":"textarea"}, {"field":"is_home_recommended", "value":"0", "type":"input"}]'>
|
||||
<div id="tree" class="m-t-15" data-rank="3" data-additional='[{"field":"bg_color", "value":"", "type":"input"}, {"field":"bg_color", "value":"", "type":"css", "tag":"button.colorpicker-submit", "style":"background-color"}, {"field":"icon", "value":"", "type":"input"}, {"field":"icon_url", "value":"{{$image_host}}/static/admin/default/images/default-images.png", "type":"attr", "tag":"ul.goods-category-icon-images-view li img", "style":"src"}, {"field":"big_images", "value":"", "type":"input"}, {"field":"big_images_url", "value":"{{$image_host}}/static/admin/default/images/default-images.png", "type":"attr", "tag":"ul.goods-category-big_images-images-view li img", "style":"src"}, {"field":"vice_name", "value":"", "type":"input"}, {"field":"describe", "value":"", "type":"textarea"}, {"field":"is_home_recommended", "value":"0", "type":"input"}]'>
|
||||
<div class="m-t-30 t-c">
|
||||
<img src="{{$image_host}}/static/common/images/loading.gif" />
|
||||
<p>处理中...</p>
|
||||
|
|
|
|||
|
|
@ -4,27 +4,39 @@
|
|||
<div class="content-right">
|
||||
<div class="content">
|
||||
<!-- form start -->
|
||||
<form class="am-form view-list" action="{{:url('Admin/Slide/Index')}}" method="POST">
|
||||
<form class="am-form view-list" action="{{:url('admin/slide/index')}}" method="POST">
|
||||
<div class="am-g">
|
||||
<input type="text" class="am-radius form-keyword" placeholder="名称" name="keyword" <present name="param['keyword']"> value="{{$param.keyword}}"{{/if}} />
|
||||
<input type="text" autocomplete="off" class="am-radius form-keyword" placeholder="名称" name="keywords" {{if !empty($params['keywords'])}} value="{{$params.keywords}}"{{/if}} />
|
||||
<button type="submit" class="am-btn am-btn-secondary am-btn-sm am-radius form-submit">查询</button>
|
||||
<label class="fs-12 m-l-5 c-p fw-100 more-submit">
|
||||
更多筛选
|
||||
<input type="checkbox" name="is_more" value="1" id="is_more" {{if isset($param['is_more']) and $param['is_more'] eq 1)}}checked{{/if}} />
|
||||
<input type="checkbox" name="is_more" value="1" id="is_more" {{if isset($params['is_more']) and $params['is_more'] eq 1}}checked{{/if}} />
|
||||
<i class="am-icon-angle-down"></i>
|
||||
</label>
|
||||
|
||||
<div class="more-where {{if !isset($param['is_more']) or $param['is_more'] neq 1)}}none{{/if}}">
|
||||
<div class="more-where {{if !isset($params['is_more']) or $params['is_more'] neq 1}}none{{/if}}">
|
||||
<select name="is_enable" class="am-radius c-p m-t-10 m-l-5 param-where">
|
||||
<option value="-1)}}是否启用</option>
|
||||
<foreach name="common_is_enable_list" item="v">
|
||||
<option value="{{$v.id}}" {{if isset($param['is_enable']) and $param['is_enable'] eq $v['id']">selected{{/if}}>{{$v.name}}</option>
|
||||
<option value="-1">是否启用</option>
|
||||
{{foreach $common_is_enable_list as $v}}
|
||||
<option value="{{$v.id}}" {{if isset($params['is_enable']) and $params['is_enable'] eq $v['id']}}selected{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
<div class="param-date param-where m-l-5)}}
|
||||
<input type="text" name="time_start" class="Wdate am-radius m-t-10" placeholder="起始时间" onclick="WdatePicker({firstDayOfWeek:1,dateFmt:'yyyy-MM-dd HH:mm:ss'})" {{if isset($param['time_start'])}}value="{{$param.time_start}}"{{/if}}/>
|
||||
<select name="platform" class="am-radius c-p m-t-10 m-l-5 param-where">
|
||||
<option value="">所属平台</option>
|
||||
{{foreach $common_platform_type as $v}}
|
||||
<option value="{{$v.value}}" {{if isset($params['platform']) and $params['platform'] eq $v['value']}}selected{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
<select name="event_type" class="am-radius c-p m-t-10 m-l-5 param-where">
|
||||
<option value="-1">事件类型</option>
|
||||
{{foreach $common_app_event_type as $v}}
|
||||
<option value="{{$v.value}}" {{if isset($params['event_type']) and $params['event_type'] eq $v['value']}}selected{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
<div class="param-date param-where m-l-5">
|
||||
<input type="text" autocomplete="off" name="time_start" class="Wdate am-radius m-t-10" placeholder="起始时间" onclick="WdatePicker({firstDayOfWeek:1,dateFmt:'yyyy-MM-dd HH:mm:ss'})" {{if isset($params['time_start'])}}value="{{$params.time_start}}"{{/if}}/>
|
||||
<span>~</span>
|
||||
<input type="text" class="Wdate am-radius m-t-10" placeholder="结束时间" name="time_end" onclick="WdatePicker({firstDayOfWeek:1,dateFmt:'yyyy-MM-dd HH:mm:ss'})" {{if isset($param['time_end'])}}value="{{$param.time_end}}"{{/if}}/>
|
||||
<input type="text" autocomplete="off" class="Wdate am-radius m-t-10" placeholder="结束时间" name="time_end" onclick="WdatePicker({firstDayOfWeek:1,dateFmt:'yyyy-MM-dd HH:mm:ss'})" {{if isset($params['time_end'])}}value="{{$params.time_end}}"{{/if}}/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -32,28 +44,30 @@
|
|||
<!-- form end -->
|
||||
|
||||
<!-- operation start -->
|
||||
<div class="am-g m-t-15)}}
|
||||
<a href="{{:url('Admin/Slide/SaveInfo')}}" class="am-btn am-btn-secondary am-radius am-btn-xs am-icon-plus"> 新增</a>
|
||||
<div class="am-g m-t-15">
|
||||
<a href="{{:url('admin/slide/saveinfo')}}" class="am-btn am-btn-secondary am-radius am-btn-xs am-icon-plus"> 新增</a>
|
||||
</div>
|
||||
<!-- operation end -->
|
||||
|
||||
<!-- list start -->
|
||||
<table class="am-table am-table-striped am-table-hover am-text-middle m-t-1)}}
|
||||
<table class="am-table am-table-striped am-table-hover am-text-middle m-t-10">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>名称</th>
|
||||
<th>所属平台</th>
|
||||
<th>轮播图片</th>
|
||||
<th>跳转地址</th>
|
||||
<th>事件值</th>
|
||||
<th>是否启用</th>
|
||||
<th>创建时间</th>
|
||||
<th>操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{if !empty($list)}}
|
||||
<foreach name="list" item="v">
|
||||
<tr id="data-list-{{$v.id}}" {{if $v['is_enable'] eq 0)}}class="am-active"{{/if}}>
|
||||
{{if !empty($data_list)}}
|
||||
{{foreach $data_list as $v}}
|
||||
<tr id="data-list-{{$v.id}}" {{if $v['is_enable'] eq 0}}class="am-active"{{/if}}>
|
||||
<td>{{$v.name}}</td>
|
||||
<td>{{$v.platform_text}}</td>
|
||||
<td {{if !empty($v['bg_color'])}}style="background-color:{{$v.bg_color}};"{{/if}}>
|
||||
{{if !empty($v['images_url'])}}
|
||||
<a href="{{$v['images_url']}}" target="_blank">
|
||||
|
|
@ -63,18 +77,21 @@
|
|||
<span class="cr-ddd">暂无图片</span>
|
||||
{{/if}}
|
||||
</td>
|
||||
<td>{{$v.jump_url}}</td>
|
||||
<td class="am-hide-sm-only">
|
||||
<a href="javascript:;" class="am-icon-btn am-icon-check submit-state {{if $v['is_enable'] eq 1)}}am-success{{else /}}am-default{{/if}}" data-url="{{:url('Admin/Slide/StatusUpdate')}}" data-id="{{$v.id}}" data-state="{{$v['is_enable']}}" data-is-update-status="1)}}</a>
|
||||
<td>
|
||||
{{$v.event_value}}
|
||||
{{if !empty($v['event_value'])}}
|
||||
<br /><span class="am-badge am-badge-warning am-radius">{{$v.event_type_text}}</span>
|
||||
{{/if}}
|
||||
</td>
|
||||
<td>{{$v.add_time_text}}</td>
|
||||
<td class="am-hide-sm-only">
|
||||
<a href="javascript:;" class="am-icon-btn am-icon-check submit-state {{if $v['is_enable'] eq 1}}am-success{{else /}}am-default{{/if}}" data-url="{{:url('admin/slide/statusUpdate')}}" data-id="{{$v.id}}" data-state="{{$v['is_enable']}}" data-is-update-status="1"></a>
|
||||
</td>
|
||||
<td>{{$v.add_time_time}}</td>
|
||||
<td class="view-operation">
|
||||
<a href="{{:url('Admin/Slide/SaveInfo', array('id'=>$v['id']))}}">
|
||||
<a href="{{:url('admin/slide/saveinfo', array('id'=>$v['id']))}}">
|
||||
<button class="am-btn am-btn-default am-btn-xs am-radius am-icon-edit"> 编辑</button>
|
||||
</a>
|
||||
{{if $v['is_enable'] eq 0)}}
|
||||
<button class="am-btn am-btn-default am-btn-xs am-radius am-icon-trash-o submit-delete" data-url="{{:url('Admin/Slide/Delete')}}" data-id="{{$v.id}}"> 删除</button>
|
||||
{{/if}}
|
||||
<button class="am-btn am-btn-default am-btn-xs am-radius am-icon-trash-o submit-delete" data-url="{{:url('admin/slide/delete')}}" data-id="{{$v.id}}"> 删除</button>
|
||||
</td>
|
||||
</tr>
|
||||
{{/foreach}}
|
||||
|
|
@ -86,8 +103,8 @@
|
|||
<!-- list end -->
|
||||
|
||||
<!-- page start -->
|
||||
{{if !empty($list)}}
|
||||
{{$page_html}}
|
||||
{{if !empty($data_list)}}
|
||||
{{$page_html|raw}}
|
||||
{{/if}}
|
||||
<!-- page end -->
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -4,41 +4,66 @@
|
|||
<div class="content-right">
|
||||
<div class="content">
|
||||
<!-- form start -->
|
||||
<form class="am-form form-validation view-save" action="{{:url('Admin/Slide/Save')}}" method="POST" request-type="ajax-url" request-value="{{:url('Admin/Slide/Index')}}" enctype="multipart/form-data">
|
||||
<form class="am-form form-validation view-save" action="{{:url('admin/slide/save')}}" method="POST" request-type="ajax-url" request-value="{{:url('admin/slide/index')}}" enctype="multipart/form-data">
|
||||
<input type="hidden" name="max_file_size" value="{{:MyC('home_max_limit_image', 2048000)}}" />
|
||||
<legend>
|
||||
<span class="fs-16)}}
|
||||
<span class="fs-16">
|
||||
{{if empty($data['id'])}}
|
||||
轮播添加
|
||||
{{else /}}
|
||||
轮播编辑
|
||||
{{/if}}
|
||||
</span>
|
||||
<a href="{{:url('Admin/Slide/Index')}}" class="fr fs-14 m-t-5 am-icon-mail-reply"> 返回</a>
|
||||
<a href="{{:url('admin/slide/index')}}" class="fr fs-14 m-t-5 am-icon-mail-reply"> 返回</a>
|
||||
</legend>
|
||||
<div class="am-form-group">
|
||||
<label>名称</label>
|
||||
<input type="text" name="name" placeholder="名称" minlength="2" maxlength="60" data-validation-message="名称格式 2~60 个字符" class="am-radius" <notempty name="data"> value="{{$data.name}}"{{/if}} required />
|
||||
<input type="text" name="name" placeholder="名称" minlength="2" maxlength="60" data-validation-message="名称格式 2~60 个字符" class="am-radius" {{if !empty($data)}} value="{{$data.name}}"{{/if}} required />
|
||||
</div>
|
||||
|
||||
<div class="am-form-group">
|
||||
<label>所属平台</label>
|
||||
<select name="platform" class="am-radius chosen-select" data-placeholder="可选择..." placeholder="所属平台有误">
|
||||
<option value="">可选择...</option>
|
||||
{{foreach $common_platform_type as $v}}
|
||||
<option value="{{$v.value}}" {{if isset($data['platform']) and $data['platform'] eq $v['value']}}selected{{else /}}{{if !isset($data['platform']) and isset($v['checked']) and $v['checked'] eq true}}selected{{/if}}{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="am-form-group">
|
||||
<label>事件类型</label>
|
||||
<select name="event_type" class="am-radius chosen-select" data-placeholder="可选择..." placeholder="事件值类型有误">
|
||||
<option value="">可选择...</option>
|
||||
{{foreach $common_app_event_type as $v}}
|
||||
<option value="{{$v.value}}" {{if isset($data['event_type']) and $data['event_type'] eq $v['value']}}selected{{else /}}{{if !isset($data['event_type']) and isset($v['checked']) and $v['checked'] eq true}}selected{{/if}}{{/if}}>{{$v.name}}</option>
|
||||
{{/foreach}}
|
||||
</select>
|
||||
</div>
|
||||
<div class="am-form-group">
|
||||
<label>跳转地址</label>
|
||||
<input type="text" name="jump_url" placeholder="跳转地址" data-validation-message="跳转地址最多 255 个字符" class="am-radius" <notempty name="data"> value="{{$data.jump_url}}"{{/if}} />
|
||||
<div class="am-alert am-alert-warning am-radius" data-am-alert>
|
||||
<button type="button" class="am-close">×</button>
|
||||
<p class="fs-12">WEB页面<br />   1.以http或https开头<br />   2.并在小程序后台加入白名单<br /><br /> 内部页面(小程序/APP内部地址)<br />   1.小程序或APP内部地址<br />   2.小程序以/pages开始<br />   3.例如:/pages/user/user<br />   4.支持带参数 ?x=xx<br /><br /> 跳转原生地图查看指定位置<br />   1.以 | 竖线分割,分别顺序 名称|地址|经度|纬度<br />   2.例如:ShopXO|上海浦东新区张江高科技园区XXX号|121.626444|31.20843</p>
|
||||
</div>
|
||||
<label>事件值</label>
|
||||
<input type="text" name="event_value" placeholder="事件值" data-validation-message="事件值最多 255 个字符" class="am-radius" {{if !empty($data)}} value="{{$data.event_value}}"{{/if}} />
|
||||
</div>
|
||||
|
||||
<div class="am-form-group am-form-file">
|
||||
<label class="block">轮播图片</label>
|
||||
<button type="button" class="am-btn am-btn-default am-btn-sm am-radius">
|
||||
<i class="am-icon-cloud-upload"></i> 选择图片</button>
|
||||
<input type="text" name="images_url" class="am-radius js-choice-one original-images-url" data-choice-one-to=".images-file-event" <notempty name="data"> value="{{$data.images_url}}"{{/if}}" data-validation-message="请选择需要上传的图片" readonly="readonly" <notempty name="data"> value="{{$data.images_url}}"{{/if}} required />
|
||||
<input type="file" name="file_images_url" multiple data-validation-message="请选择需要上传的图片" accept="image/gif,image/jpeg,image/jpg,image/png" class="js-choice-one images-file-event" data-choice-one-to=".original-images-url" data-tips-tag="#form-images_url-tips" data-image-tag="#form-img-images_url" required />
|
||||
<div id="form-images_url-tips" class="m-t-5)}}</div>
|
||||
<img src="{{if !empty($data['images_url'])}}{{$image_host}}{{$data.images_url}}{{else /}}{{$image_host}}/Public/Admin/Default/Images/default-images.png{{/if}}" id="form-img-images_url" class="block m-t-5 am-img-thumbnail am-radius" width="300" height="150" data-default="{{if !empty($data['images_url'])}}{{$image_host}}{{$data.images_url}}{{else /}}{{$image_host}}/Public/Admin/Default/Images/default-images.png{{/if}}" />
|
||||
<ul class="plug-file-upload-view slide-images_url-images-view" data-form-name="images_url" data-max-number="1" data-delete="0" data-dialog-type="images">
|
||||
<li>
|
||||
<input type="text" name="images_url" value="{{if !empty($data['images_url'])}}{{$data.images_url}}{{/if}}" data-validation-message="请上传图片" required />
|
||||
<img src="{{if !empty($data['images_url'])}}{{$data.images_url}}{{else /}}{{$image_host}}/static/admin/default/images/default-images.png{{/if}}" />
|
||||
</li>
|
||||
</ul>
|
||||
<div class="plug-file-upload-submit" data-view-tag="ul.slide-images_url-images-view">+上传图片</div>
|
||||
</div>
|
||||
<div class="am-form-group">
|
||||
<label>背景色</label>
|
||||
<input type="hidden" name="bg_color" value="<notempty name="data">{{$data.bg_color}}{{/if}}" />
|
||||
<button class="am-btn am-btn-default colorpicker-submit bg-color-tag am-btn-block bk-cr-white t-r" type="button" data-input-tag="button.bg-color-tag" data-color-tag="input[name='bg_color']" data-color-style="background-color" <notempty name="data"> style="background-color:{{$data.bg_color}};"{{/if}}>
|
||||
<img src="__PUBLIC__/Common/Images/colorpicker.png" />
|
||||
<input type="hidden" name="bg_color" value="{{if !empty($data)}}{{$data.bg_color}}{{/if}}" />
|
||||
<button class="am-btn am-btn-default colorpicker-submit bg-color-tag am-btn-block bk-cr-white t-r" type="button" data-input-tag="button.bg-color-tag" data-color-tag="input[name='bg_color']" data-color-style="background-color" {{if !empty($data)}} style="background-color:{{$data.bg_color}};"{{/if}}>
|
||||
<img src="{{$image_host}}/static/common/images/colorpicker.png" />
|
||||
</button>
|
||||
</div>
|
||||
|
||||
|
|
@ -49,10 +74,10 @@
|
|||
|
||||
<div class="am-form-group">
|
||||
<label class="block">是否启用</label>
|
||||
<input name="is_enable" value="1" type="checkbox" data-off-text="否" data-on-text="是" data-size="xs" data-on-color="success" data-off-color="default" data-handle-width="50" data-am-switch {{if !empty($data) and $data['is_enable'] eq 1)}}checked="true"{{/if}} />
|
||||
<input name="is_enable" value="1" type="checkbox" data-off-text="否" data-on-text="是" data-size="xs" data-on-color="success" data-off-color="default" data-handle-width="50" data-am-switch {{if (!empty($data) and $data['is_enable'] eq 1) or empty($data)}}checked="true"{{/if}} />
|
||||
</div>
|
||||
<div class="am-form-group">
|
||||
<input type="hidden" name="id" <notempty name="data"> value="{{$data.id}}"{{/if}} />
|
||||
<input type="hidden" name="id" {{if !empty($data)}} value="{{$data.id}}"{{/if}} />
|
||||
<button type="submit" class="am-btn am-btn-primary am-radius btn-loading-example am-btn-sm w100" data-am-loading="{loadingText:'处理中...'}">保存</button>
|
||||
</div>
|
||||
</form>
|
||||
|
|
|
|||
|
|
@ -55,7 +55,7 @@ class LinkService
|
|||
[
|
||||
'checked_type' => 'length',
|
||||
'key_name' => 'sort',
|
||||
'checked_data' => '4',
|
||||
'checked_data' => '3',
|
||||
'error_msg' => '顺序 0~255 之间的数值',
|
||||
],
|
||||
[
|
||||
|
|
|
|||
|
|
@ -10,6 +10,305 @@ namespace app\service;
|
|||
*/
|
||||
class SlideService
|
||||
{
|
||||
/**
|
||||
* 数据列表
|
||||
* @author Devil
|
||||
* @blog http://gong.gg/
|
||||
* @version 1.0.0
|
||||
* @date 2018-08-29
|
||||
* @desc description
|
||||
* @param [array] $params [输入参数]
|
||||
*/
|
||||
public static function SlideList($params = [])
|
||||
{
|
||||
$where = empty($params['where']) ? [] : $params['where'];
|
||||
$field = empty($params['field']) ? '*' : $params['field'];
|
||||
$m = isset($params['m']) ? intval($params['m']) : 0;
|
||||
$n = isset($params['n']) ? intval($params['n']) : 10;
|
||||
|
||||
$data = db('Slide')->field($field)->where($where)->order('sort asc')->limit($m, $n)->select();
|
||||
if(!empty($data))
|
||||
{
|
||||
$common_platform_type = lang('common_platform_type');
|
||||
$common_is_enable_tips = lang('common_is_enable_tips');
|
||||
$common_app_event_type = lang('common_app_event_type');
|
||||
$image_host = config('IMAGE_HOST');
|
||||
foreach($data as &$v)
|
||||
{
|
||||
// 是否启用
|
||||
if(isset($v['is_enable']))
|
||||
{
|
||||
$v['is_enable_text'] = $common_is_enable_tips[$v['is_enable']]['name'];
|
||||
}
|
||||
|
||||
// 平台类型
|
||||
if(isset($v['platform']))
|
||||
{
|
||||
$v['platform_text'] = $common_platform_type[$v['platform']]['name'];
|
||||
}
|
||||
|
||||
// 事件类型
|
||||
if(isset($v['event_type']) && $v['event_type'] != -1)
|
||||
{
|
||||
$v['event_type_text'] = $common_app_event_type[$v['event_type']]['name'];
|
||||
}
|
||||
|
||||
// 图片地址
|
||||
if(isset($v['images_url']))
|
||||
{
|
||||
$v['images_url'] = empty($v['images_url']) ? '' : $image_host.$v['images_url'];
|
||||
}
|
||||
|
||||
// 时间
|
||||
if(isset($v['add_time']))
|
||||
{
|
||||
$v['add_time_time'] = date('Y-m-d H:i:s', $v['add_time']);
|
||||
$v['add_time_date'] = date('Y-m-d', $v['add_time']);
|
||||
}
|
||||
if(isset($v['upd_time']))
|
||||
{
|
||||
$v['upd_time_time'] = date('Y-m-d H:i:s', $v['upd_time']);
|
||||
$v['upd_time_date'] = date('Y-m-d', $v['upd_time']);
|
||||
}
|
||||
}
|
||||
}
|
||||
return DataReturn('处理成功', 0, $data);
|
||||
}
|
||||
|
||||
/**
|
||||
* 总数
|
||||
* @author Devil
|
||||
* @blog http://gong.gg/
|
||||
* @version 1.0.0
|
||||
* @date 2018-09-29
|
||||
* @desc description
|
||||
* @param [array] $where [条件]
|
||||
*/
|
||||
public static function SlideTotal($where = [])
|
||||
{
|
||||
return (int) db('Slide')->where($where)->count();
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表条件
|
||||
* @author Devil
|
||||
* @blog http://gong.gg/
|
||||
* @version 1.0.0
|
||||
* @date 2018-09-29
|
||||
* @desc description
|
||||
* @param [array] $params [输入参数]
|
||||
*/
|
||||
public static function SlideListWhere($params = [])
|
||||
{
|
||||
$where = [];
|
||||
|
||||
if(!empty($params['keywords']))
|
||||
{
|
||||
$where[] = ['name', 'like', '%'.$params['keywords'].'%'];
|
||||
}
|
||||
|
||||
// 是否更多条件
|
||||
if(isset($params['is_more']) && $params['is_more'] == 1)
|
||||
{
|
||||
// 等值
|
||||
if(isset($params['is_enable']) && $params['is_enable'] > -1)
|
||||
{
|
||||
$where[] = ['is_enable', '=', intval($params['is_enable'])];
|
||||
}
|
||||
if(isset($params['event_type']) && $params['event_type'] > -1)
|
||||
{
|
||||
$where[] = ['event_type', '=', intval($params['event_type'])];
|
||||
}
|
||||
if(!empty($params['platform']))
|
||||
{
|
||||
$where[] = ['platform', '=', $params['platform']];
|
||||
}
|
||||
|
||||
if(!empty($params['time_start']))
|
||||
{
|
||||
$where[] = ['add_time', '>', strtotime($params['time_start'])];
|
||||
}
|
||||
if(!empty($params['time_end']))
|
||||
{
|
||||
$where[] = ['add_time', '<', strtotime($params['time_end'])];
|
||||
}
|
||||
}
|
||||
|
||||
return $where;
|
||||
}
|
||||
|
||||
/**
|
||||
* 数据保存
|
||||
* @author Devil
|
||||
* @blog http://gong.gg/
|
||||
* @version 1.0.0
|
||||
* @date 2018-12-19
|
||||
* @desc description
|
||||
* @param [array] $params [输入参数]
|
||||
*/
|
||||
public static function SlideSave($params = [])
|
||||
{
|
||||
// 是否启用值处理
|
||||
if(!isset($params['is_enable']))
|
||||
{
|
||||
$params['is_enable'] = 0;
|
||||
}
|
||||
|
||||
// 请求类型
|
||||
$p = [
|
||||
[
|
||||
'checked_type' => 'length',
|
||||
'key_name' => 'name',
|
||||
'checked_data' => '2,60',
|
||||
'error_msg' => '名称长度 2~60 个字符',
|
||||
],
|
||||
[
|
||||
'checked_type' => 'in',
|
||||
'key_name' => 'platform',
|
||||
'checked_data' => array_column(lang('common_platform_type'), 'value'),
|
||||
'error_msg' => '平台类型有误',
|
||||
],
|
||||
[
|
||||
'checked_type' => 'in',
|
||||
'key_name' => 'event_type',
|
||||
'checked_data' => array_column(lang('common_app_event_type'), 'value'),
|
||||
'error_msg' => '事件值类型有误',
|
||||
],
|
||||
[
|
||||
'checked_type' => 'length',
|
||||
'key_name' => 'event_value',
|
||||
'checked_data' => '255',
|
||||
'error_msg' => '事件值最多 255 个字符',
|
||||
],
|
||||
[
|
||||
'checked_type' => 'empty',
|
||||
'key_name' => 'images_url',
|
||||
'checked_data' => '255',
|
||||
'error_msg' => '请上传图片',
|
||||
],
|
||||
[
|
||||
'checked_type' => 'length',
|
||||
'key_name' => 'sort',
|
||||
'checked_data' => '3',
|
||||
'error_msg' => '顺序 0~255 之间的数值',
|
||||
],
|
||||
[
|
||||
'checked_type' => 'in',
|
||||
'key_name' => 'is_enable',
|
||||
'checked_data' => [0,1],
|
||||
'error_msg' => '是否显示范围值有误',
|
||||
],
|
||||
];
|
||||
$ret = params_checked($params, $p);
|
||||
if($ret !== true)
|
||||
{
|
||||
return DataReturn($ret, -1);
|
||||
}
|
||||
|
||||
// 附件
|
||||
$data_fields = ['images_url'];
|
||||
$attachment = ResourcesService::AttachmentParams($params, $data_fields);
|
||||
|
||||
// 数据
|
||||
$data = [
|
||||
'name' => $params['name'],
|
||||
'platform' => $params['platform'],
|
||||
'event_type' => intval($params['event_type']),
|
||||
'event_value' => $params['event_value'],
|
||||
'images_url' => $attachment['data']['images_url'],
|
||||
'bg_color' => isset($params['bg_color']) ? $params['bg_color'] : '',
|
||||
'sort' => intval($params['sort']),
|
||||
'is_enable' => intval($params['is_enable']),
|
||||
];
|
||||
|
||||
if(empty($params['id']))
|
||||
{
|
||||
$data['add_time'] = time();
|
||||
if(db('Slide')->insertGetId($data) > 0)
|
||||
{
|
||||
return DataReturn('添加成功', 0);
|
||||
}
|
||||
return DataReturn('添加失败', -100);
|
||||
} else {
|
||||
$data['upd_time'] = time();
|
||||
if(db('Slide')->where(['id'=>intval($params['id'])])->update($data))
|
||||
{
|
||||
return DataReturn('编辑成功', 0);
|
||||
}
|
||||
return DataReturn('编辑失败', -100);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除
|
||||
* @author Devil
|
||||
* @blog http://gong.gg/
|
||||
* @version 1.0.0
|
||||
* @date 2018-12-18
|
||||
* @desc description
|
||||
* @param [array] $params [输入参数]
|
||||
*/
|
||||
public static function SlideDelete($params = [])
|
||||
{
|
||||
// 请求参数
|
||||
$p = [
|
||||
[
|
||||
'checked_type' => 'empty',
|
||||
'key_name' => 'id',
|
||||
'error_msg' => '操作id有误',
|
||||
],
|
||||
];
|
||||
$ret = params_checked($params, $p);
|
||||
if($ret !== true)
|
||||
{
|
||||
return DataReturn($ret, -1);
|
||||
}
|
||||
|
||||
// 删除操作
|
||||
if(db('Slide')->where(['id'=>$params['id']])->delete())
|
||||
{
|
||||
return DataReturn('删除成功');
|
||||
}
|
||||
|
||||
return DataReturn('删除失败或资源不存在', -100);
|
||||
}
|
||||
|
||||
/**
|
||||
* 状态更新
|
||||
* @author Devil
|
||||
* @blog http://gong.gg/
|
||||
* @version 0.0.1
|
||||
* @datetime 2016-12-06T21:31:53+0800
|
||||
* @param [array] $params [输入参数]
|
||||
*/
|
||||
public static function SlideStatusUpdate($params = [])
|
||||
{
|
||||
// 请求参数
|
||||
$p = [
|
||||
[
|
||||
'checked_type' => 'empty',
|
||||
'key_name' => 'id',
|
||||
'error_msg' => '操作id有误',
|
||||
],
|
||||
[
|
||||
'checked_type' => 'in',
|
||||
'key_name' => 'state',
|
||||
'checked_data' => [0,1],
|
||||
'error_msg' => '状态有误',
|
||||
],
|
||||
];
|
||||
$ret = params_checked($params, $p);
|
||||
if($ret !== true)
|
||||
{
|
||||
return DataReturn($ret, -1);
|
||||
}
|
||||
|
||||
// 数据更新
|
||||
if(db('Slide')->where(['id'=>intval($params['id'])])->update(['is_enable'=>intval($params['state'])]))
|
||||
{
|
||||
return DataReturn('编辑成功');
|
||||
}
|
||||
return DataReturn('编辑失败或数据未改变', -100);
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
|
@ -15,4 +15,9 @@
|
|||
}
|
||||
@media only screen and (max-width: 321px) {
|
||||
.view-operation button { margin: 2px 0px; }
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 覆盖插件样式
|
||||
*/
|
||||
ul.plug-file-upload-view li { width: 300px; height: 130px; }
|
||||
|
|
@ -171,9 +171,13 @@ ul.plug-file-upload-view li {
|
|||
border: 1px dashed #c2c2c2;
|
||||
position: relative;
|
||||
}
|
||||
ul.plug-file-upload-view li input {
|
||||
position: absolute;
|
||||
margin-left: -1000000px;
|
||||
}
|
||||
ul.plug-file-upload-view li img, ul.plug-file-upload-view-video li video {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
max-width: 100%;
|
||||
max-height: 100%;
|
||||
}
|
||||
ul.plug-file-upload-view li i {
|
||||
font-style: normal;
|
||||
|
|
|
|||
|
|
@ -1504,6 +1504,7 @@ $(function()
|
|||
{
|
||||
var $tag = $($('body').attr('view-tag'));
|
||||
var max_number = $tag.data('max-number') || 0;
|
||||
var is_delete = ($tag.data('delete') == undefined) ? 1 : $tag.data('delete');
|
||||
|
||||
// 只限制一条
|
||||
if(max_number <= 1)
|
||||
|
|
@ -1521,9 +1522,12 @@ $(function()
|
|||
}
|
||||
|
||||
var html = '<li>';
|
||||
html += '<input type="hidden" name="'+$tag.data('form-name')+'" value="'+result[i].src+'" />';
|
||||
html += '<input type="text" name="'+$tag.data('form-name')+'" value="'+result[i].src+'" />';
|
||||
html += '<img src="'+result[i].src+'" />';
|
||||
html += '<i>×</i>';
|
||||
if(is_delete == 1)
|
||||
{
|
||||
html += '<i>×</i>';
|
||||
}
|
||||
html += '</li>';
|
||||
$tag.append(html);
|
||||
}
|
||||
|
|
@ -1537,6 +1541,7 @@ $(function()
|
|||
{
|
||||
var $tag = $($('body').attr('view-tag'));
|
||||
var max_number = $tag.data('max-number') || 0;
|
||||
var is_delete = ($tag.data('delete') == undefined) ? 1 : $tag.data('delete');
|
||||
|
||||
// 只限制一条
|
||||
if(max_number <= 1)
|
||||
|
|
@ -1555,9 +1560,12 @@ $(function()
|
|||
|
||||
var $tag = $($('body').attr('view-tag'));
|
||||
var html = '<li>';
|
||||
html += '<input type="hidden" name="'+$tag.data('form-name')+'" value="'+result[i].src+'" />';
|
||||
html += '<input type="text" name="'+$tag.data('form-name')+'" value="'+result[i].src+'" />';
|
||||
html += '<video src="'+result[i].src+'" controls>your browser does not support the video tag</video>';
|
||||
html += '<i>×</i>';
|
||||
if(is_delete == 1)
|
||||
{
|
||||
html += '<i>×</i>';
|
||||
}
|
||||
html += '</li>';
|
||||
$tag.append(html);
|
||||
}
|
||||
|
|
@ -1578,6 +1586,7 @@ $(function()
|
|||
{
|
||||
var $tag = $($('body').attr('view-tag'));
|
||||
var max_number = $tag.data('max-number') || 0;
|
||||
var is_delete = ($tag.data('delete') == undefined) ? 1 : $tag.data('delete');
|
||||
|
||||
// 只限制一条
|
||||
if(max_number <= 1)
|
||||
|
|
@ -1596,9 +1605,12 @@ $(function()
|
|||
|
||||
var $tag = $($('body').attr('view-tag'));
|
||||
var html = '<li>';
|
||||
html += '<input type="hidden" name="'+$tag.data('form-name')+'" value="'+result[i].src+'" />';
|
||||
html += '<input type="text" name="'+$tag.data('form-name')+'" value="'+result[i].src+'" />';
|
||||
html += '<a href="'+result[i].src+'">'+result[i].src+'</a>';
|
||||
html += '<i>×</i>';
|
||||
if(is_delete == 1)
|
||||
{
|
||||
html += '<i>×</i>';
|
||||
}
|
||||
html += '</li>';
|
||||
$tag.append(html);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue