mirror of https://github.com/1099438829/apeblog
完善编辑
This commit is contained in:
parent
17c346097e
commit
6c5358f26d
|
|
@ -49,44 +49,52 @@ class Article extends AuthController
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 更新
|
* 保存
|
||||||
* @param Request $request
|
* @param string $id
|
||||||
* @return mixed
|
* @return mixed
|
||||||
* @throws \think\db\exception\DataNotFoundException
|
|
||||||
* @throws \think\db\exception\DbException
|
|
||||||
* @throws \think\db\exception\ModelNotFoundException
|
|
||||||
* @author 李玉坤
|
* @author 李玉坤
|
||||||
* @date 2021-02-16 21:15
|
* @date 2021-02-28 22:43
|
||||||
*/
|
*/
|
||||||
public function update(Request $request)
|
public function save($id="")
|
||||||
{
|
{
|
||||||
$data = Util::postMore([
|
$data = Util::postMore([
|
||||||
['id',''],
|
['id',''],
|
||||||
|
['writer',''],
|
||||||
['title',''],
|
['title',''],
|
||||||
['category_id',''],
|
['category_id',''],
|
||||||
|
['type','article'],
|
||||||
|
['abstract',''],
|
||||||
['keywords',''],
|
['keywords',''],
|
||||||
['description',''],
|
['description',''],
|
||||||
['type','article'],
|
|
||||||
['is_recommend',0],
|
['is_recommend',0],
|
||||||
['is_top',0],
|
['is_top',0],
|
||||||
|
['is_hot',0],
|
||||||
['link_str',''],
|
['link_str',''],
|
||||||
['cover_path',''],
|
['cover_path',''],
|
||||||
['display',1],
|
['display',1],
|
||||||
|
['tag',''],
|
||||||
['sort',''],
|
['sort',''],
|
||||||
['status',1],
|
['status',1],
|
||||||
]);
|
]);
|
||||||
if ($data['id'] == '') return app("json")->fail("参数有误,Id为空!");
|
if ($data['title'] == "") return app("json")->fail("文章名称不能为空");
|
||||||
$id = $data['id'];
|
if ($data['category_id'] == "") return app("json")->fail("栏目分类不能为空");
|
||||||
unset($data['id']);
|
if ($data['cover_path'] == "") return app("json")->fail("主图不能为空");
|
||||||
$saveData = [];
|
$data['writer'] = $data['writer']?:$this->adminInfo['nickname'];
|
||||||
foreach ($data as $key=>$value){
|
$data['uid'] = $this->adminId;
|
||||||
if ($value !== ''){
|
if ($id=="")
|
||||||
$saveData[$key] = $value;
|
{
|
||||||
}
|
$data['writer'] = $data['writer']?:$this->adminInfo['nickname'];
|
||||||
|
$res = aModel::save($data);
|
||||||
|
}else
|
||||||
|
{
|
||||||
|
$ainfo = aModel::get($id);
|
||||||
|
if (!$ainfo)return app("json")->fail("数据不存在");
|
||||||
|
$res = aModel::where('id',$id)->save($data);
|
||||||
}
|
}
|
||||||
return aModel::update($saveData,['id'=>$id]) ? app("json")->success("操作成功") : app("json")->fail("操作失败");
|
return $res ? app("json")->success("操作成功",'code') : app("json")->fail("操作失败");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 修改字段
|
* 修改字段
|
||||||
* @param $id
|
* @param $id
|
||||||
|
|
@ -139,5 +147,4 @@ class Article extends AuthController
|
||||||
return $this->fetch();
|
return $this->fetch();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -1,156 +1,156 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="zh">
|
<html lang="zh">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8">
|
<title>添加文章 - {:system_config("title")}后台管理系统</title>
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" />
|
{include file="public/header" /}
|
||||||
<title>CMS - 派后台管理系统</title>
|
<!--标签插件-->
|
||||||
<link rel="icon" href="__ADMIN_PATH__favicon.ico" type="image/ico">
|
<link rel="stylesheet" href="__ADMIN_PATH__js/jquery-tags-input/jquery.tagsinput.min.css">
|
||||||
<meta name="keywords" content="派后台管理系统">
|
|
||||||
<meta name="description" content="派后台管理系统">
|
|
||||||
<meta name="author" content="cfn">
|
|
||||||
<link href="__ADMIN_PATH__css/bootstrap.min.css" rel="stylesheet">
|
|
||||||
<link href="__ADMIN_PATH__css/materialdesignicons.min.css" rel="stylesheet">
|
|
||||||
<link href="__ADMIN_PATH__css/style.min.css" rel="stylesheet">
|
|
||||||
<!--select2-->
|
|
||||||
<link href="__ADMIN_PATH__css/select2.min.css" rel="stylesheet">
|
|
||||||
<!--弹出框-->
|
|
||||||
<link rel="stylesheet" href="__ADMIN_PATH__js/jconfirm/jquery-confirm.min.css">
|
|
||||||
<!--时间选择插件-->
|
|
||||||
<link rel="stylesheet" href="__ADMIN_PATH__js/bootstrap-datetimepicker/bootstrap-datetimepicker.min.css">
|
|
||||||
<style>
|
|
||||||
|
|
||||||
</style>
|
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div class="container-fluid p-t-15">
|
<div class="row">
|
||||||
<div class="row">
|
<div class="col-lg-12">
|
||||||
<div class="col-lg-12">
|
<div class="card">
|
||||||
<div class="card">
|
<div class="card-header">
|
||||||
<div class="card-body">
|
<h4>基本样式</h4>
|
||||||
<form action="#!" method="post" class="row" id="myForm">
|
<ul class="card-actions">
|
||||||
<div class="form-group col-md-12">
|
<li>
|
||||||
<label for="title">文章名称</label>
|
<button type="button" data-toggle="tooltip" title="" data-original-title="返回" onclick="javascript:history.back(-1);return false;">返 回</button>
|
||||||
<input type="text" class="form-control" id="title" name="title" value="" placeholder="文章名称" />
|
</li>
|
||||||
</div>
|
</ul>
|
||||||
<div class="form-group col-md-12">
|
</div>
|
||||||
<label for="category_id">栏目分类</label>
|
<div class="card-body">
|
||||||
<div class="form-controls">
|
<ul id="myTabs" class="nav nav-tabs" role="tablist">
|
||||||
<select name="category_id" class="form-control" id="category_id">
|
<li class="active"><a href="#home" id="home-tab" role="tab" data-toggle="tab">基本信息</a></li>
|
||||||
<option value="0">请选择</option>
|
<li><a href="#profile" role="tab" id="profile-tab" data-toggle="tab">文章设置</a></li>
|
||||||
{volist name="category" id="vo"}
|
</ul>
|
||||||
<option value="{$vo.id}">{$vo.html}{$vo.title}</option>
|
<div id="myTabContent" class="tab-content">
|
||||||
{/volist}
|
<div class="tab-pane fade active in" id="home">
|
||||||
</select>
|
<form action="#!" method="post" class="row add-form" >
|
||||||
|
<div class="form-group col-md-12">
|
||||||
|
<label>文章名称</label>
|
||||||
|
<input type="text" class="form-control" id="title" name="title" value="" placeholder="文章名称" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="form-group col-md-12">
|
||||||
<div class="form-group col-md-12">
|
<label for="category_id">栏目分类</label>
|
||||||
<label for="writer">作者</label>
|
<div class="form-controls">
|
||||||
<input type="text" class="form-control" id="writer" name="writer" value="" placeholder="作者" />
|
<select name="category_id" id="category_id" class="form-control">
|
||||||
</div>
|
<option value="0">请选择</option>
|
||||||
<div class="form-group col-md-12">
|
{volist name="category" id="vo"}
|
||||||
<label for="cover_path">主图</label>
|
<option value="{$vo.id}">{$vo.html}{$vo.title}</option>
|
||||||
<div class="input-group">
|
{/volist}
|
||||||
<input type="text" class="form-control" name="cover_path" id="cover_path" value="" />
|
</select>
|
||||||
<input type="file" id="fileimage" style="display: none;" onchange="upload('cover_path')"/>
|
</div>
|
||||||
<div class="input-group-btn"><button class="btn btn-default" type="button" onclick="btnClick('cover_path')">上传</button></div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="form-group col-md-12">
|
||||||
<div class="form-group row col-md-3">
|
<label for="writer">作者</label>
|
||||||
<div class="col-xs-6">推荐</div>
|
<input type="text" class="form-control" id="writer" name="writer" value="" placeholder="原作者" />
|
||||||
<div class="col-xs-6">
|
|
||||||
<label class="lyear-switch switch-solid switch-primary">
|
|
||||||
<input type="checkbox" name="is_recommend" checked="">
|
|
||||||
<span></span>
|
|
||||||
</label>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="form-group col-md-12">
|
||||||
<div class="form-group row col-md-3">
|
<label>主图</label>
|
||||||
<div class="col-xs-6">热门</div>
|
<div class="form-controls">
|
||||||
<div class="col-xs-6">
|
<ul class="list-inline clearfix lyear-uploads-pic">
|
||||||
<label class="lyear-switch switch-solid switch-primary">
|
<li class="col-xs-4 col-sm-3 col-md-2" id="pic-image" style="display: none;">
|
||||||
<input type="checkbox" name="is_hot" checked="">
|
</li>
|
||||||
<span></span>
|
<li class="col-xs-4 col-sm-3 col-md-2" id="pic-upload">
|
||||||
</label>
|
<input type="hidden" class="form-control" name="cover_path" id="cover_path" value="" />
|
||||||
|
<input type="file" id="file_cover_path" style="display: none;" onchange="upload('cover_path')"/>
|
||||||
|
<a class="pic-add" href="#!" onclick="btnClick('cover_path')" title="上传"></a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="form-group col-md-12">
|
||||||
<div class="form-group row col-md-3">
|
<label for="abstract">摘要</label>
|
||||||
<div class="col-xs-6">顶置</div>
|
<input type="text" class="form-control" name="abstract" id="abstract" placeholder="请输入摘要">
|
||||||
<div class="col-xs-6">
|
|
||||||
<label class="lyear-switch switch-solid switch-primary">
|
|
||||||
<input type="checkbox" name="is_top" checked="">
|
|
||||||
<span></span>
|
|
||||||
</label>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="form-group col-md-12">
|
||||||
<div class="form-group row col-md-3">
|
<label for="abstract">标签</label>
|
||||||
<div class="col-xs-6">显示</div>
|
<input class="form-control js-tags-input" type="text" name="tags" data-height="38px" placeholder="请输入标签">
|
||||||
<div class="col-xs-6">
|
|
||||||
<label class="lyear-switch switch-solid switch-primary">
|
|
||||||
<input type="checkbox" name="display" checked="">
|
|
||||||
<span></span>
|
|
||||||
</label>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="form-group col-md-12">
|
||||||
<div class="form-group col-md-12">
|
<label for="content">文章内容</label>
|
||||||
<label for="abstract">摘要</label>
|
<textarea id="content" name="content"></textarea>
|
||||||
<input type="text" class="form-control" name="abstract" id="abstract" placeholder="请输入摘要">
|
|
||||||
</div>
|
|
||||||
<div class="form-group col-md-12">
|
|
||||||
<label for="content">文章内容</label>
|
|
||||||
<textarea id="content" name="content"></textarea>
|
|
||||||
</div>
|
|
||||||
<div class="form-group col-md-12">
|
|
||||||
<label for="show_time">发布时间</label>
|
|
||||||
<input class="form-control js-datetimepicker" type="text" id="show_time" name="show_time" placeholder="请选择具体时间" value="" data-side-by-side="true" data-locale="zh-cn" data-format="YYYY-MM-DD HH:mm:ss" />
|
|
||||||
</div>
|
|
||||||
<div class="form-group col-md-12">
|
|
||||||
<label>状态</label>
|
|
||||||
<div class="col-xs-6">
|
|
||||||
<label class="lyear-switch switch-solid switch-primary">
|
|
||||||
<input type="checkbox" name="status" checked="">
|
|
||||||
<span></span>
|
|
||||||
</label>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="form-group col-md-12">
|
||||||
<div class="form-group col-md-12">
|
<label for="show_time">发布时间</label>
|
||||||
<label for="keywords">seo关键字</label>
|
<input class="form-control js-datetimepicker" type="text" id="show_time" name="show_time" placeholder="请选择具体时间" value="" data-side-by-side="true" data-locale="zh-cn" data-format="YYYY-MM-DD HH:mm:ss" />
|
||||||
<input type="text" class="form-control" id="keywords" name="keywords" placeholder="请输入seo关键字">
|
</div>
|
||||||
</div>
|
<div class="form-group col-md-12">
|
||||||
<div class="form-group col-md-12">
|
<button type="submit" class="btn btn-primary ajax-post" target-form="add-form">立即提交</button>
|
||||||
<label for="description">seo描述</label>
|
</div>
|
||||||
<input type="text" class="form-control" name="description" id="description" placeholder="seo描述" >
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group col-md-12">
|
<div class="tab-pane fade" id="profile">
|
||||||
<label for="link_str">外链</label>
|
<form action="#!" method="post" class="row add-form">
|
||||||
<input type="text" class="form-control" name="link_str" id="link_str" placeholder="外链">
|
<div class="form-group row col-md-2">
|
||||||
</div>
|
<div class="col-xs-6">推荐</div>
|
||||||
<div class="form-group col-md-12">
|
<div class="col-xs-6">
|
||||||
<button type="submit" class="btn btn-primary ajax-post" target-form="add-form">确 定</button>
|
<label class="lyear-switch switch-solid switch-primary">
|
||||||
</div>
|
<input type="checkbox" name="is_recommend">
|
||||||
</form>
|
<span></span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group row col-md-2">
|
||||||
|
<div class="col-xs-6">热门</div>
|
||||||
|
<div class="col-xs-6">
|
||||||
|
<label class="lyear-switch switch-solid switch-primary">
|
||||||
|
<input type="checkbox" name="is_hot">
|
||||||
|
<span></span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group row col-md-2">
|
||||||
|
<div class="col-xs-6">顶置</div>
|
||||||
|
<div class="col-xs-6">
|
||||||
|
<label class="lyear-switch switch-solid switch-primary">
|
||||||
|
<input type="checkbox" name="is_top">
|
||||||
|
<span></span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group row col-md-2">
|
||||||
|
<div class="col-xs-6">显示</div>
|
||||||
|
<div class="col-xs-6">
|
||||||
|
<label class="lyear-switch switch-solid switch-primary">
|
||||||
|
<input type="checkbox" name="display" checked="">
|
||||||
|
<span></span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group col-md-12">
|
||||||
|
<label for="abstract">排序</label>
|
||||||
|
<input type="text" class="form-control" name="sort" placeholder="请输入排序" value="99">
|
||||||
|
</div>
|
||||||
|
<div class="form-group col-md-12">
|
||||||
|
<label for="link_str">外链</label>
|
||||||
|
<input type="text" class="form-control" name="link_str" id="link_str" placeholder="外链">
|
||||||
|
</div>
|
||||||
|
<div class="form-group col-md-12">
|
||||||
|
<label for="keywords">seo关键字</label>
|
||||||
|
<input type="text" class="form-control" id="keywords" name="keywords" placeholder="请输入seo关键字">
|
||||||
|
</div>
|
||||||
|
<div class="form-group col-md-12">
|
||||||
|
<label for="description">seo描述</label>
|
||||||
|
<input type="text" class="form-control" name="description" id="description" placeholder="seo描述" >
|
||||||
|
</div>
|
||||||
|
<div class="form-group col-md-12">
|
||||||
|
<button type="submit" class="btn btn-primary ajax-post" target-form="add-form">立即提交</button>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<script type="text/javascript" src="__ADMIN_PATH__js/jquery.min.js"></script>
|
{include file="public/footer"/}
|
||||||
<script type="text/javascript" src="__ADMIN_PATH__js/bootstrap.min.js"></script>
|
|
||||||
<script type="text/javascript" src="__ADMIN_PATH__js/main.min.js"></script>
|
|
||||||
<!--弹出框-->
|
|
||||||
<script src="__ADMIN_PATH__js/jconfirm/jquery-confirm.min.js"></script>
|
|
||||||
<!--弹出框架-->
|
|
||||||
<script type="text/javascript" src="__ADMIN_PATH__js/iframe.js"></script>
|
|
||||||
<!--时间选择插件-->
|
|
||||||
<script src="__ADMIN_PATH__js/bootstrap-datetimepicker/moment.min.js"></script>
|
|
||||||
<script src="__ADMIN_PATH__js/bootstrap-datetimepicker/bootstrap-datetimepicker.min.js"></script>
|
|
||||||
<script src="__ADMIN_PATH__js/bootstrap-datetimepicker/locale/zh-cn.js"></script>
|
|
||||||
<!--富文本输入框-->
|
|
||||||
<script src="__ADMIN_PATH__js/tinymce/tinymce.min.js"></script>
|
|
||||||
<!--通知-->
|
|
||||||
<script src="__ADMIN_PATH__js/bootstrap-notify.min.js"></script>
|
|
||||||
<!--select2-->
|
<!--select2-->
|
||||||
<script src="__ADMIN_PATH__js/select2.min.js"></script>
|
<script src="__ADMIN_PATH__js/select2.min.js"></script>
|
||||||
<script type="text/javascript" src="__ADMIN_PATH__js/lightyear.js"></script>
|
<!--富文本输入框-->
|
||||||
|
<script src="__ADMIN_PATH__js/tinymce/tinymce.min.js"></script>
|
||||||
|
<!--标签-->
|
||||||
|
<script src="__ADMIN_PATH__js/jquery-tags-input/jquery.tagsinput.min.js"></script>
|
||||||
<script>
|
<script>
|
||||||
$(function () {
|
$(function () {
|
||||||
$('#tag').select2();
|
$('#tag').select2();
|
||||||
|
|
@ -178,7 +178,7 @@
|
||||||
* @param inputName
|
* @param inputName
|
||||||
*/
|
*/
|
||||||
function btnClick(inputName) {
|
function btnClick(inputName) {
|
||||||
$("#file"+inputName).click()
|
$("#file_"+inputName).click()
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 异步上传
|
* 异步上传
|
||||||
|
|
@ -187,7 +187,7 @@
|
||||||
function upload(inputName) {
|
function upload(inputName) {
|
||||||
var formData = new FormData();
|
var formData = new FormData();
|
||||||
formData.append("type",'images');
|
formData.append("type",'images');
|
||||||
formData.append("file",$("#file"+inputName)[0].files[0]);
|
formData.append("file",$("#file_"+inputName)[0].files[0]);
|
||||||
$.ajax({
|
$.ajax({
|
||||||
type:'POST',
|
type:'POST',
|
||||||
url:'/admin/files/upload',
|
url:'/admin/files/upload',
|
||||||
|
|
@ -196,49 +196,60 @@
|
||||||
processData: false,
|
processData: false,
|
||||||
contentType: false,
|
contentType: false,
|
||||||
success: function (res) {
|
success: function (res) {
|
||||||
if (!Array.isArray(res)) res = jQuery.parseJSON(res);
|
|
||||||
$("#"+inputName).val(res.data.filePath);
|
$("#"+inputName).val(res.data.filePath);
|
||||||
|
let html =' <figure>\n' +
|
||||||
|
' <img src="'+res.data.filePath+'" alt="'+res.data.name+'">\n' +
|
||||||
|
' <figcaption>\n' +
|
||||||
|
' <a class="btn btn-round btn-square btn-danger btn-image-delete" href="#!"><i class="mdi mdi-delete"></i></a>\n' +
|
||||||
|
' </figcaption>\n' +
|
||||||
|
' </figure>';
|
||||||
|
$('#pic-image').html(html);
|
||||||
|
$('#pic-image').show().next('li').hide();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
$("#myForm").submit(function () {
|
$(".add-form").submit(function () {
|
||||||
$category_id = $('#category_id option:selected').val();
|
let Arr = $('.add-form').serializeArray();
|
||||||
$content = tinymce.get('content').getContent();
|
$.each(Arr,function (index,item) {
|
||||||
$show_time = $('#show_time').val();
|
try {
|
||||||
$title = $('#title').val();
|
switch (item.name) {
|
||||||
$abstract = $('#abstract').val();
|
case 'category_id':
|
||||||
$author = $('#author').val();
|
if (!item.value) {
|
||||||
$image = $('#image').val();
|
throw "栏目分类不能为空";
|
||||||
$is_recommend = $('input[name=is_recommend]:radio:checked').val();
|
}
|
||||||
$is_hot = $('input[name=is_hot]:radio:checked').val();
|
break;
|
||||||
$is_top = $('input[name=is_top]:radio:checked').val();
|
case 'title':
|
||||||
var $tag = "";
|
if (!item.value) {
|
||||||
$('#tag option:selected').each(function() {
|
throw "文章名称不能为空";
|
||||||
$tag += $(this).attr("value")+",";
|
}
|
||||||
});
|
break;
|
||||||
$show_time = $('#show_time').val();
|
case 'cover_path':
|
||||||
$status = $('input[name=status]:radio:checked').val();
|
if (!item.value) {
|
||||||
if ($category_id == 0) {lightyear.notify("栏目分类不能为空", 'danger', 3000, 'mdi mdi-emoticon-happy', 'top', 'center');return false;}
|
throw "主图不能为空";
|
||||||
if ($title == '') {lightyear.notify("文章名称不能为空", 'danger', 3000, 'mdi mdi-emoticon-happy', 'top', 'center');return false;}
|
}
|
||||||
if ($author == '') {lightyear.notify("作者不能为空", 'danger', 3000, 'mdi mdi-emoticon-happy', 'top', 'center');return false;}
|
break;
|
||||||
$.post(url="/admin/cms.cms_article/save",data={
|
}
|
||||||
"category_id":$category_id,
|
} catch (error) {
|
||||||
"content":$content,
|
lightyear.notify(error, 'danger', 3000, 'mdi mdi-emoticon-happy', 'top', 'center');
|
||||||
"show_time":$show_time,
|
checkResult = false;
|
||||||
"status":$status,
|
return false;
|
||||||
"is_recommend":$is_recommend,
|
}
|
||||||
"is_hot":$is_hot,
|
})
|
||||||
"is_top":$is_top,
|
// 检验不通过终止执行
|
||||||
"title":$title,
|
if (!checkResult) {
|
||||||
"image":$image,
|
return false;
|
||||||
"tag":$tag,
|
}
|
||||||
"author":$author,
|
$.post(url="/admin/cms.cms_article/save",$('.add-form').serialize(),function (res) {
|
||||||
"abstract":$abstract,
|
|
||||||
},function (res) {
|
|
||||||
if (res.code == 200) {lightyear.notify(res.msg, 'success', 3000, 'mdi mdi-emoticon-happy', 'top', 'center');setTimeout(function () {parent.location.reload()},2000)}
|
if (res.code == 200) {lightyear.notify(res.msg, 'success', 3000, 'mdi mdi-emoticon-happy', 'top', 'center');setTimeout(function () {parent.location.reload()},2000)}
|
||||||
else lightyear.notify(res.msg, 'danger', 3000, 'mdi mdi-emoticon-happy', 'top', 'center');
|
else lightyear.notify(res.msg, 'danger', 3000, 'mdi mdi-emoticon-happy', 'top', 'center');
|
||||||
});
|
});
|
||||||
return false;
|
return true;
|
||||||
|
})
|
||||||
|
|
||||||
|
//删除事件
|
||||||
|
$('body').on('click','.btn-image-delete',function(){
|
||||||
|
$('#pic-image').hide().next('li').show();
|
||||||
|
$('#cover_path').val('');
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
|
|
|
||||||
|
|
@ -1,156 +1,156 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="zh">
|
<html lang="zh">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8">
|
<title>添加文章 - {:system_config("title")}后台管理系统</title>
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" />
|
{include file="public/header" /}
|
||||||
<title>CMS - 派后台管理系统</title>
|
<!--标签插件-->
|
||||||
<link rel="icon" href="__ADMIN_PATH__favicon.ico" type="image/ico">
|
<link rel="stylesheet" href="__ADMIN_PATH__js/jquery-tags-input/jquery.tagsinput.min.css">
|
||||||
<meta name="keywords" content="派后台管理系统">
|
|
||||||
<meta name="description" content="派后台管理系统">
|
|
||||||
<meta name="author" content="cfn">
|
|
||||||
<link href="__ADMIN_PATH__css/bootstrap.min.css" rel="stylesheet">
|
|
||||||
<link href="__ADMIN_PATH__css/materialdesignicons.min.css" rel="stylesheet">
|
|
||||||
<link href="__ADMIN_PATH__css/style.min.css" rel="stylesheet">
|
|
||||||
<!--select2-->
|
|
||||||
<link href="__ADMIN_PATH__css/select2.min.css" rel="stylesheet">
|
|
||||||
<!--弹出框-->
|
|
||||||
<link rel="stylesheet" href="__ADMIN_PATH__js/jconfirm/jquery-confirm.min.css">
|
|
||||||
<!--时间选择插件-->
|
|
||||||
<link rel="stylesheet" href="__ADMIN_PATH__js/bootstrap-datetimepicker/bootstrap-datetimepicker.min.css">
|
|
||||||
<style>
|
|
||||||
|
|
||||||
</style>
|
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div class="container-fluid p-t-15">
|
<div class="row">
|
||||||
<div class="row">
|
<div class="col-lg-12">
|
||||||
<div class="col-lg-12">
|
<div class="card">
|
||||||
<div class="card">
|
<div class="card-header">
|
||||||
<div class="card-body">
|
<h4>基本样式</h4>
|
||||||
<form action="#!" method="post" class="row" id="myForm">
|
<ul class="card-actions">
|
||||||
<div class="form-group col-md-12">
|
<li>
|
||||||
<label for="title">文章名称</label>
|
<button type="button" data-toggle="tooltip" title="" data-original-title="返回" onclick="javascript:history.back(-1);return false;">返 回</button>
|
||||||
<input type="text" class="form-control" id="title" name="title" value="{$info.title}" placeholder="文章名称" />
|
</li>
|
||||||
</div>
|
</ul>
|
||||||
<div class="form-group col-md-12">
|
</div>
|
||||||
<label for="category_id">栏目分类</label>
|
<div class="card-body">
|
||||||
<div class="form-controls">
|
<ul id="myTabs" class="nav nav-tabs" role="tablist">
|
||||||
<select name="category_id" class="form-control" id="category_id">
|
<li class="active"><a href="#home" id="home-tab" role="tab" data-toggle="tab">基本信息</a></li>
|
||||||
<option value="0">请选择</option>
|
<li><a href="#profile" role="tab" id="profile-tab" data-toggle="tab">文章设置</a></li>
|
||||||
{volist name="category" id="vo"}
|
</ul>
|
||||||
<option value="{$vo.id}" {if $vo.id == $info.category_id}selected{/if}>{$vo.html}{$vo.title}</option>
|
<div id="myTabContent" class="tab-content">
|
||||||
{/volist}
|
<div class="tab-pane fade active in" id="home">
|
||||||
</select>
|
<form action="#!" method="post" class="row add-form" >
|
||||||
|
<div class="form-group col-md-12">
|
||||||
|
<label>文章名称</label>
|
||||||
|
<input type="text" class="form-control" id="title" name="title" placeholder="文章名称" value="{$info.title}" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="form-group col-md-12">
|
||||||
<div class="form-group col-md-12">
|
<label for="category_id">栏目分类</label>
|
||||||
<label for="writer">作者</label>
|
<div class="form-controls">
|
||||||
<input type="text" class="form-control" id="writer" name="writer" value="{$info.writer}" placeholder="作者" />
|
<select name="category_id" id="category_id" class="form-control">
|
||||||
</div>
|
<option value="0">请选择</option>
|
||||||
<div class="form-group col-md-12">
|
{volist name="category" id="vo"}
|
||||||
<label for="cover_path">主图</label>
|
<option value="{$vo.id}" {if $vo.id == $info.category_id}selected{/if}>{$vo.html}{$vo.title}</option>
|
||||||
<div class="input-group">
|
{/volist}
|
||||||
<input type="text" class="form-control" name="cover_path" id="cover_path" value="{$info.cover_path}" />
|
</select>
|
||||||
<input type="file" id="fileimage" style="display: none;" onchange="upload('cover_path')"/>
|
</div>
|
||||||
<div class="input-group-btn"><button class="btn btn-default" type="button" onclick="btnClick('cover_path')">上传</button></div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="form-group col-md-12">
|
||||||
<div class="form-group row col-md-3">
|
<label for="writer">作者</label>
|
||||||
<div class="col-xs-6">推荐</div>
|
<input type="text" class="form-control" id="writer" name="writer" placeholder="原作者" value="{$info.writer}"/>
|
||||||
<div class="col-xs-6">
|
|
||||||
<label class="lyear-switch switch-solid switch-primary">
|
|
||||||
<input type="checkbox" name="is_recommend" {if $info.is_recommend = 1}checked{/if}>
|
|
||||||
<span></span>
|
|
||||||
</label>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="form-group col-md-12">
|
||||||
<div class="form-group row col-md-3">
|
<label>主图</label>
|
||||||
<div class="col-xs-6">热门</div>
|
<div class="form-controls">
|
||||||
<div class="col-xs-6">
|
<ul class="list-inline clearfix lyear-uploads-pic">
|
||||||
<label class="lyear-switch switch-solid switch-primary">
|
<li class="col-xs-4 col-sm-3 col-md-2" id="pic-image" style="display: none;">
|
||||||
<input type="checkbox" name="is_hot" {if $info.is_hot = 1}checked{/if}>
|
</li>
|
||||||
<span></span>
|
<li class="col-xs-4 col-sm-3 col-md-2" id="pic-upload">
|
||||||
</label>
|
<input type="hidden" class="form-control" name="cover_path" id="cover_path" value="" />
|
||||||
|
<input type="file" id="file_cover_path" style="display: none;" onchange="upload('cover_path')"/>
|
||||||
|
<a class="pic-add" href="#!" onclick="btnClick('cover_path')" title="上传"></a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="form-group col-md-12">
|
||||||
<div class="form-group row col-md-3">
|
<label for="abstract">摘要</label>
|
||||||
<div class="col-xs-6">顶置</div>
|
<input type="text" class="form-control" name="abstract" id="abstract" placeholder="请输入摘要" value="{$info.abstract}">
|
||||||
<div class="col-xs-6">
|
|
||||||
<label class="lyear-switch switch-solid switch-primary">
|
|
||||||
<input type="checkbox" name="is_top" {if $info.is_top = 1}checked{/if}>
|
|
||||||
<span></span>
|
|
||||||
</label>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="form-group col-md-12">
|
||||||
<div class="form-group row col-md-3">
|
<label for="abstract">标签</label>
|
||||||
<div class="col-xs-6">显示</div>
|
<input class="form-control js-tags-input" type="text" name="tags" data-height="38px" placeholder="请输入标签" value="{$info.tags}">
|
||||||
<div class="col-xs-6">
|
|
||||||
<label class="lyear-switch switch-solid switch-primary">
|
|
||||||
<input type="checkbox" name="display" {if $info.display = 1}checked{/if}>
|
|
||||||
<span></span>
|
|
||||||
</label>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="form-group col-md-12">
|
||||||
<div class="form-group col-md-12">
|
<label for="content">文章内容</label>
|
||||||
<label for="abstract">摘要</label>
|
<textarea id="content" name="content">{$info.content}</textarea>
|
||||||
<input type="text" class="form-control" name="abstract" id="abstract" value="{$info.abstract}">
|
|
||||||
</div>
|
|
||||||
<div class="form-group col-md-12">
|
|
||||||
<label for="content">文章内容</label>
|
|
||||||
<textarea id="content" name="content">{$info.content|html_entity_decode}</textarea>
|
|
||||||
</div>
|
|
||||||
<div class="form-group col-md-12">
|
|
||||||
<label for="show_time">发布时间</label>
|
|
||||||
<input class="form-control js-datetimepicker" type="text" id="show_time" name="show_time" placeholder="请选择具体时间" value="{$info.show_time|date='Y-m-d H:i:s'}" data-side-by-side="true" data-locale="zh-cn" data-format="YYYY-MM-DD HH:mm:ss" />
|
|
||||||
</div>
|
|
||||||
<div class="form-group col-md-12">
|
|
||||||
<label>状态</label>
|
|
||||||
<div class="col-xs-6">
|
|
||||||
<label class="lyear-switch switch-solid switch-primary">
|
|
||||||
<input type="checkbox" name="status" {if $info.status = 1}checked{/if}>
|
|
||||||
<span></span>
|
|
||||||
</label>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="form-group col-md-12">
|
||||||
<div class="form-group col-md-12">
|
<label for="show_time">发布时间</label>
|
||||||
<label for="keywords">seo关键字</label>
|
<input class="form-control js-datetimepicker" type="text" id="show_time" name="show_time" placeholder="请选择具体时间" value="{$info.show_time}" data-side-by-side="true" data-locale="zh-cn" data-format="YYYY-MM-DD HH:mm:ss" />
|
||||||
<input type="text" class="form-control" id="keywords" name="keywords" value="{$info.keywords}">
|
</div>
|
||||||
</div>
|
<div class="form-group col-md-12">
|
||||||
<div class="form-group col-md-12">
|
<button type="submit" class="btn btn-primary ajax-post" target-form="add-form">立即提交</button>
|
||||||
<label for="description">seo描述</label>
|
</div>
|
||||||
<input type="text" class="form-control" name="description" id="description" value="{$info.description}">
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group col-md-12">
|
<div class="tab-pane fade" id="profile">
|
||||||
<label for="link_str">外链</label>
|
<form action="#!" method="post" class="row add-form">
|
||||||
<input type="text" class="form-control" name="link_str" id="link_str" value="{$info.link_str}">
|
<div class="form-group row col-md-2">
|
||||||
</div>
|
<div class="col-xs-6">推荐</div>
|
||||||
<div class="form-group col-md-12">
|
<div class="col-xs-6">
|
||||||
<button type="submit" class="btn btn-primary ajax-post" target-form="add-form">确 定</button>
|
<label class="lyear-switch switch-solid switch-primary">
|
||||||
</div>
|
<input type="checkbox" name="is_recommend" {if $info.is_recommend = 1}checked{/if}>
|
||||||
</form>
|
<span></span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group row col-md-2">
|
||||||
|
<div class="col-xs-6">热门</div>
|
||||||
|
<div class="col-xs-6">
|
||||||
|
<label class="lyear-switch switch-solid switch-primary">
|
||||||
|
<input type="checkbox" name="is_hot" {if $info.is_hot = 1}checked{/if}>
|
||||||
|
<span></span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group row col-md-2">
|
||||||
|
<div class="col-xs-6">顶置</div>
|
||||||
|
<div class="col-xs-6">
|
||||||
|
<label class="lyear-switch switch-solid switch-primary">
|
||||||
|
<input type="checkbox" name="is_top" {if $info.is_top = 1}checked{/if}>
|
||||||
|
<span></span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group row col-md-2">
|
||||||
|
<div class="col-xs-6">显示</div>
|
||||||
|
<div class="col-xs-6">
|
||||||
|
<label class="lyear-switch switch-solid switch-primary">
|
||||||
|
<input type="checkbox" name="display" checked="">
|
||||||
|
<span></span>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group col-md-12">
|
||||||
|
<label for="abstract">排序</label>
|
||||||
|
<input type="text" class="form-control" name="sort" placeholder="请输入排序" value="{$info.sort}">
|
||||||
|
</div>
|
||||||
|
<div class="form-group col-md-12">
|
||||||
|
<label for="link_str">外链</label>
|
||||||
|
<input type="text" class="form-control" name="link_str" id="link_str" placeholder="外链" value="{$info.link_str}">
|
||||||
|
</div>
|
||||||
|
<div class="form-group col-md-12">
|
||||||
|
<label for="keywords">seo关键字</label>
|
||||||
|
<input type="text" class="form-control" id="keywords" name="keywords" placeholder="请输入seo关键字" value="{$info.keywords}">
|
||||||
|
</div>
|
||||||
|
<div class="form-group col-md-12">
|
||||||
|
<label for="description">seo描述</label>
|
||||||
|
<input type="text" class="form-control" name="description" id="description" placeholder="seo描述" value="{$info.description}">
|
||||||
|
</div>
|
||||||
|
<div class="form-group col-md-12">
|
||||||
|
<button type="submit" class="btn btn-primary ajax-post" target-form="add-form">立即提交</button>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<script type="text/javascript" src="__ADMIN_PATH__js/jquery.min.js"></script>
|
{include file="public/footer"/}
|
||||||
<script type="text/javascript" src="__ADMIN_PATH__js/bootstrap.min.js"></script>
|
|
||||||
<script type="text/javascript" src="__ADMIN_PATH__js/main.min.js"></script>
|
|
||||||
<!--弹出框-->
|
|
||||||
<script src="__ADMIN_PATH__js/jconfirm/jquery-confirm.min.js"></script>
|
|
||||||
<!--弹出框架-->
|
|
||||||
<script type="text/javascript" src="__ADMIN_PATH__js/iframe.js"></script>
|
|
||||||
<!--时间选择插件-->
|
|
||||||
<script src="__ADMIN_PATH__js/bootstrap-datetimepicker/moment.min.js"></script>
|
|
||||||
<script src="__ADMIN_PATH__js/bootstrap-datetimepicker/bootstrap-datetimepicker.min.js"></script>
|
|
||||||
<script src="__ADMIN_PATH__js/bootstrap-datetimepicker/locale/zh-cn.js"></script>
|
|
||||||
<!--富文本输入框-->
|
|
||||||
<script src="__ADMIN_PATH__js/tinymce/tinymce.min.js"></script>
|
|
||||||
<!--通知-->
|
|
||||||
<script src="__ADMIN_PATH__js/bootstrap-notify.min.js"></script>
|
|
||||||
<!--select2-->
|
<!--select2-->
|
||||||
<script src="__ADMIN_PATH__js/select2.min.js"></script>
|
<script src="__ADMIN_PATH__js/select2.min.js"></script>
|
||||||
<script type="text/javascript" src="__ADMIN_PATH__js/lightyear.js"></script>
|
<!--富文本输入框-->
|
||||||
|
<script src="__ADMIN_PATH__js/tinymce/tinymce.min.js"></script>
|
||||||
|
<!--标签-->
|
||||||
|
<script src="__ADMIN_PATH__js/jquery-tags-input/jquery.tagsinput.min.js"></script>
|
||||||
<script>
|
<script>
|
||||||
$(function () {
|
$(function () {
|
||||||
$('#tag').select2();
|
$('#tag').select2();
|
||||||
|
|
@ -170,7 +170,7 @@
|
||||||
"code"
|
"code"
|
||||||
],
|
],
|
||||||
toolbar: "insertfile undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image | code",
|
toolbar: "insertfile undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image | code",
|
||||||
images_upload_url: '/admin/widget.files/tinymce',
|
images_upload_url: '/admin/files/tinymce',
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
/**
|
/**
|
||||||
|
|
@ -178,7 +178,7 @@
|
||||||
* @param inputName
|
* @param inputName
|
||||||
*/
|
*/
|
||||||
function btnClick(inputName) {
|
function btnClick(inputName) {
|
||||||
$("#file"+inputName).click()
|
$("#file_"+inputName).click()
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 异步上传
|
* 异步上传
|
||||||
|
|
@ -186,58 +186,70 @@
|
||||||
*/
|
*/
|
||||||
function upload(inputName) {
|
function upload(inputName) {
|
||||||
var formData = new FormData();
|
var formData = new FormData();
|
||||||
formData.append("file",$("#file"+inputName)[0].files[0]);
|
formData.append("type",'images');
|
||||||
|
formData.append("file",$("#file_"+inputName)[0].files[0]);
|
||||||
$.ajax({
|
$.ajax({
|
||||||
type:'POST',
|
type:'POST',
|
||||||
url:'/admin/widget.files/image',
|
url:'/admin/files/upload',
|
||||||
data: formData,
|
data: formData,
|
||||||
cache: false,
|
cache: false,
|
||||||
processData: false,
|
processData: false,
|
||||||
contentType: false,
|
contentType: false,
|
||||||
success: function (res) {
|
success: function (res) {
|
||||||
if (!Array.isArray(res)) res = jQuery.parseJSON(res);
|
|
||||||
$("#"+inputName).val(res.data.filePath);
|
$("#"+inputName).val(res.data.filePath);
|
||||||
|
let html =' <figure>\n' +
|
||||||
|
' <img src="'+res.data.filePath+'" alt="'+res.data.name+'">\n' +
|
||||||
|
' <figcaption>\n' +
|
||||||
|
' <a class="btn btn-round btn-square btn-danger btn-image-delete" href="#!"><i class="mdi mdi-delete"></i></a>\n' +
|
||||||
|
' </figcaption>\n' +
|
||||||
|
' </figure>';
|
||||||
|
$('#pic-image').html(html);
|
||||||
|
$('#pic-image').show().next('li').hide();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
$("#myForm").submit(function () {
|
$(".add-form").submit(function () {
|
||||||
$category_id = $('#category_id option:selected').val();
|
let Arr = $('.add-form').serializeArray();
|
||||||
$content = tinymce.get('content').getContent();
|
$.each(Arr,function (index,item) {
|
||||||
$show_time = $('#show_time').val();
|
try {
|
||||||
$name = $('#name').val();
|
switch (item.name) {
|
||||||
$abstract = $('#abstract').val();
|
case 'category_id':
|
||||||
$author = $('#author').val();
|
if (!item.value) {
|
||||||
$image = $('#image').val();
|
throw "栏目分类不能为空";
|
||||||
$is_recommend = $('input[name=is_recommend]:radio:checked').val();
|
}
|
||||||
$is_hot = $('input[name=is_hot]:radio:checked').val();
|
break;
|
||||||
$is_top = $('input[name=is_top]:radio:checked').val();
|
case 'title':
|
||||||
var $tag = "";
|
if (!item.value) {
|
||||||
$('#tag option:selected').each(function() {
|
throw "文章名称不能为空";
|
||||||
$tag += $(this).attr("value")+",";
|
}
|
||||||
});
|
break;
|
||||||
$show_time = $('#show_time').val();
|
case 'cover_path':
|
||||||
$status = $('input[name=status]:radio:checked').val();
|
if (!item.value) {
|
||||||
if ($category_id == 0) {lightyear.notify("栏目分类不能为空", 'danger', 3000, 'mdi mdi-emoticon-happy', 'top', 'center');return false;}
|
throw "主图不能为空";
|
||||||
if ($name == '') {lightyear.notify("文章名称不能为空", 'danger', 3000, 'mdi mdi-emoticon-happy', 'top', 'center');return false;}
|
}
|
||||||
if ($author == '') {lightyear.notify("作者不能为空", 'danger', 3000, 'mdi mdi-emoticon-happy', 'top', 'center');return false;}
|
break;
|
||||||
$.post(url="/admin/cms.cms_article/save?id={$info.id}",data={
|
}
|
||||||
"category_id":$category_id,
|
} catch (error) {
|
||||||
"content":$content,
|
lightyear.notify(error, 'danger', 3000, 'mdi mdi-emoticon-happy', 'top', 'center');
|
||||||
"show_time":$show_time,
|
checkResult = false;
|
||||||
"status":$status,
|
return false;
|
||||||
"is_recommend":$is_recommend,
|
}
|
||||||
"is_hot":$is_hot,
|
})
|
||||||
"is_top":$is_top,
|
// 检验不通过终止执行
|
||||||
"name":$name,
|
if (!checkResult) {
|
||||||
"image":$image,
|
return false;
|
||||||
"tag":$tag,
|
}
|
||||||
"author":$author,
|
$.post(url="/admin/cms.cms_article/save",$('.add-form').serialize(),function (res) {
|
||||||
"abstract":$abstract,
|
|
||||||
},function (res) {
|
|
||||||
if (res.code == 200) {lightyear.notify(res.msg, 'success', 3000, 'mdi mdi-emoticon-happy', 'top', 'center');setTimeout(function () {parent.location.reload()},2000)}
|
if (res.code == 200) {lightyear.notify(res.msg, 'success', 3000, 'mdi mdi-emoticon-happy', 'top', 'center');setTimeout(function () {parent.location.reload()},2000)}
|
||||||
else lightyear.notify(res.msg, 'danger', 3000, 'mdi mdi-emoticon-happy', 'top', 'center');
|
else lightyear.notify(res.msg, 'danger', 3000, 'mdi mdi-emoticon-happy', 'top', 'center');
|
||||||
});
|
});
|
||||||
return false;
|
return true;
|
||||||
|
})
|
||||||
|
|
||||||
|
//删除事件
|
||||||
|
$('body').on('click','.btn-image-delete',function(){
|
||||||
|
$('#pic-image').hide().next('li').show();
|
||||||
|
$('#cover_path').val('');
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
|
|
|
||||||
|
|
@ -37,7 +37,7 @@
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-toolbar clearfix">
|
<div class="card-toolbar clearfix">
|
||||||
<div class="toolbar-btn-action">
|
<div class="toolbar-btn-action">
|
||||||
<a class="btn btn-primary m-r-5" href="#!" onclick="iframe.createIframe('添加文章','/admin/article/add')"><i class="mdi mdi-plus"></i> 新增</a>
|
<a class="btn btn-primary m-r-5" href="/admin/article/add"><i class="mdi mdi-plus"></i> 新增</a>
|
||||||
<a class="btn btn-warning" href="#!" onclick="delSelect()"><i class="mdi mdi-window-close"></i> 删除</a>
|
<a class="btn btn-warning" href="#!" onclick="delSelect()"><i class="mdi mdi-window-close"></i> 删除</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -124,7 +124,7 @@
|
||||||
title: '操作',
|
title: '操作',
|
||||||
formatter:function (value,row,index) {
|
formatter:function (value,row,index) {
|
||||||
let html ='<a class="btn btn-xs btn-default btn-del" href="#!" title="删除" data-toggle="tooltip" onclick="delOne('+row.id+')"><i class="mdi mdi-window-close"></i></a>\n' +
|
let html ='<a class="btn btn-xs btn-default btn-del" href="#!" title="删除" data-toggle="tooltip" onclick="delOne('+row.id+')"><i class="mdi mdi-window-close"></i></a>\n' +
|
||||||
'<a type="button" class="btn-edit btn btn-xs btn-default m-r-5" onclick="iframe.createIframe(\'编辑文章\',\'/admin/article/edit?id='+row.id+'\')" title="编辑" data-toggle="tooltip"><i class="mdi mdi-pencil"></i></a>';
|
'<a type="button" class="btn-edit btn btn-xs btn-default m-r-5" href="/admin/article/edit?id='+row.id+'" title="编辑" data-toggle="tooltip"><i class="mdi mdi-pencil"></i></a>';
|
||||||
return html;
|
return html;
|
||||||
},
|
},
|
||||||
events : {
|
events : {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue