123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145 |
- define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) {
- var Controller = {
- index: function () {
- // 初始化表格参数配置
- Table.api.init({
- extend: {
- index_url: 'video/index' + location.search,
- add_url: 'video/add',
- edit_url: 'video/edit',
- del_url: 'video/del',
- multi_url: 'video/multi',
- //import_url: 'video/import',
- table: 'video',
- }
- });
- var table = $("#table");
- // 初始化表格
- table.bootstrapTable({
- url: $.fn.bootstrapTable.defaults.extend.index_url,
- pk: 'id',
- sortName: 'video.id',
- searchFormVisible:true,
- columns: [
- [
- //{checkbox: true},
- {field: 'id', title: __('Id'),sortable:true,},
- {field: 'title', title: __('标题'),formatter(a){
- if(a.length>10){
- return `<span title="${a}">${a.substr(0,10)}...</span>`
- }
- return a
- }},
- {field: 'bg', title: __('Bg'),formatter: Table.api.formatter.image,events: Table.api.events.image},
- {field: 'src', title: __('Src'),formatter(link){
- return `<a target="_blank" href="${link}">查看</a>`
- }},
- {field: 'tag.name',operate:'LIKE', title: __('标签'),formatter(a,b){
- if(!b.tag){
- return
- }
- let tag=[]
- b.tag.split(',').forEach(item=>{
- tag.push(`<p class="label label-success">${item}</p>`)
- })
- return tag.join('<br>')
- },
- },
- {field: 'play_num', title: __('Play_num'),sortable:true,},
- {field: 'comment_num', title: __('Comment_num'),sortable:true,},
- {field: 'like_num', title: __('Like_num'),sortable:true,},
- {field: 'fav_num', title: __('Fav_num'),sortable:true,},
- {field: 'created_at', title: __('Created_at'),operate: "RANGE",formatter: Table.api.formatter.datetime,addclass:'datetimerange',sortable:true,},
- //{field: 'weight', title: __('Weight')},
- {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate,
- buttons:[
- {
- name: 'detail',
- text: __('查看卡点'),
- title: __('查看卡点'),
- classname: 'btn btn-xs btn-info btn-addtabs',
- url: 'video_point/index?xxxx=1',
- callback: function (data) {},
- visible: function (row) {
- return true;
- }
- }
- ]
- }
- ]
- ]
- });
- // 为表格绑定事件
- Table.api.bindevent(table);
- $(".btn-add").data("area", ["100%","100%"]);
- },
- add: function () {
- Controller.api.bindevent();
- $(document).on('click','.add-point',function (){
- let type=$(this).data('point'),time=Date.now()
- $('#point-list')
- .append($(`#point-all>.point-${type}`)
- .clone()
- .attr('data-id',time)
- .removeClass('hidden')[0]
- .outerHTML
- .replaceAll('$idx',time).replaceAll('$index',time+1))
- Controller.api.bindevent();
- })
- $(document).on('change','.choose-type input[type=radio]',function (){
- if(this.value==='txt'){
- $(this).parents('.form-group-choose-type').next().removeClass('hidden').next().addClass('hidden')
- $(this).parents('.point-list-one').find('.key-checkbox-image').attr('checked',false)
- }else{
- $(this).parents('.form-group-choose-type').next().addClass('hidden').next().removeClass('hidden')
- $(this).parents('.point-list-one').find('.key-checkbox-txt').attr('checked',false)
- }
- Controller.api.bindevent();
- })
- $(document).on('click','.add-image',function (){
- let a='';
- if($(this).hasClass('add-image-vote')){
- a='vote'
- }else if($(this).hasClass('add-image-choose')){
- a='choose'
- }
- let classEle=`.image-example-${a}`
- let ele=$(classEle)[0].outerHTML
- let time=$(this).parents('.point-list-one').data('id')
- ele=ele.replaceAll('$index',Date.now()).replaceAll('$idx',time).replaceAll(classEle.substr(1),'').replaceAll(` style="display: none;"`,'')
- $(this).parent().append(ele)
- Controller.api.bindevent()
- })
- $(document).on('click','.add-txt',function (){
- let ele=$(this).next().html()
- ele=ele.replaceAll(/\[\d+]"/g,`[${Date.now()}]"`)
- $(this).parent().append(ele)
- })
- $(document).on('click','.vote-add-txt-item',function (){
- $(this).parent().append($(this).next().html())
- })
- $(document).on('change','.title-type-change>select',function (){
- if(this.value==='txt'){
- $(this).parent().parent().next().removeClass('hidden').find('input').attr('disabled',false)
- $(this).parent().parent().next().next().addClass('hidden').find('input').attr('disabled',true)
- }else{
- $(this).parent().parent().next().next().removeClass('hidden').find('input').attr('disabled',false)
- $(this).parent().parent().next().addClass('hidden').find('input').attr('disabled',true)
- }
- })
- },
- edit: function () {
- Controller.api.bindevent();
- },
- api: {
- bindevent: function () {
- Form.api.bindevent($("form[role=form]"));
- }
- }
- };
- return Controller;
- });
|