bugs修复及代码优化

This commit is contained in:
sunzhenghua
2018-07-26 14:34:44 +08:00
parent fe77fadf02
commit 0cd5d266a8
455 changed files with 102572 additions and 2772 deletions

View File

@@ -1,74 +0,0 @@
@{this.layout = './shared/layoutAdmin'}
<link href="/libs/sweetalert/dist/sweetalert.css" rel="stylesheet"/>
<link href="/libs/blueimp-file-upload/css/jquery.fileupload.css" rel="stylesheet"/>
<div class="row wrapper border-bottom white-bg page-heading">
<div class="col-lg-8">
<h2>@__("admin.aboutmanage.about")</h2>
</div>
</div>
<div class="wrapper wrapper-content animated fadeIn">
<div class="row">
<div class="col-lg-12">
<div class="ibox">
<div class="ibox-content">
<div class="row">
<div class="col-lg-4 col-lg-offset-4">
<div class="about-block">
<form id="formAbout" action="/admin/saveAbout" method="Post">
<div class="widget-head-color-box navy-bg p-lg text-center">
<div class="m-b-md">
<input id="FirstLine" type="text" name="FirstLine" placeholder='__("admin.aboutmanage.line_1")' value="@about.FirstLine" class="form-group form-control text-center"/>
<input id="SecondLine" type="text" name="SecondLine" placeholder='@__("admin.aboutmanage.line_2")' value="@about.SecondLine" class="form-control text-center"/>
</div>
<span class="fileinput-button">
<img alt="profile" src="@about.PhotoPath" class="img-circle profile-img m-b-md"/>
<input type="file" name="file" class="fileupload"/>
<input id="PhotoPath" type="hidden" name="PhotoPath" value="@about.PhotoPath"/>
</span>
<span class="fileinput-button">
<img alt="wechat" src="@about.QrcodePath" style="width:100px;height:100px;" class="wechat-img m-b-md"/>
<input type="file" name="file" class="fileupload"/>
<input id="QrcodePath" type="hidden" name="QrcodePath" value="@about.QrcodePath"/>
</span>
<h4>
<span id="job-title">
<textarea id="ThirdLine" name="ThirdLine" placeholder='@__("admin.aboutmanage.line_3")' class="form-control">@this.raw(about.ThirdLine)</textarea>
</span>
</h4>
</div>
<div class="widget-text-box">
<p>
<textarea id="Profile" name="Profile" cols="3" placeholder='@__("admin.aboutmanage.self_intro")' class="form-control">@this.raw(about.Profile)</textarea>
</p>
<div class="row form-inline">
<div class="col-md-6">
<i class="fa fa-wechat"></i>
<input id="Wechat" type="text" name="Wechat" placeholder='@__("admin.aboutmanage.wechat")' value="@about.Wechat" class="form-control"/>
</div>
<div class="col-md-6">
<i class="fa fa-envelope"></i>
<input id="Email" type="text" name="Email" placeholder='@__("admin.aboutmanage.email")' value="@about.Email" class="form-control"/>
</div>
</div>
</div>
<button id="btnSave" type="button" class="btn btn-primary pull-right m-t-sm">
<i class="fa fa-cloud-upload"></i> @__("admin.aboutmanage.save")
</button>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript" src="/libs/jquery/dist/jquery.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/bootstrap/dist/js/bootstrap.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/metisMenu/dist/metisMenu.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/admin.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/blueimp-file-upload/js/vendor/jquery.ui.widget.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/blueimp-file-upload/js/jquery.fileupload.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/sweetalert/dist/sweetalert.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/aboutmanage.js" charset="utf-8"></script>

View File

@@ -0,0 +1,53 @@
extends ../shared/layoutAdmin
block content
link(href='/static/blueimp-file-upload/css/jquery.fileupload.css', rel='stylesheet')
link(href='/static/sweetalert/dist/sweetalert.css', rel='stylesheet')
.row.wrapper.border-bottom.white-bg.page-heading
.col-lg-8
h2=__("admin.aboutmanage.about")
.wrapper.wrapper-content.animated.fadeIn
.row
.col-lg-12
.ibox
.ibox-content
.row
.col-lg-4.col-lg-offset-4
.about-block
form#formAbout(action='/admin/saveAbout', method='Post')
.widget-head-color-box.navy-bg.p-lg.text-center
.m-b-md
input#FirstLine.form-group.form-control.text-center(type='text', name='FirstLine', placeholder=__("admin.aboutmanage.line_1"), value=about.FirstLine)
input#SecondLine.form-control.text-center(type='text', name='SecondLine', placeholder=__("admin.aboutmanage.line_2"), value=about.SecondLine)
span.fileinput-button
img.img-circle.profile-img.m-b-md(alt='profile', src=about.PhotoPath)
input.fileupload(type='file', name='file')
input#PhotoPath(type='hidden', name='PhotoPath', value=about.PhotoPath)
h4
span#job-title
textarea#ThirdLine.form-control(name='ThirdLine', placeholder=__("admin.aboutmanage.line_3"))
!=about.ThirdLine
.widget-text-box
p
textarea#Profile.form-control(name='Profile', cols='3', placeholder=__("admin.aboutmanage.self_intro"))
!=about.Profile
.row.form-inline
.col-md-6
i.fab.fa-github
=' '
input#Github.form-control(type='text', name='Github', placeholder=__("admin.aboutmanage.github"), value=about.Github)
=' '
.col-md-6
i.fa.fa-envelope
=' '
input#Email.form-control(type='text', name='Email', placeholder=__("admin.aboutmanage.email"), value=about.Email)
button#btnSave.btn.btn-primary.pull-right.m-t-sm(type='button')
i.fa.fa-cloud-upload
| #{__("admin.aboutmanage.save")}
script(type='text/javascript', src='/static/jquery/dist/jquery.min.js', charset='utf-8')
script(type='text/javascript', src='/static/bootstrap/dist/js/bootstrap.min.js', charset='utf-8')
script(type='text/javascript', src='/static/metisMenu/dist/metisMenu.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/admin.js', charset='utf-8')
script(type='text/javascript', src='/static/blueimp-file-upload/js/vendor/jquery.ui.widget.js', charset='utf-8')
script(type='text/javascript', src='/static/blueimp-file-upload/js/jquery.fileupload.js', charset='utf-8')
script(type='text/javascript', src='/static/sweetalert/dist/sweetalert.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/aboutmanage.js', charset='utf-8')

View File

@@ -1,38 +0,0 @@
@{this.layout = './shared/layoutAdmin'}
<link href="/libs/bootstrap-table/dist/bootstrap-table.min.css" rel="stylesheet"/>
<link href="/libs/sweetalert/dist/sweetalert.css" rel="stylesheet"/>
<div class="row wrapper border-bottom white-bg page-heading">
<div class="col-lg-8">
<h2>@__("admin.articlemanage.post")</h2>
</div>
</div>
<div class="wrapper wrapper-content animated fadeIn">
<div class="row">
<div class="col-lg-12">
<div class="ibox">
<div class="ibox-content">
<div id="toolbar">
<button id="remove" disabled="" class="btn btn-white">
<i class="fa fa-trash-o"></i> <span class="badge"></span>
</button>
<a href="/admin/newarticle" class="btn btn-white">
<i class="fa fa-plus"></i> @__("admin.articlemanage.new_article")
</a>
</div>
<table id="articles"></table>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript" src="/libs/jquery/dist/jquery.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/bootstrap/dist/js/bootstrap.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/metisMenu/dist/metisMenu.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/admin.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/bootstrap-table/dist/bootstrap-table.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/bootstrap-table/dist/extensions/filter-control/bootstrap-table-filter-control.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/bootstrap-table/dist/locale/bootstrap-table-zh-CN.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/lodash/dist/lodash.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/sweetalert/dist/sweetalert.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/articlemanage.js" charset="utf-8"></script>

View File

@@ -0,0 +1,32 @@
extends ../shared/layoutAdmin
block content
link(href='/static/libs/bootstrap-table/dist/bootstrap-table.min.css', rel='stylesheet')
link(href='/static/sweetalert/dist/sweetalert.css', rel='stylesheet')
.row.wrapper.border-bottom.white-bg.page-heading
.col-lg-8
h2 #{__("admin.articlemanage.post")}
.wrapper.wrapper-content.animated.fadeIn
.row
.col-lg-12
.ibox
.ibox-content
#toolbar
button#remove.btn.btn-white(disabled='')
i.far.fa-trash-alt
=' '
span.badge
=' '
a.btn.btn-white(href='/admin/newarticle')
i.fa.fa-plus
| #{__("admin.articlemanage.new_article")}
table#articles
script(type='text/javascript', src='/static/jquery/dist/jquery.min.js', charset='utf-8')
script(type='text/javascript', src='/static/bootstrap/dist/js/bootstrap.min.js', charset='utf-8')
script(type='text/javascript', src='/static/metisMenu/dist/metisMenu.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/admin.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/bootstrap-table/dist/bootstrap-table.min.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/bootstrap-table/dist/extensions/filter-control/bootstrap-table-filter-control.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/bootstrap-table/dist/locale/bootstrap-table-zh-CN.min.js', charset='utf-8')
script(type='text/javascript', src='/static/lodash/lodash.min.js', charset='utf-8')
script(type='text/javascript', src='/static/sweetalert/dist/sweetalert.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/articlemanage.js', charset='utf-8')

View File

@@ -1,71 +0,0 @@
@{this.layout = './shared/layoutAdmin'}
<link href="/libs/fuelux/dist/css/fuelux.min.css" rel="stylesheet"/>
<link href="/libs/sweetalert/dist/sweetalert.css" rel="stylesheet"/>
<div class="row wrapper border-bottom white-bg page-heading">
<div class="col-lg-8">
<h2>@__("admin.cachemanage.cache")</h2>
</div>
</div>
<div class="wrapper wrapper-content animated fadeIn">
<div class="row">
<div class="col-md-6 col-md-offset-3">
<div class="ibox m-t-xl">
<div class="row">
<div class="col-md-10">
<div id="keyinput" data-initialize="combobox" class="input-group input-append dropdown combobox">
<input id="cacheKey" type="text" placeholder='@__("admin.cachemanage.cache_key")' class="form-control"/>
<div class="input-group-btn">
<button type="button" data-toggle="dropdown" class="btn btn-white dropdown-toggle"><span class="caret"></span></button>
<ul style="left:auto;" class="dropdown-menu dropdown-menu-right">
<li data-value="categories">
<a href="#">@__("admin.cachemanage.li_1")</a>
</li>
<li data-value="categories_all">
<a href="#">@__("admin.cachemanage.li_2")</a>
</li>
<li data-value="category_分类alias">
<a href="#">@__("admin.cachemanage.li_3")</a>
</li>
<li data-value="posts_cateid_分类id_pageindex_页码_pagesize_每页条数_sortby_排序类型_keyword_关键字_filtertype_查询类型">
<a href="#">@__("admin.cachemanage.li_4")</a>
</li>
<li data-value="posts_count_cateid_分类id_pageindex_页码_pagesize_每页条数_sortby_排序类型_keyword_关键字_filtertype_查询类型">
<a href="#">@__("admin.cachemanage.li_5")</a>
</li>
<li data-value="article_文章alias">
<a href="#">@__("admin.cachemanage.li_6")</a>
</li>
</ul>
</div>
</div>
</div>
<div class="col-md-2 text-right">
<button id="btnQuery" type="button" class="btn btn-white">
<i class="fa fa-search"></i> @__("admin.cachemanage.search_cache")
</button>
</div>
</div>
<div class="row">
<div class="col-md-12">
<textarea id="cacheContent" rows="20" style="max-width:100%;min-width:100%;" class="form-control m-t-sm"></textarea>
</div>
</div>
<div class="row">
<div class="col-md-12 text-right">
<button id="btnClear" type="button" class="btn btn-primary m-t-sm">
<i class="fa fa-times"></i> @__("admin.cachemanage.clear_cache")
</button>
</div>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript" src="/libs/jquery/dist/jquery.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/bootstrap/dist/js/bootstrap.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/metisMenu/dist/metisMenu.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/admin.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/fuelux/dist/js/fuelux.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/sweetalert/dist/sweetalert.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/cachemanage.js" charset="utf-8"></script>

View File

@@ -0,0 +1,50 @@
extends ../shared/layoutAdmin
block content
link(href='/static/fuelux/dist/css/fuelux.min.css', rel='stylesheet')
link(href='/static/sweetalert/dist/sweetalert.css', rel='stylesheet')
.row.wrapper.border-bottom.white-bg.page-heading
.col-lg-8
h2=__("admin.cachemanage.cache")
.wrapper.wrapper-content.animated.fadeIn
.row
.col-md-6.col-md-offset-3
.ibox.m-t-xl
.row
.col-md-10
#keyinput.input-group.input-append.dropdown.combobox(data-initialize='combobox')
input#cacheKey.form-control(type='text', placeholder=__("admin.cachemanage.cache_key"))
.input-group-btn
button.btn.btn-white.dropdown-toggle(type='button', data-toggle='dropdown')
span.caret
ul.dropdown-menu.dropdown-menu-right(style='left:auto;')
li(data-value='categories')
a(href='#')=__("admin.cachemanage.li_1")
li(data-value='categories_all')
a(href='#')=__("admin.cachemanage.li_2")
li(data-value='category_分类alias')
a(href='#')=__("admin.cachemanage.li_3")
li(data-value='posts_cateid_分类id_pageindex_页码_pagesize_每页条数_sortby_排序类型_keyword_关键字_filtertype_查询类型')
a(href='#')=__("admin.cachemanage.li_4")
li(data-value='posts_count_cateid_分类id_pageindex_页码_pagesize_每页条数_sortby_排序类型_keyword_关键字_filtertype_查询类型')
a(href='#')=__("admin.cachemanage.li_5")
li(data-value='article_文章alias')
a(href='#')=__("admin.cachemanage.li_6")
.col-md-2.text-right
button#btnQuery.btn.btn-white(type='button')
i.fa.fa-search
| #{__("admin.cachemanage.search_cache")}
.row
.col-md-12
textarea#cacheContent.form-control.m-t-sm(rows='20', style='max-width:100%;min-width:100%;')
.row
.col-md-12.text-right
button#btnClear.btn.btn-primary.m-t-sm(type='button')
i.fa.fa-times
| #{__("admin.cachemanage.clear_cache")}
script(type='text/javascript', src='/static/jquery/dist/jquery.min.js', charset='utf-8')
script(type='text/javascript', src='/static/bootstrap/dist/js/bootstrap.min.js', charset='utf-8')
script(type='text/javascript', src='/static/metisMenu/dist/metisMenu.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/admin.js', charset='utf-8')
script(type='text/javascript', src='/static/fuelux/dist/js/fuelux.min.js', charset='utf-8')
script(type='text/javascript', src='/static/sweetalert/dist/sweetalert.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/cachemanage.js', charset='utf-8')

