define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) {
var imgsettimer = 0 ;
var nametimer = 0;
var bgtimer = 0 ;
var qrtimer = 0 ;
var Controller = {
index: function () {
// 初始化表格参数配置
Table.api.init({
extend: {
index_url: 'poster/index' + location.search,
add_url: 'poster/add',
edit_url: 'poster/edit',
del_url: 'poster/del',
multi_url: 'poster/multi',
table: 'poster',
}
});
var table = $("#table");
// 初始化表格
table.bootstrapTable({
url: $.fn.bootstrapTable.defaults.extend.index_url,
pk: 'id',
sortName: 'weigh',
commonSearch: false,
columns: [
[
{checkbox: true},
{field: 'id', title: __('Id')},
{field: 'title', title: __('Title')},
{field: 'bg_image', title: __('Bg_image'), events: Table.api.events.image, formatter: Table.api.formatter.image},
{field: 'status', title: __('Status'), searchList: {"normal":__('Normal'),"hidden":__('Hidden')}, formatter: Table.api.formatter.status},
{field: 'weigh', title: __('Weigh')},
{field: 'createtime', title: __('Createtime'), operate:'RANGE', addclass:'datetimerange', formatter: Table.api.formatter.datetime},
{field: 'updatetime', title: __('Updatetime'), operate:'RANGE', addclass:'datetimerange', formatter: Table.api.formatter.datetime},
{
field: 'datalist', title: __('Operate'), table: table,operate:false,
buttons: [
{
name: 'content',
text: __('Posterrecord'),
extend: 'data-area=\'["1024px", "678px"]\'',
classname: 'btn btn-xs btn-success btn-dialog',
icon: 'fa fa-list-ul',
url: 'poster/posterrecord/ids/{ids}'
}
],
formatter: Table.api.formatter.buttons
},
{field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate}
]
]
});
// 为表格绑定事件
Table.api.bindevent(table);
table.on('post-body.bs.table', function () {
$(".btn-editone").data("area", ["1024px", "678px"]);
});
},
posterrecord: function () {
// 初始化表格参数配置
Table.api.init({
extend: {
index_url: 'poster/posterrecord' + location.search + '&ids=' + Config.ids,
table: 'poster',
}
});
var table = $("#table");
// 初始化表格
table.bootstrapTable({
url: $.fn.bootstrapTable.defaults.extend.index_url,
pk: 'id',
sortName: 'id',
commonSearch: false,
columns: [
[
{field: 'id', title: __('Id')},
{field: 'user.nickname', title: __('Nickname')},
{field: 'image', title: __('Image'), events: Controller.api.events.image, formatter: Controller.api.image},
{field: 'createtime', title: __('Createtime'), operate:'RANGE', addclass:'datetimerange', formatter: Table.api.formatter.datetime},
{field: 'updatetime', title: __('Updatetime'), operate:'RANGE', addclass:'datetimerange', formatter: Table.api.formatter.datetime},
]
]
});
// 为表格绑定事件
Table.api.bindevent(table);
$('.btn-clear').click(function(){
var url = $(this).data('url');
Fast.api.ajax({
url: url,
}, function (data, ret) {
table.bootstrapTable('refresh', {});
}, function (data, ret) {
});
});
},
add: function () {
Controller.api.bindevent();
},
edit: function () {
Controller.api.bindevent();
},
api: {
bindevent: function () {
$("form[role=form]").data("validator-options", {ignore: ':hidden'});
//表单提交事件绑定
Form.api.bindevent($("form[role=form]"), function (data, ret) {}, function (data, ret) {}, function (success, error) {
var data = [];
$('.drag').each(function () {
var obj = $(this);
var type = obj.attr('type');
var left = obj.css('left'), top = obj.css('top');
var d = {
left: left,
top: top,
type: obj.attr('type'),
width: obj.css('width'),
height: obj.css('height')
};
if (type == 'nickname') {
d.size = obj.attr('size');
d.color = obj.attr('color');
} else if (type == 'qr') {
d.size = obj.attr('size');
d.qr_table = obj.attr('qr_table');
d.qr_field = obj.attr('qr_field');
d.qr_relation = obj.attr('qr_relation');
} else if (type == 'img') {
d.src = Fast.api.cdnurl(obj.attr('src'));
}
data.push(d);
});
$(':input[name="row[data]"]').val(JSON.stringify(data));
});
//图片地址变化
$('#c-bg_image').on('change', function () {
$('.bg').remove();
$('#poster').prepend("");
});
$('#c-img').on('change', function () {
$('.drag').each(function () {
if ($(this).attr("type") == 'img') {
$(this).find('img').attr('src', Fast.api.cdnurl($('#c-img').val()));
}
});
});
// 移除图片事件
$(document.body).on("click", "#p-bg_image .btn-trash", function () {
$('.bg').attr('src', '');
});
$(document.body).on("click", "#p-img .btn-trash", function () {
$('.drag').each(function () {
if ($(this).attr("type") == 'img') {
$(this).attr('src', '');
$(this).find('img').attr('src', '/assets/addons/poster/images/img.jpg');
}
});
});
require(['designer'], function () {
//添加元素
$('.btn-com').click(function(){
var imgset = $('#imgset'), nameset = $("#nameset"),qrset = $('#qrset');
imgset.hide(),nameset.hide(),qrset.hide();
Controller.api.clearTimers();
var type = $(this).data('type');
$('.drag').each(function () {
if ($(this).attr("type") == type) {
type = false;
}
});
if(type == false){
Layer.msg('请不要重复添加');
}else{
var img = "";
if(type=='qr'){
img = '
';
} else if(type=='head'){
img = '
';
} else if(type=='img' || type=='thumb'){
img = '
';
} else if(type=='nickname'){
img = '