<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>文章列表</title>
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <link rel="stylesheet" href="../../css/okadmin.css">
</head>
<body>
<div class="ok-body">
    <!--面包屑导航区域-->
    <div class="ok-body-breadcrumb">
        <span class="layui-breadcrumb">
            <a><cite>首页</cite></a>
            <a><cite>常用页面</cite></a>
            <a><cite>文章列表</cite></a>
        </span>
        <a class="layui-btn layui-btn-sm" href="javascript:location.replace(location.href);" title="刷新">
            <i class="layui-icon layui-icon-refresh"></i>
        </a>
    </div>
    <!--模糊搜索区域-->
    <div class="layui-row">
        <form class="layui-form layui-col-md12 ok-search">
            <input class="layui-input" placeholder="开始日期" autocomplete="off" id="startTime" name="startTime">
            <input class="layui-input" placeholder="截止日期" autocomplete="off" id="endTime" name="endTime">
            <input class="layui-input" placeholder="请输入标题" autocomplete="off" name="title">
            <button class="layui-btn" lay-submit="" lay-filter="search">
                <i class="layui-icon layui-icon-search"></i>
            </button>
        </form>
    </div>
    <!--数据表格-->
    <table class="layui-hide" id="tableId" lay-filter="tableFilter"></table>
</div>
<!--js逻辑-->
<script src="../../lib/layui/layui.js"></script>
<script>
    layui.use(["element", "table", "form", "laydate", "okLayer", "okUtils"], function () {
        var table = layui.table;
        var form = layui.form;
        var util = layui.util;
        var laydate = layui.laydate;
        var okLayer = layui.okLayer;
        var okUtils = layui.okUtils;

        util.fixbar({});

        laydate.render({elem: "#startTime", type: "datetime"});
        laydate.render({elem: "#endTime", type: "datetime"});

        var articleTable = table.render({
            elem: "#tableId",
            url: okUtils.mockApi.article.list,
            limit: 20,
            page: true,
            even: true,
            toolbar: "#toolbarTpl",
            size: "sm",
            cols: [[
                {type: "checkbox"},
                {field: "id", title: "ID", width: 80, sort: true},
                {field: "title", title: "标题", width: 350},
                {field: "url", title: "链接", width: 250, templet: "#urlTpl"},
                {field: "readSize", title: "阅读量", width: 80},
                {field: "publisher", title: "发布者", width: 100},
                {field: "isTop", title: "是否置顶", width: 100, align: "center", templet: "#topTpl"},
                {field: "status", title: "发布状态", width: 110, align: "center", templet: "#statusTpl"},
                {title: "操作", width: 200, align: "center", templet: "#operationTpl"}
            ]],
            done: function (res, curr, count) {
                console.log(res, curr, count)
            }
        });

        form.on("submit(search)", function () {
            articleTable.reload({
                where: data.field,
                page: {curr: 1}
            });
            return false;
        });

        table.on("toolbar(tableFilter)", function (obj) {
            switch (obj.event) {
                case "batchEnabled":
                    batchEnabled();
                    break;
                case "batchDisabled":
                    batchDisabled();
                    break;
                case "batchDel":
                    batchDel();
                    break;
                case "add":
                    add();
                    break;
            }
        });

        table.on("tool(tableFilter)", function (obj) {
            var data = obj.data;
            switch (obj.event) {
                case "edit":
                    edit(data.id);
                    break;
                case "del":
                    del(data.id);
                    break;
            }
        });

        function batchEnabled() {
            okLayer.confirm("确定要批量上架吗？", function (index) {
                layer.close(index);
                var idsStr = okUtils.table.batchCheck(table);
                if (idsStr) {
                    okUtils.ajax("/article/batchNormal", "post", {idsStr: idsStr}).done(function (response) {
                        console.log(response)
                        okUtils.table.successMsg("批量上架成功");
                    }).fail(function (error) {
                        console.log(error)
                    });
                }
            });
        }

        function batchDisabled(){
            okLayer.confirm("确定要批量下架吗？", function (index) {
                layer.close(index);
                var idsStr = okUtils.table.batchCheck(table);
                if (idsStr) {
                    okUtils.ajax("/article/batchStop", "post", {idsStr: idsStr}).done(function (response) {
                        console.log(response)
                        okUtils.table.successMsg("批量下架成功");
                    }).fail(function (error) {
                        console.log(error)
                    });
                }
            });
        }

        function batchDel(){
            okLayer.confirm("确定要批量删除吗？", function (index) {
                layer.close(index);
                var idsStr = okUtils.table.batchCheck(table);
                if (idsStr) {
                    okUtils.ajax("/article/batchDel", "post", {idsStr: idsStr}).done(function (response) {
                        console.log(response)
                        okUtils.table.successMsg("批量删除成功");
                    }).fail(function (error) {
                        console.log(error)
                    });
                }
            });
        }

        function add () {
            okLayer.open("添加文章", "article-add.html", "90%", "90%", null, function () {
                articleTable.reload();
            })
        }

        function edit (id) {
            okLayer.open("编辑文章", "article-edit.html?id=" + id, "90%", "90%", null, function () {
                articleTable.reload();
            })
        }

        function del (id) {
            okLayer.confirm("确定要删除吗？", function () {
                okUtils.ajax("/article/batchDel", "post", {idsStr: id}).done(function (response) {
                    console.log(response)
                    okUtils.table.successMsg("删除成功");
                }).fail(function (error) {
                    console.log(error)
                });
            })
        }
    })