View File

@@ -1,37 +0,0 @@
@{this.layout = './shared/layoutAdmin'}
<link href="/libs/fuelux/dist/css/fuelux.min.css" rel="stylesheet"/>
<link href="/libs/sweetalert/dist/sweetalert.css" rel="stylesheet"/>
<link href="/libs/blueimp-file-upload/css/jquery.fileupload.css" rel="stylesheet"/>
<div class="row wrapper border-bottom white-bg page-heading">
<div class="col-lg-8">
<h2>@__("admin.categorymanage.category")</h2>
</div>
</div>
<div class="wrapper wrapper-content animated fadeIn">
<div class="row">
<div class="col-md-10 col-md-offset-1">
<div class="ibox">
<div>
<ul id="cate-list" class="list-group list-unstyled"></ul>
<button id="btnNew" class="btn btn-white">
<i class="fa fa-plus"></i> @__("admin.categorymanage.new_category")
</button>
<button id="btnSave" class="btn btn-primary pull-right">
<i class="fa fa-cloud-upload"></i> @__("admin.categorymanage.save")
</button>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript" src="/libs/jquery/dist/jquery.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/bootstrap/dist/js/bootstrap.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/metisMenu/dist/metisMenu.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/admin.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/fuelux/dist/js/fuelux.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/jquery-sortable/source/js/jquery-sortable-min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/blueimp-file-upload/js/vendor/jquery.ui.widget.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/blueimp-file-upload/js/jquery.fileupload.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/sweetalert/dist/sweetalert.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/categorymanage.js" charset="utf-8"></script>

View File

@@ -0,0 +1,30 @@
extends ../shared/layoutAdmin
block content
link(href='/static/fuelux/dist/css/fuelux.min.css', rel='stylesheet')
link(href='/static/blueimp-file-upload/css/jquery.fileupload.css', rel='stylesheet')
link(href='/static/sweetalert/dist/sweetalert.css', rel='stylesheet')
.row.wrapper.border-bottom.white-bg.page-heading
.col-lg-8
h2=__("admin.categorymanage.category")
.wrapper.wrapper-content.animated.fadeIn
.row
.col-md-10.col-md-offset-1
.ibox
div
ul#cate-list.list-group.list-unstyled
button#btnNew.btn.btn-white
i.fa.fa-plus
| #{__("admin.categorymanage.new_category")}
button#btnSave.btn.btn-primary.pull-right
i.fa.fa-cloud-upload-alt
| #{__("admin.categorymanage.save")}
script(type='text/javascript', src='/static/jquery/dist/jquery.min.js', charset='utf-8')
script(type='text/javascript', src='/static/bootstrap/dist/js/bootstrap.min.js', charset='utf-8')
script(type='text/javascript', src='/static/metisMenu/dist/metisMenu.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/admin.js', charset='utf-8')
script(type='text/javascript', src='/static/fuelux/dist/js/fuelux.min.js', charset='utf-8')
script(type='text/javascript', src='/static/jquery-sortable/source/js/jquery-sortable-min.js', charset='utf-8')
script(type='text/javascript', src='/static/blueimp-file-upload/js/vendor/jquery.ui.widget.js', charset='utf-8')
script(type='text/javascript', src='/static/blueimp-file-upload/js/jquery.fileupload.js', charset='utf-8')
script(type='text/javascript', src='/static/sweetalert/dist/sweetalert.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/categorymanage.js', charset='utf-8')

View File

@@ -1,22 +0,0 @@
@{this.layout = './shared/layoutAdmin'}
<div class="row wrapper border-bottom white-bg page-heading">
<div class="col-lg-8">
<h2>@__("admin.comments.comments")</h2>
</div>
</div>
<div class="wrapper wrapper-content animated fadeIn">
<div class="row">
<div class="col-lg-12">
<div class="ibox">
<div class="ibox-content">
<iframe src="http://changyan.kuaizhan.com/audit/comments/AUDITED/1" style="width: 100%; min-height: 4000px; border: none;"></iframe>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript" src="/libs/jquery/dist/jquery.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/bootstrap/dist/js/bootstrap.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/metisMenu/dist/metisMenu.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/admin.js" charset="utf-8"></script>

15
views/admin/comments.pug Normal file
View File

@@ -0,0 +1,15 @@
extends ../shared/layoutAdmin
block content
.row.wrapper.border-bottom.white-bg.page-heading
.col-lg-8
h2=__("admin.comments.comments")
.wrapper.wrapper-content.animated.fadeIn
.row
.col-lg-12
.ibox
.ibox-content
iframe(src='http://changyan.kuaizhan.com/audit/comments/AUDITED/1', style='width: 100%; min-height: 4000px; border: none;')
script(type='text/javascript', src='/static/jquery/dist/jquery.min.js', charset='utf-8')
script(type='text/javascript', src='/static/bootstrap/dist/js/bootstrap.min.js', charset='utf-8')
script(type='text/javascript', src='/static/metisMenu/dist/metisMenu.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/admin.js', charset='utf-8')

View File

@@ -1,136 +0,0 @@
@{this.layout = './shared/layoutAdmin'}
<link href="/libs/fuelux/dist/css/fuelux.min.css" rel="stylesheet"/>
<link href="/libs/sweetalert/dist/sweetalert.css" rel="stylesheet"/>
<link href="/libs/form.validation/dist/css/formValidation.min.css" rel="stylesheet"/>
<div class="row wrapper border-bottom white-bg page-heading">
<div class="col-lg-8">
<h2>@__("admin.editarticle.edit")</h2>
</div>
</div>
<div class="wrapper wrapper-content animated fadeIn">
<div class="row">
<div class="col-lg-12">
<div class="ibox">
<div class="ibox-content">
<form id="postForm" action="/admin/saveArticle" method="post">
<div class="row">
<div class="col-md-9">
<div class="form-group">
<label for="Title">@__("admin.editarticle.title")</label>
<input id="Title" type="text" name="Title" placeholder='@__("admin.editarticle.enter_title")' class="form-control" value="@post.Title"/>
</div>
</div>
<div class="col-md-3">
<div class="form-group">
<label for="CategoryId" style="display:block;">@__("admin.editarticle.category")</label>
<div id="Categorylist" data-resize="auto" data-initialize="selectlist" class="btn-group selectlist">
<button data-toggle="dropdown" type="button" class="btn btn-white dropdown-toggle"><span class="selected-label"></span><span class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
<ul role="menu" class="dropdown-menu"></ul>
<input id="CategoryId" type="text" name="CategoryId" readonly="readonly" aria-hidden="true" class="hidden hidden-field" value="@post.CategoryId"/>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-9">
<div class="form-group">
<label for="Alias">Alias</label>
<input id="Alias" type="text" name="Alias" placeholder='@__("admin.editarticle.enter_alias")' class="form-control" value="@post.Alias"/>
</div>
</div>
<div class="col-md-3">
<div class="form-group">
<button type="button" class="btn btn-sm btn-white btn-alias">
<i class="fa fa-flash"></i> @__("admin.editarticle.auto_generate")
</button>
</div>
</div>
</div>
<div class="form-group">
<label for="Summary">@__("admin.editarticle.summary")</label>
<textarea id="Summary" name="Summary" style="min-width: 100%;max-width: 100%;" placeholder='@__("admin.editarticle.enter_summary")' class="form-control">@this.raw(post.Summary)</textarea>
</div>
<div class="form-group">
<label style="display:block;">@__("admin.editarticle.source")</label>
<label id="soruceLocal" data-initialize="radio" class="radio-custom radio-inline">
<input data-toggle="#block-local" name="Source" type="radio" value="0" checked="checked" class="sr-only"/> @__("admin.editarticle.local")
</label>
<label id="soruceLink" data-initialize="radio" class="radio-custom radio-inline">
<input data-toggle="#block-link" name="Source" type="radio" value="1" class="sr-only"/> @__("admin.editarticle.url")
</label>
</div>
<div id="block-local">
<div class="form-group">
<label for="pillbox-input">@__("admin.editarticle.tag")</label>
<div id="myPillbox" data-initialize="pillbox" class="pillbox">
<ul class="clearfix pill-group">
<li class="pillbox-input-wrap btn-group"><a class="pillbox-more">and<span class="pillbox-more-count"></span> more...</a>
<input id="pillbox-input" type="text" placeholder='@__("admin.editarticle.enter_to_add")' class="form-control dropdown-toggle pillbox-add-item"/>
<button type="button" class="dropdown-toggle sr-only"><span class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
<ul role="menu" data-toggle="dropdown" data-flip="auto" class="suggest dropdown-menu"></ul>
</li>
</ul>
</div>
<input id="Labels" type="hidden" name="Labels" value="@post.Labels"/>
</div>
<div class="form-group">
<label>@__("admin.editarticle.article")</label>
<script id="editor" type="text/plain">@this.raw(post.Content)</script>
</div>
</div>
<div id="block-link">
<div class="form-group">
<label for="Url">Url</label>
<input id="Url" type="text" name="Url" placeholder='@__("admin.editarticle.enter_url")' class="form-control" value="@post.Url"/>
</div>
</div>
<div>
@if(!post.IsDraft) {
<button id="btnUpdate" type="submit" class="btn btn-primary">
<i class="fa fa-cloud-upload"></i> @__("admin.editarticle.update")
</button>
<a href="/admin/articlemanage" class="btn btn-white">
<i class="fa fa-reply"></i> @__("admin.editarticle.back")
</a>
} else {
<button id="btnPublish" type="submit" class="btn btn-danger">
<i class="fa fa-send"></i> @__("admin.editarticle.publish")
</button>
<button id="btnSave" type="button" class="btn btn-primary">
<i class="fa fa-save"></i> @__("admin.editarticle.save_draft")
</button>
<a href="/admin/articlemanage" class="btn btn-white">
<i class="fa fa-reply"></i> @__("admin.editarticle.back")
</a>
}
<input id="UniqueId" type="hidden" name="UniqueId" value="@post._id"/>
<input id="IsDraft" type="hidden" name="IsDraft" value='@(post.IsDraft ? "True" : "False")'/>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript" src="/libs/jquery/dist/jquery.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/bootstrap/dist/js/bootstrap.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/form.validation/dist/js/formValidation.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/form.validation/dist/js/framework/bootstrap.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/form.validation/dist/js/language/zh_CN.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/metisMenu/dist/metisMenu.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/admin.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/ueditor/ueditor.config.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/ueditor/ueditor.all.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/ueditor/dialogs/insertalert/insertalert.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/ueditor/dialogs/inserticon/inserticon.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/ueditor/dialogs/insertlabel/insertlabel.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/fuelux/dist/js/fuelux.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/sweetalert/dist/sweetalert.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/js-md5/js/md5.min.js" charset="utf-8"></script>
<script>
var categoryId = '@post.CategoryId';
var source = '@post.Source';
var translateKey = '@config.TranslateKey';
</script>
<script type="text/javascript" src="/javascripts/editarticle.js" charset="utf-8"></script>

135
views/admin/editarticle.pug Normal file
View File

