| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149 | <!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">    <link rel="stylesheet" href="__PUBLIC__/codemirror/lib/codemirror.css">    <link rel="stylesheet" href="__PUBLIC__/codemirror/addon/fold/foldgutter.css" />    <script src="__PUBLIC__/codemirror/lib/codemirror.js"></script>    <script src="__PUBLIC__/codemirror/addon/fold/foldcode.js"></script>    <script src="__PUBLIC__/codemirror/addon/fold/foldgutter.js"></script>    <script src="__PUBLIC__/codemirror/addon/fold/brace-fold.js"></script>    <script src="__PUBLIC__/codemirror/addon/fold/xml-fold.js"></script>    <script src="__PUBLIC__/codemirror/addon/fold/indent-fold.js"></script>    <script src="__PUBLIC__/codemirror/addon/fold/comment-fold.js"></script>    <script src="__PUBLIC__/codemirror/mode/javascript/javascript.js"></script>    <script src="__PUBLIC__/codemirror/mode/xml/xml.js"></script>    <script src="__PUBLIC__/codemirror/mode/css/css.js"></script>    <script src="__PUBLIC__/codemirror/mode/htmlmixed/htmlmixed.js"></script>    <link rel="stylesheet" href="__PUBLIC__/codemirror/addon/display/fullscreen.css">    <script src="__PUBLIC__/codemirror/addon/display/fullscreen.js"></script></head><style>    .CodeMirror {border-top: 1px solid #eee; border-bottom: 1px solid #eee; height: 500px}</style><body style="padding:10px;"><div class="tplay-body-div">    {empty name="$fullname"}    <div class="layui-tab">        <ul class="layui-tab-title">            <li class="a_menu"><a href="{:url('index')}?relative_path={$relative_path}">文件列表</a></li>            <li class="layui-this">新建文件</li>        </ul>    </div>    {/empty}    <div style="margin-top: 20px;">    </div>    <form class="layui-form" id="publish" method="post">        {empty name="$fullname"}        <div class="layui-form-item">            <label class="layui-form-label">当前路径</label>            <div class="layui-form-mid layui-word-aux">\{$relative_path}</div>        </div>        <div class="layui-form-item">            <label class="layui-form-label">文件名称</label>            <div class="layui-input-inline" style="max-width:300px;">                <input name="name" lay-verify="required" autocomplete="off" placeholder="请输入如:index.html" class="layui-input"                       type="text" value="{$fullname|default=''}">            </div>            <div class="layui-form-mid layui-word-aux">须包含文件后缀</div>        </div>        {/empty}        <div class="layui-form-item layui-form-text">            <div class="layui-input-inline" style="width:100%;">                <textarea id="code-html" placeholder="请输入内容" class="layui-textarea" rows="30" name="content">{notempty name="$content"}{$content|htmlspecialchars}{/notempty}</textarea>            </div>            <div class="layui-form-mid layui-word-aux">快捷键:F11全屏,Ctrl+Q折叠代码</div>        </div>        {notempty name="$fullname"}        <input type="hidden" name="fullname" value="{$fullname}">        <input type="hidden" name="filemtime" id="filemtime" value="{$filemtime}">        {/notempty}        <input type="hidden" name="relative_path" value="{$relative_path}">        <div class="layui-form-item">            <div class="layui-input-block">                <button class="layui-btn" lay-submit lay-filter="admin">立即提交</button>                <button type="reset" class="layui-btn layui-btn-primary" onclick="location.reload()">刷新</button>            </div>        </div>    </form>    <script src="__PUBLIC__/layui/layui.js"></script>    <script src="__PUBLIC__/jquery/jquery.min.js"></script>    <script>        layui.use(['layer', 'form'], function () {            var layer = layui.layer,                $ = layui.jquery,                form = layui.form;            $(window).on('load', function () {                //                var te_html = document.getElementById("code-html");                var editor = CodeMirror.fromTextArea(te_html, {                    mode: "text/html",                    lineNumbers: true,                    lineWrapping: true,                    extraKeys: {                        "Ctrl-Q": function (cm) {                            cm.foldCode(cm.getCursor());                        },                        "F11": function(cm) {                            cm.setOption("fullScreen", !cm.getOption("fullScreen"));                        },                        "Esc": function(cm) {                            if (cm.getOption("fullScreen")) cm.setOption("fullScreen", false);                        }                    },                    foldGutter: true,                    gutters: ["CodeMirror-linenumbers", "CodeMirror-foldgutter"]                });                //                form.on('submit(admin)', function (data) {                    te_html.value = editor.getValue();                    $.ajax({                        url: "{:url('publish')}",                        data: $('#publish').serialize(),                        type: 'post',                        async: false,                        success: function (res) {                            if (res.code == 1) {                                {notempty name="$fullname"}                                layer.confirm(res.msg, {                                    btn: ['关闭','继续编辑']                                }, function (index) {                                    window.parent.tab.close('filemanage_{:str_replace(".","",$fullname)}');                                }, function (index, layero) {                                    $('#filemtime').val(res.data)                                });                                {else/}                                layer.alert(res.msg, function (index) {                                    location.href = res.data.relative_path != null ? res.url + "?relative_path=" + res.data.relative_path : res.url;                                })                                {/notempty}                            } else {                                layer.msg(res.msg);                            }                        }                    })                    return false;                });            });        });    </script></div></body></html>
 |