layui.extend({
    common: 'js/common'
}).use(['jquery', 'table', 'layer', 'form', 'common', 'upload'], function () {
    var $ = layui.jquery;
    //  引入表单插件
    var form = layui.form;
    var common = layui.common;
    var ckplayer = layui.ckplayer;
    //  弹窗插件
    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();
    })
    //获取机构列表
    common.sendAsyncRequest("/permissions/org/getList", "GET", {orgType:2}, function (result) {
        var $select = $("#orgId");
        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");
    });

    let size;
    // 素材文件上传
    var uploadIns = upload.render({
        elem: '#attachButton'
        , url: '/common/file/uploadMaterialFile?isNeedMd5=true'
        , accept: 'file' //文件：图片或者视频
        , auto: false
        ,exts: 'jpg|png|jpeg'
        , bindAction: '#upload'
        , choose: function (obj) {
            var flag = true;
            var files = this.files = obj.pushFile();
            obj.preview(function (index, file, result) {
                console.log(file);            //file表示文件信息，result表示文件src地址

                if (file.type.indexOf("image") != -1) {
                    $("#materialType").val("图片");
                    size = (file.size / 1024 / 1024).toFixed(3);

                    // $("#materialMemory").val(memorySize + "MB");
                    console.log(memorySize)

                // } else if (file.type.indexOf("video") != -1) {
                } else if (file.type == "video/mp4" || file.type == "video/avi") {
                    $("#materialType").val("视频");
                    size = (file.size / 1024 / 1024).toFixed(3);
                    if (memorySize > 300){
                        delete files[index];
                        uploadIns.config.elem.next()[0].value = '';
                        $("input[name='materialFile']").val('');
                        layer.msg("上传的视频文件最大为300M");
                        return false;
                    }
                    $('#upload').click();
                    console.log(memorySize)
                } else {
                    delete files[index];
                    uploadIns.config.elem.next()[0].value = '';
                    $("input[name='materialFile']").val('');
                    console.error("上传文件类型不是图片或视频的mp4和avi格式");
                    layer.msg("上传文件类型不是图片或视频的mp4和avi格式");
                    return false;
                }
            });
            if ($("input[name='materialFile']").val() != '') {
                //关闭加载动画
                layer.close(loadId);
                layer.msg("最多添加1个附件");
                //返回false阻止附件上传
                return false;
            } else {
                //开启加载动画
                loadId = layer.msg('附件上传中', {
                    icon: 16,
                    shade: 0.4,
                    time: false //取消自动关闭
                });
            }

            return flag;
        }
        , done: function (res) {  //上传完毕
            //关闭加载动画
            layer.close(loadId);

            if (res.code == "200") {//上传成功
                if(res.msg=="上传视频分辨率必须为1080*1920"){
                    layer.msg(res.msg);
                    $("#materialType").val("");
                    $("#materialMemory").val("");
                    return;
                }
                console.log(fastDfsServer + res.data.fullPath)
                $("#materialMemory").val(size + "MB");
                var materialType = $("#materialType").val();
                if (materialType == '图片') {
                    $("#ImageView").show();
                    $("#VideoView").hide();
                    $('#previewImage').append('' +
                        '<div class="layer-photos-content" style="width: 150px; height: 150px;">' +
                        '   <input type="hidden" name="materialFile" 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 if (materialType == '视频') {
                    $("#ImageView").hide();
                    $("#VideoView").show();
                    //显示视频
                    $("#showVideoUri").attr("src", fastDfsServer + res.data.fullPath);
                    //视频的服务器地址
                    $("#materialFile").val(res.data.fullPath);
                    // //视频文件的md5
                    $("#videoMd5").val(res.data.md5);

                } else {
                    layer.msg("附件类型错误");
                }

            } else {
                layer.msg("附件上传失败");
            }
        }
        , error: function () {
            //关闭加载动画
            layer.close(loadId);
            layer.msg("附件上传失败");
        }
    });

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

        common.sendAsyncRequest("/ad/material/addAdMaterial", '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("添加失败");
        }
    }


    //  //获取根机构下面所有广告类型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('submit(addConfirm)', function(data){
    //     common.timer($('button[lay-filter="addConfirm"]'));
    //     if( $("input[name='imgUri']").length>1){
    //         layer.msg("广告图片最多只能上传1张");
    //     }else{
    //         var imgUri='';
    //         //获取所有图片地址
    //         $("input[name='imgUri']").each(function(index,elem){
    //             if(index==0){
    //                 imgUri = $(elem).val()+":"+ $(elem).attr('md5');
    //             }else {
    //                 imgUri = imgUri+","+$(elem).val()+":"+ $(elem).attr('md5');
    //             }
    //
    //         })
    //         if(imgUri=="" && $("#videoUri").val()==""){
    //             layer.msg("请上传视频或图片");
    //             return
    //         }else {
    //             //如果不这样做，data中的imgUri默认只会拿第一张图片的值
    //             data.field.imgUri=imgUri;
    //             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("图片上传失败");
    //     }
    // });

    // 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个字符!'
    //         }
    //     },
    // });

});


