2020-01-01 13:17:19 +08:00
{extend name="public/base" /}
{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" >
2022-08-02 21:13:36 +08:00
< div class = "fly-panel" pad20 style = "padding-top: 5px" >
2020-01-01 13:17:19 +08:00
<!-- <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('add post')}<!-- 编辑帖子 --> < / li >
2020-01-01 13:17:19 +08:00
< / ul >
2022-08-02 21:13:36 +08:00
< div class = "layui-tab-content" id = "LAY_ucm" style = "padding: 20px 0" >
2020-01-01 13:17:19 +08:00
< div class = "layui-tab-item layui-show" >
2022-08-02 21:13:36 +08:00
{if config('taoler.config.is_post') == 1}
< 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" >
2022-09-07 15:21:56 +08:00
< div id = "CateId" class = "xm-select-demo" > < / div >
2020-01-01 13:17:19 +08:00
< / div >
2022-08-02 21:13:36 +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" style = "position:relative;" value = "" / >
< input type = "hidden" id = "L_title_color" name = "title_color" autocomplete = "off" class = "layui-input" / >
< input type = "hidden" name = "user_id" value = "{:session('user_id')}" / >
< div class = "layui-input bdsug layui-hide" >
< ul class = "wordlist" >
< / ul >
2020-01-01 13:17:19 +08:00
< / div >
< / div >
2022-08-02 21:13:36 +08:00
< / div >
2022-04-17 17:09:19 +08:00
{if ($user.auth == 1)}
< div class = "layui-col-md1" >
2022-08-02 21:13:36 +08:00
< div id = "color" > < / div >
2022-04-17 17:09:19 +08:00
< / div >
{/if}
2022-08-02 21:13:36 +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-08-02 21:13:36 +08:00
< div class = "layui-col-md3" >
2023-05-05 12:03:45 +08:00
< label class = "layui-form-label" > 阅读权限< / label >
2022-08-02 21:13:36 +08:00
< div class = "layui-input-block" >
2023-05-05 12:03:45 +08:00
< select name = "read_type" >
< option value = "0" > 开放阅读< / option >
< option value = "1" > 密码加密< / option >
< option value = "2" > 回帖阅读< / option >
< option value = "3" > 购买阅读< / option >
2022-08-02 21:13:36 +08:00
< / select >
2020-01-01 13:17:19 +08:00
< / div >
2022-08-02 21:13:36 +08:00
< / div >
< div class = "layui-col-md3" >
2023-05-05 12:03:45 +08:00
< label class = "layui-form-label" for = "L_version" > 密码< / label >
2022-08-02 21:13:36 +08:00
< div class = "layui-input-block" >
2023-05-05 12:03:45 +08:00
< input type = "text" id = "L_version" value = "" 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 class = "layui-col-md6 layui-hide" >
2022-08-02 21:13:36 +08:00
< label class = "layui-form-label" for = "L_browser" > 浏览器< / label >
2020-01-01 13:17:19 +08:00
< div class = "layui-input-block" >
2022-08-02 21:13:36 +08:00
< input type = "text" id = "L_browser" value = "" name = "browser" placeholder = "浏览器名称及版本, 如: IE 11" 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-08-02 21:13:36 +08:00
< div class = "layui-form-item layui-form-text" >
< div class = "layui-input-block" >
2022-09-07 15:20:00 +08:00
< textarea id = "L_content" name = "content" required lay-verify = "required" placeholder = "{:lang('please input the content')}" class = "layui-textarea fly-editor" > < / textarea >
2022-08-02 21:13:36 +08:00
< / div >
< / 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" >
2022-09-07 15:20:00 +08:00
< input type = "text" class = "layui-input" name = "upzip" value = "" placeholder = "zip,image" title = "上传附件" / >
2020-01-01 13:17:19 +08:00
< / div >
2022-08-02 21:13:36 +08:00
< button type = "button" class = "layui-btn" id = "zip-button" > < i class = "layui-icon" > < / i > {:lang('uploads')}< / button >
2020-01-01 13:17:19 +08:00
< / div >
2022-08-02 21:13:36 +08:00
< / div >
2022-09-07 15:20:00 +08:00
{//描述}
< div class = "layui-form-item layui-hide" >
< label class = "layui-form-label" > {:lang('description')}< / label >
2022-08-02 21:13:36 +08:00
< div class = "layui-input-block" >
2022-09-07 15:20:00 +08:00
< textarea name = "description" class = "layui-textarea" placeholder = "SEO {:lang('description')}" > < / textarea >
2022-04-17 17:09:19 +08:00
< / div >
2022-08-02 21:13:36 +08:00
< / div >
2022-08-16 15:29:04 +08:00
{//关键词}
2022-09-07 15:20:00 +08:00
< div class = "layui-form-item layui-hide" >
< label class = "layui-form-label" > {:lang('add keywords')}< / label >
2022-08-16 15:29:04 +08:00
< div class = "layui-input-block" >
<!-- <input type="text" class="layui - input" name="" id="inputTags" value="" placeholder="多个回车添加" title="添加关键词" /> -->
2022-09-07 15:20:00 +08:00
< input type = "text" class = "layui-input" name = "keywords" value = "" placeholder = "多个用逗号隔开" title = "{:lang('add keywords')}" / >
2020-02-17 16:35:51 +08:00
< / div >
2022-04-17 17:09:19 +08:00
< / div >
2022-08-16 15:29:04 +08:00
{//tag}
2022-08-02 21:13:36 +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-08-02 21:13:36 +08:00
< / div >
<!-- div class="layui - form - item">
2020-01-01 13:17:19 +08:00
< div class = "layui-inline" >
< label class = "layui-form-label" > 悬赏飞吻< / label >
< div class = "layui-input-inline" style = "width: 190px;" >
< select name = "experience" >
< option value = "20" > 20< / option >
< option value = "30" > 30< / option >
< option value = "50" > 50< / option >
< option value = "60" > 60< / option >
< option value = "80" > 80< / option >
< / select >
< / div >
< div class = "layui-form-mid layui-word-aux" > 发表后无法更改飞吻< / div >
< / div >
< / div-- >
2022-04-17 17:09:19 +08:00
2022-08-02 21:13:36 +08:00
{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" >
2022-08-16 15:29:04 +08:00
< 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-08-02 21:13:36 +08:00
< div class = "layui-form-mid layui-word-aux" style = "padding-top: 0px !important" >
2022-08-16 15:29:04 +08:00
< img id = "captcha" src = "{:captcha_src()}" onclick = "this.src='{:captcha_src()}?'+Math.random();" style = "float: left; cursor: pointer" alt = "captcha" / >
2020-01-01 13:17:19 +08:00
< / div >
2022-08-02 21:13:36 +08:00
< / div >
{/if}
< div class = "layui-form-item" >
< button type = "submit" class = "layui-btn" lay-filter = "article-add" lay-submit id = "add" > {:lang('post now')}< / button >
< / div >
2020-01-01 13:17:19 +08:00
< / div >
2022-08-02 21:13:36 +08:00
{else /}
< div class = "layui-form-item" > 抱歉,系统维护中,暂时禁止发帖!< / div >
{/if}
2020-01-01 13:17:19 +08:00
< / div >
< / div >
< / div >
< / div >
< / div >
2022-09-07 15:20:00 +08:00
{include file="public/menu" /}
{/block}
2020-01-01 13:17:19 +08:00
{block name="script"}
2022-08-02 21:13:36 +08:00
{:hook('taonyeditor')}
2022-08-16 15:29:04 +08:00
< script src = "/static/xm-select.js" > < / script >
2020-01-01 13:17:19 +08:00
< script >
2023-05-05 11:58:42 +08:00
let taonystatus = "{:hook('taonystatus') ? 1 : 0} ";
2023-05-05 12:03:45 +08:00
2022-12-25 17:13:13 +08:00
layui.use(["fly"], function () {
2022-08-02 21:13:36 +08:00
var $ = layui.jquery,
fly = layui.fly,
form = layui.form,
colorpicker = layui.colorpicker,
2022-12-25 17:13:13 +08:00
upload = layui.upload;
2022-09-07 15:20:00 +08:00
//获取百度标签标志, tag或者word;
var flag = 'word';
2020-04-13 15:51:24 +08:00
2022-04-17 17:09:19 +08:00
2022-08-16 15:29:04 +08:00
//如果你是采用模版自带的编辑器,你需要开启以下语句来解析。
// 编辑器插件启用状态
2023-05-05 11:58:42 +08:00
if(taonystatus == 0) {
2022-08-16 15:29:04 +08:00
$('.layui-textarea').each(function(){
var othis = $(this), html = othis.html();
othis.attr(fly.content(html));
})
2022-09-07 15:21:56 +08:00
}
// 分类选择
$.get("{:url('article/getCateTree')}",function(res){
var cid = "{$cid}";
// 渲染下拉树
xmSelect.render({
el: '#CateId',
name: 'cate_id',
height: '250px',
layVerify: 'required',
layVerType: 'tips',
2023-05-05 12:03:45 +08:00
data: res.data,
2022-09-07 15:21:56 +08:00
initValue: [cid],
model: {label: {type: 'text'}},
prop: {
name: 'catename',
value: 'id'
},
radio: true,
clickClose: true,
tree: {
show: true,
indent: 15,
strict: false,
expandedKeys: true
},
tips: '请选择'
});
});
// tag标签
$(function(){
//1.渲染标签
var addTags = xmSelect.render({
el: '#tag',
name: 'tagid',
layVerify: '',
layVerType: 'msg',
paging: true,
pageSize: 5,
data: []
});
//2.动态标签赋值
$.get("{:url('get_all_tag')}",function(res){
2023-05-05 12:03:45 +08:00
if(res.code === 0){
2022-09-07 15:21:56 +08:00
addTags.update({
data: res.data,
autoRow: true,
})
}
});
2022-04-17 17:09:19 +08:00
});
2022-08-16 15:29:04 +08:00
// 通过标题内容自动获取tag的内容
2022-08-02 21:13:36 +08:00
var conf = "{:empty(config('taoler.baidu.client_id'))}";
if (conf !== "1") {
$("#L_title").on("blur", function () {
var title = $(this).val();
2022-09-07 15:20:00 +08:00
var content = $("#L_content").val();
getBdiduWords(flag,title,content);
2022-08-02 21:13:36 +08:00
});
2022-08-16 15:29:04 +08:00
}
2022-04-17 17:09:19 +08:00
2022-08-16 15:29:04 +08:00
// 从详情页自动调用端口过滤,获取描述信息
$("#L_content").mouseleave(function() {
var content = $(this).val().replace(/[\r\n]/g,"").replace(/\n/g, '').replace(/\s/g, '').replace(/\t/g, '');
2022-09-07 15:20:00 +08:00
var title = $("#L_title").val();
2022-08-16 15:29:04 +08:00
$.post("{:url('article/getDescription')}", { content: content }, function(data){
if (data.code == 0) {
$('[name="description"]').val(data.data);
}
});
2022-09-07 15:20:00 +08:00
getBdiduWords(flag,title,content);
2022-08-16 15:29:04 +08:00
});
2022-09-07 15:20:00 +08:00
// 获取百度分词接口的关键词
2022-11-18 10:31:44 +08:00
function getBdiduWords(flag,title,content)
{
// console.log(flag,title,content)
2022-09-07 15:20:00 +08:00
$.post("{:url('article/keywords')}",{ keywords: title, content:content, flag: flag }, function (res) {
2023-05-05 12:03:45 +08:00
if (res.code === 0) {
2022-09-07 15:20:00 +08:00
$("input[name='keywords']").val(res.data.join(','));
}
},
)
}
2022-08-02 21:13:36 +08:00
2022-09-07 15:20:00 +08:00
// 百度词条
(function(){
var baidu_title_switch = "{:config('taoler.config.baidu_title_switch')}";
if(baidu_title_switch == 1) {
$("#L_title").bind('input propertychange',function () {
var title = $(this).val();
var str = '';
if(title.length > 0 ) {
$.post("{:url('article/getWordList')}",{title:title},function(res){
// 动态生成ur>li内容
2023-05-05 12:03:45 +08:00
if (res.code === 0) {
2022-09-07 15:20:00 +08:00
// 显示动态框
$(".bdsug").removeClass('layui-hide');
for (var i = 0; i < res.data.length ; i + + ) {
//str += '< li data-key = ' + res.data[i].q + ' > < b > ' + res.data[i].q.replace(title,'') + '< / b > < / li > ';
str += '< li data-key = ' + res.data[i].q + ' > < b > ' + res.data[i].q + '< / b > < / li > ';
}
// 清空ul并追加li
$('.wordlist').empty().append(str);
// 点击李获取li值并复制给#L_title input的value
$(".bdsug li").on('click',function(){
var word = $(this).attr('data-key');
var words = title + '(' + word + ')';
$("#L_title").val(words);
// 关闭动态框
$(".bdsug").addClass('layui-hide');
});
} else {
$(".bdsug").addClass('layui-hide');
}
});
} else {
$(".bdsug").addClass('layui-hide');
}
});
}
}())
//关闭百度词条
$(function(){
$(".bdsug").mouseleave(function(){
$(this).addClass('layui-hide');
// $("#LAY_ucm").click(function(){
// $(this).addClass('layui-hide');
// });
});
2022-08-16 15:29:04 +08:00
});
2020-04-13 15:51:24 +08:00
2022-08-16 15:29:04 +08:00
// 发布文章
form.on("submit(article-add)", function (data) {
var field = data.field;
var index = layer.load(1);
2022-04-17 17:09:19 +08:00
$.ajax({
2022-08-02 21:13:36 +08:00
type: "post",
2022-08-16 15:29:04 +08:00
url: "{:url('article/add')}",
data: field,
dataType: "json",
2022-08-02 21:13:36 +08:00
success: function (data) {
2023-05-05 12:03:45 +08:00
if (data.code === 0) {
2022-12-25 17:13:13 +08:00
notify.success(data.msg, function () {
2022-08-16 15:29:04 +08:00
location.href = data.url;
});
} else {
2022-12-25 17:13:13 +08:00
notify.error(data.msg);
$("#captcha").attr("src", "{:captcha_src()}?" + Math.random());
2022-08-02 21:13:36 +08:00
}
2022-08-16 15:29:04 +08:00
layer.close(index);
2022-08-02 21:13:36 +08:00
},
2022-04-17 17:09:19 +08:00
});
2022-08-16 15:29:04 +08:00
return false;
});
2022-04-17 17:09:19 +08:00
2022-09-07 15:20:00 +08:00
// 改变标题颜色
colorpicker.render({
elem: "#color",
color: "#393d49",
predefine: true, // 开启预定义颜色
done: function (color) {
//譬如你可以在回调中把得到的 color 赋值给表单
$("#L_title_color").val(color);
$("#L_title").css("color", color);
},
});
2022-08-16 15:29:04 +08:00
//上传附件
upload.render({
elem: "#zip-button",
url: "{:url('article/uploads')}",
data: { type: "zip" },
accept: "file", //普通文件
done: function (res) {
if (res.status == 0) {
$('input[name="upzip"]').val(res.url);
layer.msg("上传成功");
} else {
layer.msg(res.msg);
}
},
2020-04-24 15:07:26 +08:00
});
2020-04-10 15:01:38 +08:00
2022-08-02 21:13:36 +08:00
});
2020-01-01 13:17:19 +08:00
< / script >
2022-08-02 21:13:36 +08:00
{/block}