diff --git a/finding/archive-articles.ftl b/finding/archive-articles.ftl new file mode 100644 index 0000000..c162cc7 --- /dev/null +++ b/finding/archive-articles.ftl @@ -0,0 +1,30 @@ +<#include "macro-head.ftl"> + + + + <@head title="${archiveDate.archiveDateMonth} ${archiveDate.archiveDateYear} (${archiveDate.archiveDatePublishedArticleCount}) - ${blogTitle}"> + + + + + + +
+ <#include "header.ftl"> +
+

+ ${archive1Label} + <#if "en" == localeString?substring(0, 2)> + ${archiveDate.archiveDateMonth} ${archiveDate.archiveDateYear} (${archiveDate.archiveDatePublishedArticleCount}) + <#else> + ${archiveDate.archiveDateYear} ${yearLabel} ${archiveDate.archiveDateMonth} ${monthLabel} (${archiveDate.archiveDatePublishedArticleCount}) + +

+ <#include "article-list.ftl"> +
+ <#include "footer.ftl"> +
+ + diff --git a/finding/archives.ftl b/finding/archives.ftl new file mode 100644 index 0000000..fc8ce87 --- /dev/null +++ b/finding/archives.ftl @@ -0,0 +1,38 @@ +<#include "macro-head.ftl"> + + + + <@head title="${blogTitle}"> + + + + + + +
+ <#include "header.ftl"> +
+ <#if 0 != archiveDates?size> + + +
+ <#include "footer.ftl"> +
+ + diff --git a/finding/article-list.ftl b/finding/article-list.ftl new file mode 100644 index 0000000..1f52460 --- /dev/null +++ b/finding/article-list.ftl @@ -0,0 +1,60 @@ +<#if !isIndex && paginationCurrentPageNum != 1> + + + +<#list articles as article> +
+
+

+ + ${article.articleTitle} + + <#if article.hasUpdated> + + ${updatedLabel} + + + <#if article.articlePutTop> + + ${topArticleLabel} + + +

+
+
+

${article.articleAbstract}

+
+ +
+ + +<#if 0 != paginationPageCount> + + \ No newline at end of file diff --git a/finding/article.ftl b/finding/article.ftl new file mode 100644 index 0000000..e5eaeb1 --- /dev/null +++ b/finding/article.ftl @@ -0,0 +1,98 @@ +<#include "macro-head.ftl"> +<#include "macro-comments.ftl"> + + + + <@head title="${article.articleTitle} - ${blogTitle}"> + + + + + + +
+ <#include "header.ftl"> +
+
+
+

+ + ${article.articleTitle} + + <#if article.hasUpdated> + + ${updatedLabel} + + + <#if article.articlePutTop> + + ${topArticleLabel} + + +

+ +
+
+ ${article.articleContent} + <#if "" != article.articleSign.signHTML?trim> +
+ ${article.articleSign.signHTML} +
+ +
+ +
+ <@comments commentList=articleComments article=article> +
+ <#if nextArticlePermalink?? || previousArticlePermalink??> + + + <#include "footer.ftl"> + + <@comment_script oId=article.oId> +
+ + diff --git a/finding/author-articles.ftl b/finding/author-articles.ftl new file mode 100644 index 0000000..374fa84 --- /dev/null +++ b/finding/author-articles.ftl @@ -0,0 +1,25 @@ +<#include "macro-head.ftl"> + + + + <@head title="${authorName} - ${blogTitle}"> + + + + + + +
+ <#include "header.ftl"> +
+

+ ${author1Label}${authorName} +