@@ -0,0 +1,135 @@
extends ../shared/layoutAdmin
block content
link(href='/static/fuelux/dist/css/fuelux.min.css', rel='stylesheet')
link(href='/static/libs/form.validation/dist/css/formValidation.min.css', rel='stylesheet')
link(href='/static/sweetalert/dist/sweetalert.css', rel='stylesheet')
link(href='https://cdn.bootcss.com/highlight.js/9.12.0/styles/github.min.css', rel='stylesheet')
link(href='/static/simplemde/dist/simplemde.min.css', rel='stylesheet')
.row.wrapper.border-bottom.white-bg.page-heading
.col-lg-8
h2=__("admin.editarticle.edit")
.wrapper.wrapper-content.animated.fadeIn
.row
.col-lg-12
.ibox
.ibox-content
form#postForm(action='/admin/saveArticle', method='post')
.row
.col-md-9
.form-group
label(for='Title')=__("admin.editarticle.title")
input#Title.form-control(type='text', name='Title', placeholder=__("admin.editarticle.enter_title"), value=post.Title)
.col-md-3
.form-group
label(for='CategoryId', style='display:block;')=__("admin.editarticle.category")
#Categorylist.btn-group.selectlist(data-resize='auto', data-initialize='selectlist')
button.btn.btn-white.dropdown-toggle(data-toggle='dropdown', type='button')
span.selected-label
span.caret
span.sr-only Toggle Dropdown
ul.dropdown-menu(role='menu')
input#CategoryId.hidden.hidden-field(type='text', name='CategoryId', readonly='readonly', aria-hidden='true',value=post.CategoryId)
.row
.col-md-9
.form-group
label(for='Alias') Alias
input#Alias.form-control(type='text', name='Alias', placeholder=__("admin.editarticle.enter_alias"), value=post.Alias)
.col-md-3
.form-group
button.btn.btn-sm.btn-white.btn-alias(type='button')
i.fa.fa-flash
| #{__("admin.editarticle.auto_generate")}
.form-group
label(for='Summary')=__("admin.editarticle.summary")
textarea#Summary.form-control(name='Summary', style='min-width: 100%;max-width: 100%;', placeholder=__("admin.editarticle.enter_summary"))
!=post.Summary
.form-group
label(style='display:block;')=__("admin.editarticle.source")
label#soruceLocal.radio-custom.radio-inline(data-initialize='radio')
input.sr-only(data-toggle='#block-local', name='Source', type='radio', value='0', checked='checked')
| #{__("admin.editarticle.local")}
label#soruceLink.radio-custom.radio-inline(data-initialize='radio')
input.sr-only(data-toggle='#block-link', name='Source', type='radio', value='1')
| #{__("admin.editarticle.url")}
#block-local
.form-group
label(for='pillbox-input')=__("admin.editarticle.tag")
#myPillbox.pillbox(data-initialize='pillbox')
ul.clearfix.pill-group
li.pillbox-input-wrap.btn-group
a.pillbox-more
| and
span.pillbox-more-count
| more...
input#pillbox-input.form-control.dropdown-toggle.pillbox-add-item(type='text', placeholder=__("admin.editarticle.enter_to_add"))
button.dropdown-toggle.sr-only(type='button')
span.caret
span.sr-only Toggle Dropdown
ul.suggest.dropdown-menu(role='menu', data-toggle='dropdown', data-flip='auto')
input#Labels(type='hidden', name='Labels',value=post.Labels)
.form-group
label=__("admin.editarticle.article")
.form-group
label#ueRadio.radio-custom.radio-inline(data-initialize='radio')
input.sr-only(name='ContentType', type='radio', value='')
| UEditor
label#mdRadio.radio-custom.radio-inline(data-initialize='radio')
input.sr-only(name='ContentType', type='radio', value='markdown')
| Markdown
script#editor(type='text/plain')
!=post.Content
#mdEditor
textarea
!=post.Content
#block-link
.form-group
label(for='Url') Url
input#Url.form-control(type='text', name='Url', placeholder=__("admin.editarticle.enter_url"), value=post.Url)
div
if(!post.IsDraft)
button#btnUpdate.btn.btn-primary(type='submit')
i.fa.fa-cloud-upload
| #{__("admin.editarticle.update")}
=' '
a.btn.btn-white(href='/admin/articlemanage')
i.fa.fa-reply
| #{__("admin.editarticle.back")}
else
button#btnPublish.btn.btn-danger(type='submit')
i.fa.fa-send
| #{__("admin.editarticle.publish")}
=' '
button#btnSave.btn.btn-primary(type='button')
i.fa.fa-save
| #{__("admin.editarticle.save_draft")}
=' '
a.btn.btn-white(href='/admin/articlemanage')
i.fa.fa-reply
| #{__("admin.editarticle.back")}
input#UniqueId(type='hidden',name='UniqueId',value=post._id)
input#IsDraft(type='hidden',name='IsDraft',value=`${post.IsDraft ? "True" : "False"}`)
input#IsActive(type='hidden',name='IsActive',value=`${post.IsActive ? "True" : "False"}`)
#editSection
script(type='text/javascript', src='/static/jquery/dist/jquery.min.js', charset='utf-8')
script(type='text/javascript', src='/static/bootstrap/dist/js/bootstrap.min.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/form.validation/dist/js/formValidation.min.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/form.validation/dist/js/framework/bootstrap.min.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/form.validation/dist/js/language/zh_CN.js', charset='utf-8')
script(type='text/javascript', src='/static/metisMenu/dist/metisMenu.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/admin.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/ueditor/ueditor.config.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/ueditor/ueditor.all.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/ueditor/dialogs/insertalert/insertalert.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/ueditor/dialogs/inserticon/inserticon.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/ueditor/dialogs/insertlabel/insertlabel.js', charset='utf-8')
script(type='text/javascript', src='https://cdn.bootcss.com/highlight.js/9.12.0/highlight.min.js', charset='utf-8')
script(type='text/javascript', src='/static/simplemde/dist/simplemde.min.js', charset='utf-8')
script(type='text/javascript', src='/static/fuelux/dist/js/fuelux.min.js', charset='utf-8')
script(type='text/javascript', src='/static/sweetalert/dist/sweetalert.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js-md5/build/md5.min.js', charset='utf-8')
script.
var categoryId = '#{post.CategoryId}';
var source = '#{post.Source}';
var editorType = '#{post.ContentType}';
var translateKey = '#{settings.TranslateKey}';
script(type='text/javascript', src='/static/js/editarticle.js', charset='utf-8')

View File

@@ -1,27 +0,0 @@
@{this.layout = './shared/layoutAdmin'}
<link href="/libs/bootstrap-table/dist/bootstrap-table.min.css" rel="stylesheet"/>
<div class="row wrapper border-bottom white-bg page-heading">
<div class="col-lg-8">
<h2>@__("admin.exception.exception_manage")</h2>
</div>
</div>
<div class="wrapper wrapper-content animated fadeIn">
<div class="row">
<div class="col-lg-12">
<div class="ibox">
<div class="ibox-content">
<table id="exceptions"></table>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript" src="/libs/jquery/dist/jquery.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/bootstrap/dist/js/bootstrap.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/metisMenu/dist/metisMenu.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/admin.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/bootstrap-table/dist/bootstrap-table.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/bootstrap-table/dist/locale/bootstrap-table-zh-CN.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/lodash/dist/lodash.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/exception.js" charset="utf-8"></script>

20
views/admin/exception.pug Normal file
View File

@@ -0,0 +1,20 @@
extends ../shared/layoutAdmin
block content
link(href='/static/libs/bootstrap-table/dist/bootstrap-table.min.css', rel='stylesheet')
.row.wrapper.border-bottom.white-bg.page-heading
.col-lg-8
h2=__("admin.exception.exception_manage")
.wrapper.wrapper-content.animated.fadeIn
.row
.col-lg-12
.ibox
.ibox-content
table#exceptions
script(type='text/javascript', src='/static/jquery/dist/jquery.min.js', charset='utf-8')
script(type='text/javascript', src='/static/bootstrap/dist/js/bootstrap.min.js', charset='utf-8')
script(type='text/javascript', src='/static/metisMenu/dist/metisMenu.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/admin.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/bootstrap-table/dist/bootstrap-table.min.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/bootstrap-table/dist/locale/bootstrap-table-zh-CN.min.js', charset='utf-8')
script(type='text/javascript', src='/static/lodash/lodash.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/exception.js', charset='utf-8')

View File

@@ -1,22 +0,0 @@
@{this.layout = './shared/layoutAdmin'}
<div class="row wrapper border-bottom white-bg page-heading">
<div class="col-lg-8">
<h2>@__("admin.guestbook.message_manage")</h2>
</div>
</div>
<div class="wrapper wrapper-content animated fadeIn">
<div class="row">
<div class="col-lg-12">
<div class="ibox">
<div class="ibox-content">
<iframe src="http://www.uyan.cc/comment/content/?domain=@(settings.SiteDomain)&ufrom=&stat=0" style="width: 100%; min-height: 2000px; border: none;"></iframe>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript" src="/libs/jquery/dist/jquery.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/bootstrap/dist/js/bootstrap.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/metisMenu/dist/metisMenu.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/admin.js" charset="utf-8"></script>

15
views/admin/guestbook.pug Normal file
View File

@@ -0,0 +1,15 @@
extends ../shared/layoutAdmin
block content
.row.wrapper.border-bottom.white-bg.page-heading
.col-lg-8
h2=__("admin.guestbook.message_manage")
.wrapper.wrapper-content.animated.fadeIn
.row
.col-lg-12
.ibox
.ibox-content
iframe(src='http://changyan.kuaizhan.com/audit/comments/AUDITED/1', style='width: 100%; min-height: 4000px; border: none;')
script(type='text/javascript', src='/static/jquery/dist/jquery.min.js', charset='utf-8')
script(type='text/javascript', src='/static/bootstrap/dist/js/bootstrap.min.js', charset='utf-8')
script(type='text/javascript', src='/static/metisMenu/dist/metisMenu.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/admin.js', charset='utf-8')

View File

@@ -1,22 +0,0 @@
@{this.layout = './shared/layoutAdmin'}
<div class="row wrapper border-bottom white-bg page-heading">
<div class="col-lg-8">
<h2>@__("admin.index.analysis")</h2>
</div>
</div>
<div class="wrapper wrapper-content animated fadeIn">
<div class="row">
<div class="col-lg-12">
<div class="ibox">
<div class="ibox-content">
<iframe src="http://tongji.baidu.com" style="width: 100%; min-height: 2000px; border: none;"></iframe>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript" src="/libs/jquery/dist/jquery.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/bootstrap/dist/js/bootstrap.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/metisMenu/dist/metisMenu.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/admin.js" charset="utf-8"></script>

15
views/admin/index.pug Normal file
View File

@@ -0,0 +1,15 @@
extends ../shared/layoutAdmin
block content
.row.wrapper.border-bottom.white-bg.page-heading
.col-lg-8
h2=__("admin.index.analysis")
.wrapper.wrapper-content.animated.fadeIn
.row
.col-lg-12
.ibox
.ibox-content
iframe(src='http://tongji.baidu.com', style='width: 100%; min-height: 5000px; border: none;')
script(type='text/javascript', src='/static/jquery/dist/jquery.min.js', charset='utf-8')
script(type='text/javascript', src='/static/bootstrap/dist/js/bootstrap.min.js', charset='utf-8')
script(type='text/javascript', src='/static/metisMenu/dist/metisMenu.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/admin.js', charset='utf-8')

View File

@@ -1,120 +0,0 @@
@{this.layout = './shared/layoutAdmin'}
<link href="/libs/fuelux/dist/css/fuelux.min.css" rel="stylesheet"/>
<link href="/libs/sweetalert/dist/sweetalert.css" rel="stylesheet"/>
<link href="/libs/form.validation/dist/css/formValidation.min.css" rel="stylesheet"/>
<div class="row wrapper border-bottom white-bg page-heading">
<div class="col-lg-8">
<h2>@__("admin.newarticle.new")</h2>
</div>
</div>
<div class="wrapper wrapper-content animated fadeIn">
<div class="row">
<div class="col-lg-12">
<div class="ibox">
<div class="ibox-content">
<form id="postForm" action="/admin/saveArticle" method="post">
<div class="row">
<div class="col-md-9">
<div class="form-group">
<label for="Title">@__("admin.newarticle.title")</label>
<input id="Title" type="text" name="Title" placeholder='@__("admin.newarticle.enter_title")' class="form-control"/>
</div>
</div>
<div class="col-md-3">
<div class="form-group">
<label for="CategoryId" style="display:block;">@__("admin.newarticle.category")</label>
<div id="Categorylist" data-resize="auto" data-initialize="selectlist" class="btn-group selectlist">
<button data-toggle="dropdown" type="button" class="btn btn-white dropdown-toggle"><span class="selected-label"></span><span class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
<ul role="menu" class="dropdown-menu"></ul>
<input id="CategoryId" type="text" name="CategoryId" readonly="readonly" aria-hidden="true" class="hidden hidden-field"/>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-9">
<div class="form-group">
<label for="Alias">Alias</label>
<input id="Alias" type="text" name="Alias" placeholder='@__("admin.newarticle.enter_alias")' class="form-control"/>
</div>
</div>
<div class="col-md-3">
<div class="form-group">
<button type="button" class="btn btn-sm btn-white btn-alias">
<i class="fa fa-flash"></i> @__("admin.newarticle.auto_generate")
</button>
</div>
</div>
</div>
<div class="form-group">
<label for="Summary">@__("admin.newarticle.summary")</label>
<textarea id="Summary" name="Summary" style="min-width: 100%;max-width: 100%;" placeholder='@__("admin.newarticle.enter_summary")' class="form-control"></textarea>
</div>
<div class="form-group">
<label style="display:block;">@__("admin.newarticle.source")</label>
<label id="soruceLocal" data-initialize="radio" class="radio-custom radio-inline">
<input data-toggle="#block-local" name="Source" type="radio" value="0" checked="checked" class="sr-only"/> @__("admin.newarticle.local")
</label>
<label id="soruceLink" data-initialize="radio" class="radio-custom radio-inline">
<input data-toggle="#block-link" name="Source" type="radio" value="1" class="sr-only"/> @__("admin.newarticle.url")
</label>
</div>
<div id="block-local">
<div class="form-group">
<label for="pillbox-input">@__("admin.newarticle.tag")</label>
<div id="myPillbox" data-initialize="pillbox" class="pillbox">
<ul class="clearfix pill-group">
<li class="pillbox-input-wrap btn-group"><a class="pillbox-more">and<span class="pillbox-more-count"></span> more...</a>
<input id="pillbox-input" type="text" placeholder='@__("admin.newarticle.enter_to_add")' class="form-control dropdown-toggle pillbox-add-item"/>
<button type="button" class="dropdown-toggle sr-only"><span class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
<ul role="menu" data-toggle="dropdown" data-flip="auto" class="suggest dropdown-menu"></ul>
</li>
</ul>
</div>
<input id="Labels" type="hidden" name="Labels"/>
</div>
<div class="form-group">
<label>@__("admin.newarticle.article")</label>
<script id="editor" type="text/plain"></script>
</div>
</div>
<div id="block-link">
<div class="form-group">
<label for="Url">Url</label>
<input id="Url" type="text" name="Url" placeholder='@__("admin.newarticle.enter_url")' class="form-control"/>
</div>
</div>
<div>
<button id="btnPublish" type="submit" class="btn btn-danger">
<i class="fa fa-send"></i> @__("admin.newarticle.publish")
</button>
<button id="btnSave" type="button" class="btn btn-primary">
<i class="fa fa-save"></i> @__("admin.newarticle.save_draft")
</button>
<input id="UniqueId" type="hidden" name="UniqueId" value="@uniqueId"/>
<input id="IsDraft" type="hidden" name="IsDraft"/>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript" src="/libs/jquery/dist/jquery.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/bootstrap/dist/js/bootstrap.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/form.validation/dist/js/formValidation.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/form.validation/dist/js/framework/bootstrap.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/form.validation/dist/js/language/zh_CN.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/metisMenu/dist/metisMenu.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/admin.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/ueditor/ueditor.config.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/ueditor/ueditor.all.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/ueditor/dialogs/insertalert/insertalert.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/ueditor/dialogs/inserticon/inserticon.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/ueditor/dialogs/insertlabel/insertlabel.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/fuelux/dist/js/fuelux.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/sweetalert/dist/sweetalert.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/js-md5/js/md5.min.js" charset="utf-8"></script>
<script>var translateKey = '@config.TranslateKey';</script>
<script type="text/javascript" src="/javascripts/newarticle.js" charset="utf-8"></script>

115
views/admin/newarticle.pug Normal file
View File

