TaoLer/view/taoler/index/article/edit.html

274 lines
10 KiB
HTML
Raw Normal View History

2020-01-01 13:17:19 +08:00
{extend name="public/base" /}
2021-05-20 11:52:40 +08:00
2020-02-19 14:59:09 +08:00
{block name="title"}编辑帖子{/block}
2022-12-25 17:13:13 +08:00
{block name="link"} {/block}
2020-01-01 13:17:19 +08:00
{block name="column"}{/block}
{block name="content"}
<div class="layui-container fly-marginTop">
<div class="fly-panel" pad20 style="padding-top: 5px;">
<!--<div class="fly-none">没有权限</div>-->
<div class="layui-form layui-form-pane">
<div class="layui-tab layui-tab-brief" lay-filter="user">
<ul class="layui-tab-title">
2020-11-23 17:03:25 +08:00
<li class="layui-this">{:lang('edit post')}</li>
2020-01-01 13:17:19 +08:00
</ul>
<div class="layui-form layui-tab-content" id="LAY_ucm" style="padding: 20px 0;">
<div class="layui-tab-item layui-show">
2020-02-19 14:59:09 +08:00
2022-04-17 17:09:19 +08:00
<input type="hidden" name="id" value="{$article.id}">
<div class="layui-row layui-col-space15 layui-form-item">
<div class="layui-col-md3">
<label class="layui-form-label">{:lang('special column')}</label>
<div class="layui-input-block">
2024-04-01 10:08:12 +08:00
{if ($user.auth == 1)}
<div id="CateId" class="xm-select-demo"></div>
2024-04-01 10:08:12 +08:00
{else /}
2024-04-01 10:17:53 +08:00
<input type="text" name="cate_id" class="layui-input layui-hide" disabled value="{$article.cate_id}">
2024-04-01 10:08:12 +08:00
<input type="text" class="layui-input" disabled value="{$article.cate.catename}">
{/if}
2020-01-01 13:17:19 +08:00
</div>
2022-04-17 17:09:19 +08:00
</div>
<div class="layui-col-md8">
<label for="L_title" class="layui-form-label">{:lang('title')}</label>
<div class="layui-input-block">
<input type="text" id="L_title" name="title" required lay-verify="required" autocomplete="off" class="layui-input" value="{$article.title}">
2022-08-02 21:13:36 +08:00
<input type="hidden" id="L_title_color" name="title_color" autocomplete="off" class="layui-input" value="{$article.title_color ?? '#333'}">
2020-01-01 13:17:19 +08:00
</div>
2022-04-17 17:09:19 +08:00
</div>
2021-12-15 15:46:04 +08:00
{if ($user.auth == 1)}
<div class="layui-col-md1">
2022-04-17 17:09:19 +08:00
<div id="color"></div>
<div id="test9" style="margin-left: 30px;"></div>
2021-12-15 15:46:04 +08:00
</div>
{/if}
2022-04-17 17:09:19 +08:00
</div>
2023-05-05 12:03:45 +08:00
<div class="layui-row layui-col-space15 layui-form-item" id="LAY_quiz">
2022-04-17 17:09:19 +08:00
<div class="layui-col-md3">
2023-05-05 12:03:45 +08:00
<label class="layui-form-label">阅读权限</label>
2022-04-17 17:09:19 +08:00
<div class="layui-input-block">
2023-05-05 12:03:45 +08:00
<select name="read_type">
<option value="0" {if($article.read_type == 0)} selected {/if}>开放阅读</option>
<option value="1" {if($article.read_type == 1)} selected {/if}>密码加密</option>
<option value="2" {if($article.read_type == 2)} selected {/if}>回帖阅读</option>
<option value="3" {if($article.read_type == 3)} selected {/if}>购买阅读</option>
2022-04-17 17:09:19 +08:00
</select>
2020-01-01 13:17:19 +08:00
</div>
</div>
2022-04-17 17:09:19 +08:00
<div class="layui-col-md3">
2023-05-05 12:03:45 +08:00
<label class="layui-form-label" >密码</label>
2020-01-01 13:17:19 +08:00
<div class="layui-input-block">
2023-05-05 12:03:45 +08:00
<input type="text" value="{$article.art_pass ?? ''}" name="art_pass" autocomplete="off" class="layui-input" />
2020-01-01 13:17:19 +08:00
</div>
</div>
2023-05-05 12:03:45 +08:00
</div>
2022-04-17 17:09:19 +08:00
<div class="layui-form-item layui-form-text">
<div class="layui-input-block">
2024-04-01 10:20:25 +08:00
<textarea id="L_content" name="content" required lay-verify="required" placeholder="详细内容" class="layui-textarea taonyeditor" style="height: 260px;">{$article.content}</textarea>
2020-02-19 14:59:09 +08:00
</div>
2022-04-17 17:09:19 +08:00
</div>
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">{:lang('enclosure')}</label>
<div class="layui-input-inline" style="width: 190px;">
2023-02-11 21:24:02 +08:00
<input type="text" class="layui-input" name="upzip" value="{$article.upzip ?? ''}" placeholder="zip,jpg格式" title="上传附件"/>
2022-04-17 17:09:19 +08:00
</div>
<button type="button" class="layui-btn" id="zip-button"><i class="layui-icon"></i>上传文件</button>
2021-12-15 15:46:04 +08:00
</div>
2022-04-17 17:09:19 +08:00
</div>
<div class="layui-form-item layui-hide">
2022-04-17 17:09:19 +08:00
<label class="layui-form-label">{:lang('描述')}</label>
<div class="layui-input-block">
<textarea name="description" class="layui-textarea" placeholder="SEO描述">{$article.description}</textarea>
2020-01-01 13:17:19 +08:00
</div>
2022-04-17 17:09:19 +08:00
</div>
2022-08-16 15:29:04 +08:00
{//关键词}
<div class="layui-form-item layui-hide">
2022-08-16 15:29:04 +08:00
<label class="layui-form-label">{:lang('添加关键词')}</label>
<div class="layui-input-block">
<input type="text" class="layui-input" name="keywords" value="{$article.keywords}" placeholder="多个英文逗号隔开" title="添加关键词" />
2020-01-01 13:17:19 +08:00
</div>
2022-04-17 17:09:19 +08:00
</div>
2022-08-16 15:29:04 +08:00
{//tag}
2022-04-17 17:09:19 +08:00
<div class="layui-form-item">
2022-08-16 15:29:04 +08:00
<label class="layui-form-label">{:lang('add tags')}</label>
<div class="layui-input-block">
<div id="tag"></div>
</div>
2022-04-17 17:09:19 +08:00
</div>
{if config('taoler.config.post_captcha') == 1}
<div class="layui-form-item">
<label for="L_vercode" class="layui-form-label">{:lang('captcha')}</label>
<div class="layui-input-inline">
<input type="text" id="L_vercode" name="captcha" required lay-verify="required" placeholder="{:lang('please input the captcha')}" autocomplete="off" class="layui-input">
2020-01-01 13:17:19 +08:00
</div>
2022-04-17 17:09:19 +08:00
<div class="layui-form-mid layui-word-aux" style="padding-top: 0px !important;">
<img id="captcha" src="{:captcha_src()}" onclick="this.src='{:captcha_src()}?'+Math.random();" style="float:left; cursor:pointer;" alt="captcha" />
</div>
</div>
{/if}
<div class="layui-form-item">
<button type="submit" class="layui-btn" lay-filter="article-edit" lay-submit id="edit">{:lang('post now')}</button>
</div>
2020-02-19 14:59:09 +08:00
2020-01-01 13:17:19 +08:00
</div>
</div>
</div>
</div>
</div>
</div>
{include file="public/menu" /}
2020-01-01 13:17:19 +08:00
{/block}
{block name="script"}
2022-08-16 15:29:04 +08:00
<script src="/static/xm-select.js"></script>
<script>
2023-05-05 12:03:45 +08:00
let taonystatus = "{:hook('taonystatus') ? 1 : 0} ";
2023-03-27 13:04:59 +08:00
layui.use(['fly'], function(){
var $ = layui.jquery
,fly = layui.fly
,colorpicker = layui.colorpicker
,form = layui.form
,upload = layui.upload;
var cateId = "{$article.cate.id}";
var artId = "{$article.id}";
//如果你是采用模版自带的编辑器,你需要开启以下语句来解析。
// 编辑器插件启用状态
2023-05-05 12:03:45 +08:00
if(taonystatus == 0) {
2023-03-27 13:04:59 +08:00
$('.layui-textarea').each(function(){
var othis = $(this), html = othis.html();
othis.attr(fly.content(html));
})
}
2023-05-05 12:03:45 +08:00
// 分类选择
$.get("{:url('article/getCateTree')}",function(res){
// 渲染下拉树
xmSelect.render({
el: '#CateId',
2022-09-07 15:24:25 +08:00
name: 'cate_id',
height: '250px',
layVerify: 'required',
layVerType: 'tips',
2023-05-05 12:03:45 +08:00
data: res.data,
initValue: [cateId],
model: {label: {type: 'text'}},
prop: {
name: 'catename',
value: 'id'
},
radio: true,
clickClose: true,
tree: {
show: true,
indent: 15,
strict: false,
2024-04-01 10:08:12 +08:00
expandedKeys: false
},
tips: '请选择'
});
});
// tag标签
$(function(){
//1.渲染标签
var addTags = xmSelect.render({
el: '#tag',
name: 'tagid',
layVerify: '',
layVerType: 'msg',
paging: true,
pageSize: 5,
data: []
});
//2.动态赋值
$.get("{:url('get_art_tag')}",{id:artId},function(res){
2023-05-05 12:03:45 +08:00
if(res.code === 0){
addTags.setValue(
res.data
)
}
});
//3.动态标签赋值
$.get("{:url('get_all_tag')}",function(res){
2023-05-05 12:03:45 +08:00
if(res.code === 0){
addTags.update({
data: res.data,
autoRow: true,
})
}
});
2022-08-16 15:29:04 +08:00
})
2022-08-16 15:29:04 +08:00
//编辑文章
form.on('submit(article-edit)', function(data){
2023-07-03 12:54:48 +08:00
var field = data.field;
var loadIndex = layer.load(2);
2022-08-16 15:29:04 +08:00
$.ajax({
type:"post",
url:"{:url('article/edit')}",
data: field,
daType:"json",
2023-07-03 12:54:48 +08:00
success:function (res){
layer.close(loadIndex);
if (res.code === 0) {
toast.success({title:"成功消息",message: res.msg});
location.href = res.url;
2022-08-16 15:29:04 +08:00
} else {
2023-07-03 12:54:48 +08:00
toast.error({title:"失败消息",message:res.msg});
2022-12-25 17:13:13 +08:00
layui.jquery('#captcha').attr('src', '{:captcha_src()}?'+Math.random());
}
2022-08-16 15:29:04 +08:00
}
});
return false;
});
//预定义颜色项
colorpicker.render({
elem: '#color'
,color: "{$article.title_color ?? '#333'}"
,predefine: true // 开启预定义颜色
,done: function(color){
//譬如你可以在回调中把得到的 color 赋值给表单
$('#L_title_color').val(color);
//改变标题颜色
$('#L_title').css("color", color);
}
});
2023-05-05 12:03:45 +08:00
//指定允许上传的文件类型
upload.render({
elem: '#zip-button'
,url: "{:url('article/uploads')}" //改成您自己的上传接口
,data: {type:'zip'}
2023-07-03 12:50:57 +08:00
,accept: 'file',
before: function(obj){
layer.load();
},
done: function(res){
layer.closeAll('loading');
if(res.status === 0){
$('input[name="upzip"]').val(res.url);
notify.success(res.msg);
} else {
notify.error(res.msg);
}
2022-12-25 17:13:13 +08:00
}
2023-05-05 12:03:45 +08:00
});
2020-04-24 15:07:26 +08:00
2023-05-05 12:03:45 +08:00
});
2020-01-01 13:17:19 +08:00
</script>
2024-04-14 12:03:38 +08:00
{// 编辑器}
2023-07-03 12:52:34 +08:00
{:hook('taonyeditor')}
2024-04-14 12:03:38 +08:00
{:hook('ueditor')}
2023-07-03 12:52:34 +08:00
{// 百度标题词条}
{:hook('seoBaiduTitle')}
{// 百度关键词}
{:hook('seoBaiduKeywords')}
2020-01-01 13:17:19 +08:00
{/block}