+ <#include "article-list.ftl"> +
+ <#include "footer.ftl"> +
+ + diff --git a/finding/css/finding.css b/finding/css/finding.css new file mode 100644 index 0000000..98b3600 --- /dev/null +++ b/finding/css/finding.css @@ -0,0 +1,1379 @@ +/** + * Copyright (c) 2009, 2010, 2011, 2012, 2013, B3log Team + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +@charset "utf-8"; +/* + * skin finding style + * + * @author Liyuan Li + * @version 1.0.0.0, Jun 4, 2015 +*/ +/* start reset */ +html { + height: 100%; + max-height: 100%; + font-size: 62.5%; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} + +body { + height: 100%; + max-height: 100%; + font-family: "Merriweather", "Microsoft Yahei", 'Helvetica'; + letter-spacing: 0.01rem; + font-size: 1.8rem; + line-height: 1.75em; + color: #3A4145; + -webkit-font-feature-settings: 'kern' 1; + -moz-font-feature-settings: 'kern' 1; + -o-font-feature-settings: 'kern' 1; + text-rendering: geometricPrecision; + margin: 0; +} + +::-moz-selection { + background: #D6EDFF; +} + +::selection { + background: #D6EDFF; +} + +a { + color: #4A4A4A; + transition: color 0.3s ease; +} + +a:hover { + color: #111; +} + +h1, h2, h3, +h4, h5, h6 { + -webkit-font-feature-settings: 'dlig' 1, 'liga' 1, 'lnum' 1, 'kern' 1; + -moz-font-feature-settings: 'dlig' 1, 'liga' 1, 'lnum' 1, 'kern' 1; + -o-font-feature-settings: 'dlig' 1, 'liga' 1, 'lnum' 1, 'kern' 1; + color: #2E2E2E; + line-height: 1.15em; + font-family: "Open Sans", "Microsoft Yahei", 'Helvetica'; + text-rendering: geometricPrecision; +} + +h1 { + font-size: 5rem; + letter-spacing: -2px; + text-indent: -3px; +} + +h2 { + font-size: 3.6rem; + letter-spacing: -1px; +} + +h3 { + font-size: 3rem; +} + +h4 { + font-size: 2.5rem; +} + +h5 { + font-size: 2rem; +} + +h6 { + font-size: 2rem; +} + +img { + max-width: 100%; +} + +p, ul, ol, dl { + -webkit-font-feature-settings: 'liga' 1, 'onum' 1, 'kern' 1; + -moz-font-feature-settings: 'liga' 1, 'onum' 1, 'kern' 1; + -o-font-feature-settings: 'liga' 1, 'onum' 1, 'kern' 1; + margin: 0 0 1.75em 0; + text-rendering: geometricPrecision; +} + +ol, ul { + padding-left: 3rem; +} + +ol ol, ul ul, +ul ol, ol ul { + padding-left: 2em; +} + +dl dt { + float: left; + width: 180px; + overflow: hidden; + clear: left; + text-align: right; + text-overflow: ellipsis; + white-space: nowrap; + font-weight: 700; + margin-bottom: 1em; +} + +dl dd { + margin-left: 200px; + margin-bottom: 1em +} + +li li { + margin: 0; +} + +hr { + display: block; + height: 1px; + border: 0; + border-top: #EFEFEF 1px solid; + margin: 3.2em 0; + padding: 0; +} + +blockquote { + -moz-box-sizing: border-box; + box-sizing: border-box; + margin: 1.75em 0 1.75em -2.2em; + padding: 0 0 0 1.75em; + border-left: #4A4A4A 0.4em solid; +} + +blockquote p { + margin: 0.8em 0; + font-style: italic; +} + +blockquote small { + display: inline-block; + margin: 0.8em 0 0.8em 1.5em; + font-size: 0.9em; + color: #CCC; +} + +blockquote small:before { content: "\2014 \00A0"; } + +blockquote cite { + font-weight: 700; +} + +blockquote cite a { font-weight: normal; } + +mark { + background-color: #fdffb6; +} + +code, tt { + padding: 1px 3px; + font-family: Inconsolata, monospace, "Microsoft Yahei", 'Helvetica'; + font-size: 0.85em; + white-space: pre-wrap; + border: #E3EDF3 1px solid; + background: #F7FAFB; + border-radius: 2px; +} + +pre { + -moz-box-sizing: border-box; + box-sizing: border-box; + margin: 0 0 1.75em 0; + border: #E3EDF3 1px solid; + width: 100%; + padding: 10px; + font-family: Inconsolata, monospace, "Microsoft Yahei", 'Helvetica'; + font-size: 0.9em; + white-space: pre; + overflow: auto; + background: #F7FAFB; + border-radius: 3px; +} + +pre code, pre tt { + font-size: inherit; + white-space: pre-wrap; + background: transparent; + border: none; + padding: 0; +} +/* end reset */ + +/* start function */ +.fn-clear:before, +.fn-clear:after { + display: table; + content: ""; +} + +.fn-clear:after { + clear: both; +} + +.fn-left { + float: left; +} + +.fn-right { + float: right; +} + +.fn-none { + display: none; +} + +.fn-vertical { + display: table-cell; + vertical-align: middle; +} + +.fn-wrap { + width: 80%; + max-width: 768px; + margin: 0 auto; +} + +@-webkit-keyframes fade-in-down { + 0% { + opacity: 0; + -webkit-transform: translateY(-10px); + transform: translateY(-10px); + } + 100% { + opacity: 1; + -webkit-transform: translateY(0); + transform: translateY(0); + } +} +@keyframes fade-in-down { + 0% { + opacity: 0; + -webkit-transform: translateY(-10px); + transform: translateY(-10px); + } + 100% { + opacity: 1; + -webkit-transform: translateY(0); + transform: translateY(0); + } +} + +@-webkit-keyframes bounce { + 0%, 10%, 25%, 40%, 50% { + -webkit-transform: translateY(0); + transform: translateY(0); + } + 20% { + -webkit-transform: translateY(-10px); + transform: translateY(-10px); + } + 30% { + -webkit-transform: translateY(-5px); + transform: translateY(-5px); + } +} +@keyframes bounce { + 0%, 20%, 50%, 80%, 100% { + -webkit-transform: translateY(0); + transform: translateY(0); + } + 40% { + -webkit-transform: translateY(-10px); + transform: translateY(-10px); + } + 60% { + -webkit-transform: translateY(-5px); + transform: translateY(-5px); + } +} + +@-webkit-keyframes upbounce { + 0%, 10%, 25%, 40%, 50% { + -webkit-transform: translateY(0); + transform: translateY(0); + } + 20% { + -webkit-transform: translateY(-10px); + transform: translateY(-10px); + } + 30% { + -webkit-transform: translateY(-5px); + transform: translateY(-5px); + } +} + +@keyframes upbounce { + 0%, 20%, 50%, 80%, 100% { + -webkit-transform: translateY(0); + transform: translateY(0); + } + 40% { + -webkit-transform: translateY(-10px); + transform: translateY(-10px); + } + 60% { + -webkit-transform: translateY(-5px); + transform: translateY(-5px); + } +} +/* end function */ + +/* start common */ +@font-face { + font-family: "icomoon"; + src:url("fonts/icomoon.eot?v=1"); + src:url("fonts/icomoon.eot?v=1#iefix") format("embedded-opentype"), + url("fonts/icomoon.woff?v=1") format("woff"), + url("fonts/icomoon.ttf?v=1") format("truetype"), + url("fonts/icomoon.svg?v=1#icons") format("svg"); + font-weight: normal; + font-style: normal; +} + +[class^="icon-"]:before, +[class*=" icon-"]:before { + font-size: 2rem; + font-family: "icomoon", "Open Sans", "Microsoft Yahei", 'Helvetica'; + speak: none; + font-style: normal; + font-weight: normal; + font-variant: normal; + text-transform: none; + line-height: 1; + text-decoration: none !important; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +.icon-arrow-left:before { + content: "\f605"; + font-size: 3.5rem; +} + +.icon-menu:before { + content: "\f609"; + vertical-align: sub; +} + +.icon-login:before { + content: "\e611"; +} + +.icon-logout:before { + content: "\e601"; +} + +.icon-setting:before { + content: "\e602"; +} + +.icon-register:before { + content: "\e600"; +} + +.avatar { + border-radius: 100%; + float: left; + height: 24px; + margin-right: 9px; + width: 24px; +} + +.avatar-warp { + width: 10%; + padding-right: 10px; + box-sizing: border-box; +} + +.avatar-48 { + box-shadow: 0 0 2px #ddd; + height: auto; + width: 48px; + margin-right: 10px; + border-radius: 24px; +} + +.form { + width: 100%; + margin-top: 50px; +} + +.form input, +.form textarea, +.form button { + border: 1px solid #CCCCCC; + background-color: #FAFAFA; + border-radius: 3px; + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075) inset; + padding: 7px 8px; + width: 100%; + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + font-family: "Merriweather", "Microsoft Yahei", 'Helvetica'; +} + +.form button { + width: auto; + vertical-align: bottom; +} + +.form input:focus, +.form textarea:focus { + background-color: #FFF; + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075) inset, 0 0 5px rgba(81, 167, 232, 0.5); + border: 1px solid #51A7E8; +} + +.error-msg { + font-size: 1.5rem; + color: #9EABB3; +} + +.cmtFromSym { + font-size: 1rem; + color: #9EABB3; +} +/* end common */ + +/* start emotions */ +.em00, .em01, .em02, .em03, .em04, .em05, .em06, .em07, .em08, .em09, +.em10, .em11, .em12, .em13, .em14 { + background-image: url("../images/emotions/emotions-ease.png"); + float: left; + height: 24px; + margin-right: 5px; + width: 24px; +} + +#emotions span { + cursor: pointer; +} + +.em01 { + background-position: -24px 0; +} + +.em02 { + background-position: -48px 0; +} + +.em03 { + background-position: -72px 0; +} +.em04 { + background-position: -96px 0; +} + +.em05 { + background-position: 0px -24px; +} + +.em06 { + background-position: -24px -24px; +} + +.em07 { + background-position: -48px -24px; +} + +.em08 { + background-position: -72px -24px; +} + +.em09 { + background-position: -96px -24px; +} + +.em10 { + background-position: 0 -48px; +} + +.em11 { + background-position: -24px -48px ; +} + +.em12 { + background-position: -48px -48px; +} + +.em13 { + background-position: -72px -48px; +} + +.em14 { + background-position: -96px -48px; +} +/* end emotions */ + +/* start framework */ +.main-header { + position: relative; + display: table; + width: 100%; + height: 100vh; + margin-bottom: 5rem; + text-align: center; + background: #222 no-repeat center center; + background-size: cover; + overflow: hidden; + background-image: url('../images/header-bg.jpg'); + min-height: 50vh; +} + +.site-wrapper { + position: relative; + z-index: 10; + min-height: 100%; + background: #fff; + -webkit-transition: -webkit-transform 0.5s ease; + transition: transform 0.5s ease; +} + +.nav-opened .site-wrapper { + overflow-x: hidden; + -webkit-transform: translate3D(-240px, 0, 0); + -ms-transform: translate3D(-240px, 0, 0); + transform: translate3D(-240px, 0, 0); + -webkit-transition: -webkit-transform 0.3s ease; + transition: transform 0.3s ease; +} +/* end framework */ + +/* start header */ +.page-title a { + -webkit-animation: fade-in-down 0.6s; + animation: fade-in-down 0.6s; + -webkit-animation-delay: 0.2s; + animation-delay: 0.2s; + margin: 10px 0 10px 0; + font-size: 5rem; + letter-spacing: -1px; + font-weight: 700; + font-family: "Open Sans", "Microsoft Yahei", 'Helvetica'; + color: #fff; + text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.9); + text-decoration: none; +} + +.page-description, +.page-description a { + -webkit-animation: fade-in-down 0.9s; + animation: fade-in-down 0.9s; + -webkit-animation-delay: 0.1s; + animation-delay: 0.1s; + margin: 0; + font-size: 2rem; + line-height: 1.5em; + font-weight: 400; + letter-spacing: 0.01rem; + color: rgba(255,255,255,0.8); +} + +.scroll-down { + display: block; + position: absolute; + z-index: 100; + bottom: 45px; + left: 50%; + margin-left: -16px; + width: 34px; + height: 34px; + font-size: 34px; + text-align: center; + text-decoration: none; + color: rgba(255,255,255,0.7); + -webkit-animation: bounce 4s 2s infinite; + animation: bounce 4s 2s infinite; +} + +.scroll-down:hover { + color: #fff; + -webkit-animation: none; + animation: none; +} + +.menu-button { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + display: inline-block; + float: right; + height: 38px; + padding: 0 15px; + border-style: solid; + border-width: 1px; + opacity: 1; + text-align: center; + font-size: 12px; + text-transform: uppercase; + line-height: 35px; + white-space: nowrap; + border-radius: 3px; + transition: all 0.5s ease; + position: absolute; + right: 20px; + top: 40px; + text-decoration: none; + font-family: 'Open Sans', "Microsoft Yahei", 'Helvetica'; + z-index: 30; +} + +.menu-button:hover { + background: #fff; +} + +.menu-button:focus { + outline: 0; +} + +.nav-closed .menu-button { + color: #fff; + border-color: rgba(255, 255, 255, 0.6); +} +.nav-closed .menu-button:hover { + color: #222; +} + +.nav-opened .menu-button { + padding: 0 12px; + background: #111; + border-color: #111; + color: #fff; + -webkit-transform: translate3D(50px, 0, 0); + -ms-transform: translate3D(50px, 0, 0); + transform: translate3D(50px, 0, 0); + transition: all 0.3s ease; +} + +.nav-opened .menu-button .word { + opacity: 0; + transition: all 0.3s ease; +} + +.nav { + position: fixed; + top: 0; + right: 0; + bottom: 0; + z-index: 5; + width: 220px; + padding: 10px 10px 0 10px; + opacity: 0; + background: #111; + margin-bottom: 0; + text-align: left; + overflow-y: auto; + color: #FFF; + -webkit-transition: -webkit-transform 0.5s ease, + opacity 0.3s ease 0.7s; + transition: transform 0.5s ease, + opacity 0.3s ease 0.7s; + overflow-x: hidden; +} + +.nav ul { + margin: 0; + padding: 0px 0 5%; + list-style: none; + counter-reset: item; +} + +.nav li { + height: 30px; + line-height: 1.4rem; +} + +.nav li:before { + display: block; + float: right; + padding-right: 4%; + padding-left: 5px; + text-align: right; + font-size: 1.2rem; + vertical-align: bottom; + color: #B8B8B8; + content: counter(item, lower-roman); + counter-increment: item; + line-height: 2.5rem; +} + +.nav a { + color: #B8B8B8; + text-decoration: none; + line-height: 1.4; + font-size: 1.4rem; +} + +.nav a:hover { + color: #FFF; +} + +.nav li a { + display: block; + padding: 0.6rem 4%; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; +} + +.nav li a:after { + display: inline-block; + content: " ......................................................."; + color: rgba(255,255,255,0.2); + margin-left: 5px; +} + +.nav .count { + position: absolute; + bottom: 10px; + font-size: 1rem; + width: 100%; + word-wrap: normal; + word-break: break-all; + white-space: nowrap; +} + +.nav [class^="icon-"] { + color: #FFF; +} + +.nav [class^="icon-"]:hover { + color: #B8B8B8; +} + +body.nav-closed .nav { + -webkit-transform: translate3D(97px, 0, 0); + -ms-transform: translate3D(97px, 0, 0); + transform: translate3D(97px, 0, 0); +} + +body.nav-opened .nav { + opacity: 1; + -webkit-transition: -webkit-transform 0.3s ease, + opacity 0s ease 0s; + transition: transform 0.3s ease, + opacity 0s ease 0s; + -webkit-transform: translate3D(0, 0, 0); + -ms-transform: translate3D(0, 0, 0); + transform: translate3D(0, 0, 0); +} +/* end header */ + +/* start article */ +article.post { + position: relative; + margin: 4rem auto; + padding-bottom: 4rem; + border-bottom: #EBF2F6 1px solid; + word-wrap: break-word; + width: 80%; +} + +article.post:after { + display: block; + content: ""; + width: 7px; + height: 7px; + border: #E7EEF2 1px solid; + position: absolute; + bottom: -5px; + left: 50%; + margin-left: -5px; + background: #FFF; + border-radius: 100%; + box-shadow: #FFF 0 0 0 5px; +} + +.post-title a { + text-decoration: none; +} + +.post-tip { + display: inline-block; + text-transform: uppercase; + font-size: 1.3rem; + white-space: nowrap; + color: #9EABB3; +} + +.post-excerpt p { + margin: 0; + font-size: 0.9em; + line-height: 1.7em; +} + +.post-meta { + color: #9eabb3; + font-family: "Open Sans", "Microsoft Yahei", 'Helvetica'; + font-size: 1.5rem; + line-height: 2.2rem; + margin: 1.75rem 0 0 0; +} + +.post-meta a { + color: #9EABB3; + text-decoration: none; +} + +.post-meta a:hover { + text-decoration: underline; +} + +.post-meta time { + border-left: 1px solid #d5dbde; + display: inline-block; + font-size: 1.3rem; + margin-left: 8px; + padding-left: 12px; + text-transform: uppercase; + white-space: nowrap; +} + +.post-author { + box-sizing: border-box; + display: block; + position: absolute; + bottom: -57px; + left: 50%; + margin-left: -40px; + width: 80px; + height: 80px; + border-radius: 100%; + overflow: hidden; + padding: 6px; + background: #fff; + z-index: 2; + box-shadow: #E7EEF2 0 0 0 1px; +} + +.post-author a { + background-size: cover; + background-position: center center; + width: 68px; + height: 68px; + display: block; + border-radius: 35px; +} + +.share .icon { + cursor: pointer; + transition: all 0.2s ease-out 0s; + display: inline-block; + font-size: 16px; + margin-top: 15px; +} + +.share .icon:hover { + transform: rotate(360deg); + color: #9EABB3; +} + +.icon-weibo:before { + content: "\e605"; +} + +.icon-twitter:before { + content: "\e60b"; +} + +.icon-tencent:before { + content: "\e60d"; +} + +.icon-google:before { + content: "\e603"; +} + +.icon-gotop:before { + content: "\E60A"; + font-weight: bold; +} + +.icon-gotop { + cursor: pointer; + position: fixed; + bottom: 30px; + right: 30px; + -webkit-animation: upbounce 4s 2s infinite; + animation: upbounce 4s 2s infinite; + text-decoration: none; + z-index: 10; +} + +.icon-gotop:hover { + color: #B8B8B8; + -webkit-animation: none; + animation: none; +} + +.pagination { + font-family: "Open Sans", "Microsoft Yahei", 'Helvetica'; + font-size: 1.3rem; + color: #9eabb3; + text-align: center; +} + +.pagination a { + color: #9EABB3; + transition: all 0.2s ease; + padding: 0 15px; + border: #bfc8cd 1px solid; + text-decoration: none; + display: inline-block; + border-radius: 4px; +} + +.pagination a:hover { + border-color: #98a0a4; + color: #889093; +} + +ul.comments { + padding: 0; + list-style: none; + margin-top: 100px; + position: relative; +} + +.comments li { + padding: 10px; + white-space: normal; + word-wrap: break-word; + position: relative; + border-bottom: #EBF2F6 1px solid; +} + +.comments li:hover { + background-color: #F7F7F7; +} + +.comments li img { + vertical-align: sub; +} + +.comments .comment-content { + margin: 8px 0 0; +} + +.comments li.comment-body-ref { + position: absolute; + z-index: 10; + background-color: #EBF2F6; + border: #d5dbde 1px solid; + width: 86%; + left: 69px; +} + +.comments .post-meta { + margin-top: 0; +} + +#captcha, +#captchaReply { + height: 27px; + display: inline-block; + vertical-align: inherit; +} + +.read-next { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-box-align: stretch; + -webkit-align-items: stretch; + -ms-flex-align: stretch; + align-items: stretch; + margin-top: 10rem; +} + +.read-next-story { + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-box-flex: 1; + -webkit-flex-grow: 1; + -ms-flex-positive: 1; + flex-grow: 1; + min-width: 50%; + text-decoration: none; + position: relative; + text-align: center; + color: #fff; + background: #222 no-repeat center center; + background-size: cover; + overflow: hidden; +} +.read-next-story a { + color: #BBB; +} + +.read-next-story a:hover { + color: #FFF; +} +.read-next-story:hover:before { + background: rgba(0,0,0,0.8); + transition: all 0.2s ease; +} +.read-next-story:hover .post:before { + color: #222; + background: #fff; + transition: all 0.2s ease; +} + +.read-next-story:before { + content: ""; + display: block; + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + background: rgba(0,0,0,0.7); + transition: all 0.5s ease; +} + +.read-next-story .post { + padding-top: 6rem; + padding-bottom: 6rem; + width: 80%; + position: relative; + margin: 0 auto; +} + +.read-next-story .post:before { + content: "Read This Next"; + padding: 4px 10px 5px; + text-transform: uppercase; + font-size: 1.1rem; + font-family: "Open Sans", "Microsoft Yahei", 'Helvetica'; + color: rgba(255,255,255,0.8); + border: 1px solid rgba(255,255,255,0.5); + border-radius: 4px; + transition: all 0.5s ease; +} +.read-next-story.prev .post:before { + content: "Read This Before"; +} + +.read-next-story h2 { + margin-top: 1rem; + color: #fff; +} + +.read-next-story p { + margin: 0; + color: rgba(255,255,255,0.8); +} + +.read-next + .site-footer { + position: absolute; + bottom: 0; + left: 0; + right: 0; + margin: 0; +} +/* end article */ + +/* start tags */ +#tags { + padding: 0; +} + +#tags li { + list-style: none; + float: left; +} + +#tags li a { + border: 1px solid #4A4A4A; + display: inline-block; + padding: 10px; + margin: 1rem; + border-radius: 5px; + text-decoration: none; +} + +#tags li a:hover { + border: 1px solid #FFF; + color: #FFF; + background-color: #4A4A4A; +} +/* end tags */ + +/* start dynamic */ +.dynamic .read-next-story > div { + position: relative; + width: 60%; + margin: 50px auto; + text-align: left; +} + +.dynamic a { + text-decoration: none; + margin: 0; + color: rgba(255,255,255,0.8); +} + +.dynamic a:hover { + color: rgba(255,255,255,0.5); +} +/* end dynamic */ + +/* start footer */ +.site-footer { + position: relative; + margin: 8rem 0 0 0; + padding: 1rem 15px; + font-family: "Open Sans", "Microsoft Yahei", 'Helvetica'; + font-size: 1rem; + line-height: 1.75em; + color: #BBC7CC; +} + +.site-footer a { + color: #BBC7CC; + font-weight: bold; + text-decoration: none; +} + +.site-footer a:hover { + text-decoration: underline; +} +/* end footer */ +@media only screen and (max-width: 900px) { + + blockquote { + margin-left: 0; + } + + .main-header { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + height: auto; + min-height: 240px; + height: 60vh; + padding: 15% 0; + } + + .scroll-down { + display: none; + } + + .page-title, + .page-title a { + font-size: 4rem; + letter-spacing: -1px; + } + + .page-description, + .page-description a { + font-size: 1.8rem; + line-height: 1.5em; + } + + .post { + font-size: 0.95em + } + + hr { + margin: 2.4em 0; + } + + ol, ul { + padding-left: 2em; + } + + h1 { + font-size: 4.5rem; + text-indent: -2px; + } + + h2 { + font-size: 3.6rem; + } + + h3 { + font-size: 3.1rem; + } + + h4 { + font-size: 2.5rem; + } + + h5 { + font-size: 2.2rem; + } + + h6 { + font-size: 1.8rem; + } + + .read-next { + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + margin-top: 4rem; + } +} + +@media only screen and (max-width: 500px) { + + .main-header { + margin-bottom: 15px; + height: 40vh; + } + + .pagination { + width: auto; + margin: 2rem auto; + } + + .post { + width: auto; + margin-top: 2rem; + margin-bottom: 2rem; + margin-left: 16px; + margin-right: 16px; + padding-bottom: 2rem; + line-height: 1.65em; + } + + hr { + margin: 1.75em 0; + } + + p, ul, ol, dl { + font-size: 0.95em; + margin: 0 0 2.5rem 0; + } + + .page-title, + .page-title a { + font-size: 3rem; + } + + .post-excerpt p { + font-size: 0.85em; + } + + .page-description, + .page-description a { + font-size: 1.6rem; + } + + h1, h2, h3, + h4, h5, h6 { + margin: 0 0 0.3em 0; + } + + h1 { + font-size: 2.8rem; + letter-spacing: -1px; + } + + h2 { + font-size: 2.4rem; + letter-spacing: 0; + } + + h3 { + font-size: 2.1rem; + } + + h4 { + font-size: 1.9rem; + } + + h5 { + font-size: 1.8rem; + } + + h6 { + font-size: 1.8rem; + } + + .post-content img { + padding: 0; + width: calc(100% + 32px); /* expand with to image + margins */ + min-width: 0; + max-width: 112%; /* fallback when calc doesn't work */ + } + + .post-meta { + font-size: 1.3rem; + margin-top: 1rem; + } + + .site-footer { + margin-top: 3rem; + } + + .read-next { + margin-top: 2rem; + margin-bottom: -37px; + } + + .read-next .post { + width: 100%; + } + + .menu-button { + border: 0; + top: 0; + right: 0; + } + + .nav-closed .menu-button:hover { + color: #FFF; + background-color: transparent; + } + + .nav-opened .menu-button { + display: none; + } + + .post-author { + width: 40px; + height: 40px; + bottom: -37px; + padding: 3px; + margin-left: -20px; + } + + .post-author a { + width: 34px; + height: 34px; + display: block; + border-radius: 17px; + } + + .nav .count { + line-height: 1.5rem; + } + + #tags li a { + padding: 0 5px; + } +} diff --git a/finding/css/finding.min.css b/finding/css/finding.min.css new file mode 100644 index 0000000..b81fa59 --- /dev/null +++ b/finding/css/finding.min.css @@ -0,0 +1 @@ +@charset "utf-8";body,html{height:100%;max-height:100%}body,dl,h1,h2,h3,h4,h5,h6,ol,p,ul{text-rendering:geometricPrecision}blockquote cite,dl dt{font-weight:700}.fn-left,dl dt{float:left}#emotions span,.icon-gotop,.share .icon{cursor:pointer}.nav li a,dl dt{white-space:nowrap;text-overflow:ellipsis}#tags li,.nav ul,ul.comments{list-style:none}html{font-size:62.5%;-webkit-tap-highlight-color:transparent}body{font-family:Merriweather,"Microsoft Yahei",Helvetica;letter-spacing:.01rem;font-size:1.8rem;line-height:1.75em;color:#3A4145;-webkit-font-feature-settings:'kern' 1;-moz-font-feature-settings:'kern' 1;-o-font-feature-settings:'kern' 1;margin:0}::-moz-selection{background:#D6EDFF}::selection{background:#D6EDFF}a{color:#4A4A4A;transition:color .3s ease}a:hover{color:#111}h1,h2,h3,h4,h5,h6{-webkit-font-feature-settings:'dlig' 1,'liga' 1,'lnum' 1,'kern' 1;-moz-font-feature-settings:'dlig' 1,'liga' 1,'lnum' 1,'kern' 1;-o-font-feature-settings:'dlig' 1,'liga' 1,'lnum' 1,'kern' 1;color:#2E2E2E;line-height:1.15em;font-family:"Open Sans","Microsoft Yahei",Helvetica}h1{font-size:5rem;letter-spacing:-2px;text-indent:-3px}.page-title a,h2{letter-spacing:-1px}h2{font-size:3.6rem}h3{font-size:3rem}h4{font-size:2.5rem}h5,h6{font-size:2rem}img{max-width:100%}dl,ol,p,ul{-webkit-font-feature-settings:'liga' 1,'onum' 1,'kern' 1;-moz-font-feature-settings:'liga' 1,'onum' 1,'kern' 1;-o-font-feature-settings:'liga' 1,'onum' 1,'kern' 1;margin:0 0 1.75em}dl dd,dl dt{margin-bottom:1em}ol,ul{padding-left:3rem}ol ol,ol ul,ul ol,ul ul{padding-left:2em}dl dt{width:180px;overflow:hidden;clear:left;text-align:right}dl dd{margin-left:200px}li li{margin:0}hr{display:block;height:1px;border:0;border-top:#EFEFEF 1px solid;margin:3.2em 0;padding:0}blockquote{box-sizing:border-box;margin:1.75em 0 1.75em -2.2em;padding:0 0 0 1.75em;border-left:#4A4A4A .4em solid}blockquote,pre{-moz-box-sizing:border-box}blockquote p{margin:.8em 0;font-style:italic}blockquote small{display:inline-block;margin:.8em 0 .8em 1.5em;font-size:.9em;color:#CCC}blockquote small:before{content:"\2014 \00A0"}blockquote cite a{font-weight:400}mark{background-color:#fdffb6}code,tt{padding:1px 3px;font-size:.85em;white-space:pre-wrap;border-radius:2px}code,pre,tt{border:1px solid #E3EDF3;font-family:Inconsolata,monospace,"Microsoft Yahei",Helvetica;background:#F7FAFB}pre{box-sizing:border-box;margin:0 0 1.75em;width:100%;padding:10px;font-size:.9em;white-space:pre;overflow:auto;border-radius:3px}pre code,pre tt{font-size:inherit;white-space:pre-wrap;background:0 0;border:none;padding:0}.fn-clear:after,.fn-clear:before{display:table;content:""}.fn-clear:after{clear:both}.fn-right{float:right}.fn-none{display:none}.fn-vertical{display:table-cell;vertical-align:middle}.comments li img,.icon-menu:before{vertical-align:sub}.fn-wrap{width:80%;max-width:768px;margin:0 auto}@-webkit-keyframes fade-in-down{0%{opacity:0;-webkit-transform:translateY(-10px);transform:translateY(-10px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fade-in-down{0%{opacity:0;-webkit-transform:translateY(-10px);transform:translateY(-10px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes bounce{0%,10%,25%,40%,50%{-webkit-transform:translateY(0);transform:translateY(0)}20%{-webkit-transform:translateY(-10px);transform:translateY(-10px)}30%{-webkit-transform:translateY(-5px);transform:translateY(-5px)}}@keyframes bounce{0%,100%,20%,50%,80%{-webkit-transform:translateY(0);transform:translateY(0)}40%{-webkit-transform:translateY(-10px);transform:translateY(-10px)}60%{-webkit-transform:translateY(-5px);transform:translateY(-5px)}}@-webkit-keyframes upbounce{0%,10%,25%,40%,50%{-webkit-transform:translateY(0);transform:translateY(0)}20%{-webkit-transform:translateY(-10px);transform:translateY(-10px)}30%{-webkit-transform:translateY(-5px);transform:translateY(-5px)}}@keyframes upbounce{0%,100%,20%,50%,80%{-webkit-transform:translateY(0);transform:translateY(0)}40%{-webkit-transform:translateY(-10px);transform:translateY(-10px)}60%{-webkit-transform:translateY(-5px);transform:translateY(-5px)}}@font-face{font-family:icomoon;src:url(fonts/icomoon.eot?v=1);src:url(fonts/icomoon.eot?v=1#iefix) format("embedded-opentype"),url(fonts/icomoon.woff?v=1) format("woff"),url(fonts/icomoon.ttf?v=1) format("truetype"),url(fonts/icomoon.svg?v=1#icons) format("svg");font-weight:400;font-style:normal}[class*=" icon-"]:before,[class^=icon-]:before{font-size:2rem;font-family:icomoon,"Open Sans","Microsoft Yahei",Helvetica;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;text-decoration:none!important;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-arrow-left:before{content:"\f605";font-size:3.5rem}.icon-menu:before{content:"\f609"}.icon-login:before{content:"\e611"}.icon-logout:before{content:"\e601"}.icon-setting:before{content:"\e602"}.icon-register:before{content:"\e600"}.avatar{border-radius:100%;float:left;height:24px;margin-right:9px;width:24px}.avatar-warp{width:10%;padding-right:10px;box-sizing:border-box}.avatar-48{box-shadow:0 0 2px #ddd;height:auto;width:48px;margin-right:10px;border-radius:24px}.form{width:100%;margin-top:50px}.form button,.form input,.form textarea{border:1px solid #CCC;background-color:#FAFAFA;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.075) inset;padding:7px 8px;width:100%;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;font-family:Merriweather,"Microsoft Yahei",Helvetica}.form button{width:auto;vertical-align:bottom}.form input:focus,.form textarea:focus{background-color:#FFF;box-shadow:0 1px 2px rgba(0,0,0,.075) inset,0 0 5px rgba(81,167,232,.5);border:1px solid #51A7E8}.error-msg{font-size:1.5rem;color:#9EABB3}.cmtFromSym{font-size:1rem;color:#9EABB3}.em00,.em01,.em02,.em03,.em04,.em05,.em06,.em07,.em08,.em09,.em10,.em11,.em12,.em13,.em14{background-image:url(../images/emotions/emotions-ease.png);float:left;height:24px;margin-right:5px;width:24px}.em01{background-position:-24px 0}.em02{background-position:-48px 0}.em03{background-position:-72px 0}.em04{background-position:-96px 0}.em05{background-position:0 -24px}.em06{background-position:-24px -24px}.em07{background-position:-48px -24px}.em08{background-position:-72px -24px}.em09{background-position:-96px -24px}.em10{background-position:0 -48px}.em11{background-position:-24px -48px}.em12{background-position:-48px -48px}.em13{background-position:-72px -48px}.em14{background-position:-96px -48px}.main-header{position:relative;display:table;width:100%;height:100vh;margin-bottom:5rem;text-align:center;background:url(../images/header-bg.jpg) center center no-repeat #222;background-size:cover;overflow:hidden;min-height:50vh}.menu-button:hover,.site-wrapper{background:#fff}.site-wrapper{position:relative;z-index:10;min-height:100%;-webkit-transition:-webkit-transform .5s ease;transition:transform .5s ease}.menu-button,.scroll-down{text-decoration:none;text-align:center;position:absolute}.nav-opened .site-wrapper{overflow-x:hidden;-webkit-transform:translate3D(-240px,0,0);-ms-transform:translate3D(-240px,0,0);transform:translate3D(-240px,0,0);-webkit-transition:-webkit-transform .3s ease;transition:transform .3s ease}.page-title a{-webkit-animation:fade-in-down .6s;animation:fade-in-down .6s;-webkit-animation-delay:.2s;animation-delay:.2s;margin:10px 0;font-size:5rem;font-weight:700;font-family:"Open Sans","Microsoft Yahei",Helvetica;color:#fff;text-shadow:0 0 3px rgba(0,0,0,.9);text-decoration:none}.page-description,.page-description a{-webkit-animation:fade-in-down .9s;animation:fade-in-down .9s;-webkit-animation-delay:.1s;animation-delay:.1s;margin:0;font-size:2rem;line-height:1.5em;font-weight:400;letter-spacing:.01rem;color:rgba(255,255,255,.8)}.scroll-down{display:block;z-index:100;bottom:45px;left:50%;margin-left:-16px;width:34px;height:34px;font-size:34px;color:rgba(255,255,255,.7);-webkit-animation:bounce 4s 2s infinite;animation:bounce 4s 2s infinite}.scroll-down:hover{color:#fff;-webkit-animation:none;animation:none}.menu-button{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:inline-block;float:right;height:38px;padding:0 15px;border-style:solid;border-width:1px;opacity:1;font-size:12px;text-transform:uppercase;line-height:35px;white-space:nowrap;border-radius:3px;transition:all .5s ease;right:20px;top:40px;font-family:'Open Sans',"Microsoft Yahei",Helvetica;z-index:30}.pagination,.post-meta,.read-next-story .post:before,.site-footer{font-family:"Open Sans","Microsoft Yahei",Helvetica}.menu-button:focus{outline:0}.nav-closed .menu-button{color:#fff;border-color:rgba(255,255,255,.6)}.nav-closed .menu-button:hover{color:#222}.nav-opened .menu-button{padding:0 12px;background:#111;border-color:#111;color:#fff;-webkit-transform:translate3D(50px,0,0);-ms-transform:translate3D(50px,0,0);transform:translate3D(50px,0,0);transition:all .3s ease}.nav-opened .menu-button .word{opacity:0;transition:all .3s ease}.nav{position:fixed;top:0;right:0;bottom:0;z-index:5;width:220px;padding:10px 10px 0;opacity:0;background:#111;margin-bottom:0;text-align:left;overflow-y:auto;color:#FFF;-webkit-transition:-webkit-transform .5s ease,opacity .3s ease .7s;transition:transform .5s ease,opacity .3s ease .7s;overflow-x:hidden}.nav ul{margin:0;padding:0 0 5%;counter-reset:item}.nav li{height:30px;line-height:1.4rem}.nav li:before{display:block;float:right;padding-right:4%;padding-left:5px;text-align:right;font-size:1.2rem;vertical-align:bottom;color:#B8B8B8;content:counter(item,lower-roman);counter-increment:item;line-height:2.5rem}.nav a{color:#B8B8B8;text-decoration:none;line-height:1.4;font-size:1.4rem}.nav a:hover{color:#FFF}.nav li a{display:block;padding:.6rem 4%;overflow:hidden}.nav li a:after{display:inline-block;content:" .......................................................";color:rgba(255,255,255,.2);margin-left:5px}.nav .count{position:absolute;bottom:10px;font-size:1rem;width:100%;word-wrap:normal;word-break:break-all;white-space:nowrap}.nav [class^=icon-]{color:#FFF}.nav [class^=icon-]:hover{color:#B8B8B8}body.nav-closed .nav{-webkit-transform:translate3D(97px,0,0);-ms-transform:translate3D(97px,0,0);transform:translate3D(97px,0,0)}body.nav-opened .nav{opacity:1;-webkit-transition:-webkit-transform .3s ease,opacity 0s ease 0s;transition:transform .3s ease,opacity 0s ease 0s;-webkit-transform:translate3D(0,0,0);-ms-transform:translate3D(0,0,0);transform:translate3D(0,0,0)}article.post{position:relative;margin:4rem auto;padding-bottom:4rem;border-bottom:#EBF2F6 1px solid;word-wrap:break-word;width:80%}article.post:after{display:block;content:"";width:7px;height:7px;border:1px solid #E7EEF2;position:absolute;bottom:-5px;left:50%;margin-left:-5px;background:#FFF;border-radius:100%;box-shadow:#FFF 0 0 0 5px}.post-meta time,.post-tip{text-transform:uppercase;display:inline-block;white-space:nowrap}.post-title a{text-decoration:none}.post-tip{font-size:1.3rem;color:#9EABB3}.post-excerpt p{margin:0;font-size:.9em;line-height:1.7em}.post-meta{color:#9eabb3;font-size:1.5rem;line-height:2.2rem;margin:1.75rem 0 0}.post-meta a{color:#9EABB3;text-decoration:none}.post-meta a:hover{text-decoration:underline}#tags li a,.dynamic a,.icon-gotop,.pagination a,.read-next-story,.site-footer a{text-decoration:none}.post-meta time{border-left:1px solid #d5dbde;font-size:1.3rem;margin-left:8px;padding-left:12px}.post-author{box-sizing:border-box;display:block;position:absolute;bottom:-57px;left:50%;margin-left:-40px;width:80px;height:80px;border-radius:100%;overflow:hidden;padding:6px;background:#fff;z-index:2;box-shadow:#E7EEF2 0 0 0 1px}.post-author a{background-size:cover;background-position:center center;width:68px;height:68px;display:block;border-radius:35px}.share .icon{transition:all .2s ease-out 0s;display:inline-block;font-size:16px;margin-top:15px}.share .icon:hover{transform:rotate(360deg);color:#9EABB3}.icon-weibo:before{content:"\e605"}.icon-twitter:before{content:"\e60b"}.icon-tencent:before{content:"\e60d"}.icon-google:before{content:"\e603"}.icon-gotop:before{content:"\E60A";font-weight:700}.icon-gotop{position:fixed;bottom:30px;right:30px;-webkit-animation:upbounce 4s 2s infinite;animation:upbounce 4s 2s infinite;z-index:10}.icon-gotop:hover{color:#B8B8B8;-webkit-animation:none;animation:none}.pagination{font-size:1.3rem;color:#9eabb3;text-align:center}.pagination a{color:#9EABB3;transition:all .2s ease;padding:0 15px;border:1px solid #bfc8cd;display:inline-block;border-radius:4px}.pagination a:hover{border-color:#98a0a4;color:#889093}ul.comments{padding:0;margin-top:100px;position:relative}.comments li{padding:10px;white-space:normal;word-wrap:break-word;position:relative;border-bottom:#EBF2F6 1px solid}.comments li:hover{background-color:#F7F7F7}.comments .comment-content{margin:8px 0 0}.comments li.comment-body-ref{position:absolute;z-index:10;background-color:#EBF2F6;border:1px solid #d5dbde;width:86%;left:69px}.comments .post-meta{margin-top:0}#captcha,#captchaReply{height:27px;display:inline-block;vertical-align:inherit}.read-next,.read-next-story{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox}.read-next{display:flex;-webkit-box-align:stretch;-webkit-align-items:stretch;-ms-flex-align:stretch;align-items:stretch;margin-top:10rem}.read-next-story{display:flex;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;min-width:50%;position:relative;text-align:center;color:#fff;background:center center no-repeat #222;background-size:cover;overflow:hidden}.read-next-story a{color:#BBB}.read-next-story a:hover{color:#FFF}.read-next-story:hover:before{background:rgba(0,0,0,.8);transition:all .2s ease}.read-next-story:hover .post:before{color:#222;background:#fff;transition:all .2s ease}.read-next-story:before{content:"";display:block;position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.7);transition:all .5s ease}.read-next-story .post{padding-top:6rem;padding-bottom:6rem;width:80%;position:relative;margin:0 auto}.read-next-story .post:before{content:"Read This Next";padding:4px 10px 5px;text-transform:uppercase;font-size:1.1rem;color:rgba(255,255,255,.8);border:1px solid rgba(255,255,255,.5);border-radius:4px;transition:all .5s ease}.read-next-story.prev .post:before{content:"Read This Before"}.read-next-story h2{margin-top:1rem;color:#fff}.read-next-story p{margin:0;color:rgba(255,255,255,.8)}.read-next+.site-footer{position:absolute;bottom:0;left:0;right:0;margin:0}#tags{padding:0}#tags li{float:left}#tags li a{border:1px solid #4A4A4A;display:inline-block;padding:10px;margin:1rem;border-radius:5px}#tags li a:hover{border:1px solid #FFF;color:#FFF;background-color:#4A4A4A}.dynamic .read-next-story>div{position:relative;width:60%;margin:50px auto;text-align:left}.dynamic a{margin:0;color:rgba(255,255,255,.8)}.dynamic a:hover{color:rgba(255,255,255,.5)}.site-footer{position:relative;margin:8rem 0 0;padding:1rem 15px;font-size:1rem;line-height:1.75em;color:#BBC7CC}.site-footer a{color:#BBC7CC;font-weight:700}.site-footer a:hover{text-decoration:underline}@media only screen and (max-width:900px){blockquote{margin-left:0}.main-header{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;min-height:240px;height:60vh;padding:15% 0}.scroll-down{display:none}.page-title,.page-title a{font-size:4rem;letter-spacing:-1px}.page-description,.page-description a{font-size:1.8rem;line-height:1.5em}.post{font-size:.95em}hr{margin:2.4em 0}ol,ul{padding-left:2em}h1{font-size:4.5rem;text-indent:-2px}h2{font-size:3.6rem}h3{font-size:3.1rem}h4{font-size:2.5rem}h5{font-size:2.2rem}h6{font-size:1.8rem}.read-next{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;margin-top:4rem}}@media only screen and (max-width:500px){.main-header{margin-bottom:15px;height:40vh}.pagination{width:auto;margin:2rem auto}.post{width:auto;padding-bottom:2rem;line-height:1.65em;margin:2rem 16px}hr{margin:1.75em 0}dl,ol,p,ul{font-size:.95em;margin:0 0 2.5rem}.page-title,.page-title a{font-size:3rem}.post-excerpt p{font-size:.85em}.page-description,.page-description a{font-size:1.6rem}h1,h2,h3,h4,h5,h6{margin:0 0 .3em}h1{font-size:2.8rem;letter-spacing:-1px}h2{font-size:2.4rem;letter-spacing:0}h3{font-size:2.1rem}h4{font-size:1.9rem}h5,h6{font-size:1.8rem}.post-content img{padding:0;width:calc(100% + 32px);min-width:0;max-width:112%}.post-meta{font-size:1.3rem;margin-top:1rem}.site-footer{margin-top:3rem}.read-next{margin-top:2rem;margin-bottom:-37px}.read-next .post{width:100%}.menu-button{border:0;top:0;right:0}.nav-closed .menu-button:hover{color:#FFF;background-color:transparent}.nav-opened .menu-button{display:none}.post-author{width:40px;height:40px;bottom:-37px;padding:3px;margin-left:-20px}.post-author a{width:34px;height:34px;display:block;border-radius:17px}.nav .count{line-height:1.5rem}#tags li a{padding:0 5px}} \ No newline at end of file diff --git a/finding/css/fonts/icomoon.eot b/finding/css/fonts/icomoon.eot new file mode 100644 index 0000000..69965ea Binary files /dev/null and b/finding/css/fonts/icomoon.eot differ diff --git a/finding/css/fonts/icomoon.svg b/finding/css/fonts/icomoon.svg new file mode 100644 index 0000000..48ff38a --- /dev/null +++ b/finding/css/fonts/icomoon.svg @@ -0,0 +1,21 @@ + + + +Generated by IcoMoon + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/finding/css/fonts/icomoon.ttf b/finding/css/fonts/icomoon.ttf new file mode 100644 index 0000000..07205a3 Binary files /dev/null and b/finding/css/fonts/icomoon.ttf differ diff --git a/finding/css/fonts/icomoon.woff b/finding/css/fonts/icomoon.woff new file mode 100644 index 0000000..73d4bbc Binary files /dev/null and b/finding/css/fonts/icomoon.woff differ diff --git a/finding/dynamic.ftl b/finding/dynamic.ftl new file mode 100644 index 0000000..aeee27b --- /dev/null +++ b/finding/dynamic.ftl @@ -0,0 +1,101 @@ +<#include "macro-head.ftl"> + + + + <@head title="${blogTitle}"> + + + + + + +
+ <#include "header.ftl"> +
+ <#if 0 != recentComments?size> + + +
+ + <#if 0 != mostCommentArticles?size || 0 != mostViewCountArticles?size> + + + <#include "footer.ftl"> +
+ + + diff --git a/finding/footer.ftl b/finding/footer.ftl new file mode 100644 index 0000000..8fc078b --- /dev/null +++ b/finding/footer.ftl @@ -0,0 +1,44 @@ + + + + + +${plugins} diff --git a/finding/header.ftl b/finding/header.ftl new file mode 100644 index 0000000..824b3fb --- /dev/null +++ b/finding/header.ftl @@ -0,0 +1,23 @@ +
style='height:30vh;'> +
+ Menu +
+
+
+

+ ${blogTitle} + <#if "" != noticeBoard> +   ${blogSubtitle} + +

+

+ <#if "" != noticeBoard> + ${noticeBoard} + <#else> + ${blogSubtitle} + +

+
+
+ <#if isIndex> +
\ No newline at end of file diff --git a/finding/images/emotions/em00.png b/finding/images/emotions/em00.png new file mode 100644 index 0000000..53df885 Binary files /dev/null and b/finding/images/emotions/em00.png differ diff --git a/finding/images/emotions/em01.png b/finding/images/emotions/em01.png new file mode 100644 index 0000000..c056d33 Binary files /dev/null and b/finding/images/emotions/em01.png differ diff --git a/finding/images/emotions/em02.png b/finding/images/emotions/em02.png new file mode 100644 index 0000000..21fbad3 Binary files /dev/null and b/finding/images/emotions/em02.png differ diff --git a/finding/images/emotions/em03.png b/finding/images/emotions/em03.png new file mode 100644 index 0000000..ab8962d Binary files /dev/null and b/finding/images/emotions/em03.png differ diff --git a/finding/images/emotions/em04.png b/finding/images/emotions/em04.png new file mode 100644 index 0000000..c895cff Binary files /dev/null and b/finding/images/emotions/em04.png differ diff --git a/finding/images/emotions/em05.png b/finding/images/emotions/em05.png new file mode 100644 index 0000000..f24350a Binary files /dev/null and b/finding/images/emotions/em05.png differ diff --git a/finding/images/emotions/em06.png b/finding/images/emotions/em06.png new file mode 100644 index 0000000..f84ba88 Binary files /dev/null and b/finding/images/emotions/em06.png differ diff --git a/finding/images/emotions/em07.png b/finding/images/emotions/em07.png new file mode 100644 index 0000000..9ad797d Binary files /dev/null and b/finding/images/emotions/em07.png differ diff --git a/finding/images/emotions/em08.png b/finding/images/emotions/em08.png new file mode 100644 index 0000000..6771967 Binary files /dev/null and b/finding/images/emotions/em08.png differ diff --git a/finding/images/emotions/em09.png b/finding/images/emotions/em09.png new file mode 100644 index 0000000..116be97 Binary files /dev/null and b/finding/images/emotions/em09.png differ diff --git a/finding/images/emotions/em10.png b/finding/images/emotions/em10.png new file mode 100644 index 0000000..0fd8a39 Binary files /dev/null and b/finding/images/emotions/em10.png differ diff --git a/finding/images/emotions/em11.png b/finding/images/emotions/em11.png new file mode 100644 index 0000000..6679ddc Binary files /dev/null and b/finding/images/emotions/em11.png differ diff --git a/finding/images/emotions/em12.png b/finding/images/emotions/em12.png new file mode 100644 index 0000000..9df73f3 Binary files /dev/null and b/finding/images/emotions/em12.png differ diff --git a/finding/images/emotions/em13.png b/finding/images/emotions/em13.png new file mode 100644 index 0000000..a602aaa Binary files /dev/null and b/finding/images/emotions/em13.png differ diff --git a/finding/images/emotions/em14.png b/finding/images/emotions/em14.png new file mode 100644 index 0000000..7883932 Binary files /dev/null and b/finding/images/emotions/em14.png differ diff --git a/finding/images/emotions/emotions-ease.png b/finding/images/emotions/emotions-ease.png new file mode 100644 index 0000000..727e407 Binary files /dev/null and b/finding/images/emotions/emotions-ease.png differ diff --git a/finding/images/header-bg.jpg b/finding/images/header-bg.jpg new file mode 100644 index 0000000..6999007 Binary files /dev/null and b/finding/images/header-bg.jpg differ diff --git a/finding/images/next.jpg b/finding/images/next.jpg new file mode 100644 index 0000000..8fc2031 Binary files /dev/null and b/finding/images/next.jpg differ diff --git a/finding/images/preview.jpg b/finding/images/preview.jpg new file mode 100644 index 0000000..076ee3f Binary files /dev/null and b/finding/images/preview.jpg differ diff --git a/finding/index.ftl b/finding/index.ftl new file mode 100644 index 0000000..bed3ffc --- /dev/null +++ b/finding/index.ftl @@ -0,0 +1,26 @@ +<#include "macro-head.ftl"> + + + + <@head title="${blogTitle}"> + <#if metaKeywords??> + + + <#if metaDescription??> + + + + + + +
+ <#include "header.ftl"> +
+ <#include "article-list.ftl"> +
+ <#include "footer.ftl"> +
+ + diff --git a/finding/js/finding.js b/finding/js/finding.js new file mode 100644 index 0000000..61ac641 --- /dev/null +++ b/finding/js/finding.js @@ -0,0 +1,84 @@ +/* + * Copyright (c) 2010-2015, b3log.org + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +/** + * @fileoverview util and every page should be used. + * + * @author Liyuan Li + * @version 1.0.0.0, Jun 13, 2015 + */ + +/** + * @description Finding 皮肤脚本 + * @static + */ +var Finding = { + /** + * @description 页面初始化 + */ + init: function () { + Util.killIE(); + $(".scroll-down").click(function (event) { + event.preventDefault(); + + var $this = $(this), + $htmlBody = $('html, body'), + offset = ($this.attr('data-offset')) ? $this.attr('data-offset') : false, + toMove = parseInt(offset); + + $htmlBody.stop(true, false).animate({scrollTop: ($(this.hash).offset().top + toMove)}, 500); + }); + + $('body').click(function (event) { + if ($(event.target).closest('.nav').length === 0 + && $("body").hasClass('nav-opened') + && !$(event.target).hasClass('icon-gotop')) { + $("body").removeClass('nav-opened').addClass('nav-closed'); + } + }); + + $(".menu-button").click(function (event) { + event.stopPropagation(); + $("body").toggleClass("nav-opened nav-closed"); + }); + + $('body').append(''); + $(window).scroll(function () { + if ($(window).scrollTop() > $(window).height()) { + $(".icon-gotop").show(); + } else { + $(".icon-gotop").hide(); + } + }); + }, + share: function () { + $(".share span").click(function () { + var key = $(this).data("type"); + var title = encodeURIComponent($("title").text()), + url = $(".post-title a").attr('href') ? $(".post-title a").attr('href') : location, + pic = $(".post-content img:eq(0)").attr("src"); + var urls = {}; + urls.tencent = "http://share.v.t.qq.com/index.php?c=share&a=index&title=" + title + + "&url=" + url + "&pic=" + pic; + urls.weibo = "http://v.t.sina.com.cn/share/share.php?title=" + + title + "&url=" + url + "&pic=" + pic; + urls.google = "https://plus.google.com/share?url=" + url; + urls.twitter = "https://twitter.com/intent/tweet?status=" + title + " " + url; + window.open(urls[key], "_blank", "top=100,left=200,width=648,height=618"); + }); + } +}; + +Finding.init(); \ No newline at end of file diff --git a/finding/js/finding.min.js b/finding/js/finding.min.js new file mode 100644 index 0000000..c69e241 --- /dev/null +++ b/finding/js/finding.min.js @@ -0,0 +1 @@ +var Finding={init:function(){Util.killIE(),$(".scroll-down").click(function(t){t.preventDefault();var e=$(this),n=$("html, body"),o=e.attr("data-offset")?e.attr("data-offset"):!1,a=parseInt(o);n.stop(!0,!1).animate({scrollTop:$(this.hash).offset().top+a},500)}),$("body").click(function(t){0===$(t.target).closest(".nav").length&&$("body").hasClass("nav-opened")&&$("body").removeClass("nav-opened").addClass("nav-closed")}),$(".menu-button, .nav-close").click(function(t){t.stopPropagation(),$("body").toggleClass("nav-opened nav-closed")})},share:function(){$(".share span").click(function(){var t=$(this).data("type"),e=encodeURIComponent($("title").text()),n=$(".post-title a").attr("href")?$(".post-title a").attr("href"):location,o=$(".post-content img:eq(0)").attr("src"),a={};a.tencent="http://share.v.t.qq.com/index.php?c=share&a=index&title="+e+"&url="+n+"&pic="+o,a.weibo="http://v.t.sina.com.cn/share/share.php?title="+e+"&url="+n+"&pic="+o,a.google="https://plus.google.com/share?url="+n,a.twitter="https://twitter.com/intent/tweet?status="+e+" "+n,window.open(a[t],"_blank","top=100,left=200,width=648,height=618")})}};Finding.init(); \ No newline at end of file diff --git a/finding/lang/lang_en_US.properties b/finding/lang/lang_en_US.properties new file mode 100644 index 0000000..b0631f1 --- /dev/null +++ b/finding/lang/lang_en_US.properties @@ -0,0 +1,274 @@ +# +# Copyright (c) 2009, 2010, 2011, B3log Team +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +# +# Description: B3log Solo language configurations(en_US). +# Version: 1.0.0.1, Jun 19, 2015 +# Author: Liyuan Li +# + +subscribeLabel=Subscribe +dynamicLabel=Dynamic +adminConsoleLabel=Admin +adminIndexLabel=Admin Index +postArticleLabel=Post +articleListLabel=Articles +commentListLabel=Comments +draftListLabel=Drafts +userManageLabel=Users +commonUserLabel=Common User +addUserLabel=Add User +updateUserLabel=Update User +linkManagementLabel=Links +pluginMgmtLabel=Plugins +pluginNameLabel=Name +versionLabel=Version +statusLabel=Status +enabledLabel=Enabled +disabledLabel=Disabled +enableLabel=Enable +disableLabel=Disable +preferenceLabel=Preference +localeString1Label=Language: +timeZoneId1Label=Time Zone: +adminLabel=Admin +administratorLabel=Administrator +loginLabel=Login +logoutLabel=Logout +initLabel=Initial +popTagsLabel=Popular Tags +tag1Label=Tag: +tags1Label=Tags: +recentArticlesLabel=Recent Articles +recentCommentsLabel=Recent Comments +postCommentsLabel=Post Comment +mostCommentArticlesLabel=Most Comment Articles +mostViewCountArticlesLabel=Most View Articles +em00Label=Smile +em01Label=Laughter +em02Label=Happy +em03Label=Sad +em04Label=Cry +em05Label=No Comments +em06Label=Fidget +em07Label=Angry +em08Label=Look Around +em09Label=Surprise +em10Label=Cool +em11Label=Cheeky +em12Label=Heart +em13Label=Heart Broken +em14Label=Devil +linkLabel=Friend Links +sumLabel= +pageLabel=Page +commentLabel=Comment +linkTitleLabel=Link Title +linkTitle1Label=Title: +updateLabel=Update +removeLabel=Remove +putTopLabel=Put Top +cancelPutTopLabel=Cancel Put Top +downloadCountLabel=Count +sizeLabel=Size +uploadDateLabel=Upload Date +downloadURLLabel=Download URL +downloadLabel=Download +createDateLabel=Create Date +updateDateLabel=Update Date +titleLabel=Title +title1Label=Title: +content1Label=Content: +abstract1Label=Summary: +publishLabel=Publish +unPublishLabel=Un Publish +urlLabel=URL +url1Label=URL (start protocol, e.g.: http://): +addLinkLabel=Add Link +updateLinkLabel=Update Link +archiveLabel=Archive +archive1Label=archive: +yearLabel= +monthLabel= +pageLabel=Page +pageMgmtLabel=Pages +othersLabel=Others +fileListLabel=Files +submitUploadLabel=Upload +fileNameLabel=File Name +paramSettingsLabel=Parameters +skinLabel=Skins +signLabel=Signs +sign1Label=Signs: +noSignLabel=No Signs +signIsNullLabel=This Sign is Null +statisticLabel=Blog Statistic +viewLabel=View +countLabel=Posts +viewCount1Label=View Count: +articleCount1Label=Article Count: +commentCountLabel=Comment Count +commentCount1Label=Comment Count: +commentEmotions1Label=Emotions: +commentEmotionsLabel=Emotions +commentName1Label=Name: +commentNameLabel=Name +commentEmail1Label=Email: +commentEmailLabel=Email +commentURL1Label=URL: +commentURLLabel=URL +commentContent1Label=Content: +commentContentLabel=Content +getDateLabel=Get Date +getArticleLabel=Get Article +selectDateLabel=Select Date +selectDate1Label=Select Date: +importLabel=Import +chooseBlog1Label=Choose Blog: +blogArticleImportLabel=Article Import +userName1Label=Username: +userPassword1Label=Password: +categoryLabel=Category +noticeBoard1Label=Notice Board: +noticeBoardLabel=Notice Board +htmlhead1Label=HTML head: +indexTagDisplayCnt1Label=Index Tag Display Count: +indexRecentArticleDisplayCnt1Label=Recent Article Display Count: +indexRecentCommentDisplayCnt1Label=Recent Comment Display Count: +indexMostCommentArticleDisplayCnt1Label=Most Comment Article Display Count: +indexMostViewArticleDisplayCnt1Label=Most View Article Display Count: +relevantArticlesDisplayCnt1Label=Relevant Article Display Count: +randomArticlesDisplayCnt1Label=Random Article Display Count: +externalRelevantArticlesDisplayCnt1Label=External Relevant Article Display Count: +windowSize1Label=Pagination Window Size: +pageSize1Label=Pagination Page Size: +blogTitle1Label=Blog Title: +blogSubtitle1Label=Blog Subtitle: +blogHost1Label=Blog Host: +submmitCommentLabel=Commit Comment +saveLabel=Save +tagLabel=Tag +tagsLabel=Tags +importedLabel=Imported +captcha1Label=Captcha: +captchaLabel=Captcha +indexLabel=Index +nextArticle1Label=Next: +previousArticle1Label=Previous: +updatedLabel=Updated! +topArticleLabel=Top! +CSDNBlogLabel=CSDN Blog +BlogJavaLabel=BlogJava +CnBlogsLabel=CnBlogs +previousPageLabel=Previous Page +nextPagePabel=Next Page +firstPageLabel=First Page +lastPageLabel=Last Page +returnTo1Label=Return to: +tencentLabel=Tencent +appKey1Label=App Key: +appSecret1Label=App Secret: +postToTencentMicroblogWhilePublishArticleLabel=Post to Tencent microblog while publish an article: +postToCommunityLabel=Post to Community: +authorizeTencentMicroblog1Label=Click to authorize: +googleLabel=Google +OAuthConsumerSecret1Label=OAuth Consumer Secret: +atomLabel=Atom +relevantArticles1Label=Relevant Articles: +randomArticles1Label=Random Articles: +externalRelevantArticles1Label=External Relevant Articles: +metaKeywords1Label=Meta Keywords: +metaDescription1Label=Meta Description: +removeUnusedTagsLabel=Remove Unused Tags +goTopLabel=Top +permalink1Label=Permalink: +permalinkLabel=Permalink +b3logLabel=B3LOG +killBrowserLabel=

Let's kill outdated and insecure browser!

Let's kill outdated and insecure browser for browser evolution, human progress and better experience.

You can download

+readmoreLabel=Read more\u00bb +readmore2Label=Read more +replyLabel=Reply\u00bb +homeLabel=Home +enableArticleUpdateHint1Label=Enable Article Update Hint: +allowVisitDraftViaPermalink1Label=Allow Visit Draft Via Link: +author1Label=Author: +authorLabel=Author +keyOfSolo1Label=Solo Key: +articleLabel=Article +tagArticlesLabel=Tag Articles +dateArticlesLabel=Archive Date Articles +authorArticlesLabel=Author Articles +indexArticleLabel=Index Articles +allTagsLabel=Tag Cloud +customizedPageLabel=Customized Page +killBrowserPageLabel=Kill Browser Page +pageNumLabel=Page Number +#### +forbiddenLabel=Forbidden Access! +sorryLabel=Sorry! +notFoundLabel=Not Found! +unPulbishSuccLabel=Un Publish Successfully +unPulbishFailLabel=Un Publish Fail +removeSuccLabel=Remove Successfully +removeFailLabel=Remove Fail +removeUserFailSkinNeedMulUsersLabel=Remove Fail, the current skin need multiple users! +putTopSuccLabel=Put Top Successfully +putTopFailLabel=Put Top Fail +cancelTopSuccLabel=Cancel Top Successfully +cancelTopFailLabel=Cancel Top Fail +addSuccLabel=Add Successfully +addFailLabel=Add Fail +updateSuccLabel=Update Successfully +updateFailLabel=Update Fail +updatePreferenceFailNeedMulUsersLabel=Update Fail, the selected skin need multiple users! +setFailLabel=Set Fail +setSuccLabel=Set Successfully +getFailLabel=Get Fail +noSettingLabel=No Setting +getSuccLabel=Get Successfully +importSuccLabel=Import Successfully :-) +importFailLabel=Some Import Fail %>_<% +noCommentLabel=No Comment +captchaErrorLabel=Captcha Error +inputErrorLabel=Input Error! +gotoLabel=Go +nameEmptyLabel=Username is empty +passwordEmptyLabel=Password is empty +blogEmptyLabel=Blogging service is empty +blogArticleEmptyLabel=Please select articles +nameTooLongLabel=Sorry, your username must be between 2 and 20 characters long. +mailCannotEmptyLabel=Mail is empty +mailInvalidLabel=Mail is invalid +commentContentCannotEmptyLabel=Sorry, your content must be between 2 and 500 characters long. +captchaCannotEmptyLabel=Captcha is empty +loadingLabel=Loading.... +titleEmptyLabel=Title is empty +contentEmptyLabel=Content is empty +orderEmptyLabel=Order is empty +abstractEmptyLabel=Abstract is empty +tagsEmptyLabel=Tags is empty +addressEmptyLabel=Address is empty +noAuthorizationURLLabel=Can not retrieve authorization URL from Google, please \ +make sure the Consumer Secret you typed in and then try again. +duplicatedPermalinkLabel=Duplicated permalink! +invalidPermalinkFormatLabel=Invalid permalink format! +duplicatedEmailLabel=Duplicated email! +refreshAndRetryLabel=Please refresh and try again! +editorLeaveLabel=Content is not null, Do you leave\uff1f +editorPostLabel=Content is not null, Do you clear\uff1f +#### +confirmRemoveLabel=Are You Sure? +confirmInitLabel=Are You Sure? diff --git a/finding/lang/lang_zh_CN.properties b/finding/lang/lang_zh_CN.properties new file mode 100644 index 0000000..cdd4396 --- /dev/null +++ b/finding/lang/lang_zh_CN.properties @@ -0,0 +1,280 @@ +# +# Copyright (c) 2009, 2010, 2011, B3log Team +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +# +# Description: B3log Solo default language configurations(zh_CN). +# Version: 1.0.0.1, Jun 19, 2015 +# Author: Liyuan Li +# + +subscribeLabel=\u8ba2\u9605 +dynamicLabel=\u52a8\u6001 +adminConsoleLabel=\u540e\u53f0\u7ba1\u7406 +adminIndexLabel=\u540e\u53f0\u9996\u9875 +postArticleLabel=\u53d1\u5e03\u6587\u7ae0 +articleListLabel=\u6587\u7ae0\u7ba1\u7406 +commentListLabel=\u8bc4\u8bba\u7ba1\u7406 +draftListLabel=\u8349\u7a3f\u5939 +userManageLabel=\u7528\u6237\u7ba1\u7406 +commonUserLabel=\u4e00\u822c\u7528\u6237 +addUserLabel=\u6dfb\u52a0\u7528\u6237 +updateUserLabel=\u66f4\u65b0\u7528\u6237 +linkManagementLabel=\u94fe\u63a5\u7ba1\u7406 +pluginMgmtLabel=\u63d2\u4ef6\u7ba1\u7406 +pluginNameLabel=\u63d2\u4ef6\u540d +versionLabel=\u7248\u672c +statusLabel=\u72b6\u6001 +enabledLabel=\u5df2\u542f\u7528 +disabledLabel=\u5df2\u7981\u7528 +enableLabel=\u542f\u7528 +disableLabel=\u7981\u7528 +preferenceLabel=\u504f\u597d\u8bbe\u5b9a +localeString1Label=\u8bed\u8a00\uff1a +timeZoneId1Label=\u65f6\u533a\uff1a +adminLabel=\u7ba1\u7406 +administratorLabel=\u7ba1\u7406\u5458 +loginLabel=\u767b\u5f55 +logoutLabel=\u767b\u51fa +initLabel=\u521d\u59cb\u5316 +popTagsLabel=\u5206\u7c7b\u6807\u7b7e +tag1Label=\u6807\u7b7e\uff1a +tags1Label=\u6807\u7b7e\uff1a +recentArticlesLabel=\u6700\u65b0\u6587\u7ae0 +recentCommentsLabel=\u6700\u65b0\u8bc4\u8bba +postCommentsLabel=\u53d1\u8868\u8bc4\u8bba +mostCommentArticlesLabel=\u8bc4\u8bba\u6700\u591a\u7684\u6587\u7ae0 +mostViewCountArticlesLabel=\u8bbf\u95ee\u6700\u591a\u7684\u6587\u7ae0 +em00Label=\u5fae\u7b11 +em01Label=\u5927\u7b11 +em02Label=\u9ad8\u5174 +em03Label=\u60b2\u4f24 +em04Label=\u54ed\u6ce3 +em05Label=\u65e0\u8bed +em06Label=\u70e6\u8e81 +em07Label=\u751f\u6c14 +em08Label=\u6211\u7785 +em09Label=\u60ca\u8bb6 +em10Label=\u9177 +em11Label=\u987d\u76ae +em12Label=\u7231\u5fc3 +em13Label=\u5fc3\u788e +em14Label=\u9b54\u9b3c +linkLabel=\u53cb\u60c5\u94fe\u63a5 +sumLabel=\u5171 +pageLabel=\u9875 +commentLabel=\u8bc4\u8bba +linkTitleLabel=\u94fe\u63a5\u6807\u9898 +linkTitle1Label=\u6807\u9898\uff1a +updateLabel=\u66f4\u65b0 +removeLabel=\u5220\u9664 +putTopLabel=\u7f6e\u9876 +cancelPutTopLabel=\u53d6\u6d88\u7f6e\u9876 +downloadCountLabel=\u4e0b\u8f7d\u6b21\u6570 +sizeLabel=\u5927\u5c0f +uploadDateLabel=\u4e0a\u4f20\u65e5\u671f +downloadURLLabel=\u4e0b\u8f7d\u5730\u5740 +downloadLabel=\u4e0b\u8f7d +createDateLabel=\u521b\u5efa\u65e5\u671f +updateDateLabel=\u66f4\u65b0\u65e5\u671f +titleLabel=\u6807\u9898 +title1Label=\u6807\u9898\uff1a +content1Label=\u6b63\u6587\uff1a +abstract1Label=\u6458\u8981\uff1a +publishLabel=\u53d1\u5e03 +unPublishLabel=\u53d6\u6d88\u53d1\u5e03 +urlLabel=URL +url1Label=URL (\u8bf7\u4ee5\u534f\u8bae\u5f00\u5934\uff0c\u5982: http://)\uff1a +addLinkLabel=\u6dfb\u52a0\u94fe\u63a5 +updateLinkLabel=\u66f4\u65b0\u94fe\u63a5 +archiveLabel=\u5b58\u6863 +archive1Label=\u5b58\u6863\uff1a +yearLabel=\u5e74 +monthLabel=\u6708 +blogSyncLabel=\u535a\u5ba2\u540c\u6b65 +pageLabel=\u9875\u9762 +pageMgmtLabel=\u9875\u9762\u7ba1\u7406 +othersLabel=\u5176\u4ed6 +fileListLabel=\u6587\u4ef6\u7ba1\u7406 +submitUploadLabel=\u4e0a\u4f20 +fileNameLabel=\u6587\u4ef6\u540d +paramSettingsLabel=\u53c2\u6570\u8bbe\u7f6e +skinLabel=\u76ae\u80a4 +signLabel=\u7b7e\u540d\u6863 +sign1Label=\u7b7e\u540d\u6863\uff1a +noSignLabel=\u4e0d\u4f7f\u7528\u7b7e\u540d\u6863 +signIsNullLabel=\u8be5\u7b7e\u540d\u6863\u4e3a\u7a7a +statisticLabel=\u535a\u5ba2\u7edf\u8ba1 +viewLabel=\u6d4f\u89c8 +countLabel=\u7bc7 +viewCount1Label=\u6d4f\u89c8\u6b21\u6570\uff1a +articleCount1Label=\u6587\u7ae0\u603b\u6570\uff1a +commentCountLabel=\u8bc4\u8bba\u6570 +commentCount1Label=\u8bc4\u8bba\u603b\u6570\uff1a +commentEmotions1Label=\u8868\u60c5\uff1a +commentEmotionsLabel=\u8868\u60c5 +commentName1Label=\u59d3\u540d\uff1a +commentNameLabel=\u59d3\u540d +commentEmail1Label=\u90ae\u7bb1\uff1a +commentEmailLabel=\u90ae\u7bb1 +commentURL1Label=URL\uff1a +commentURLLabel=URL +commentContent1Label=\u8bc4\u8bba\u5185\u5bb9\uff1a +commentContentLabel=\u8bc4\u8bba\u5185\u5bb9 +getDateLabel=\u83b7\u53d6\u65e5\u671f +getArticleLabel=\u83b7\u53d6\u6587\u7ae0 +selectDateLabel=\u9009\u62e9\u65e5\u671f +selectDate1Label=\u9009\u62e9\u65e5\u671f\uff1a +importLabel=\u5bfc\u5165 +chooseBlog1Label=\u8bf7\u9009\u62e9\u9700\u8981\u7ba1\u7406\u7684\u535a\u5ba2\uff1a +blogArticleImportLabel=\u6587\u7ae0\u5bfc\u5165 +blogSyncMgmtLabel=\u535a\u5ba2\u540c\u6b65\u7ba1\u7406 +syncMgmtLabel=\u540c\u6b65\u7ba1\u7406\u535a\u5ba2 +userName1Label=\u7528\u6237\u540d\uff1a +userPassword1Label=\u5bc6\u7801\uff1a +syncPostLabel=\u540c\u6b65\u53d1\u5e03 +syncUpdateLabel=\u540c\u6b65\u66f4\u65b0 +syncRemoveLabel=\u540c\u6b65\u5220\u9664 +categoryLabel=\u5206\u7c7b +noticeBoard1Label=\u516c\u544a\uff1a +noticeBoardLabel=\u516c\u544a +htmlhead1Label=HTML head\uff1a +indexTagDisplayCnt1Label= \u9996\u9875\u6807\u7b7e\u663e\u793a\u6570\uff1a +indexRecentArticleDisplayCnt1Label=\u6700\u65b0\u6587\u7ae0\u663e\u793a\u6570\u76ee\uff1a +indexRecentCommentDisplayCnt1Label=\u6700\u65b0\u8bc4\u8bba\u663e\u793a\u6570\u76ee\uff1a +indexMostCommentArticleDisplayCnt1Label=\u8bc4\u8bba\u6700\u591a\u6587\u7ae0\u663e\u793a\u6570\u76ee\uff1a +indexMostViewArticleDisplayCnt1Label=\u8bbf\u95ee\u6700\u591a\u6700\u591a\u6587\u7ae0\u663e\u793a\u6570\u76ee\uff1a +relevantArticlesDisplayCnt1Label=\u76f8\u5173\u9605\u8bfb\u663e\u793a\u6570\u76ee\uff1a +randomArticlesDisplayCnt1Label=\u968f\u673a\u9605\u8bfb\u663e\u793a\u6570\u76ee\uff1a +externalRelevantArticlesDisplayCnt1Label=\u7ad9\u5916\u76f8\u5173\u9605\u8bfb\u663e\u793a\u6570\u76ee\uff1a +windowSize1Label=\u5206\u9875\u9875\u7801\u6700\u5927\u5bbd\u5ea6\uff1a +pageSize1Label=\u5206\u9875\u6bcf\u9875\u663e\u793a\u6587\u7ae0\u6570\uff1a +blogTitle1Label=\u535a\u5ba2\u6807\u9898\uff1a +blogSubtitle1Label=\u535a\u5ba2\u5b50\u6807\u9898\uff1a +blogHost1Label=\u535a\u5ba2\u5730\u5740\uff1a +submmitCommentLabel=\u63d0\u4ea4\u8bc4\u8bba +saveLabel=\u4fdd\u5b58 +tagLabel=\u6807\u7b7e +tagsLabel=\u6807\u7b7e +importedLabel=\u5df2\u5bfc\u5165 +captcha1Label=\u9a8c\u8bc1\u7801\uff1a +captchaLabel=\u9a8c\u8bc1\u7801 +indexLabel=\u9996\u9875 +nextArticle1Label=\u65b0\u4e00\u7bc7\uff1a +previousArticle1Label=\u65e7\u4e00\u7bc7\uff1a +updatedLabel=\u6709\u66f4\u65b0\uff01 +topArticleLabel=\u7f6e\u9876\uff01 +CSDNBlogLabel=CSDN \u535a\u5ba2 +BlogJavaLabel=BlogJava +CnBlogsLabel=\u535a\u5ba2\u56ed +previousPageLabel=\u4e0a\u4e00\u9875 +nextPagePabel=\u4e0b\u4e00\u9875 +firstPageLabel=\u7b2c\u4e00\u9875 +lastPageLabel=\u6700\u540e\u4e00\u9875 +returnTo1Label=\u8fd4\u56de\uff1a +tencentLabel=\u817e\u8baf +appKey1Label=App Key: +appSecret1Label=App Secret: +postToTencentMicroblogWhilePublishArticleLabel=\u53d1\u6587\u7ae0\u65f6\u540c\u6b65\u5230\u817e\u8baf\u5fae\u535a\uff1a +postToCommunityLabel=\u53d1\u5e03\u5230\u793e\u533a\uff1a +authorizeTencentMicroblog1Label=\u70b9\u51fb\u56fe\u6807\u8fdb\u884c\u6388\u6743: +googleLabel=Google +OAuthConsumerSecret1Label=OAuth Consumer Secret\uff1a +atomLabel=Atom +relevantArticles1Label=\u76f8\u5173\u9605\u8bfb\uff1a +randomArticles1Label=\u968f\u673a\u9605\u8bfb\uff1a +externalRelevantArticles1Label=\u7ad9\u5916\u76f8\u5173\u9605\u8bfb\uff1a +metaKeywords1Label=Meta Keywords: +metaDescription1Label=Meta Description: +removeUnusedTagsLabel=\u79fb\u9664\u672a\u4f7f\u7528\u6807\u7b7e +goTopLabel=\u9876\u90e8 +permalink1Label=\u94fe\u63a5\uff1a +permalinkLabel=\u94fe\u63a5 +b3logLabel=B3LOG +killBrowserLabel=

\u8ba9\u6211\u4eec\u653e\u5f03\u4f7f\u7528\u90a3\u4e9b\u8fc7\u65f6\u3001\u4e0d\u5b89\u5168\u7684\u6d4f\u89c8\u5668\u5427\uff01

\u4e3a\u4e86\u8ba9\u6d4f\u89c8\u5668\u66f4\u597d\u7684\u53d1\u5c55\uff0c\u4eba\u7c7b\u66f4\u52a0\u7684\u8fdb\u6b65\uff0c\u62e5\u6709\u66f4\u597d\u7684\u4f53\u9a8c\uff0c\u8ba9\u6211\u4eec\u653e\u5f03\u4f7f\u7528\u90a3\u4e9b\u8fc7\u65f6\u3001\u4e0d\u5b89\u5168\u7684\u6d4f\u89c8\u5668\u3002

\u60a8\u53ef\u4ee5\u4e0b\u8f7d +readmoreLabel=\u9605\u8bfb\u66f4\u591a\u00bb +readmore2Label=\u9605\u8bfb\u66f4\u591a +replyLabel=\u56de\u590d\u00bb +homeLabel=\u9996\u9875 +enableArticleUpdateHint1Label=\u542f\u7528\u6587\u7ae0\u66f4\u65b0\u63d0\u793a\uff1a +allowVisitDraftViaPermalink1Label=\u5141\u8bb8\u901a\u8fc7\u94fe\u63a5\u8bbf\u95ee\u8349\u7a3f\uff1a +author1Label=\u4f5c\u8005\uff1a +authorLabel=\u4f5c\u8005 +keyOfSolo1Label=Solo Key\uff1a +articleLabel=\u6587\u7ae0 +tagArticlesLabel=\u6807\u7b7e\u6587\u7ae0\u5217\u8868 +dateArticlesLabel=\u5b58\u6863\u6587\u7ae0\u5217\u8868 +authorArticlesLabel=\u4f5c\u8005\u6587\u7ae0\u5217\u8868 +indexArticleLabel=\u9996\u9875\u6587\u7ae0\u5217\u8868 +allTagsLabel=\u6807\u7b7e\u5899 +customizedPageLabel=\u81ea\u5b9a\u4e49\u9875\u9762 +killBrowserPageLabel=Kill Browser Page +pageNumLabel=\u9875\u53f7 +#### +forbiddenLabel=\u64cd\u4f5c\u88ab\u7981\u6b62\uff01 +sorryLabel=\u5bf9\u4e0d\u8d77\uff01 +notFoundLabel=\u627e\u4e0d\u5230\uff01 +unPulbishSuccLabel=\u53d6\u6d88\u53d1\u5e03\u6210\u529f +unPulbishFailLabel=\u53d6\u6d88\u53d1\u5e03\u5931\u8d25 +removeSuccLabel=\u5220\u9664\u6210\u529f +removeFailLabel=\u5220\u9664\u5931\u8d25 +removeUserFailSkinNeedMulUsersLabel=\u5220\u9664\u5931\u8d25\uff0c\u5f53\u524d\u4f7f\u7528\u7684\u76ae\u80a4\u9700\u8981\u591a\u7528\u6237\u652f\u6301 +putTopSuccLabel=\u7f6e\u9876\u6210\u529f +putTopFailLabel=\u7f6e\u9876\u5931\u8d25 +cancelTopSuccLabel=\u53d6\u6d88\u7f6e\u9876\u6210\u529f +cancelTopFailLabel=\u53d6\u6d88\u7f6e\u9876\u5931\u8d25 +addSuccLabel=\u6dfb\u52a0\u6210\u529f +addFailLabel=\u6dfb\u52a0\u5931\u8d25 +updateSuccLabel=\u66f4\u65b0\u6210\u529f +updateFailLabel=\u66f4\u65b0\u5931\u8d25 +updatePreferenceFailNeedMulUsersLabel=\u66f4\u65b0\u5931\u8d25\uff0c\u9700\u8981\u591a\u7528\u6237\u624d\u80fd\u4f7f\u7528\u9009\u62e9\u7684\u76ae\u80a4 +setFailLabel=\u8bbe\u7f6e\u5931\u8d25 +setSuccLabel=\u8bbe\u7f6e\u6210\u529f +getFailLabel=\u83b7\u53d6\u5931\u8d25 +noSettingLabel=\u8be5\u535a\u5ba2\u65e0\u8d26\u53f7\uff0c\u8bf7\u6dfb\u52a0 +getSuccLabel=\u83b7\u53d6\u6210\u529f +importSuccLabel=\u5bfc\u5165\u6210\u529f :-) +importFailLabel=\u90e8\u5206\u5bfc\u5165\u5931\u8d25 %>_<% +noCommentLabel=\u6682\u65e0\u8bc4\u8bba +captchaErrorLabel=\u9a8c\u8bc1\u7801\u9519\u8bef +inputErrorLabel=\u8f93\u5165\u9519\u8bef\uff01 +gotoLabel=\u8df3\u8f6c +nameEmptyLabel=\u59d3\u540d\u4e0d\u80fd\u4e3a\u7a7a\uff01 +passwordEmptyLabel=\u5bc6\u7801\u4e0d\u80fd\u4e3a\u7a7a\uff01 +blogEmptyLabel=\u8bf7\u9009\u62e9\u535a\u5ba2\u670d\u52a1\uff01 +blogArticleEmptyLabel=\u8bf7\u9009\u62e9\u9700\u8981\u5bfc\u5165\u7684\u6587\u7ae0 +nameTooLongLabel=\u59d3\u540d\u53ea\u80fd\u4e3a 2 \u5230 20 \u4e2a\u5b57\u7b26\uff01 +mailCannotEmptyLabel=\u90ae\u7bb1\u4e0d\u80fd\u4e3a\u7a7a\uff01 +mailInvalidLabel=\u90ae\u7bb1\u683c\u5f0f\u4e0d\u6b63\u786e\uff01 +commentContentCannotEmptyLabel=\u8bc4\u8bba\u5185\u5bb9\u53ea\u80fd\u4e3a 2 \u5230 500 \u4e2a\u5b57\u7b26\uff01 +captchaCannotEmptyLabel=\u9a8c\u8bc1\u7801\u4e0d\u80fd\u4e3a\u7a7a\uff01 +loadingLabel=\u8f7d\u5165\u4e2d.... +titleEmptyLabel=\u6807\u9898\u4e0d\u80fd\u4e3a\u7a7a\uff01 +contentEmptyLabel=\u5185\u5bb9\u4e0d\u80fd\u4e3a\u7a7a\uff01 +orderEmptyLabel=\u5e8f\u53f7\u4e0d\u80fd\u4e3a\u7a7a\uff01 +abstractEmptyLabel=\u6458\u8981\u4e0d\u80fd\u4e3a\u7a7a\uff01 +tagsEmptyLabel=\u6807\u7b7e\u4e0d\u80fd\u4e3a\u7a7a\uff01 +addressEmptyLabel=\u5730\u5740\u4e0d\u80fd\u4e3a\u7a7a\uff01 +noAuthorizationURLLabel=\u4ece Google \u83b7\u53d6\u6388\u6743\u5730\u5740\u5931\u8d25\uff0c\u8bf7\u786e\u8ba4\u60a8\u8f93\u5165\u7684 \ +Consumer Secret \u662f\u6b63\u786e\u7684\uff0c\u7136\u540e\u8fdb\u884c\u91cd\u8bd5\u3002 +duplicatedPermalinkLabel=\u94fe\u63a5\u91cd\u590d\uff01 +invalidPermalinkFormatLabel=\u975e\u6cd5\u7684\u94fe\u63a5\u683c\u5f0f\uff01 +duplicatedEmailLabel=\u90ae\u4ef6\u5730\u5740\u91cd\u590d\uff01 +refreshAndRetryLabel=\u8bf7\u5237\u65b0\u91cd\u8bd5\uff01 +editorLeaveLabel=\u7f16\u8f91\u5668\u4e2d\u8fd8\u6709\u5185\u5bb9\uff0c\u662f\u5426\u79bb\u5f00\uff1f +editorPostLabel=\u7f16\u8f91\u5668\u4e2d\u8fd8\u6709\u5185\u5bb9\uff0c\u662f\u5426\u6e05\u7a7a\uff1f +#### +confirmRemoveLabel=\u786e\u5b9a\u5220\u9664\uff1f +confirmInitLabel=\u786e\u5b9a\u8fdb\u884c\u521d\u59cb\u5316\u5417\uff1f diff --git a/finding/links.ftl b/finding/links.ftl new file mode 100644 index 0000000..8729ac8 --- /dev/null +++ b/finding/links.ftl @@ -0,0 +1,33 @@ +<#include "macro-head.ftl"> + + + + <@head title="${blogTitle}"> + + + + + + +
+ <#include "header.ftl"> +
+ <#if 0 != links?size> + + +
+ <#include "footer.ftl"> +
+ + diff --git a/finding/macro-comments.ftl b/finding/macro-comments.ftl new file mode 100644 index 0000000..f73775e --- /dev/null +++ b/finding/macro-comments.ftl @@ -0,0 +1,154 @@ +<#macro comments commentList article> + +<#if article.commentable> +
+ + + <#if !isLoggedIn> + + + + + + + + + + + + + + + + + <#if !isLoggedIn> + + + + + + + + +
+ +
+ +
+ +
+ + + + + + + + + + + + + + + +
+ +
+ + validate +
+ + +
+
+ + + +<#macro comment_script oId> + + + \ No newline at end of file diff --git a/finding/macro-head.ftl b/finding/macro-head.ftl new file mode 100644 index 0000000..a80b28d --- /dev/null +++ b/finding/macro-head.ftl @@ -0,0 +1,17 @@ +<#macro head title> + +${title} +<#nested> + + + + + + + + + + + +${htmlHead} + \ No newline at end of file diff --git a/finding/page.ftl b/finding/page.ftl new file mode 100644 index 0000000..87d1d34 --- /dev/null +++ b/finding/page.ftl @@ -0,0 +1,39 @@ +<#include "macro-head.ftl"> +<#include "macro-comments.ftl"> + + + + <@head title="${page.pageTitle} - ${blogTitle}"> + + + + + + +
+ <#include "header.ftl"> +
+
+
+ ${page.pageContent} +
+
+ +
+
+ <@comments commentList=pageComments article=page> +
+ + <#include "footer.ftl"> + + <@comment_script oId=page.oId> +
+ + diff --git a/finding/preview.png b/finding/preview.png new file mode 100644 index 0000000..c686a31 Binary files /dev/null and b/finding/preview.png differ diff --git a/finding/side.ftl b/finding/side.ftl new file mode 100644 index 0000000..d798a09 --- /dev/null +++ b/finding/side.ftl @@ -0,0 +1,54 @@ +
+ + <#if isLoggedIn> + +   + + <#else> + +   + + + +
+ + +
+ + ${viewCount1Label} + ${statistic.statisticBlogViewCount} +     + + ${articleCount1Label} + ${statistic.statisticPublishedBlogArticleCount} +
+ + ${commentCount1Label} + ${statistic.statisticPublishedBlogCommentCount} +     + + ${onlineVisitor1Label} + ${onlineVisitorCnt} + +
diff --git a/finding/skin.properties b/finding/skin.properties new file mode 100644 index 0000000..f1ec928 --- /dev/null +++ b/finding/skin.properties @@ -0,0 +1,26 @@ +# +# Copyright (C) 2009, 2010, 2010, B3log Team +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +# +# Description: Finding skin. +# Version: 1.0.0.0, Jun 4, 2015 +# Author: Liyuan Li +# + +name=Finding +version=1.0.0 +forSolo=0.6.9 +memo=http://demo.ghost.io diff --git a/finding/tag-articles.ftl b/finding/tag-articles.ftl new file mode 100644 index 0000000..5a08760 --- /dev/null +++ b/finding/tag-articles.ftl @@ -0,0 +1,29 @@ +<#include "macro-head.ftl"> + + + + <@head title="${tag.tagTitle} - ${blogTitle}"> + + + + + + +
+ <#include "header.ftl"> +
+

+ ${tag1Label} + + ${tag.tagTitle} + (${tag.tagPublishedRefCount}) + +

+ <#include "article-list.ftl"> +
+ <#include "footer.ftl"> +
+ + diff --git a/finding/tags.ftl b/finding/tags.ftl new file mode 100644 index 0000000..ae94583 --- /dev/null +++ b/finding/tags.ftl @@ -0,0 +1,36 @@ +<#include "macro-head.ftl"> + + + + <@head title="${allTagsLabel} - ${blogTitle}"> + + + + + + +
+ <#include "header.ftl"> +
+ +
+ <#include "footer.ftl"> +
+ + + +