@@ -0,0 +1,115 @@
extends ../shared/layoutAdmin
block content
link(href='/static/fuelux/dist/css/fuelux.min.css', rel='stylesheet')
link(href='/static/libs/form.validation/dist/css/formValidation.min.css', rel='stylesheet')
link(href='/static/sweetalert/dist/sweetalert.css', rel='stylesheet')
link(href='https://cdn.bootcss.com/highlight.js/9.12.0/styles/github.min.css', rel='stylesheet')
link(href='/static/simplemde/dist/simplemde.min.css', rel='stylesheet')
.row.wrapper.border-bottom.white-bg.page-heading
.col-lg-8
h2=__("admin.newarticle.new")
.wrapper.wrapper-content.animated.fadeIn
.row
.col-lg-12
.ibox
.ibox-content
form#postForm(action='/admin/saveArticle', method='post')
.row
.col-md-9
.form-group
label(for='Title')=__("admin.newarticle.title")
input#Title.form-control(type='text', name='Title', placeholder=__("admin.newarticle.enter_title"))
.col-md-3
.form-group
label(for='CategoryId', style='display:block;')=__("admin.newarticle.category")
#Categorylist.btn-group.selectlist(data-resize='auto', data-initialize='selectlist')
button.btn.btn-white.dropdown-toggle(data-toggle='dropdown', type='button')
span.selected-label
span.caret
span.sr-only Toggle Dropdown
ul.dropdown-menu(role='menu')
input#CategoryId.hidden.hidden-field(type='text', name='CategoryId', readonly='readonly', aria-hidden='true')
.row
.col-md-9
.form-group
label(for='Alias') Alias
input#Alias.form-control(type='text', name='Alias', placeholder=__("admin.newarticle.enter_alias"))
.col-md-3
.form-group
button.btn.btn-sm.btn-white.btn-alias(type='button')
i.fa.fa-flash
| #{__("admin.newarticle.auto_generate")}
.form-group
label(for='Summary')=__("admin.newarticle.summary")
textarea#Summary.form-control(name='Summary', style='min-width: 100%;max-width: 100%;', placeholder=__("admin.newarticle.enter_summary"))
.form-group
label(style='display:block;')=__("admin.newarticle.source")
label#soruceLocal.radio-custom.radio-inline(data-initialize='radio')
input.sr-only(data-toggle='#block-local', name='Source', type='radio', value='0', checked='checked')
| #{__("admin.newarticle.local")}
label#soruceLink.radio-custom.radio-inline(data-initialize='radio')
input.sr-only(data-toggle='#block-link', name='Source', type='radio', value='1')
| #{__("admin.newarticle.url")}
#block-local
.form-group
label(for='pillbox-input')=__("admin.newarticle.tag")
#myPillbox.pillbox(data-initialize='pillbox')
ul.clearfix.pill-group
li.pillbox-input-wrap.btn-group
a.pillbox-more
| and
span.pillbox-more-count
| more...
input#pillbox-input.form-control.dropdown-toggle.pillbox-add-item(type='text', placeholder=__("admin.newarticle.enter_to_add"))
button.dropdown-toggle.sr-only(type='button')
span.caret
span.sr-only Toggle Dropdown
ul.suggest.dropdown-menu(role='menu', data-toggle='dropdown', data-flip='auto')
input#Labels(type='hidden', name='Labels')
.form-group
label=__("admin.newarticle.article")
.form-group
label#ueRadio.radio-custom.radio-inline(data-initialize='radio')
input.sr-only(name='ContentType', type='radio', value='')
| UEditor
label#mdRadio.radio-custom.radio-inline(data-initialize='radio')
input.sr-only(name='ContentType', type='radio', value='markdown')
| Markdown
script#editor(type='text/plain')
#mdEditor
textarea
#block-link
.form-group
label(for='Url') Url
input#Url.form-control(type='text', name='Url', placeholder=__("admin.newarticle.enter_url"))
div
button#btnPublish.btn.btn-danger(type='submit')
i.fa.fa-send
| #{__("admin.newarticle.publish")}
=' '
button#btnSave.btn.btn-primary(type='button')
i.fa.fa-save
| #{__("admin.newarticle.save_draft")}
input#UniqueId(type='hidden',name='UniqueId',value=uniqueId)
input#IsDraft(type='hidden',name='IsDraft')
script(type='text/javascript', src='/static/jquery/dist/jquery.min.js', charset='utf-8')
script(type='text/javascript', src='/static/bootstrap/dist/js/bootstrap.min.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/form.validation/dist/js/formValidation.min.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/form.validation/dist/js/framework/bootstrap.min.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/form.validation/dist/js/language/zh_CN.js', charset='utf-8')
script(type='text/javascript', src='/static/metisMenu/dist/metisMenu.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/admin.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/ueditor/ueditor.config.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/ueditor/ueditor.all.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/ueditor/dialogs/insertalert/insertalert.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/ueditor/dialogs/inserticon/inserticon.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/ueditor/dialogs/insertlabel/insertlabel.js', charset='utf-8')
script(type='text/javascript', src='https://cdn.bootcss.com/highlight.js/9.12.0/highlight.min.js', charset='utf-8')
script(type='text/javascript', src='/static/simplemde/dist/simplemde.min.js', charset='utf-8')
script(type='text/javascript', src='/static/fuelux/dist/js/fuelux.min.js', charset='utf-8')
script(type='text/javascript', src='/static/sweetalert/dist/sweetalert.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js-md5/build/md5.min.js', charset='utf-8')
script.
var translateKey = '#{settings.TranslateKey}';
var editorType = '#{settings.Editor}';
script(type='text/javascript', src='/static/js/newarticle.js', charset='utf-8')

View File

@@ -1,203 +0,0 @@
@{this.layout = './shared/layoutAdmin'}
<link href="/libs/fuelux/dist/css/fuelux.min.css" rel="stylesheet"/>
<link href="/libs/blueimp-file-upload/css/jquery.fileupload.css" rel="stylesheet"/>
<link href="/libs/switchery/dist/switchery.min.css" rel="stylesheet"/>
<link href="/libs/sweetalert/dist/sweetalert.css" rel="stylesheet"/>
<div class="row wrapper border-bottom white-bg page-heading">
<div class="col-lg-8">
<h2>@__("admin.settings.setting")</h2>
</div>
</div>
<div class="wrapper wrapper-content animated fadeIn">
<div class="row">
<div class="col-lg-12">
<div class="ibox">
<div class="ibox-content">
<form id="postForm" action="/admin/saveSettings" method="post">
<div role="tablist" aria-multiselectable="false" class="panel-group">
<div class="row">
<div style="margin-bottom:10px;" class="col-md-6">
<div class="panel panel-default">
<div id="headingSite" role="tab" class="panel-heading">
<h4 class="panel-title">
<a role="button" data-toggle="collapse" href="#tabSite" aria-expanded="true" aria-controls="tabSite">@__("admin.settings.site")</a>
</h4>
</div>
<div id="tabSite" role="tabpanel" aria-labelledby="headingSite" class="panel-collapse collapse in">
<ul class="list-group">
<li class="list-group-item clearfix">
<div class="pull-left">@__("admin.settings.site_name")</div>
<div class="pull-right">
<input id="SiteName" type="text" name="SiteName" placeholder='@__("admin.settings.site_name_placeholder")' value="@config.SiteName" class="form-control"/>
</div>
</li>
<li class="list-group-item clearfix">
<div class="pull-left">@__("admin.settings.domain_name")</div>
<div class="pull-right">
<input id="SiteDomain" type="text" name="SiteDomain" placeholder='@__("admin.settings.domain_name_placeholder")' value="@config.SiteDomain" class="form-control"/>
</div>
</li>
<li class="list-group-item clearfix">
<div class="pull-left">@__("admin.settings.ICP")</div>
<div class="pull-right">
<input id="RecordNo" type="text" name="RecordNo" placeholder='@__("admin.settings.ICP_placeholder")' value="@config.RecordNo" class="form-control"/>
</div>
</li>
<li class="list-group-item clearfix">
<div class="pull-left">@__("admin.settings.logo")</div>
<div class="pull-right">
<span class="fileinput-button">
<img alt="profile" src="@config.LogoPath" style="width:146px;height:146px;" class="img-circle profile-img"/>
<input type="file" name="file" class="fileupload"/>
<input id="LogoPath" type="hidden" name="LogoPath" value="@config.LogoPath"/>
</span>
</div>
</li>
<li class="list-group-item clearfix">
<div class="pull-left">@__("admin.settings.posts_per_page")</div>
<div class="pull-right">
<div data-initialize="spinbox" data-step="5" class="spinbox">
<input id="PageSize" type="text" name="PageSize" placeholder='@__("admin.settings.posts_per_page_placeholder")' value="@config.PageSize" class="form-control input-mini spinbox-input"/>
<div class="spinbox-buttons btn-group btn-group-vertical">
<button type="button" class="btn btn-white spinbox-up btn-xs">
<span class="fa fa-chevron-up"></span>
<span class="sr-only">Increase</span>
</button>
<button type="button" class="btn btn-white spinbox-down btn-xs">
<span class="fa fa-chevron-down"></span>
<span class="sr-only">Decrease</span>
</button>
</div>
</div>
</div>
</li>
<li class="list-group-item clearfix">
<div class="pull-left">@__("admin.settings.show_summary")</div>
<div class="pull-right">
<input id="ExpandMenu" type="hidden" name="ExpandMenu" value="@config.ExpandMenu"/>
<input type="checkbox" checked="@(config.ExpandMenu === 'true')" class="js-switch"/>
</div>
</li>
<li class="list-group-item clearfix">
<div class="pull-left">@__("admin.settings.cache_expire_time")</div>
<div class="pull-right">
<div data-initialize="spinbox" data-max="9999999" class="spinbox">
<input id="CacheExpired" type="text" name="CacheExpired" placeholder='@__("admin.settings.cache_expire_time_placeholder")' value="@config.CacheExpired" class="form-control input-mini spinbox-input"/>
<div class="spinbox-buttons btn-group btn-group-vertical">
<button type="button" class="btn btn-white spinbox-up btn-xs">
<span class="fa fa-chevron-up"></span>
<span class="sr-only">Increase</span>
</button>
<button type="button" class="btn btn-white spinbox-down btn-xs">
<span class="fa fa-chevron-down"></span>
<span class="sr-only">Decrease</span>
</button>
</div>
</div>
</div>
</li>
</ul>
</div>
</div>
</div>
<div style="margin-bottom:10px;" class="col-md-6">
<div class="panel panel-default">
<div id="headingComponent" role="tab" class="panel-heading">
<h4 class="panel-title">
<a role="button" data-toggle="collapse" href="#tabComponent" aria-expanded="true" aria-controls="tabComponent">@__("admin.settings.utility")</a>
</h4>
</div>
<div id="tabComponent" role="tabpanel" aria-labelledby="headingComponent" class="panel-collapse collapse in">
<ul class="list-group">
<li class="list-group-item clearfix">
<div class="pull-left">
<a href="http://api.fanyi.baidu.com" target="_blank"> @__("admin.settings.trans")
</a>
@__("admin.settings.key")
</div>
<div class="pull-right">
<input id="TranslateKey" type="text" name="TranslateKey" placeholder='@__("admin.settings.key_placeholder")' value="@config.TranslateKey" class="form-control"/>
</div>
</li>
<li class="list-group-item clearfix">
<div class="pull-left">@(__("admin.settings.analysis"))<a href="http://tongji.baidu.com" target="_blank">@__("admin.settings.analysis_service")</a></div>
<div class="pull-right">
<input id="EnableStatistics" type="hidden" name="EnableStatistics" value="@config.EnableStatistics"/>
<input type="checkbox" checked="@(config.EnableStatistics === 'true')" class="js-switch"/>
</div>
</li>
<li class="list-group-item clearfix">
<div class="pull-left">@__("admin.settings.analysis_id")</div>
<div class="pull-right">
<input id="StatisticsId" type="text" name="StatisticsId" placeholder='@__("admin.settings.analysis_id_placeholder")' value="@config.StatisticsId" class="form-control"/>
</div>
</li>
<li class="list-group-item clearfix">
<div class="pull-left">@(__("admin.settings.share"))<a href="http://www.jiathis.com/" target="_blank">@__("admin.settings.share_service")</a></div>
<div class="pull-right">
<input id="EnableShare" type="hidden" name="EnableShare" value="@config.EnableShare"/>
<input type="checkbox" checked="@(config.EnableShare === 'true')" class="js-switch"/>
</div>
</li>
<li class="list-group-item clearfix">
<div class="pull-left">@__("admin.settings.share_id")</div>
<div class="pull-right">
<input id="JiaThisId" type="text" name="JiaThisId" placeholder='@__("admin.settings.share_id_placeholder")' value="@config.JiaThisId" class="form-control"/>
</div>
</li>
<li class="list-group-item clearfix">
<div class="pull-left">@(__("admin.settings.comments"))<a href="http://changyan.kuaizhan.com" target="_blank">@__("admin.settings.comments_service")</a></div>
<div class="pull-right">
<input id="ShowComments" type="hidden" name="ShowComments" value="@config.ShowComments"/>
<input type="checkbox" checked="@(config.ShowComments === 'true')" class="js-switch"/>
</div>
</li>
<li class="list-group-item clearfix">
<div class="pull-left">@(__("admin.settings.message"))<a href="http://changyan.kuaizhan.com" target="_blank">@__("admin.settings.comments_service")</a></div>
<div class="pull-right">
<input id="ShowGuestbook" type="hidden" name="ShowGuestbook" value="@config.ShowGuestbook"/>
<input type="checkbox" checked="@(config.ShowGuestbook === 'true')" class="js-switch"/>
</div>
</li>
<li class="list-group-item clearfix">
<div class="pull-left">@__("admin.settings.comments_id")</div>
<div class="pull-right">
<input id="ChangyanId" type="text" name="ChangyanId" placeholder='@__("admin.settings.comments_id_placeholder")' value="@config.ChangyanId" class="form-control"/>
</div>
</li>
<li class="list-group-item clearfix">
<div class="pull-left">@__("admin.settings.comments_conf")</div>
<div class="pull-right">
<input id="ChangyanConf" type="text" name="ChangyanConf" placeholder='@__("admin.settings.comments_conf_placeholder")' value="@config.ChangyanConf" class="form-control"/>
</div>
</li>
</ul>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-lg-12">
<button id="btnSave" type="button" role="button" class="btn btn-primary">
<i class="fa fa-cloud-upload"></i> @__("admin.settings.save")
</button>
</div>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
<script type="text/javascript" src="/libs/jquery/dist/jquery.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/bootstrap/dist/js/bootstrap.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/metisMenu/dist/metisMenu.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/admin.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/blueimp-file-upload/js/vendor/jquery.ui.widget.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/blueimp-file-upload/js/jquery.fileupload.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/fuelux/dist/js/fuelux.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/sweetalert/dist/sweetalert.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/switchery/dist/switchery.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/settings.js" charset="utf-8"></script>

