layui.extend({
    common    :   'js/common',
    xmSelect: 'layui/dist/xm-select'
}).use(['jquery','table','layer','form','common','upload','xmSelect'], function () {
    var $ = layui.jquery;
    //  引入表单插件
    var form = layui.form;
    var common = layui.common;
    //  弹窗插件
    var layer = layui.layer;
    //  引入表格插件
    var table = layui.table;
    //  图片上传
    var upload = layui.upload;
    //定义加载层id
    var loadId;
    //图片服务器地址
    var fastDfsServer = $('#fastDfsServer').val();



    //图片事件
    //移动-右
    $(document).on('click','.layui-laypage-next',function () {
        var html = $(this).parent().next();
        $(html).insertBefore($(this).parent());
    })
    //移动-左
    $(document).on('click','.layui-laypage-prev',function () {
        var html = $(this).parent();
        $(html).insertBefore($(this).parent().prev());
    })
    //点击删除
    $(document).on('click','.layui-layer-close',function () {
        $(this).parent().parent().remove();
    })


    $.ajax({
        type: 'GET',
        url: '/permissions/dict/getByCode/onlineOrOffline',
        success: function (result) {
            onlineOrOfflineDict.update({data:result.list}).setValue([$('#onlineOrOfflineValue').val()])
        },
    });
    var onlineOrOfflineDict = xmSelect.render({
        el: '#onlineOrOffline',
        name: 'onlineOrOffline',
        layVerify: 'required',
        radio: true,
        clickClose: true,
        prop: {
            name: 'dictValue',
            value: 'dictKey',
        },
        on: function (data) {},
        model: {
            label: {
                type: 'text',
                text: {
                    left: '',
                    right: '',
                    separator: ', ',
                },
            }
        },
    });
    $.ajax({
        type: 'GET',
        url: '/permissions/dict/getByCode/materialType',
        success: function (result) {
            materialTypeDict.update({data:result.list}).setValue([$('#materialTypeValue').val()])
        },
    });
    var materialTypeDict = xmSelect.render({
        el: '#materialType',
        name: 'materialType',
        layVerify: 'required',
        radio: true,
        clickClose: true,
        prop: {
            name: 'dictValue',
            value: 'dictKey',
        },
        on: function (data) {
            var materialType = data.change[0].dictKey;
            console.log("所选素材类型："+materialType)
            if(materialType == ''){
                var $select = $('#adMaterialId');
                $.select.attr("value","");
                $select.attr("disabled",true);
                form.render('select');
            }else{
                $('#adMaterialId').attr("disabled",false)
                $('#adMaterialId').attr("value","");
                common.sendAsyncRequest("/ad/material/showAdMaterialList?materialType="+materialType+"&size=100000","POST",{},function (result) {
                    var $select = $('#adMaterialId');
                    $('#adMaterialId option').remove();
                    $select.attr("disabled",false);
                    result.data.records.forEach(function(item){
                        $select.append('<option value="' + item.id + '">' + item.materialName+ '</option>')
                    });
                    var value = $select.attr('value');
                    if (value){
                        $select.val(value);
                    }
                    form.render('select');
                });
            }
        },
        model: {
            label: {
                type: 'text',
                text: {
                    left: '',
                    right: '',
                    separator: ', ',
                },
            }
        },
    });
     //获取根机构下面所有广告类型Adtype
    common.sendAsyncRequest("/ad/type/getAdTypeList","GET",{},function(result){
        var $select = $('#adTypeId');
        result.list.forEach(function(item){
            $select.append('<option value="' + item.id + '">' + item.name+ '</option>')
        });
        //选中
        var value = $select.attr('value');
        if (value){
            $select.val(value);
        }
        // 刷新select标签
       form.render('select');
    });

    //监听素材类型下拉选
    form.on('select(materialType)',function (data) {
        // var materialType = $("select[name=materialType]").val();
        var materialType = $("#materialType").val();
        console.log("所选素材类型："+materialType)
        if(materialType == ''){
            var $select = $('#adMaterialId');
            $.select.attr("value","");
            $select.attr("disabled",true);

            // 刷新select标签
            form.render('select');
        }else{
            $('#adMaterialId').attr("disabled",false)

            $('#adMaterialId').attr("value","");
            common.sendAsyncRequest("/ad/material/showAdMaterialList?materialType="+materialType+"&size=100000","POST",{},function (result) {
                var $select = $('#adMaterialId');
                // $select.disabled = false;
                $('#adMaterialId option').remove();
                $select.attr("disabled",false);

                result.data.records.forEach(function(item){
                    $select.append('<option value="' + item.id + '">' + item.materialName+ '</option>')
                });
                //选中
                var value = $select.attr('value');
                if (value){
                    $select.val(value);
                }
                // 刷新select标签
                form.render('select');
            });
        }


    });

    //监听提交
    form.on('submit(addConfirm)', function(data){
        common.timer($('button[lay-filter="addConfirm"]'));
        common.sendAsyncRequest("/ad/content/addAdContent",'POST',data.field,callbackFn);

    });

    // 回调函数
    function callbackFn(result) {
        if(result.code=='200'){
            layer.msg("添加成功",{time:1000,shade : [0.1 , '#000' , true]},function () {
                // 父页面刷新
                parent.location.reload();
                //获取当前弹窗出层的名字
                var mylay = parent.layer.getFrameIndex(window.name);
                //关闭弹窗层
                parent.layer.close(mylay);
            });
        }else {//添加失败
            layer.msg("添加失败");
        }
    }

    //取消按钮
    $('button[type="reset"]').on('click',function () {
        if (parent) {
            //  关闭当前页面弹窗
            var index = parent.layer.getFrameIndex(window.name);
            parent.layer.close(index);
        }else {
            //  关闭页面
            window.close();
        }
    });

    //视频上传
    // upload.render({
    //     elem: '#videButton'
    //     ,url: '/common/file/upload/?isNeedMd5=true'
    //     ,accept: 'video' //视频
    //     ,multiple:true
    //     ,before: function(obj){
    //         //开启加载动画
    //         loadId = layer.msg('文件上传中', {
    //             icon: 16,
    //             shade: 0.4,
    //             time:false //取消自动关闭
    //         });
    //     }
    //     ,done: function(res){
    //         //关闭加载动画
    //         layer.close(loadId);
    //         if(res.code=="200"){
    //             //显示视频
    //             $("#showVideoUri").attr("src",fastDfsServer+res.data.fullPath);
    //             //视频的服务器地址
    //             $("#videoUri").val(res.data.fullPath);
    //             //视频文件的md5
    //             $("#videoMd5").val(res.data.md5);
    //         }else{
    //             layer.msg("视频上传失败");
    //         }
    //     }
    //     ,error: function(){
    //         //关闭加载动画
    //         layer.close(loadId);
    //         layer.msg("视频上传失败");
    //     }
    // });
    //
    //
    // //多图片上传
    // upload.render({
    //     elem: '#imageButton'
    //     ,url: '/common/file/upload?isNeedMd5=true'
    //     ,accept: 'images' //图片
    //     ,multiple: true
    //     ,number:5
    //     ,before: function(obj){
    //         //当前的图片数量
    //         console.log("图片数量："+$("input[name='imgUri']").length);
    //         //获取选中的文件个数
    //         if( $("input[name='imgUri']").length>=1){
    //             //关闭加载动画
    //             layer.close(loadId);
    //             layer.msg("最多添加1张图片");
    //             //返回false阻止图片上传
    //             return false;
    //         }else{
    //             //开启加载动画
    //             loadId = layer.msg('图片上传中', {
    //                 icon: 16,
    //                 shade: 0.4,
    //                 time:false //取消自动关闭
    //             });
    //         }
    //     }
    //     ,done: function(res){  //上传完毕
    //         //关闭加载动画
    //         layer.close(loadId);
    //         if(res.code=="200"){//上传成功
    //             $('#previewImage').append('' +
    //                 '<div class="layer-photos-content" style="width: 150px; height: 150px;">' +
    //                 '   <input type="hidden" name="imgUri" value="'+res.data.fullPath+'" md5="'+res.data.md5+'" />' +
    //                 '       <img style="width: 150px; height: 150px; margin: 0 10px 10px 0;" src="'+fastDfsServer+ res.data.fullPath +'" >' +
    //                 '   <div class="layui-layer-imgsee">' +
    //                 '   </div>' +
    //                 '   <span class="layui-layer-setwin">' +
    //                 '       <a class="layui-layer-ico layui-layer-close layui-layer-close2" href="javascript:;"></a>' +
    //                 '   </span>' +
    //                 '   <a href="javascript:;" class="layui-laypage-next">' +
    //                 '       <i class="layui-icon"></i>' +
    //                 '   </a>'+
    //                 '   <a href="javascript:;" class="layui-laypage-prev ">' +
    //                 '       <i class="layui-icon"></i>' +
    //                 '   </a>' +
    //                 '</div>' );
    //         }else{
    //             layer.msg("图片上传失败");
    //         }
    //     }
    //     ,error: function(){
    //         //关闭加载动画
    //         layer.close(loadId);
    //         layer.msg("图片上传失败");
    //     }
    // });
    //省查询下拉列表
    // var regionProvinceSelect = xmSelect.render({
    //     el: '#regionProvince',
    //     name: 'regionProvince',
    //     // layVerify: 'required',
    //     radio: true,
    //     prop: {
    //         name: 'name',
    //         value: 'id',
    //     },
    //     clickClose: true,
    //     filterable: true,
    //     remoteSearch: true,
    //     remoteMethod: function (val, cb, show) {
    //         $.ajax({
    //             type: 'GET',
    //             url: '/common/area/getSubList/100000',
    //             data: {
    //                 name: val,
    //                 isSelect: true
    //             },
    //             success: function (result) {
    //                 cb(result.list);
    //             },
    //             error: function () {
    //                 cb([]);
    //             }
    //         });
    //     },
    //     //监听选择
    //     on: function (data) {
    //         var change = data.change;
    //         if (change.length > 0) {
    //             regionCitySelect.update({data: initCityFn({parentCode: change[0].code}), disabled: false});
    //             regionAreaSelect.update({data: []});
    //             residentialSelect.update({data: []});
    //             deviceSelect.update({data: []});
    //         }
    //         if (!data.isAdd) {
    //             regionCitySelect.update({disabled: true});
    //             regionAreaSelect.update({disabled: true});
    //             residentialSelect.update({disabled: true});
    //             deviceSelect.update({disabled: true});
    //         }
    //         regionCitySelect.setValue([]);
    //         regionAreaSelect.setValue([]);
    //         residentialSelect.setValue([]);
    //         deviceSelect.setValue([]);
    //     },
    //     //显示方式
    //     model: {
    //         label: {
    //             type: 'text',
    //             text: {
    //                 //左边拼接的字符
    //                 left: '',
    //                 //右边拼接的字符
    //                 right: '',
    //                 //中间的分隔符
    //                 separator: ', ',
    //             },
    //         }
    //     },
    // });
    //
    // //市查询下拉列表
    // var regionCitySelect = xmSelect.render({
    //     el: '#regionCity',
    //     name: 'regionCity',
    //     // layVerify: 'required',
    //     disabled: true,
    //     radio: true,
    //     prop: {
    //         name: 'name',
    //         value: 'id',
    //     },
    //     clickClose: true,
    //     filterable: true,
    //     remoteSearch: true,
    //     remoteMethod: function (val, cb, show) {
    //         $.ajax({
    //             type: 'GET',
    //             url: '/common/area/getSubList/' + regionProvinceSelect.getValue('valueStr') != null ? -1 : regionProvinceSelect.getValue('valueStr'),
    //             data: {
    //                 name: val,
    //                 isSelect: true
    //             },
    //             success: function (result) {
    //                 cb(result.list);
    //             },
    //             error: function () {
    //                 cb([]);
    //             }
    //         });
    //     },
    //     //监听选择
    //     on: function (data) {
    //         var change = data.change;
    //         if (change.length > 0) {
    //             regionAreaSelect.update({data: initAreaFn({parentCode: change[0].code}), disabled: false});
    //             residentialSelect.update({data: []});
    //             deviceSelect.update({data: []});
    //         }
    //         if (!data.isAdd) {
    //             regionAreaSelect.update({disabled: true});
    //             residentialSelect.update({disabled: true});
    //             deviceSelect.update({disabled: true});
    //         }
    //         regionAreaSelect.setValue([]);
    //         residentialSelect.setValue([]);
    //         deviceSelect.setValue([]);
    //     },
    //     //显示方式
    //     model: {
    //         label: {
    //             type: 'text',
    //             text: {
    //                 //左边拼接的字符
    //                 left: '',
    //                 //右边拼接的字符
    //                 right: '',
    //                 //中间的分隔符
    //                 separator: ', ',
    //             },
    //         }
    //     },
    // });
    //
    // //区查询下拉列表
    // var regionAreaSelect = xmSelect.render({
    //     el: '#regionArea',
    //     name: 'residentialArea',
    //     // layVerify: 'required',
    //     disabled: true,
    //     radio: true,
    //     prop: {
    //         name: 'name',
    //         value: 'id',
    //     },
    //     clickClose: true,
    //     filterable: true,
    //     remoteSearch: true,
    //     remoteMethod: function (val, cb, show) {
    //         $.ajax({
    //             type: 'GET',
    //             url: '/common/area/getSubList/' + regionCitySelect.getValue('valueStr') != null ? -1 : regionCitySelect.getValue('valueStr'),
    //             data: {
    //                 name: val,
    //                 isSelect: true
    //             },
    //             success: function (result) {
    //                 cb(result.list);
    //             },
    //             error: function () {
    //                 cb([]);
    //             }
    //         });
    //     },
    //     //监听选择
    //     on: function (data) {
    //         var change = data.change;
    //         if (change.length > 0) {
    //             residentialSelect.update({data: initResidentialFn({regionArea: change[0].code}), disabled: false});
    //             deviceSelect.update({data: []});
    //         }
    //         if (!data.isAdd) {
    //             residentialSelect.update({disabled: true});
    //             deviceSelect.update({disabled: true});
    //         }
    //         residentialSelect.setValue([]);
    //         deviceSelect.setValue([]);
    //
    //     },
    //     //显示方式
    //     model: {
    //         label: {
    //             type: 'text',
    //             text: {
    //                 //左边拼接的字符
    //                 left: '',
    //                 //右边拼接的字符
    //                 right: '',
    //                 //中间的分隔符
    //                 separator: ', ',
    //             },
    //         }
    //     },
    // });
    //
    // //小区查询下拉列表
    // var residentialSelect = xmSelect.render({
    //     el: '#residential',
    //     name: 'residentialId',
    //     // layVerify: 'required',
    //     disabled: true,
    //     radio: true,
    //     prop: {
    //         name: 'name',
    //         value: 'id',
    //     },
    //     clickClose: true,
    //     filterable: true,
    //     remoteSearch: true,
    //     remoteMethod: function (val, cb, show) {
    //         $.ajax({
    //             type: 'GET',
    //             url: '/estate/residential/getListByLikeName/' + regionAreaSelect.getValue('valueStr') != null ? -1 : regionAreaSelect.getValue('valueStr'),
    //             data: {
    //                 name: val,
    //
    //                 isSelect: true
    //             },
    //             success: function (result) {
    //                 cb(result.list);
    //             },
    //             error: function () {
    //                 cb([]);
    //             }
    //         });
    //     },
    //     //监听选择
    //     on: function (data) {
    //         var change = data.change;
    //         if (change.length > 0) {
    //             deviceSelect.update({data: initAdAdsenseFn({xqId: change[0].id}), disabled: false});
    //             $("#adsenseNamePre").val(change[0].name)
    //         }
    //         if (!data.isAdd) {
    //             deviceSelect.update({disabled: true});
    //         }
    //         deviceSelect.setValue([]);
    //     },
    //     //显示方式
    //     model: {
    //         label: {
    //             type: 'text',
    //             text: {
    //                 //左边拼接的字符
    //                 left: '',
    //                 //右边拼接的字符
    //                 right: '',
    //                 //中间的分隔符
    //                 separator: ', ',
    //             },
    //         }
    //     },
    // });
    // //广告位查询下拉列表
    // var deviceSelect = xmSelect.render({
    //     el: '#adsenseId',
    //     name: 'adsenseId',
    //     // layVerify: 'required',
    //     disabled: true,
    //     radio: true,
    //     prop: {
    //         name: 'adsenseName',
    //         value: 'id',
    //     },
    //     clickClose: true,
    //     filterable: true,
    //     remoteSearch: true,
    //     remoteMethod: function (val, cb, show) {
    //         $.ajax({
    //             type: 'GET',
    //             url: '/ad/adsense/showAdAdsenseList?residentialId=' + residentialSelect.getValue('valueStr') != null ? -1 : residentialSelect.getValue('valueStr') + "&size=100000",
    //             data: {
    //                 name: val,
    //                 isSelect: true
    //             },
    //             success: function (result) {
    //                 cb(result.list);
    //             },
    //             error: function () {
    //                 cb([]);
    //             }
    //         });
    //     },
    //     //监听选择
    //     on: function (data) {
    //         var change = data.change;
    //         if (change.length > 0) {
    //         }
    //         if (!data.isAdd) {
    //         }
    //     },
    //     //显示方式
    //     model: {
    //         label: {
    //             type: 'text',
    //             text: {
    //                 //左边拼接的字符
    //                 left: '',
    //                 //右边拼接的字符
    //                 right: '',
    //                 //中间的分隔符
    //                 separator: ', ',
    //             },
    //         }
    //     },
    // });
    //
    // function initCityFn(data) {
    //     var cityList = null;
    //     common.sendSyncRequest("/common/area/getSubList/" + data.parentCode, 'get', {}, function (result) {
    //         cityList = result.list;
    //     });
    //     return cityList;
    // }
    //
    // function initAreaFn(data) {
    //     var areaList = null;
    //     common.sendSyncRequest("/common/area/getSubList/" + data.parentCode, 'get', {}, function (result) {
    //         areaList = result.list;
    //     });
    //     return areaList;
    // }
    //
    // function initResidentialFn(data) {
    //     var residentialList = null;
    //     common.sendSyncRequest("/estate/residential/getListByLikeName/", 'get', {regionArea: data.regionArea}, function (result) {
    //         residentialList = result.list;
    //     });
    //     return residentialList;
    // }
    //
    // function initAdAdsenseFn(data) {
    //     var adAdsense = null;
    //     common.sendSyncRequest("/ad/adsense/showAdAdsenseList", 'post', {
    //         residentialId: data.xqId,
    //         size: 100000
    //     }, function (result) {
    //         adAdsense = result.data.records;
    //     });
    //     return adAdsense;
    // }


    layui.form.verify({
        specialCharacters : function (value) {
            if(!/^[a-zA-Z0-9_\u4e00-\u9fa5\s·]+$/.test(value)){
                return '名称不能有特殊字符';
            }
            if(/(^\_)|(\__)|(\_+$)/.test(value)){
                return '名称首尾不能出现下划线\'_\'';
            }
        },
        length : function (value) {
            if (value.length <2 || value.length > 20){
                return  '名称只能输入2-20个字符!'
            }
        },
    });

});


