From 4c7eff848dd38e826787fbd29dd2d8185ba42278 Mon Sep 17 00:00:00 2001
From: Eltrac <45323514+BigCoke233@users.noreply.github.com>
Date: Sat, 20 Jul 2019 12:41:10 +0800
Subject: =?UTF-8?q?=E8=A7=84=E8=8C=83=E4=BB=A3=E7=A0=81=E7=BB=93=E6=9E=84/?=
=?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=AE=BE=E7=BD=AE=E9=A1=B9/=E4=BC=98?=
=?UTF-8?q?=E5=8C=96=E9=83=A8=E5=88=86=E6=A0=B7=E5=BC=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
404.php | 2 +-
assets/css/dark.miracles.css | 5 ++-
assets/css/miracles.min.css | 89 ++++++++++++++++++++++++++------------------
assets/js/miracles.min.js | 83 +++++++++++++++++++++++++++++++++++++++++
functions.php | 14 ++++---
includes/footer.php | 48 +++++-------------------
includes/head.php | 2 +-
index.php | 2 +-
saying.php | 2 -
9 files changed, 159 insertions(+), 88 deletions(-)
create mode 100644 assets/js/miracles.min.js
diff --git a/404.php b/404.php
index c4a1a4a..98f981e 100644
--- a/404.php
+++ b/404.php
@@ -8,7 +8,7 @@ $this->need('includes/header.php');
404
糟糕,我家猫咪走丢了!
- 返回首页
+ 返回首页
diff --git a/assets/css/dark.miracles.css b/assets/css/dark.miracles.css
index 9e5b49e..e9071d5 100644
--- a/assets/css/dark.miracles.css
+++ b/assets/css/dark.miracles.css
@@ -61,7 +61,8 @@
.body-dark .comment-by-author .bubble.comment-content,
.body-dark .bubble.comment-content,
.body-dark .comment-author,
-.body-dark .bubble.saying-body {
+.body-dark .bubble.saying-body,
+.body-dark .tags-item a {
background: #646464
}
/* Need #5a5a5a bg */
@@ -155,7 +156,7 @@
}
.body-dark .nav a:hover,
.body-dark .nav-mobile-title:hover,
-.mobile-menu-pagelist a:hover {
+.body-dark .mobile-menu-pagelist a:hover {
background: #646464
}
.body-dark .nav-icon-button {
diff --git a/assets/css/miracles.min.css b/assets/css/miracles.min.css
index 32a105e..707f2f9 100644
--- a/assets/css/miracles.min.css
+++ b/assets/css/miracles.min.css
@@ -51,6 +51,49 @@ hr {
background-color: var(--theme-color)
}
+/* For Body tag */
+.body-dark {
+ /* For the dark theme
+ * turn to 'dark.miracles.css'
+ */
+}
+.body-gray {
+ /* For the gray theme */
+ filter: grayscale(100%);
+ -webkit-filter: grayscale(100%);
+}
+.body-sans-serif {
+ font-family: 'Noto Sans SC',sans-serif
+}
+.body-serif {
+ font-family: 'Noto Serif SC',serif
+}
+
+/* 组件 */
+/* > 按钮 */
+.button {
+ border: 3px solid #ccc;
+ border-radius: 30px;
+ padding: 8px 12px;
+ transition: all .2s;
+}
+.button:hover {
+ border-color: #000;
+ background: #000;
+ color: #fff
+}
+.button-sm {
+ padding: 3px 5px;
+}
+.button-md {
+ border: none;
+ border-radius: 3px;
+}
+.button-md:hover {
+ background: rgb(235,235,235);
+ color: #fff;
+}
+
/* 导航栏 */
.nav {
background: rgba(255,255,255,0.96);
@@ -62,7 +105,7 @@ hr {
display: table;
top: 0;
z-index: 10;
- transition: all .2s
+ transition: all .2s;
}
.nav-content {
margin: 0;
@@ -127,14 +170,6 @@ hr {
background: rgb(230,230,230);
cursor: pointer
}
-/* 字体 Class */
-.font-sans-serif {
- font-family: 'Noto Sans SC',sans-serif
-}
-
-.font-serif {
- font-family: 'Noto Serif SC',serif
-}
/* 首页大图 */
.index-banner {
margin-top: -21px;
@@ -206,17 +241,8 @@ hr {
margin-top: 15px
}
.post-button {
- border: 3px solid #ccc;
- border-radius: 30px;
- padding: 8px 12px;
- transition: all .2s;
float: right
}
-.post-button:hover {
- border-color: #000;
- background: #000;
- color: #fff
-}
.post-footer {
color: #c8c8c8;
font-size: 14px
@@ -260,10 +286,10 @@ hr {
display: block;
margin: 20px auto;
border-radius: 3px;
- box-shadow: 0 2px 10px #ccc;
- -moz-box-shadow: 0 2px 10px #ccc;
- -webkit-box-shadow: 0 2px 10px #ccc;
- max-width: 100%
+ box-shadow: 0 4px 20px #ccc;
+ -moz-box-shadow: 0 4px 20px #ccc;
+ -webkit-box-shadow: 0 4px 20px #ccc;
+ max-width: 90%
}
.post-content blockquote p {
margin: 0
@@ -634,20 +660,8 @@ hr {
font-size: 100px;
text-shadow: 0 4px 12px #ccc;
}
-.error-button {
- padding: 5px 10px;
- margin: 20px 10px;
- transition: all .2s;
- border: 4px solid #ddd;
- border-radius: 100px;
-}
-.error-button:hover {
- background: #000;
- border-color: #000;
- color: #fff
-}
-/* Buttons */
-/* > 悬浮按钮 */
+
+/* 悬浮按钮 */
.dark-button,.gotop-button {
background: #fdfdfd;
font-size: 22px;
@@ -766,6 +780,7 @@ hr {
.bubble.comment-content {
background: rgb(238,238,238);
padding: 3px 8px;
+ padding-right: 12px;
padding-top: -3px;
border-radius: 4px;
min-width: 10px!important;
@@ -788,7 +803,7 @@ hr {
.comment-by-author > .container-fluid > .row > .comment-main > .bubble.comment-content:before {
border-right-color: var(--theme-color)
}
-.comment-by-author .bubble.comment-content .comment-reply a {
+.comment-by-author > .container-fluid > .row > .comment-main > .bubble.comment-content > .comment-reply a {
color:#fff!important;
}
.comment-reply a {
diff --git a/assets/js/miracles.min.js b/assets/js/miracles.min.js
new file mode 100644
index 0000000..9890962
--- /dev/null
+++ b/assets/js/miracles.min.js
@@ -0,0 +1,83 @@
+/*
+ * The main JavaScript file for Theme Miracles
+ * Author: Eltrac
+ * License: MIT
+ */
+
+//toggleDark
+function Dark() {
+ $("body").toggleClass("body-dark");
+}
+//GoTop
+function GoTop() {
+ $('body,html').animate({scrollTop:0},500);
+ document.body.scrollTop = 0;
+ document.documentElement.scrollTop = 0;
+}
+//LazyLoad
+function LazyLoad() {
+ jQuery(function() {
+ jQuery("img").lazyload(
+ {threshold: 200,effect: "fadeIn"}
+ );
+ });
+}
+//Prism
+function PrismLoad() {
+ var pres = document.getElementsByTagName('pre');
+ for (var i = 0; i < pres.length; i++){
+ if (pres[i].getElementsByTagName('code').length > 0)pres[i].className = 'line-numbers';
+ }
+}
+function PrismReload() {
+ if (typeof Prism !== 'undefined') {
+ var pres = document.getElementsByTagName('pre');
+ for (var i = 0; i < pres.length; i++){
+ if (pres[i].getElementsByTagName('code').length > 0)
+ pres[i].className = 'line-numbers';
+ }
+ Prism.highlightAll(true,null);
+ }
+}
+//Search
+function Search() {
+ $(".search").toggleClass("ready");
+ $(".search-close").toggleClass("ready");
+}
+//mobileMenu
+function toggleMobileMenu() {
+ $(".mobile-menu").toggleClass("ready");
+ $(".mobile-menu-close").toggleClass("ready");
+}
+//Login
+function Login() {
+ $(".login").toggleClass("ready");
+ $(".login-close").toggleClass("ready");
+}
+//owo
+function owoLoad() {
+ var OwO_demo = new OwO({
+ logo: 'OωO表情',
+ container: document.getElementsByClassName('OwO')[0],
+ target: document.getElementsByClassName('OwO-textarea')[0],
+ api: owoJson,
+ position: 'down',
+ width: '300px',
+ maxHeight: '250px'
+ });
+}
+//pjax-loader
+if(loadPjax = true) {
+ $(document).pjax('a[href^="'+siteurl+'"]:not(a[target="_blank"], a[no-pjax])', {
+ container: '#pjax-container',fragment: '#pjax-container',timeout: 8000
+ }).on('pjax:send', function () {
+ GoTop();
+ beforePjax();
+ }).on('pjax:complete', function () {
+ $('form#login-form').addClass('need-refresh');
+ NProgress.done();
+ LazyLoad();
+ PrismReload();
+ afterPjax();
+ });
+}
\ No newline at end of file
diff --git a/functions.php b/functions.php
index a4b1cbb..fb6d34d 100644
--- a/functions.php
+++ b/functions.php
@@ -7,6 +7,7 @@ require_once("libs/Contents.php");
* 注册文章解析 hook
* 具体的解析代码需要在 Contents::parseContent() 方法中实现
* 解析不会改变数据库中的内容,体现在文章前台输出、RSS 输出时
+ * From AlanDecode(https://imalan.cn)
*/
Typecho_Plugin::factory('Widget_Abstract_Contents')->contentEx = array('Contents','parseContent');
Typecho_Plugin::factory('Widget_Abstract_Contents')->excerptEx = array('Contents','parseContent');
@@ -15,9 +16,6 @@ Typecho_Plugin::factory('Widget_Abstract_Contents')->excerptEx = array('Contents
* 主题启用时执行的方法
*/
function themeInit() {
- /**
- * 重置某些设置项,采用数据库查询方式完成
- */
$db = Typecho_Db::get();
$query = $db->update('table.options')->rows(array('value'=>'0'))->where('name=?', 'commentsAntiSpam');
@@ -43,7 +41,7 @@ function themeInit() {
*/
function themeConfig($form) {
//nav
- $nav_position = new Typecho_Widget_Helper_Form_Element_Select('nav_position',array('0'=>'不固定','1'=>'固定'),'0','导航栏-是否固定','固定后,导航栏不会随滚动条滚动而移动在屏幕上的位置');
+ $nav_position = new Typecho_Widget_Helper_Form_Element_Select('nav_position',array('0'=>'不固定','1'=>'固定'),'0','导航栏-是否固定','固定后,导航栏不会随滚动条滚动而移动在屏幕上的位置
');
$form->addInput($nav_position);
//index-banner
@@ -53,9 +51,15 @@ function themeConfig($form) {
$form->addInput($bannerHeight);
$bannerTitle = new Typecho_Widget_Helper_Form_Element_Text('bannerTitle', NULL, NULL, _t('首页大图-标题'), _t('这里是首页大图显示的的标题'));
$form->addInput($bannerTitle);
- $bannerIntro = new Typecho_Widget_Helper_Form_Element_Text('bannerIntro', NULL, NULL, _t('首页大图-介绍'), _t('这里是首页大图标题下的简介'));
+ $bannerIntro = new Typecho_Widget_Helper_Form_Element_Text('bannerIntro', NULL, NULL, _t('首页大图-介绍'), _t('这里是首页大图标题下的简介
'));
$form->addInput($bannerIntro);
+ //pjax
+ $pjax = new Typecho_Widget_Helper_Form_Element_Select('pjax',array('0'=>'关闭','1'=>'开启'),'1','Pjax-是否开启','Pjax 预加载功能的开关');
+ $form->addInput($pjax);
+ $pjax_complete = new Typecho_Widget_Helper_Form_Element_Textarea('pjax_complete', NULL, NULL, _t('Pjax-完成后执行事件'), _t('Pjax 跳转页面后执行的事件,写入 js 代码,一般将 Pjax 重载(回调)函数写在这里。
'));
+ $form->addInput($pjax_complete);
+
//custom
$headerEcho = new Typecho_Widget_Helper_Form_Element_Textarea('headerEcho', NULL, NULL, _t('自定义头部信息'), _t('填写 html 代码,将输出在 <head> 标签中'));
$form->addInput($headerEcho);
diff --git a/includes/footer.php b/includes/footer.php
index 10fa10d..865d4fb 100644
--- a/includes/footer.php
+++ b/includes/footer.php
@@ -21,44 +21,14 @@
-
-
- options->jsEcho && $this->options->jsEcho!=''): ?>
- footer(); ?>
+
+
+