完成基本框架的搭建

This commit is contained in:
augushong
2021-03-23 19:06:10 +08:00
parent c76cfa3ae1
commit bb714a5333
10 changed files with 153 additions and 162 deletions

View File

@@ -36,22 +36,16 @@ class Login extends Common
});
if(!$validate->check($post_data)){
Session::set('admin_id',1);
return json_message();
return json_message($validate->getError());
}
$model_admin = Admin::where('account',$post_data['account'])->find();
if(empty($model_admin)){
Session::set('admin_id',1);
return json_message();
return json_message('帐号不存在');
}
if($model_admin->getData('password') !== md5($post_data['password'].$model_admin->getData('salt'))){
Session::set('admin_id',1);
return json_message();
return json_message('密码错误');
}

View File

@@ -16,10 +16,23 @@ class Index extends Common
*
* @return \think\Response
*/
public function index()
public function index($post_id = 0)
{
//
$list_post = Post::where('status', 1)->order('sort desc')->select();
if (empty($post_id)) {
$model_post = $list_post->first();
} else {
$model_post = $list_post->where('id', $post_id)->first();
}
View::assign('model_post', $model_post);
View::assign('list_post', $list_post);
return View::fetch();
}

View File

@@ -4,6 +4,7 @@ declare(strict_types=1);
namespace app\model;
use think\facade\App;
use think\Model;
use think\model\concern\SoftDelete;
@@ -136,4 +137,20 @@ class Post extends Model
return get_source_link($value);
}
public function getDemoPageAttr()
{
if (empty($this->getData('tpl_name'))) {
return '';
}
$base_dir = App::getRootPath() . '/demo/';
$file_path = $base_dir . $this->getData('tpl_name') . '.html';
if (!file_exists($file_path)) {
return '';
}
return file_get_contents($file_path);
}
}

6
demo/list.html Normal file
View File

@@ -0,0 +1,6 @@
<fieldset class="layui-elem-field layui-field-title">
<legend>用户列表</legend>
<div class="layui-field-box">
</div>
</fieldset>

24
public/cdn/layui-ul.css Normal file
View File

@@ -0,0 +1,24 @@
.ul-nav-tree{
border-right: 1px solid #bbb;
}
.ul-nav-tree-item{
display: flex;
align-items: baseline;
cursor: pointer;
padding: 5px;
}
.ul-nav-tree-item-title{
font-size: 15px;
}
.ul-nav-tree-item-desc{
font-size: 14px;
color: #999;
margin-left: 15px;
}
.ul-padding-md{
padding: 15px;
}

View File

@@ -39,21 +39,21 @@
<label class="layui-form-label">用户名</label>
<div class="layui-input-block">
<input type="text" name="account" required lay-verify="required"
placeholder="请输入用户名" value="test(直接登陆即可)" autocomplete="off" class="layui-input">
placeholder="请输入用户名" value="" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">密码</label>
<div class="layui-input-block">
<input type="password" name="password" required lay-verify="required"
placeholder="请输入密码" value="test(直接登陆即可)" autocomplete="off" class="layui-input">
placeholder="请输入密码" value="" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">验证码</label>
<div class="layui-input-block">
<input type="text" name="captcha" required lay-verify="required"
placeholder="请输入验证码" autocomplete="off" value="test(直接登陆即可)" class="layui-input">
placeholder="请输入验证码" autocomplete="off" value="" class="layui-input">
<img class="captcha" src="/api/Captcha/build" onclick="this.src = '/api/Captcha/build?v='+Math.random()" style="cursor: pointer;width:
100%;" alt="">
</div>

View File

@@ -139,57 +139,7 @@
<input type="radio" name="status" value="0" title="不发布" checked>
</div>
</div>
<div class="layui-form-item">
<div class="layui-form-label">发表时间</div>
<div class="layui-input-block">
<input type="text" name="publish_time" class="layui-input publish-time">
</div>
</div>
<div class="layui-form-item">
<div class="layui-form-label">分类</div>
<div class="layui-input-block ">
<div class="category-list"></div>
<div class="quick-input-item sm-quick-input-item">
<div class="new-category-option-list">
<select name="" lay-verify="">
<option value="0">选择父分类</option>
</select>
</div>
<div class="">
<input type="text" name="" placeholder="输入新分类名称" id="new-category" class="layui-input">
<div class="layui-btn create-category">新增</div>
</div>
</div>
</div>
</div>
<div class="layui-form-item">
<div class="layui-form-label">标签</div>
<div class="layui-input-block ">
<div class="tag-list">
</div>
<div class="quick-input-item sm-quick-input-item" title="输入新标签,使用空格分隔可一次添加多个标签">
<div class="">
<input type="text" name="" placeholder="输入新标签" autocomplete="off" id="new-tags"
class="layui-input">
<div class="layui-btn create-tags">新增</div>
</div>
</div>
</div>
</div>
<div class="layui-form-item">
<div class="layui-form-label">是否置顶</div>
<div class="layui-input-block">
<input type="radio" name="is_top" value="1" title="置顶">
<input type="radio" name="is_top" value="0" title="不置顶" checked>
</div>
</div>
<div class="layui-form-item">
<div class="layui-form-label">跳转链接</div>
<div class="layui-input-block">
@@ -216,11 +166,7 @@
<div class="layui-form-item">
<div class="layui-form-label">模板</div>
<div class="layui-input-block">
<select name="tpl_name">
{volist name=':config("view_type.post")' id='tpl_name'}
<option value="{$key}">{$tpl_name}</option>
{/volist}
</select>
<input type="text" name="tpl_name" class="layui-input" value="{$post->tpl_name}" id="">
</div>
</div>
</div>

