123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237 |
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8">
- <title>layui</title>
- <meta name="renderer" content="webkit">
- <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
- <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
- <link rel="stylesheet" href="__PUBLIC__/layui/css/layui.css" media="all">
- <link rel="stylesheet" href="__PUBLIC__/font-awesome/css/font-awesome.min.css" media="all"/>
- <link rel="stylesheet" href="__CSS__/admin.css" media="all">
- </head>
- <style type="text/css">
- .laytable-cell-1-action {
- height: 22px;
- }
- .layui-icon.layui-tree-head {
- line-height: initial;
- }
- </style>
- <body style="padding:10px;">
- <div class="tplay-body-div">
- <div class="layui-tab">
- <ul class="layui-tab-title">
- <li class="layui-this">栏目管理</li>
- <li><a href="{:url('publish')}" class="a_menu">新增栏目</a></li>
- <li><a href="javascript:filemanage()">管理HTML</a></li>
- </ul>
- </div>
- <script type="text/html" id="toolbarDemo">
- <div class="layui-btn-container">
- <a class="layui-btn layui-btn-sm" lay-event="sort">排序</a>
- <a class="layui-btn layui-btn-sm layui-btn-primary" lay-event="switch-tree"><i
- class="layui-icon layui-icon-triangle-r"></i>收缩
- </a>
- <a class="layui-btn layui-btn-sm" lay-event="exportHtml_cover" title="生成HTML并覆盖旧文件"><i
- class="layui-icon"></i>生成HTML
- </a>
- </div>
- </script>
- <form class="layui-form" id="admin">
- <table class="layui-table layui-form" id="treeTable" lay-filter="treeTable"></table>
- </form>
- {include file="public/foot"}
- <script type="text/javascript">
- layui.extend({
- treeGrid: 'tree_table_treegrid/treeGrid' //拓展一个模块别名
- })
- var table = null, tableId = 'treeTable';
- layui.use(['jquery', 'treeGrid', 'layer'], function () {
- var $ = layui.jquery;
- table = layui.treeGrid;//很重要
- layer = layui.layer;
- //第一个实例
- var ptable = table.render({
- id: tableId,
- elem: '#' + tableId,
- url: '{:url("index")}', //数据接口
- cellMinWidth: 100,
- treeId: 'id', //树形id字段名称
- treeUpId: 'pid', //树形父id字段名称
- treeShowName: 'title', //以树形式显示的字段
- size: 'sm', //小尺寸的表格
- toolbar: '#toolbarDemo',
- // defaultToolbar: [],//此参数无效
- page: false,
- cols: [[
- {
- width: '60', field: 'sort', title: '排序', align: 'center', templet: function (row) {
- return '<input type="text" name="sorts[]" value="' + row.sort + '" style="width: 20px;" class="sort"><input type="hidden" name="ids[]" value="' + row.id + '">';
- }
- },
- {type: 'checkbox'},
- {width: '60', field: 'id', title: 'ID'},
- {
- width: '250', field: 'title', title: '栏目名称', template: function (row) {
- return '<a href="./perview?id=' + row.id + '" target="_blank" title="单击预览">' + row.title + '</a>'
- }
- },
- {field: 'type_text', title: '类型', width: '80'},
- {
- field: 'catalog_templet', title: '栏目模板', width: '90', templet: function (row) {
- return row.catalog_templet ? "<a href='javascript:;' title='单击编辑' onclick=\"fileEdit('" + row.catalog_templet + "')\">" + '<i class="fa fa-file-code-o fa-lg"/> ' + row.catalog_templet + "</a>" : '';
- }
- },
- {
- field: 'article_templet', title: '文章模板', width: '90', templet: function (row) {
- return row.article_templet ? "<a href='javascript:;' title='单击编辑' onclick=\"fileEdit('" + row.article_templet + "')\">" + '<i class="fa fa-file-code-o fa-lg"/> ' + row.article_templet + "</a>" : '';
- }
- },
- {width: '200', field: 'path', title: '栏目路径'},
- {width: '250', field: 'articlelist_rule', title: '列表路径'},
- {width: '250', field: 'article_rule', title: '文章路径'},
- {width: '100', field: 'article_count', title: '文章数'},
- // {field: 'tpath', title: '发布路径', width: '100'},
- // {field: 'tree_path', title: 'TREE_PATH', width: '100'},
- {
- field: 'status', title: '审核', align: 'center', width: '60', templet: function (row) {
- return '<a href="javascript:;" style="font-size:18px;" class="status" data-id="' + row.id + '" data-val="' + row.status + '">' + (row.status == 1 ? '<i class="fa fa-toggle-on"></i>' : '<i class="fa fa-toggle-off"></i>') + '</a>';
- }
- },
- {
- field: 'action', title: '操作', align: 'center', width: '120',
- templet: function (item) {
- var editBtn = '<a href="publish?id=' + item.id + '" class="layui-btn layui-btn-xs a_menu" style="margin-right: 0;font-size:12px;"><i class="layui-icon"></i></a>';
- var addBtn = "";
- if (item.type == 2) {
- addBtn = '<a href="publish?pid=' + item.id + '" class="layui-btn layui-btn-xs a_menu" style="margin-right: 0;font-size:12px;"><i class="layui-icon"></i></a>';
- }
- var delBtn = '<a class="layui-btn layui-btn-xs a_menu" lay-event="del" style="margin-right: 0;font-size:12px;"><i class="layui-icon"></i></a>';
- return '<div class="layui-btn-group">' + editBtn + addBtn + delBtn + '</div>';
- }
- },
- ]],
- done: function (e) {
- //审核
- switchStatus('.status', "{:url('status')}");
- },
- });
- table.on('tool(' + tableId + ')', function (obj) {
- if (obj.event === 'del') {
- var id = obj.data.id;
- var title = obj.data.title;
- layer.confirm('确定删除 ? ' + title, function (index) {
- $.ajax({
- url: "{:url('delete')}",
- data: {id: id},
- dataType: 'json',
- type: 'post',
- success: function (res) {
- layer.msg(res.msg);
- if (res.code == 1) {
- setTimeout(function () {
- location.href = res.url;
- }, 1500)
- }
- }
- })
- })
- }
- });
- //监听事件
- table.on('toolbar(' + tableId + ')', function (obj) {
- if (obj.event == 'exportHtml_cover') {
- var checkStatus = table.checkStatus(tableId);//获取选中的数据
- var data = checkStatus.data;
- if (data.length > 0) {
- var ids = [];//数组
- data.forEach(function (item, key) {
- ids[key] = item.id;
- })
- var load = layer.load(1, {
- shade: [0.1, '#fff'] //0.1透明度的白色背景
- });
- $.ajax({
- url: "{:url('exportHtml')}?cover=true",
- data: {ids: ids},
- type: 'post',
- dataType: 'json',
- success: function (res) {
- layer.alert(res.msg, function (index) {
- layer.msg(res.msg);
- })
- },
- complete: function () {
- layer.close(load);
- }
- })
- } else {
- layer.msg('请先勾选需要操作的记录');
- }
- }
- else if (obj.event == 'sort') {
- $.ajax({
- url: "{:url('sort')}",
- data: $('#admin').serialize(),
- type: 'post',
- async: false,
- success: function (res) {
- if (res.code == 1) {
- layer.alert(res.msg, function (index) {
- location.reload();
- })
- } else {
- layer.msg(res.msg);
- }
- }
- })
- }
- else if (obj.event == 'switch-tree') {
- if (obj.ele.text() == "展开") {
- table.treeNodeOpenAll(tableId);
- obj.ele.html('<i class="layui-icon layui-icon-triangle-r"></i>收缩')
- } else {
- table.treeNodeCloseAll(tableId);
- obj.ele.html('<i class="layui-icon layui-icon-triangle-d"></i>展开')
- }
- }
- });
- });
- function filemanage() {
- window.parent.tab.tabAdd({
- icon: "fa-bookmark",
- id: 'filemanage',
- title: "管理HTML",
- url: "{:url('admin/file_manage/index')}"
- });
- }
- function fileEdit(filename) {
- window.parent.tab.tabAdd({
- icon: "fa-bookmark",
- id: 'templet' + filename,
- title: '<i class="fa fa-file-code-o"/> ' + filename,
- url: "{:url('admin/templet/publish')}?filename=" + filename
- });
- }
- </script>
- </div>
- </body>
- </html>
|