</script>
<!-- 头工具栏模板 -->
<script type="text/html" id="toolbarTpl">
    <div class="layui-btn-container">
        <button class="layui-btn layui-btn-sm layui-btn-normal" lay-event="batchEnabled"><i class="iconfont icon-shangsheng"></i>批量上架</button>
        <button class="layui-btn layui-btn-sm layui-btn-warm" lay-event="batchDisabled"><i class="iconfont icon-web-icon-"></i>批量下架</button>
        <button class="layui-btn layui-btn-sm layui-btn-danger" lay-event="batchDel"><i class="layui-icon layui-icon-delete"></i>批量删除</button>
        <button class="layui-btn layui-btn-sm" lay-event="add"><i class="layui-icon">&#xe61f;</i>添加文章</button>
    </div>
</script>
<!-- 链接模板 -->
<script type="text/html" id="urlTpl">
    <a href="{{d.url}}" target="_blank">{{d.url}}</a>
</script>
<!-- 是否指顶模板
    <input type="checkbox" name="isTop" value="{{d.isTop}}" lay-skin="switch" lay-text="是|否" {{ d.isTop== true ? 'checked' : ''}}>
-->
<script type="text/html" id="topTpl">
    {{#  if(d.isTop == true){ }}
        <span class="layui-btn layui-btn-normal layui-btn-xs">已置顶</span>
    {{#  } else if(d.isTop == false) { }}
        <span class="layui-btn layui-btn-warm layui-btn-xs">未置顶</span>
    {{#  } }}
</script>
<!-- 发布状态模板
    <input type="checkbox" name="top" value="{{d.status}}" lay-skin="switch" lay-text="已发布|未发布" {{ d.status== true ? 'checked' : ''}}>
-->
<script type="text/html" id="statusTpl">
    {{#  if(d.status == true){ }}
        <span class="layui-btn layui-btn-normal layui-btn-xs">已发布</span>
    {{#  } else if(d.status == false) { }}
        <span class="layui-btn layui-btn-warm layui-btn-xs">未发布</span>
    {{#  } }}
</script>
<!-- 行工具栏模板 -->
<script type="text/html" id="operationTpl">
    <a href="javascript:;" title="编辑" lay-event="edit"><i class="layui-icon">&#xe642;</i></a>
    <a href="javascript:;" title="删除" lay-event="del"><i class="layui-icon">&#xe640;</i></a>
</script>
</body>
</html>