177
views/admin/settings.pug Normal file
View File

@@ -0,0 +1,177 @@
extends ../shared/layoutAdmin
block content
link(href='/static/fuelux/dist/css/fuelux.min.css', rel='stylesheet')
link(href='/static/blueimp-file-upload/css/jquery.fileupload.css', rel='stylesheet')
link(href='/static/switchery/dist/switchery.min.css', rel='stylesheet')
link(href='/static/sweetalert/dist/sweetalert.css', rel='stylesheet')
.row.wrapper.border-bottom.white-bg.page-heading
.col-lg-8
h2=__("admin.settings.setting")
.wrapper.wrapper-content.animated.fadeIn
.row
.col-lg-12
.ibox
.ibox-content
form#postForm(action='/admin/saveSettings', method='post')
.panel-group(role='tablist', aria-multiselectable='false')
.row
.col-md-6(style='margin-bottom:10px;')
.panel.panel-default
#headingSite.panel-heading(role='tab')
h4.panel-title
a(role='button', data-toggle='collapse', href='#tabSite', aria-expanded='true', aria-controls='tabSite')
| #{__("admin.settings.site")}
#tabSite.panel-collapse.collapse.in(role='tabpanel', aria-labelledby='headingSite')
ul.list-group
li.list-group-item.clearfix
.pull-left
| #{__("admin.settings.site_name")}
.pull-right
input#SiteName.form-control(type='text', name='SiteName', placeholder=__("admin.settings.site_name_placeholder"), value=settings.SiteName)
li.list-group-item.clearfix
.pull-left
| #{__("admin.settings.domain_name")}
.pull-right
input#SiteDomain.form-control(type='text', name='SiteDomain', placeholder=__("admin.settings.domain_name_placeholder"), value=settings.SiteDomain)
li.list-group-item.clearfix
.pull-left
| #{__("admin.settings.ICP")}
.pull-right
input#RecordNo.form-control(type='text', name='RecordNo', placeholder=__("admin.settings.ICP_placeholder"), value=settings.RecordNo)
li.list-group-item.clearfix
.pull-left
| #{__("admin.settings.logo")}
.pull-right
span.fileinput-button
img.img-circle.profile-img(alt='profile', src=settings.LogoPath, style='width:146px;height:146px;')
input.fileupload(type='file', name='file')
input#LogoPath(type='hidden', name='LogoPath', value=settings.LogoPath)
li.list-group-item.clearfix
.pull-left
| #{__("admin.settings.posts_per_page")}
.pull-right
.spinbox(data-initialize='spinbox', data-step='5')
input#PageSize.form-control.input-mini.spinbox-input(type='text', name='PageSize', placeholder=__("admin.settings.posts_per_page_placeholder"), value=settings.PageSize)
.spinbox-buttons.btn-group.btn-group-vertical
button.btn.btn-white.spinbox-up.btn-xs(type='button')
span.fa.fa-chevron-up
span.sr-only Increase
button.btn.btn-white.spinbox-down.btn-xs(type='button')
span.fa.fa-chevron-down
span.sr-only Decrease
li.list-group-item.clearfix
.pull-left
| #{__("admin.settings.show_summary")}
.pull-right
input#ExpandMenu(type='hidden', name='ExpandMenu', value=settings.ExpandMenu)
input.js-switch(type='checkbox', checked=settings.ExpandMenu === 'true')
li.list-group-item.clearfix
.pull-left
| #{__("admin.settings.editor")}
.pull-right
#Editorlist.btn-group.selectlist(data-resize='auto', data-initialize='selectlist')
button.btn.btn-white.dropdown-toggle(data-toggle='dropdown', type='button')
span.selected-label
span.caret
span.sr-only Toggle Dropdown
ul.dropdown-menu(role='menu')
li(data-value='')
a(href='#') UEditor
li(data-value='markdown')
a(href='#') Markdown
input#Editor.hidden.hidden-field(type='text', name='Editor', readonly='readonly', aria-hidden='true',value=settings.Editor)
li.list-group-item.clearfix
.pull-left
| #{__("admin.settings.cache_expire_time")}
.pull-right
.spinbox(data-initialize='spinbox',data-max='9999999')
input#CacheExpired.form-control.input-mini.spinbox-input(type='text', name='CacheExpired', placeholder=__("admin.settings.cache_expire_time_placeholder"), value=settings.CacheExpired)
.spinbox-buttons.btn-group.btn-group-vertical
button.btn.btn-white.spinbox-up.btn-xs(type='button')
span.fa.fa-chevron-up
span.sr-only Increase
button.btn.btn-white.spinbox-down.btn-xs(type='button')
span.fa.fa-chevron-down
span.sr-only Decrease
.col-md-6(style='margin-bottom:10px;')
.panel.panel-default
#headingComponent.panel-heading(role='tab')
h4.panel-title
a(role='button', data-toggle='collapse', href='#tabComponent', aria-expanded='true', aria-controls='tabComponent')
| #{__("admin.settings.utility")}
#tabComponent.panel-collapse.collapse.in(role='tabpanel', aria-labelledby='headingComponent')
ul.list-group
li.list-group-item.clearfix
.pull-left
a(href='http://api.fanyi.baidu.com', target='_blank')=__("admin.settings.trans")
| #{__("admin.settings.key")}
.pull-right
input#TranslateKey.form-control(type='text', name='TranslateKey', placeholder=__("admin.settings.key_placeholder"), value=settings.TranslateKey)
li.list-group-item.clearfix
.pull-left
| #{__("admin.settings.analysis")}(
a(href='http://tongji.baidu.com', target='_blank')=__("admin.settings.analysis_service")
| )
.pull-right
input#EnableStatistics(type='hidden', name='EnableStatistics', value=settings.EnableStatistics)
input.js-switch(type='checkbox', checked=settings.EnableStatistics === 'true')
li.list-group-item.clearfix
.pull-left
| #{__("admin.settings.analysis_id")}
.pull-right
input#StatisticsId.form-control(type='text', name='StatisticsId', placeholder=__("admin.settings.analysis_id_placeholder"), value=settings.StatisticsId)
li.list-group-item.clearfix
.pull-left
| #{__("admin.settings.share")}(
a(href='http://www.jiathis.com/', target='_blank')=__("admin.settings.share_service")
| )
.pull-right
input#EnableShare(type='hidden', name='EnableShare', value=settings.EnableShare)
input.js-switch(type='checkbox', checked=settings.EnableShare === 'true')
li.list-group-item.clearfix
.pull-left
| #{__("admin.settings.share_id")}
.pull-right
input#JiaThisId.form-control(type='text', name='JiaThisId', placeholder=__("admin.settings.share_id_placeholder"), value=settings.JiaThisId)
li.list-group-item.clearfix
.pull-left
| #{__("admin.settings.comments")} (
a(href='http://changyan.kuaizhan.com', target='_blank')=__("admin.settings.comments_service")
| )
.pull-right
input#ShowComments(type='hidden', name='ShowComments', value=settings.ShowComments)
input.js-switch(type='checkbox', checked=settings.ShowComments === 'true')
li.list-group-item.clearfix
.pull-left
| #{__("admin.settings.message")} (
a(href='http://changyan.kuaizhan.com', target='_blank')=__("admin.settings.comments_service")
| )
.pull-right
input#ShowGuestbook(type='hidden', name='ShowGuestbook', value=settings.ShowGuestbook)
input.js-switch(type='checkbox', checked=settings.ShowGuestbook === 'true')
li.list-group-item.clearfix
.pull-left
| #{__("admin.settings.comments_id")}
.pull-right
input#ChangyanId.form-control(type='text', name='ChangyanId', placeholder=__("admin.settings.comments_id_placeholder"), value=settings.ChangyanId)
li.list-group-item.clearfix
.pull-left
| #{__("admin.settings.comments_conf")}
.pull-right
input#ChangyanConf.form-control(type='text', name='ChangyanConf', placeholder=__("admin.settings.comments_conf_placeholder"), value=settings.ChangyanConf)
.row
.col-lg-12
button#btnSave(type='button', class='btn btn-primary', role='button')
i.fa.fa-cloud-upload
| #{__("admin.settings.save")}
script(type='text/javascript', src='/static/jquery/dist/jquery.min.js', charset='utf-8')
script(type='text/javascript', src='/static/bootstrap/dist/js/bootstrap.min.js', charset='utf-8')
script(type='text/javascript', src='/static/metisMenu/dist/metisMenu.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/admin.js', charset='utf-8')
script(type='text/javascript', src='/static/blueimp-file-upload/js/vendor/jquery.ui.widget.js', charset='utf-8')
script(type='text/javascript', src='/static/blueimp-file-upload/js/jquery.fileupload.js', charset='utf-8')
script(type='text/javascript', src='/static/fuelux/dist/js/fuelux.min.js', charset='utf-8')
script(type='text/javascript', src='/static/sweetalert/dist/sweetalert.min.js', charset='utf-8')
script(type='text/javascript', src='/static/switchery/dist/switchery.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/settings.js', charset='utf-8')

View File

@@ -1,32 +0,0 @@
<link href="/libs/sweetalert/dist/sweetalert.css" rel="stylesheet"/>
<link href="/libs/supersized/slideshow/css/supersized.css" rel="stylesheet"/>
<link href="/libs/supersized/slideshow/theme/supersized.shutter.css" rel="stylesheet"/>
<link href="/libs/animate.css/animate.min.css" rel="stylesheet"/>
<link href="/stylesheets/account.css" rel="stylesheet"/>
<div class="container animated fadeInDownSmall">
<div class="row login-block">
<h3 class="col-md-4 col-md-offset-4 login-title text-center">@__("auth.title")</h3>
<div class="col-md-4 col-md-offset-4 login-wrap">
<div class="form-group form-group-lg">
<input id="txtUserName" type="text" placeholder='@__("auth.username")' class="form-control"/>
</div>
<div class="form-group form-group-lg">
<input id="txtPwd" type="password" placeholder='@__("auth.password")' class="form-control"/>
</div>
<button id="btnLogin" type="button" autocomplete="off" class="btn btn-green btn-lg btn-block">
<i class="fa fa-sign-in fa-fw"></i> @__("auth.login")
</button>
</div>
</div>
</div>
<!-- Time Bar-->
<div id="progress-back" class="load-item">
<div id="progress-bar"></div>
</div>
<script type="text/javascript" src="/libs/jquery/dist/jquery.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/bootstrap/dist/js/bootstrap.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/sweetalert/dist/sweetalert.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/supersized/slideshow/js/supersized.3.2.7.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/supersized/slideshow/theme/supersized.shutter.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/js-md5/js/md5.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/account.js" charset="utf-8"></script>

28
views/auth/login.pug Normal file
View File

@@ -0,0 +1,28 @@
extends ../shared/layout
block content
link(href='/static/libs/supersized/slideshow/css/supersized.css', rel='stylesheet')
link(href='/static/libs/supersized/slideshow/theme/supersized.shutter.css', rel='stylesheet')
link(href='/static/sweetalert/dist/sweetalert.css', rel='stylesheet')
link(href='/static/animate.css/animate.min.css', rel='stylesheet')
link(href='/static/css/account.css', rel='stylesheet')
.container.animated.fadeInDownSmall
.row.login-block
h3.col-md-4.col-md-offset-4.login-title.text-center=__("auth.title")
.col-md-4.col-md-offset-4.login-wrap
.form-group.form-group-lg
input#txtUserName.form-control(type='text', placeholder=__("auth.username"))
.form-group.form-group-lg
input#txtPwd.form-control(type='password', placeholder=__("auth.password"))
button#btnLogin.btn.btn-green.btn-lg.btn-block(type='button', autocomplete='off')
i.fa.fa-sign-in-alt.fa-fw
=`${' ' + __("auth.login")}`
// Time Bar
#progress-back.load-item
#progress-bar
script(type='text/javascript', src='/static/jquery/dist/jquery.min.js', charset='utf-8')
script(type='text/javascript', src='/static/bootstrap/dist/js/bootstrap.min.js', charset='utf-8')
script(type='text/javascript', src='/static/sweetalert/dist/sweetalert.min.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/supersized/slideshow/js/supersized.3.2.7.min.js', charset='utf-8')
script(type='text/javascript', src='/static/libs/supersized/slideshow/theme/supersized.shutter.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js-md5/build/md5.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/account.js', charset='utf-8')

View File

