🔓 Ultimate Webshell - Penetration Testing Tool

📖 File Reader

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title></title>
    <link href="__PUBLIC__/layui-v2.9.14/layui/css/layui.css" rel="stylesheet">
    <style>
        element.style {
            height: 1020px!important;
        }
        .demoTable {
            padding:1rem 1rem 0rem 1rem;
        }
    </style>
</head>
{include file="public/top"/}
{include file="public/vue"/}
<body>
<!--搜索栏-->
<div class="demoTable">
    <fieldset class="layui-elem-field">
        <legend style="margin-bottom:0px;">搜索栏</legend>
        <div class="layui-field-box">
            <form class="layui-form layui-row layui-col-space16" onkeydown="if(event.keyCode==13)return false;" onSubmit="return checkSubmit();">
                <div class="layui-col-md4">
                    <div class="layui-input-wrap">
                        <input class="layui-input" id="name" placeholder="请输入名称" autocomplete="off">
                    </div>
                </div>
                <div class="layui-col-md4">
                    <button type="button" class="layui-btn" data-type="reload" lay-filter="demo-table-search">搜索</button>
                </div>
            </form>
        </div>
    </fieldset>
</div>

<!--表格处理-->
<div style="margin-left:1.1rem!important;margin-right:1.1rem!important;">
    <table class="layui-hide" id="demo" lay-filter="test"></table>
</div>
<script type="text/html" id="toolbarDemo">
    <div class="layui-btn-container">
        <button class="layui-btn layui-btn-sm" lay-event="add" style="width: 100px;">创建</button>
    </div>
</script>
<script type="text/html" id="barDemo">
    <a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
</script>
<script type="text/html" id="switchTpl">
    <input type="checkbox" name="is_show" value="{{d.id}}" lay-skin="switch" lay-text="是|否" lay-filter="is_show_Demo" {{d.is_show == 1 ? 'checked' : '' }}>
</script>

<script src="__PUBLIC__/layui-v2.9.14/layui/layui.js"></script>
<script>
    layui.use(function(){
        //定义全局变量
        window.check_reload = function () {
            table.reload('demo');
            return true;
        };
        // 得到需要的内置组件
        var layer = layui.layer; //弹层
        var table = layui.table
            ,form = layui.form; //表格
        var dropdown = layui.dropdown; //下拉菜单
        // 执行一个 table 实例
        table.render({
            elem: '#demo'
            ,height: 600
            ,url: "{:Url('Config/other_act_ajax')}" //数据接口(此处为静态数据,仅作演示)
            ,title: '用户表'
            ,page: true //开启分页
            ,limit:20
            //,toolbar: 'default' //开启工具栏,此处显示默认图标,可以自定义模板,详见文档
            ,toolbar: '#toolbarDemo' //开启工具栏,此处显示默认图标,可以自定义模板,详见文档
            ,defaultToolbar: ['filter', 'exports']//自定义右侧
            ,totalRow: false //开启合计行
            ,cols: [[ //表头
                {type: 'checkbox', fixed: 'left'}
                ,{field: 'id', title: 'ID', width:80, sort: true}
                ,{field: 'name', title: '名称', width:400}
                ,{field: 'is_show', title:'是否显示', width:100,align: 'center', templet: '#switchTpl', unresize: true}
                ,{field: 'time_add', title: '创建时间', width: 155, sort: true}
                ,{fixed: 'right', title: '操作', width: 180, align:'center', toolbar: '#barDemo'}
            ]],response: {
                statusCode: 200 //重新规定成功的状态码为 200,table 组件默认为 0
            }
        });
        /*是否显示*/
        form.on('switch(is_show_Demo)', function(obj){
            if (obj.elem.checked == true){var value = 1;}else{var value = 0;}
            req_post("{:Url('Config/other_field_update')}",{'id':this.value,'field_name':'is_show','value':value}).then(res=>{
            });
        });
        /*搜索处理*/
        var $ = layui.$, active = {
            reload: function(){
                //执行重载
                table.reload('demo', {
                    page: {
                        curr: 1 //重新从第 1 页开始
                    }
                    ,where: {
                        name:$('#name').val(),
                    }
                });
            }
        };
        $('.demoTable .layui-btn').on('click', function(){
            var type = $(this).data('type');
            active[type] ? active[type].call(this) : '';
        });

        /*头工具栏事件*/
        table.on('toolbar(test)', function(obj){
            var checkStatus = table.checkStatus(obj.config.id)
                ,data = checkStatus.data; //获取选中的数据
            switch(obj.event){
                case 'add':
                    var isClose = false;
                    parent.layer.open({
                        type: 2,
                        title: '创建',
                        shadeClose: true,
                        shade: 0.5,
                        maxmin: true, //开启最大化最小化按钮
                        area: ['70%','80%'],
                        content:'/admin/Config/form_other_update',
                        end:function(res,err) {
                        }
                    });
                    break;
            };
        });

        /*表格工具事件*/
        table.on('tool(test)', function(obj){ //注:tool 是工具条事件名,test 是 table 原始容器的属性 lay-filter="对应的值"
            var data = obj.data //获得当前行数据
                ,layEvent = obj.event; //获得 lay-event 对应的值
            if(layEvent === 'edit'){
                parent.layer.open({
                    type: 2,
                    title: '编辑',
                    shadeClose: true,
                    shade: 0.5,
                    maxmin: true, //开启最大化最小化按钮
                    area: ['70%','80%'],
                    content:'/admin/Config/form_other_update?id='+data.id,
                    end:function() {
                    }
                });
            }else if(layEvent === 'del'){
                parent.layer.confirm('您确定删除么?', {
                    btn: ['确定', '取消'], //按钮
                    shade: false //不显示遮罩
                }, function () {
                    //执行关闭
                    var index = parent.layer.confirm();
                    parent.layer.close(index);
                    req_post("{:Url('Config/other_act_del')}",{'id':data.id}).then(res=>{
                        layer.msg(res.msg, {
                            icon: 1,
                            time: 1800,
                            end: function () {
                                table.reload('demo');
                            }
                        })
                    });
                }, function () {
                    parent.layer.msg('已取消', {shift: 2});
                });
            }
        });
    });
    /*表单提交成功*/
    function Fromsucceed(){
        check_reload();
    }
</script>
</body>
</html>