| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292 | <style>    .ck-editor__editable_inline {        height: 400px !important;    }</style><article class="cl pd-20">    <form action="{:url('/sys/article/save')}" method="post" class="form form-horizontal" id="form-save">        <input type="hidden" name="id" value="{$data['id']}">        <input type="hidden" name="cjid" value="{$data['cjid']}">        <input type="hidden" name="content_type" value="{$data['content_type']}">        <div class="row cl">            <label class="form-label col-xs-4 col-sm-2">                <span class="c-red">*</span>栏目:</label>            <div class="formControls col-xs-8 col-sm-6">                <span class="select-box inline">                    <select name="cid" class="select" id="cid">                        <option value="">所有栏目</option>                        {foreach $category_tree as $value}                        <option value="{$value.id}" {eq name='data.cid' value="$value.id" }selected{/eq}>{$value.name}                        </option>                        {notempty name="value.child"}                        {foreach $value.child as $val}                        <option value="{$val.id}" {eq name='data.cid' value="$val.id" }selected{/eq}>--{$val.name}                        </option>                        {notempty name="val.child"}                        {foreach $val.child as $vo}                        <option value="{$vo.id}" {eq name='data.cid' value="$vo.id" }selected{/eq}>  └                            --{$vo.name}                        </option>                        {/foreach}                        {/notempty}                        {/foreach}                        {/notempty}                        {/foreach}                    </select>                </span>            </div>            <div class="col-3"> </div>        </div>        <div class="row cl">            <label class="form-label col-xs-4 col-sm-2">                <span class="c-red">*</span>标题:</label>            <div class="formControls col-xs-8 col-sm-6">                <input type="text" class="input-text" value="{$data.title}" placeholder="请填写标题" id="title" name="title">            </div>            <div class="col-3"> </div>        </div>        <div class="row cl">            <label class="form-label col-xs-4 col-sm-2">                作者: </label>            <div class="formControls col-xs-4 col-sm-2">                <input type="text" class="input-text" value="{$data.writer}" placeholder="作者" id="writer" name="writer">            </div>            <label class="form-label col-xs-4 col-sm-2">                来源:</label>            <div class="formControls col-xs-4 col-sm-2">                <input type="text" class="input-text" value="{$data.source}" placeholder="来源" id="source" name="source">            </div>            <div class="col-3"> </div>        </div>        <div class="row cl">            <div class="col-3"> </div>        </div>        <div class="row cl">            <label class="form-label col-xs-4 col-sm-2">                标题图:</label>            <div class="formControls col-xs-6 col-sm-4">                <input type="text" class="input-text" value="{$data.titlepic}" name="titlepic" id="titlepic">                <div style="width: 160px;height: 160px;">                    <a href="javascript:void(0);" onclick="addTitlePic()">                        <img id="view-titlepic"                            src="{$data.titlepic ? $data.titlepic : '/static/images/upload_picture.png'}" alt="标题图"                            title="{$data.titlepic ? '更换' : '添加'}标题图" style="max-width: 160px;max-height: 160px;">                    </a>                </div>            </div>            <label class="form-label col-xs-2 col-sm-2">                <a class="btn btn-success radius" href="javascript:addTitlePic();">{$data.titlepic ? '更换' :                    '添加'}标题图</a></label>            <div class="col-3"> </div>        </div>        <div class="row cl">            <label class="form-label col-xs-4 col-sm-2">                关键词:</label>            <div class="formControls col-xs-8 col-sm-6">                <input type="text" class="input-text" value="{$data.keywords}" placeholder="关键词" id="keywords"                    name="keywords">                <span class="c-red">多个关键词用英文','分割</span>            </div>            <div class="col-3"> </div>        </div>        <div class="row cl">            <label class="form-label col-xs-4 col-sm-2">内容简介:</label>            <div class="formControls col-xs-8 col-sm-6">                <textarea name="summary" id="summary" cols="" rows="" class="textarea" placeholder="说点什么...最多输入500个字符"                    datatype="*10-100" dragonfly="true" onKeyUp="textarealength(this,500)">{$data.summary}</textarea>                <p class="textarea-numberbar">                    <em class="textarea-length">0</em>/500                </p>            </div>            <div class="col-3"> </div>        </div>        <div class="row cl">            <label class="form-label col-xs-4 col-sm-2">文章正文:</label>        </div>        <div class="row cl">            <label class="form-label col-xs-1 col-sm-1"></label>            <div class="formControls col-xs-11 col-sm-10">                <div id="editor">{$data.content|raw}</div>            </div>        </div>        <div class="row cl">            <label class="form-label col-xs-2 col-sm-2">                点击量:</label>            <div class="formControls col-xs-4 col-sm-2">                <input type="number" class="input-text" value="{$data.hits}" id="hits" name="hits"                    style="width: 120px;">            </div>            <label class="form-label col-xs-2 col-sm-2">                排序:</label>            <div class="formControls col-xs-4 col-sm-2">                <input type="number" class="input-text" value="{$data.sort}" id="sort" name="sort"                    style="width: 120px;">            </div>        </div>        <div class="row cl">            <div class="col-xs-8 col-sm-9 col-xs-offset-4 col-sm-offset-3">                <button type="button" class="btn btn-success radius" id="form-button-save">确 定</button>                <button type="button" class="btn btn-default radius" onclick="window.history.back();"                    style="margin-left:20px;">取 消</button>            </div>        </div>    </form></article><!-- 标题图上传 --><div>    <form id="form-upload_picture">        <input type="file" hidden name="image" id="upload_picture">    </form></div><!--请在下方写此页面业务相关的脚本--><script type="text/javascript" src="/static/plugins/jquery.validation/1.14.0/jquery.validate.js"></script><script type="text/javascript" src="/static/plugins/jquery.validation/1.14.0/messages_zh.js"></script><script type="text/javascript" src="/static/plugins/jquery.validation/1.14.0/validate-methods.js"></script><script type="text/javascript" src="/static/plugins/ckeditor/ckeditor5/ckeditor.js"></script><script type="text/javascript">    $(function () {        ClassicEditor.create(document.querySelector('#editor'), {            toolbar: {                items: [                    'sourceEditing', '|',                    'bold', 'italic', 'strikethrough', 'underline', 'subscript', 'superscript', '|',                    'heading', '|',                    'fontfamily', 'fontsize', 'fontColor', 'fontBackgroundColor', 'highlight', '|',                    'alignment', 'outdent', 'indent', '|',                    'undo', 'redo',                    '-',                    'link', 'imageUpload', 'imageInsert', 'mediaEmbed', 'insertTable', '|',                    'code', 'codeBlock', 'blockQuote', '|',                    'findAndReplace', 'horizontalLine', 'numberedList', 'bulletedList',                ],                shouldNotGroupWhenFull: true            },            licenseKey: '',            //图片上传            simpleUpload: {                // The URL the images are uploaded to.                uploadUrl: '/sys/file_manager/ckeditorUploadImage?infoid={$data.id}&cjid={$data.cjid}'            },            //自定义字体            fontFamily: {                options: [                    'default',                    '微软雅黑,Microsoft YaHei',                    '新宋体,NSimSun',                    '楷体_GB2312,KaiTi_GB2312',                    '黑体,SimHei',                    '隶书,LiSu',                    '幼园,YouYuan',                    'Blackoak Std',                    'Arial',                    'Georgia',                    'Tahoma',                    'Trebuchet MS',                    'verdana',                ]            },        }).then(editor => {            window.editor = editor;        }).catch(error => {            console.error('Oops, something went wrong!');            console.error('Please, report the following error on https://github.com/ckeditor/ckeditor5/issues with the build id and the error stack trace:');            console.warn('Build id: z4e2d8lqju9w-6lwv92tbu4hm');            console.error(error);        });    })    // window.editor.editing.view.change(writer => {    //     writer.setStyle('height', '400px', editor.editing.view.document.getRoot());    // });    function validator(params) {        return $("#form-save").validate({            debug: true,            rules: {                title: {                    required: true,                }                , summary: {                    maxlength: 500,                }                , sort: {                    max: 99                }                , cid: {                    required: true                }            },            messages: {                title: {                    required: "标题不能为空"                }                , cid: {                    required: "栏目不能为空"                }            }        });    }    $("#form-button-save").click(function () {        if (!validator().form()) {            return false        }        const content = window.editor.getData();        $("<input/>").attr("type", "hidden").attr("name", "content").val(content).appendTo($("#form-save"));        $("#form-save")[0].submit();    })    //添加标题图    const file = document.querySelector('input[type="file"]');    function uploadPicture() {        // file模拟input点击事件        var evt = new MouseEvent("click", {            bubbles: false,            cancelable: true,            view: window,        });        file.dispatchEvent(evt, uploadfn());    }    function uploadfn() {        file.oninput = function () {            if (file.files && file.files[0]) {                var formData = new FormData();                formData.append("upload_file", file.files[0]);                $.ajax({                    url: '{:url("/sys/file_manager/uploadImage")}',                    type: "post",                    data: formData,                    processData: false, // 告诉jQuery不要去处理发送的数据                    contentType: false, // 告诉jQuery不要去设置Content-Type请求头                    dataType: 'json',                    success: function (res) {                        // console.log(res);                        var img = res.data.filename;                        $("#view-titlepic").attr('src', img);                        $("#titlepic").val(img);                        layer.msg(res.msg, {                            icon: 1,                            time: 1000                        });                    },                    error: function (res) {                        layer.msg(res.msg, {                            icon: 5,                            time: 1000                        });                        return false;                    },                    complete: function () {                        document.getElementById('form-upload_picture').reset();                    }                });            }        }    }</script>
 |