$(function(){

    /**
     * 参数
     */
    var cate_id = $('#cate_id').val();
    var laypage = '';
    var layer = '';
    var page = 1;
    var limit = 12;
    var count = 0;
    var index = '';
    var search = '';
    var filter_item_id = [];

    /**
     * layui初始化
     */
    layui.use(['laypage', 'layer'], function(){
        laypage = layui.laypage;
        layer = layui.layer;

        //初始化分页
        initPage();
    });

    /**
     * 监听搜索
     */
    $('.search').on('input propertychange', function() {
        search = $(this).val();
        initPage();
    });

    /**
     * 监听展示类别选择
     */
    $('.a-filter').on('click', function(){
        var item_id = $(this).data('item_id');
        $('.a-filter').find('a').removeClass('selected');
        $(this).find('a').addClass('selected');

        var idNum = item_id == 0 ? 1 : item_id;
        $('#radio' + idNum).prop('checked', true);

        sfilter();
        initPage();
    });

    /**
     * 监听筛选
     */
    $('.f-filter').on('click', function(){
        sfilter();
        initPage();
    });

    /**
     * 筛选弹框显示隐藏
     */
    $('.cd-filter-trigger').on('click', function(){
        triggerFilter(true);
    });
    $('.cd-filter .cd-close').on('click', function(){
        triggerFilter(false);
    });

    /**
     * 筛选弹框
     */
    function triggerFilter($bool) {
        var elementsToTrigger = $([$('.cd-filter-trigger'), $('.cd-filter'), $('.cd-tab-filter'), $('.cd-gallery')]);
        elementsToTrigger.each(function(){
            $(this).toggleClass('filter-is-visible', $bool);
        });
    }

    /**
     * 初始化分页
     */
    function initPage(){
        //获取总数
        ajaxGetListCount();

        page = 1;

        laypage.render({
            elem: 'page'
            ,count: count
            ,theme: '#1E9FFF'
            ,limit: limit
            ,curr: page
            ,jump: function(obj){
                page = obj.curr;
                ajaxGetList();
            }
        });
    }

    /**
     * 选中筛选条件
     */
    function sfilter(){
        filter_item_id = [];
        $('.f-filter:checked').each(function(){
            var fid = $(this).val();
            filter_item_id.push(fid);
        });
    }

    /**
     * 获取总数
     */
    function ajaxGetListCount(){
        var arr = {};
            arr['id'] = cate_id;
            arr['search'] = search;
            arr['filter_item_id'] = filter_item_id.toString();

        $.ajax({
            'url' : '/portal/list/ajaxGetListCount',
            'type' : 'post',
            'dataType' : 'json',
            'async' : false,
            'data' : arr,
            'success' : function(res){
                if (res.code == 1){
                    count = res.data;
                }
            },
            'error' : function(){
                console.log('网络错误');
            }
        });
    }

    /**
     * 获取列表
     */
    function ajaxGetList(){
        var arr = {};
            arr['id'] = cate_id;
            arr['search'] = search;
            arr['filter_item_id'] = filter_item_id.toString();
            arr['page'] = page;
            arr['limit'] = limit;

        index = layer.load(1);

        $.ajax({
            'url' : '/portal/list/ajaxGetList',
            'type' : 'post',
            'dataType' : 'json',
            'data' : arr,
            'success' : function(res){
                layer.close(index);
                if (res.code == 1){
                    //隐藏没有数据样式
                    $('.cd-fail-message').hide();

                    var data = res.data;
                    var html = '';
                    if (data.length > 0){
                    
                        for (var i=0;i<data.length;i++) {
                            html += '<li class="new-li">';
                            html += '<div class="single-game-review-area d-flex flex-wrap pic">';
                            html += '<a href="'+ data[i]['href'] +'"><img src="'+ data[i]['thumbnail'] +'" alt=""></a>';
                            html += '<div class="game-content new-content">';
                            // html += '<span class="game-tag">最新</span>';
                            html += '<div class="game-meta">';
                            // html += '<a href="#" class="game-date">时间 12, 2018</a>';
                            // html += '<a href="#" class="game-comments">国内</a>';
                            html += '</div>';
                            html += '<a href="'+ data[i]['href'] +'" class="new-title">'+ data[i]['post_title'] +'</a>';
                            html += '</div>';
                            html += '</div>';
                            html += '</li>';
                        }

                        $('.a-list').html(html);

                    } else {
                        html += '<div class="cd-fail-message">No results found</div>';
                        $('.a-list').html(html);
                        $('.cd-fail-message').show();
                    }

                } else {
                    layer.msg(res.msg);
                }
            },
            'error' : function(){
                layer.close(index);
                layer.msg('网络错误');
            }
        });
    }
});
