var delFiles = []; //用于删除图片
var filesContainer= {};  //存储最终要上传的图片
var files ;     //存储选择图片的数量
layui.use(['form','layer','laydate','table','laytpl','layedit','upload'],function(){
    var form = layui.form,
        // layer = parent.layer === undefined ? layui.layer : top.layer,
        layer = layui.layer,
        $ = layui.jquery,
        laydate = layui.laydate,
        laytpl = layui.laytpl,
        table = layui.table,
        layedit = layui.layedit
        ,upload = layui.upload;


    var tableIds = 'newsList';
    //楼盘列表
    var tableIns = table.render({
        elem: '#'+tableIds,
        url : '/news/newsform',
        cellMinWidth : 95,
        method:'post',
        page : true,
        height : "full-125",
        limit : 20,
        id:'tablerReload',
        cols : [[
            {type:'numbers',title:'序号'},
            {type: "checkbox", width:50},
            {field: 'id', title: 'ID', width:80, align:"center",sort: true},
            {field: 'subject', title: '标题',align:'center',templet:function(d){
                return '<a href="" target="_blank">'+d.subject+'</a>'
            }},
            {field: 'area_houses', title: '关联楼盘',width:120, align:'center',templet:function (d) {
                    return '<a href="javascript:;" lay-event="relevance" >['+d.area_houses+']</a>'
                }},
            {field: 'startTime', title: '开始时间',width:120, align:'center',sort: true},
            {field: 'endTime', title: '结束时间',width:120, event:'sortData', align:'center',sort: true},
            {field: 'state', title: '审核',width:75, event:'housesNews',  align:'center',templet:function (d) {
                    if(d.state === 'N'){
                        return  '<input type="checkbox"  value="'+d.id+'" name="open"  lay-skin="switch" lay-filter="switchTest" lay-text="|">'
                    } else {
                        return  '<input type="checkbox" checked  value="'+d.id+'" name="open"  lay-skin="switch" lay-filter="switchTest" lay-text="|">'
                    }
                }},

            {title: '操作', width:100, templet:'#housesListBar',fixed:"right",align:"center"}

        ]]
    });
    
    table.reload('tablerReload');        //重新加载

    //日期时间选择器
    laydate.render({
        elem: '#test5'
        ,type: 'datetime'
    });
    //日期范围
    laydate.render({
        elem: '#test6'
        ,range: true
    });


    //判断是否需要编辑,需要才加载
    var verdict = $('#editor_content').html();
    if(typeof verdict == "string"){
        var ue = UE.getEditor('editor_content');  //编辑器
    }



    //表格头部操作菜单
    var $ = layui.$, active = {
        addData: function(){ //获取选中数据
            var index = layui.layer.open({
                title : "添加看房团",
                type : 2,
                area:['80%','100%'],
                maxmin: true,
                content : "/lookhouse/add",
            })
            layui.layer.full(index);
            //改变窗口大小时,重置弹窗的宽高,防止超出可视区域(如F12调出debug的操作)
            $(window).on("resize",function(){
                layui.layer.full(index);
            })
        },
        reload:function () {
            var form = pfgs_serialize($('form'));
            var name = '';
            var id = '';
            if(form.input_house == 'name'){
                name = form.input_house_text;
            } else if(form.input_house == 'id'){
                id = form.input_house_text;
            }
            table.reload('tablerReload',{
                where:{
                    sort:form.input_sort,
                    id:id,
                    name:name,
                    news:form.input_news,
                    city:form.input_city
                }
            })
        }
    };


    //监听指定开关
    form.on('switch(switchTest)', function(data){
        layer.confirm('确定要修改此操作吗?',{btn: ['确定', '取消']},function () {
            $.post('/house/housesortedit',{id:data.value,examineid:1},function (data) {
                if(data.code == 200)
                {
                    layer.msg(data.msg);
                    table.reload('tablerReload');
                } else if(data.code == 300 ) {
                    layer.msg(data.msg);
                }
            })
        },function (aa) {
            table.reload('tablerReload');        //重新加载
        })
    });


    $('.demoTable .layui-btn').on('click', function(){
        var type = $(this).data('type');
        active[type] ? active[type].call(this) : '';
    });

    //表格右边操作栏目
    table.on('tool('+tableIds+')', function(obj){
        var data = obj.data;
        if(obj.event  === 'edit'){  //编辑操作
            var index = layui.layer.open({
                title : "编辑看房团",
                type : 2,
                area:['','100%'],
                maxmin: true,
                content : "/lookhouse/edit"
            })
            layui.layer.full(index);
            //改变窗口大小时,重置弹窗的宽高,防止超出可视区域(如F12调出debug的操作)
            $(window).on("resize",function(){
                layui.layer.full(index);
            })
        }else if(obj.event  === 'relevance'){
            alert(5165)
        }
    });

    //监听指定开关
    form.on('switch(switchTest)', function(data){
        layer.confirm('确定要修改此操作吗?',{btn: ['确定', '取消']},function () {
            $.post('/news/newsviewcontrol',{id:data.value},function (data) {
                if(data.code == 200)
                {
                    layer.msg(data.msg);
                    table.reload('tablerReload');
                } else if(data.code == 300 ) {
                    layer.msg(data.msg);
                }
            })
        },function (aa) {
            table.reload('tablerReload');
        })
    });



    //添加and修改图片
     upload.render({
        elem: '#upload_edit',
        url: '/news/newseditform'
        ,data:{token:csrfToken}
        ,multiple: true
        ,number:3
        ,auto:false
        ,size:1000              //限制上传图片的大小,单位为KB
        ,exts: 'png|jpg|jpeg'     //只允许上传压缩文件
        ,bindAction:'#addcity'
        ,choose: function(obj){
            //将每次选择的文件追加到文件队列
             files = obj.pushFile();
            //预读本地文件,如果是多文件,则会遍历。(不支持ie8/9)
             obj.preview(function(index, file, result){
                 var selectText = $('#ddlregtype').find("option:selected").text();

                 filesContainer[index] = file; //将每次选择的文件追加到文件队列
                 $('#demo2').append('<div class="layui-upload-img layer-photos-demo" id="layer-photos-demo"><div class="delete-list" id="delimg"><i class="layui-icon fa-trash-o" >&#xe640;</i></div><img delIdentification="'+index+'" layer-pid="'+index+'" layer-src="'+ result +'"  src="'+ result +'" alt="'+ file.name +'" id="hhhh"></div>');
                 layer.photos({
                     photos: '#demo2',
                     closeBtn: 1
                     ,anim: 5 //0-6的选择,指定弹出图片动画类型,默认随机(请注意,3.0之前的版本用shift参数)
                 });

            })
         }
    });


    //添加看房团提交数据
    form.on('submit(tijiao)',function (data) {
        var index = layer.msg('数据提交中,请稍候',{icon: 16,time:false,shade:0.8});      //数据提交提示

        var formData = new FormData($( "#signupForm" )[0]);

        formData.delete('file'); //删除添加图片组件自带的FILE文件
        $.each(filesContainer,function (k,v) {
            if(v != null){
                if(typeof (formData.get(k)) != 'undefined'){
                    formData.append('imginput[]',formData.get(k))
                }
                formData.append('img[]',v);
            }
        })

        $.ajax({
            cache : true,
            type : "post",
            url : "/news/addform",
            data : formData,  // 你的formid
            // async : false,          //async 默认为true异步,修改为false为同步,
            contentType: false,   //jax 中 contentType 设置为 false 是为了避免 JQuery 对其操作,从而失去分界符,而使服务器不能正常解析文件
            processData: false,   //当设置为true的时候,jquery ajax 提交的时候不会序列化 data,而是直接使用data
            error : function(request) {
                layer.close(index);
                layer.alert("网络超时");
            },
            success : function(data) {
                if (data.code == 200) {
                    layer.msg(data.msg);
                    parent.layui.table.reload('tablerReload');
                    TableClose();
                } else if(data.code == 300){
                    layer.msg(data.msg)
                    layer.msg(ReturnInfo(data.data),{icon:5});
                }
            }
        });
        return false;
    })


    //修改页面提交数据
    form.on('submit(edit)',function (data) {
        var index = layer.msg('数据提交中,请稍候',{icon: 16,time:false,shade:0.8});      //数据提交提示
        var formData = new FormData($( "#signupForm" )[0]);
        formData.delete('file'); //删除添加图片组件自带的FILE文件
        $.each(filesContainer,function (k,v) {
            if(v != null){
                if(typeof (formData.get(k)) != 'undefined'){
                    formData.append('imginput[]',formData.get(k))
                }
                formData.append('img[]',v);
            }
        })

        //需要删除的图片
        if(delFiles.length > 0){
                $.each(delFiles,function (k,v) {
                    formData.append('delimg[]',v);
                })
        }

        $.ajax({
            cache : true,
            type : "post",
            url : "/news/newseditform",
            data : formData,  // 你的formid
            contentType: false,   //jax 中 contentType 设置为 false 是为了避免 JQuery 对其操作,从而失去分界符,而使服务器不能正常解析文件
            processData: false,   //当设置为true的时候,jquery ajax 提交的时候不会序列化 data,而是直接使用data
            error : function(request) {
                layer.close(index);         //关闭数据提交信息
                layer.alert("网络超时");
            },
            success : function(data) {
                if (data.code == 200) {
                    layer.msg(data.msg);
                    parent.layui.table.reload('tablerReload');
                    TableClose();
                } else if(data.code == 300){
                    layer.msg(data.msg)
                    layer.msg(ReturnInfo(data.data),{icon:5});
                }
            }
        });
        return false;
    })

    //批量删除
    form.on('submit(del_alls_news)',function (data) {
        var checkStatus = table.checkStatus('tablerReload');
        if(typeof  checkStatus.data[0] == 'object'){
            layer.confirm('您确定要删除吗?',{btn:['确认','取消']},function(){
                var index = layer.msg('数据提交中,请稍候',{icon: 16,time:false,shade:0.8});      //数据提交提示
                var formdat = new FormData();
                $.each(checkStatus.data,function (key,val) {
                    formdat.append('id[]',val.id);
                })
                $.ajax({
                    cache : true,
                    type : "post",
                    url : "/news/newsdel",
                    data : formdat,  // 你的formid
                    contentType: false,   //jax 中 contentType 设置为 false 是为了避免 JQuery 对其操作,从而失去分界符,而使服务器不能正常解析文件
                    processData: false,   //当设置为true的时候,jquery ajax 提交的时候不会序列化 data,而是直接使用data
                    error : function(request) {
                        layer.close(index);         //关闭数据提交信息
                        layer.alert("网络超时");
                    },
                    success : function(data) {
                        if (data.code == 200) {
                            layer.msg(data.msg);
                            table.reload('tablerReload')
                        } else {
                            layer.msg(data.msg);
                        }
                    }
                });

            })
            return false;
        }
        layer.msg('请选择需要删除的资讯',{icon:5});
        return false;
    })

});

//删除图片
$('#demo2').on("click","#delimg",function () {
    var name = $(this).next().attr("imgname");
    var delIdentification = $(this).next().attr("delIdentification");
    if(typeof(delIdentification) != 'undefined'){

        filesContainer[delIdentification] = false;
        delete files.delIdentification;
        console.log(files);
        // imgnumber -= 1;
    }
    if(typeof(name) != 'undefined'){
        delFiles.push(name);
    }
    $(this).parent().remove();
})