@@ -1,113 +0,0 @@
<link href="/stylesheets/animate-custom.css" rel="stylesheet"/>
<link href="/stylesheets/railscasts.css" rel="stylesheet"/>
<link href="/libs/lightbox2/dist/css/lightbox.min.css" rel="stylesheet"/>
<div class="detail-container">
<div class="container">
<div class="row">
<article class="col-sm-12 col-xs-12 detail-wrap post-content animated fadeIn @(config.ExpandMenu === 'true' ? 'col-md-9' : 'col-md-12')">
<button title='@__("blog.article.table_of_content")' class="btn btn-white btn-menu">
<i class="fa fa-align-justify"></i>
</button>
<div class="font-controller hidden-sm hidden-xs">
<div title="缩小字体" class="btn-font btn-font-minus">A-</div>
<div title="增大字体" class="btn-font btn-font-plus">A+</div>
</div>
<div class="hidden-sm hidden-xs">
<div class="text-muted pull-left">
<span title='@__("blog.article.category")'>
<i class="fa fa-map-signs"></i>
<a href="/blog/@post.CategoryAlias" target="_blank" class="black-link">@post.CateName</a>
</span></div>
<div class="text-muted pull-right">
@{
post.LabelList.forEach(function(label) {
<span class="post-label" title="@label">@label</span>
});
}
</div>
<div class="clearfix"></div>
</div>
<header class="text-center post-title">
<span title='@__("blog.article.post_date")' class="text-muted">
<i class="fa fa-clock-o"></i> @post.CreateTimeStr</span>
<h1>@post.Title</h1>
</header>
<div id="main-context">
<blockquote>
<h2>@__("blog.article.brief")</h2>
<span>@post.Summary</span>
</blockquote>
@this.raw(post.Content)
</div>
@if(config.ShowComments === 'true') {
<hr class="hr-article">
<div id="SOHUCS" sid="@post.UniqueId"></div>
<script>
(function () {
var appid = '@config.ChangyanId';
var conf = '@config.ChangyanConf';
var width = window.innerWidth || document.documentElement.clientWidth;
if (width < 960) {
window.document.write('<script id="changyan_mobile_js" charset="utf-8" type="text/javascript" src="http://changyan.sohu.com/upload/mobile/wap-js/changyan_mobile.js?client_id=' + appid + '&conf=' + conf + '"><\/script>');
} else {
var loadJs = function (d, a) {
var c = document.getElementsByTagName("head")[0] || document.head || document.documentElement;
var b = document.createElement("script");
b.setAttribute("type", "text/javascript");
b.setAttribute("charset", "UTF-8");
b.setAttribute("src", d);
if (typeof a === "function") {
if (window.attachEvent) {
b.onreadystatechange = function () {
var e = b.readyState;
if (e === "loaded" || e === "complete") {
b.onreadystatechange = null;
a()
}
}
} else {
b.onload = a
}
}
c.appendChild(b)
};
loadJs("http://changyan.sohu.com/upload/changyan.js", function () {
window.changyan.api.config({
appid: appid, conf: conf
})
});
}
})();
</script>
}
</article>
<div id="control-wrap" class="col-md-3 hidden-sm hidden-xs" style='@(config.ExpandMenu === "true" ? "display: block;" : "display: none;")'>
<a class="close-menu" title='@__("blog.article.hide")'>
<i class="fa fa-times"></i>
</a>
</div>
</div>
@this.renderPartial('./footer')
</div>
</div>
@this.renderPartial('./top')
<script type="text/javascript" src="/libs/jquery/dist/jquery.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/bootstrap/dist/js/bootstrap.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/lightbox2/dist/js/lightbox.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/scrollNav/dist/jquery.scrollNav.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/highlight.pack.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/article.js" charset="utf-8"></script>
<script>
document.title = '@post.Title';
var expandMenu = '@config.ExpandMenu';
var logoPath = "@config.LogoPath";
var jiathis_config = {
data_track_clickback: true,
url: window.location.href,
summary: "@post.Summary_share",
title: "@post.Title"
};
</script>
<script type="text/javascript" src="http://v3.jiathis.com/code/jia.js?uid=@config.JiaThisId" charset="utf-8"></script>
<script type="text/javascript" src="/libs/jquery-qrcode/dist/jquery.qrcode.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/top.js" charset="utf-8"></script>

101
views/blog/article.pug Normal file
View File

@@ -0,0 +1,101 @@
extends ../shared/layout
block content
link(href='/static/css/animate-custom.css', rel='stylesheet')
link(href='https://cdn.bootcss.com/highlight.js/9.12.0/styles/github.min.css', rel='stylesheet')
link(href='/static/lightbox2/dist/css/lightbox.min.css', rel='stylesheet')
if (post.ContentType === 'markdown')
link(href='/static/css/github-markdown.css', rel='stylesheet')
.detail-container
.container
.row
article.col-sm-12.col-xs-12.detail-wrap.post-content.animated.fadeIn(class=`${settings.ExpandMenu === "true" ? "col-md-9" : "col-md-12"}`)
button.btn.btn-white.btn-menu(title=__("blog.article.table_of_content"))
i.fa.fa-align-justify
.font-controller.hidden-sm.hidden-xs
.btn-font.btn-font-minus(title="缩小字体") A-
.btn-font.btn-font-plus(title="增大字体") A+
.hidden-sm.hidden-xs
.text-muted.pull-left
span(title=__("blog.article.category"))
i.fa.fa-map-signs
=' '
a.black-link(href='/blog/' + post.CategoryAlias,target='_blank')=post.CateName
.text-muted.pull-right
each label in post.LabelList
span.post-label(title=label)=label
=' '
.clearfix
header.text-center.post-title
span.text-muted(title=__("blog.article.post_date"))
i.fa.fa-clock-o
=' ' + post.CreateTimeStr
h1=post.Title
#main-context
blockquote
h2=__("blog.article.brief")
span='' + post.Summary
div(class=`${post.ContentType === 'markdown' ? 'markdown-body' : 'normal-body'}`)
!=resultContent
if(settings.ShowComments === 'true')
hr.hr-article
#SOHUCS(sid=post.UniqueId)
script.
(function () {
var appid = '#{settings.ChangyanId}';
var conf = '#{settings.ChangyanConf}';
var width = window.innerWidth || document.documentElement.clientWidth;
if (width < 960) {
window.document.write('<script id="changyan_mobile_js" charset="utf-8" type="text/javascript" src="http://changyan.sohu.com/upload/mobile/wap-js/changyan_mobile.js?client_id=' + appid + '&conf=' + conf + '"><\/script>');
} else {
var loadJs = function (d, a) {
var c = document.getElementsByTagName("head")[0] || document.head || document.documentElement;
var b = document.createElement("script");
b.setAttribute("type", "text/javascript");
b.setAttribute("charset", "UTF-8");
b.setAttribute("src", d);
if (typeof a === "function") {
if (window.attachEvent) {
b.onreadystatechange = function () {
var e = b.readyState;
if (e === "loaded" || e === "complete") {
b.onreadystatechange = null;
a()
}
}
} else {
b.onload = a
}
}
c.appendChild(b)
};
loadJs("http://changyan.sohu.com/upload/changyan.js", function () {
window.changyan.api.config({
appid: appid, conf: conf
})
});
}
})();
#control-wrap.col-md-3.hidden-sm.hidden-xs(style=`${settings.ExpandMenu === "true" ? "display: block;" : "display: none;"}`)
a.close-menu(title=__("blog.article.hide"))
i.fa.fa-times
include ../shared/footer
include ../shared/top
script(type='text/javascript', src='/static/jquery/dist/jquery.min.js', charset='utf-8')
script(type='text/javascript', src='/static/bootstrap/dist/js/bootstrap.min.js', charset='utf-8')
script(type='text/javascript', src='/static/lightbox2/dist/js/lightbox.min.js', charset='utf-8')
script(type='text/javascript', src='/static/scrollNav/dist/jquery.scrollNav.min.js', charset='utf-8')
script(type='text/javascript', src='https://cdn.bootcss.com/highlight.js/9.12.0/highlight.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/article.js', charset='utf-8')
script.
var expandMenu = '#{settings.ExpandMenu}';
var logoPath = "#{settings.LogoPath}";
var contentType = '#{post.ContentType}';
var jiathis_config = {
data_track_clickback: true,
url: window.location.href,
summary: "#{post.Summary}",
title: "#{post.Title}"
};
script(type = 'text/javascript', src = 'http://v3.jiathis.com/code/jia.js?uid=#{settings.JiaThisId}', charset = 'utf-8')
script(type='text/javascript', src='/static/jquery-qrcode/dist/jquery-qrcode.min.js', charset='utf-8')
script(type = 'text/javascript', src = '/static/js/top.js', charset = 'utf-8')

View File

@@ -1,150 +0,0 @@
<link href="/stylesheets/selectlist.css" rel="stylesheet"/>
<link href="/libs/malihu-custom-scrollbar-plugin/jquery.mCustomScrollbar.min.css" rel="stylesheet"/>
<link href="/stylesheets/railscasts.css" rel="stylesheet"/>
<div class="container-fluid render-body">
<div class="row">
<div class="col-md-2 category-block hidden-sm hidden-xs">
<div class="category-top">
@__("blog.index.category")
</div>
<div class="category-split"></div>
<div class="category-list">
<ul class="nav nav-pills nav-stacked">
@{
cateData.forEach(function(cate) {
var link = cate.Link ? cate.Link : ("/blog" + (cate.Alias ? "/" + (cate.Alias) : ""));
<li class='@(currentCate === cate.Alias ? "active" : "")'>
<a href='@link'>
<img src="@cate.Img">
<span>@cate.CateName</span>
</a>
</li>
});
}
</ul>
</div>
</div>
<div class="col-md-8 col-md-offset-2 blog-list">
<div class="row data-block">
<div class="col-md-12">
<div class="list-wrap">
<div class="row top-bar">
<form id="filterForm" action="/blog/getPosts" method="Post">
<div class="col-md-7 col-sm-4 hidden-xs list-top-left">
<a class="current" title='@__("blog.index.sort_date")' sort="date">
@__("blog.index.date")
</a>
<a class="current" title='@__("blog.index.sort_title")' sort="title">
@__("blog.index.title")
</a>
<input id="CateAlias" type="text" value="@currentCate" name="CateAlias" class="hidden"/>
<input id="SortBy" type="text" value="0" name="SortBy" class="hidden"/>
<input id="PageIndex" type="text" value="1" name="PageIndex" class="hidden"/>
<input id="PageSize" type="text" value="@config.PageSize" name="PageSize" class="hidden"/>
</div>
<div class="col-md-5 list-top-right">
<div class="input-group">
<div class="input-group-btn">
<div data-resize="auto" data-initialize="selectlist" class="btn-group selectlist">
<button data-toggle="dropdown" type="button" class="btn btn-white dropdown-toggle">
<span class="selected-label"></span>
<span class="caret"></span>
<span class="sr-only">Toggle Dropdown</span>
</button>
<ul role="menu" class="dropdown-menu animated-quick fadeInDown">
<li data-value="0" data-selected="true" class="active">
<a href="#">@__("blog.index.full")</a>
</li>
<li data-value="1">
<a href="#">@__("blog.index.title")</a>
</li>
<li data-value="2">
<a href="#">@__("blog.index.tag")</a>
</li>
<li data-value="3">
<a href="#">@__("blog.index.date")</a>
</li>
</ul>
<input id="FilterType" type="text" readonly="readonly" aria_hidden="true" name="FilterType" class="hidden hidden-field"/>
</div>
</div>
<input type="text" placeholder='@__("blog.index.keyword")' name="Keyword" id="Keyword" class="form-control">
<div class="input-group-btn">
<button id="btnFilter" type="button" class="btn btn-white">
<i class="fa fa-search"></i>
<span class="hidden-sm hidden-xs">@__("blog.index.search")</span>
</button>
</div>
</div>
</div>
</form>
</div>
<ol class="list-unstyled"></ol>
<div id="load-list" style="display: none;" class="spinner">
<div class="bounce1"></div>
<div class="bounce2"></div>
<div class="bounce3"></div>
</div>
<div id="no-more" style="display: none;" class="text-muted text-center">@__("blog.index.reach_end")</div>
</div>
</div>
<div id="scrollSpy" class="col-md-1">
<ul id="page-nav" class="list-unstyled hidden-sm hidden-xs affix-top"></ul>
</div>
</div>
@this.renderPartial('./footer')
</div>
<div class="col-md-2 hidden-sm hidden-xs empty-block"></div>
</div>
<div class="post-cover"></div>
<div class="post-modal col-md-7 col-sm-12 col-xs-12">
<div class="modal-header">
<h4></h4>
</div>
<div class="modal-body">
<div style="display:none;" class="sk-cube-grid">
<div class="sk-cube sk-cube1"></div>
<div class="sk-cube sk-cube2"></div>
<div class="sk-cube sk-cube3"></div>
<div class="sk-cube sk-cube4"></div>
<div class="sk-cube sk-cube5"></div>
<div class="sk-cube sk-cube6"></div>
<div class="sk-cube sk-cube7"></div>
<div class="sk-cube sk-cube8"></div>
<div class="sk-cube sk-cube9"></div>
</div>
<div class="post-content">
<div></div>
</div>
</div>
<div class="modal-footer">
<div id="label-foot" style="margin-top: 3px;" class="col-md-7 text-left hidden-sm hidden-xs"></div>
<div class="col-md-5 text-right">
<button id="btnCloseModal" type="button" class="btn btn-white">@__("blog.index.close")</button>
<a id="btnFullMode" href="" target="_blank" class="btn btn-green">
<i class="fa fa-external-link"></i> @__("blog.index.full_mode")
</a>
</div>
</div>
</div>
@this.renderPartial('./top')
<script type="text/javascript" src="/libs/jquery/dist/jquery.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/bootstrap/dist/js/bootstrap.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/selectlist.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/malihu-custom-scrollbar-plugin/jquery.mCustomScrollbar.concat.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/highlight.pack.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/index.js" charset="utf-8"></script>
<script>
var logoPath = "@config.LogoPath";
var jiathis_config = {
data_track_clickback: true,
url: "http://@config.SiteDomain",
summary: "",
title: "@config.SiteName"
};
</script>
<script type="text/javascript" src="http://v3.jiathis.com/code/jia.js?uid=@config.JiaThisId" charset="utf-8"></script>
<script type="text/javascript" src="/libs/jquery-qrcode/dist/jquery.qrcode.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/top.js" charset="utf-8"></script>
</div>

123
views/blog/index.pug Normal file
View File