View File

@@ -50,8 +50,7 @@
<div class="layui-form-item">
<div class="layui-form-label">标题</div>
<div class="layui-input-block">
<input type="text" name="title" required lay-verify="required" value="{$post->title}"
class="layui-input">
<input type="text" name="title" required lay-verify="required" value="{$post->title}" class="layui-input">
</div>
</div>
@@ -141,63 +140,11 @@
<input type="radio" name="status" value="0" title="不发布">
</div>
</div>
<div class="layui-form-item">
<div class="layui-form-label">发表时间</div>
<div class="layui-input-block">
<input type="text" name="publish_time" value="{$post->publish_time_datetime}"
class="layui-input publish-time">
</div>
</div>
<div class="layui-form-item">
<div class="layui-form-label">分类</div>
<div class="layui-input-block ">
<div class="category-list"></div>
<div class="quick-input-item sm-quick-input-item">
<div class="new-category-option-list">
<select name="" lay-verify="">
<option value="0">选择父分类</option>
</select>
</div>
<div class="">
<input type="text" name="" placeholder="输入新分类名称" id="new-category" class="layui-input">
<div class="layui-btn create-category">新增</div>
</div>
</div>
</div>
</div>
<div class="layui-form-item">
<div class="layui-form-label">标签</div>
<div class="layui-input-block ">
<div class="tag-list">
</div>
<div class="quick-input-item sm-quick-input-item" title="输入新标签,使用空格分隔可一次添加多个标签">
<div class="">
<input type="text" name="" placeholder="输入新标签" autocomplete="off" id="new-tags"
class="layui-input">
<div class="layui-btn create-tags">新增</div>
</div>
</div>
</div>
</div>
<div class="layui-form-item">
<div class="layui-form-label">是否置顶</div>
<div class="layui-input-block">
<input type="radio" name="is_top" value="1" title="置顶">
<input type="radio" name="is_top" value="0" title="不置顶">
</div>
</div>
<div class="layui-form-item">
<div class="layui-form-label">跳转链接</div>
<div class="layui-input-block">
<input type="text" name="jump_to_url" value="{$post->getData('jump_to_url')}"
class="layui-input">
<input type="text" name="jump_to_url" value="{$post->getData('jump_to_url')}" class="layui-input">
</div>
</div>
@@ -220,11 +167,7 @@
<div class="layui-form-item">
<div class="layui-form-label">模板</div>
<div class="layui-input-block">
<select name="tpl_name">
{volist name=':config("view_type.post")' id='tpl_name'}
<option value="{$key}">{$tpl_name}</option>
{/volist}
</select>
<input type="text" name="tpl_name" class="layui-input" value="{$post->tpl_name}" id="">
</div>
</div>
</div>

View File

@@ -0,0 +1,12 @@
<link rel="stylesheet" href="/static/css/reset.css">
<link rel="stylesheet" href="/static/css/pagination.css">
<link rel="stylesheet" href="/static/lib/layui/css/layui.css">
<link rel="stylesheet" href="/static/css/{$Request.cookie.skin_name|default='skin-1'}.css">
<link rel="stylesheet" href="/static/css/common.css">
<link rel="stylesheet" href="/cdn/layui-ul.css">
<script src="/static/lib/jquery/jquery-3.4.1.min.js"></script>
<script src="/static/lib/jquery/jquery.cookie.js"></script>
<script src="/static/lib/layui/layui.js"></script>
<script src="/static/js/common.js"></script>
{:get_system_config('site_tongji')}

View File

@@ -6,28 +6,64 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>{:get_system_config('site_name')}</title>
{:get_system_config('site_tongji')}
{include file='common/_require'/}
<link rel="stylesheet" href="/static/lib/quill/quill.snow.css">
<style>
.ql-editor {
padding: 15px 0;
}
</style>
</head>
<body>
<textarea id="README" style="display: none">
{:file_get_contents(app()->getRootPath().'README.md')}
</textarea>
<div id="README-PRE" style="max-width: 800px;margin: 0 auto">
<div class="layui-container">
<div class="layui-row ul-padding-md">
<div style="font-size: 22px;">
{:get_system_config('site_name')}
</div>
<div style="font-size: 18px;">
{:get_system_config('site_desc')}
</div>
</div>
<div class="layui-row layui-col-space6 " style="margin-top: 15px;">
<div class="layui-col-md3">
<div class="ul-nav-tree ul-padding-md">
{volist name='list_post' id='post'}
<a href="{:url('Index/index',['post_id'=>$post.id])}" class="ul-nav-tree-item">
<div class="ul-nav-tree-item-title">
{$post.title}
</div>
<div class="ul-nav-tree-item-desc">
{$post.desc}
</div>
</a>
{/volist}
</div>
<script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js"></script>
<script src="https://cdn.bootcss.com/markdown-it/9.1.0/markdown-it.min.js"></script>
</div>
<div class="layui-col-md9">
<div class="main-content ul-padding-md">
<div class="">
<span class="layui-breadcrumb" lay-separator="/">
<a href="{:url('Index/index')}">首页</a>
<a><cite>{$model_post->title}</cite></a>
</span>
</div>
<div class="ql-editor">{$model_post->content_html|raw}</div>
<div class="demo-page">
{$model_post->demo_page|raw}
</div>
</div>
</div>
</div>
</div>
<script>
var md = window.markdownit();
var result = md.render($('#README').val());
$('#README-PRE').html(result)
layui.use(['element'])
</script>
</body>
</html>