mirror of
https://github.com/eiblog/eiblog.git
synced 2026-03-01 00:34:58 +08:00
init
This commit is contained in:
@@ -0,0 +1 @@
|
||||
{{define "notfound"}}<div id=content class=inner><article class="post post-404"><h1 class=title>404 - 什么也没有</h1><div class="entry-content"><p>你要找的东东不存在喔!</p><p>请检查 URL 拼写是否有误,或者通过<a href="/search.html"> 站内搜索 </a>搜一下吧~</p></div></article></div>{{end}}
|
||||
@@ -0,0 +1 @@
|
||||
{{define "about"}}<div id=content class=inner>{{with .Article}}<article class="post post-{{.ID}}" itemscope itemtype="http://schema.org/Article"><h1 class=title itemprop=headline>{{.Title}}</h1><div class="entry-content" itemprop=articleBody>{{str2html .Content}}</div></article><section id=comments><h1 class=title>Comments<span id=switch_thread_mode></h1><div id=disqus_thread class=ds-thread data-identifier="post-{{.Slug}}" data-url="{{if $.EnableHttps}}https://{{else}}http://{{end}}{{$.Domain}}/post/{{.Slug}}.html"></div><div id=simple_thread data-id="golomb-coded-sets"></div></section>{{end}}</div>{{end}}
|
||||
@@ -0,0 +1,178 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh-cn">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1">
|
||||
<meta name="renderer" content="webkit">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>{{.Title}}</title>
|
||||
<meta name="robots" content="noindex, nofollow">
|
||||
<link rel="stylesheet" href="/static/admin/background.css">
|
||||
<link rel="stylesheet" href="/static/admin/style.css">
|
||||
<!--[if lt IE 9]>
|
||||
<script src="//cdn.bootcss.com/html5shiv/3.7.2/html5shiv.min.js"></script>
|
||||
<script src="//cdn.bootcss.com/respond.js/1.4.2/respond.min.js"></script>
|
||||
<![endif]-->
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<!--[if lt IE 9]>
|
||||
<div class="alert alert-danger topframe" role="alert">你的浏览器实在<strong>太太太太太太旧了</strong>,放学别走,升级完浏览器再说 <a target="_blank" class="alert-link" href="http://browsehappy.com">立即升级</a></div>
|
||||
<![endif]-->
|
||||
<script src="/static/admin/jquery.js"></script>
|
||||
<script src="/static/admin/jquery-ui.js"></script>
|
||||
<script src="/static/admin/typecho.js"></script>
|
||||
<div class="typecho-head-nav clearfix" role="navigation">
|
||||
<nav id="typecho-nav-list">
|
||||
<ul class="root {{if .Console}}focus{{end}}">
|
||||
<li class="parent"><a target="_self" href="/admin/profile">控制台</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li {{if eq .Path "/admin/profile"}}class="focus" {{end}}><a target="_self" href="/admin/profile">个人设置</a></li>
|
||||
<li {{if eq .Path "/admin/plugins"}}class="focus" {{end}}><a target="_self" href="/admin/plugins">插件</a></li>
|
||||
<li class="last {{if eq .Path "/admin/themes"}}focus{{end}}"><a target="_self" href="/admin/themes">外观</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root {{if .Post}}focus{{end}}">
|
||||
<li class="parent"><a target="_self" href="/admin/write-post">撰写</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li class="last {{if eq .Path "/admin/write-post"}}focus{{end}}"><a target="_self" href="/admin/write-post">撰写文章</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root {{if .Manage}}focus{{end}}">
|
||||
<li class="parent"><a target="_self" href="/admin/manage-posts">管理</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li {{if eq .Path "/admin/manage-posts"}}class="focus" {{end}}><a target="_self" href="/admin/manage-posts">文章</a></li>
|
||||
<li {{if eq .Path "/admin/manage-series"}}class="focus" {{end}}><a target="_self" href="/admin/manage-series">专题</a></li>
|
||||
{{if eq .Path "/admin/add-serie"}}<li class="focus"><a target="_self" href="/admin/add-serie">{{if .Edit}}编辑专题{{else}}新增专题{{end}}</a></li>{{end}}
|
||||
<li class="last {{if eq .Path "/admin/manage-tags"}}focus{{end}}"><a target="_self" href="/admin/manage-tags">标签</a></li>
|
||||
<li class="last {{if eq .Path "/admin/manage-draft"}}focus{{end}}"><a target="_self" href="/admin/manage-draft">草稿箱</a></li>
|
||||
<li class="last {{if eq .Path "/admin/manage-trash"}}focus{{end}}"><a target="_self" href="/admin/manage-trash">回收箱</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root {{if .Setting}}focus{{end}}">
|
||||
<li class="parent"><a target="_self" href="/admin/options-general">设置</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li {{if eq .Path "/admin/options-general"}}class="focus" {{end}}><a target="_self" href="/admin/options-general">基本</a></li>
|
||||
<li class="last {{if eq .Path "/admin/options-discussion"}}focus{{end}}"><a target="_self" href="/admin/options-discussion">阅读</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
</nav>
|
||||
<div class="operate">
|
||||
<a target="_self" title="{{.LastLogin}}" href="/admin/profile" class="author">{{.Author}}</a><a class="exit" href="/admin/login?logout=true">登出</a><a target="_back" href="/">网站</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="main">
|
||||
{{if .Profile}}{{template "admin-profile" .}}{{else if .Post}}{{template "admin-post" .}}{{else if .Posts}}{{template "admin-posts" .}}{{else if .Series}}{{template "admin-series" .}}{{else if .Serie}}{{template "admin-serie" .}}{{else if .Tags}}{{template "admin-tags" .}}{{else if .General}}{{template "admin-general" .}}{{else if .Discussion}}{{template "admin-discussion" .}}{{else if .Draft}}{{template "admin-draft" .}}{{else if .Trash}}{{template "admin-trash" .}}{{end}}
|
||||
</div>
|
||||
<div class="typecho-foot" role="contentinfo">
|
||||
<div class="copyright">
|
||||
<a href="http://typecho.org" class="i-logo-s">Typecho</a>
|
||||
<p>由 <a href="http://typecho.org">Typecho</a> 提供皮肤, 版本 1.0 (14.10.10)</p>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
(function () {
|
||||
$(document).ready(function() {
|
||||
// 处理消息机制
|
||||
(function () {
|
||||
cookies = {
|
||||
notice : $.cookie( 'notice'),
|
||||
noticeType : $.cookie( 'notice_type'),
|
||||
highlight : $.cookie('notice_highlight')
|
||||
},
|
||||
path = '/';
|
||||
|
||||
if (!!cookies.notice && 'success|notice|error'.indexOf(cookies.noticeType) >= 0) {
|
||||
var head = $('.typecho-head-nav'),
|
||||
p = $('<div class="message popup ' + cookies.noticeType + '">'
|
||||
+ '<ul><li>' + $.parseJSON(cookies.notice).join('</li><li>')
|
||||
+ '</li></ul></div>'), offset = 0;
|
||||
|
||||
if (head.length > 0) {
|
||||
p.insertAfter(head);
|
||||
offset = head.outerHeight();
|
||||
} else {
|
||||
p.prependTo(document.body);
|
||||
}
|
||||
|
||||
function checkScroll () {
|
||||
if ($(window).scrollTop() >= offset) {
|
||||
p.css({
|
||||
'position' : 'fixed',
|
||||
'top' : 0
|
||||
});
|
||||
} else {
|
||||
p.css({
|
||||
'position' : 'absolute',
|
||||
'top' : offset
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
$(window).scroll(function () {
|
||||
checkScroll();
|
||||
});
|
||||
|
||||
checkScroll();
|
||||
|
||||
p.slideDown(function () {
|
||||
var t = $(this), color = '#C6D880';
|
||||
|
||||
if (t.hasClass('error')) {
|
||||
color = '#FBC2C4';
|
||||
} else if (t.hasClass('notice')) {
|
||||
color = '#FFD324';
|
||||
}
|
||||
|
||||
t.effect('highlight', {color : color})
|
||||
.delay(5000).slideUp(function () {
|
||||
$(this).remove();
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
$.cookie('notice', null, {path : path});
|
||||
$.cookie('notice_type', null, {path : path});
|
||||
}
|
||||
|
||||
if (cookies.highlight) {
|
||||
$('#' + cookies.highlight).effect('highlight', 1000);
|
||||
$.cookie('notice_highlight', null, {path : path});
|
||||
}
|
||||
})();
|
||||
|
||||
|
||||
// 导航菜单 tab 聚焦时展开下拉菜单
|
||||
(function () {
|
||||
$('#typecho-nav-list').find('.parent a').focus(function() {
|
||||
$('#typecho-nav-list').find('.child').hide();
|
||||
$(this).parents('.root').find('.child').show();
|
||||
});
|
||||
$('.operate').find('a').focus(function() {
|
||||
$('#typecho-nav-list').find('.child').hide();
|
||||
});
|
||||
})();
|
||||
|
||||
// if ($('.typecho-login').length == 0) {
|
||||
// $('a').each(function() {
|
||||
// var t = $(this),
|
||||
// href = t.attr('href');
|
||||
|
||||
// if ((href && href[0] == '#') || /^http\:\/\/localhost\/admin\/.*$/.exec(href)) {
|
||||
// return;
|
||||
// }
|
||||
|
||||
// t.attr('target', '_blank');
|
||||
// });
|
||||
// }
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@@ -0,0 +1,3 @@
|
||||
{{define "admin-discussion"}}
|
||||
|
||||
{{end}}
|
||||
@@ -0,0 +1,81 @@
|
||||
{{define "admin-draft"}}
|
||||
<div class="body container">
|
||||
<div class="typecho-page-title">
|
||||
<h2>草稿箱</h2>
|
||||
</div>
|
||||
<div class="row typecho-page-main manage-metas">
|
||||
<div class="col-mb-12" role="main">
|
||||
<form method="post" name="manage_draft" class="operate-form">
|
||||
<div class="typecho-list-operate clearfix">
|
||||
<div class="operate">
|
||||
<label><i class="sr-only">全选</i>
|
||||
<input type="checkbox" class="typecho-table-select-all" />
|
||||
</label>
|
||||
<div class="btn-group btn-drop">
|
||||
<button class="btn dropdown-toggle btn-s" type="button"><i class="sr-only">操作</i>选中项 <i class="i-caret-down"></i></button>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a lang="此草稿箱下的所有内容将被永久删除, 你确认要删除这些文章吗?" href="/admin/api/draft-delete">删除</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="search" role="search">
|
||||
</div>
|
||||
</div>
|
||||
<div class="typecho-table-wrap">
|
||||
<table class="typecho-list-table">
|
||||
<colgroup>
|
||||
<col width="20" />
|
||||
<col width="40%" />
|
||||
<col width="" />
|
||||
<col width="12%" />
|
||||
<col width="14%" />
|
||||
<col width="14%" />
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th> </th>
|
||||
<th>标题</th>
|
||||
<th>作者</th>
|
||||
<th>专题</th>
|
||||
<th>创建</th>
|
||||
<th>保存</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{range .List}}
|
||||
<tr id="mid-article-{{.ID}}">
|
||||
<td>
|
||||
<input type="checkbox" value="{{.ID}}" name="mid[]" />
|
||||
</td>
|
||||
<td><a href="/admin/write-post?cid={{.ID}}">{{.Title}}</a></td>
|
||||
<td>{{.Author}}</td>
|
||||
<td>{{if gt .SerieID 0}}专题ID:{{.SerieID}}{{else}}--{{end}}</td>
|
||||
<td>{{dateformat .CreateTime "2006/01/02 15:04"}}</td>
|
||||
<td>{{dateformat .UpdateTime "2006/01/02 15:04"}}</td>
|
||||
</tr>
|
||||
{{end}}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
(function() {
|
||||
$(document).ready(function() {
|
||||
$('.typecho-list-table').tableSelectable({
|
||||
checkEl: 'input[type=checkbox]',
|
||||
rowEl: 'tr',
|
||||
selectAllEl: '.typecho-table-select-all',
|
||||
actionEl: '.dropdown-menu a,button.btn-operate'
|
||||
});
|
||||
|
||||
$('.btn-drop').dropdownMenu({
|
||||
btnEl: '.dropdown-toggle',
|
||||
menuEl: '.dropdown-menu'
|
||||
});
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
{{end}}
|
||||
@@ -0,0 +1,3 @@
|
||||
{{define "admin-general"}}
|
||||
|
||||
{{end}}
|
||||
@@ -0,0 +1,38 @@
|
||||
<!Doctype html>
|
||||
<html lang="zh-cn">
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta content="width=device-width,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" name=viewport>
|
||||
<meta name=robots content="noindex, nofollow">
|
||||
<title>Login | {{.BTitle}}</title>
|
||||
<link rel=stylesheet href="/static/admin/background.css">
|
||||
</head>
|
||||
|
||||
<body class="body-100">
|
||||
<div class="typecho-login-wrap">
|
||||
<div class="typecho-login">
|
||||
<h1><a href="/">{{.BTitle}}</a></h1>
|
||||
<form action="/admin/login" method=post>
|
||||
<p>
|
||||
<label for=user class="sr-only">用户名</label>
|
||||
<input type=text id=user name=user value="" placeholder="用户名" class="text-l w-100">
|
||||
</p>
|
||||
<p>
|
||||
<label for=password class="sr-only">密码</label>
|
||||
<input type=password id=password name=password class="text-l w-100" placeholder="密码">
|
||||
</p>
|
||||
<!-- <p>
|
||||
<label for=code class="sr-only">两步验证</label>
|
||||
<input type=text id=code name=code class="text-l w-100" placeholder="两步验证">
|
||||
</p> -->
|
||||
<p class=submit>
|
||||
<button type=submit class="btn btn-l w-100 primary">登录</button>
|
||||
</p>
|
||||
</form>
|
||||
<p class="more-link">管理后台皮肤来自于<a href="http://typecho.org" target=_blank>Typecho</a>.</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@@ -0,0 +1,328 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html class="no-js">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1">
|
||||
<meta name="renderer" content="webkit">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>管理文章 - Hello World - Powered by Typecho</title>
|
||||
<meta name="robots" content="noindex, nofollow">
|
||||
<link rel="stylesheet" href="http://localhost/admin/css/normalize.css?v=14.10.10">
|
||||
<link rel="stylesheet" href="http://localhost/admin/css/grid.css?v=14.10.10">
|
||||
<link rel="stylesheet" href="http://localhost/admin/css/style.css?v=14.10.10">
|
||||
<!--[if lt IE 9]>
|
||||
<script src="http://localhost/admin/js/html5shiv.js?v=14.10.10"></script>
|
||||
<script src="http://localhost/admin/js/respond.js?v=14.10.10"></script>
|
||||
<![endif]-->
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<!--[if lt IE 9]>
|
||||
<div class="message error browsehappy" role="dialog">当前网页 <strong>不支持</strong> 你正在使用的浏览器. 为了正常的访问, 请 <a href="http://browsehappy.com/">升级你的浏览器</a>.</div>
|
||||
<![endif]-->
|
||||
<div class="typecho-head-nav clearfix" role="navigation">
|
||||
<nav id="typecho-nav-list">
|
||||
<ul class="root focus">
|
||||
<li class="parent"><a target="_self" href="/admin/home">控制台</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li target="_self" class="focus"><a href="/admin/home">概要</a></li>
|
||||
<li><a target="_self" href="/admin/profile">个人设置</a></li>
|
||||
<li><a target="_self" href="/admin/plugin">插件</a></li>
|
||||
<li class="last"><a target="_self" href="/admin/theme">外观</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root">
|
||||
<li class="parent"><a target="_self" href="/admin/write">撰写</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li class="last"><a target="_self" href="/admin/write">撰写文章</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root">
|
||||
<li class="parent"><a target="_self" href="/admin/articles">管理</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li><a target="_self" href="/admin/articles">文章</a></li>
|
||||
<li><a target="_self" href="/admin/categories">分类</a></li>
|
||||
<li class="last"><a target="_self" href="/admin/tags">标签</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root">
|
||||
<li class="parent"><a target="_self" href="/admin/setting">设置</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li><a target="_self" href="/admin/setting">基本</a></li>
|
||||
<li class="last"><a target="_self" href="/admin/reading">阅读</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
</nav>
|
||||
<div class="operate">
|
||||
<a target="_self" title="最后登录: 7小时前" href="/admin/profile" class="author">admin</a><a target="_self" class="exit" href="/admin/login?logout=true">登出</a><a href="/">网站</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="main">
|
||||
<div class="body container">
|
||||
<div class="typecho-page-title">
|
||||
<h2>管理文章<a href="http://localhost/admin/write-post.php">新增</a></h2>
|
||||
</div>
|
||||
<div class="row typecho-page-main" role="main">
|
||||
<div class="col-mb-12 typecho-list">
|
||||
<div class="typecho-list-operate clearfix">
|
||||
<form method="get">
|
||||
<div class="operate">
|
||||
<label><i class="sr-only">全选</i>
|
||||
<input type="checkbox" class="typecho-table-select-all" />
|
||||
</label>
|
||||
<div class="btn-group btn-drop">
|
||||
<button class="btn dropdown-toggle btn-s" type="button"><i class="sr-only">操作</i>选中项 <i class="i-caret-down"></i></button>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a lang="你确认要删除这些文章吗?" href="http://localhost/index.php/action/contents-post-edit?do=delete&_=448a1ea454e9a1e7c93f8dd9b97b087a">删除</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="search" role="search">
|
||||
<input type="text" class="text-s" placeholder="请输入关键字" value="" name="keywords" />
|
||||
<select name="category">
|
||||
<option value="">所有分类</option>
|
||||
<option value="1">默认分类</option>
|
||||
<option value="2">232</option>
|
||||
<option value="3">234</option>
|
||||
<option value="4">2</option>
|
||||
<option value="5">4</option>
|
||||
<option value="6">3</option>
|
||||
<option value="7">5</option>
|
||||
<option value="8">6</option>
|
||||
<option value="9">7</option>
|
||||
<option value="10">8</option>
|
||||
<option value="11">9</option>
|
||||
</select>
|
||||
<button type="submit" class="btn btn-s">筛选</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<!-- end .typecho-list-operate -->
|
||||
<form method="post" name="manage_posts" class="operate-form">
|
||||
<div class="typecho-table-wrap">
|
||||
<table class="typecho-list-table">
|
||||
<colgroup>
|
||||
<col width="20" />
|
||||
<col width="6%" />
|
||||
<col width="45%" />
|
||||
<col width="" />
|
||||
<col width="18%" />
|
||||
<col width="16%" />
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th> </th>
|
||||
<th> </th>
|
||||
<th>标题</th>
|
||||
<th>作者</th>
|
||||
<th>分类</th>
|
||||
<th>日期</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr id="post-3">
|
||||
<td>
|
||||
<input type="checkbox" value="3" name="cid[]" />
|
||||
</td>
|
||||
<td><a href="http://localhost/admin/manage-comments.php?cid=3" class="balloon-button size-1">0</a></td>
|
||||
<td>
|
||||
<a href="http://localhost/admin/write-post.php?cid=3">未命名文档</a>
|
||||
<a href="http://localhost/index.php/archives/3/" title="浏览 未命名文档"><i class="i-exlink"></i></a>
|
||||
</td>
|
||||
<td><a href="http://localhost/admin/manage-posts.php?uid=1">admin</a></td>
|
||||
<td> <a href="http://localhost/admin/manage-posts.php?category=1">默认分类</a> </td>
|
||||
<td>
|
||||
2天前 </td>
|
||||
</tr>
|
||||
<tr id="post-1">
|
||||
<td>
|
||||
<input type="checkbox" value="1" name="cid[]" />
|
||||
</td>
|
||||
<td><a href="http://localhost/admin/manage-comments.php?cid=1" class="balloon-button size-10">1</a></td>
|
||||
<td>
|
||||
<a href="http://localhost/admin/write-post.php?cid=1">欢迎使用 Typecho</a>
|
||||
<a href="http://localhost/index.php/archives/1/" title="浏览 欢迎使用 Typecho"><i class="i-exlink"></i></a>
|
||||
</td>
|
||||
<td><a href="http://localhost/admin/manage-posts.php?uid=1">admin</a></td>
|
||||
<td> <a href="http://localhost/admin/manage-posts.php?category=1">默认分类</a> </td>
|
||||
<td>
|
||||
4天前 </td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</form>
|
||||
<!-- end .operate-form -->
|
||||
<div class="typecho-list-operate clearfix">
|
||||
<form method="get">
|
||||
<div class="operate">
|
||||
<label><i class="sr-only">全选</i>
|
||||
<input type="checkbox" class="typecho-table-select-all" />
|
||||
</label>
|
||||
<div class="btn-group btn-drop">
|
||||
<button class="btn dropdown-toggle btn-s" type="button"><i class="sr-only">操作</i>选中项 <i class="i-caret-down"></i></button>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a lang="你确认要删除这些文章吗?" href="http://localhost/index.php/action/contents-post-edit?do=delete&_=448a1ea454e9a1e7c93f8dd9b97b087a">删除</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<ul class="typecho-pager">
|
||||
<li class="current"><a href="http://localhost/admin/manage-posts.php?page=1">1</a></li>
|
||||
</ul>
|
||||
</form>
|
||||
</div>
|
||||
<!-- end .typecho-list-operate -->
|
||||
</div>
|
||||
<!-- end .typecho-list -->
|
||||
</div>
|
||||
<!-- end .typecho-page-main -->
|
||||
</div>
|
||||
</div>
|
||||
<div class="typecho-foot" role="contentinfo">
|
||||
<div class="copyright">
|
||||
<a href="http://typecho.org" class="i-logo-s">Typecho</a>
|
||||
<p>由 <a href="http://typecho.org">Typecho</a> 强力驱动, 版本 1.0 (14.10.10)</p>
|
||||
</div>
|
||||
<nav class="resource">
|
||||
<a href="http://docs.typecho.org">帮助文档</a> •
|
||||
<a href="http://forum.typecho.org">支持论坛</a> •
|
||||
<a href="https://github.com/typecho/typecho/issues">报告错误</a> •
|
||||
<a href="http://extends.typecho.org">资源下载</a>
|
||||
</nav>
|
||||
</div>
|
||||
<script src="http://localhost/admin/js/jquery.js?v=14.10.10"></script>
|
||||
<script src="http://localhost/admin/js/jquery-ui.js?v=14.10.10"></script>
|
||||
<script src="http://localhost/admin/js/typecho.js?v=14.10.10"></script>
|
||||
<script>
|
||||
(function() {
|
||||
$(document).ready(function() {
|
||||
// 处理消息机制
|
||||
(function() {
|
||||
var prefix = '86a9106ae65537651a8e456835b316ab',
|
||||
cookies = {
|
||||
notice: $.cookie(prefix + '__typecho_notice'),
|
||||
noticeType: $.cookie(prefix + '__typecho_notice_type'),
|
||||
highlight: $.cookie(prefix + '__typecho_notice_highlight')
|
||||
},
|
||||
path = '/';
|
||||
|
||||
if (!!cookies.notice && 'success|notice|error'.indexOf(cookies.noticeType) >= 0) {
|
||||
var head = $('.typecho-head-nav'),
|
||||
p = $('<div class="message popup ' + cookies.noticeType + '">' + '<ul><li>' + $.parseJSON(cookies.notice).join('</li><li>') + '</li></ul></div>'),
|
||||
offset = 0;
|
||||
|
||||
if (head.length > 0) {
|
||||
p.insertAfter(head);
|
||||
offset = head.outerHeight();
|
||||
} else {
|
||||
p.prependTo(document.body);
|
||||
}
|
||||
|
||||
function checkScroll() {
|
||||
if ($(window).scrollTop() >= offset) {
|
||||
p.css({
|
||||
'position': 'fixed',
|
||||
'top': 0
|
||||
});
|
||||
} else {
|
||||
p.css({
|
||||
'position': 'absolute',
|
||||
'top': offset
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
$(window).scroll(function() {
|
||||
checkScroll();
|
||||
});
|
||||
|
||||
checkScroll();
|
||||
|
||||
p.slideDown(function() {
|
||||
var t = $(this),
|
||||
color = '#C6D880';
|
||||
|
||||
if (t.hasClass('error')) {
|
||||
color = '#FBC2C4';
|
||||
} else if (t.hasClass('notice')) {
|
||||
color = '#FFD324';
|
||||
}
|
||||
|
||||
t.effect('highlight', {
|
||||
color: color
|
||||
})
|
||||
.delay(5000).slideUp(function() {
|
||||
$(this).remove();
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
$.cookie(prefix + '__typecho_notice', null, {
|
||||
path: path
|
||||
});
|
||||
$.cookie(prefix + '__typecho_notice_type', null, {
|
||||
path: path
|
||||
});
|
||||
}
|
||||
|
||||
if (cookies.highlight) {
|
||||
$('#' + cookies.highlight).effect('highlight', 1000);
|
||||
$.cookie(prefix + '__typecho_notice_highlight', null, {
|
||||
path: path
|
||||
});
|
||||
}
|
||||
})();
|
||||
|
||||
|
||||
// 导航菜单 tab 聚焦时展开下拉菜单
|
||||
(function() {
|
||||
$('#typecho-nav-list').find('.parent a').focus(function() {
|
||||
$('#typecho-nav-list').find('.child').hide();
|
||||
$(this).parents('.root').find('.child').show();
|
||||
});
|
||||
$('.operate').find('a').focus(function() {
|
||||
$('#typecho-nav-list').find('.child').hide();
|
||||
});
|
||||
})();
|
||||
|
||||
|
||||
if ($('.typecho-login').length == 0) {
|
||||
$('a').each(function() {
|
||||
var t = $(this),
|
||||
href = t.attr('href');
|
||||
|
||||
if ((href && href[0] == '#') || /^http\:\/\/localhost\/admin\/.*$/.exec(href) || /^http\:\/\/localhost\/index\.php\/action\/[_a-zA-Z0-9\/]+.*$/.exec(href)) {
|
||||
return;
|
||||
}
|
||||
|
||||
t.attr('target', '_blank');
|
||||
});
|
||||
}
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
<script>
|
||||
(function() {
|
||||
$(document).ready(function() {
|
||||
$('.typecho-list-table').tableSelectable({
|
||||
checkEl: 'input[type=checkbox]',
|
||||
rowEl: 'tr',
|
||||
selectAllEl: '.typecho-table-select-all',
|
||||
actionEl: '.dropdown-menu a,button.btn-operate'
|
||||
});
|
||||
|
||||
$('.btn-drop').dropdownMenu({
|
||||
btnEl: '.dropdown-toggle',
|
||||
menuEl: '.dropdown-menu'
|
||||
});
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@@ -0,0 +1,79 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html lang="zh-cn">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1">
|
||||
<meta name="renderer" content="webkit">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>{{.Title}}</title>
|
||||
<meta name="robots" content="noindex, nofollow">
|
||||
<link rel="stylesheet" href="/static/admin/background.css">
|
||||
<!--[if lt IE 9]>
|
||||
<script src="//cdn.bootcss.com/html5shiv/3.7.2/html5shiv.min.js"></script>
|
||||
<script src="//cdn.bootcss.com/respond.js/1.4.2/respond.min.js"></script>
|
||||
<![endif]-->
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<!--[if lt IE 9]>
|
||||
<div class="alert alert-danger topframe" role="alert">你的浏览器实在<strong>太太太太太太旧了</strong>,放学别走,升级完浏览器再说 <a target="_blank" class="alert-link" href="http://browsehappy.com">立即升级</a></div>
|
||||
<![endif]-->
|
||||
<div class="typecho-head-nav clearfix" role="navigation">
|
||||
<nav id="typecho-nav-list">
|
||||
<ul class="root {{if .Console}}focus{{end}}">
|
||||
<li class="parent"><a target="_self" href="/admin/home">控制台</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li {{if eq .Path "/admin/home"}}class="focus"{{end}}><a target="_self" href="/admin/home">概要</a></li>
|
||||
<li {{if eq .Path "/admin/profile"}}class="focus"{{end}}><a target="_self" href="/admin/profile">个人设置</a></li>
|
||||
<li {{if eq .Path "/admin/plugin"}}class="focus"{{end}}><a target="_self" href="/admin/plugin">插件</a></li>
|
||||
<li class="last {{if eq .Path "/admin/theme"}}focus{{end}}"><a target="_self" href="/admin/theme">外观</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root {{if .Write}}focus{{end}}">
|
||||
<li class="parent"><a target="_self" href="/admin/write">撰写</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li class="last"><a target="_self" href="/admin/write">撰写文章</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root {{if .Manage}}focus{{end}}">
|
||||
<li class="parent"><a target="_self" href="/admin/articles">管理</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li><a target="_self" href="/admin/articles">文章</a></li>
|
||||
<li><a target="_self" href="/admin/series">分类</a></li>
|
||||
<li class="last"><a target="_self" href="/admin/tags">标签</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root {{if .Setting}}focus{{end}}">
|
||||
<li class="parent"><a target="_self" href="/admin/setting">设置</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li><a target="_self" href="/admin/setting">基本</a></li>
|
||||
<li class="last"><a target="_self" href="/admin/reading">阅读</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
</nav>
|
||||
<div class="operate">
|
||||
<a target="_self" title="{{.LastLogin}}" href="/admin/profile" class="author">admin</a><a target="_self" class="exit" href="/admin/login?logout=true">登出</a><a href="/">网站</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="main">
|
||||
</div>
|
||||
<div class="typecho-foot" role="contentinfo">
|
||||
<div class="copyright">
|
||||
<a href="http://typecho.org" class="i-logo-s">Typecho</a>
|
||||
<p>由 <a href="http://typecho.org">Typecho</a> 强力驱动, 版本 1.0 (14.10.10)</p>
|
||||
</div>
|
||||
<nav class="resource">
|
||||
<a href="http://docs.typecho.org">帮助文档</a> •
|
||||
<a href="http://forum.typecho.org">支持论坛</a> •
|
||||
<a href="https://github.com/typecho/typecho/issues">报告错误</a> •
|
||||
<a href="http://extends.typecho.org">资源下载</a>
|
||||
</nav>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@@ -0,0 +1 @@
|
||||
none
|
||||
@@ -0,0 +1,38 @@
|
||||
<!Doctype html>
|
||||
<html lang="zh-cn">
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta content="width=device-width,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" name=viewport>
|
||||
<meta name=robots content="noindex, nofollow">
|
||||
<title>Login | {{.BTitle}}</title>
|
||||
<link rel=stylesheet href="/static/admin/background.css">
|
||||
</head>
|
||||
|
||||
<body class="body-100">
|
||||
<div class="typecho-login-wrap">
|
||||
<div class="typecho-login">
|
||||
<h1><a href="/">{{.BTitle}}</a></h1>
|
||||
<form action="/admin/api/login" method=post>
|
||||
<p>
|
||||
<label for=user class="sr-only">用户名</label>
|
||||
<input type=text id=user name=user value="" placeholder="用户名" class="text-l w-100">
|
||||
</p>
|
||||
<p>
|
||||
<label for=password class="sr-only">密码</label>
|
||||
<input type=password id=password name=password class="text-l w-100" placeholder="密码">
|
||||
</p>
|
||||
<p>
|
||||
<label for=code class="sr-only">两步验证</label>
|
||||
<input type=text id=code name=code class="text-l w-100" placeholder="两步验证">
|
||||
</p>
|
||||
<p class=submit>
|
||||
<button type=submit class="btn btn-l w-100 primary">登录</button>
|
||||
</p>
|
||||
</form>
|
||||
<p class="more-link">管理后台皮肤来自于<a href="http://typecho.org" target=_blank>Typecho</a>.</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@@ -0,0 +1,393 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html class="no-js">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1">
|
||||
<meta name="renderer" content="webkit">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>个人设置 - Hello World - Powered by Typecho</title>
|
||||
<meta name="robots" content="noindex, nofollow">
|
||||
<link rel="stylesheet" href="http://localhost/admin/css/normalize.css?v=14.10.10">
|
||||
<link rel="stylesheet" href="http://localhost/admin/css/grid.css?v=14.10.10">
|
||||
<link rel="stylesheet" href="http://localhost/admin/css/style.css?v=14.10.10">
|
||||
<!--[if lt IE 9]>
|
||||
<script src="http://localhost/admin/js/html5shiv.js?v=14.10.10"></script>
|
||||
<script src="http://localhost/admin/js/respond.js?v=14.10.10"></script>
|
||||
<![endif]-->
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<!--[if lt IE 9]>
|
||||
<div class="message error browsehappy" role="dialog">当前网页 <strong>不支持</strong> 你正在使用的浏览器. 为了正常的访问, 请 <a href="http://browsehappy.com/">升级你的浏览器</a>.</div>
|
||||
<![endif]-->
|
||||
<div class="typecho-head-nav clearfix" role="navigation">
|
||||
<nav id="typecho-nav-list">
|
||||
<ul class="root focus">
|
||||
<li class="parent"><a target="_self" href="/admin/home">控制台</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li target="_self" class="focus"><a href="/admin/home">概要</a></li>
|
||||
<li><a target="_self" href="/admin/profile">个人设置</a></li>
|
||||
<li><a target="_self" href="/admin/plugin">插件</a></li>
|
||||
<li class="last"><a target="_self" href="/admin/theme">外观</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root">
|
||||
<li class="parent"><a target="_self" href="/admin/write">撰写</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li class="last"><a target="_self" href="/admin/write">撰写文章</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root">
|
||||
<li class="parent"><a target="_self" href="/admin/articles">管理</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li><a target="_self" href="/admin/articles">文章</a></li>
|
||||
<li><a target="_self" href="/admin/categories">分类</a></li>
|
||||
<li class="last"><a target="_self" href="/admin/tags">标签</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root">
|
||||
<li class="parent"><a target="_self" href="/admin/setting">设置</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li><a target="_self" href="/admin/setting">基本</a></li>
|
||||
<li class="last"><a target="_self" href="/admin/reading">阅读</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
</nav>
|
||||
<div class="operate">
|
||||
<a target="_self" title="最后登录: 7小时前" href="/admin/profile" class="author">admin</a><a target="_self" class="exit" href="/admin/login?logout=true">登出</a><a href="/">网站</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="main">
|
||||
<div class="body container">
|
||||
<div class="typecho-page-title">
|
||||
<h2>个人设置</h2>
|
||||
</div>
|
||||
<div class="row typecho-page-main">
|
||||
<div class="col-mb-12 col-tb-3">
|
||||
<p>
|
||||
<a href="http://gravatar.com/emails/" title="在 Gravatar 上修改头像"><img class="profile-avatar" src="http://www.gravatar.com/avatar/20a5844bc608d51cdbe28b74495f809d?s=220&r=X&d=mm" alt="admin" /></a>
|
||||
</p>
|
||||
<h2>admin</h2>
|
||||
<p>admin</p>
|
||||
<p>目前有 <em>2</em> 篇日志, 并有 <em>1</em> 条关于你的评论在 <em>11</em> 个分类中.</p>
|
||||
<p>最后登录: 2天前</p>
|
||||
</div>
|
||||
<div class="col-mb-12 col-tb-6 col-tb-offset-1 typecho-content-panel" role="form">
|
||||
<section>
|
||||
<h3>个人资料</h3>
|
||||
<form action="http://localhost/index.php/action/users-profile?_=48e2b106ce2f611ac20443fb2acdc076" method="post" enctype="application/x-www-form-urlencoded">
|
||||
<ul class="typecho-option" id="typecho-option-item-screenName-0">
|
||||
<li>
|
||||
<label class="typecho-label" for="screenName-0-1">
|
||||
昵称</label>
|
||||
<input id="screenName-0-1" name="screenName" type="text" class="text" value="admin" />
|
||||
<p class="description">
|
||||
用户昵称可以与用户名不同, 用于前台显示.
|
||||
<br />如果你将此项留空, 将默认使用用户名.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-url-1">
|
||||
<li>
|
||||
<label class="typecho-label" for="url-0-2">
|
||||
个人主页地址</label>
|
||||
<input id="url-0-2" name="url" type="text" class="text" value="http://www.typecho.org" />
|
||||
<p class="description">
|
||||
此用户的个人主页地址, 请用 <code>http://</code> 开头.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-mail-2">
|
||||
<li>
|
||||
<label class="typecho-label" for="mail-0-3">
|
||||
电子邮箱地址 *</label>
|
||||
<input id="mail-0-3" name="mail" type="text" class="text" value="webmaster@yourdomain.com" />
|
||||
<p class="description">
|
||||
电子邮箱地址将作为此用户的主要联系方式.
|
||||
<br />请不要与系统中现有的电子邮箱地址重复.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-do-3" style="display:none">
|
||||
<li>
|
||||
<input name="do" type="hidden" value="profile" />
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option typecho-option-submit" id="typecho-option-item-submit-4">
|
||||
<li>
|
||||
<button type="submit" class="btn primary">
|
||||
更新我的档案</button>
|
||||
</li>
|
||||
</ul>
|
||||
</form>
|
||||
</section>
|
||||
<br>
|
||||
<section id="writing-option">
|
||||
<h3>撰写设置</h3>
|
||||
<form action="http://localhost/index.php/action/users-profile?_=48e2b106ce2f611ac20443fb2acdc076" method="post" enctype="application/x-www-form-urlencoded">
|
||||
<ul class="typecho-option" id="typecho-option-item-markdown-5">
|
||||
<li>
|
||||
<label class="typecho-label">
|
||||
使用 Markdown 语法编辑和解析内容</label>
|
||||
<span>
|
||||
<input name="markdown" type="radio" value="0" id="markdown-0" />
|
||||
<label for="markdown-0">
|
||||
关闭</label>
|
||||
</span>
|
||||
<span>
|
||||
<input name="markdown" type="radio" value="1" id="markdown-1" checked="true" />
|
||||
<label for="markdown-1">
|
||||
打开</label>
|
||||
</span>
|
||||
<p class="description">
|
||||
使用 <a href="http://daringfireball.net/projects/markdown/">Markdown</a> 语法能够使您的撰写过程更加简便直观.
|
||||
<br />此功能开启不会影响以前没有使用 Markdown 语法编辑的内容.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-autoSave-6">
|
||||
<li>
|
||||
<label class="typecho-label">
|
||||
自动保存</label>
|
||||
<span>
|
||||
<input name="autoSave" type="radio" value="0" id="autoSave-0" checked="true" />
|
||||
<label for="autoSave-0">
|
||||
关闭</label>
|
||||
</span>
|
||||
<span>
|
||||
<input name="autoSave" type="radio" value="1" id="autoSave-1" />
|
||||
<label for="autoSave-1">
|
||||
打开</label>
|
||||
</span>
|
||||
<p class="description">
|
||||
自动保存功能可以更好地保护你的文章不会丢失.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-defaultAllow-7">
|
||||
<li>
|
||||
<label class="typecho-label">
|
||||
默认允许</label>
|
||||
<span>
|
||||
<input name="defaultAllow[]" type="checkbox" value="comment" id="defaultAllow-comment" checked="true" />
|
||||
<label for="defaultAllow-comment">
|
||||
可以被评论</label>
|
||||
</span>
|
||||
<span>
|
||||
<input name="defaultAllow[]" type="checkbox" value="ping" id="defaultAllow-ping" checked="true" />
|
||||
<label for="defaultAllow-ping">
|
||||
可以被引用</label>
|
||||
</span>
|
||||
<span>
|
||||
<input name="defaultAllow[]" type="checkbox" value="feed" id="defaultAllow-feed" checked="true" />
|
||||
<label for="defaultAllow-feed">
|
||||
出现在聚合中</label>
|
||||
</span>
|
||||
<p class="description">
|
||||
设置你经常使用的默认允许权限</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-do-8" style="display:none">
|
||||
<li>
|
||||
<input name="do" type="hidden" value="options" />
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option typecho-option-submit" id="typecho-option-item-submit-9">
|
||||
<li>
|
||||
<button type="submit" class="btn primary">
|
||||
保存设置</button>
|
||||
</li>
|
||||
</ul>
|
||||
</form>
|
||||
</section>
|
||||
<br>
|
||||
<section id="change-password">
|
||||
<h3>密码修改</h3>
|
||||
<form action="http://localhost/index.php/action/users-profile?_=48e2b106ce2f611ac20443fb2acdc076" method="post" enctype="application/x-www-form-urlencoded">
|
||||
<ul class="typecho-option" id="typecho-option-item-password-10">
|
||||
<li>
|
||||
<label class="typecho-label" for="password-0-11">
|
||||
用户密码</label>
|
||||
<input id="password-0-11" name="password" type="password" class="w-60" />
|
||||
<p class="description">
|
||||
为此用户分配一个密码.
|
||||
<br />建议使用特殊字符与字母、数字的混编样式,以增加系统安全性.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-confirm-11">
|
||||
<li>
|
||||
<label class="typecho-label" for="confirm-0-12">
|
||||
用户密码确认</label>
|
||||
<input id="confirm-0-12" name="confirm" type="password" class="w-60" />
|
||||
<p class="description">
|
||||
请确认你的密码, 与上面输入的密码保持一致.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-do-12" style="display:none">
|
||||
<li>
|
||||
<input name="do" type="hidden" value="password" />
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option typecho-option-submit" id="typecho-option-item-submit-13">
|
||||
<li>
|
||||
<button type="submit" class="btn primary">
|
||||
更新密码</button>
|
||||
</li>
|
||||
</ul>
|
||||
</form>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="typecho-foot" role="contentinfo">
|
||||
<div class="copyright">
|
||||
<a href="http://typecho.org" class="i-logo-s">Typecho</a>
|
||||
<p>由 <a href="http://typecho.org">Typecho</a> 强力驱动, 版本 1.0 (14.10.10)</p>
|
||||
</div>
|
||||
<nav class="resource">
|
||||
<a href="http://docs.typecho.org">帮助文档</a> •
|
||||
<a href="http://forum.typecho.org">支持论坛</a> •
|
||||
<a href="https://github.com/typecho/typecho/issues">报告错误</a> •
|
||||
<a href="http://extends.typecho.org">资源下载</a>
|
||||
</nav>
|
||||
</div>
|
||||
<script src="http://localhost/admin/js/jquery.js?v=14.10.10"></script>
|
||||
<script src="http://localhost/admin/js/jquery-ui.js?v=14.10.10"></script>
|
||||
<script src="http://localhost/admin/js/typecho.js?v=14.10.10"></script>
|
||||
<script>
|
||||
(function() {
|
||||
$(document).ready(function() {
|
||||
// 处理消息机制
|
||||
(function() {
|
||||
var prefix = '86a9106ae65537651a8e456835b316ab',
|
||||
cookies = {
|
||||
notice: $.cookie(prefix + '__typecho_notice'),
|
||||
noticeType: $.cookie(prefix + '__typecho_notice_type'),
|
||||
highlight: $.cookie(prefix + '__typecho_notice_highlight')
|
||||
},
|
||||
path = '/';
|
||||
|
||||
if (!!cookies.notice && 'success|notice|error'.indexOf(cookies.noticeType) >= 0) {
|
||||
var head = $('.typecho-head-nav'),
|
||||
p = $('<div class="message popup ' + cookies.noticeType + '">' + '<ul><li>' + $.parseJSON(cookies.notice).join('</li><li>') + '</li></ul></div>'),
|
||||
offset = 0;
|
||||
|
||||
if (head.length > 0) {
|
||||
p.insertAfter(head);
|
||||
offset = head.outerHeight();
|
||||
} else {
|
||||
p.prependTo(document.body);
|
||||
}
|
||||
|
||||
function checkScroll() {
|
||||
if ($(window).scrollTop() >= offset) {
|
||||
p.css({
|
||||
'position': 'fixed',
|
||||
'top': 0
|
||||
});
|
||||
} else {
|
||||
p.css({
|
||||
'position': 'absolute',
|
||||
'top': offset
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
$(window).scroll(function() {
|
||||
checkScroll();
|
||||
});
|
||||
|
||||
checkScroll();
|
||||
|
||||
p.slideDown(function() {
|
||||
var t = $(this),
|
||||
color = '#C6D880';
|
||||
|
||||
if (t.hasClass('error')) {
|
||||
color = '#FBC2C4';
|
||||
} else if (t.hasClass('notice')) {
|
||||
color = '#FFD324';
|
||||
}
|
||||
|
||||
t.effect('highlight', {
|
||||
color: color
|
||||
})
|
||||
.delay(5000).slideUp(function() {
|
||||
$(this).remove();
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
$.cookie(prefix + '__typecho_notice', null, {
|
||||
path: path
|
||||
});
|
||||
$.cookie(prefix + '__typecho_notice_type', null, {
|
||||
path: path
|
||||
});
|
||||
}
|
||||
|
||||
if (cookies.highlight) {
|
||||
$('#' + cookies.highlight).effect('highlight', 1000);
|
||||
$.cookie(prefix + '__typecho_notice_highlight', null, {
|
||||
path: path
|
||||
});
|
||||
}
|
||||
})();
|
||||
|
||||
|
||||
// 导航菜单 tab 聚焦时展开下拉菜单
|
||||
(function() {
|
||||
$('#typecho-nav-list').find('.parent a').focus(function() {
|
||||
$('#typecho-nav-list').find('.child').hide();
|
||||
$(this).parents('.root').find('.child').show();
|
||||
});
|
||||
$('.operate').find('a').focus(function() {
|
||||
$('#typecho-nav-list').find('.child').hide();
|
||||
});
|
||||
})();
|
||||
|
||||
|
||||
if ($('.typecho-login').length == 0) {
|
||||
$('a').each(function() {
|
||||
var t = $(this),
|
||||
href = t.attr('href');
|
||||
|
||||
if ((href && href[0] == '#') || /^http\:\/\/localhost\/admin\/.*$/.exec(href) || /^http\:\/\/localhost\/index\.php\/action\/[_a-zA-Z0-9\/]+.*$/.exec(href)) {
|
||||
return;
|
||||
}
|
||||
|
||||
t.attr('target', '_blank');
|
||||
});
|
||||
}
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
<script>
|
||||
(function() {
|
||||
$(document).ready(function() {
|
||||
var error = $('.typecho-option .error:first');
|
||||
|
||||
if (error.length > 0) {
|
||||
$('html,body').scrollTop(error.parents('.typecho-option').offset().top);
|
||||
}
|
||||
|
||||
$('form').submit(function() {
|
||||
if (this.submitted) {
|
||||
return false;
|
||||
} else {
|
||||
this.submitted = true;
|
||||
}
|
||||
});
|
||||
|
||||
$('label input[type=text]').click(function(e) {
|
||||
var check = $('#' + $(this).parents('label').attr('for'));
|
||||
check.prop('checked', true);
|
||||
return false;
|
||||
});
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@@ -0,0 +1,311 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html class="no-js">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1">
|
||||
<meta name="renderer" content="webkit">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>阅读设置 - Hello World - Powered by Typecho</title>
|
||||
<meta name="robots" content="noindex, nofollow">
|
||||
<link rel="stylesheet" href="http://localhost/admin/css/normalize.css?v=14.10.10">
|
||||
<link rel="stylesheet" href="http://localhost/admin/css/grid.css?v=14.10.10">
|
||||
<link rel="stylesheet" href="http://localhost/admin/css/style.css?v=14.10.10">
|
||||
<!--[if lt IE 9]>
|
||||
<script src="http://localhost/admin/js/html5shiv.js?v=14.10.10"></script>
|
||||
<script src="http://localhost/admin/js/respond.js?v=14.10.10"></script>
|
||||
<![endif]-->
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<!--[if lt IE 9]>
|
||||
<div class="message error browsehappy" role="dialog">当前网页 <strong>不支持</strong> 你正在使用的浏览器. 为了正常的访问, 请 <a href="http://browsehappy.com/">升级你的浏览器</a>.</div>
|
||||
<![endif]-->
|
||||
<div class="typecho-head-nav clearfix" role="navigation">
|
||||
<nav id="typecho-nav-list">
|
||||
<ul class="root focus">
|
||||
<li class="parent"><a target="_self" href="/admin/home">控制台</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li target="_self" class="focus"><a href="/admin/home">概要</a></li>
|
||||
<li><a target="_self" href="/admin/profile">个人设置</a></li>
|
||||
<li><a target="_self" href="/admin/plugin">插件</a></li>
|
||||
<li class="last"><a target="_self" href="/admin/theme">外观</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root">
|
||||
<li class="parent"><a target="_self" href="/admin/write">撰写</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li class="last"><a target="_self" href="/admin/write">撰写文章</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root">
|
||||
<li class="parent"><a target="_self" href="/admin/articles">管理</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li><a target="_self" href="/admin/articles">文章</a></li>
|
||||
<li><a target="_self" href="/admin/categories">分类</a></li>
|
||||
<li class="last"><a target="_self" href="/admin/tags">标签</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root">
|
||||
<li class="parent"><a target="_self" href="/admin/setting">设置</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li><a target="_self" href="/admin/setting">基本</a></li>
|
||||
<li class="last"><a target="_self" href="/admin/reading">阅读</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
</nav>
|
||||
<div class="operate">
|
||||
<a target="_self" title="最后登录: 7小时前" href="/admin/profile" class="author">admin</a><a target="_self" class="exit" href="/admin/login?logout=true">登出</a><a href="/">网站</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="main">
|
||||
<div class="body container">
|
||||
<div class="typecho-page-title">
|
||||
<h2>阅读设置</h2>
|
||||
</div>
|
||||
<div class="row typecho-page-main" role="form">
|
||||
<div class="col-mb-12 col-tb-8 col-tb-offset-2">
|
||||
<form action="http://localhost/index.php/action/options-reading?_=e53d9ccaafcd7253533d0586ebb24d30" method="post" enctype="application/x-www-form-urlencoded">
|
||||
<ul class="typecho-option" id="typecho-option-item-postDateFormat-0">
|
||||
<li>
|
||||
<label class="typecho-label" for="postDateFormat-0-1">
|
||||
文章日期格式</label>
|
||||
<input id="postDateFormat-0-1" name="postDateFormat" type="text" class="w-40 mono" value="Y-m-d" />
|
||||
<p class="description">
|
||||
此格式用于指定显示在文章归档中的日期默认显示格式.
|
||||
<br />在某些主题中这个格式可能不会生效, 因为主题作者可以自定义日期格式.
|
||||
<br />请参考 <a href="http://www.php.net/manual/zh/function.date.php">PHP 日期格式写法</a>.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-frontPage-1">
|
||||
<li>
|
||||
<label class="typecho-label">
|
||||
站点首页</label>
|
||||
<span class="multiline">
|
||||
<input name="frontPage" type="radio" value="recent" id="frontPage-recent" checked="true" />
|
||||
<label for="frontPage-recent">
|
||||
显示最新发布的文章</label>
|
||||
</span>
|
||||
<span class="multiline">
|
||||
<input name="frontPage" type="radio" value="page" id="frontPage-page" />
|
||||
<label for="frontPage-page">
|
||||
使用 </label><select name="frontPagePage" id="frontPage-frontPagePage"><option value="2">关于</option></select><label for="frontPage-frontPagePage"> 页面作为首页</label></span><span class="multiline front-archive hidden"><input type="checkbox" id="frontArchive" name="frontArchive" value="1" />
|
||||
<label for="frontArchive">同时将文章列表页路径更改为 <input type="text" name="archivePattern" class="w-20 mono" value="/blog/" /></label></label>
|
||||
</span>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-postsListSize-2">
|
||||
<li>
|
||||
<label class="typecho-label" for="postsListSize-0-3">
|
||||
文章列表数目</label>
|
||||
<input id="postsListSize-0-3" name="postsListSize" type="text" class="w-20" value="10" />
|
||||
<p class="description">
|
||||
此数目用于指定显示在侧边栏中的文章列表数目.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-pageSize-3">
|
||||
<li>
|
||||
<label class="typecho-label" for="pageSize-0-4">
|
||||
每页文章数目</label>
|
||||
<input id="pageSize-0-4" name="pageSize" type="text" class="w-20" value="5" />
|
||||
<p class="description">
|
||||
此数目用于指定文章归档输出时每页显示的文章数目.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-feedFullText-4">
|
||||
<li>
|
||||
<label class="typecho-label">
|
||||
聚合全文输出</label>
|
||||
<span>
|
||||
<input name="feedFullText" type="radio" value="0" id="feedFullText-0" />
|
||||
<label for="feedFullText-0">
|
||||
仅输出摘要</label>
|
||||
</span>
|
||||
<span>
|
||||
<input name="feedFullText" type="radio" value="1" id="feedFullText-1" checked="true" />
|
||||
<label for="feedFullText-1">
|
||||
全文输出</label>
|
||||
</span>
|
||||
<p class="description">
|
||||
如果你不希望在聚合中输出文章全文,请使用仅输出摘要选项.
|
||||
<br />摘要的文字取决于你在文章中使用分隔符的位置.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option typecho-option-submit" id="typecho-option-item-submit-5">
|
||||
<li>
|
||||
<button type="submit" class="btn primary">
|
||||
保存设置</button>
|
||||
</li>
|
||||
</ul>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="typecho-foot" role="contentinfo">
|
||||
<div class="copyright">
|
||||
<a href="http://typecho.org" class="i-logo-s">Typecho</a>
|
||||
<p>由 <a href="http://typecho.org">Typecho</a> 强力驱动, 版本 1.0 (14.10.10)</p>
|
||||
</div>
|
||||
<nav class="resource">
|
||||
<a href="http://docs.typecho.org">帮助文档</a> •
|
||||
<a href="http://forum.typecho.org">支持论坛</a> •
|
||||
<a href="https://github.com/typecho/typecho/issues">报告错误</a> •
|
||||
<a href="http://extends.typecho.org">资源下载</a>
|
||||
</nav>
|
||||
</div>
|
||||
<script src="http://localhost/admin/js/jquery.js?v=14.10.10"></script>
|
||||
<script src="http://localhost/admin/js/jquery-ui.js?v=14.10.10"></script>
|
||||
<script src="http://localhost/admin/js/typecho.js?v=14.10.10"></script>
|
||||
<script>
|
||||
(function() {
|
||||
$(document).ready(function() {
|
||||
// 处理消息机制
|
||||
(function() {
|
||||
var prefix = '86a9106ae65537651a8e456835b316ab',
|
||||
cookies = {
|
||||
notice: $.cookie(prefix + '__typecho_notice'),
|
||||
noticeType: $.cookie(prefix + '__typecho_notice_type'),
|
||||
highlight: $.cookie(prefix + '__typecho_notice_highlight')
|
||||
},
|
||||
path = '/';
|
||||
|
||||
if (!!cookies.notice && 'success|notice|error'.indexOf(cookies.noticeType) >= 0) {
|
||||
var head = $('.typecho-head-nav'),
|
||||
p = $('<div class="message popup ' + cookies.noticeType + '">' + '<ul><li>' + $.parseJSON(cookies.notice).join('</li><li>') + '</li></ul></div>'),
|
||||
offset = 0;
|
||||
|
||||
if (head.length > 0) {
|
||||
p.insertAfter(head);
|
||||
offset = head.outerHeight();
|
||||
} else {
|
||||
p.prependTo(document.body);
|
||||
}
|
||||
|
||||
function checkScroll() {
|
||||
if ($(window).scrollTop() >= offset) {
|
||||
p.css({
|
||||
'position': 'fixed',
|
||||
'top': 0
|
||||
});
|
||||
} else {
|
||||
p.css({
|
||||
'position': 'absolute',
|
||||
'top': offset
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
$(window).scroll(function() {
|
||||
checkScroll();
|
||||
});
|
||||
|
||||
checkScroll();
|
||||
|
||||
p.slideDown(function() {
|
||||
var t = $(this),
|
||||
color = '#C6D880';
|
||||
|
||||
if (t.hasClass('error')) {
|
||||
color = '#FBC2C4';
|
||||
} else if (t.hasClass('notice')) {
|
||||
color = '#FFD324';
|
||||
}
|
||||
|
||||
t.effect('highlight', {
|
||||
color: color
|
||||
})
|
||||
.delay(5000).slideUp(function() {
|
||||
$(this).remove();
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
$.cookie(prefix + '__typecho_notice', null, {
|
||||
path: path
|
||||
});
|
||||
$.cookie(prefix + '__typecho_notice_type', null, {
|
||||
path: path
|
||||
});
|
||||
}
|
||||
|
||||
if (cookies.highlight) {
|
||||
$('#' + cookies.highlight).effect('highlight', 1000);
|
||||
$.cookie(prefix + '__typecho_notice_highlight', null, {
|
||||
path: path
|
||||
});
|
||||
}
|
||||
})();
|
||||
|
||||
|
||||
// 导航菜单 tab 聚焦时展开下拉菜单
|
||||
(function() {
|
||||
$('#typecho-nav-list').find('.parent a').focus(function() {
|
||||
$('#typecho-nav-list').find('.child').hide();
|
||||
$(this).parents('.root').find('.child').show();
|
||||
});
|
||||
$('.operate').find('a').focus(function() {
|
||||
$('#typecho-nav-list').find('.child').hide();
|
||||
});
|
||||
})();
|
||||
|
||||
|
||||
if ($('.typecho-login').length == 0) {
|
||||
$('a').each(function() {
|
||||
var t = $(this),
|
||||
href = t.attr('href');
|
||||
|
||||
if ((href && href[0] == '#') || /^http\:\/\/localhost\/admin\/.*$/.exec(href) || /^http\:\/\/localhost\/index\.php\/action\/[_a-zA-Z0-9\/]+.*$/.exec(href)) {
|
||||
return;
|
||||
}
|
||||
|
||||
t.attr('target', '_blank');
|
||||
});
|
||||
}
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
<script>
|
||||
(function() {
|
||||
$(document).ready(function() {
|
||||
var error = $('.typecho-option .error:first');
|
||||
|
||||
if (error.length > 0) {
|
||||
$('html,body').scrollTop(error.parents('.typecho-option').offset().top);
|
||||
}
|
||||
|
||||
$('form').submit(function() {
|
||||
if (this.submitted) {
|
||||
return false;
|
||||
} else {
|
||||
this.submitted = true;
|
||||
}
|
||||
});
|
||||
|
||||
$('label input[type=text]').click(function(e) {
|
||||
var check = $('#' + $(this).parents('label').attr('for'));
|
||||
check.prop('checked', true);
|
||||
return false;
|
||||
});
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
<script>
|
||||
$('#frontPage-recent,#frontPage-page,#frontPage-file').change(function() {
|
||||
var t = $(this);
|
||||
if (t.prop('checked')) {
|
||||
if ('frontPage-recent' == t.attr('id')) {
|
||||
$('.front-archive').addClass('hidden');
|
||||
} else {
|
||||
$('.front-archive').insertAfter(t.parent()).removeClass('hidden');
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@@ -0,0 +1,480 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html class="no-js">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1">
|
||||
<meta name="renderer" content="webkit">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>管理分类 - Hello World - Powered by Typecho</title>
|
||||
<meta name="robots" content="noindex, nofollow">
|
||||
<link rel="stylesheet" href="http://localhost/admin/css/normalize.css?v=14.10.10">
|
||||
<link rel="stylesheet" href="http://localhost/admin/css/grid.css?v=14.10.10">
|
||||
<link rel="stylesheet" href="http://localhost/admin/css/style.css?v=14.10.10">
|
||||
<!--[if lt IE 9]>
|
||||
<script src="http://localhost/admin/js/html5shiv.js?v=14.10.10"></script>
|
||||
<script src="http://localhost/admin/js/respond.js?v=14.10.10"></script>
|
||||
<![endif]-->
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<!--[if lt IE 9]>
|
||||
<div class="message error browsehappy" role="dialog">当前网页 <strong>不支持</strong> 你正在使用的浏览器. 为了正常的访问, 请 <a href="http://browsehappy.com/">升级你的浏览器</a>.</div>
|
||||
<![endif]-->
|
||||
<div class="typecho-head-nav clearfix" role="navigation">
|
||||
<nav id="typecho-nav-list">
|
||||
<ul class="root focus">
|
||||
<li class="parent"><a target="_self" href="/admin/home">控制台</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li target="_self" class="focus"><a href="/admin/home">概要</a></li>
|
||||
<li><a target="_self" href="/admin/profile">个人设置</a></li>
|
||||
<li><a target="_self" href="/admin/plugin">插件</a></li>
|
||||
<li class="last"><a target="_self" href="/admin/theme">外观</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root">
|
||||
<li class="parent"><a target="_self" href="/admin/write">撰写</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li class="last"><a target="_self" href="/admin/write">撰写文章</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root">
|
||||
<li class="parent"><a target="_self" href="/admin/articles">管理</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li><a target="_self" href="/admin/articles">文章</a></li>
|
||||
<li><a target="_self" href="/admin/categories">分类</a></li>
|
||||
<li class="last"><a target="_self" href="/admin/tags">标签</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root">
|
||||
<li class="parent"><a target="_self" href="/admin/setting">设置</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li><a target="_self" href="/admin/setting">基本</a></li>
|
||||
<li class="last"><a target="_self" href="/admin/reading">阅读</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
</nav>
|
||||
<div class="operate">
|
||||
<a target="_self" title="最后登录: 7小时前" href="/admin/profile" class="author">admin</a><a target="_self" class="exit" href="/admin/login?logout=true">登出</a><a href="/">网站</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="main">
|
||||
<div class="body container">
|
||||
<div class="typecho-page-title">
|
||||
<h2>管理分类<a href="http://localhost/admin/category.php">新增</a></h2>
|
||||
</div>
|
||||
<div class="row typecho-page-main manage-metas">
|
||||
<div class="col-mb-12" role="main">
|
||||
<form method="post" name="manage_categories" class="operate-form">
|
||||
<div class="typecho-list-operate clearfix">
|
||||
<div class="operate">
|
||||
<label><i class="sr-only">全选</i>
|
||||
<input type="checkbox" class="typecho-table-select-all" />
|
||||
</label>
|
||||
<div class="btn-group btn-drop">
|
||||
<button class="btn dropdown-toggle btn-s" type="button"><i class="sr-only">操作</i>选中项 <i class="i-caret-down"></i></button>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a lang="此分类下的所有内容将被删除, 你确认要删除这些分类吗?" href="http://localhost/index.php/action/metas-category-edit?do=delete&_=7fe4662ec063c94e7072ce37ddbe3abc">删除</a></li>
|
||||
<li><a lang="刷新分类可能需要等待较长时间, 你确认要刷新这些分类吗?" href="http://localhost/index.php/action/metas-category-edit?do=refresh&_=7fe4662ec063c94e7072ce37ddbe3abc">刷新</a></li>
|
||||
<li class="multiline">
|
||||
<button type="button" class="btn merge btn-s" rel="http://localhost/index.php/action/metas-category-edit?do=merge&_=7fe4662ec063c94e7072ce37ddbe3abc">合并到</button>
|
||||
<select name="merge">
|
||||
<option value="1">默认分类</option>
|
||||
<option value="2">232</option>
|
||||
<option value="3">234</option>
|
||||
<option value="4">2</option>
|
||||
<option value="5">4</option>
|
||||
<option value="6">3</option>
|
||||
<option value="7">5</option>
|
||||
<option value="8">6</option>
|
||||
<option value="9">7</option>
|
||||
<option value="10">8</option>
|
||||
<option value="11">9</option>
|
||||
</select>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="search" role="search">
|
||||
</div>
|
||||
</div>
|
||||
<div class="typecho-table-wrap">
|
||||
<table class="typecho-list-table">
|
||||
<colgroup>
|
||||
<col width="20" />
|
||||
<col width="30%" />
|
||||
<col width="15%" />
|
||||
<col width="25%" />
|
||||
<col width="" />
|
||||
<col width="10%" />
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr class="nodrag">
|
||||
<th> </th>
|
||||
<th>名称</th>
|
||||
<th>子分类</th>
|
||||
<th>缩略名</th>
|
||||
<th> </th>
|
||||
<th>文章数</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr id="mid-category-1">
|
||||
<td>
|
||||
<input type="checkbox" value="1" name="mid[]" />
|
||||
</td>
|
||||
<td><a href="http://localhost/admin/category.php?mid=1">默认分类</a>
|
||||
<a href="http://localhost/index.php/category/default/" title="浏览 默认分类"><i class="i-exlink"></i></a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="http://localhost/admin/category.php?parent=1">新增</a>
|
||||
</td>
|
||||
<td>default</td>
|
||||
<td>
|
||||
默认 </td>
|
||||
<td><a class="balloon-button left size-10" href="http://localhost/admin/manage-posts.php?category=1">2</a></td>
|
||||
</tr>
|
||||
<tr id="mid-category-2">
|
||||
<td>
|
||||
<input type="checkbox" value="2" name="mid[]" />
|
||||
</td>
|
||||
<td><a href="http://localhost/admin/category.php?mid=2">232</a>
|
||||
<a href="http://localhost/index.php/category/2342/" title="浏览 232"><i class="i-exlink"></i></a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="http://localhost/admin/category.php?parent=2">新增</a>
|
||||
</td>
|
||||
<td>2342</td>
|
||||
<td>
|
||||
<a class="hidden-by-mouse" href="http://localhost/index.php/action/metas-category-edit?do=default&mid=2&_=7fe4662ec063c94e7072ce37ddbe3abc" title="设为默认">默认</a>
|
||||
</td>
|
||||
<td><a class="balloon-button left size-1" href="http://localhost/admin/manage-posts.php?category=2">0</a></td>
|
||||
</tr>
|
||||
<tr id="mid-category-3">
|
||||
<td>
|
||||
<input type="checkbox" value="3" name="mid[]" />
|
||||
</td>
|
||||
<td><a href="http://localhost/admin/category.php?mid=3">234</a>
|
||||
<a href="http://localhost/index.php/category/23423/" title="浏览 234"><i class="i-exlink"></i></a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="http://localhost/admin/category.php?parent=3">新增</a>
|
||||
</td>
|
||||
<td>23423</td>
|
||||
<td>
|
||||
<a class="hidden-by-mouse" href="http://localhost/index.php/action/metas-category-edit?do=default&mid=3&_=7fe4662ec063c94e7072ce37ddbe3abc" title="设为默认">默认</a>
|
||||
</td>
|
||||
<td><a class="balloon-button left size-1" href="http://localhost/admin/manage-posts.php?category=3">0</a></td>
|
||||
</tr>
|
||||
<tr id="mid-category-4">
|
||||
<td>
|
||||
<input type="checkbox" value="4" name="mid[]" />
|
||||
</td>
|
||||
<td><a href="http://localhost/admin/category.php?mid=4">2</a>
|
||||
<a href="http://localhost/index.php/category/2/" title="浏览 2"><i class="i-exlink"></i></a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="http://localhost/admin/category.php?parent=4">新增</a>
|
||||
</td>
|
||||
<td>2</td>
|
||||
<td>
|
||||
<a class="hidden-by-mouse" href="http://localhost/index.php/action/metas-category-edit?do=default&mid=4&_=7fe4662ec063c94e7072ce37ddbe3abc" title="设为默认">默认</a>
|
||||
</td>
|
||||
<td><a class="balloon-button left size-1" href="http://localhost/admin/manage-posts.php?category=4">0</a></td>
|
||||
</tr>
|
||||
<tr id="mid-category-5">
|
||||
<td>
|
||||
<input type="checkbox" value="5" name="mid[]" />
|
||||
</td>
|
||||
<td><a href="http://localhost/admin/category.php?mid=5">4</a>
|
||||
<a href="http://localhost/index.php/category/4/" title="浏览 4"><i class="i-exlink"></i></a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="http://localhost/admin/category.php?parent=5">新增</a>
|
||||
</td>
|
||||
<td>4</td>
|
||||
<td>
|
||||
<a class="hidden-by-mouse" href="http://localhost/index.php/action/metas-category-edit?do=default&mid=5&_=7fe4662ec063c94e7072ce37ddbe3abc" title="设为默认">默认</a>
|
||||
</td>
|
||||
<td><a class="balloon-button left size-1" href="http://localhost/admin/manage-posts.php?category=5">0</a></td>
|
||||
</tr>
|
||||
<tr id="mid-category-6">
|
||||
<td>
|
||||
<input type="checkbox" value="6" name="mid[]" />
|
||||
</td>
|
||||
<td><a href="http://localhost/admin/category.php?mid=6">3</a>
|
||||
<a href="http://localhost/index.php/category/3/" title="浏览 3"><i class="i-exlink"></i></a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="http://localhost/admin/category.php?parent=6">新增</a>
|
||||
</td>
|
||||
<td>3</td>
|
||||
<td>
|
||||
<a class="hidden-by-mouse" href="http://localhost/index.php/action/metas-category-edit?do=default&mid=6&_=7fe4662ec063c94e7072ce37ddbe3abc" title="设为默认">默认</a>
|
||||
</td>
|
||||
<td><a class="balloon-button left size-1" href="http://localhost/admin/manage-posts.php?category=6">0</a></td>
|
||||
</tr>
|
||||
<tr id="mid-category-7">
|
||||
<td>
|
||||
<input type="checkbox" value="7" name="mid[]" />
|
||||
</td>
|
||||
<td><a href="http://localhost/admin/category.php?mid=7">5</a>
|
||||
<a href="http://localhost/index.php/category/5/" title="浏览 5"><i class="i-exlink"></i></a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="http://localhost/admin/category.php?parent=7">新增</a>
|
||||
</td>
|
||||
<td>5</td>
|
||||
<td>
|
||||
<a class="hidden-by-mouse" href="http://localhost/index.php/action/metas-category-edit?do=default&mid=7&_=7fe4662ec063c94e7072ce37ddbe3abc" title="设为默认">默认</a>
|
||||
</td>
|
||||
<td><a class="balloon-button left size-1" href="http://localhost/admin/manage-posts.php?category=7">0</a></td>
|
||||
</tr>
|
||||
<tr id="mid-category-8">
|
||||
<td>
|
||||
<input type="checkbox" value="8" name="mid[]" />
|
||||
</td>
|
||||
<td><a href="http://localhost/admin/category.php?mid=8">6</a>
|
||||
<a href="http://localhost/index.php/category/6/" title="浏览 6"><i class="i-exlink"></i></a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="http://localhost/admin/category.php?parent=8">新增</a>
|
||||
</td>
|
||||
<td>6</td>
|
||||
<td>
|
||||
<a class="hidden-by-mouse" href="http://localhost/index.php/action/metas-category-edit?do=default&mid=8&_=7fe4662ec063c94e7072ce37ddbe3abc" title="设为默认">默认</a>
|
||||
</td>
|
||||
<td><a class="balloon-button left size-1" href="http://localhost/admin/manage-posts.php?category=8">0</a></td>
|
||||
</tr>
|
||||
<tr id="mid-category-9">
|
||||
<td>
|
||||
<input type="checkbox" value="9" name="mid[]" />
|
||||
</td>
|
||||
<td><a href="http://localhost/admin/category.php?mid=9">7</a>
|
||||
<a href="http://localhost/index.php/category/7/" title="浏览 7"><i class="i-exlink"></i></a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="http://localhost/admin/category.php?parent=9">新增</a>
|
||||
</td>
|
||||
<td>7</td>
|
||||
<td>
|
||||
<a class="hidden-by-mouse" href="http://localhost/index.php/action/metas-category-edit?do=default&mid=9&_=7fe4662ec063c94e7072ce37ddbe3abc" title="设为默认">默认</a>
|
||||
</td>
|
||||
<td><a class="balloon-button left size-1" href="http://localhost/admin/manage-posts.php?category=9">0</a></td>
|
||||
</tr>
|
||||
<tr id="mid-category-10">
|
||||
<td>
|
||||
<input type="checkbox" value="10" name="mid[]" />
|
||||
</td>
|
||||
<td><a href="http://localhost/admin/category.php?mid=10">8</a>
|
||||
<a href="http://localhost/index.php/category/8/" title="浏览 8"><i class="i-exlink"></i></a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="http://localhost/admin/category.php?parent=10">新增</a>
|
||||
</td>
|
||||
<td>8</td>
|
||||
<td>
|
||||
<a class="hidden-by-mouse" href="http://localhost/index.php/action/metas-category-edit?do=default&mid=10&_=7fe4662ec063c94e7072ce37ddbe3abc" title="设为默认">默认</a>
|
||||
</td>
|
||||
<td><a class="balloon-button left size-1" href="http://localhost/admin/manage-posts.php?category=10">0</a></td>
|
||||
</tr>
|
||||
<tr id="mid-category-11">
|
||||
<td>
|
||||
<input type="checkbox" value="11" name="mid[]" />
|
||||
</td>
|
||||
<td><a href="http://localhost/admin/category.php?mid=11">9</a>
|
||||
<a href="http://localhost/index.php/category/9/" title="浏览 9"><i class="i-exlink"></i></a>
|
||||
</td>
|
||||
<td>
|
||||
<a href="http://localhost/admin/category.php?parent=11">新增</a>
|
||||
</td>
|
||||
<td>9</td>
|
||||
<td>
|
||||
<a class="hidden-by-mouse" href="http://localhost/index.php/action/metas-category-edit?do=default&mid=11&_=7fe4662ec063c94e7072ce37ddbe3abc" title="设为默认">默认</a>
|
||||
</td>
|
||||
<td><a class="balloon-button left size-1" href="http://localhost/admin/manage-posts.php?category=11">0</a></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="typecho-foot" role="contentinfo">
|
||||
<div class="copyright">
|
||||
<a href="http://typecho.org" class="i-logo-s">Typecho</a>
|
||||
<p>由 <a href="http://typecho.org">Typecho</a> 强力驱动, 版本 1.0 (14.10.10)</p>
|
||||
</div>
|
||||
<nav class="resource">
|
||||
<a href="http://docs.typecho.org">帮助文档</a> •
|
||||
<a href="http://forum.typecho.org">支持论坛</a> •
|
||||
<a href="https://github.com/typecho/typecho/issues">报告错误</a> •
|
||||
<a href="http://extends.typecho.org">资源下载</a>
|
||||
</nav>
|
||||
</div>
|
||||
<script src="http://localhost/admin/js/jquery.js?v=14.10.10"></script>
|
||||
<script src="http://localhost/admin/js/jquery-ui.js?v=14.10.10"></script>
|
||||
<script src="http://localhost/admin/js/typecho.js?v=14.10.10"></script>
|
||||
<script>
|
||||
(function() {
|
||||
$(document).ready(function() {
|
||||
// 处理消息机制
|
||||
(function() {
|
||||
var prefix = '86a9106ae65537651a8e456835b316ab',
|
||||
cookies = {
|
||||
notice: $.cookie(prefix + '__typecho_notice'),
|
||||
noticeType: $.cookie(prefix + '__typecho_notice_type'),
|
||||
highlight: $.cookie(prefix + '__typecho_notice_highlight')
|
||||
},
|
||||
path = '/';
|
||||
|
||||
if (!!cookies.notice && 'success|notice|error'.indexOf(cookies.noticeType) >= 0) {
|
||||
var head = $('.typecho-head-nav'),
|
||||
p = $('<div class="message popup ' + cookies.noticeType + '">' + '<ul><li>' + $.parseJSON(cookies.notice).join('</li><li>') + '</li></ul></div>'),
|
||||
offset = 0;
|
||||
|
||||
if (head.length > 0) {
|
||||
p.insertAfter(head);
|
||||
offset = head.outerHeight();
|
||||
} else {
|
||||
p.prependTo(document.body);
|
||||
}
|
||||
|
||||
function checkScroll() {
|
||||
if ($(window).scrollTop() >= offset) {
|
||||
p.css({
|
||||
'position': 'fixed',
|
||||
'top': 0
|
||||
});
|
||||
} else {
|
||||
p.css({
|
||||
'position': 'absolute',
|
||||
'top': offset
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
$(window).scroll(function() {
|
||||
checkScroll();
|
||||
});
|
||||
|
||||
checkScroll();
|
||||
|
||||
p.slideDown(function() {
|
||||
var t = $(this),
|
||||
color = '#C6D880';
|
||||
|
||||
if (t.hasClass('error')) {
|
||||
color = '#FBC2C4';
|
||||
} else if (t.hasClass('notice')) {
|
||||
color = '#FFD324';
|
||||
}
|
||||
|
||||
t.effect('highlight', {
|
||||
color: color
|
||||
})
|
||||
.delay(5000).slideUp(function() {
|
||||
$(this).remove();
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
$.cookie(prefix + '__typecho_notice', null, {
|
||||
path: path
|
||||
});
|
||||
$.cookie(prefix + '__typecho_notice_type', null, {
|
||||
path: path
|
||||
});
|
||||
}
|
||||
|
||||
if (cookies.highlight) {
|
||||
$('#' + cookies.highlight).effect('highlight', 1000);
|
||||
$.cookie(prefix + '__typecho_notice_highlight', null, {
|
||||
path: path
|
||||
});
|
||||
}
|
||||
})();
|
||||
|
||||
|
||||
// 导航菜单 tab 聚焦时展开下拉菜单
|
||||
(function() {
|
||||
$('#typecho-nav-list').find('.parent a').focus(function() {
|
||||
$('#typecho-nav-list').find('.child').hide();
|
||||
$(this).parents('.root').find('.child').show();
|
||||
});
|
||||
$('.operate').find('a').focus(function() {
|
||||
$('#typecho-nav-list').find('.child').hide();
|
||||
});
|
||||
})();
|
||||
|
||||
|
||||
if ($('.typecho-login').length == 0) {
|
||||
$('a').each(function() {
|
||||
var t = $(this),
|
||||
href = t.attr('href');
|
||||
|
||||
if ((href && href[0] == '#') || /^http\:\/\/localhost\/admin\/.*$/.exec(href) || /^http\:\/\/localhost\/index\.php\/action\/[_a-zA-Z0-9\/]+.*$/.exec(href)) {
|
||||
return;
|
||||
}
|
||||
|
||||
t.attr('target', '_blank');
|
||||
});
|
||||
}
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
<script type="text/javascript">
|
||||
(function() {
|
||||
$(document).ready(function() {
|
||||
var table = $('.typecho-list-table').tableDnD({
|
||||
onDrop: function() {
|
||||
var ids = [];
|
||||
|
||||
$('input[type=checkbox]', table).each(function() {
|
||||
ids.push($(this).val());
|
||||
});
|
||||
|
||||
$.post('http://localhost/index.php/action/metas-category-edit?do=sort&_=7fe4662ec063c94e7072ce37ddbe3abc',
|
||||
$.param({
|
||||
mid: ids
|
||||
}));
|
||||
|
||||
$('tr', table).each(function(i) {
|
||||
if (i % 2) {
|
||||
$(this).addClass('even');
|
||||
} else {
|
||||
$(this).removeClass('even');
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
table.tableSelectable({
|
||||
checkEl: 'input[type=checkbox]',
|
||||
rowEl: 'tr',
|
||||
selectAllEl: '.typecho-table-select-all',
|
||||
actionEl: '.dropdown-menu a'
|
||||
});
|
||||
|
||||
$('.btn-drop').dropdownMenu({
|
||||
btnEl: '.dropdown-toggle',
|
||||
menuEl: '.dropdown-menu'
|
||||
});
|
||||
|
||||
$('.dropdown-menu button.merge').click(function() {
|
||||
var btn = $(this);
|
||||
btn.parents('form').attr('action', btn.attr('rel')).submit();
|
||||
});
|
||||
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@@ -0,0 +1,374 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html class="no-js">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1">
|
||||
<meta name="renderer" content="webkit">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>基本设置 - Hello World - Powered by Typecho</title>
|
||||
<meta name="robots" content="noindex, nofollow">
|
||||
<link rel="stylesheet" href="http://localhost/admin/css/normalize.css?v=14.10.10">
|
||||
<link rel="stylesheet" href="http://localhost/admin/css/grid.css?v=14.10.10">
|
||||
<link rel="stylesheet" href="http://localhost/admin/css/style.css?v=14.10.10">
|
||||
<!--[if lt IE 9]>
|
||||
<script src="http://localhost/admin/js/html5shiv.js?v=14.10.10"></script>
|
||||
<script src="http://localhost/admin/js/respond.js?v=14.10.10"></script>
|
||||
<![endif]-->
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<!--[if lt IE 9]>
|
||||
<div class="message error browsehappy" role="dialog">当前网页 <strong>不支持</strong> 你正在使用的浏览器. 为了正常的访问, 请 <a href="http://browsehappy.com/">升级你的浏览器</a>.</div>
|
||||
<![endif]-->
|
||||
<div class="typecho-head-nav clearfix" role="navigation">
|
||||
<nav id="typecho-nav-list">
|
||||
<ul class="root focus">
|
||||
<li class="parent"><a target="_self" href="/admin/home">控制台</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li target="_self" class="focus"><a href="/admin/home">概要</a></li>
|
||||
<li><a target="_self" href="/admin/profile">个人设置</a></li>
|
||||
<li><a target="_self" href="/admin/plugin">插件</a></li>
|
||||
<li class="last"><a target="_self" href="/admin/theme">外观</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root">
|
||||
<li class="parent"><a target="_self" href="/admin/write">撰写</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li class="last"><a target="_self" href="/admin/write">撰写文章</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root">
|
||||
<li class="parent"><a target="_self" href="/admin/articles">管理</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li><a target="_self" href="/admin/articles">文章</a></li>
|
||||
<li><a target="_self" href="/admin/categories">分类</a></li>
|
||||
<li class="last"><a target="_self" href="/admin/tags">标签</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root">
|
||||
<li class="parent"><a target="_self" href="/admin/setting">设置</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li><a target="_self" href="/admin/setting">基本</a></li>
|
||||
<li class="last"><a target="_self" href="/admin/reading">阅读</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
</nav>
|
||||
<div class="operate">
|
||||
<a target="_self" title="最后登录: 7小时前" href="/admin/profile" class="author">admin</a><a target="_self" class="exit" href="/admin/login?logout=true">登出</a><a href="/">网站</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="main">
|
||||
<div class="body container">
|
||||
<div class="typecho-page-title">
|
||||
<h2>基本设置</h2>
|
||||
</div>
|
||||
<div class="row typecho-page-main" role="form">
|
||||
<div class="col-mb-12 col-tb-8 col-tb-offset-2">
|
||||
<form action="http://localhost/index.php/action/options-general?_=f90abdb2b52a2818286e72429dfcc97b" method="post" enctype="application/x-www-form-urlencoded">
|
||||
<ul class="typecho-option" id="typecho-option-item-title-0">
|
||||
<li>
|
||||
<label class="typecho-label" for="title-0-1">
|
||||
站点名称</label>
|
||||
<input id="title-0-1" name="title" type="text" class="w-100" value="Hello World" />
|
||||
<p class="description">
|
||||
站点的名称将显示在网页的标题处.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-siteUrl-1">
|
||||
<li>
|
||||
<label class="typecho-label" for="siteUrl-0-2">
|
||||
站点地址</label>
|
||||
<input id="siteUrl-0-2" name="siteUrl" type="text" class="w-100 mono" value="http://localhost" />
|
||||
<p class="description">
|
||||
站点地址主要用于生成内容的永久链接.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-description-2">
|
||||
<li>
|
||||
<label class="typecho-label" for="description-0-3">
|
||||
站点描述</label>
|
||||
<input id="description-0-3" name="description" type="text" class="text" value="Just So So ..." />
|
||||
<p class="description">
|
||||
站点描述将显示在网页代码的头部.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-keywords-3">
|
||||
<li>
|
||||
<label class="typecho-label" for="keywords-0-4">
|
||||
关键词</label>
|
||||
<input id="keywords-0-4" name="keywords" type="text" class="text" value="typecho,php,blog" />
|
||||
<p class="description">
|
||||
请以半角逗号 "," 分割多个关键字.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-allowRegister-4">
|
||||
<li>
|
||||
<label class="typecho-label">
|
||||
是否允许注册</label>
|
||||
<span>
|
||||
<input name="allowRegister" type="radio" value="0" id="allowRegister-0" checked="true" />
|
||||
<label for="allowRegister-0">
|
||||
不允许</label>
|
||||
</span>
|
||||
<span>
|
||||
<input name="allowRegister" type="radio" value="1" id="allowRegister-1" />
|
||||
<label for="allowRegister-1">
|
||||
允许</label>
|
||||
</span>
|
||||
<p class="description">
|
||||
允许访问者注册到你的网站, 默认的注册用户不享有任何写入权限.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-timezone-5">
|
||||
<li>
|
||||
<label class="typecho-label" for="timezone-0-6">
|
||||
时区</label>
|
||||
<select name="timezone" id="timezone-0-6">
|
||||
<option value="0">
|
||||
格林威治(子午线)标准时间 (GMT)</option>
|
||||
<option value="3600">
|
||||
中欧标准时间 阿姆斯特丹,荷兰,法国 (GMT +1)</option>
|
||||
<option value="7200">
|
||||
东欧标准时间 布加勒斯特,塞浦路斯,希腊 (GMT +2)</option>
|
||||
<option value="10800">
|
||||
莫斯科时间 伊拉克,埃塞俄比亚,马达加斯加 (GMT +3)</option>
|
||||
<option value="14400">
|
||||
第比利斯时间 阿曼,毛里塔尼亚,留尼汪岛 (GMT +4)</option>
|
||||
<option value="18000">
|
||||
新德里时间 巴基斯坦,马尔代夫 (GMT +5)</option>
|
||||
<option value="21600">
|
||||
科伦坡时间 孟加拉 (GMT +6)</option>
|
||||
<option value="25200">
|
||||
曼谷雅加达 柬埔寨,苏门答腊,老挝 (GMT +7)</option>
|
||||
<option value="28800" selected="true">
|
||||
北京时间 香港,新加坡,越南 (GMT +8)</option>
|
||||
<option value="32400">
|
||||
东京平壤时间 西伊里安,摩鹿加群岛 (GMT +9)</option>
|
||||
<option value="36000">
|
||||
悉尼关岛时间 塔斯马尼亚岛,新几内亚 (GMT +10)</option>
|
||||
<option value="39600">
|
||||
所罗门群岛 库页岛 (GMT +11)</option>
|
||||
<option value="43200">
|
||||
惠灵顿时间 新西兰,斐济群岛 (GMT +12)</option>
|
||||
<option value="-3600">
|
||||
佛德尔群岛 亚速尔群岛,葡属几内亚 (GMT -1)</option>
|
||||
<option value="-7200">
|
||||
大西洋中部时间 格陵兰 (GMT -2)</option>
|
||||
<option value="-10800">
|
||||
布宜诺斯艾利斯 乌拉圭,法属圭亚那 (GMT -3)</option>
|
||||
<option value="-14400">
|
||||
智利巴西 委内瑞拉,玻利维亚 (GMT -4)</option>
|
||||
<option value="-18000">
|
||||
纽约渥太华 古巴,哥伦比亚,牙买加 (GMT -5)</option>
|
||||
<option value="-21600">
|
||||
墨西哥城时间 洪都拉斯,危地马拉,哥斯达黎加 (GMT -6)</option>
|
||||
<option value="-25200">
|
||||
美国丹佛时间 (GMT -7)</option>
|
||||
<option value="-28800">
|
||||
美国旧金山时间 (GMT -8)</option>
|
||||
<option value="-32400">
|
||||
阿拉斯加时间 (GMT -9)</option>
|
||||
<option value="-36000">
|
||||
夏威夷群岛 (GMT -10)</option>
|
||||
<option value="-39600">
|
||||
东萨摩亚群岛 (GMT -11)</option>
|
||||
<option value="-43200">
|
||||
艾尼威托克岛 (GMT -12)</option>
|
||||
</select>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-attachmentTypes-6">
|
||||
<li>
|
||||
<label class="typecho-label">
|
||||
允许上传的文件类型</label>
|
||||
<span class="multiline">
|
||||
<input name="attachmentTypes[]" type="checkbox" value="@image@" id="attachmentTypes-image" checked="true" />
|
||||
<label for="attachmentTypes-image">
|
||||
图片文件 <code>(gif jpg jpeg png tiff bmp)</code></label>
|
||||
</span>
|
||||
<span class="multiline">
|
||||
<input name="attachmentTypes[]" type="checkbox" value="@media@" id="attachmentTypes-media" />
|
||||
<label for="attachmentTypes-media">
|
||||
多媒体文件 <code>(mp3 wmv wma rmvb rm avi flv)</code></label>
|
||||
</span>
|
||||
<span class="multiline">
|
||||
<input name="attachmentTypes[]" type="checkbox" value="@doc@" id="attachmentTypes-doc" />
|
||||
<label for="attachmentTypes-doc">
|
||||
常用档案文件 <code>(txt doc docx xls xlsx ppt pptx zip rar pdf)</code></label>
|
||||
</span>
|
||||
<span class="multiline">
|
||||
<input name="attachmentTypes[]" type="checkbox" value="@other@" id="attachmentTypes-other" />
|
||||
<label for="attachmentTypes-other">
|
||||
其他格式 <input type="text" class="w-50 text-s mono" name="attachmentTypesOther" value="" /></label>
|
||||
</span>
|
||||
<p class="description">
|
||||
用逗号 "," 将后缀名隔开, 例如: <code>cpp, h, mak</code></p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option typecho-option-submit" id="typecho-option-item-submit-7">
|
||||
<li>
|
||||
<button type="submit" class="btn primary">
|
||||
保存设置</button>
|
||||
</li>
|
||||
</ul>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="typecho-foot" role="contentinfo">
|
||||
<div class="copyright">
|
||||
<a href="http://typecho.org" class="i-logo-s">Typecho</a>
|
||||
<p>由 <a href="http://typecho.org">Typecho</a> 强力驱动, 版本 1.0 (14.10.10)</p>
|
||||
</div>
|
||||
<nav class="resource">
|
||||
<a href="http://docs.typecho.org">帮助文档</a> •
|
||||
<a href="http://forum.typecho.org">支持论坛</a> •
|
||||
<a href="https://github.com/typecho/typecho/issues">报告错误</a> •
|
||||
<a href="http://extends.typecho.org">资源下载</a>
|
||||
</nav>
|
||||
</div>
|
||||
<script src="http://localhost/admin/js/jquery.js?v=14.10.10"></script>
|
||||
<script src="http://localhost/admin/js/jquery-ui.js?v=14.10.10"></script>
|
||||
<script src="http://localhost/admin/js/typecho.js?v=14.10.10"></script>
|
||||
<script>
|
||||
(function() {
|
||||
$(document).ready(function() {
|
||||
// 处理消息机制
|
||||
(function() {
|
||||
var prefix = '86a9106ae65537651a8e456835b316ab',
|
||||
cookies = {
|
||||
notice: $.cookie(prefix + '__typecho_notice'),
|
||||
noticeType: $.cookie(prefix + '__typecho_notice_type'),
|
||||
highlight: $.cookie(prefix + '__typecho_notice_highlight')
|
||||
},
|
||||
path = '/';
|
||||
|
||||
if (!!cookies.notice && 'success|notice|error'.indexOf(cookies.noticeType) >= 0) {
|
||||
var head = $('.typecho-head-nav'),
|
||||
p = $('<div class="message popup ' + cookies.noticeType + '">' + '<ul><li>' + $.parseJSON(cookies.notice).join('</li><li>') + '</li></ul></div>'),
|
||||
offset = 0;
|
||||
|
||||
if (head.length > 0) {
|
||||
p.insertAfter(head);
|
||||
offset = head.outerHeight();
|
||||
} else {
|
||||
p.prependTo(document.body);
|
||||
}
|
||||
|
||||
function checkScroll() {
|
||||
if ($(window).scrollTop() >= offset) {
|
||||
p.css({
|
||||
'position': 'fixed',
|
||||
'top': 0
|
||||
});
|
||||
} else {
|
||||
p.css({
|
||||
'position': 'absolute',
|
||||
'top': offset
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
$(window).scroll(function() {
|
||||
checkScroll();
|
||||
});
|
||||
|
||||
checkScroll();
|
||||
|
||||
p.slideDown(function() {
|
||||
var t = $(this),
|
||||
color = '#C6D880';
|
||||
|
||||
if (t.hasClass('error')) {
|
||||
color = '#FBC2C4';
|
||||
} else if (t.hasClass('notice')) {
|
||||
color = '#FFD324';
|
||||
}
|
||||
|
||||
t.effect('highlight', {
|
||||
color: color
|
||||
})
|
||||
.delay(5000).slideUp(function() {
|
||||
$(this).remove();
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
$.cookie(prefix + '__typecho_notice', null, {
|
||||
path: path
|
||||
});
|
||||
$.cookie(prefix + '__typecho_notice_type', null, {
|
||||
path: path
|
||||
});
|
||||
}
|
||||
|
||||
if (cookies.highlight) {
|
||||
$('#' + cookies.highlight).effect('highlight', 1000);
|
||||
$.cookie(prefix + '__typecho_notice_highlight', null, {
|
||||
path: path
|
||||
});
|
||||
}
|
||||
})();
|
||||
|
||||
|
||||
// 导航菜单 tab 聚焦时展开下拉菜单
|
||||
(function() {
|
||||
$('#typecho-nav-list').find('.parent a').focus(function() {
|
||||
$('#typecho-nav-list').find('.child').hide();
|
||||
$(this).parents('.root').find('.child').show();
|
||||
});
|
||||
$('.operate').find('a').focus(function() {
|
||||
$('#typecho-nav-list').find('.child').hide();
|
||||
});
|
||||
})();
|
||||
|
||||
|
||||
if ($('.typecho-login').length == 0) {
|
||||
$('a').each(function() {
|
||||
var t = $(this),
|
||||
href = t.attr('href');
|
||||
|
||||
if ((href && href[0] == '#') || /^http\:\/\/localhost\/admin\/.*$/.exec(href) || /^http\:\/\/localhost\/index\.php\/action\/[_a-zA-Z0-9\/]+.*$/.exec(href)) {
|
||||
return;
|
||||
}
|
||||
|
||||
t.attr('target', '_blank');
|
||||
});
|
||||
}
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
<script>
|
||||
(function() {
|
||||
$(document).ready(function() {
|
||||
var error = $('.typecho-option .error:first');
|
||||
|
||||
if (error.length > 0) {
|
||||
$('html,body').scrollTop(error.parents('.typecho-option').offset().top);
|
||||
}
|
||||
|
||||
$('form').submit(function() {
|
||||
if (this.submitted) {
|
||||
return false;
|
||||
} else {
|
||||
this.submitted = true;
|
||||
}
|
||||
});
|
||||
|
||||
$('label input[type=text]').click(function(e) {
|
||||
var check = $('#' + $(this).parents('label').attr('for'));
|
||||
check.prop('checked', true);
|
||||
return false;
|
||||
});
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
@@ -0,0 +1,321 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html class="no-js">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1">
|
||||
<meta name="renderer" content="webkit">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>管理标签 - Hello World - Powered by Typecho</title>
|
||||
<meta name="robots" content="noindex, nofollow">
|
||||
<link rel="stylesheet" href="http://localhost/admin/css/normalize.css?v=14.10.10">
|
||||
<link rel="stylesheet" href="http://localhost/admin/css/grid.css?v=14.10.10">
|
||||
<link rel="stylesheet" href="http://localhost/admin/css/style.css?v=14.10.10">
|
||||
<!--[if lt IE 9]>
|
||||
<script src="http://localhost/admin/js/html5shiv.js?v=14.10.10"></script>
|
||||
<script src="http://localhost/admin/js/respond.js?v=14.10.10"></script>
|
||||
<![endif]-->
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<!--[if lt IE 9]>
|
||||
<div class="message error browsehappy" role="dialog">当前网页 <strong>不支持</strong> 你正在使用的浏览器. 为了正常的访问, 请 <a href="http://browsehappy.com/">升级你的浏览器</a>.</div>
|
||||
<![endif]-->
|
||||
<div class="typecho-head-nav clearfix" role="navigation">
|
||||
<nav id="typecho-nav-list">
|
||||
<ul class="root focus">
|
||||
<li class="parent"><a target="_self" href="/admin/home">控制台</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li target="_self" class="focus"><a href="/admin/home">概要</a></li>
|
||||
<li><a target="_self" href="/admin/profile">个人设置</a></li>
|
||||
<li><a target="_self" href="/admin/plugin">插件</a></li>
|
||||
<li class="last"><a target="_self" href="/admin/theme">外观</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root">
|
||||
<li class="parent"><a target="_self" href="/admin/write">撰写</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li class="last"><a target="_self" href="/admin/write">撰写文章</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root">
|
||||
<li class="parent"><a target="_self" href="/admin/articles">管理</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li><a target="_self" href="/admin/articles">文章</a></li>
|
||||
<li><a target="_self" href="/admin/categories">分类</a></li>
|
||||
<li class="last"><a target="_self" href="/admin/tags">标签</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
<ul class="root">
|
||||
<li class="parent"><a target="_self" href="/admin/setting">设置</a></dt>
|
||||
</li>
|
||||
<ul class="child">
|
||||
<li><a target="_self" href="/admin/setting">基本</a></li>
|
||||
<li class="last"><a target="_self" href="/admin/reading">阅读</a></li>
|
||||
</ul>
|
||||
</ul>
|
||||
</nav>
|
||||
<div class="operate">
|
||||
<a target="_self" title="最后登录: 7小时前" href="/admin/profile" class="author">admin</a><a target="_self" class="exit" href="/admin/login?logout=true">登出</a><a href="/">网站</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="main">
|
||||
<div class="body container">
|
||||
<div class="typecho-page-title">
|
||||
<h2>管理标签</h2>
|
||||
</div>
|
||||
<div class="row typecho-page-main manage-metas">
|
||||
<div class="col-mb-12 col-tb-8" role="main">
|
||||
<form method="post" name="manage_tags" class="operate-form">
|
||||
<div class="typecho-list-operate clearfix">
|
||||
<div class="operate">
|
||||
<label><i class="sr-only">全选</i>
|
||||
<input type="checkbox" class="typecho-table-select-all" />
|
||||
</label>
|
||||
<div class="btn-group btn-drop">
|
||||
<button class="btn dropdown-toggle btn-s" type="button"><i class="sr-only">操作</i>选中项 <i class="i-caret-down"></i></button>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a lang="你确认要删除这些标签吗?" href="http://localhost/index.php/action/metas-tag-edit?do=delete&_=2e6004cd103d97bddfccf02fddd0ecbe">删除</a></li>
|
||||
<li><a lang="刷新标签可能需要等待较长时间, 你确认要刷新这些标签吗?" href="http://localhost/index.php/action/metas-tag-edit?do=refresh&_=2e6004cd103d97bddfccf02fddd0ecbe">刷新</a></li>
|
||||
<li class="multiline">
|
||||
<button type="button" class="btn btn-s merge" rel="http://localhost/index.php/action/metas-tag-edit?do=merge&_=2e6004cd103d97bddfccf02fddd0ecbe">合并到</button>
|
||||
<input type="text" name="merge" class="text-s" />
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<ul class="typecho-list-notable tag-list clearfix">
|
||||
<li class="size-5" id="tag-18">
|
||||
<input type="checkbox" value="18" name="mid[]" />
|
||||
<span rel="http://localhost/admin/manage-tags.php?mid=18">sad</span>
|
||||
<a class="tag-edit-link" href="http://localhost/admin/manage-tags.php?mid=18"><i class="i-edit"></i></a>
|
||||
</li>
|
||||
<li class="size-5" id="tag-17">
|
||||
<input type="checkbox" value="17" name="mid[]" />
|
||||
<span rel="http://localhost/admin/manage-tags.php?mid=17">sdasdf</span>
|
||||
<a class="tag-edit-link" href="http://localhost/admin/manage-tags.php?mid=17"><i class="i-edit"></i></a>
|
||||
</li>
|
||||
<li class="size-5" id="tag-16">
|
||||
<input type="checkbox" value="16" name="mid[]" />
|
||||
<span rel="http://localhost/admin/manage-tags.php?mid=16">sdfsad</span>
|
||||
<a class="tag-edit-link" href="http://localhost/admin/manage-tags.php?mid=16"><i class="i-edit"></i></a>
|
||||
</li>
|
||||
<li class="size-5" id="tag-15">
|
||||
<input type="checkbox" value="15" name="mid[]" />
|
||||
<span rel="http://localhost/admin/manage-tags.php?mid=15">asdfasd</span>
|
||||
<a class="tag-edit-link" href="http://localhost/admin/manage-tags.php?mid=15"><i class="i-edit"></i></a>
|
||||
</li>
|
||||
<li class="size-5" id="tag-14">
|
||||
<input type="checkbox" value="14" name="mid[]" />
|
||||
<span rel="http://localhost/admin/manage-tags.php?mid=14">sdfsdfasdf</span>
|
||||
<a class="tag-edit-link" href="http://localhost/admin/manage-tags.php?mid=14"><i class="i-edit"></i></a>
|
||||
</li>
|
||||
<li class="size-5" id="tag-13">
|
||||
<input type="checkbox" value="13" name="mid[]" />
|
||||
<span rel="http://localhost/admin/manage-tags.php?mid=13">sdfsdfasd</span>
|
||||
<a class="tag-edit-link" href="http://localhost/admin/manage-tags.php?mid=13"><i class="i-edit"></i></a>
|
||||
</li>
|
||||
<li class="size-5" id="tag-12">
|
||||
<input type="checkbox" value="12" name="mid[]" />
|
||||
<span rel="http://localhost/admin/manage-tags.php?mid=12">sadfasdf</span>
|
||||
<a class="tag-edit-link" href="http://localhost/admin/manage-tags.php?mid=12"><i class="i-edit"></i></a>
|
||||
</li>
|
||||
</ul>
|
||||
<input type="hidden" name="do" value="delete" />
|
||||
</form>
|
||||
</div>
|
||||
<div class="col-mb-12 col-tb-4" role="form">
|
||||
<form action="http://localhost/index.php/action/metas-tag-edit?_=2e6004cd103d97bddfccf02fddd0ecbe" method="post" enctype="application/x-www-form-urlencoded">
|
||||
<ul class="typecho-option" id="typecho-option-item-name-0">
|
||||
<li>
|
||||
<label class="typecho-label" for="name-0-1">
|
||||
标签名称 *</label>
|
||||
<input id="name-0-1" name="name" type="text" class="text" />
|
||||
<p class="description">
|
||||
这是标签在站点中显示的名称.可以使用中文,如 "地球".</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-slug-1">
|
||||
<li>
|
||||
<label class="typecho-label" for="slug-0-2">
|
||||
标签缩略名</label>
|
||||
<input id="slug-0-2" name="slug" type="text" class="text" />
|
||||
<p class="description">
|
||||
标签缩略名用于创建友好的链接形式, 如果留空则默认使用标签名称.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-do-2" style="display:none">
|
||||
<li>
|
||||
<input name="do" type="hidden" value="insert" />
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-mid-3" style="display:none">
|
||||
<li>
|
||||
<input name="mid" type="hidden" />
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option typecho-option-submit" id="typecho-option-item--4">
|
||||
<li>
|
||||
<button type="submit" class="btn primary">
|
||||
增加标签</button>
|
||||
</li>
|
||||
</ul>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="typecho-foot" role="contentinfo">
|
||||
<div class="copyright">
|
||||
<a href="http://typecho.org" class="i-logo-s">Typecho</a>
|
||||
<p>由 <a href="http://typecho.org">Typecho</a> 强力驱动, 版本 1.0 (14.10.10)</p>
|
||||
</div>
|
||||
<nav class="resource">
|
||||
<a href="http://docs.typecho.org">帮助文档</a> •
|
||||
<a href="http://forum.typecho.org">支持论坛</a> •
|
||||
<a href="https://github.com/typecho/typecho/issues">报告错误</a> •
|
||||
<a href="http://extends.typecho.org">资源下载</a>
|
||||
</nav>
|
||||
</div>
|
||||
<script src="http://localhost/admin/js/jquery.js?v=14.10.10"></script>
|
||||
<script src="http://localhost/admin/js/jquery-ui.js?v=14.10.10"></script>
|
||||
<script src="http://localhost/admin/js/typecho.js?v=14.10.10"></script>
|
||||
<script>
|
||||
(function() {
|
||||
$(document).ready(function() {
|
||||
// 处理消息机制
|
||||
(function() {
|
||||
var prefix = '86a9106ae65537651a8e456835b316ab',
|
||||
cookies = {
|
||||
notice: $.cookie(prefix + '__typecho_notice'),
|
||||
noticeType: $.cookie(prefix + '__typecho_notice_type'),
|
||||
highlight: $.cookie(prefix + '__typecho_notice_highlight')
|
||||
},
|
||||
path = '/';
|
||||
|
||||
if (!!cookies.notice && 'success|notice|error'.indexOf(cookies.noticeType) >= 0) {
|
||||
var head = $('.typecho-head-nav'),
|
||||
p = $('<div class="message popup ' + cookies.noticeType + '">' + '<ul><li>' + $.parseJSON(cookies.notice).join('</li><li>') + '</li></ul></div>'),
|
||||
offset = 0;
|
||||
|
||||
if (head.length > 0) {
|
||||
p.insertAfter(head);
|
||||
offset = head.outerHeight();
|
||||
} else {
|
||||
p.prependTo(document.body);
|
||||
}
|
||||
|
||||
function checkScroll() {
|
||||
if ($(window).scrollTop() >= offset) {
|
||||
p.css({
|
||||
'position': 'fixed',
|
||||
'top': 0
|
||||
});
|
||||
} else {
|
||||
p.css({
|
||||
'position': 'absolute',
|
||||
'top': offset
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
$(window).scroll(function() {
|
||||
checkScroll();
|
||||
});
|
||||
|
||||
checkScroll();
|
||||
|
||||
p.slideDown(function() {
|
||||
var t = $(this),
|
||||
color = '#C6D880';
|
||||
|
||||
if (t.hasClass('error')) {
|
||||
color = '#FBC2C4';
|
||||
} else if (t.hasClass('notice')) {
|
||||
color = '#FFD324';
|
||||
}
|
||||
|
||||
t.effect('highlight', {
|
||||
color: color
|
||||
})
|
||||
.delay(5000).slideUp(function() {
|
||||
$(this).remove();
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
$.cookie(prefix + '__typecho_notice', null, {
|
||||
path: path
|
||||
});
|
||||
$.cookie(prefix + '__typecho_notice_type', null, {
|
||||
path: path
|
||||
});
|
||||
}
|
||||
|
||||
if (cookies.highlight) {
|
||||
$('#' + cookies.highlight).effect('highlight', 1000);
|
||||
$.cookie(prefix + '__typecho_notice_highlight', null, {
|
||||
path: path
|
||||
});
|
||||
}
|
||||
})();
|
||||
|
||||
|
||||
// 导航菜单 tab 聚焦时展开下拉菜单
|
||||
(function() {
|
||||
$('#typecho-nav-list').find('.parent a').focus(function() {
|
||||
$('#typecho-nav-list').find('.child').hide();
|
||||
$(this).parents('.root').find('.child').show();
|
||||
});
|
||||
$('.operate').find('a').focus(function() {
|
||||
$('#typecho-nav-list').find('.child').hide();
|
||||
});
|
||||
})();
|
||||
|
||||
|
||||
if ($('.typecho-login').length == 0) {
|
||||
$('a').each(function() {
|
||||
var t = $(this),
|
||||
href = t.attr('href');
|
||||
|
||||
if ((href && href[0] == '#') || /^http\:\/\/localhost\/admin\/.*$/.exec(href) || /^http\:\/\/localhost\/index\.php\/action\/[_a-zA-Z0-9\/]+.*$/.exec(href)) {
|
||||
return;
|
||||
}
|
||||
|
||||
t.attr('target', '_blank');
|
||||
});
|
||||
}
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
<script type="text/javascript">
|
||||
(function() {
|
||||
$(document).ready(function() {
|
||||
|
||||
$('.typecho-list-notable').tableSelectable({
|
||||
checkEl: 'input[type=checkbox]',
|
||||
rowEl: 'li',
|
||||
selectAllEl: '.typecho-table-select-all',
|
||||
actionEl: '.dropdown-menu a'
|
||||
});
|
||||
|
||||
$('.btn-drop').dropdownMenu({
|
||||
btnEl: '.dropdown-toggle',
|
||||
menuEl: '.dropdown-menu'
|
||||
});
|
||||
|
||||
$('.dropdown-menu button.merge').click(function() {
|
||||
var btn = $(this);
|
||||
btn.parents('form').attr('action', btn.attr('rel')).submit();
|
||||
});
|
||||
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,895 @@
|
||||
{{define "admin-post"}}
|
||||
<div class="body container">
|
||||
<div class="typecho-page-title">
|
||||
{{with .Eidt}}<h2>编辑 {{.Title}}</h2>{{end}}
|
||||
<h2>撰写文章</h2>
|
||||
</div>
|
||||
<div class="row typecho-page-main typecho-post-area" role="form">
|
||||
<form action="/admin/api/post-add" method="post" name="write_post">
|
||||
<div class="col-mb-12 col-tb-9" role="main">
|
||||
{{with .Eidt}}<cite class="edit-draft-notice">你正在编辑的是草稿, 你也可以 <a href="/admin/draft-delete?cid={{.ID}}">删除它</a></cite>{{end}}
|
||||
<p class="title">
|
||||
<label for="title" class="sr-only">标题</label>
|
||||
<input type="text" id="title" name="title" autocomplete="off" {{with .Edit}}value="{{.Title}}"{{end}} placeholder="标题" class="w-100 text title" />
|
||||
</p>
|
||||
<p class="mono url-slug">
|
||||
<label for="slug" class="sr-only">网址缩略名</label>
|
||||
{{.Domain}}/post/<input type="text" id="slug" name="slug" autocomplete="off" {{with .Edit}}value="{{.Slug}}" {{end}} class="mono" />.html </p>
|
||||
<p>
|
||||
<label for="text" class="sr-only">文章内容</label>
|
||||
<textarea style="height: 350px" autocomplete="off" id="text" name="text" class="w-100 mono">{{with .Edit}}{{.Content}}{{end}}</textarea>
|
||||
</p>
|
||||
<p class="submit clearfix">
|
||||
<span class="right">
|
||||
<input type="hidden" name="cid" {{with .Edit}}value="{{.ID}}"{{end}} />
|
||||
<button type="submit" name="do" value="save" id="btn-save" class="btn">保存草稿</button>
|
||||
<button type="submit" name="do" value="publish" class="btn primary" id="btn-submit">发布文章</button>
|
||||
</span>
|
||||
</p>
|
||||
</div>
|
||||
<div id="edit-secondary" class="col-mb-12 col-tb-3" role="complementary">
|
||||
<ul class="typecho-option-tabs clearfix">
|
||||
<li class="active w-50"><a href="#tab-advance">选项</a></li>
|
||||
<li class="w-50"><a href="#tab-files" id="tab-files-btn">上传</a></li>
|
||||
</ul>
|
||||
<div id="tab-advance" class="tab-content">
|
||||
<section class="typecho-post-option" role="application">
|
||||
<label for="date" class="typecho-label">发布日期</label>
|
||||
<p>
|
||||
<input class="typecho-date w-100" type="text" name="date" id="date" {{with .Edit}}value="{{dateformat .CreateTime "2006-01-02 15:04"}}"{{end}} />
|
||||
</p>
|
||||
</section>
|
||||
<section class="typecho-post-option category-option">
|
||||
<label class="typecho-label">分类</label>
|
||||
<ul>
|
||||
{{range $k,$v:=.Series}}
|
||||
<li>
|
||||
<input type="radio" id="serie-{{$v.ID}}" value="{{$v.ID}}" name="serie" {{with $.Edit}}{{if eq .SerieID $v.ID}}checked="true"{{end}}{{end}}/>
|
||||
<label for="serie-{{$v.ID}}">{{$v.Name}}</label>
|
||||
</li>
|
||||
{{end}}
|
||||
</ul>
|
||||
</section>
|
||||
<section class="typecho-post-option">
|
||||
<label for="token-input-tags" class="typecho-label">标签</label>
|
||||
<p>
|
||||
<input id="tags" name="tags" type="text" {{with .Edit}}value="{{join .Tags ","}}"{{end}} class="w-100 text" />
|
||||
</p>
|
||||
</section>
|
||||
</div>
|
||||
<!-- end #tab-advance -->
|
||||
<div id="tab-files" class="tab-content hidden">
|
||||
<div id="upload-panel" class="p">
|
||||
<div class="upload-area" draggable="true">拖放文件到这里
|
||||
<br>或者 <a href="###" class="upload-file">选择文件上传</a></div>
|
||||
<ul id="file-list">
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<!-- end #tab-files -->
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
(function() {
|
||||
$(document).ready(function() {
|
||||
var error = $('.typecho-option .error:first');
|
||||
|
||||
if (error.length > 0) {
|
||||
$('html,body').scrollTop(error.parents('.typecho-option').offset().top);
|
||||
}
|
||||
|
||||
$('form').submit(function() {
|
||||
if (this.submitted) {
|
||||
return false;
|
||||
} else {
|
||||
this.submitted = true;
|
||||
}
|
||||
});
|
||||
|
||||
$('label input[type=text]').click(function(e) {
|
||||
var check = $('#' + $(this).parents('label').attr('for'));
|
||||
check.prop('checked', true);
|
||||
return false;
|
||||
});
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
<script src="/static/js/timepicker.js?v=14.10.10"></script>
|
||||
<script src="/static/js/tokeninput.js?v=14.10.10"></script>
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
// 日期时间控件
|
||||
$('#date').mask('9999-99-99 99:99').datetimepicker({
|
||||
currentText: '现在',
|
||||
prevText: '上一月',
|
||||
nextText: '下一月',
|
||||
monthNames: ['一月', '二月', '三月', '四月',
|
||||
'五月', '六月', '七月', '八月',
|
||||
'九月', '十月', '十一月', '十二月'
|
||||
],
|
||||
dayNames: ['星期日', '星期一', '星期二',
|
||||
'星期三', '星期四', '星期五', '星期六'
|
||||
],
|
||||
dayNamesShort: ['周日', '周一', '周二', '周三',
|
||||
'周四', '周五', '周六'
|
||||
],
|
||||
dayNamesMin: ['日', '一', '二', '三',
|
||||
'四', '五', '六'
|
||||
],
|
||||
closeText: '完成',
|
||||
timeOnlyTitle: '选择时间',
|
||||
timeText: '时间',
|
||||
hourText: '时',
|
||||
amNames: ['上午', 'A'],
|
||||
pmNames: ['下午', 'P'],
|
||||
minuteText: '分',
|
||||
secondText: '秒',
|
||||
|
||||
dateFormat: 'yy-mm-dd',
|
||||
hour: (new Date()).getHours(),
|
||||
minute: (new Date()).getMinutes()
|
||||
});
|
||||
|
||||
// 聚焦
|
||||
$('#title').select();
|
||||
|
||||
// text 自动拉伸
|
||||
Typecho.editorResize('text', 'http://localhost/index.php/action/ajax?do=editorResize&_=53e23a1bd0daab03b05d9c23190904a4');
|
||||
|
||||
// tag autocomplete 提示
|
||||
var tags = $('#tags'),
|
||||
tagsPre = [];
|
||||
|
||||
if (tags.length > 0) {
|
||||
var items = tags.val().split(','),
|
||||
result = [];
|
||||
for (var i = 0; i < items.length; i++) {
|
||||
var tag = items[i];
|
||||
|
||||
if (!tag) {
|
||||
continue;
|
||||
}
|
||||
|
||||
tagsPre.push({
|
||||
id: tag,
|
||||
tags: tag
|
||||
});
|
||||
}
|
||||
|
||||
tags.tokenInput([{
|
||||
"id": "sadfasdf",
|
||||
"tags": "sadfasdf"
|
||||
}, {
|
||||
"id": "sdfsdfasd",
|
||||
"tags": "sdfsdfasd"
|
||||
}, {
|
||||
"id": "sdfsdfasdf",
|
||||
"tags": "sdfsdfasdf"
|
||||
}, {
|
||||
"id": "asdfasd",
|
||||
"tags": "asdfasd"
|
||||
}], {
|
||||
propertyToSearch: 'tags',
|
||||
tokenValue: 'tags',
|
||||
searchDelay: 0,
|
||||
preventDuplicates: true,
|
||||
animateDropdown: false,
|
||||
hintText: '请输入标签名',
|
||||
noResultsText: '此标签不存在, 按回车创建',
|
||||
prePopulate: tagsPre,
|
||||
|
||||
onResult: function(result, query) {
|
||||
if (!query) {
|
||||
return result;
|
||||
}
|
||||
|
||||
if (!result) {
|
||||
result = [];
|
||||
}
|
||||
|
||||
if (!result[0] || result[0]['id'] != query) {
|
||||
result.unshift({
|
||||
id: query,
|
||||
tags: query
|
||||
});
|
||||
}
|
||||
|
||||
return result.slice(0, 5);
|
||||
}
|
||||
});
|
||||
|
||||
// tag autocomplete 提示宽度设置
|
||||
$('#token-input-tags').focus(function() {
|
||||
var t = $('.token-input-dropdown'),
|
||||
offset = t.outerWidth() - t.width();
|
||||
t.width($('.token-input-list').outerWidth() - offset);
|
||||
});
|
||||
}
|
||||
|
||||
// 缩略名自适应宽度
|
||||
var slug = $('#slug');
|
||||
|
||||
if (slug.length > 0) {
|
||||
var wrap = $('<div />').css({
|
||||
'position': 'relative',
|
||||
'display': 'inline-block'
|
||||
}),
|
||||
justifySlug = $('<pre />').css({
|
||||
'display': 'block',
|
||||
'visibility': 'hidden',
|
||||
'height': slug.height(),
|
||||
'padding': '0 2px',
|
||||
'margin': 0
|
||||
}).insertAfter(slug.wrap(wrap).css({
|
||||
'left': 0,
|
||||
'top': 0,
|
||||
'minWidth': '5px',
|
||||
'position': 'absolute',
|
||||
'width': '100%'
|
||||
})),
|
||||
originalWidth = slug.width();
|
||||
|
||||
function justifySlugWidth() {
|
||||
var val = slug.val();
|
||||
justifySlug.text(val.length > 0 ? val : ' ');
|
||||
}
|
||||
|
||||
slug.bind('input propertychange', justifySlugWidth);
|
||||
justifySlugWidth();
|
||||
}
|
||||
|
||||
// 原始的插入图片和文件
|
||||
Typecho.insertFileToEditor = function(file, url, isImage) {
|
||||
var textarea = $('#text'),
|
||||
sel = textarea.getSelection(),
|
||||
html = isImage ? '<img src="' + url + '" alt="' + file + '" />' : '<a href="' + url + '">' + file + '</a>',
|
||||
offset = (sel ? sel.start : 0) + html.length;
|
||||
|
||||
textarea.replaceSelection(html);
|
||||
textarea.setSelection(offset, offset);
|
||||
};
|
||||
|
||||
var submitted = false,
|
||||
form = $('form[name=write_post],form[name=write_page]').submit(function() {
|
||||
submitted = true;
|
||||
}),
|
||||
savedData = null;
|
||||
|
||||
// 自动保存
|
||||
var locked = false,
|
||||
formAction = form.attr('action'),
|
||||
idInput = $('input[name=cid]'),
|
||||
cid = idInput.val(),
|
||||
autoSave = $('<span id="auto-save-message" class="left"></span>').prependTo('.submit'),
|
||||
autoSaveOnce = !!cid,
|
||||
lastSaveTime = null;
|
||||
|
||||
function autoSaveListener() {
|
||||
setInterval(function() {
|
||||
idInput.val(cid);
|
||||
var data = form.serialize();
|
||||
|
||||
if (savedData != data && !locked) {
|
||||
locked = true;
|
||||
|
||||
autoSave.text('正在保存');
|
||||
$.post(formAction, data + '&do=save', function(o) {
|
||||
savedData = data;
|
||||
lastSaveTime = o.time;
|
||||
cid = o.cid;
|
||||
autoSave.text('已保存' + ' (' + o.time + ')').effect('highlight', 1000);
|
||||
locked = false;
|
||||
}, 'json');
|
||||
}
|
||||
}, 10000);
|
||||
}
|
||||
|
||||
if (autoSaveOnce) {
|
||||
savedData = form.serialize();
|
||||
autoSaveListener();
|
||||
}
|
||||
|
||||
$('#text').bind('input propertychange', function() {
|
||||
if (!locked) {
|
||||
autoSave.text('尚未保存' + (lastSaveTime ? ' (上次保存时间: ' + lastSaveTime + ')' : ''));
|
||||
}
|
||||
|
||||
if (!autoSaveOnce) {
|
||||
autoSaveOnce = true;
|
||||
autoSaveListener();
|
||||
}
|
||||
});
|
||||
|
||||
// 自动检测离开页
|
||||
var lastData = form.serialize();
|
||||
|
||||
$(window).bind('beforeunload', function() {
|
||||
if (!!savedData) {
|
||||
lastData = savedData;
|
||||
}
|
||||
|
||||
if (form.serialize() != lastData && !submitted) {
|
||||
return '内容已经改变尚未保存, 您确认要离开此页面吗?';
|
||||
}
|
||||
});
|
||||
|
||||
// 控制选项和附件的切换
|
||||
var fileUploadInit = false;
|
||||
$('#edit-secondary .typecho-option-tabs li').click(function() {
|
||||
$('#edit-secondary .typecho-option-tabs li').removeClass('active');
|
||||
$(this).addClass('active');
|
||||
$('.tab-content').addClass('hidden');
|
||||
|
||||
var selected_tab = $(this).find('a').attr('href'),
|
||||
selected_el = $(selected_tab).removeClass('hidden');
|
||||
|
||||
if (!fileUploadInit) {
|
||||
selected_el.trigger('init');
|
||||
fileUploadInit = true;
|
||||
}
|
||||
|
||||
return false;
|
||||
});
|
||||
|
||||
// 高级选项控制
|
||||
$('#advance-panel-btn').click(function() {
|
||||
$('#advance-panel').toggle();
|
||||
return false;
|
||||
});
|
||||
|
||||
// 自动隐藏密码框
|
||||
$('#visibility').change(function() {
|
||||
var val = $(this).val(),
|
||||
password = $('#post-password');
|
||||
console.log(val);
|
||||
|
||||
if ('password' == val) {
|
||||
password.removeClass('hidden');
|
||||
} else {
|
||||
password.addClass('hidden');
|
||||
}
|
||||
});
|
||||
|
||||
// 草稿删除确认
|
||||
$('.edit-draft-notice a').click(function() {
|
||||
if (confirm('您确认要删除这份草稿吗?')) {
|
||||
window.location.href = $(this).attr('href');
|
||||
}
|
||||
|
||||
return false;
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<script src="/static/js/pagedown.js?v=14.10.10"></script>
|
||||
<script src="/static/js/stmd.js?v=14.10.10"></script>
|
||||
<script src="/static/js/diff.js?v=14.10.10"></script>
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
var textarea = $('#text'),
|
||||
toolbar = $('<div class="editor" id="wmd-button-bar" />').insertBefore(textarea.parent()),
|
||||
preview = $('<div id="wmd-preview" class="wmd-hidetab" />').insertAfter('.editor');
|
||||
|
||||
var options = {},
|
||||
isMarkdown = 1;
|
||||
|
||||
options.strings = {
|
||||
bold: '加粗 <strong> Ctrl+B',
|
||||
boldexample: '加粗文字',
|
||||
|
||||
italic: '斜体 <em> Ctrl+I',
|
||||
italicexample: '斜体文字',
|
||||
|
||||
link: '链接 <a> Ctrl+L',
|
||||
linkdescription: '请输入链接描述',
|
||||
|
||||
quote: '引用 <blockquote> Ctrl+Q',
|
||||
quoteexample: '引用文字',
|
||||
|
||||
code: '代码 <pre><code> Ctrl+K',
|
||||
codeexample: '请输入代码',
|
||||
|
||||
image: '图片 <img> Ctrl+G',
|
||||
imagedescription: '请输入图片描述',
|
||||
|
||||
olist: '数字列表 <ol> Ctrl+O',
|
||||
ulist: '普通列表 <ul> Ctrl+U',
|
||||
litem: '列表项目',
|
||||
|
||||
heading: '标题 <h1>/<h2> Ctrl+H',
|
||||
headingexample: '标题文字',
|
||||
|
||||
hr: '分割线 <hr> Ctrl+R',
|
||||
more: '摘要分割线 <!--more--> Ctrl+M',
|
||||
|
||||
undo: '撤销 - Ctrl+Z',
|
||||
redo: '重做 - Ctrl+Y',
|
||||
redomac: '重做 - Ctrl+Shift+Z',
|
||||
|
||||
fullscreen: '全屏 - Ctrl+J',
|
||||
exitFullscreen: '退出全屏 - Ctrl+E',
|
||||
fullscreenUnsupport: '此浏览器不支持全屏操作',
|
||||
|
||||
imagedialog: '<p><b>插入图片</b></p><p>请在下方的输入框内输入要插入的远程图片地址</p><p>您也可以使用附件功能插入上传的本地图片</p>',
|
||||
linkdialog: '<p><b>插入链接</b></p><p>请在下方的输入框内输入要插入的链接地址</p>',
|
||||
|
||||
ok: '确定',
|
||||
cancel: '取消',
|
||||
|
||||
help: 'Markdown语法帮助'
|
||||
};
|
||||
|
||||
var converter = new Typecho.Markdown,
|
||||
editor = new Markdown.Editor(converter, '', options),
|
||||
diffMatch = new diff_match_patch(),
|
||||
last = '',
|
||||
preview = $('#wmd-preview'),
|
||||
mark = '@mark' + Math.ceil(Math.random() * 100000000) + '@',
|
||||
span = '<span class="diff" />',
|
||||
cache = {};
|
||||
|
||||
|
||||
// 自动跟随
|
||||
converter.hooks.chain('postConversion', function(html) {
|
||||
// clear special html tags
|
||||
html = html.replace(/<\/?(\!doctype|html|head|body|link|title|input|select|button|textarea|style|noscript)[^>]*>/ig, function(all) {
|
||||
return all.replace(/&/g, '&')
|
||||
.replace(/</g, '<')
|
||||
.replace(/>/g, '>')
|
||||
.replace(/'/g, ''')
|
||||
.replace(/"/g, '"');
|
||||
});
|
||||
|
||||
// clear hard breaks
|
||||
html = html.replace(/\s*((?:<br>\n)+)\s*(<\/?(?:p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|address|form|fieldset|iframe|hr|legend|article|section|nav|aside|hgroup|header|footer|figcaption|li|dd|dt)[^\w])/gm, '$2');
|
||||
|
||||
if (html.indexOf('<!--more-->') > 0) {
|
||||
var parts = html.split(/\s*<\!\-\-more\-\->\s*/),
|
||||
summary = parts.shift(),
|
||||
details = parts.join('');
|
||||
|
||||
html = '<div class="summary">' + summary + '</div>' + '<div class="details">' + details + '</div>';
|
||||
}
|
||||
|
||||
|
||||
var diffs = diffMatch.diff_main(last, html);
|
||||
last = html;
|
||||
|
||||
if (diffs.length > 0) {
|
||||
var stack = [],
|
||||
markStr = mark;
|
||||
|
||||
for (var i = 0; i < diffs.length; i++) {
|
||||
var diff = diffs[i],
|
||||
op = diff[0],
|
||||
str = diff[1]
|
||||
sp = str.lastIndexOf('<'), ep = str.lastIndexOf('>');
|
||||
|
||||
if (op != 0) {
|
||||
if (sp >= 0 && sp > ep) {
|
||||
if (op > 0) {
|
||||
stack.push(str.substring(0, sp) + markStr + str.substring(sp));
|
||||
} else {
|
||||
var lastStr = stack[stack.length - 1],
|
||||
lastSp = lastStr.lastIndexOf('<');
|
||||
stack[stack.length - 1] = lastStr.substring(0, lastSp) + markStr + lastStr.substring(lastSp);
|
||||
}
|
||||
} else {
|
||||
if (op > 0) {
|
||||
stack.push(str + markStr);
|
||||
} else {
|
||||
stack.push(markStr);
|
||||
}
|
||||
}
|
||||
|
||||
markStr = '';
|
||||
} else {
|
||||
stack.push(str);
|
||||
}
|
||||
}
|
||||
|
||||
html = stack.join('');
|
||||
|
||||
if (!markStr) {
|
||||
var pos = html.indexOf(mark),
|
||||
prev = html.substring(0, pos),
|
||||
next = html.substr(pos + mark.length),
|
||||
sp = prev.lastIndexOf('<'),
|
||||
ep = prev.lastIndexOf('>');
|
||||
|
||||
if (sp >= 0 && sp > ep) {
|
||||
html = prev.substring(0, sp) + span + prev.substring(sp) + next;
|
||||
} else {
|
||||
html = prev + span + next;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 替换img
|
||||
html = html.replace(/<(img)\s+([^>]*)\s*src="([^"]+)"([^>]*)>/ig, function(all, tag, prefix, src, suffix) {
|
||||
if (!cache[src]) {
|
||||
cache[src] = false;
|
||||
} else {
|
||||
return '<span class="cache" data-width="' + cache[src][0] + '" data-height="' + cache[src][1] + '" ' + 'style="background:url(' + src + ') no-repeat left top; width:' + cache[src][0] + 'px; height:' + cache[src][1] + 'px; display: inline-block; max-width: 100%;' + '-webkit-background-size: contain;-moz-background-size: contain;-o-background-size: contain;background-size: contain;" />';
|
||||
}
|
||||
|
||||
return all;
|
||||
});
|
||||
|
||||
// 替换block
|
||||
html = html.replace(/<(iframe|embed)\s+([^>]*)>/ig, function(all, tag, src) {
|
||||
if (src[src.length - 1] == '/') {
|
||||
src = src.substring(0, src.length - 1);
|
||||
}
|
||||
|
||||
return '<div style="background: #ddd; height: 40px; overflow: hidden; line-height: 40px; text-align: center; font-size: 12px; color: #777">' + tag + ' : ' + $.trim(src) + '</div>';
|
||||
});
|
||||
|
||||
return html;
|
||||
});
|
||||
|
||||
function cacheResize() {
|
||||
var t = $(this),
|
||||
w = parseInt(t.data('width')),
|
||||
h = parseInt(t.data('height')),
|
||||
ow = t.width();
|
||||
|
||||
t.height(h * ow / w);
|
||||
}
|
||||
|
||||
var to;
|
||||
editor.hooks.chain('onPreviewRefresh', function() {
|
||||
var diff = $('.diff', preview),
|
||||
scrolled = false;
|
||||
|
||||
if (to) {
|
||||
clearTimeout(to);
|
||||
}
|
||||
|
||||
$('img', preview).load(function() {
|
||||
var t = $(this),
|
||||
src = t.attr('src');
|
||||
|
||||
if (scrolled) {
|
||||
preview.scrollTo(diff, {
|
||||
offset: -50
|
||||
});
|
||||
}
|
||||
|
||||
if (!!src && !cache[src]) {
|
||||
cache[src] = [this.width, this.height];
|
||||
}
|
||||
});
|
||||
|
||||
$('.cache', preview).resize(cacheResize).each(cacheResize);
|
||||
|
||||
var changed = $('.diff', preview).parent();
|
||||
if (!changed.is(preview)) {
|
||||
changed.css('background-color', 'rgba(255,230,0,0.5)');
|
||||
to = setTimeout(function() {
|
||||
changed.css('background-color', 'transparent');
|
||||
}, 4500);
|
||||
}
|
||||
|
||||
if (diff.length > 0) {
|
||||
var p = diff.position(),
|
||||
lh = diff.parent().css('line-height');
|
||||
lh = !!lh ? parseInt(lh) : 0;
|
||||
|
||||
if (p.top < 0 || p.top > preview.height() - lh) {
|
||||
preview.scrollTo(diff, {
|
||||
offset: -50
|
||||
});
|
||||
scrolled = true;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
var input = $('#text'),
|
||||
th = textarea.height(),
|
||||
ph = preview.height(),
|
||||
uploadBtn = $('<button type="button" id="btn-fullscreen-upload" class="btn btn-link">' + '<i class="i-upload">附件</i></button>')
|
||||
.prependTo('.submit .right')
|
||||
.click(function() {
|
||||
$('a', $('.typecho-option-tabs li').not('.active')).trigger('click');
|
||||
return false;
|
||||
});
|
||||
|
||||
$('.typecho-option-tabs li').click(function() {
|
||||
uploadBtn.find('i').toggleClass('i-upload-active',
|
||||
$('#tab-files-btn', this).length > 0);
|
||||
});
|
||||
|
||||
editor.hooks.chain('enterFakeFullScreen', function() {
|
||||
th = textarea.height();
|
||||
ph = preview.height();
|
||||
$(document.body).addClass('fullscreen');
|
||||
var h = $(window).height() - toolbar.outerHeight();
|
||||
|
||||
textarea.css('height', h);
|
||||
preview.css('height', h);
|
||||
});
|
||||
|
||||
editor.hooks.chain('enterFullScreen', function() {
|
||||
$(document.body).addClass('fullscreen');
|
||||
|
||||
var h = window.screen.height - toolbar.outerHeight();
|
||||
textarea.css('height', h);
|
||||
preview.css('height', h);
|
||||
});
|
||||
|
||||
editor.hooks.chain('exitFullScreen', function() {
|
||||
$(document.body).removeClass('fullscreen');
|
||||
textarea.height(th);
|
||||
preview.height(ph);
|
||||
});
|
||||
|
||||
function initMarkdown() {
|
||||
editor.run();
|
||||
|
||||
var imageButton = $('#wmd-image-button'),
|
||||
linkButton = $('#wmd-link-button');
|
||||
|
||||
Typecho.insertFileToEditor = function(file, url, isImage) {
|
||||
var button = isImage ? imageButton : linkButton;
|
||||
|
||||
options.strings[isImage ? 'imagename' : 'linkname'] = file;
|
||||
button.trigger('click');
|
||||
|
||||
var checkDialog = setInterval(function() {
|
||||
if ($('.wmd-prompt-dialog').length > 0) {
|
||||
$('.wmd-prompt-dialog input').val(url).select();
|
||||
clearInterval(checkDialog);
|
||||
checkDialog = null;
|
||||
}
|
||||
}, 10);
|
||||
};
|
||||
|
||||
Typecho.uploadComplete = function(file) {
|
||||
Typecho.insertFileToEditor(file.title, file.url, file.isImage);
|
||||
};
|
||||
|
||||
// 编辑预览切换
|
||||
var edittab = $('.editor').prepend('<div class="wmd-edittab"><a href="#wmd-editarea" class="active">撰写</a><a href="#wmd-preview">预览</a></div>'),
|
||||
editarea = $(textarea.parent()).attr("id", "wmd-editarea");
|
||||
|
||||
$(".wmd-edittab a").click(function() {
|
||||
$(".wmd-edittab a").removeClass('active');
|
||||
$(this).addClass("active");
|
||||
$("#wmd-editarea, #wmd-preview").addClass("wmd-hidetab");
|
||||
|
||||
var selected_tab = $(this).attr("href"),
|
||||
selected_el = $(selected_tab).removeClass("wmd-hidetab");
|
||||
|
||||
// 预览时隐藏编辑器按钮
|
||||
if (selected_tab == "#wmd-preview") {
|
||||
$("#wmd-button-row").addClass("wmd-visualhide");
|
||||
} else {
|
||||
$("#wmd-button-row").removeClass("wmd-visualhide");
|
||||
}
|
||||
|
||||
// 预览和编辑窗口高度一致
|
||||
$("#wmd-preview").outerHeight($("#wmd-editarea").innerHeight());
|
||||
|
||||
return false;
|
||||
});
|
||||
}
|
||||
|
||||
if (isMarkdown) {
|
||||
initMarkdown();
|
||||
} else {
|
||||
var notice = $('<div class="message notice">这篇文章不是由Markdown语法创建的, 继续使用Markdown编辑它吗? ' + '<button class="btn btn-xs primary yes">是</button> ' + '<button class="btn btn-xs no">否</button></div>')
|
||||
.hide().insertBefore(textarea).slideDown();
|
||||
|
||||
$('.yes', notice).click(function() {
|
||||
notice.remove();
|
||||
$('<input type="hidden" name="markdown" value="1" />').appendTo('.submit');
|
||||
initMarkdown();
|
||||
});
|
||||
|
||||
$('.no', notice).click(function() {
|
||||
notice.remove();
|
||||
});
|
||||
}
|
||||
});
|
||||
</script>
|
||||
<script src="/static/js/moxie.js?v=14.10.10"></script>
|
||||
<script src="/static/js/plupload.js?v=14.10.10"></script>
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
function updateAttacmentNumber() {
|
||||
var btn = $('#tab-files-btn'),
|
||||
balloon = $('.balloon', btn),
|
||||
count = $('#file-list li .insert').length;
|
||||
|
||||
if (count > 0) {
|
||||
if (!balloon.length) {
|
||||
btn.html($.trim(btn.html()) + ' ');
|
||||
balloon = $('<span class="balloon"></span>').appendTo(btn);
|
||||
}
|
||||
|
||||
balloon.html(count);
|
||||
} else if (0 == count && balloon.length > 0) {
|
||||
balloon.remove();
|
||||
}
|
||||
}
|
||||
|
||||
$('.upload-area').bind({
|
||||
dragenter: function() {
|
||||
$(this).parent().addClass('drag');
|
||||
},
|
||||
|
||||
dragover: function(e) {
|
||||
$(this).parent().addClass('drag');
|
||||
},
|
||||
|
||||
drop: function() {
|
||||
$(this).parent().removeClass('drag');
|
||||
},
|
||||
|
||||
dragend: function() {
|
||||
$(this).parent().removeClass('drag');
|
||||
},
|
||||
|
||||
dragleave: function() {
|
||||
$(this).parent().removeClass('drag');
|
||||
}
|
||||
});
|
||||
|
||||
updateAttacmentNumber();
|
||||
|
||||
function fileUploadStart(file) {
|
||||
$('<li id="' + file.id + '" class="loading">' + file.name + '</li>').appendTo('#file-list');
|
||||
}
|
||||
|
||||
function fileUploadError(error) {
|
||||
var file = error.file,
|
||||
code = error.code,
|
||||
word;
|
||||
|
||||
switch (code) {
|
||||
case plupload.FILE_SIZE_ERROR:
|
||||
word = '文件大小超过限制';
|
||||
break;
|
||||
case plupload.FILE_EXTENSION_ERROR:
|
||||
word = '文件扩展名不被支持';
|
||||
break;
|
||||
case plupload.FILE_DUPLICATE_ERROR:
|
||||
word = '文件已经上传过';
|
||||
break;
|
||||
case plupload.HTTP_ERROR:
|
||||
default:
|
||||
word = '上传出现错误';
|
||||
break;
|
||||
}
|
||||
|
||||
var fileError = '%s 上传失败'.replace('%s', file.name),
|
||||
li, exist = $('#' + file.id);
|
||||
|
||||
if (exist.length > 0) {
|
||||
li = exist.removeClass('loading').html(fileError);
|
||||
} else {
|
||||
li = $('<li>' + fileError + '<br />' + word + '</li>').appendTo('#file-list');
|
||||
}
|
||||
|
||||
li.effect('highlight', {
|
||||
color: '#FBC2C4'
|
||||
}, 2000, function() {
|
||||
$(this).remove();
|
||||
});
|
||||
}
|
||||
|
||||
var completeFile = null;
|
||||
|
||||
function fileUploadComplete(id, url, data) {
|
||||
var li = $('#' + id).removeClass('loading').data('cid', data.cid)
|
||||
.data('url', data.url)
|
||||
.data('image', data.isImage)
|
||||
.html('<input type="hidden" name="attachment[]" value="' + data.cid + '" />' + '<a class="insert" target="_blank" href="###" title="点击插入文件">' + data.title + '</a><div class="info">' + data.bytes + ' <a class="file" target="_blank" href="http://localhost/admin/media.php?cid=' + data.cid + '" title="编辑"><i class="i-edit"></i></a>' + ' <a class="delete" href="###" title="删除"><i class="i-delete"></i></a></div>')
|
||||
.effect('highlight', 1000);
|
||||
|
||||
attachInsertEvent(li);
|
||||
attachDeleteEvent(li);
|
||||
updateAttacmentNumber();
|
||||
|
||||
if (!completeFile) {
|
||||
completeFile = data;
|
||||
}
|
||||
}
|
||||
|
||||
$('#tab-files').bind('init', function() {
|
||||
var uploader = new plupload.Uploader({
|
||||
browse_button: $('.upload-file').get(0),
|
||||
url: 'http://localhost/index.php/action/upload?_=53e23a1bd0daab03b05d9c23190904a4',
|
||||
runtimes: 'html5,flash,html4',
|
||||
flash_swf_url: 'http://localhost/admin/js/Moxie.swf',
|
||||
drop_element: $('.upload-area').get(0),
|
||||
filters: {
|
||||
max_file_size: '2mb',
|
||||
mime_types: [{
|
||||
'title': '允许上传的文件',
|
||||
'extensions': 'gif,jpg,jpeg,png,tiff,bmp'
|
||||
}],
|
||||
prevent_duplicates: true
|
||||
},
|
||||
|
||||
init: {
|
||||
FilesAdded: function(up, files) {
|
||||
plupload.each(files, function(file) {
|
||||
fileUploadStart(file);
|
||||
});
|
||||
|
||||
completeFile = null;
|
||||
uploader.start();
|
||||
},
|
||||
|
||||
UploadComplete: function() {
|
||||
if (completeFile) {
|
||||
Typecho.uploadComplete(completeFile);
|
||||
}
|
||||
},
|
||||
|
||||
FileUploaded: function(up, file, result) {
|
||||
if (200 == result.status) {
|
||||
var data = $.parseJSON(result.response);
|
||||
|
||||
if (data) {
|
||||
fileUploadComplete(file.id, data[0], data[1]);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
fileUploadError({
|
||||
code: plupload.HTTP_ERROR,
|
||||
file: file
|
||||
});
|
||||
},
|
||||
|
||||
Error: function(up, error) {
|
||||
fileUploadError(error);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
uploader.init();
|
||||
});
|
||||
|
||||
function attachInsertEvent(el) {
|
||||
$('.insert', el).click(function() {
|
||||
var t = $(this),
|
||||
p = t.parents('li');
|
||||
Typecho.insertFileToEditor(t.text(), p.data('url'), p.data('image'));
|
||||
return false;
|
||||
});
|
||||
}
|
||||
|
||||
function attachDeleteEvent(el) {
|
||||
var file = $('a.insert', el).text();
|
||||
$('.delete', el).click(function() {
|
||||
if (confirm('确认要删除文件 %s 吗?'.replace('%s', file))) {
|
||||
var cid = $(this).parents('li').data('cid');
|
||||
$.post('http://localhost/index.php/action/contents-attachment-edit?_=53e23a1bd0daab03b05d9c23190904a4', {
|
||||
'do': 'delete',
|
||||
'cid': cid
|
||||
},
|
||||
function() {
|
||||
$(el).fadeOut(function() {
|
||||
$(this).remove();
|
||||
updateAttacmentNumber();
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
return false;
|
||||
});
|
||||
}
|
||||
|
||||
$('#file-list li').each(function() {
|
||||
attachInsertEvent(this);
|
||||
attachDeleteEvent(this);
|
||||
});
|
||||
});
|
||||
</script>
|
||||
{{end}}
|
||||
@@ -0,0 +1,125 @@
|
||||
{{define "admin-posts"}}
|
||||
<div class="body container">
|
||||
<div class="typecho-page-title">
|
||||
<h2>管理文章<a href="/admin/write-post">新增</a></h2>
|
||||
</div>
|
||||
<div class="row typecho-page-main" role="main">
|
||||
<div class="col-mb-12 typecho-list">
|
||||
<div class="typecho-list-operate clearfix">
|
||||
<form method="get">
|
||||
<div class="operate">
|
||||
<label><i class="sr-only">全选</i>
|
||||
<input type="checkbox" class="typecho-table-select-all" />
|
||||
</label>
|
||||
<div class="btn-group btn-drop">
|
||||
<button class="btn dropdown-toggle btn-s" type="button"><i class="sr-only">操作</i>选中项 <i class="i-caret-down"></i></button>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a lang="你确认要删除这些文章吗?" href="/admin/api/post-delete">删除</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="search" role="search">
|
||||
{{if or .KW (gt .Serie 0)}}<a href="/admin/manage-posts">« 取消筛选</a>{{end}}
|
||||
<input type="text" class="text-s" placeholder="请输入关键字" value="{{if .KW}}{{.KW}}{{end}}" name="keywords" />
|
||||
<select name="serie">
|
||||
<option value="">所有专题</option>
|
||||
{{range .Series}}
|
||||
<option {{if eq $.Serie .ID}}selected{{end}} value="{{.ID}}">{{.Name}}
|
||||
{{end}}
|
||||
</select>
|
||||
<button type="submit" class="btn btn-s">筛选</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<!-- end .typecho-list-operate -->
|
||||
<form method="post" name="manage_posts" class="operate-form">
|
||||
<div class="typecho-table-wrap">
|
||||
<table class="typecho-list-table">
|
||||
<colgroup>
|
||||
<col width="20" />
|
||||
<col width="6%" />
|
||||
<col width="40%" />
|
||||
<col width="" />
|
||||
<col width="12%" />
|
||||
<col width="14%" />
|
||||
<col width="14%" />
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th> </th>
|
||||
<th> </th>
|
||||
<th>标题</th>
|
||||
<th>作者</th>
|
||||
<th>专题</th>
|
||||
<th>创建</th>
|
||||
<th>更新</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{range .List}}
|
||||
<tr id="post-{{.ID}}">
|
||||
<td>
|
||||
<input type="checkbox" value="{{.ID}}" name="cid[]" />
|
||||
</td>
|
||||
<td><a href="/admin/manage-comments?cid={{.ID}}" class="balloon-button size-1">{{.Count}}</a></td>
|
||||
<td>
|
||||
<a href="/admin/write-post?cid={{.ID}}">{{.Title}}</a>
|
||||
<a target="_black" href="/post/{{.Slug}}.html" title="浏览 {{.Title}}"><i class="i-exlink"></i></a>
|
||||
</td>
|
||||
<td>{{.Author}}</td>
|
||||
<td>{{if gt .SerieID 0}}专题ID:{{.SerieID}}{{else}}--{{end}}</td>
|
||||
<td>{{dateformat .CreateTime "06/01/02 15:04"}}</td>
|
||||
<td>{{dateformat .UpdateTime "06/01/02 15:04"}}</td>
|
||||
</tr>
|
||||
{{end}}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</form>
|
||||
<!-- end .operate-form -->
|
||||
<div class="typecho-list-operate clearfix">
|
||||
<form method="get">
|
||||
<div class="operate">
|
||||
<label><i class="sr-only">全选</i>
|
||||
<input type="checkbox" class="typecho-table-select-all" />
|
||||
</label>
|
||||
<div class="btn-group btn-drop">
|
||||
<button class="btn dropdown-toggle btn-s" type="button"><i class="sr-only">操作</i>选中项 <i class="i-caret-down"></i></button>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a lang="你确认要删除这些文章吗?" href="/admin/api/post-delete">删除</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<ul class="typecho-pager">
|
||||
{{if .Prev}}<li class="prev"><a href="/admin/manage-posts?{{html .Prev}}">«</a></li>{{end}}
|
||||
{{range $k,$v := .PP}}
|
||||
<li {{if eq $.Cur $k}}class="current"{{end}}><a href="/admin/manage-posts?{{html $v}}">{{$k}}</a></li>
|
||||
{{end}}
|
||||
{{if .Next}}<li class="next"><a href="/admin/manage-posts?{{html .Next}}">»</a></li>{{end}}
|
||||
</ul>
|
||||
</form>
|
||||
</div>
|
||||
<!-- end .typecho-list-operate -->
|
||||
</div>
|
||||
<!-- end .typecho-list -->
|
||||
</div>
|
||||
<!-- end .typecho-page-main -->
|
||||
</div>
|
||||
<script>
|
||||
(function() {
|
||||
$(document).ready(function() {
|
||||
$('.typecho-list-table').tableSelectable({
|
||||
checkEl: 'input[type=checkbox]',
|
||||
rowEl: 'tr',
|
||||
selectAllEl: '.typecho-table-select-all',
|
||||
actionEl: '.dropdown-menu a,button.btn-operate'
|
||||
});
|
||||
|
||||
$('.btn-drop').dropdownMenu({
|
||||
btnEl: '.dropdown-toggle',
|
||||
menuEl: '.dropdown-menu'
|
||||
});
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
{{end}}
|
||||
@@ -0,0 +1,166 @@
|
||||
{{define "admin-profile"}}
|
||||
<div class="body container">
|
||||
<div class="typecho-page-title">
|
||||
<h2>个人设置</h2>
|
||||
</div>
|
||||
{{with .Account}}
|
||||
<div class="row typecho-page-main">
|
||||
<div class="col-mb-12 col-tb-3">
|
||||
<p>
|
||||
<img class="profile-avatar" src="//st.deepzz.com/static/img/deepzz.jpg" alt="{{.BlogName}}" />
|
||||
</p>
|
||||
<h2>{{.BlogName}}</h2>
|
||||
<p>{{.SubTitle}}</p>
|
||||
<p>最后登录: {{dateformat .LoginTime "2006/01/02 15:04"}}</p>
|
||||
</div>
|
||||
<div class="col-mb-12 col-tb-6 col-tb-offset-1 typecho-content-panel" role="form">
|
||||
<section>
|
||||
<h3>账号信息</h3>
|
||||
<form action="/admin/api/account" method="post" enctype="application/x-www-form-urlencoded">
|
||||
<ul class="typecho-option">
|
||||
<li>
|
||||
<label class="typecho-label" for="info-0-1">
|
||||
个人邮箱</label>
|
||||
<input id="info-0-1" name="email" type="text" class="text" value="{{.Email}}" />
|
||||
<p class="description">
|
||||
用于发送告警邮件及其它通知, 建议填写, 如: example#163.com.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option">
|
||||
<li>
|
||||
<label class="typecho-label" for="info-0-2">
|
||||
移动电话</label>
|
||||
<input id="info-0-2" name="phoneNumber" type="text" class="text" value="{{.PhoneN}}" />
|
||||
<p class="description">
|
||||
选择填写, 如: +8615123456789.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option">
|
||||
<li>
|
||||
<label class="typecho-label" for="info-0-3">
|
||||
家庭住址</label>
|
||||
<input id="info-0-3" name="address" type="text" class="text" value="{{.Address}}" />
|
||||
<p class="description">
|
||||
选择填写, 如: xx省xx市xx区(县)xxxx小区xxx号.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option typecho-option-submit">
|
||||
<li>
|
||||
<button type="submit" class="btn primary">
|
||||
更新账号信息</button>
|
||||
</li>
|
||||
</ul>
|
||||
</form>
|
||||
</section>
|
||||
<br>
|
||||
<section>
|
||||
<h3>博客信息</h3>
|
||||
<form action="/admin/api/blog" method="post" enctype="application/x-www-form-urlencoded">
|
||||
<ul class="typecho-option">
|
||||
<li>
|
||||
<label class="typecho-label" for="blog-0-1">
|
||||
博客昵称 *</label>
|
||||
<input id="blog-0-1" name="blogName" type="text" class="text" value="{{.BlogName}}" />
|
||||
<p class="description">
|
||||
用户昵称可以与用户名不同, 用于前台显示.
|
||||
<br />如果你将此项留空, 将默认使用登录用户名.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option">
|
||||
<li>
|
||||
<label class="typecho-label" for="blog-0-4">
|
||||
标题显示 *</label>
|
||||
<input id="blog-0-4" name="bTitle" type="text" class="text" value="{{.BTitle}}" />
|
||||
<p class="description">
|
||||
用于所有页面的title组成, 如: Deepzz's Blog</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option">
|
||||
<li>
|
||||
<label class="typecho-label" for="blog-0-2">
|
||||
个人格言</label>
|
||||
<input id="blog-0-2" name="subTitle" type="text" class="text" value="{{.SubTitle}}" />
|
||||
<p class="description">
|
||||
简介或格言, 如: 生活百般滋味, 人生需要笑对.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option">
|
||||
<li>
|
||||
<label class="typecho-label" for="blog-0-3">
|
||||
备案号</label>
|
||||
<input id="blog-0-3" name="beiAn" type="text" class="text" value="{{.BeiAn}}" />
|
||||
<p class="description">
|
||||
用于底部显示, 不添加则不显示, 如: 蜀 ICP 备 16021362 号</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option">
|
||||
<li>
|
||||
<label class="typecho-label" for="blog-0-4">
|
||||
专题前说</label>
|
||||
<textarea id="blog-0-4" name="seriessay">{{.SeriesSay}}</textarea>
|
||||
<p class="description">
|
||||
此文字用于专题前述, 会在专题最前方显示.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option">
|
||||
<li>
|
||||
<label class="typecho-label" for="blog-0-5">
|
||||
归档前说</label>
|
||||
<textarea id="blog-0-5" name="archivessay">{{.ArchivesSay}}</textarea>
|
||||
<p class="description">
|
||||
此文字用于归档前述, 会在归档最前方显示.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option typecho-option-submit" id="typecho-option-item-submit-4">
|
||||
<li>
|
||||
<button type="submit" class="btn primary">
|
||||
更新博客信息</button>
|
||||
</li>
|
||||
</ul>
|
||||
</form>
|
||||
</section>
|
||||
<br>
|
||||
<section id="change-password">
|
||||
<h3>密码修改</h3>
|
||||
<form action="/admin/api/password" method="post" enctype="application/x-www-form-urlencoded">
|
||||
<ul class="typecho-option" id="typecho-option-item-password-10">
|
||||
<li>
|
||||
<label class="typecho-label" for="password-0-11">
|
||||
原始密码</label>
|
||||
<input id="password-0-11" name="old" type="password" class="w-60" />
|
||||
<p class="description">
|
||||
该账户旧密码.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-password-10">
|
||||
<li>
|
||||
<label class="typecho-label" for="password-0-11">
|
||||
用户密码</label>
|
||||
<input id="password-0-11" name="new" type="password" class="w-60" />
|
||||
<p class="description">
|
||||
为此用户分配一个密码.
|
||||
<br />建议使用特殊字符与字母、数字的混编样式,以增加系统安全性.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-confirm-11">
|
||||
<li>
|
||||
<label class="typecho-label" for="confirm-0-12">
|
||||
用户密码确认</label>
|
||||
<input id="confirm-0-12" name="confirm" type="password" class="w-60" />
|
||||
<p class="description">
|
||||
请确认你的密码, 与上面输入的密码保持一致.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option typecho-option-submit" id="typecho-option-item-submit-13">
|
||||
<li>
|
||||
<button type="submit" class="btn primary">
|
||||
更新密码</button>
|
||||
</li>
|
||||
</ul>
|
||||
</form>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
{{end}}
|
||||
</div>
|
||||
{{end}}
|
||||
@@ -0,0 +1,73 @@
|
||||
{{define "admin-serie"}}
|
||||
<div class="body container">
|
||||
<div class="typecho-page-title">
|
||||
{{if .Edit}}
|
||||
<h2>编辑 {{with .Edit}}{{.Name}}{{end}}</h2>
|
||||
{{else}}
|
||||
<h2>新增专题</h2>
|
||||
{{end}}
|
||||
</div>
|
||||
<div class="row typecho-page-main" role="form">
|
||||
<div class="col-mb-12 col-tb-6 col-tb-offset-3">
|
||||
<form action="/admin/api/serie-add" method="post" enctype="application/x-www-form-urlencoded">
|
||||
<ul class="typecho-option" id="typecho-option-item-name-0">
|
||||
<li>
|
||||
<label class="typecho-label" for="name-0-1">
|
||||
专题名称 *</label>
|
||||
<input id="name-0-1" name="name" type="text" class="text" {{with .Edit}}value="{{.Name}}"{{end}} />
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-slug-1">
|
||||
<li>
|
||||
<label class="typecho-label" for="slug-0-2">
|
||||
专题缩略名</label>
|
||||
<input id="slug-0-2" name="slug" type="text" class="text" {{with .Edit}}value="{{.Slug}}"{{end}} />
|
||||
<p class="description">
|
||||
专题缩略名用于创建友好的链接形式, 建议使用字母, 数字, 下划线和横杠.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option" id="typecho-option-item-description-3">
|
||||
<li>
|
||||
<label class="typecho-label" for="description-0-3">
|
||||
专题描述</label>
|
||||
<textarea id="description-0-3" name="description">{{with .Edit}}{{.Desc}}{{end}} </textarea>
|
||||
<p class="description">
|
||||
此文字用于描述专题, 在有的主题中它会被显示.</p>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="typecho-option typecho-option-submit" id="typecho-option-item--6">
|
||||
<li>
|
||||
<button type="submit" class="btn primary">
|
||||
增加专题</button>
|
||||
</li>
|
||||
</ul>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
(function () {
|
||||
$(document).ready(function () {
|
||||
var error = $('.typecho-option .error:first');
|
||||
|
||||
if (error.length > 0) {
|
||||
$('html,body').scrollTop(error.parents('.typecho-option').offset().top);
|
||||
}
|
||||
|
||||
$('form').submit(function () {
|
||||
if (this.submitted) {
|
||||
return false;
|
||||
} else {
|
||||
this.submitted = true;
|
||||
}
|
||||
});
|
||||
|
||||
$('label input[type=text]').click(function (e) {
|
||||
var check = $('#' + $(this).parents('label').attr('for'));
|
||||
check.prop('checked', true);
|
||||
return false;
|
||||
});
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
{{end}}
|
||||
@@ -0,0 +1,109 @@
|
||||
{{define "admin-series"}}
|
||||
<div class="body container">
|
||||
<div class="typecho-page-title">
|
||||
<h2>管理专题<a href="/admin/add-serie">新增</a></h2>
|
||||
</div>
|
||||
<div class="row typecho-page-main manage-metas">
|
||||
<div class="col-mb-12" role="main">
|
||||
<form method="post" name="manage_categories" class="operate-form">
|
||||
<div class="typecho-list-operate clearfix">
|
||||
<div class="operate">
|
||||
<label><i class="sr-only">全选</i>
|
||||
<input type="checkbox" class="typecho-table-select-all" />
|
||||
</label>
|
||||
<div class="btn-group btn-drop">
|
||||
<button class="btn dropdown-toggle btn-s" type="button"><i class="sr-only">操作</i>选中项 <i class="i-caret-down"></i></button>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a lang="此分类下的所有内容将被删除, 你确认要删除这些分类吗?" href="/admin/api/serie-delete">删除</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="search" role="search">
|
||||
</div>
|
||||
</div>
|
||||
<div class="typecho-table-wrap">
|
||||
<table class="typecho-list-table">
|
||||
<colgroup>
|
||||
<col width="20" />
|
||||
<col width="10%" />
|
||||
<col width="45%" />
|
||||
<col width="30%" />
|
||||
<col width="10%" />
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr class="nodrag">
|
||||
<th> </th>
|
||||
<th>ID</th>
|
||||
<th>名称</th>
|
||||
<th>创建</th>
|
||||
<th>文章数</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{range .List}}
|
||||
<tr id="mid-category-{{.ID}}">
|
||||
<td>
|
||||
<input type="checkbox" value="{{.ID}}" name="mid[]" />
|
||||
</td>
|
||||
<td><a href="/admin/add-serie?mid={{.ID}}">{{.ID}}</a>
|
||||
<a href="/series.html#toc-{{.ID}}" title="浏览 {{.Name}}"><i class="i-exlink"></i></a>
|
||||
</td>
|
||||
<td>{{.Name}}</td>
|
||||
<td>{{dateformat .CreateTime "2006/01/02 15:04"}}</td>
|
||||
<td><a class="balloon-button left size-50" href="#">{{len .Articles}}</a></td>
|
||||
</tr>
|
||||
{{end}}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
(function() {
|
||||
$(document).ready(function() {
|
||||
var table = $('.typecho-list-table').tableDnD({
|
||||
onDrop: function() {
|
||||
var ids = [];
|
||||
|
||||
$('input[type=checkbox]', table).each(function() {
|
||||
ids.push($(this).val());
|
||||
});
|
||||
|
||||
$.post('/admin/api/move',
|
||||
$.param({
|
||||
mid: ids
|
||||
}));
|
||||
|
||||
$('tr', table).each(function(i) {
|
||||
if (i % 2) {
|
||||
$(this).addClass('even');
|
||||
} else {
|
||||
$(this).removeClass('even');
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
table.tableSelectable({
|
||||
checkEl: 'input[type=checkbox]',
|
||||
rowEl: 'tr',
|
||||
selectAllEl: '.typecho-table-select-all',
|
||||
actionEl: '.dropdown-menu a'
|
||||
});
|
||||
|
||||
$('.btn-drop').dropdownMenu({
|
||||
btnEl: '.dropdown-toggle',
|
||||
menuEl: '.dropdown-menu'
|
||||
});
|
||||
|
||||
$('.dropdown-menu button.merge').click(function() {
|
||||
var btn = $(this);
|
||||
btn.parents('form').attr('action', btn.attr('rel')).submit();
|
||||
});
|
||||
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
{{end}}
|
||||
@@ -0,0 +1,58 @@
|
||||
{{define "admin-tags"}}
|
||||
<div class="body container">
|
||||
<div class="typecho-page-title">
|
||||
<h2>管理标签</h2>
|
||||
</div>
|
||||
<div class="row typecho-page-main manage-metas">
|
||||
<div class="col-mb-12 col-tb-8" role="main">
|
||||
<form method="post" name="manage_tags" class="operate-form">
|
||||
<div class="typecho-list-operate clearfix">
|
||||
<div class="operate">
|
||||
<label><i class="sr-only">全选</i>
|
||||
<input type="checkbox" class="typecho-table-select-all" />
|
||||
</label>
|
||||
<div class="btn-group btn-drop">
|
||||
<button class="btn dropdown-toggle btn-s" type="button"><i class="sr-only">操作</i>选中项 <i class="i-caret-down"></i></button>
|
||||
<!-- <ul class="dropdown-menu"> -->
|
||||
<!-- <li><a lang="你确认要删除这些标签吗?" href="/admin/api/tag-delete">删除</a></li> -->
|
||||
<!-- </ul> -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<ul class="typecho-list-notable tag-list clearfix">
|
||||
{{range $k,$v:=.List}}
|
||||
<li class="size-5"><input type="checkbox" name="mid[]" />{{$k}}<i class="i-edit"></i></li>
|
||||
{{end}}
|
||||
</ul>
|
||||
</form>
|
||||
</div>
|
||||
<div class="col-mb-12 col-tb-4" role="form">
|
||||
<p> 夏雷在天际回响<br> 纸船在水中荡漾<br> 时间就这么走了<br> 远离了三年的学堂<br> <br> 是否还记得前排的那个姑凉<br> 如今你又彷徨在谁的身旁<br> 那时我们都太迷茫<br> 沉醉在青春路上<br> <br> 嘴角扬起的微笑<br> 那是我们最美好的时光<br> 那个女孩的嘴角<br> 深深地印在我的胸膛<br> <br> 青春是多么昂扬<br> 奏响生命的乐章<br> 雨中漫步的时光<br> 在记忆流逝中远航<br> <br> 别了,我亲爱的课堂<br> 别了,我最好的同窗<br> 别了,敬爱三年的师长<br> 我多么希望,记忆停留归航<br> 2016/9.9殇星<br> </p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
(function () {
|
||||
$(document).ready(function () {
|
||||
|
||||
$('.typecho-list-notable').tableSelectable({
|
||||
checkEl : 'input[type=checkbox]',
|
||||
rowEl : 'li',
|
||||
selectAllEl : '.typecho-table-select-all',
|
||||
actionEl : '.dropdown-menu a'
|
||||
});
|
||||
|
||||
$('.btn-drop').dropdownMenu({
|
||||
btnEl : '.dropdown-toggle',
|
||||
menuEl : '.dropdown-menu'
|
||||
});
|
||||
|
||||
$('.dropdown-menu button.merge').click(function () {
|
||||
var btn = $(this);
|
||||
btn.parents('form').attr('action', btn.attr('rel')).submit();
|
||||
});
|
||||
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
{{end}}
|
||||
@@ -0,0 +1,82 @@
|
||||
{{define "admin-trash"}}
|
||||
<div class="body container">
|
||||
<div class="typecho-page-title">
|
||||
<h2>回收箱</h2>
|
||||
</div>
|
||||
<div class="row typecho-page-main manage-metas">
|
||||
<div class="col-mb-12" role="main">
|
||||
<form method="post" name="manage_trash" class="operate-form">
|
||||
<div class="typecho-list-operate clearfix">
|
||||
<div class="operate">
|
||||
<label><i class="sr-only">全选</i>
|
||||
<input type="checkbox" class="typecho-table-select-all" />
|
||||
</label>
|
||||
<div class="btn-group btn-drop">
|
||||
<button class="btn dropdown-toggle btn-s" type="button"><i class="sr-only">操作</i>选中项 <i class="i-caret-down"></i></button>
|
||||
<ul class="dropdown-menu">
|
||||
<li><a lang="你确认要恢复该文章到草稿箱吗?" href="/admin/api/trash-recover">恢复</a></li>
|
||||
<li><a lang="此回收箱下的所有内容将被删除, 你确认要删除这些文章吗?" href="/admin/api/trash-delete">删除</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="search" role="search">
|
||||
</div>
|
||||
</div>
|
||||
<div class="typecho-table-wrap">
|
||||
<table class="typecho-list-table">
|
||||
<colgroup>
|
||||
<col width="20" />
|
||||
<col width="40%" />
|
||||
<col width="" />
|
||||
<col width="12%" />
|
||||
<col width="14%" />
|
||||
<col width="14%" />
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th> </th>
|
||||
<th>标题</th>
|
||||
<th>作者</th>
|
||||
<th>专题</th>
|
||||
<th>创建</th>
|
||||
<th>删除</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{range .List}}
|
||||
<tr id="mid-article-{{.ID}}">
|
||||
<td>
|
||||
<input type="checkbox" value="{{.ID}}" name="mid[]" />
|
||||
</td>
|
||||
<td>{{.Title}}</td>
|
||||
<td>{{.Author}}</td>
|
||||
<td>{{if gt .SerieID 0}}专题ID:{{.SerieID}}{{else}}--{{end}}</td>
|
||||
<td>{{dateformat .CreateTime "2006/01/02 15:04"}}</td>
|
||||
<td>{{dateformat .DeleteTime "2006/01/02 15:04"}}</td>
|
||||
</tr>
|
||||
{{end}}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
(function() {
|
||||
$(document).ready(function() {
|
||||
$('.typecho-list-table').tableSelectable({
|
||||
checkEl: 'input[type=checkbox]',
|
||||
rowEl: 'tr',
|
||||
selectAllEl: '.typecho-table-select-all',
|
||||
actionEl: '.dropdown-menu a,button.btn-operate'
|
||||
});
|
||||
|
||||
$('.btn-drop').dropdownMenu({
|
||||
btnEl: '.dropdown-toggle',
|
||||
menuEl: '.dropdown-menu'
|
||||
});
|
||||
});
|
||||
})();
|
||||
</script>
|
||||
{{end}}
|
||||
@@ -0,0 +1 @@
|
||||
{{define "archives"}}<div id=content class=inner><article class="post post-archives"><h1 class=title>归档</h1><div class="entry-content">{{str2html .Article}}</div></article></div>{{end}}
|
||||
@@ -0,0 +1 @@
|
||||
{{define "article"}}<div id=content class=inner>{{with .Article}}<article class="post post-{{.ID}}" itemscope itemtype="http://schema.org/Article"><div class=meta><div class=date><time itemprop=datePublished content="{{dateformat .CreateTime " 2006-01-02 "}}">{{dateformat .CreateTime "Jan 02, 2006"}}</time></div><div class=comment><a href="#comments">{{.Count}} Comments</a></div></div><h1 class=title itemprop=headline>{{.Title}}</h1><div class="entry-content" itemprop=articleBody>{{str2html .Content}}<p>本文链接:<a rel="bookmark" title="Permalink to {{.Title}}" href="//{{$.Domain}}/post/{{.Slug}}.html" itemprop="url">https://{{$.Domain}}/post/{{.Slug}}.html</a>,<a href="//{{$.Domain}}/post/{{.Slug}}.html#comments">参与评论 »</a></p><p>--<acronym title="End of File">EOF</acronym>--</p><p class="post-info">发表于 <span class="date">{{dateformat .CreateTime "2006-01-02 15:04:05"}}</span>{{if gt (.Tags|len) 0}},并被添加「{{range $index, $elem := .Tags}}{{if gt $index 0}}、{{end}}<a href="/search.html?q=tag:{{$elem}}">{{$elem}}</a>{{end}}」标签{{end}}{{if .UpdateTime|isnotzero}},最后修改于 <span class="date">{{dateformat .UpdateTime "2006-01-02 15:04:05"}}</span>{{end}}。</p>{{with $.Copyright}}<p class="copyright-info">{{str2html $.Copyright}}<a href="//{{$.Domain}}/post/about.html#toc-1">更多说明 »</a></p>{{end}} {{with $.Serie}}{{if gt $.Days 100}}<p class="expire-tips">提醒:本文最后更新于 {{$.Days}} 天前,文中所描述的信息可能已发生改变,请谨慎使用。</p>{{end}}<div class="entry-series"><h3>专题「{{.Name}}」的其它文章 <a href="/series.html#toc-{{.ID}}" title="更多">»</a></h3><ul>{{range .Articles}}{{if ne .ID $.Article.ID}}<li><a href="/post/{{.Slug}}.html">{{.Title}}</a> <span class="date">({{dateformat .CreateTime "Jan 02, 2006"}})</span></li>{{end}}{{end}}</ul></div>{{end}}</div></article><nav class="page-navi">{{with .Prev}}<a href="/post/{{.Slug}}.html" class=prev>« {{.Title}}</a>{{end}}{{with .Next}}<a href="/post/{{.Slug}}.html" class=next>{{.Title}} »</a>{{end}}</nav><section id=comments><h1 class=title>Comments<span id=switch_thread_mode></h1><div id=disqus_thread class=ds-thread data-identifier="post-{{.Slug}}" data-url="{{if $.EnableHttps}}https://{{else}}http://{{end}}{{$.Domain}}/post/{{.Slug}}.html"></div><div id=simple_thread data-id="golomb-coded-sets"></div></section>{{end}}</div>{{end}}
|
||||
@@ -0,0 +1 @@
|
||||
{{define "blogroll"}}<div id=content class=inner>{{with .Article}}<article class="post post-{{.ID}}" itemscope itemtype="http://schema.org/Article"><h1 class=title itemprop=headline>{{.Title}}</h1><div class="entry-content" itemprop=articleBody><style>.links.ssl li{position:relative;text-indent:20px}.links.ssl li::before{content:'';display:block;position:absolute;top:6px;left:0;width:16px;height:16px;background-size:16px 16px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAD/0lEQVR4Ab2XA5hjOxTHO9batrdce8yrtW2b9dgq1jae1vbueOpn2zbzcoqP06luJ993epXk/0vOOUnK8abkq6Ttb1r2UY8+PJzx4L1DZY8/PrzrxYqySYqsXeEcf5Z+I9r3WlI0MjfzVoKx4Gnaj4XP0pDd/sl/kvq1/HJsxXSxcHP7Hs1bsS4+fSt3RXkt9ZVaz6DyehqpDTTSWI3503bF7+sopDEyqOBxqnks02Mia+IzxTyp1jwZlVSRVlHpS3F3qfWDV49I7TZmFNGdP4rqHj1LIhDn3Es2qfU0Kq0hAfLncVN7pvksTq0fNH+fxSZeVkN+kbSk/0xnddt1jYyanyGSaoz031BfpaO+5U7qyPVavAe3VdeSavIzq3gt+RUe0Qg3Z2wFnol/wSXSl+NuRzQPCfIKYGnOCDn4FHf2H71+8CJP2q7fN3Y/xIrWxKCYWX0SPBZv2SkyPOd+qlFVTyH5lfjaiGYhwZ607y1o07e0mvxBraPRhiMTD3qecsPbDsDB9CtE93ylUMLxouy+EHNLjdsrriXoIluGBrrdMDAoMHjslB7RkGoQ1ROm95wRGBQQFBwSGOqu4fqBC7OGlWuNDKwTH3Qf3KpLUHBgSKPCe8/u5G0+Lri343S0Hk/7e0UVxH9gslfi3ttxepJu59loo7sG9TNvJX5RXEn8hwH+FF+KfQ2/N6zbxz11+9Gl1g0C3Hm/5GB+VRyOeArSDvIZ7mEWIJg8NlU9beurGveFDe7zq+LRa9/cndsgwPU3C09kPYq2Lq+Y/C/xC7FPdpyZdAuT3/HW8EzcVF5NMJRUEdZ+oX/TF7eXOgM4BhWAfFX5aA2HpdK2a1SE4mpCJZ4JB8DiRgEg8meJBWs5LBY8E+fBBW4DzJEJN3s12u5RUQ29x+645HeAntzW3fIfp9bMkQv2NDlAL17rbtn3kusdy+88pXB3UwGAeA8Qh82n8Gka2mue3HQANvEkPYhDmmnNDMK74Va/uKBF27DQlWWjFH1Fbfs4F+dv9UsQtu0a2XrrsQmnD745FSmvJ1RNmNFrEr7Wldc7F2cVIGFxP/rw29MQPoxal2ks/BdcnYuzDBASFhQ0cw9/J5wNi+ynYbjC8ywxf4sTXfaDEIvZIJ4TIA4j3wTvmwrAAbH70NvTfnFn5H5Lw1FEt+Fw9RvAbIlgA6ub0ZnoC24DwL8ffJwSswmAT0Q3SmtcAxyHCvgYhnIfpnyGITJnywQ78Oay21ubLRVsx2cLbXEF8Xvh87TGAW6+U3gq8+FElP80GRU+T0HlOhKp9L5bWT2B148Ua79Zjyciy9dOTkTnKwqogidp76mqZnyjqpzxNdumrp75bfa9lNqK1272d2j+D+LY/CDPYPo9AAAAAElFTkSuQmCC)}.links li .more{color:#999;font-size:14px}</style>{{str2html .Content}}<p>注:为了节约本站用户的宝贵时间,长期无法访问的链接会被移除!另本站只有友情链接,不接受链接交换。</p></div></article>{{end}}</div>{{end}}
|
||||
@@ -0,0 +1 @@
|
||||
{{define "home"}}<div id="content" class="inner">{{range .List}}<article class="post post-list"><div class="meta"><div class="date"><time>{{dateformat .CreateTime "Jan 02, 2006"}}</time></div><div class="comment"><a href="/post/{{.Slug}}.html#comments">{{.Count}} Comments</a></div></div><h1 class="title"><a href="/post/{{.Slug}}.html">{{.Title}}</a></h1><div class="entry-content"><p>{{str2html .Excerpt}}[...]</p><p><a href="/post/{{.Slug}}.html" class="more-link">继续阅读 »</a></p></div></article>{{end}}<nav class="page-navi">{{if gt .Prev 0}}<a href="?pn={{.Prev}}" class="prev">« 上一页</a>{{end}}{{if gt .Next 0}}<a href="?pn={{.Next}}" class="next">下一页 »</a>{{end}}<div class="center"><a href="/archives.html">博客归档</a></div></nav></div>{{end}}
|
||||
@@ -0,0 +1 @@
|
||||
<!DOCTYPE html><html lang="zh-cn"><head><meta charset="utf-8"><meta content="width=device-width,minimum-scale=1.0" name="viewport"><meta name="format-detection" content="telephone=no"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="referrer" content="always"><title>{{.Title}}</title><script>!function(n,t){function e(){o("nls",1)}function c(){t.documentElement.style.display="none",u(),location.reload()}function r(n){var t="";try{t=f[n]||"",t.length<99&&c()}catch(e){u()}return t}function i(n,t){try{f[n]=t,t!==f[n]&&u()}catch(e){u()}}function o(n,e){var c=999;e||(c=-1),c=new Date(+new Date+86400000*c).toGMTString();var r=n+"="+e+";path=/;expires="+c;t.cookie=r}function a(n){var e=t.getElementById(n).innerHTML;i(n,e)}function l(e,c){var i=r(e),o=t.createElement(c?"script":"style");return n.execScript&&c?n.execScript(i):(o.innerHTML=i,void t.head.appendChild(o))}function u(){o("v",0)}var f,h=function(){},d=n.L={h:h,l:h,c:h};try{f=localStorage,d.h=a,d.l=l,d.c=o}catch(p){e()}}(this,document);</script>{{if .Version}}<script>L.c('v', {{.Version}})</script>{{end}}<link rel="apple-touch-icon" href="{{.Favicon}}"><link rel="search" type="application/opensearchdescription+xml" href="//{{.Domain}}/opensearch.xml" title="{{.BTitle}}">{{if .Version}}<style id="blog_css">{{template "blog_css"}}</style><script>L.h('blog_css')</script>{{else}}<script>L.l("blog_css")</script>{{end}}<link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="//{{.Domain}}/rss.html"><meta name="description" content="{{.Description}}"><style id="style-1-cropbar-clipper">.en-markup-crop-options{top:18px!important;left:50%!important;margin-left:-100px!important;width:200px!important;border:2px rgba(255,255,255,.38) solid!important;border-radius:4px!important}.en-markup-crop-options div div:first-of-type{margin-left:0!important}</style></head><body><div class="container"><div class="left-col"><div class="intrude-less"><header id="header" class="inner"><div class="profilepic"><a href="/"></a></div><h1><a href="/">{{.BlogName}}</a></h1><p class="subtitle">{{.SubTitle}}</p><nav id="main-nav"><ul><li {{if eq .Path "/"}}class="on" {{end}}><a href="/"><span>首页</span></a></li><li {{if eq .Path "/series.html"}}class="on" {{end}}><a href="/series.html"><span>专题</span></a></li><li {{if eq .Path "/archives.html"}}class="on" {{end}}><a href="/archives.html"><span>归档</span></a></li><li {{if eq .Path "/post/blogroll.html"}}class="on" {{end}}><a href="/post/blogroll.html"><span>友链</span></a></li><li {{if eq .Path "/post/about.html"}}class="on" {{end}}><a href="/post/about.html"><span>关于</span></a></li></ul></nav><nav id="sub-nav"><div class="social"><a target="_blank" class="twitter external" rel="nofollow" href="{{.Twitter}}" title="Twitter">Twitter</a><a target="_blank" class="rss" href="//{{.Domain}}{{.RSS}}" title="RSS 订阅">RSS</a><a class="search" href="{{.Search}}" title="站内搜索">Search</a></div></nav></header></div></div><div class="mid-col"><div class="mid-col-container">{{if .HomePage}} {{template "home" .}} {{else if .ArticlePage}} {{template "article" .}}{{else if .SeriesPage}}{{template "series" .}}{{else if .ArchivesPage}}{{template "archives" .}} {{else if .BlogrollPage}}{{template "blogroll" .}}{{else if .AboutPage}}{{template "about" .}}{{else if .SearchPage}} {{template "search" .}}{{else if .NotFoundPage}}{{template "notfound"}} {{end}}</div><footer id=footer class=inner>© {{.CopyYear}} - {{.BTitle}} - <a target="_blank" rel="nofollow designer" class="external beian" href="http://www.miitbeian.gov.cn/">{{.BeiAn}}</a><br>Powered by <a target=_blank href="//github.com/eiblog/eiblog">EiBlog</a> & <a target=_blank rel="nofollow designer" class=external href="//github.com/shashankmehta/greyshade">GreyShade</a></footer></div></div><input type=hidden id=CURRENT_PAGE value="{{.CurrentPage}}"><input type=hidden id=CDN_DOMAIN value="{{.Static}}"><!-- todo ana_js -->{{if .Version}}<script id="jq_js">{{template "jq_js"}}</script><script>L.h('jq_js')</script>{{else}}<script>L.l('jq_js', 1)</script>{{end}} {{if .Version}}<script id="hl_js">{{template "hl_js"}}</script><script>L.h('hl_js')</script>{{else}}<script>L.l('hl_js', 1)</script>{{end}}{{if .Version}}<script id="blog_js">{{template "blog_js"}}</script><script>L.h('blog_js')</script>{{else}}<script>L.l('blog_js', 1)</script>{{end}}</body></html>
|
||||
@@ -0,0 +1,5 @@
|
||||
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/">
|
||||
<ShortName>{{.BTitle}}</ShortName>
|
||||
<Description>{{.SubTitle}}</Description>
|
||||
<Url type="text/html" template="https://deepzz.com/search.html?q={searchTerms}" />
|
||||
</OpenSearchDescription>
|
||||
@@ -0,0 +1,45 @@
|
||||
{{define "search"}}
|
||||
<div id="content" class="inner">
|
||||
<article class="post post-search">
|
||||
<h1 class="title">站内搜索</h1>
|
||||
<div class="entry-content">
|
||||
<div id="search">
|
||||
<form action="/search.html">
|
||||
<div class="wrapper">
|
||||
<input maxlength="80" placeholder="请输入关键字..." id="keyword" name="q" value="{{.Word}}" type="search" required>
|
||||
</div>
|
||||
<input class="submit" type="submit" value="搜索">
|
||||
</form>
|
||||
</div>
|
||||
<div id="searchResult">
|
||||
{{if .Word}}{{with .SearchResult}}{{if gt (.Hits.Hits|len) 0}}
|
||||
<div class="info">本次搜索共找到结果 {{.Hits.Total}} 条 (用时 {{.Took}} 秒)</div>
|
||||
{{range .Hits.Hits}}
|
||||
<div class="item">
|
||||
<div class="title"><a href="/post/{{.Source.Slug}}.html">{{if .Highlight.Title}}{{str2html (join .Highlight.Title "")}}{{else}}{{.Source.Title}}{{end}}</a></div>
|
||||
<div class="desc">
|
||||
<div class="summary"><span class="date">{{dateformat .Source.CreateTime "2006-01-02"}}</span> ... {{str2html (join .Highlight.Content "...")}} ...</div>
|
||||
</div>
|
||||
</div>
|
||||
{{end}}{{else}}
|
||||
<div class="no-result">没有找到任何结果,请更换查询词试试~</div>
|
||||
<div class="item">
|
||||
<div class="title">或者试试 Google 站内搜索:<a target="_blank" href="//www.google.com/#q=site:{{$.Domain}} {{$.Word}}">site:{{$.Domain}} {{$.Word}}</a></div>
|
||||
</div>{{end}}{{end}}
|
||||
{{else}}
|
||||
<div class="hot-words">热搜词:{{range .HotWords}}<a href="?q={{.}}">{{.}}</a>{{end}}</div>
|
||||
<div class="intro">
|
||||
<p>支持的搜索格式:</p>
|
||||
<ol>
|
||||
<li>输入关键词全文搜索:<a href="?q=HTTP/2 性能优化">HTTP/2 性能优化</a>;</li>
|
||||
<li>指定时间段搜索:<a href="?q=date:2014">date:2014</a>、<a href="?q=date:2015-05">date:2015-05</a>;</li>
|
||||
<li>指定标签搜索:<a href="?q=tag:性能优化">tag:性能优化</a>、<a href="?q=tag:HTTPS">tag:HTTPS</a>;</li>
|
||||
<li>组合搜索:<a href="?q=type:post date:2015 tag:HTTP 优化">type:post date:2015 tag:HTTP 优化</a>;</li>
|
||||
</ol>
|
||||
</div>
|
||||
{{end}}
|
||||
</div>
|
||||
</div>
|
||||
</article>
|
||||
{{if or .Prev .Next}}<nav class="page-navi">{{with .Prev}}<a href="?{{html .}}" class="prev">« 上一页</a>{{end}}{{with .Next}}<a href="?{{html .}}" class="next">下一页 »</a>{{end}}</nav>{{end}}
|
||||
</div>{{end}}
|
||||
@@ -0,0 +1 @@
|
||||
{{define "series"}}<div id=content class=inner><article class="post post-series"><h1 class=title>专题</h1><div class="entry-content">{{str2html .Article}}</div></article></div>{{end}}
|
||||
@@ -0,0 +1,23 @@
|
||||
{{define "ana_js"}}
|
||||
(function(i, s, o, g, r, a, m) {
|
||||
i['GoogleAnalyticsObject'] = r;
|
||||
i[r] = i[r] || function() {
|
||||
(i[r].q = i[r].q || []).push(arguments)
|
||||
}, i[r].l = 1 * new Date();
|
||||
a = s.createElement(o),
|
||||
m = s.getElementsByTagName(o)[0];
|
||||
a.async = 1;
|
||||
a.src = g;
|
||||
m.parentNode.insertBefore(a, m)
|
||||
})(window, document, 'script', 'https://o7msui8ho.qnssl.com/js/analytics.js', 'ga');
|
||||
|
||||
ga('create', 'UA-77251712-1', 'auto');
|
||||
ga('send', 'pageview');
|
||||
! function(e, n, o, t) {
|
||||
var a = e.screen,
|
||||
r = encodeURIComponent,
|
||||
i = ["tid=UA-5422922-2", "dl=" + r(n.URL), "dt=" + r(n.title), "dr=" + r(n.referrer), "dp=" + r(t.pathname), "ul=" + (o.language || o.browserLanguage).toLowerCase(), "sd=" + a.colorDepth + "-bit", "sr=" + a.width + "x" + a.height, "_=" + +new Date],
|
||||
c = "?" + i.join("&");
|
||||
e.__beacon_img = new Image, e.__beacon_img.src = "/beacon.html" + c
|
||||
}(window, document, navigator, location);
|
||||
{{end}}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user