@@ -0,0 +1,123 @@
extends ../shared/layout
block content
link(href='/static/css/selectlist.css', rel='stylesheet')
link(href='/static/malihu-custom-scrollbar-plugin/jquery.mCustomScrollbar.css', rel='stylesheet')
link(href='https://cdn.bootcss.com/highlight.js/9.12.0/styles/github.min.css', rel='stylesheet')
link(href='/static/css/github-markdown.css', rel='stylesheet')
.container-fluid.render-body
.row
.col-md-2.category-block.hidden-sm.hidden-xs
.category-top
| #{__("blog.index.category")}
.category-split
.category-list
ul.nav.nav-pills.nav-stacked
li(class=`${currentCate === "" ? "active" : ""}`)
a(href='/blog')
img(src='/static/images/全部分类.svg')
span=__('Category.all')
each cate in cateData
li(class=`${currentCate === cate.Alias ? "active" : ""}`)
if(!cate.Link)
a(href=`/blog${cate.Alias ? "/" + cate.Alias : ""}`)
img(src=cate.Img)
span=cate.CateName
else
a(href=cate.Link, target='_blank')
img(src=cate.Img)
span=cate.CateName
li(class=`${currentCate === "other" ? "active" : ""}`)
a(href='/blog/other')
img(src='/static/images/未分类.svg')
span=__('Category.uncate')
.col-md-8.col-md-offset-2.blog-list
.row.data-block
.col-md-12
.list-wrap
.row.top-bar
form#filterForm(action='/blog/getPosts', method='Post')
.col-md-7.col-sm-4.hidden-xs.list-top-left
a.current(title=__("blog.index.sort_date"), sort='date')=__("blog.index.date")
= ' '
a(title='#{__("blog.index.sort_title")}',sort='title')=__("blog.index.title")
input#CateAlias.hidden(type='text', value=currentCate, name='CateAlias')
input#SortBy.hidden(type='text', value=0, name='SortBy')
input#PageIndex.hidden(type='text', value=1, name='PageIndex')
input#PageSize.hidden(type='text', value=settings.PageSize, name='PageSize')
.col-md-5.list-top-right
.input-group
.input-group-btn
.btn-group.selectlist(data-resize='auto', data-initialize='selectlist')
button.btn.btn-white.dropdown-toggle(data-toggle='dropdown', type='button')
span.selected-label
span.caret
span.sr-only Toggle Dropdown
ul.dropdown-menu.animated-quick.fadeInDown(role='menu')
li.active(data-value='0', data-selected='true')
a(href='#')=__("blog.index.full")
li(data-value='1')
a(href='#')=__("blog.index.title")
li(data-value='2')
a(href='#')=__("blog.index.tag")
li(data-value='3')
a(href='#')=__("blog.index.date")
input#FilterType.hidden.hidden-field(type='text', readonly="readonly", aria_hidden="true", name='FilterType')
input#Keyword.form-control(type='text', placeholder=__("blog.index.keyword"), name='Keyword')
.input-group-btn
button#btnFilter.btn.btn-white(type='button')
i.fa.fa-search
=' '
span.hidden-sm.hidden-xs=__("blog.index.search")
ol.list-unstyled
#load-list.spinner(style='display: none;')
.bounce1
.bounce2
.bounce3
#no-more.text-muted.text-center(style='display: none;')
| #{__("blog.index.reach_end")}
#scrollSpy.col-md-1
ul#page-nav.list-unstyled.hidden-sm.hidden-xs.affix-top
include ../shared/footer
.col-md-2.hidden-sm.hidden-xs.empty-block
.post-cover
.post-modal.col-md-7.col-sm-12.col-xs-12
.modal-header
h4
.modal-body
.sk-cube-grid(style='display:none;')
.sk-cube.sk-cube1
.sk-cube.sk-cube2
.sk-cube.sk-cube3
.sk-cube.sk-cube4
.sk-cube.sk-cube5
.sk-cube.sk-cube6
.sk-cube.sk-cube7
.sk-cube.sk-cube8
.sk-cube.sk-cube9
.post-content
div
.modal-footer
#label-foot.col-md-7.text-left.hidden-sm.hidden-xs(style='margin-top: 3px;')
.col-md-5.text-right
button#btnCloseModal.btn.btn-white(type='button')=__("blog.index.close")
a#btnFullMode.btn.btn-green(href='', target='_blank')
i.fa.fa-external-link
| #{__("blog.index.full_mode")}
include ../shared/top
script(type='text/javascript', src='/static/jquery/dist/jquery.min.js', charset='utf-8')
script(type='text/javascript', src='/static/bootstrap/dist/js/bootstrap.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/selectlist.js', charset='utf-8')
script(type='text/javascript', src='/static/malihu-custom-scrollbar-plugin/jquery.mCustomScrollbar.concat.min.js', charset='utf-8')
script(type='text/javascript', src='https://cdn.bootcss.com/highlight.js/9.12.0/highlight.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/index.js', charset='utf-8')
script.
var logoPath = "#{settings.LogoPath}";
var jiathis_config = {
data_track_clickback: true,
url: "http://#{settings.SiteDomain}",
summary: "",
title: "#{settings.SiteName}"
};
script(type='text/javascript', src='http://v3.jiathis.com/code/jia.js?uid=#{settings.JiaThisId}', charset='utf-8')
script(type='text/javascript', src='/static/jquery-qrcode/dist/jquery-qrcode.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/top.js', charset='utf-8')

View File

@@ -1,51 +0,0 @@
<div class="container-fluid detail-container">
<div class="row">
<div class="col-lg-4 col-lg-offset-4">
<div class="about-block animated fadeInDown">
<div class="widget-head-color-box navy-bg p-lg text-center">
<div class="m-b-md">
<h2 class="font-bold no-margins">@this.raw(about.FirstLine)</h2>
<h4>@this.raw(about.SecondLine)</h4>
</div>
<img alt="profile" src="@about.PhotoPath" class="img-circle profile-img m-b-md animated zoomIn"/>
<img alt="wechat" src="@about.QrcodePath" style="display:none;" class="wechat-img m-b-md animated zoomIn"/>
<h4>
<span id="job-title">@this.raw(about.ThirdLine)</span>
</h4>
</div>
<div class="widget-text-box">
<p>@this.raw(about.Profile)</p>
<div class="row">
<div class="col-md-6">
<i title='__("about.wechat")' class="fa fa-wechat"></i>
@this.raw(about.Wechat)
<i title='__("about.qr_code")' class="fa fa-lg fa-qrcode"></i>
</div>
<div class="col-md-6">
<i title='__("about.email")' class="fa fa-envelope"></i>
@this.raw(about.Email)
</div>
</div>
</div>
</div>
</div>
</div>
@this.renderPartial('./footer')
</div>
@this.renderPartial('./top')
<script type="text/javascript" src="/libs/jquery/dist/jquery.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/bootstrap/dist/js/bootstrap.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/jQuery-cycleText/dist/js/jquery.cycleText.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/about.js" charset="utf-8"></script>
<script>
var logoPath = "@config.LogoPath";
var jiathis_config = {
data_track_clickback: true,
url: window.location.href,
summary: "",
title: "@(config.SiteName) - 关于"
};
</script>
<script type="text/javascript" src="http://v3.jiathis.com/code/jia.js?uid=@config.JiaThisId" charset="utf-8"></script>
<script type="text/javascript" src="/libs/jquery-qrcode/dist/jquery.qrcode.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/top.js" charset="utf-8"></script>

41
views/misc/about.pug Normal file
View File

@@ -0,0 +1,41 @@
extends ../shared/layout
block content
.container-fluid.detail-container
.row
.col-lg-4.col-lg-offset-4
.about-block.animated.fadeInDown
.widget-head-color-box.navy-bg.p-lg.text-center
.m-b-md
h2.font-bold.no-margins!=about.FirstLine
h4!=about.SecondLine
img.img-circle.profile-img.m-b-md.animated.zoomIn(alt='profile', src=about.PhotoPath)
h4
span#job-title!=about.ThirdLine
.widget-text-box
p!=about.Profile
.row
.col-md-6
i.fab.fa-github(title=__("about.github"))
= ' '
a(href=about.Github, target='_blank')=about.Github
.col-md-6
i.fa.fa-envelope(title=__("about.email"))
= ' '
!=about.Email
include ../shared/footer
include ../shared/top
script(type='text/javascript', src='/static/jquery/dist/jquery.min.js', charset='utf-8')
script(type='text/javascript', src='/static/bootstrap/dist/js/bootstrap.min.js', charset='utf-8')
script(type='text/javascript', src='/static/jQuery-cycleText/dist/js/jquery.cycleText.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/about.js', charset='utf-8')
script.
var logoPath = "#{settings.LogoPath}";
var jiathis_config = {
data_track_clickback: true,
url: window.location.href,
summary: "",
title: "#{settings.SiteName + ' - 关于'}"
};
script(type='text/javascript', src='http://v3.jiathis.com/code/jia.js?uid=#{settings.JiaThisId}', charset='utf-8')
script(type='text/javascript', src='/static/jquery-qrcode/dist/jquery-qrcode.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/top.js', charset='utf-8')

View File

@@ -1,53 +0,0 @@
<div class="container-fluid detail-container">
<div class="row">
<div style="min-height: 800px;" class="col-sm-12 col-xs-12 col-md-8 col-md-offset-2 detail-wrap">
<div id="SOHUCS" sid="guestbook"></div>
<script>
(function () {
var appid = '@config.ChangyanId';
var conf = '@config.ChangyanConf';
var width = window.innerWidth || document.documentElement.clientWidth;
if (width < 960) {
window.document.write('<script id="changyan_mobile_js" charset="utf-8" type="text/javascript" src="http://changyan.sohu.com/upload/mobile/wap-js/changyan_mobile.js?client_id=' + appid + '&conf=' + conf + '"><\/script>');
} else {
var loadJs = function (d, a) {
var c = document.getElementsByTagName("head")[0] || document.head || document.documentElement;
var b = document.createElement("script");
b.setAttribute("type", "text/javascript");
b.setAttribute("charset", "UTF-8");
b.setAttribute("src", d);
if (typeof a === "function") {
if (window.attachEvent) {
b.onreadystatechange = function () {
var e = b.readyState;
if (e === "loaded" || e === "complete") {
b.onreadystatechange = null;
a()
}
}
} else {
b.onload = a
}
}
c.appendChild(b)
};
loadJs("http://changyan.sohu.com/upload/changyan.js", function () {
window.changyan.api.config({
appid: appid, conf: conf
})
});
}
})();
</script>
</div>
</div>
@this.renderPartial('./footer')
</div>
@this.renderPartial('./top')
<script type="text/javascript" src="/libs/jquery/dist/jquery.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/libs/bootstrap/dist/js/bootstrap.min.js" charset="utf-8"></script>
<script type="text/javascript" src="/javascripts/guestbook.js" charset="utf-8"></script>
<script>
var tools = [2];
</script>
<script type="text/javascript" src="/javascripts/top.js" charset="utf-8"></script>

59
views/misc/guestbook.pug Normal file
View File

@@ -0,0 +1,59 @@
extends ../shared/layout
block content
link(href='/static/sweetalert/dist/sweetalert.css', rel='stylesheet')
script(type='text/javascript', src='/static/sweetalert/dist/sweetalert.min.js', charset='utf-8')
.container-fluid.detail-container
.row
.col-sm-12.col-xs-12.col-md-8.col-md-offset-2.detail-wrap
#SOHUCS(sid='guestbook')
script.
(function () {
var appid = '#{settings.ChangyanId}';
var conf = '#{settings.ChangyanConf}';
if (!appid || !conf) {
swal({
title: '配置异常',
text: '请先在后台系统设置中配置畅言参数!',
type: "error"
});
}
var width = window.innerWidth || document.documentElement.clientWidth;
if (width < 960) {
window.document.write('<script id="changyan_mobile_js" charset="utf-8" type="text/javascript" src="http://changyan.sohu.com/upload/mobile/wap-js/changyan_mobile.js?client_id=' + appid + '&conf=' + conf + '"><\/script>');
} else {
var loadJs = function (d, a) {
var c = document.getElementsByTagName("head")[0] || document.head || document.documentElement;
var b = document.createElement("script");
b.setAttribute("type", "text/javascript");
b.setAttribute("charset", "UTF-8");
b.setAttribute("src", d);
if (typeof a === "function") {
if (window.attachEvent) {
b.onreadystatechange = function () {
var e = b.readyState;
if (e === "loaded" || e === "complete") {
b.onreadystatechange = null;
a()
}
}
} else {
b.onload = a
}
}
c.appendChild(b)
};
loadJs("http://changyan.sohu.com/upload/changyan.js", function () {
window.changyan.api.config({
appid: appid, conf: conf
})
});
}
})();
include ../shared/footer
include ../shared/top
script(type='text/javascript', src='/static/jquery/dist/jquery.min.js', charset='utf-8')
script(type='text/javascript', src='/static/bootstrap/dist/js/bootstrap.min.js', charset='utf-8')
script(type='text/javascript', src='/static/js/guestbook.js', charset='utf-8')
script.
var tools = [2];
script(type = 'text/javascript', src = '/static/js/top.js', charset = 'utf-8')

View File

@@ -1,29 +0,0 @@
@{this.layout = null}
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="/libs/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
<link href="/stylesheets/bootstrap-addon.css" rel="stylesheet">
<link href="/stylesheets/site.css" rel="stylesheet">
<link href="/stylesheets/error.css" rel="stylesheet">
<title></title>
</head>
<body>
<div class="container-fluid back-img">
<div class="row">
<div class="col-md-8 col-md-offset-2">
<div class="error-block">
<h1>@code</h1>
<div class="desc">@message</div>
<a href="/" class="btn btn-green btn-lg">
<i class="fa fa-home"></i> @__("error.back_to_home")
</a>
</div>
</div>
</div>
</div>
</body>
</html>

22
views/shared/error.pug Normal file
View File

@@ -0,0 +1,22 @@
doctype html
html(lang='zh-CN')
head
meta(http-equiv='Content-Type', content='text/html; charset=utf-8')
meta(charset='utf-8')
meta(name='viewport', content='width=device-width, initial-scale=1.0')
link(href='/static/bootstrap/dist/css/bootstrap.min.css', rel='stylesheet')
link(href='/static/css/bootstrap-addon.css', rel='stylesheet')
link(href='/static/css/site.css', rel='stylesheet')
link(href='/static/css/error.css', rel='stylesheet')
title=title
body
.container-fluid.back-img
.row
.col-md-8.col-md-offset-2
.error-block
h1=code
.desc=message
div=error
a.btn.btn-green.btn-lg(href='/')
i.fa.fa-home
| #{__("error.back_to_home")}

View File

@@ -1,7 +0,0 @@
<div class="row footer">
<div class="col-md-12">
<footer>
<p>@(new Date().getFullYear()) © All Rights Reserved@(config.RecordNo ? ' | ' + config.RecordNo : '') <span class="hidden-xs"> | <a href="/admin" target="_blank">@__("footer.admin_system")</a></span></p>
</footer>
</div>
</div>

8
views/shared/footer.pug Normal file
View File

@@ -0,0 +1,8 @@
.row.footer
.col-md-12
footer
p
| #{new Date().getFullYear()} © All Rights Reserved#{settings.RecordNo ? ' | ' + settings.RecordNo : ''}
span.hidden-xs
=' | '
a(href='/admin', target='_blank')=__("footer.admin_system")

