Skip to content

Commit 9d43463

Browse files
author
zhangjiangbin
committed
1.加入百度editor,完善文章管理
2.细节优化
1 parent f41eb6a commit 9d43463

288 files changed

Lines changed: 129645 additions & 3 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

app/Http/Controllers/AdminController.php

Lines changed: 105 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
namespace App\Http\Controllers;
44

5+
use App\Http\Models\Article;
56
use App\Http\Models\Config;
67
use App\Http\Models\SsConfig;
78
use App\Http\Models\SsNode;
@@ -460,7 +461,110 @@ public function editNode(Request $request)
460461
}
461462
}
462463

463-
// 删除节点
464+
// 文章列表
465+
public function articleList(Request $request)
466+
{
467+
if (!$request->session()->has('user')) {
468+
return Redirect::to('login');
469+
}
470+
471+
if (!$request->session()->get('user')['is_admin']) {
472+
return Redirect::to('login');
473+
}
474+
475+
$articleList = Article::paginate(10);
476+
477+
$view['articleList'] = $articleList;
478+
479+
return Response::view('admin/articleList', $view);
480+
}
481+
482+
// 添加文章
483+
public function addArticle(Request $request)
484+
{
485+
if (!$request->session()->has('user')) {
486+
return Redirect::to('login');
487+
}
488+
489+
if (!$request->session()->get('user')['is_admin']) {
490+
return Redirect::to('login');
491+
}
492+
493+
if ($request->method() == 'POST') {
494+
$title = $request->get('title');
495+
$content = $request->get('content');
496+
$sort = $request->get('sort');
497+
498+
Article::create([
499+
'title' => $title,
500+
'content' => $content,
501+
'is_del' => 0,
502+
'sort' => $sort
503+
]);
504+
505+
return Response::json(['status' => 'success', 'data' => '', 'message' => '添加成功']);
506+
} else {
507+
return Response::view('admin/addArticle');
508+
}
509+
}
510+
511+
// 编辑节点
512+
public function editArticle(Request $request)
513+
{
514+
if (!$request->session()->has('user')) {
515+
return Redirect::to('login');
516+
}
517+
518+
if (!$request->session()->get('user')['is_admin']) {
519+
return Redirect::to('login');
520+
}
521+
522+
$id = $request->get('id');
523+
if ($request->method() == 'POST') {
524+
$title = $request->get('title');
525+
$sort = $request->get('sort');
526+
$content = $request->get('content');
527+
528+
$data = [
529+
'title' => $title,
530+
'content' => $content,
531+
'sort' => $sort
532+
];
533+
534+
$ret = Article::where('id', $id)->update($data);
535+
if ($ret) {
536+
return Response::json(['status' => 'success', 'data' => '', 'message' => '编辑成功']);
537+
} else {
538+
return Response::json(['status' => 'fail', 'data' => '', 'message' => '编辑失败']);
539+
}
540+
} else {
541+
$view['article'] = Article::where('id', $id)->first();
542+
543+
return Response::view('admin/editArticle', $view);
544+
}
545+
}
546+
547+
// 删除文章
548+
public function delArticle(Request $request)
549+
{
550+
if (!$request->session()->has('user')) {
551+
return Redirect::to('login');
552+
}
553+
554+
if (!$request->session()->get('user')['is_admin']) {
555+
return Redirect::to('login');
556+
}
557+
558+
$id = $request->get('id');
559+
$user = Article::where('id', $id)->update(['is_del' => 1]);
560+
if ($user) {
561+
return Response::json(['status' => 'success', 'data' => '', 'message' => '删除成功']);
562+
} else {
563+
return Response::json(['status' => 'fail', 'data' => '', 'message' => '删除失败']);
564+
}
565+
}
566+
567+
// 删除文章
464568
public function delNode(Request $request)
465569
{
466570
if (!$request->session()->has('user')) {
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
2+
"http://www.w3.org/TR/html4/loose.dtd">
3+
<html>
4+
<head>
5+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
6+
<title></title>
7+
<style type="text/css">
8+
*{color: #838383;margin: 0;padding: 0}
9+
html,body {font-size: 12px;overflow: hidden; }
10+
.content{padding:5px 0 0 15px;}
11+
input{width:210px;height:21px;line-height:21px;margin-left: 4px;}
12+
</style>
13+
</head>
14+
<body>
15+
<div class="content">
16+
<span><var id="lang_input_anchorName"></var></span><input id="anchorName" value="" />
17+
</div>
18+
<script type="text/javascript" src="../internal.js"></script>
19+
<script type="text/javascript">
20+
var anchorInput = $G('anchorName'),
21+
node = editor.selection.getRange().getClosedNode();
22+
if(node && node.tagName == 'IMG' && (node = node.getAttribute('anchorname'))){
23+
anchorInput.value = node;
24+
}
25+
anchorInput.onkeydown = function(evt){
26+
evt = evt || window.event;
27+
if(evt.keyCode == 13){
28+
editor.execCommand('anchor', anchorInput.value);
29+
dialog.close();
30+
domUtils.preventDefault(evt)
31+
}
32+
};
33+
dialog.onok = function (){
34+
editor.execCommand('anchor', anchorInput.value);
35+
dialog.close();
36+
};
37+
$focus(anchorInput);
38+
</script>
39+
</body>
40+
</html>

0 commit comments

Comments
 (0)