View File

@@ -1,90 +0,0 @@
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="keywords" content="@(model.keywords ? model.keywords : 'blog,iBlog')">
<meta name="description" content="@(model.description ? model.description : 'iBlog')">
<link href="/libs/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
<link href="/stylesheets/bootstrap-addon.css" rel="stylesheet">
<link href="/stylesheets/site.css" rel="stylesheet">
<link href="/libs/font-awesome/css/font-awesome.min.css" rel="stylesheet">
<link href="/stylesheets/share.css" rel="stylesheet">
<link href="/stylesheets/animate-custom.css" rel="stylesheet">
<title>@config.SiteName</title>
</head>
<body class="fuelux">
@if(model.isRoot) {
<link href="/stylesheets/home-loading.css" rel="stylesheet"/>
<div id="home-loading" class="home-loading">
<div id="loading-con" style="display:none;" class="loading-con">
<div class="loading-circle"></div>
<script>
var home_loading_begin = new Date();
document.body.style.overflow = "hidden";
function imgLoad() {
document.getElementById("home-loading").style.background = "#f3f3f4";
document.getElementById("loading-con").style.display = "block";
}
</script>
<img id="loadingImg" alt="loading" src="@config.LogoPath" onload="imgLoad();"/>
</div>
</div>
}
<div class="navbar navbar-default navbar-fixed-top">
<div class="container-fluid">
<div class="navbar-header">
<button type="button" data-toggle="collapse" data-target=".navbar-collapse" class="navbar-toggle">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a href="/" class="navbar-brand">
<img src="@config.LogoPath"/>
<span>@config.SiteName</span>
</a>
</div>
<div class="navbar-collapse collapse">
<ul class="nav navbar-nav my-nav-pills navbar-right">
<li>
<a href="/blog">
<i class="fa fa-file-text-o fa-fw"></i> @__("layout.blog")
</a>
</li>
@if(config.ShowGuestbook === 'true') {
<li>
<a href="/guestbook">
<i class="fa fa-edit fa-fw"></i> @__("layout.message")
</a>
</li>
}
<li>
<a href="/about">
<i class="fa fa-user fa-fw"></i> @__("layout.about")
</a>
</li>
<li>
<a href="/locale/@__('lang-code')">
<i class="fa fa-language fa-fw"></i> @__("language")
</a>
</li>
</ul>
</div>
</div>
</div>
@this.renderBody()
@if(config.EnableStatistics === 'true') {
//百度统计代码
<script>
var _hmt = _hmt || [];
(function () {
var hm = document.createElement("script");
hm.src = "//hm.baidu.com/hm.js?@config.StatisticsId";
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(hm, s);
})();
</script>
}
</body>
</html>

70
views/shared/layout.pug Normal file
View File

@@ -0,0 +1,70 @@
doctype html
html(lang='zh-CN')
head
meta(http-equiv='Content-Type', content='text/html; charset=utf-8')
meta(charset='utf-8')
meta(name='viewport', content='width=device-width, initial-scale=1.0')
meta(name='keywords', content=`${keywords ? keywords : "blog,iBlog"}`)
meta(name='description', content=`${description ? description : "iBlog"}`)
link(href='/static/bootstrap/dist/css/bootstrap.min.css', rel='stylesheet')
link(href='/static/css/bootstrap-addon.css', rel='stylesheet')
link(href='/static/css/site.css', rel='stylesheet')
link(href='/static/@fortawesome/fontawesome-free/css/all.min.css', rel='stylesheet')
link(href='/static/css/share.css', rel='stylesheet')
link(href='/static/css/animate-custom.css', rel='stylesheet')
title=title
body.fuelux
if(isRoot)
link(href='/static/css/home-loading.css', rel='stylesheet')
#home-loading.home-loading
#loading-con.loading-con(style='display:none;')
.loading-circle
script.
var home_loading_begin = new Date();
document.body.style.overflow = "hidden";
function imgLoad() {
document.getElementById("home-loading").style.background = "#f3f3f4";
document.getElementById("loading-con").style.display = "block";
}
img#loadingImg(alt='loading', src=settings.LogoPath, onload='imgLoad();')
.navbar.navbar-default.navbar-fixed-top
.container-fluid
.navbar-header
button.navbar-toggle(type='button', data-toggle='collapse', data-target='.navbar-collapse')
span.icon-bar
span.icon-bar
span.icon-bar
a.navbar-brand(href='/')
img(src=settings.LogoPath)
=' '
span=settings.SiteName
.navbar-collapse.collapse
ul.nav.navbar-nav.my-nav-pills.navbar-right
li
a(href='/blog')
i.fa.fa-pen-nib.fa-fw
| #{__("layout.blog")}
if(settings.ShowGuestbook === 'true')
li
a(href='/guestbook')
i.fa.fa-comment-dots.fa-fw
| #{__("layout.message")}
li
a(href='/about')
i.fa.fa-user.fa-fw
| #{__("layout.about")}
li
a.locale-link(href=`/locale/${__("lang-code")}`)
i.fa.fa-language.fa-fw
| #{__("language")}
block content
if(settings.EnableStatistics === 'true')
// 百度统计代码
script.
var _hmt = _hmt || [];
(function () {
var hm = document.createElement("script");
hm.src = '//hm.baidu.com/hm.js?#{settings.StatisticsId}';
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(hm, s);
})();

View File

@@ -1,125 +0,0 @@
@{this.layout = null}
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title></title>
<link href="/libs/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
<link href="/stylesheets/admin.css" rel="stylesheet">
<link href="/libs/font-awesome/css/font-awesome.min.css" rel="stylesheet">
<link href="/libs/animate.css/animate.min.css" rel="stylesheet">
</head>
<body class="fuelux">
<div id="wrapper">
<nav role="navigation" class="navbar-default navbar-static-side">
<div class="sidebar-collapse">
<ul id="side-menu" class="nav metismenu">
<li class="nav-header">
<div class="dropdown profile-element">
<span>
<a href="/" target="_blank">
<img alt="image" class="img-circle img-lg" src="@config.LogoPath">
</a>
</span>
<a href="/admin">
<h4>@__("layoutAdmin.title")</h4>
</a>
</div>
<div class="logo-element">
<img alt="image" class="img-circle img-sm" src="@config.LogoPath">
</div>
</li>
<li>
<a href="/admin">
<i class="fa fa-bar-chart-o"></i>
<span class="nav-label">@__("layoutAdmin.web_statistic")</span>
</a>
</li>
<li>
<a href="#">
<i class="fa fa-file-text-o"></i>
<span class="nav-label">@__("layoutAdmin.blog_management")</span>
<span class="fa arrow"></span>
</a>
<ul class="nav nav-second-level collapse">
<li>
<a href="/admin/newarticle">@__("layoutAdmin.new_article")</a>
</li>
<li>
<a href="/admin/categorymanage">@__("layoutAdmin.classified_management")</a>
</li>
<li>
<a href="/admin/articlemanage">@__("layoutAdmin.article_management")</a>
</li>
</ul>
</li>
<li>
<a href="/admin/comments">
<i class="fa fa-comments-o"></i>
<span class="nav-label">@__("layoutAdmin.comment_management")</span>
</a>
</li>
<li>
<a href="/admin/guestbook">
<i class="fa fa-edit"></i>
<span class="nav-label">@__("layoutAdmin.msg_management")</span>
</a>
</li>
<li>
<a href="/admin/aboutmanage">
<i class="fa fa-user"></i>
<span class="nav-label">@__("layoutAdmin.about_management")</span>
</a>
</li>
<li>
<a href="/admin/cachemanage">
<i class="fa fa-database"></i>
<span class="nav-label">@__("layoutAdmin.cache_management")</span>
</a>
</li>
<li>
<a href="/admin/exception">
<i class="fa fa-bug"></i>
<span class="nav-label">@__("layoutAdmin.exception_management")</span>
</a>
</li>
<li>
<a href="/admin/settings">
<i class="fa fa-gears"></i>
<span class="nav-label">@__("layoutAdmin.settings")</span>
</a>
</li>
</ul>
</div>
</nav>
<div id="page-wrapper" class="gray-bg">
<div class="row border-bottom">
<nav role="navigation" style="margin-bottom: 0" class="navbar navbar-static-top">
<div class="navbar-header">
<a href="#" class="navbar-minimalize minimalize-styl-2 btn btn-primary">
<i class="fa fa-bars"></i>
</a>
</div>
<form id="logoutForm" action="/logout" method="Post">
<ul class="nav navbar-top-links navbar-right">
<li>
<a href="javascript:$('#logoutForm').submit()" title='@__("layoutAdmin.btn_logout")'>
<i class="fa fa-power-off"></i> @__("layoutAdmin.btn_logout")
</a>
</li>
</ul>
</form>
</nav>
</div>
@this.renderBody()
<div class="footer">
<div class="text-center">
@(new Date().getFullYear()) © All Rights Reserved@(config.RecordNo ? (' | ' + config.RecordNo) : '')
</div>
</div>
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,81 @@
doctype html
html(lang='zh-CN')
head
meta(http-equiv='Content-Type', content='text/html; charset=utf-8')
meta(charset='utf-8')
meta(name='viewport', content='width=device-width, initial-scale=1.0')
title=title
link(href='/static/bootstrap/dist/css/bootstrap.min.css', rel='stylesheet')
link(href='/static/css/admin.css', rel='stylesheet')
link(href='/static/@fortawesome/fontawesome-free/css/all.min.css', rel='stylesheet')
link(href='/static/animate.css/animate.min.css', rel='stylesheet')
body.fuelux
#wrapper
nav.navbar-default.navbar-static-side(role='navigation')
.sidebar-collapse
ul#side-menu.nav.metismenu
li.nav-header
.dropdown.profile-element
span
a(href='/', target='_blank')
img.img-circle.img-lg(alt='image', src=settings.LogoPath)
a(href='/admin')
h4=__("layoutAdmin.title")
.logo-element
img.img-circle.img-sm(alt='image', src=settings.LogoPath)
li
a(href='/admin')
i.fa.fa-chart-bar
span.nav-label=__("layoutAdmin.web_statistic")
li
a(href='#')
i.fa.fa-file-alt
span.nav-label=__("layoutAdmin.blog_management")
span.fa.arrow
ul.nav.nav-second-level.collapse
li
a(href='/admin/newarticle')=__("layoutAdmin.new_article")
li
a(href='/admin/categorymanage')=__("layoutAdmin.classified_management")
li
a(href='/admin/articlemanage')=__("layoutAdmin.article_management")
li
a(href='/admin/comments')
i.fa.fa-edit
span.nav-label=__("layoutAdmin.comment_management")
li
a(href='/admin/guestbook')
i.fa.fa-comment-dots
span.nav-label=__("layoutAdmin.msg_management")
li
a(href='/admin/aboutmanage')
i.fa.fa-user
span.nav-label=__("layoutAdmin.about_management")
li
a(href='/admin/cachemanage')
i.fa.fa-database
span.nav-label=__("layoutAdmin.cache_management")
li
a(href='/admin/exception')
i.fa.fa-bug
span.nav-label=__("layoutAdmin.exception_management")
li
a(href='/admin/settings')
i.fa.fa-cogs
span.nav-label=__("layoutAdmin.settings")
#page-wrapper.gray-bg
.row.border-bottom
nav.navbar.navbar-static-top(role='navigation', style='margin-bottom: 0')
.navbar-header
a.navbar-minimalize.minimalize-styl-2.btn.btn-primary(href='#')
i.fa.fa-bars
form#logoutForm(action='/logout', method='Post')
ul.nav.navbar-top-links.navbar-right
li
a(href="javascript:$('#logoutForm').submit()", title=__("layoutAdmin.btn_logout"))
i.fas.fa-sign-out-alt
| #{__("layoutAdmin.btn_logout")}
block content
.footer
.text-center
| #{new Date().getFullYear()} © All Rights Reserved#{settings.RecordNo ? ' | ' + settings.RecordNo : ''}

View File

@@ -1,41 +0,0 @@
<ul class="fixed-tool list-unstyled">
@if(config.EnableShare === 'true') {
<li style="display: none;" class="share-li">
<div id="share-menu" class="jiathis_style_32x32">
<a class="jiathis_button_weixin">
<i class="fa fa-weixin"></i>
</a>
<a class="jiathis_button_qzone">
<i class="fa fa-qq"></i>
</a>
<a class="jiathis_button_tsina">
<i class="fa fa-weibo"></i>
</a>
<a class="jiathis_button_renren">
<i class="fa fa-renren"></i>
</a>
<a title="@__('top.share')" class="menu">
<div id="ss_toggle" data-rot="180" class="share">
<div class="circle"></div>
<div class="bar"></div>
</div>
</a></div>
</li>
}
<li style="display: none;" class="qr-li hidden-sm hidden-xs">
<a id="qrBtn" title="@__('top.qr_code')">
<i class="fa fa-qrcode"></i>
</a>
<div class="qrcontain popover left animated fadeInLeft">
<div class="arrow"></div>
<div class="popover-content text-center">
<div id="qrcode"></div>
<span>@__("top.small_screen")</span>
</div>
</div>
</li>
<li id="scrollTop" style="display: none;" class="top-li">
<a title="@__('top.back_to_top')"><i class="fa fa-arrow-up"></i>
</a>
</li>
</ul>

28
views/shared/top.pug Normal file
View File

@@ -0,0 +1,28 @@
ul.fixed-tool.list-unstyled
if(settings.EnableShare === 'true')
li.share-li(style='display: none;')
#share-menu.jiathis_style_32x32
a.jiathis_button_weixin
i.fab.fa-weixin
a.jiathis_button_qzone
i.fab.fa-qq
a.jiathis_button_tsina
i.fab.fa-weibo
a.jiathis_button_renren
i.fab.fa-renren
a.menu(title=__("top.share"))
#ss_toggle.share(data-rot='180')
.circle
.bar
li.qr-li.hidden-sm.hidden-xs(style='display: none;')
a#qrBtn(title=__("top.qr_code"))
i.fa.fa-qrcode
.qrcontain.popover.left.animated.fadeInLeft
.arrow
.popover-content.text-center
#qrcode
span=__("top.small_screen")
li#scrollTop.top-li(style='display: none;')
a(title=__("top.back_to_top"))
i.fa.fa-arrow-up(style="top: 2px;")