commit db579cd60a08ed358a55361cad08237e74c1ca5e Author: Vanessa Date: Mon May 28 23:48:41 2012 +0800 Signed-off-by: Vanessa diff --git a/andrea/archive-articles.ftl b/andrea/archive-articles.ftl new file mode 100644 index 0000000..2765ae8 --- /dev/null +++ b/andrea/archive-articles.ftl @@ -0,0 +1,43 @@ +<#include "macro-head.ftl"> + + + + <@head title="${archiveDate.archiveDateMonth} ${archiveDate.archiveDateYear} (${archiveDate.archiveDatePublishedArticleCount}) - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "side-tool.ftl"> +
+ <#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 "side.ftl"> +
+
+
+
+
+
+ +
+
+ + diff --git a/andrea/article-list.ftl b/andrea/article-list.ftl new file mode 100644 index 0000000..b0daa09 --- /dev/null +++ b/andrea/article-list.ftl @@ -0,0 +1,70 @@ +
+ <#list articles as article> +
+
+
${article.articleCreateDate?string("MM")}
+
${article.articleCreateDate?string("dd")}
+
+
+

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

+ +
+
+
+ ${article.articleAbstract} +
+ + ${readmore2Label}... + + +
+
+ +
+<#if 0 != paginationPageCount> + +
+ \ No newline at end of file diff --git a/andrea/article.ftl b/andrea/article.ftl new file mode 100644 index 0000000..5f3865a --- /dev/null +++ b/andrea/article.ftl @@ -0,0 +1,119 @@ +<#include "macro-head.ftl"> +<#include "macro-comments.ftl"> + + + + <@head title="${article.articleTitle} - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "side-tool.ftl"> +
+ <#include "header.ftl"> +
+
+
+
+
+
${article.articleCreateDate?string("MM")}
+
${article.articleCreateDate?string("dd")}
+
+
+

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

+ +
+
+
+ ${article.articleContent} + <#if "" != article.articleSign.signHTML?trim> +
+ ${article.articleSign.signHTML} +
+ +
+
+ ${tag1Label} + <#list article.articleTags?split(",") as articleTag> + + <#if articleTag_has_next>, + + +   ${viewCount1Label} + + ${article.articleViewCount} + +
+
+
+ <#if nextArticlePermalink??> + ${nextArticle1Label}${nextArticleTitle} +
+ + <#if previousArticlePermalink??> + ${previousArticle1Label}${previousArticleTitle} + +
+
+
+
+
+
+ <@comments commentList=articleComments article=article> +
+ +
+
+ <#include "side.ftl"> +
+
+
+
+
+
+ +
+
+ <@comment_script oId=article.oId> + page.tips.externalRelevantArticlesDisplayCount = "${externalRelevantArticlesDisplayCount}"; + <#if 0 != randomArticlesDisplayCount> + page.loadRandomArticles(); + + <#if 0 != relevantArticlesDisplayCount> + page.loadRelevantArticles('${article.oId}', '

${relevantArticles1Label}

'); + + <#if 0 != externalRelevantArticlesDisplayCount> + page.loadExternalRelevantArticles("<#list article.articleTags?split(",") as articleTag>${articleTag}<#if articleTag_has_next>,"); + + + + diff --git a/andrea/author-articles.ftl b/andrea/author-articles.ftl new file mode 100644 index 0000000..333a40f --- /dev/null +++ b/andrea/author-articles.ftl @@ -0,0 +1,37 @@ +<#include "macro-head.ftl"> + + + + <@head title="${authorName} - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "side-tool.ftl"> +
+ <#include "header.ftl"> +
+
+
+

${author1Label}${authorName}

+ <#include "article-list.ftl"> +
+ +
+
+ <#include "side.ftl"> +
+
+
+
+
+
+ +
+
+ + diff --git a/andrea/css/andrea.css b/andrea/css/andrea.css new file mode 100644 index 0000000..61bddcc --- /dev/null +++ b/andrea/css/andrea.css @@ -0,0 +1,603 @@ +/* + * skin andrea style + * + * @author Liyuan Li + * @version 1.0.0.9, May 15, 2012 +*/ +body { + background-image: url("../images/bg-grey.jpg"); + background-color: #000000; + color: #363636; + font-family: \5fae\8f6f\96c5\9ed1, Arial,Verdana,sans-serif; + font-size: 12px; + margin: 0; + padding: 0; +} + +a, a:link, a:visited { + color: #BE0700; + text-decoration: underline; +} + +a:hover { + text-decoration: none; + color: rgba(190, 7, 0, 0.75); +} + +/* common */ +.error-msg { + color: #BE0700; +} + +.brush-icon, .article .month , .article .day, .pagination a, #greyBG, +#brownBG, #blueBG, #goTop, .side-tool ul ul li a, .comment-form button { + background-image: url('../images/icon.png'); +} + +/* frame */ +.wrapper { + width: 910px; + margin: 0 auto; + position: relative; +} + +.main { + float: left; + width: 627px; +} + +.side-navi { + float: left; + width: 282px; +} + +/* header */ +.header { + background: url('../images/bgs.png') no-repeat; + width: 910px; + height: 185px; + float: left; +} + +.header .left { + width: 566px; +} + +.header h1 { + margin: 18px 0 0 37px; +} + +.header .left a, .sub-title { + color: #FFFFFF; + font-family: 'Neucha',\5fae\8f6f\96c5\9ed1,Arial,Verdana,sans-serif; + font-size: 46px; + text-decoration: none; +} + +.sub-title { + color: #000000; + font-size: 22px; + margin-left: 40px; + margin-top: 0; + display: block; +} + +.header > .left > div { + float: right; + color: #C0BEBD; +} + +.header .right { + width: 343px; +} + +.header .right ul { + list-style-type: none +} + +.header .right li { + float: left; + margin: 18px 30px 0 0; + width: 84px; +} + +.header .right li a { + color: #FFFFFF; + font-family: 'Reenie Beanie',sans-serif; + font-size: 45px; + text-decoration: none; + font-weight: bold; +} + +.header .right li a:hover { + color: #DDDDDD; + font-family: 'Neucha',sans-serif;; +} + +/* main */ +.main-content { + padding: 0 45px; + background-color: #D4D4D4; +} + +.main-content > h2 { + color: #BE0700; + font-size: 20px; + line-height: 145%; + margin-bottom: 18px; + font-family: 'Neucha', \5fae\8f6f\96c5\9ed1; +} + +.main-footer { + background: url('../images/bgs.png') 0 -185px; + height: 14px; + width: 627px; +} + +.brush { + left: -52px; + position: absolute; + top: 283px; + width: 100px; +} + +#brush { + background: url("../images/paint.png") no-repeat fixed 98px -150px transparent; + position: relative; + top: -27px; + width: 82px; +} + +.brush-icon { + background-position: 0 -312px; + height: 240px; + position: relative; + width: 92px; + z-index: 1; +} + +.brush-icon:hover { + background-position: 0 -69px; +} + +/* common articles */ +.article a.underline:hover { + text-decoration: underline; + color: #BE0700; +} + +.article .date { + width: 40px; + float: left; +} + +.article .month { + color: #FFFFFF; + height: 20px; + text-align: center; + width: 36px; +} + +.article .day { + border: 1px solid #C4BFBA; + border-top: 0px; + background-position: 0px -20px; + font-size: 15px; + height: 23px; + padding-top: 4px; + text-align: center; + width: 34px; +} + +.article h2 { + margin-bottom: 3px; + width: 495px; + *line-height: 28px; +} + +.article h2 a { + color: #363636; + font-size: 24px; + line-height: 24px; + text-decoration: none; +} + +.article h2 a:hover { + color: #BE0700; + text-decoration: underline; +} + +.article h2 sup { + color: #BE0700; + font-size: 10px; + vertical-align: top; +} + +.article-abstract { + border-top: 2px dashed #F1EEE9; + margin-top: 15px; + padding: 20px 0 25px 0; + overflow: hidden; + line-height: 145%; +} + +.article-abstract p:first-child:first-letter, .article-abstract:first-letter { + font-size: 38px; + float: left; + font-weight: bold; + margin: 0 3px 3px 0; + line-height: 38px; +} + +.pagination { + line-height: 21px; +} + +.pagination a { + background-position: 0px -47px; + border: 1px solid #C5C3C2; + color: #8C8C8C; + padding: 1px 6px; + text-decoration: none; + margin: 2px; + font-size: 10px; +} + +.pagination a.selected { + background: none #FFFFFF; + border: 1px solid #C5C3C2; + color: #3E3E3E; + font-weight: bold; + padding: 1px 7px 2px 6px; +} + +.pagination a:hover { + background: none #F3DEDD; + color: #BE0700; + border: 1px solid #BE0700; +} + +/* side */ +.side-navi ul { + list-style: none; +} + +.side-navi .item { + border-radius: 0 5px 5px 0; + background: url("../images/bg-transparent.png") repeat scroll 0 0 transparent; + border: 1px solid #999999; + float: left; + margin-top: 23px; + padding: 25px 15px 15px; + width: 250px; + color: #EAE7E0; +} + +.side-navi .item dd { + margin-bottom: 25px; +} + +.side-navi .item dd li { + list-style-type: none; + border-bottom: 1px solid #93908A; + padding: 4px 0px 1px 6px; + margin-left: 0px; + overflow: hidden; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; + color: #EAE7E0; + position: relative; + line-height: 21px; +} + +.side-navi .item dd li:hover { + background: url("../images/bg-transparent.png") repeat scroll 0 0 transparent; + border-bottom: 1px solid #BAB8B5; +} + +.side-navi .item dd li:hover a { + color: #FFFFFF; +} + +.side-navi .item dd li a { + white-space: nowrap; + color: #EAE7E0; + text-decoration: none; +} + +.side-navi .item .navi-tags img { + cursor: pointer; + height: 16px; + left: 3px; + position: absolute; + top: 5px; + width: 16px; +} + +.side-navi .item dd .navi-tags a { + padding-left: 18px; +} + +#naviComments li a { + white-space: normal; +} +#naviComments li br { + display: none; +} +#naviComments li p { + display: inline; +} +#naviComments li a.author { + color: #BE0700; +} + +#naviComments li:hover { + background-image: none; +} + +#naviComments li a:hover { + text-decoration: underline; +} + +#naviComments img { + height: 16px; + width: 16px; +} + +.side-navi .item h4 { + border-bottom: 1px solid #93908A; + color: #EAE7E0; + padding: 0 5px 8px; + font-size: 16px; +} + +/* footer */ +.footer { + background-image: url("../images/footer.png"); + color: #EAE7E0; + height: 411px; + padding: 21px 0 0 95px; + width: 605px; + margin-top: 40px; + text-align: center; +} + +.footer a { + text-decoration: none; +} + +.footer a:hover { + text-decoration: underline; +} + +/* side tool */ +.side-tool { + position: fixed; + top: 30px; + left: 0px; +} + +.side-tool li { + margin-left: 0px; +} + +.side-tool ul { + list-style-type: none; +} + +#greyBG, #brownBG, #blueBG { + background-position: -103px 0; + display: block; + height: 21px; + margin: 3px 0; + width: 21px; + cursor: pointer; +} + +#brownBG { + background-position: -103px -26px; +} + +#blueBG { + background-position: -103px -52px; +} + +#greyBG:hover, #greyBG.selected { + background-position: -126px 0px; +} + +#brownBG:hover, #brownBG.selected { + background-position: -126px -26px; +} + +#blueBG:hover, #blueBG.selected { + background-position: -126px -52px; +} + +#goTop { + background-position: -105px -119px; + cursor: pointer; + height: 36px; + margin-top: 9px; + display: block; + width: 22px; +} + +#goTop:hover { + background-position: -105px -74px; +} + +.side-tool ul ul li a { + background-position: right -159px; + color: #EAE7E0; + display: block; + font-size: 14px; + font-weight: bold; + height: 86px; + margin: 9px 0; + overflow: hidden; + padding: 1px 8px 1px 9px; + text-align: center; + text-decoration: none; + width: 14px; + word-wrap: break-word; + text-transform:uppercase; +} + +/* article */ +.article-body { + border-top: 2px dashed #F1EEE9; + margin-top: 15px; + overflow: hidden; + padding: 20px 0 25px; + line-height: 145%; +} + +.article-body p:first-child:first-letter, .article-body:first-letter{ + font-size: 48px; + float: left; + font-weight: bold; + margin: 0 3px 3px 0; +} + +.article-relative { + margin: 15px 0; +} + +.article-relative h4 { + font-family: 'Neucha','\5fae\8f6f\96c5\9ed1',Arial,Verdana; + font-size: 16px; +} + +.article-relative ul { + list-style-type: none; +} + +#randomArticles, .relevantArticles { + width: 262px;overflow: hidden; +} + +/* comments */ +#comments { + position: relative; +} + +#comments, .comment-form { + padding-bottom: 30px; +} + +.em00, .em01, .em02, .em03, .em04, .em05, .em06, .em07, .em08, .em09, .em10, .em11, .em12, .em13, .em14 { + background-image: url("../../andrea/images/emotions/emotions-black.png"); + margin-right: 4px; +} + +.comment-form { + margin-right: 15px; + color: #606060; +} + +h2.comment-label { + border-bottom: 2px solid #3F3D36; + font-size: 24px; + margin-bottom: 15px; + margin-top: 30px; + padding-bottom: 7px; + color: #363636; +} + +.comment-body { + padding: 20px 0; +} + +.comment-author { + width: 100px; +} + +.comment-info { + margin-right: 12px; + word-wrap:break-word; + overflow: hidden; + width: 423px; +} + +.comment-info > a { + font-size: 14px; + font-weight: bold; +} + +.comment-content { + margin: 10px 0; +} + +.comment-odd { + background-color: #F1EEE9; +} + +.comment-author img { + width: 64px; + height: 64px; + border: 6px solid #F1EEE9; + margin-left: 12px; +} + +.comment-form img { + cursor: pointer; +} + +.comment-form input, .comment-form textarea{ + border-radius:5px; + background-color: #EBE9E5; + border: 1px solid #BABAAE; + font-family: \5fae\8f6f\96c5\9ed1; + font-size: 12px; + margin: 10px 0; + padding: 10px; + width: 400px; + outline:none; +} + +.comment-form input:focus, .comment-form textarea:focus { + background-color: #E3EBCF; + border-color: #73B722; +} + +#commentValidate, #commentValidateReply { + width: 80px; +} + +.comment-form button { + border-radius: 5px; + border: 1px solid #80B53B; + color: #355207; + cursor: pointer; + font-weight: bold; + height: 34px; + padding: 5px 10px; + width: 140px; +} + +.comment-body-ref { + background: url("../images/bg-transparent.png") repeat scroll 0 0 transparent; + padding: 12px 0; + position: absolute; + width: 537px; + border: 1px solid #999999; + border-radius: 5px; + z-index: 10; + left: 180px; +} + +/* others */ +#tagsPanel { + min-height: 1px;; +} + +#tagsPanel a { + display: block; + float: left; + border: 1px solid #D4D4D4; +} + +#tagsPanel a:hover { + border: 1px solid #BE0700; +} \ No newline at end of file diff --git a/andrea/footer.ftl b/andrea/footer.ftl new file mode 100644 index 0000000..4473788 --- /dev/null +++ b/andrea/footer.ftl @@ -0,0 +1,94 @@ + + + + +${plugins} \ No newline at end of file diff --git a/andrea/header.ftl b/andrea/header.ftl new file mode 100644 index 0000000..f6bda18 --- /dev/null +++ b/andrea/header.ftl @@ -0,0 +1,47 @@ +
+
+

+ + ${blogTitle} + +

+ ${blogSubtitle} +
+ + ${viewCount1Label} + + ${statistic.statisticBlogViewCount} + + + + ${articleCount1Label} + + ${statistic.statisticPublishedBlogArticleCount} + + + + ${commentCount1Label} + + ${statistic.statisticPublishedBlogCommentCount} + + +
+ +
+
+ +
+
+
\ No newline at end of file diff --git a/andrea/images/bg-blue.jpg b/andrea/images/bg-blue.jpg new file mode 100644 index 0000000..62644b3 Binary files /dev/null and b/andrea/images/bg-blue.jpg differ diff --git a/andrea/images/bg-brown.jpg b/andrea/images/bg-brown.jpg new file mode 100644 index 0000000..465547c Binary files /dev/null and b/andrea/images/bg-brown.jpg differ diff --git a/andrea/images/bg-grey.jpg b/andrea/images/bg-grey.jpg new file mode 100644 index 0000000..fc2a508 Binary files /dev/null and b/andrea/images/bg-grey.jpg differ diff --git a/andrea/images/bg-transparent.png b/andrea/images/bg-transparent.png new file mode 100644 index 0000000..ec838bc Binary files /dev/null and b/andrea/images/bg-transparent.png differ diff --git a/andrea/images/bgs.png b/andrea/images/bgs.png new file mode 100644 index 0000000..8cbd03e Binary files /dev/null and b/andrea/images/bgs.png differ diff --git a/andrea/images/emotions/em00.png b/andrea/images/emotions/em00.png new file mode 100644 index 0000000..2420609 Binary files /dev/null and b/andrea/images/emotions/em00.png differ diff --git a/andrea/images/emotions/em01.png b/andrea/images/emotions/em01.png new file mode 100644 index 0000000..bddbe24 Binary files /dev/null and b/andrea/images/emotions/em01.png differ diff --git a/andrea/images/emotions/em02.png b/andrea/images/emotions/em02.png new file mode 100644 index 0000000..39051f3 Binary files /dev/null and b/andrea/images/emotions/em02.png differ diff --git a/andrea/images/emotions/em03.png b/andrea/images/emotions/em03.png new file mode 100644 index 0000000..8cf9113 Binary files /dev/null and b/andrea/images/emotions/em03.png differ diff --git a/andrea/images/emotions/em04.png b/andrea/images/emotions/em04.png new file mode 100644 index 0000000..fb061a8 Binary files /dev/null and b/andrea/images/emotions/em04.png differ diff --git a/andrea/images/emotions/em05.png b/andrea/images/emotions/em05.png new file mode 100644 index 0000000..83d82b4 Binary files /dev/null and b/andrea/images/emotions/em05.png differ diff --git a/andrea/images/emotions/em06.png b/andrea/images/emotions/em06.png new file mode 100644 index 0000000..20d66f0 Binary files /dev/null and b/andrea/images/emotions/em06.png differ diff --git a/andrea/images/emotions/em07.png b/andrea/images/emotions/em07.png new file mode 100644 index 0000000..dcda19c Binary files /dev/null and b/andrea/images/emotions/em07.png differ diff --git a/andrea/images/emotions/em08.png b/andrea/images/emotions/em08.png new file mode 100644 index 0000000..676df26 Binary files /dev/null and b/andrea/images/emotions/em08.png differ diff --git a/andrea/images/emotions/em09.png b/andrea/images/emotions/em09.png new file mode 100644 index 0000000..94f4605 Binary files /dev/null and b/andrea/images/emotions/em09.png differ diff --git a/andrea/images/emotions/em10.png b/andrea/images/emotions/em10.png new file mode 100644 index 0000000..11f9f4c Binary files /dev/null and b/andrea/images/emotions/em10.png differ diff --git a/andrea/images/emotions/em11.png b/andrea/images/emotions/em11.png new file mode 100644 index 0000000..9979744 Binary files /dev/null and b/andrea/images/emotions/em11.png differ diff --git a/andrea/images/emotions/em12.png b/andrea/images/emotions/em12.png new file mode 100644 index 0000000..0c9d57f Binary files /dev/null and b/andrea/images/emotions/em12.png differ diff --git a/andrea/images/emotions/em13.png b/andrea/images/emotions/em13.png new file mode 100644 index 0000000..5279d49 Binary files /dev/null and b/andrea/images/emotions/em13.png differ diff --git a/andrea/images/emotions/em14.png b/andrea/images/emotions/em14.png new file mode 100644 index 0000000..7594861 Binary files /dev/null and b/andrea/images/emotions/em14.png differ diff --git a/andrea/images/emotions/emotions-black.png b/andrea/images/emotions/emotions-black.png new file mode 100644 index 0000000..3e67ef9 Binary files /dev/null and b/andrea/images/emotions/emotions-black.png differ diff --git a/andrea/images/footer.png b/andrea/images/footer.png new file mode 100644 index 0000000..1b9bce6 Binary files /dev/null and b/andrea/images/footer.png differ diff --git a/andrea/images/icon.png b/andrea/images/icon.png new file mode 100644 index 0000000..0f29f9c Binary files /dev/null and b/andrea/images/icon.png differ diff --git a/andrea/images/paint.png b/andrea/images/paint.png new file mode 100644 index 0000000..0b0a298 Binary files /dev/null and b/andrea/images/paint.png differ diff --git a/andrea/index.ftl b/andrea/index.ftl new file mode 100644 index 0000000..8360990 --- /dev/null +++ b/andrea/index.ftl @@ -0,0 +1,36 @@ +<#include "macro-head.ftl"> + + + + <@head title="${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "side-tool.ftl"> +
+ <#include "header.ftl"> +
+
+
+ <#include "article-list.ftl"> +
+ +
+
+ <#include "side.ftl"> +
+
+
+
+
+
+ +
+
+ + diff --git a/andrea/lang/lang_en_US.properties b/andrea/lang/lang_en_US.properties new file mode 100644 index 0000000..2860965 --- /dev/null +++ b/andrea/lang/lang_en_US.properties @@ -0,0 +1,287 @@ +# +# 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: 2.0.5.7, Sep 5, 2011 +# Author: Liang Ding +# + +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= +blogSyncLabel=Blog Sync +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 +blogSyncMgmtLabel=Blog Sync Management +syncMgmtLabel=Sync manage Blog +userName1Label=Username: +userPassword1Label=Password: +syncPostLabel=Sync Post +syncUpdateLabel=Sync Update +syncRemoveLabel=Sync Remove +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 +clearAllCacheLabel=Clear all cache +clearCacheLabel=Clear cache +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 +welcomeToSoloLabel=Welcome to B3log Solo! +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 +updatePreferenceFailLabel=Update Fail, please check Blog Host configuration! +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. +exceedMaxUploadSizeLabel=Size exceed 1M :-( +uploadFailLabel=Upload Fail! +fileEmptyLabel=File is empty +duplicatedPermalinkLabel=Duplicated permalink! +invalidPermalinkFormatLabel=Invalid permalink format! +duplicatedEmailLabel=Duplicated email! +canntBeLocalhostOnProductionLabel=Can not set host as localhost on production! +refreshAndRetryLabel=Please refresh and try again! +noDataLable=NO Data +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/andrea/lang/lang_zh_CN.properties b/andrea/lang/lang_zh_CN.properties new file mode 100644 index 0000000..0cedee0 --- /dev/null +++ b/andrea/lang/lang_zh_CN.properties @@ -0,0 +1,287 @@ +# +# 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: 2.0.6.2, Sep 5, 2011 +# Author: Liang Ding +# + +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 +clearAllCacheLabel=\u6e05\u9664\u6240\u6709\u9875\u9762\u7f13\u5b58 +clearCacheLabel=\u6e05\u9664\u672c\u9875\u7f13\u5b58 +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 +welcomeToSoloLabel=\u6b22\u8fce\u4f7f\u7528 B3log Solo\uff01 +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 +updatePreferenceFailLabel=\u66f4\u65b0\u5931\u8d25\uff0c\u8bf7\u4ed4\u7ec6\u68c0\u67e5\u201c\u535a\u5ba2\u5730\u5740\u201d\u7684\u914d\u7f6e\u662f\u5426\u6b63\u786e +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 +exceedMaxUploadSizeLabel=\u76ee\u524d\u53ea\u80fd\u4e0a\u4f20\u5c0f\u4e8e 1M \u7684\u6587\u4ef6 :-( +uploadFailLabel=\u4e0a\u4f20\u5931\u8d25\uff01 +fileEmptyLabel=\u6587\u4ef6\u4e3a\u7a7a\uff01 +duplicatedPermalinkLabel=\u94fe\u63a5\u91cd\u590d\uff01 +invalidPermalinkFormatLabel=\u975e\u6cd5\u7684\u94fe\u63a5\u683c\u5f0f\uff01 +duplicatedEmailLabel=\u90ae\u4ef6\u5730\u5740\u91cd\u590d\uff01 +canntBeLocalhostOnProductionLabel=GAE \u73af\u5883\u4e0a\u8bf7\u52ff\u6307\u5b9a\u535a\u5ba2\u5730\u5740\u4e3a localhost\uff01 +refreshAndRetryLabel=\u8bf7\u5237\u65b0\u91cd\u8bd5\uff01 +noDataLable=\u65e0\u6570\u636e +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/andrea/macro-comments.ftl b/andrea/macro-comments.ftl new file mode 100644 index 0000000..d5a20a2 --- /dev/null +++ b/andrea/macro-comments.ftl @@ -0,0 +1,178 @@ +<#macro comments commentList article> +

${commentLabel}

+
+ <#list commentList as comment> +
+
+
+ ${comment.commentName} +
+
+ <#if "http://" == comment.commentURL> + ${comment.commentName} + <#else> + ${comment.commentName} + <#if comment.isReply> + @ + ${comment.commentOriginalCommentName} + +  ${comment.commentDate?string("yyyy-MM-dd HH:mm:ss")} +
+ ${comment.commentContent} +
+ <#if article.commentable> + + +
+
+
+
+ +
+<#if article.commentable> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ ${commentNameLabel} + + +
+ ${commentEmailLabel} + + +
+ ${commentURLLabel} + + +
+ ${commentEmotionsLabel} + + + + + + + + + + + + + + + + +
+ ${commentContentLabel} + + +
+ ${captchaLabel} + + + validate + + +
+ +
+ + + +<#macro comment_script oId> + + + \ No newline at end of file diff --git a/andrea/macro-head.ftl b/andrea/macro-head.ftl new file mode 100644 index 0000000..d17e178 --- /dev/null +++ b/andrea/macro-head.ftl @@ -0,0 +1,17 @@ +<#macro head title> + +${title} +<#nested> + + + + + + + + + + + +${htmlHead} + \ No newline at end of file diff --git a/andrea/page.ftl b/andrea/page.ftl new file mode 100644 index 0000000..ffccbdd --- /dev/null +++ b/andrea/page.ftl @@ -0,0 +1,43 @@ +<#include "macro-head.ftl"> +<#include "macro-comments.ftl"> + + + + <@head title="${page.pageTitle} - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "side-tool.ftl"> +
+ <#include "header.ftl"> +
+
+
+
+
+ ${page.pageContent} +
+
+ <@comments commentList=pageComments article=page> +
+ +
+
+ <#include "side.ftl"> +
+
+
+
+
+
+ +
+
+ <@comment_script oId=page.oId> + + diff --git a/andrea/preview.png b/andrea/preview.png new file mode 100644 index 0000000..7b07f7e Binary files /dev/null and b/andrea/preview.png differ diff --git a/andrea/side-tool.ftl b/andrea/side-tool.ftl new file mode 100644 index 0000000..c5a9fde --- /dev/null +++ b/andrea/side-tool.ftl @@ -0,0 +1,23 @@ +
+ +
\ No newline at end of file diff --git a/andrea/side.ftl b/andrea/side.ftl new file mode 100644 index 0000000..781f733 --- /dev/null +++ b/andrea/side.ftl @@ -0,0 +1,125 @@ +<#if "" != noticeBoard> +
+

${noticeBoardLabel}

+
+ ${noticeBoard} +
+
+ +<#if 0 != recentComments?size || 0 != mostCommentArticles?size || 0 != mostViewCountArticles?size> +
+
+ <#if 0 != mostCommentArticles?size> +
+

${mostCommentArticlesLabel}

+ +
+ + <#if 0 != recentComments?size> +
+

${recentCommentsLabel}

+ +
+ + <#if 0 != mostViewCountArticles?size> +
+

${mostViewCountArticlesLabel}

+ +
+ +
+
+ +<#if 0 != mostUsedTags?size> +
+
+
+

${popTagsLabel}

+ +
+
+
+ +<#if 0 != links?size> +
+
+
+

${linkLabel}

+ +
+
+
+ +<#if 0 != archiveDates?size> + + \ No newline at end of file diff --git a/andrea/skin.properties b/andrea/skin.properties new file mode 100644 index 0000000..917b4e0 --- /dev/null +++ b/andrea/skin.properties @@ -0,0 +1,26 @@ +# +# Copyright (C) 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: Andrea skin. +# Version: 1.0.0.6, May 7, 2012 +# Author: Liyuan Li +# + +name=Andrea +version=2.0.3 +forSolo=0.4.5 +memo=Refers to http://www.madeincima.eu \ No newline at end of file diff --git a/andrea/tag-articles.ftl b/andrea/tag-articles.ftl new file mode 100644 index 0000000..bdd5721 --- /dev/null +++ b/andrea/tag-articles.ftl @@ -0,0 +1,40 @@ +<#include "macro-head.ftl"> + + + + <@head title="${tag.tagTitle} - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "side-tool.ftl"> +
+ <#include "header.ftl"> +
+
+
+

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

+ <#include "article-list.ftl"> +
+ +
+
+ <#include "side.ftl"> +
+
+
+
+
+
+ +
+
+ + diff --git a/andrea/tags.ftl b/andrea/tags.ftl new file mode 100644 index 0000000..82ef92c --- /dev/null +++ b/andrea/tags.ftl @@ -0,0 +1,50 @@ +<#include "macro-head.ftl"> + + + + <@head title="${allTagsLabel} - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "side-tool.ftl"> +
+ <#include "header.ftl"> +
+
+
+ +
+
+ +
+
+ <#include "side.ftl"> +
+
+
+
+
+
+ +
+
+ + + diff --git a/community/archive-articles.ftl b/community/archive-articles.ftl new file mode 100644 index 0000000..b21e6e7 --- /dev/null +++ b/community/archive-articles.ftl @@ -0,0 +1,32 @@ +<#include "macro-head.ftl"> + + + + <@head title="${archiveDate.archiveDateMonth} ${archiveDate.archiveDateYear} (${archiveDate.archiveDatePublishedArticleCount}) - ${blogTitle}"> + + + + + + ${topBarReplacement} +
+ <#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 "side.ftl"> +
+ + + diff --git a/community/article-list.ftl b/community/article-list.ftl new file mode 100644 index 0000000..84ea55f --- /dev/null +++ b/community/article-list.ftl @@ -0,0 +1,102 @@ +<#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/community/article.ftl b/community/article.ftl new file mode 100644 index 0000000..8a6296d --- /dev/null +++ b/community/article.ftl @@ -0,0 +1,117 @@ +<#include "macro-head.ftl"> +<#include "macro-comments.ftl"> + + + + <@head title="${article.articleTitle} - ${blogTitle}"> + + + + + + ${topBarReplacement} +
+ <#include "header.ftl"> +
+
+
+
+ +
+
+ +
+
+

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

+
+ ${article.articleContent} + <#if "" != article.articleSign.signHTML?trim> +
+ ${article.articleSign.signHTML} +
+ +
+
+ + ${tags1Label} + <#list article.articleTags?split(",") as articleTag> + <#if articleTag_has_next>, + +
+
+
+
+ <#if nextArticlePermalink??> + ${nextArticle1Label} ${nextArticleTitle} + + <#if previousArticlePermalink??> + ${previousArticle1Label} ${previousArticleTitle} + +
+
+
+
+
+
+
+ <@comments commentList=articleComments article=article> +
+
+ <#include "side.ftl"> +
+ + <@comment_script oId=article.oId> + page.tips.externalRelevantArticlesDisplayCount = "${externalRelevantArticlesDisplayCount}"; + <#if 0 != randomArticlesDisplayCount> + page.loadRandomArticles(); + + <#if 0 != relevantArticlesDisplayCount> + page.loadRelevantArticles('${article.oId}', '

${relevantArticles1Label}

'); + + <#if 0 != externalRelevantArticlesDisplayCount> + page.loadExternalRelevantArticles("<#list article.articleTags?split(",") as articleTag>${articleTag}<#if articleTag_has_next>,"); + + + + diff --git a/community/author-articles.ftl b/community/author-articles.ftl new file mode 100644 index 0000000..009a96d --- /dev/null +++ b/community/author-articles.ftl @@ -0,0 +1,28 @@ +<#include "macro-head.ftl"> + + + + <@head title="${authorName} - ${blogTitle}"> + + + + + + ${topBarReplacement} +
+ <#include "header.ftl"> +
+
+

+ ${commentName1Label}${authorName} +

+ <#include "article-list.ftl"> +
+
+ <#include "side.ftl"> +
+ + + diff --git a/community/css/community.css b/community/css/community.css new file mode 100644 index 0000000..3b81696 --- /dev/null +++ b/community/css/community.css @@ -0,0 +1,701 @@ +@charset "utf-8"; +/* + * skin community style + * + * @author Liyuan Li + * @version 1.0.0.7, May 15, 2012 +*/ +body { + background-color: #EFEFEF; + color: #555555; + min-width: 960px; +} + +a, a:link { + color:#000000; + text-decoration: none; +} + +a:active, a:visited { + color: #000000; + text-decoration: none; +} + +a:hover { + text-decoration: underline; +} + +.content { + width: 940px; + margin: 0 auto; +} + +.content>h2 { + margin: -20px 0 20px 0; +} + +.hr { + background: url("../images/indentline-light.png") repeat-x scroll left top transparent; + margin: 20px 0 40px; + clear: both; + height: 2px; +} + +.arrow-right { + background: url("../images/icon.png") 0px -64px no-repeat; + float: left; + height: 38px; + width: 14px; +} + +input[type='button'] { + border-radius:5px; + box-shadow: 0 1px 0 rgba(255, 255, 255, 0.3) inset, 0 0 2px rgba(255, 255, 255, 0.3) inset, 0 1px 2px rgba(0, 0, 0, 0.29); + background-color: #000000; + background-image: linear-gradient(top,#333333,#000000); + background-image: -moz-linear-gradient(top,#333333,#000000); + background-image: -ms-linear-gradient(top,#333333,#000000); + background-image: -o-linear-gradient(top,#333333,#000000); + background-image: -webkit-gradient(linear,left top,left bottom,from(#333333),to(#000000)); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#333333', endColorstr='#000000'); + border: 1px solid #000000; + color: white; + margin: 15px 0 0 200px; + padding: 7px 13px; + height: auto; +} + +input[type='button']:hover { + background-color: #333333; + background-image: linear-gradient(top,#333333,#212121); + background-image: -moz-linear-gradient(top,#333333,#212121); + background-image: -ms-linear-gradient(top,#333333,#212121); + background-image: -o-linear-gradient(top,#333333,#212121); + background-image: -webkit-gradient(linear,left top,left bottom,from(#333333),to(#212121)); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#333333', endColorstr='#212121'); +} + +.marginBottom40 { + margin-bottom: 40px; +} + +/* header */ +.header-user { + background-color: #DEDEDE; + padding-top: 1px; +} + +.header-navi { + background: url("../images/icon.png") 0px -130px repeat-x #333333; + margin-bottom: 50px; +} + +a.header-title { + color: #FFFFFF; + text-decoration: none; + line-height: 49px; + font: bold 35px/53px 微软雅黑,Arial,Helvetica; +} + +.sub-title { + color: #9BC4CE; + margin-left: 10px; +} + +.header-navi-main .tabs { + list-style: none; + height: 57px; +} + +.header-navi-main .tab { + float: left; + font-size: 16px; + margin-left: 1px; + height: 57px; +} + +.header-navi-main .tab:hover { + background: url("../images/icon.png") repeat-x scroll 0 -130px #9BC4CE; +} + +#header-pages { + position: relative; +} + +.header-navi-main .tab a { + color: #FFFFFF; + display: block; + font-weight: bold; + line-height: 22px; + padding: 19px 16px 16px; + text-decoration: none; +} + +#header-pages:hover .sub-tabs { + left: 0px; + list-style: none; + position: absolute; + top: 57px; + display: block; +} + +.header-navi-main .sub-tab { + background-color: #9BC4CE; + border-bottom: 1px solid #76A0AA; + border-top: 1px solid #B4D9E2; + margin-left: 0px; +} + +.header-navi-main .sub-tab a { + min-width: 98px; + padding: 0 16px; + line-height: 42px; + font-size: 14px; +} + +.header-navi-main .sub-tab:hover { + background-color: #76A0AA; +} + +/* article list */ +.article-header { + color: #9F9F9F; + float: left; + font-size: 12px; + padding-top: 15px; + width: 180px; +} + +.article-header ul { + background-color: #333333; + list-style: none; + width: 160px; +} + +.article-header ul li { + background: url("../images/indentline.png") repeat-x scroll left bottom transparent; + font-weight: bold; + padding: 7px 15px 8px; + margin-left: 0px; +} + +.article-header ul li a { + color: #FFFFFF; + display: block; +} + +.article-main { + background-color: #FFFFFF; + border-bottom: 1px solid #E3E3E3; + border-right: 1px solid #E3E3E3; + margin-right:20px; + padding: 20px 20px 0; + width: 499px; + float: left; + overflow: hidden; +} + +.article-body { + line-height: 145%; +} + +.article-body a { + color: #075181; +} + +.article-body a:hover { + color: #68ADD5; +} + +.article-main h2.title { + font: bold 30px Arial,Helvetica,sans-serif; + margin: 0 0 20px; +} + +.article-main h2.title sup { + font-size: 12px; +} + +.read-more a { + background-color:#F2F2F2; + color: #333333; + font-size: 12px; + padding: 8px 18px 8px 12px; + margin: 20px 0; + float: left; +} + +.article-footer { + width: 200px; + float: left; +} + +.article-footer h3 { + background: url("../images/indentline-light.png") repeat-x scroll left bottom transparent; + font-size: 17px; + padding: 25px 0 10px; +} + +.article-footer ul { + list-style: none; +} + +.article-footer li { + margin-left: 0px; + border-bottom: 1px solid #E0E0E0; + padding: 8px 5px; +} + +.article-footer a { + color: #888888; + margin-bottom: 2px; + display: block; +} + +.pagination { + background-color: #FFFFFF; + border-right: 1px solid #E3E3E3; + border-bottom: 1px solid #E3E3E3; + margin: 0 0 20px 181px; + text-align: center; + padding: 12px 20px; + width: 499px; +} + +.pagination a { + color: #555555; + padding: 0 3px; + text-decoration: none; +} +.pagination a.selected { + font-weight: bold; +} + +.pagination a:hover, .pagination a.selected { + text-decoration: underline; +} + +/* article detail */ +.article-detail-body { + width: 716px; + margin-right: 0px; +} + +.article-detail-body .tags, #replyForm { + margin: 20px 0; +} + +.article-detail-footer { + background-color: #FFFFFF; + border-bottom: 1px solid #E3E3E3; + border-right: 1px solid #E3E3E3; + margin: 40px 0 40px 181px; + padding:20px; + width: 716px; +} + +.article-detail-footer>a{ + font-weight: bold; +} + +.article-relative { + margin-top: 20px; + width: 360px; +} + +.article-relative h4 { + font-size: 14px; + line-height: 25px; +} + +.article-relative a { + color: #555555; + line-height: 145%; +} + +#comments { + background: url("../images/indentline-light.png") repeat-x scroll left top transparent; + padding-top: 30px; + position: relative; +} +#comments>div{ + margin-top: 10px; +} + +#comments>div>img { + height: 80px; + width: 80px; + margin: 1px 10px 10px 0; +} + +#comments .comment-panel { + background: none repeat scroll 0 0 #FFFFFF; + border-bottom: 1px solid #E3E3E3; + border-right: 1px solid #E3E3E3; + padding: 20px; + width: 798px; + margin-bottom: 10px; + word-wrap:break-word; + overflow: hidden; +} + +#comments .comment-top { + margin-bottom: 10px; +} + +#comments .comment-panel .reply { + margin-top: 20px; +} + +#comments .comment-panel .reply a { + border-radius:5px; + box-shadow: 0 1px 0 rgba(255, 255, 255, 0.3) inset, 0 0 2px rgba(255, 255, 255, 0.3) inset, 0 1px 2px rgba(0, 0, 0, 0.29); + background-color: #EEEEEE; + border: 1px solid #888888; + color: #555555; + padding: 2px 10px; +} + +#comments .comment-panel .reply a:hover { + background-color: #E6E6E6; + text-decoration: none; +} + +.comment-body-ref { + position: absolute; + border: 1px solid #E3E3E3; + background-color: #FFFFFF; + padding: 10px 0 0 10px; + left: 177px; + opacity: 0.9; +} + +#comments .comment-body-ref .comment-panel{ + border-width: 0px; + margin-bottom: 0; + width: 620px; + padding: 10px; +} + +.comment-title { + color: #333333; + font-size: 30px; + margin: 20px 0 15px 0; + font-family: \5fae\8f6f\96c5\9ed1; +} + +.comment { + margin-bottom: 40px; +} + +.comment th { + padding: 10px 0px 10px 0; + text-align: left; +} + +.comment input[type="text"], .comment textarea { + outline: none; + color: #666666; + padding: 10px 7px; + background-color: #FFFFFF; + font-family: Arial,Helvetica,sans-serif; + width: 723px; + border: 1px solid #DDDDDD; + font-size: 12px; + height: 16px; + line-height: 16px; +} + +.comment textarea { + margin: 10px 0; + padding: 7px; + height: auto; +} + +.comment #captchaReply { + margin-left: 10px; +} + +#commentValidate, #commentValidateReply { + width: 240px; +} + +.em00, .em01, .em02, .em03, .em04, .em05, .em06, .em07, .em08, .em09, .em10, .em11, .em12, .em13, .em14 { + background-image: url("../../community/images/emotions/emotions-black.png"); + margin: 0 12px; +} +/* footer secondary */ +.footer-secondary { + background: url("../images/indentline-light.png") repeat-x scroll left top #DEDEDE; + padding: 40px 0; +} + +.footer-secondary h4, .article-date, .comment th span.comment-label { + background-color: #333333; + color: #FFFFFF; + float: left; + font-size: 17px; + font-weight: bold; + height: 37px; + line-height: 37px; + padding-left: 15px; + width: 145px; +} + +.most-view-count-articles, .recent-comments, .notice { + float: left; + width: 700px; + margin-left: 65px; + word-break:break-all; + word-wrap:break-word; +} + +.most-view-count-articles a { + font: 18px 微软雅黑; + margin-right: 20px; + font-weight: bold; +} + +.most-view-count-articles sup { + font-size: 12px; + color: #555555; + font-weight: normal; + margin-right: 3px; +} + +.recent-comments div { + float: left; + margin: 0 25px 10px 0px; + text-align: center; + width: 91px; +} + +.recent-comments div a { + display: block; + line-height: 22px; +} + +.recent-comments img, #comments>div>img { + background-color: #FFFFFF; + border-bottom: 1px solid #C2C2C2; + border-right: 1px solid #C2C2C2; + padding: 8px 7px 7px 8px; + width: 75px; + height: 75px; +} + +.recent-comments img:hover, #comments>div>img:hover { + border-color: #5A5A5A; +} + +/* footer widgets */ +.footer-widgets { + background: url("../images/indentline-light.png") repeat-x scroll left top transparent; + padding: 40px 0; +} + +.footer-block { + margin-right: 20px; + width: 220px; +} + +.footer-block h4{ + font: bold 18px 微软雅黑; + color: #000000; + height: 25px; + padding: 0 0 15px; + background: url("../images/indentline.png") repeat-x scroll left bottom transparent; +} + +.footer-block ul { + list-style: none; +} + +.footer-block li { + margin-left: 0px; + height: 30px; + padding-left: 10px; + background: url("../images/indentline-light.png") repeat-x scroll left bottom transparent; +} + +.footer-block li.mostUsedTags a{ + padding-left: 20px; +} + +.footer-block li img{ + cursor: pointer; + height: 16px; + left: 0px; + position: relative; + top: -20px; + width: 16px; +} + +.footer-block li a { + color: #555555; + display: block; + height: 19px; + line-height: 19px; + overflow: hidden; + padding: 6px 0 1px 0px; +} + +.footer-block li sup { + float: left; + margin: 5px 3px 0 0; +} + +.footer-block li:hover { + background: url("../images/icon.png") repeat-x 0px -34px; +} + +/* footer copyright */ +.footer { + background: url("../images/indentline-light.png") repeat-x scroll left top #DEDEDE; + text-align: left; +} + +.footer .content { + line-height: 22px; +} + +.footer a { + color: #000000; +} + +.footer .goTop { + background: url("../images/icon.png") no-repeat -12px -64px; + cursor: pointer; + padding-left: 15px; + height: 17px; + line-height: 17px; +} + +/* error */ +.error-msg { + color: #333333; + font-weight: bold; +} + +.error-footer { + bottom: 0; + position: fixed; + width: 100%; +} + +.error-panel { + background-color: #FFFFFF; + border-bottom: 1px solid #E3E3E3; + border-right: 1px solid #E3E3E3; + margin-bottom: 50px; + padding: 20px; +} + +.error-panel h2 { + font: bold 30px/24px; + margin: 0 0 20px; +} + +/* icon */ +.read-more-icon, .arrow-dowm-icon, .tag-icon, .atom-icon, .up-icon, .down-icon { + background-image: url("../images/icon.png"); + background-repeat: no-repeat; + float: left; +} +.read-more-icon { + background-position: 0 -22px; + height: 12px; + margin: 2px 0 0 6px; + width: 12px; +} + +.arrow-dowm-icon { + background-position: -13px -22px; + height: 13px; + margin: 8px 0 0 6px; + width: 13px; + cursor: pointer; +} + +.tag-icon { + background-position: 0px -102px; + margin-right: 6px; + height: 16px; + width: 16px; +} + +.atom-icon { + height: 22px; + margin-left: 6px; + width: 22px; +} + +.up-icon { + background-position: -11px -118px; + height: 12px; + margin: 6px 0 0 10px; + width: 11px; + cursor: pointer; +} + +.down-icon { + background-position: 0 -118px; + height: 12px; + margin: 6px 0 0 10px; + width: 11px; + cursor: pointer; +} + +.star-current-icon, .star-icon, .moon-icon, .moon-current-icon { + height: 58px; + width: 64px; + background-image: url("../images/author-header.png"); + float: right; + white-space:normal; + text-align: center; + word-break:break-all; + padding-top: 6px; + word-wrap:break-word; + font-weight: bold; +} + +.star-current-icon { + background-position: 0px -64px; +} + +a.star-current-icon { + color: #333333; +} + +.star-icon { + background-position: 0 -192px; +} + +a.star-icon { + color: orange; +} + +.moon-icon { + float: right; + margin-top: 4px; +} + +.moon-current-icon { + float: right; + background-position: 0 -128px; + margin: 1px 0 3px 0; +} + +#tagsPanel a.tagPanel:hover { + border: 1px dashed; +} + +#tagsPanel a.tagPanel { + border: 1px solid; + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; + margin: 3px; + cursor: pointer; + float: left; +} \ No newline at end of file diff --git a/community/footer.ftl b/community/footer.ftl new file mode 100644 index 0000000..17f6ce3 --- /dev/null +++ b/community/footer.ftl @@ -0,0 +1,112 @@ +
+
+
+ © ${year} - ${blogTitle} +
+ Powered by + , + ver ${version}   + Theme by Vanessa & Skeptical. +
+
+
${goTopLabel}
+
+
+ ${viewCount1Label} + + ${statistic.statisticBlogViewCount} + +    + ${articleCount1Label} + + ${statistic.statisticPublishedBlogArticleCount} + +    + ${commentCount1Label} + + ${statistic.statisticPublishedBlogCommentCount} + +
+
+
+
+ + + +${plugins} \ No newline at end of file diff --git a/community/header.ftl b/community/header.ftl new file mode 100644 index 0000000..47de2c9 --- /dev/null +++ b/community/header.ftl @@ -0,0 +1,59 @@ +<#if 1 != users?size> +
+
+
+ <#list users as user> + + ${user.userName} + + +
+
+
+ +
+
+
+ + ${blogTitle} + + ${blogSubtitle} +
+
+ +
+
+
+
\ No newline at end of file diff --git a/community/images/author-header.png b/community/images/author-header.png new file mode 100644 index 0000000..2424668 Binary files /dev/null and b/community/images/author-header.png differ diff --git a/community/images/emotions/em00.png b/community/images/emotions/em00.png new file mode 100644 index 0000000..2420609 Binary files /dev/null and b/community/images/emotions/em00.png differ diff --git a/community/images/emotions/em01.png b/community/images/emotions/em01.png new file mode 100644 index 0000000..bddbe24 Binary files /dev/null and b/community/images/emotions/em01.png differ diff --git a/community/images/emotions/em02.png b/community/images/emotions/em02.png new file mode 100644 index 0000000..39051f3 Binary files /dev/null and b/community/images/emotions/em02.png differ diff --git a/community/images/emotions/em03.png b/community/images/emotions/em03.png new file mode 100644 index 0000000..8cf9113 Binary files /dev/null and b/community/images/emotions/em03.png differ diff --git a/community/images/emotions/em04.png b/community/images/emotions/em04.png new file mode 100644 index 0000000..fb061a8 Binary files /dev/null and b/community/images/emotions/em04.png differ diff --git a/community/images/emotions/em05.png b/community/images/emotions/em05.png new file mode 100644 index 0000000..83d82b4 Binary files /dev/null and b/community/images/emotions/em05.png differ diff --git a/community/images/emotions/em06.png b/community/images/emotions/em06.png new file mode 100644 index 0000000..20d66f0 Binary files /dev/null and b/community/images/emotions/em06.png differ diff --git a/community/images/emotions/em07.png b/community/images/emotions/em07.png new file mode 100644 index 0000000..dcda19c Binary files /dev/null and b/community/images/emotions/em07.png differ diff --git a/community/images/emotions/em08.png b/community/images/emotions/em08.png new file mode 100644 index 0000000..676df26 Binary files /dev/null and b/community/images/emotions/em08.png differ diff --git a/community/images/emotions/em09.png b/community/images/emotions/em09.png new file mode 100644 index 0000000..94f4605 Binary files /dev/null and b/community/images/emotions/em09.png differ diff --git a/community/images/emotions/em10.png b/community/images/emotions/em10.png new file mode 100644 index 0000000..11f9f4c Binary files /dev/null and b/community/images/emotions/em10.png differ diff --git a/community/images/emotions/em11.png b/community/images/emotions/em11.png new file mode 100644 index 0000000..9979744 Binary files /dev/null and b/community/images/emotions/em11.png differ diff --git a/community/images/emotions/em12.png b/community/images/emotions/em12.png new file mode 100644 index 0000000..0c9d57f Binary files /dev/null and b/community/images/emotions/em12.png differ diff --git a/community/images/emotions/em13.png b/community/images/emotions/em13.png new file mode 100644 index 0000000..5279d49 Binary files /dev/null and b/community/images/emotions/em13.png differ diff --git a/community/images/emotions/em14.png b/community/images/emotions/em14.png new file mode 100644 index 0000000..7594861 Binary files /dev/null and b/community/images/emotions/em14.png differ diff --git a/community/images/emotions/emotions-black.png b/community/images/emotions/emotions-black.png new file mode 100644 index 0000000..3e67ef9 Binary files /dev/null and b/community/images/emotions/emotions-black.png differ diff --git a/community/images/icon.png b/community/images/icon.png new file mode 100644 index 0000000..0969cba Binary files /dev/null and b/community/images/icon.png differ diff --git a/community/images/indentline-light.png b/community/images/indentline-light.png new file mode 100644 index 0000000..2c267b8 Binary files /dev/null and b/community/images/indentline-light.png differ diff --git a/community/images/indentline.png b/community/images/indentline.png new file mode 100644 index 0000000..f57ef44 Binary files /dev/null and b/community/images/indentline.png differ diff --git a/community/index.ftl b/community/index.ftl new file mode 100644 index 0000000..014c0bd --- /dev/null +++ b/community/index.ftl @@ -0,0 +1,25 @@ +<#include "macro-head.ftl"> + + + + <@head title="${blogTitle}"> + + + + + + ${topBarReplacement} +
+ <#include "header.ftl"> +
+
+ <#include "article-list.ftl"> +
+
+ <#include "side.ftl"> +
+ + + diff --git a/community/lang/lang_en_US.properties b/community/lang/lang_en_US.properties new file mode 100644 index 0000000..2860965 --- /dev/null +++ b/community/lang/lang_en_US.properties @@ -0,0 +1,287 @@ +# +# 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: 2.0.5.7, Sep 5, 2011 +# Author: Liang Ding +# + +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= +blogSyncLabel=Blog Sync +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 +blogSyncMgmtLabel=Blog Sync Management +syncMgmtLabel=Sync manage Blog +userName1Label=Username: +userPassword1Label=Password: +syncPostLabel=Sync Post +syncUpdateLabel=Sync Update +syncRemoveLabel=Sync Remove +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 +clearAllCacheLabel=Clear all cache +clearCacheLabel=Clear cache +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 +welcomeToSoloLabel=Welcome to B3log Solo! +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 +updatePreferenceFailLabel=Update Fail, please check Blog Host configuration! +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. +exceedMaxUploadSizeLabel=Size exceed 1M :-( +uploadFailLabel=Upload Fail! +fileEmptyLabel=File is empty +duplicatedPermalinkLabel=Duplicated permalink! +invalidPermalinkFormatLabel=Invalid permalink format! +duplicatedEmailLabel=Duplicated email! +canntBeLocalhostOnProductionLabel=Can not set host as localhost on production! +refreshAndRetryLabel=Please refresh and try again! +noDataLable=NO Data +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/community/lang/lang_zh_CN.properties b/community/lang/lang_zh_CN.properties new file mode 100644 index 0000000..0cedee0 --- /dev/null +++ b/community/lang/lang_zh_CN.properties @@ -0,0 +1,287 @@ +# +# 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: 2.0.6.2, Sep 5, 2011 +# Author: Liang Ding +# + +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 +clearAllCacheLabel=\u6e05\u9664\u6240\u6709\u9875\u9762\u7f13\u5b58 +clearCacheLabel=\u6e05\u9664\u672c\u9875\u7f13\u5b58 +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 +welcomeToSoloLabel=\u6b22\u8fce\u4f7f\u7528 B3log Solo\uff01 +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 +updatePreferenceFailLabel=\u66f4\u65b0\u5931\u8d25\uff0c\u8bf7\u4ed4\u7ec6\u68c0\u67e5\u201c\u535a\u5ba2\u5730\u5740\u201d\u7684\u914d\u7f6e\u662f\u5426\u6b63\u786e +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 +exceedMaxUploadSizeLabel=\u76ee\u524d\u53ea\u80fd\u4e0a\u4f20\u5c0f\u4e8e 1M \u7684\u6587\u4ef6 :-( +uploadFailLabel=\u4e0a\u4f20\u5931\u8d25\uff01 +fileEmptyLabel=\u6587\u4ef6\u4e3a\u7a7a\uff01 +duplicatedPermalinkLabel=\u94fe\u63a5\u91cd\u590d\uff01 +invalidPermalinkFormatLabel=\u975e\u6cd5\u7684\u94fe\u63a5\u683c\u5f0f\uff01 +duplicatedEmailLabel=\u90ae\u4ef6\u5730\u5740\u91cd\u590d\uff01 +canntBeLocalhostOnProductionLabel=GAE \u73af\u5883\u4e0a\u8bf7\u52ff\u6307\u5b9a\u535a\u5ba2\u5730\u5740\u4e3a localhost\uff01 +refreshAndRetryLabel=\u8bf7\u5237\u65b0\u91cd\u8bd5\uff01 +noDataLable=\u65e0\u6570\u636e +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/community/macro-comments.ftl b/community/macro-comments.ftl new file mode 100644 index 0000000..0e02388 --- /dev/null +++ b/community/macro-comments.ftl @@ -0,0 +1,185 @@ +<#macro comments commentList article> +
+ <#list commentList as comment> +
+ ${comment.commentName} +
+
+ <#if "http://" == comment.commentURL> + ${comment.commentName} + <#else> + ${comment.commentName} + + <#if comment.isReply> + @ + + ${comment.commentOriginalCommentName} + + ${comment.commentDate?string("yyyy-MM-dd HH:mm:ss")} +
+
+ ${comment.commentContent} +
+
+ <#if article.commentable> + + +
+
+
+ +
+<#if article.commentable> +
+ ${postCommentsLabel} +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + ${commentNameLabel} + + + + +
+ + ${commentEmailLabel} + + + + +
+ + ${commentURLLabel} + + + + +
+ + ${commentEmotionsLabel} + + + + + + + + + + + + + + + + + + +
+ + ${commentContentLabel} + + + + +
+ + ${captchaLabel} + + + + + validate + + +
+ +
+ + + +<#macro comment_script oId> + + + \ No newline at end of file diff --git a/community/macro-head.ftl b/community/macro-head.ftl new file mode 100644 index 0000000..71183d6 --- /dev/null +++ b/community/macro-head.ftl @@ -0,0 +1,15 @@ +<#macro head title> + +${title} +<#nested> + + + + + + + + + +${htmlHead} + \ No newline at end of file diff --git a/community/page.ftl b/community/page.ftl new file mode 100644 index 0000000..6dc10bd --- /dev/null +++ b/community/page.ftl @@ -0,0 +1,30 @@ +<#include "macro-head.ftl"> +<#include "macro-comments.ftl"> + + + + <@head title="${page.pageTitle} - ${blogTitle}"> + + + + + + ${topBarReplacement} +
+ <#include "header.ftl"> +
+
+
+ ${page.pageContent} +
+ <@comments commentList=pageComments article=page> +
+
+ <#include "side.ftl"> +
+ + <@comment_script oId=page.oId> + + diff --git a/community/preview.png b/community/preview.png new file mode 100644 index 0000000..13336db Binary files /dev/null and b/community/preview.png differ diff --git a/community/side.ftl b/community/side.ftl new file mode 100644 index 0000000..e43406f --- /dev/null +++ b/community/side.ftl @@ -0,0 +1,125 @@ + + diff --git a/community/skin.properties b/community/skin.properties new file mode 100644 index 0000000..856f9ab --- /dev/null +++ b/community/skin.properties @@ -0,0 +1,26 @@ +# +# Copyright (C) 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: Community skin. +# Version: 1.0.0.7, May 7, 2012 +# Author: Liyuan Li +# + +name=Community +version=2.0.3 +forSolo=0.4.5 +memo=Refers to http://demo.woothemes.com/skeptical/ \ No newline at end of file diff --git a/community/tag-articles.ftl b/community/tag-articles.ftl new file mode 100644 index 0000000..e2c6e35 --- /dev/null +++ b/community/tag-articles.ftl @@ -0,0 +1,32 @@ +<#include "macro-head.ftl"> + + + + <@head title="${tag.tagTitle} - ${blogTitle}"> + + + + + + ${topBarReplacement} +
+ <#include "header.ftl"> +
+
+

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

+ <#include "article-list.ftl"> +
+
+ <#include "side.ftl"> +
+ + + diff --git a/community/tags.ftl b/community/tags.ftl new file mode 100644 index 0000000..a8d12f8 --- /dev/null +++ b/community/tags.ftl @@ -0,0 +1,41 @@ +<#include "macro-head.ftl"> + + + + <@head title="${allTagsLabel} - ${blogTitle}"> + + + + + + ${topBarReplacement} +
+ <#include "header.ftl"> +
+
+
+ + +
+
+
+ <#include "side.ftl"> +
+ + + + diff --git a/ease/archive-articles.ftl b/ease/archive-articles.ftl new file mode 100644 index 0000000..acc0f30 --- /dev/null +++ b/ease/archive-articles.ftl @@ -0,0 +1,25 @@ +<#include "macro-head.ftl"> + + + + <@head title="${archiveDate.archiveDateMonth} ${archiveDate.archiveDateYear} (${archiveDate.archiveDatePublishedArticleCount}) - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#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/ease/archives.ftl b/ease/archives.ftl new file mode 100644 index 0000000..521169b --- /dev/null +++ b/ease/archives.ftl @@ -0,0 +1,34 @@ +<#include "macro-head.ftl"> + + + + <@head title="${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "header.ftl"> + + <#include "footer.ftl"> + + diff --git a/ease/article-list.ftl b/ease/article-list.ftl new file mode 100644 index 0000000..277cde2 --- /dev/null +++ b/ease/article-list.ftl @@ -0,0 +1,59 @@ + +<#if paginationCurrentPageNum != paginationPageCount> +
${moreLabel}
+ \ No newline at end of file diff --git a/ease/article.ftl b/ease/article.ftl new file mode 100644 index 0000000..a9defdd --- /dev/null +++ b/ease/article.ftl @@ -0,0 +1,108 @@ +<#include "macro-head.ftl"> +<#include "macro-comments.ftl"> + + + + <@head title="${article.articleTitle} - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "header.ftl"> +
+
+
+

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

+ +
+
+
+ ${article.articleContent} + <#if "" != article.articleSign.signHTML?trim> +

+ ${article.articleSign.signHTML} +

+ +
+ +
+ <#if 0 != relevantArticlesDisplayCount> +
+ + <#if 0 != randomArticlesDisplayCount> +
+ +
+
+
+ <#if nextArticlePermalink??> + + + <#if previousArticlePermalink??> + + +
+
+
+ <@comments commentList=articleComments article=article> +
+ <#include "footer.ftl"> + <@comment_script oId=article.oId> + page.tips.externalRelevantArticlesDisplayCount = "${externalRelevantArticlesDisplayCount}"; + <#if 0 != randomArticlesDisplayCount> + page.loadRandomArticles('

${randomArticlesLabel}

'); + + <#if 0 != relevantArticlesDisplayCount> + page.loadRelevantArticles('${article.oId}', '

${relevantArticlesLabel}

'); + + <#if 0 != externalRelevantArticlesDisplayCount> + page.loadExternalRelevantArticles("<#list article.articleTags?split(",") as articleTag>${articleTag}<#if articleTag_has_next>,"); + + + + diff --git a/ease/author-articles.ftl b/ease/author-articles.ftl new file mode 100644 index 0000000..b27dcbe --- /dev/null +++ b/ease/author-articles.ftl @@ -0,0 +1,19 @@ +<#include "macro-head.ftl"> + + + + <@head title="${authorName} - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "header.ftl"> +
+

${author1Label}${authorName}

+ <#include "article-list.ftl"> +
+ <#include "footer.ftl"> + + diff --git a/ease/css/ease-ie8.css b/ease/css/ease-ie8.css new file mode 100644 index 0000000..224afc1 --- /dev/null +++ b/ease/css/ease-ie8.css @@ -0,0 +1,47 @@ +/* + * skin ease style for IE8 + * + * @author Liyuan Li + * @version 1.0.0.1, May 22, 2012 +*/ +.nav { + border-top: 1px solid #e2e2e2; + border-bottom: 1px solid #e2e2e2; +} + +.article-next { + border: 1px solid #e2e2e2; + border-top-color: #fefefe; +} + +.article-next:hover { + background-color: #f2f2f2; + border: 1px solid #e2e2e2; +} + +.comment-body-ref { + border: 1px solid #e2e2e2; +} + +#tags a, +.archives > div, +.dynamic .module, +.form input[type="text"], +.form input[type="password"], +.form textarea, +.article-relative { + border: 1px solid #f2f2f2; +} + +#tags a:hover, +.archives>div:hover, +.dynamic .module:hover, +.form input:focus, +.form textarea:focus, +.article-relative:hover { + border: 1px solid #e2e2e2; +} + +.article-relative { + width: 363px; +} \ No newline at end of file diff --git a/ease/css/ease-ie8.min.css b/ease/css/ease-ie8.min.css new file mode 100644 index 0000000..d045f3a --- /dev/null +++ b/ease/css/ease-ie8.min.css @@ -0,0 +1,6 @@ +.nav{border-top:1px solid #e2e2e2;border-bottom:1px solid #e2e2e2;} +.article-next{border:1px solid #e2e2e2;border-top-color:#fefefe;} +.article-next:hover{background-color:#f2f2f2;border:1px solid #e2e2e2;} +#tags a,.archives > div,.dynamic .module,.form input[type=text],.form input[type=password],.form textarea,.article-relative{border:1px solid #f2f2f2;} +.article-relative{width:363px;} +.comment-body-ref,#tags a:hover,.archives>div:hover,.dynamic .module:hover,.form input:focus,.form textarea:focus,.article-relative:hover{border:1px solid #e2e2e2;} \ No newline at end of file diff --git a/ease/css/ease.css b/ease/css/ease.css new file mode 100644 index 0000000..d855534 --- /dev/null +++ b/ease/css/ease.css @@ -0,0 +1,645 @@ +/* + * Copyright (c) 2009, 2010, 2011, 2012, 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. + */ + /* + * skin ease style + * + * @author Liyuan Li + * @version 1.0.1.0, May 28, 2012 +*/ +/* start base */ +html, body, div, ul, li { + margin: 0; + padding: 0; +} + +body { + font-family: Verdana,arial,\5fae\8f6f\96c5\9ed1; + font-size: 12px; +} + +a { + outline: none; + color: #009EB8; + text-decoration: none; +} + +a:visited { + color: #00b4d2; +} + +a:hover { + text-decoration: underline; +} + +a:active { + color: #00889f; +} + +img { + vertical-align: middle; + border: 0; +} + +textarea, input { + outline: none; +} + +sup { + font-size: 10px; + font-weight: normal; + -webkit-text-size-adjust: none; +} + +.left { + float: left; +} + +.right { + float: right; +} + +.clear { + background-color: transparent; + border: 0; + clear: both; + display: block; + font-size: 0; + height: 0; + line-height: 0; + overflow: hidden; +} + +.none { + display: none; +} + +.ft-gray { + color: #808080; +} + +.ft-gray:visited { + color: #9a9a9a +} + +.ft-gray:hover { + color: #676767; + text-decoration: none; +} + +.logo { + padding: 0 5px; + text-shadow: 0 0 1px #e2e2e2; +} + +.em00, .em01, .em02, .em03, .em04, .em05, .em06, .em07, .em08, .em09, +.em10, .em11, .em12, .em13, .em14 { + background-image: url("../../ease/images/emotions/emotions-classic.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; +} +/* end base */ + +/* start ico */ +#search, +.translate-ico { + background-image: url("/skins/ease/images/icons.png"); +} + +.translate-ico { + background-position: 1px -125px; + background-repeat: no-repeat; + border: 1px solid #e2e2e2; + border-radius: 3px; + cursor: pointer; + float: right; + height: 16px; + margin: -3px 0 0 15px;; + padding: 1px; + width: 16px; +} + +.translate-ico:hover { + border-color: #9a9a9a; + box-shadow: 0 0 1px #808080; + background-color: #fefefe; +} +/* end ico */ + +/* start frame */ +.wrapper { + margin: 0 50px; +} + +.body { + margin: 0 auto 50px; + width: 990px; +} +/* end frame */ + +/* start header */ +.header { + position: fixed; + width: 100%; + background-color: #fefefe; + z-index: 1; +} + +.header .title { + border-bottom: 1px solid #808080; + font-size: 26px; + font-weight: normal; +} + +.header .sub-title { + font-size: 11px; +} + +#search { + background-position: 7px -99px; + background-repeat: no-repeat; + background-color: #FFF; + border: 1px solid #e2e2e2; + border-radius: 2px 2px 2px 2px; + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1) inset; + color: #808080; + float: right; + font-size: 14px; + height: 19px; + line-height: 145%; + padding: 4px 10px 4px 28px; + width: 24px; + -moz-transition: width 0.4s ease, background 0.4s ease; + -webkit-transition: width 0.4s ease, background 0.4s ease; + transition: width 0.4s ease, background 0.4s ease; +} + +#search:focus { + background-color: #FeFeFe; + width: 196px; +} + +.banner { + margin-bottom: 20px; +} + +.banner .notice { + float: left; + margin: 20px 0 0 50px; +} + +.nav { + background-color: #FFF; + box-shadow: 0 2px 2px #e2e2e2, 0 3px 3px -3px #E2E2E2 inset; + height: 29px; +} + +.nav ul { + list-style: none; + float: left; +} + +.nav li { + float: left; +} + +.nav a { + display: block; + float: left; + font-size: 14px; + line-height: 29px; + margin-right: 30px; + text-shadow: 0 0 1px #E2E2E2; +} + +.nav a.current { + color: #00b4d2; + font-weight: 700; + text-shadow: 0px 0px 3px #E2E2E2; +} + +.nav img { + margin-left: 3px; +} +/* end header */ + +/* start footer */ +.footer { + background-color: #FDFDFD; + border-top: 2px solid #e2e2e2; + font-size: 11px; + padding: 12px 0; + -webkit-text-size-adjust: none; +} + +#goTop { + background: url("/skins/ease/images/icons.png") no-repeat scroll 5px -51px #f6f6f6; + border-radius: 2px 2px 0 0; + cursor: pointer; + font-size: 11px; + height: 21px; + line-height: 21px; + padding: 0 10px 0 23px; + position: absolute; + right: 50px; + display: none; +} + +#goTop:hover { + background-color: #e2e2e2; +} +/* end footer*/ + +/* start article list */ +.body > ul { + list-style: none; +} + +.article { + border-bottom: 1px solid #f6f6f6; + padding: 20px 70px 20px; +} + +.article:hover { + border-bottom-color: #e2e2e2; + box-shadow: 0 0 1px #f6f6f6 inset; + background-color: #fefefe; +} + +.article-body { + line-height: 145%; + overflow: hidden; + word-wrap: break-word; +} + +.article-body ol, .article-body ul { + margin-left: 40px; +} + +.article-body a { + color: #808080; + text-decoration: underline; +} + +.article-body a:vidited { + color: #9a9a9a +} + +.article-body a:hover { + color: #676767; +} + +.article-body>div { + min-height: 32px; +} + +.article-title h2 { + display: inline; +} + +.article-title span { + cursor: pointer; +} + +.article-next { + background-color: #FEFEFE; + box-shadow: 0 0 3px #E2E2E2 inset; + cursor: pointer; + font-size: 14px; + line-height: 36px; + text-align: center; +} + +.article-next:hover { + box-shadow: 0 0 3px #E2E2E2, 0 0 3px #E2E2E2 inset; +} +/* end article list */ + +/* start article */ +.article-relative { + background-color: #FEFEFE; + box-shadow: 0 0 2px #E2E2E2; + float: left; + margin: 20px 0; + padding: 0 20px 10px; + width: 365px; +} + +.article-relative:hover { + background-color: #fff; + box-shadow: 0 0 4px #e2e2e2; +} + +.article-relative ul { + list-style: none; +} + +#relevantArticles { + margin-right: 40px; +} + +#externalRelevantArticles { + width: 297px; + margin-top: 0; +} +/* end article*/ + +/* start comment */ +#comments { + padding: 20px 70px 20px; + position: relative; +} + +.comment-header { + float: left; + background-color: #FFF; + border: 1px solid #DEDEDE; + padding: 2px; + height: 60px; + width: 60px; +} + +.comment-panel { + float: left; + line-height: 16px; + margin: 0 10px 20px; + min-height: 64px; + overflow: hidden; + width: 760px; +} + +.comment-body-ref { + background-color: #FEFEFE; + box-shadow: 0 0 2px #E2E2E2; + display: block; + left: 140px; + padding: 10px; + opacity: 0.9; + filter: alpha(opacity=90); + position: absolute; +} + +.comment-body-ref > .comment-header { + border: 0 none; + float: right; + height: 48px; + width: 48px; + padding: 0; +} + +.comment-body-ref > .comment-panel { + margin: 0 20px 0 0; + min-height: 48px; + width: 756px; +} + +.form { + padding: 0 70px 20px; + float: left; +} + +.form th { + text-align: right; + white-space: nowrap; +} + +.form input[type="text"], +.form input[type="password"], +.form textarea { + background-color: #FEFEFE; + border-width: 0; + box-shadow: 0 0 2px #E2E2E2; + font-family: Verdana,arial,\5fae\8f6f\96c5\9ed1; + font-size: 12px; + margin: 0 5px 10px 0; + outline: medium none; + padding: 0 3px; + height: 28px; + line-height: 28px; + width: 260px; +} + +.form input:focus, +.form textarea:focus { + box-shadow: 0 0 4px #E2E2E2; +} + +.form textarea { + height: 120px; + overflow: auto; + width: 426px; +} + +.form button { + background-color: #F6F6F6; + border: 0 none; + box-shadow: 0 0 2px #E2E2E2; + height: 28px; + line-height: 28px; + padding: 0 12px; + color: #A7A7A7; +} + +.form button:hover { + box-shadow: 0 0 4px #E2E2E2; + text-shadow: 0 0 2px; +} + +.form img { + background-color: #FEFEFE; + box-shadow: 0 0 2px #E2E2E2; + cursor: pointer; + height: 24px; + padding: 1px; +} +/* end comment */ + +/* start tags */ +#tags li { + float: left; + height: 38px; +} + +#tags a { + margin: 3px 6px; + padding: 3px 12px; + background-color: #FEFEFE; + box-shadow: 0 0 2px #E2E2E2; + float: left; +} + +#tags a:hover { + text-shadow: 0 0 2px; + text-decoration: none; + box-shadow: 0 0 4px #E2E2E2; +} + +.tags1, .tags1:visited { + font-size: 12px; + color: #a7a7a7; +} + +.tags2, .tags2:visited { + font-size: 14px; + color: #808080; +} + +.tags3, .tags3:visited { + font-size: 16px; + color: #595959; +} + +.tags4, .tags4:visited { + font-size: 18px; + color: #323232; +} + +.tags5, .tags5:visited { + font-size: 20px; + color: #0a0a0a; +} +/* end tags */ + +/* start archives */ +.archives { + position: relative; +} + +.archives > div { + background-color: #FEFEFE; + box-shadow: 0 0 2px #E2E2E2; + padding-bottom: 20px; + line-height: 20px; + margin: 20px; + width: 276px; + position: absolute; + top: 0; +} + +.archives h3 { + text-align: center; +} + +.archives > div:hover { + box-shadow: 0 0 4px #E2E2E2; +} + +.archives a { + display: block; + margin-left: 80px; +} +/* end archives */ + +/* start dynamic */ +.dynamic ul { + list-style: none; +} + +.dynamic h3 { + text-align: center; +} + +.dynamic .module { + background-color: #FEFEFE; + box-shadow: 0 0 2px #E2E2E2; + float: left; + line-height: 20px; + margin: 20px; + padding: 10px 20px 20px; + width: 393px; +} + +.dynamic .module:hover { + box-shadow: 0 0 4px #E2E2E2; +} + +.dynamic .side-comments { + width: 600px; +} + +.dynamic .side-comments .comment-panel { + width: 510px; +} + +.dynamic .side-tags { + width: 186px; +} + +.dynamic .side-tags li { + float: left; + margin: 0 5px; +} +/* end dynamic */ + +/* start links */ +.links li { + float: left; + margin: 0 20px 10px; + width: 273px; +} +/* end links */ + +/* start not list */ +.other-main { + display: inline-block; + margin: 50px 20px 0; + width: 950px; +} +/* end not list */ \ No newline at end of file diff --git a/ease/css/ease.min.css b/ease/css/ease.min.css new file mode 100644 index 0000000..9a17ae6 --- /dev/null +++ b/ease/css/ease.min.css @@ -0,0 +1,103 @@ +html,body,div,ul,li{margin:0;padding:0;} +body{font-family:Verdana,arial,\5fae\8f6f\96c5\9ed1;font-size:12px;} +a{outline:none;color:#009EB8;text-decoration:none;} +a:visited{color:#00b4d2;} +a:hover{text-decoration:underline;} +a:active{color:#00889f;} +img{vertical-align:middle;border:0;} +textarea,input{outline:none;} +sup{font-size: 10px;-webkit-text-size-adjust:none;font-weight: normal;} +.right{float:right;} +.clear{background-color:transparent;border:0;clear:both;display:block;font-size:0;height:0;line-height:0;overflow:hidden;} +.none{display:none;} +.ft-gray{color:gray;} +.ft-gray:visited{color:#9a9a9a;} +.ft-gray:hover{color:#676767;text-decoration:none;} +.logo{text-shadow:0 0 1px #e2e2e2;padding:0 5px;} +.em00,.em01,.em02,.em03,.em04,.em05,.em06,.em07,.em08,.em09,.em10,.em11,.em12,.em13,.em14{background-image:url(../../ease/images/emotions/emotions-classic.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;} +#search,.translate-ico{background-image:url(/skins/ease/images/icons.png);} +.translate-ico{background-position:1px -125px;background-repeat:no-repeat;border:1px solid #e2e2e2;border-radius:3px;cursor:pointer;float:right;height:16px;margin:-3px 0 0 15px;width:16px;padding:1px;} +.translate-ico:hover{box-shadow:0 0 1px gray;background-color:#fefefe;border-color:#9a9a9a;} +.wrapper{margin:0 50px;} +.body{width:990px;margin:0 auto 50px;} +.header{position:fixed;width:100%;background-color:#fefefe;z-index:1;} +.header .title{border-bottom:1px solid gray;font-size:26px;font-weight:400;} +.header .sub-title{font-size:11px;} +#search{background-position:7px -99px;background-repeat:no-repeat;background-color:#FFF;border:1px solid #e2e2e2;border-radius:2px 2px 2px 2px;box-shadow:0 1px 1px rgba(0,0,0,0.1) inset;color:gray;float:right;font-size:14px;height:19px;line-height:145%;width:24px;-moz-transition:width .4s ease, background .4s ease;-webkit-transition:width .4s ease, background .4s ease;transition:width .4s ease, background .4s ease;padding:4px 10px 4px 28px;} +#search:focus{background-color:#FeFeFe;width:196px;} +.banner{margin-bottom:20px;} +.banner .notice{float:left;margin:20px 0 0 50px;} +.nav{background-color:#FFF;box-shadow:0 2px 2px #e2e2e2, 0 3px 3px -3px #E2E2E2 inset;height:29px;} +.nav ul{list-style:none;float:left;} +.nav a{display:block;float:left;font-size:14px;line-height:29px;margin-right:30px;text-shadow:0 0 1px #E2E2E2;} +.nav a.current{color:#00b4d2;font-weight:700;text-shadow:0 0 3px #E2E2E2;} +.nav img{margin-left:3px;} +.footer{background-color:#FDFDFD;border-top:2px solid #e2e2e2;font-size:11px;-webkit-text-size-adjust:none;padding:12px 0;} +#goTop{background:url(/skins/ease/images/icons.png) no-repeat scroll 5px -51px #f6f6f6;border-radius:2px 2px 0 0;cursor:pointer;font-size:11px;height:21px;line-height:21px;position:absolute;right:50px;display:none;padding:0 10px 0 23px;} +#goTop:hover{background-color:#e2e2e2;} +.article{border-bottom:1px solid #f6f6f6;padding:20px 70px 20px;} +.article:hover{border-bottom-color:#e2e2e2;box-shadow:0 0 1px #f6f6f6 inset;background-color:#fefefe;} +.article-body{line-height:145%;overflow:hidden;word-wrap:break-word;} +.article-body ol,.article-body ul{margin-left:40px;} +.article-body a{color:gray;text-decoration:underline;} +.article-body a:hover{color:#676767;} +.article-body>div{min-height:32px;} +.article-title h2{display:inline;} +.article-title span{cursor:pointer;} +.article-next{background-color:#FEFEFE;box-shadow:0 0 3px #E2E2E2 inset;cursor:pointer;font-size:14px;line-height:36px;text-align:center;} +.article-next:hover{box-shadow:0 0 3px #E2E2E2, 0 0 3px #E2E2E2 inset;} +.article-relative{background-color:#FEFEFE;box-shadow:0 0 2px #E2E2E2;float:left;width:365px;margin:20px 0;padding:0 20px 10px;} +.article-relative:hover{background-color:#fff;box-shadow:0 0 4px #e2e2e2;} +#relevantArticles{margin-right:40px;} +#externalRelevantArticles{width:297px;margin-top:0;} +#comments{position:relative;padding:20px 70px;} +.comment-header{float:left;background-color:#FFF;border:1px solid #DEDEDE;padding:2px;height:60px;width:60px;} +.comment-panel{float:left;line-height:16px;min-height:64px;overflow:hidden;width:760px;margin:0 10px 20px;} +.comment-body-ref{background-color:#FEFEFE;box-shadow:0 0 2px #E2E2E2;display:block;left:140px;opacity:0.9;filter:alpha(opacity=90);position:absolute;padding:10px;} +.comment-body-ref > .comment-header{border:0 none;float:right;height:48px;padding:0;width:48px;} +.comment-body-ref > .comment-panel{min-height:48px;width:756px;margin:0 20px 0 0;} +.form{float:left;padding:0 70px 20px;} +.form th{text-align:right;white-space:nowrap;} +.form input[type=text],.form input[type=password],.form textarea{background-color:#FEFEFE;box-shadow:0 0 2px #E2E2E2;font-family:Verdana,arial,\5fae\8f6f\96c5\9ed1;font-size:12px;outline:medium none;height:28px;line-height:28px;width:260px;border-width:0;margin:0 5px 10px 0;padding:0 3px;} +.form textarea{height:120px;overflow:auto;width:426px;} +.form button{background-color:#F6F6F6;border:0 none;box-shadow:0 0 2px #E2E2E2;height:28px;line-height:28px;color:#A7A7A7;padding:0 12px;} +.form button:hover{box-shadow:0 0 4px #E2E2E2;text-shadow:0 0 2px;} +.form img{background-color:#FEFEFE;box-shadow:0 0 2px #E2E2E2;cursor:pointer;height:24px;padding:1px;} +#tags li{float:left;height:38px;} +#tags a{background-color:#FEFEFE;box-shadow:0 0 2px #E2E2E2;float:left;margin:3px 6px;padding:3px 12px;} +#tags a:hover{text-shadow:0 0 2px;text-decoration:none;box-shadow:0 0 4px #E2E2E2;} +.tags1,.tags1:visited{font-size:12px;color:#a7a7a7;} +.tags2,.tags2:visited{font-size:14px;color:gray;} +.tags3,.tags3:visited{font-size:16px;color:#595959;} +.tags4,.tags4:visited{font-size:18px;color:#323232;} +.tags5,.tags5:visited{font-size:20px;color:#0a0a0a;} +.archives{position: relative;} +.archives > div{ background-color: #FEFEFE;box-shadow: 0 0 2px #E2E2E2;padding-bottom: 20px;line-height: 20px;margin: 20px;width: 276px;position: absolute;top: 0;} +.archives h3 {text-align: center;} +.archives a{display:block;margin-left: 80px;} +.dynamic .module{background-color:#FEFEFE;box-shadow:0 0 2px #E2E2E2;float:left;line-height:20px;width:393px;margin:20px;padding:10px 20px 20px;} +.dynamic .side-comments{width:600px;} +.dynamic .side-comments .comment-panel{width:510px;} +.dynamic .side-tags{width:186px;} +.dynamic .side-tags li{float:left;margin:0 5px;} +.links li{float:left;width:273px;margin:0 20px 10px;} +.other-main{display:inline-block;width:950px;margin:50px 20px 0;} +.left,.nav li{float:left;} +.article-body a:vidited{color:#9a9a9a;} +.body > ul,.article-relative ul,.dynamic ul{list-style:none;} +.dynamic h3{text-align:center;} +.form input:focus,.form textarea:focus,.archives>div:hover,.dynamic .module:hover{box-shadow:0 0 4px #E2E2E2;} \ No newline at end of file diff --git a/ease/dynamic.ftl b/ease/dynamic.ftl new file mode 100644 index 0000000..1b5024b --- /dev/null +++ b/ease/dynamic.ftl @@ -0,0 +1,106 @@ +<#include "macro-head.ftl"> + + + + <@head title="${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "header.ftl"> +
+
+ <#if 0 != recentComments?size> +
+

${recentCommentsLabel}

+
    + <#list recentComments as comment> +
  • + ${comment.commentName} +
    + + <#if "http://" == comment.commentURL> + ${comment.commentName} + <#else> + ${comment.commentName} + + +
    + ${comment.commentDate?string("yyyy-MM-dd HH:mm:ss")} + ${viewLabel} +
    + +
    + ${comment.commentContent} +
    +
    +
    +
  • + +
+
+ + <#if 0 != mostUsedTags?size> +
+

${popTagsLabel}

+ +
+
+ +
+ <#if 0 != mostCommentArticles?size> +
+

${mostCommentArticlesLabel}

+ +
+ + <#if 0 != mostViewCountArticles?size> +
+

${mostViewCountArticlesLabel}

+ +
+ +
+
+
+ <#include "footer.ftl"> + + diff --git a/ease/footer.ftl b/ease/footer.ftl new file mode 100644 index 0000000..9db4a9d --- /dev/null +++ b/ease/footer.ftl @@ -0,0 +1,76 @@ + +
TOP
+ + + + +${plugins} diff --git a/ease/header.ftl b/ease/header.ftl new file mode 100644 index 0000000..2dfaca0 --- /dev/null +++ b/ease/header.ftl @@ -0,0 +1,56 @@ +
+ + +
\ No newline at end of file diff --git a/ease/images/404.png b/ease/images/404.png new file mode 100644 index 0000000..47f24c8 Binary files /dev/null and b/ease/images/404.png differ diff --git a/ease/images/ajax-loader.gif b/ease/images/ajax-loader.gif new file mode 100644 index 0000000..02ffcbc Binary files /dev/null and b/ease/images/ajax-loader.gif differ diff --git a/ease/images/emotions/em00.png b/ease/images/emotions/em00.png new file mode 100644 index 0000000..2f631e8 Binary files /dev/null and b/ease/images/emotions/em00.png differ diff --git a/ease/images/emotions/em01.png b/ease/images/emotions/em01.png new file mode 100644 index 0000000..a5e3586 Binary files /dev/null and b/ease/images/emotions/em01.png differ diff --git a/ease/images/emotions/em02.png b/ease/images/emotions/em02.png new file mode 100644 index 0000000..b4839d2 Binary files /dev/null and b/ease/images/emotions/em02.png differ diff --git a/ease/images/emotions/em03.png b/ease/images/emotions/em03.png new file mode 100644 index 0000000..141a985 Binary files /dev/null and b/ease/images/emotions/em03.png differ diff --git a/ease/images/emotions/em04.png b/ease/images/emotions/em04.png new file mode 100644 index 0000000..b188dc9 Binary files /dev/null and b/ease/images/emotions/em04.png differ diff --git a/ease/images/emotions/em05.png b/ease/images/emotions/em05.png new file mode 100644 index 0000000..763c208 Binary files /dev/null and b/ease/images/emotions/em05.png differ diff --git a/ease/images/emotions/em06.png b/ease/images/emotions/em06.png new file mode 100644 index 0000000..8d20c22 Binary files /dev/null and b/ease/images/emotions/em06.png differ diff --git a/ease/images/emotions/em07.png b/ease/images/emotions/em07.png new file mode 100644 index 0000000..5fc5af9 Binary files /dev/null and b/ease/images/emotions/em07.png differ diff --git a/ease/images/emotions/em08.png b/ease/images/emotions/em08.png new file mode 100644 index 0000000..524e719 Binary files /dev/null and b/ease/images/emotions/em08.png differ diff --git a/ease/images/emotions/em09.png b/ease/images/emotions/em09.png new file mode 100644 index 0000000..bcb4041 Binary files /dev/null and b/ease/images/emotions/em09.png differ diff --git a/ease/images/emotions/em10.png b/ease/images/emotions/em10.png new file mode 100644 index 0000000..5ed248a Binary files /dev/null and b/ease/images/emotions/em10.png differ diff --git a/ease/images/emotions/em11.png b/ease/images/emotions/em11.png new file mode 100644 index 0000000..9d2b9c3 Binary files /dev/null and b/ease/images/emotions/em11.png differ diff --git a/ease/images/emotions/em12.png b/ease/images/emotions/em12.png new file mode 100644 index 0000000..68568a5 Binary files /dev/null and b/ease/images/emotions/em12.png differ diff --git a/ease/images/emotions/em13.png b/ease/images/emotions/em13.png new file mode 100644 index 0000000..5ec5408 Binary files /dev/null and b/ease/images/emotions/em13.png differ diff --git a/ease/images/emotions/em14.png b/ease/images/emotions/em14.png new file mode 100644 index 0000000..f3feb4b Binary files /dev/null and b/ease/images/emotions/em14.png differ diff --git a/ease/images/emotions/emotions-classic.png b/ease/images/emotions/emotions-classic.png new file mode 100644 index 0000000..4be304f Binary files /dev/null and b/ease/images/emotions/emotions-classic.png differ diff --git a/ease/images/icons.png b/ease/images/icons.png new file mode 100644 index 0000000..b11023a Binary files /dev/null and b/ease/images/icons.png differ diff --git a/ease/index.ftl b/ease/index.ftl new file mode 100644 index 0000000..11cb87c --- /dev/null +++ b/ease/index.ftl @@ -0,0 +1,18 @@ +<#include "macro-head.ftl"> + + + + <@head title="${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "header.ftl"> +
+ <#include "article-list.ftl"> +
+ <#include "footer.ftl"> + + diff --git a/ease/js/ease.js b/ease/js/ease.js new file mode 100644 index 0000000..fecdedc --- /dev/null +++ b/ease/js/ease.js @@ -0,0 +1,306 @@ +/* + * Copyright (c) 2009, 2010, 2011, 2012, 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. + */ + +/** + * @fileoverview ease js. + * + * @author Liyuan Li + * @version 1.0.0.9, May 28, 2012 + */ +var goTranslate = function () { + window.open("http://translate.google.com/translate?sl=auto&tl=auto&u=" + location.href); +}; + +var getNextPage = function () { + var $more = $(".article-next"); + currentPage += 1; + var path = "/articles/"; + if(location.pathname.indexOf("tags") > -1) { + var tagsPathnaem = location.pathname.split("/tags/"); + var tags = tagsPathnaem[1].split("/"); + path = "/articles/tags/" + tags[0] + "/"; + } else if (location.pathname.indexOf("archives") > -1) { + var archivesPathname = location.pathname.split("/archives/"); + var archives = archivesPathname[1].split("/"); + path = "/articles/archives/" + archives[0] + "/" + archives[1] + "/"; + } + + $.ajax({ + url: latkeConfig.staticServePath + path + currentPage, + type: "GET", + beforeSend: function () { + $more.css("background", + "url(" + latkeConfig.staticServePath + "/skins/ease/images/ajax-loader.gif) no-repeat scroll center center #fefefe"); + }, + success: function(result, textStatus){ + if (!result.sc) { + return; + } + + var articlesHTML = "", + pagination = result.rslts.pagination; + + // append articles + for (var i = 0; i < result.rslts.articles.length; i++) { + var article = result.rslts.articles[i]; + + articlesHTML += '
  • ' + + '
    ' + + '

    ' + + '' + + article.articleTitle + + ''; + if (article.hasUpdated) { + articlesHTML += '' + Label.updatedLabel + ''; + } + + if (article.articlePutTop) { + articlesHTML += '' + Label.topArticleLabel + ''; + } + + articlesHTML += '

    ' + + '' + + '
    ' + + '
    ' + + '
    ' + + '
    ' + + article.articleAbstract + + '
    ' + + '
    ' + + '
    ' + + '' + + '
  • '; + } + + $(".body>ul").append(articlesHTML); + + // 最后一页处理 + if (pagination.paginationPageCount === currentPage) { + $more.remove(); + } else { + $more.css("background", "none"); + } + } + }); +}; + +var ease = { + $header: $(".header"), + $banner: $(".header").find(".banner"), + headerH: $(".header").height(), + $body: $(".body"), + $nav: $(".nav"), + getCurrentPage: function () { + var $next = $(".article-next"); + if ($next.length > 0) { + window.currentPage = $next.data("page"); + } + }, + + setNavCurrent: function () { + $(".nav ul a").each(function () { + var $this = $(this); + if ($this.attr("href") === latkeConfig.servePath + location.pathname) { + $this.addClass("current"); + } else if (/\/[0-9]+$/.test(location.pathname)) { + $(".nav ul li")[0].className = "current"; + } + }); + }, + + initCommon: function () { + Util.init(); + Util.replaceSideEm($(".recent-comments-content")); + Util.buildTags("tagsSide"); + this.$body.css("paddingTop", this.headerH + "px"); + }, + + initArchives: function () { + var $archives = $(".archives"); + if ($archives.length < 1) { + return; + } + + var years = [], + $archiveList = $archives.find("span").each(function () { + var year = $(this).data("year"), + tag = true; + for (var i = 0; i < years.length; i++) { + if (year === years[i]) { + tag = false; + break; + } + } + if (tag) { + years.push(year); + } + }); + + var yearsHTML = ""; + for (var j = 0; j < years.length; j++) { + var monthsHTML = ""; + for (var l = 0; l < $archiveList.length; l++) { + var $month = $($archiveList[l]); + if ($month.data("year") === years[j]) { + monthsHTML += $month.html(); + } + } + + yearsHTML += "

    " + years[j] + "

    " + monthsHTML + "
    "; + } + + $archives.html(yearsHTML); + + // position + var $items = $(".archives>div"), + line = 0, + top = 0, + heights = []; + + for (var m = 0; m < $items.length; m++) { + for (var n = 0; n < 3; n++) { + if (m >= $items.length) { + break; + } + + $items[m].style.left = (n * 318) + "px"; + + if (line > 0) { + if ($items[m - 3].style.top !== "") { + top = parseInt($items[m - 3].style.top); + } + $items[m].style.top = $($items[m - 3]).height() + 60 + top + "px"; + + heights[n] = parseInt($items[m].style.top) + $($items[m]).height() + 60; + } else { + heights[n] = $($items[m]).height() + 60; + } + + if (n < 2) { + m += 1; + } + } + line += 1; + } + + // archive height + $archives.height(heights.sort()[2]); + }, + + scrollEvent: function () { + var _it = this; + $(window).scroll(function () { + var y = $(window).scrollTop(); + + // header event + if (y >= _it.headerH && _it.$banner.css("display") === "block" && + $("body").height() - $(window).height() > _it.headerH * 2) { + _it.$header.css("top", "0"); + _it.$banner.css("display", "none"); + _it.$body.css("paddingTop", _it.$nav.height() + "px"); + } + + if (y < _it.headerH && _it.$banner.css("display") === "none") { + _it.$header.css("top", "auto"); + _it.$banner.css("display", "block"); + _it.$body.css("paddingTop", _it.headerH + "px"); + } + + // go top icon show or hide + if (y > _it.headerH) { + var bodyH = $(window).height(); + var top = y + bodyH - 21; + if ($("body").height() - 58 <= y + bodyH) { + top = $(".footer").offset().top - 21; + } + $("#goTop").fadeIn("slow").css("top", top); + } else { + $("#goTop").hide(); + } + }); + }, + + setDynamic: function () { + var $dynamic = $(".dynamic"); + if ($(".dynamic").length < 1) { + return; + } + + var $comments = $dynamic.find(".side-comments"), + $tags = $dynamic.find(".side-tags"), + $mostComment = $dynamic.find(".side-most-comment"), + $mostView = $dynamic.find(".side-most-view"); + + if ($comments.height() > $tags.height()) { + $tags.height($comments.height()); + } else { + $comments.height($tags.height()); + } + + if ($mostComment.height() > $mostView.height()) { + $mostView.height($mostComment.height()); + } else { + $mostComment.height($mostView.height()); + } + + // emotions + $(".article-body").each(function () { + this.innerHTML = Util.replaceEmString($(this).html()); + }); + } +}; + +(function () { + ease.getCurrentPage(); + ease.initCommon(); + ease.scrollEvent(); + ease.setNavCurrent(); + + ease.initArchives(); + ease.setDynamic(); +})(); \ No newline at end of file diff --git a/ease/js/ease.min.js b/ease/js/ease.min.js new file mode 100644 index 0000000..1c3c606 --- /dev/null +++ b/ease/js/ease.min.js @@ -0,0 +1 @@ +var goTranslate=function(){window.open("http://translate.google.com/translate?sl=auto&tl=auto&u="+location.href)};var getNextPage=function(){var $more=$(".article-next");currentPage+=1;var path="/articles/";if(location.pathname.indexOf("tags")>-1){var tagsPathnaem=location.pathname.split("/tags/");var tags=tagsPathnaem[1].split("/");path="/articles/tags/"+tags[0]+"/"}else if(location.pathname.indexOf("archives")>-1){var archivesPathname=location.pathname.split("/archives/");var archives=archivesPathname[1].split("/");path="/articles/archives/"+archives[0]+"/"+archives[1]+"/"}$.ajax({url:latkeConfig.staticServePath+path+currentPage,type:"GET",beforeSend:function(){$more.css("background","url("+latkeConfig.staticServePath+"/skins/ease/images/ajax-loader.gif) no-repeat scroll center center #fefefe")},success:function(result,textStatus){if(!result.sc){return}var articlesHTML="",pagination=result.rslts.pagination;for(var i=0;i'+'
    '+'

    '+''+article.articleTitle+'';if(article.hasUpdated){articlesHTML+=''+Label.updatedLabel+''}if(article.articlePutTop){articlesHTML+=''+Label.topArticleLabel+''}articlesHTML+='

    '+''+'
    '+'
    '+'
    '+'
    '+article.articleAbstract+'
    '+'
    '+'
    '+''+''}$(".body>ul").append(articlesHTML);if(pagination.paginationPageCount===currentPage){$more.remove()}else{$more.css("background","none")}}})};var ease={$header:$(".header"),$banner:$(".header").find(".banner"),headerH:$(".header").height(),$body:$(".body"),$nav:$(".nav"),getCurrentPage:function(){var $next=$(".article-next");if($next.length>0){window.currentPage=$next.data("page")}},setNavCurrent:function(){$(".nav ul a").each(function(){var $this=$(this);if($this.attr("href")===latkeConfig.servePath+location.pathname){$this.addClass("current")}else if(/\/[0-9]+$/.test(location.pathname)){$(".nav ul li")[0].className="current"}})},initCommon:function(){Util.init();Util.replaceSideEm($(".recent-comments-content"));Util.buildTags("tagsSide");this.$body.css("paddingTop",this.headerH+"px")},initArchives:function(){var $archives=$(".archives");if($archives.length<1){return}var years=[],$archiveList=$archives.find("span").each(function(){var year=$(this).data("year"),tag=true;for(var i=0;i

    "+years[j]+"

    "+monthsHTML+""}$archives.html(yearsHTML);var $items=$(".archives>div"),line=0,top=0,heights=[];for(var m=0;m<$items.length;m++){for(var n=0;n<3;n++){if(m>=$items.length){break}$items[m].style.left=(n*318)+"px";if(line>0){if($items[m-3].style.top!==""){top=parseInt($items[m-3].style.top)}$items[m].style.top=$($items[m-3]).height()+60+top+"px";heights[n]=parseInt($items[m].style.top)+$($items[m]).height()+60}else{heights[n]=$($items[m]).height()+60}if(n<2){m+=1}}line+=1}$archives.height(heights.sort()[2])},scrollEvent:function(){var _it=this;$(window).scroll(function(){var y=$(window).scrollTop();if(y>=_it.headerH&&_it.$banner.css("display")==="block"&&$("body").height()-$(window).height()>_it.headerH*2){_it.$header.css("top","0");_it.$banner.css("display","none");_it.$body.css("paddingTop",_it.$nav.height()+"px")}if(y<_it.headerH&&_it.$banner.css("display")==="none"){_it.$header.css("top","auto");_it.$banner.css("display","block");_it.$body.css("paddingTop",_it.headerH+"px")}if(y>_it.headerH){var bodyH=$(window).height();var top=y+bodyH-21;if($("body").height()-58<=y+bodyH){top=$(".footer").offset().top-21}$("#goTop").fadeIn("slow").css("top",top)}else{$("#goTop").hide()}})},setDynamic:function(){var $dynamic=$(".dynamic");if($(".dynamic").length<1){return}var $comments=$dynamic.find(".side-comments"),$tags=$dynamic.find(".side-tags"),$mostComment=$dynamic.find(".side-most-comment"),$mostView=$dynamic.find(".side-most-view");if($comments.height()>$tags.height()){$tags.height($comments.height())}else{$comments.height($tags.height())}if($mostComment.height()>$mostView.height()){$mostView.height($mostComment.height())}else{$mostComment.height($mostView.height())}$(".article-body").each(function(){this.innerHTML=Util.replaceEmString($(this).html())})}};(function(){ease.getCurrentPage();ease.initCommon();ease.scrollEvent();ease.setNavCurrent();ease.initArchives();ease.setDynamic()})(); \ No newline at end of file diff --git a/ease/lang/lang_en_US.properties b/ease/lang/lang_en_US.properties new file mode 100644 index 0000000..bbd4b1b --- /dev/null +++ b/ease/lang/lang_en_US.properties @@ -0,0 +1,93 @@ +# +# 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: Language configurations(en_US) for skin "ease". +# Version: 1.0.0.5, May 22, 2012 +# Author: Liyuan Li +# +dynamicLabel=Dynamic +moreLabel=More +contentLabel=More... +abstractLabel=Abstract +viewCount1Label=View Count: +articleCount1Label=Article Count: +commentCount1Label=Comment Count: +allTagsLabel=Tags +archiveLabel=Archive +yearLabel= +monthLabel= +recentArticlesLabel=Recent Articles +recentCommentsLabel=Recent Comments +mostCommentArticlesLabel=Most Comment Articles +mostViewCountArticlesLabel=Most View Articles +popTagsLabel=Popular Tags +linkLabel=Friend Links +indexLabel=Home +sumLabel= +pageLabel=Page +clearAllCacheLabel=Clear all cache +clearCacheLabel=Clear cache +adminLabel=Admin +logoutLabel=Logout +loginLabel=Login +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 +commentLabel=Comment +viewLabel=View +authorLabel=Author +previousPageLabel=Previous Page +nextPagePabel=Next Page +firstPageLabel=First Page +lastPageLabel=Last Page +archive1Label=Archive: +author1Label=Author: +tag1Label=Tags: +sorryLabel=Sorry! +notFoundLabel=Not Found! +returnTo1Label=Return: +updatedLabel=Updated! +topArticleLabel=Top! +replyLabel=Reply +commentNameLabel=Name +commentEmailLabel=Email +commentURLLabel=URL +submmitCommentLabel=Commit Comment +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.... +relevantArticlesLabel=Relevant Articles +randomArticlesLabel=Random Articles +externalRelevantArticlesLabel=External Relevant Articles: +captchaErrorLabel=Captcha Error +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

    \ No newline at end of file diff --git a/ease/lang/lang_zh_CN.properties b/ease/lang/lang_zh_CN.properties new file mode 100644 index 0000000..516a6b1 --- /dev/null +++ b/ease/lang/lang_zh_CN.properties @@ -0,0 +1,93 @@ +# +# 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: Language configurations(zh_CN) for skin "ease". +# Version: 1.0.0.5, May 22, 2012 +# Author: Liyuan Li +# +dynamicLabel=\u52a8\u6001 +moreLabel=\u66f4\u591a +contentLabel=\u5168\u6587 +abstractLabel=\u6458\u8981 +viewCount1Label=\u6d4f\u89c8\u6b21\u6570\uff1a +articleCount1Label=\u6587\u7ae0\u603b\u6570\uff1a +commentCount1Label=\u8bc4\u8bba\u603b\u6570\uff1a +allTagsLabel=\u6807\u7b7e\u5899 +updatedLabel=\u6709\u66f4\u65b0\uff01 +topArticleLabel=\u7f6e\u9876\uff01 +archiveLabel=\u5b58\u6863 +yearLabel=\u5e74 +monthLabel=\u6708 +recentArticlesLabel=\u6700\u65b0\u6587\u7ae0 +recentCommentsLabel=\u6700\u65b0\u8bc4\u8bba +mostCommentArticlesLabel=\u8bc4\u8bba\u6700\u591a\u7684\u6587\u7ae0 +mostViewCountArticlesLabel=\u8bbf\u95ee\u6700\u591a\u7684\u6587\u7ae0 +popTagsLabel=\u5206\u7c7b\u6807\u7b7e +linkLabel=\u53cb\u60c5\u94fe\u63a5 +indexLabel=\u9996\u9875 +sumLabel=\u5171 +pageLabel=\u9875 +clearAllCacheLabel=\u6e05\u9664\u6240\u6709\u9875\u9762\u7f13\u5b58 +clearCacheLabel=\u6e05\u9664\u672c\u9875\u7f13\u5b58 +adminLabel=\u7ba1\u7406 +logoutLabel=\u767b\u51fa +loginLabel=\u767b\u5f55 +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 +commentLabel=\u8bc4\u8bba +viewLabel=\u6d4f\u89c8 +authorLabel=\u4f5c\u8005 +previousPageLabel=\u4e0a\u4e00\u9875 +nextPagePabel=\u4e0b\u4e00\u9875 +firstPageLabel=\u7b2c\u4e00\u9875 +lastPageLabel=\u6700\u540e\u4e00\u9875 +archive1Label=\u5b58\u6863\uff1a +author1Label=\u4f5c\u8005\uff1a +tag1Label=\u6807\u7b7e\uff1a +sorryLabel=\u5bf9\u4e0d\u8d77\uff01 +notFoundLabel=\u627e\u4e0d\u5230\uff01 +returnTo1Label=\u8fd4\u56de\uff1a +replyLabel=\u56de\u590d +commentNameLabel=\u59d3\u540d +commentEmailLabel=\u90ae\u7bb1 +commentURLLabel=URL +submmitCommentLabel=\u63d0\u4ea4\u8bc4\u8bba +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.... +relevantArticlesLabel=\u76f8\u5173\u9605\u8bfb +randomArticlesLabel=\u968f\u673a\u9605\u8bfb +externalRelevantArticlesLabel=\u7ad9\u5916\u76f8\u5173\u9605\u8bfb +captchaErrorLabel=\u9a8c\u8bc1\u7801\u9519\u8bef +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 diff --git a/ease/links.ftl b/ease/links.ftl new file mode 100644 index 0000000..47a9257 --- /dev/null +++ b/ease/links.ftl @@ -0,0 +1,30 @@ +<#include "macro-head.ftl"> + + + + <@head title="${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "header.ftl"> +
    + <#if 0 != links?size> + + +
    + <#include "footer.ftl"> + + diff --git a/ease/macro-comments.ftl b/ease/macro-comments.ftl new file mode 100644 index 0000000..76b2273 --- /dev/null +++ b/ease/macro-comments.ftl @@ -0,0 +1,158 @@ +<#macro comments commentList article> +
    + <#list commentList as comment> +
    + ${comment.commentName} +
    +
    + <#if "http://" == comment.commentURL> + ${comment.commentName} + <#else> + ${comment.commentName} + + <#if comment.isReply> @ + ${comment.commentOriginalCommentName} + +
    + <#if article.commentable> +
    + ${comment.commentDate?string("yy-MM-dd HH:mm")} + ${replyLabel} +
    + + +
    ${comment.commentContent}
    +
    + +
    + +
    +<#if article.commentable> +
    + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + +
    + + +
    + + +
    + + + + + + + + + + + + + + + +
    + +
    + + validate +
    + + + +
    +
    +<#if externalRelevantArticlesDisplayCount?? && 0 != externalRelevantArticlesDisplayCount> +
    + + + + + +<#macro comment_script oId> + + + \ No newline at end of file diff --git a/ease/macro-head.ftl b/ease/macro-head.ftl new file mode 100644 index 0000000..5ad60a5 --- /dev/null +++ b/ease/macro-head.ftl @@ -0,0 +1,17 @@ +<#macro head title> + +${title} +<#nested> + + + + + + + + + +${htmlHead} + \ No newline at end of file diff --git a/ease/page.ftl b/ease/page.ftl new file mode 100644 index 0000000..4233c25 --- /dev/null +++ b/ease/page.ftl @@ -0,0 +1,23 @@ +<#include "macro-head.ftl"> +<#include "macro-comments.ftl"> + + + + <@head title="${page.pageTitle} - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "header.ftl"> +
    +
    + ${page.pageContent} +
    + <@comments commentList=pageComments article=page> +
    + <#include "footer.ftl"> + <@comment_script oId=page.oId> + + diff --git a/ease/preview.png b/ease/preview.png new file mode 100644 index 0000000..1fd106c Binary files /dev/null and b/ease/preview.png differ diff --git a/ease/skin.properties b/ease/skin.properties new file mode 100644 index 0000000..2bb33cb --- /dev/null +++ b/ease/skin.properties @@ -0,0 +1,26 @@ +# +# 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: ease skin. +# Version: 1.0.0.1, May 22, 2012 +# Author: Liyuan Li +# + +name=ease +version=1.0.1 +forSolo=0.4.5 +memo=\u56de\u5f52\u606c\u9759 diff --git a/ease/tag-articles.ftl b/ease/tag-articles.ftl new file mode 100644 index 0000000..dfc94bb --- /dev/null +++ b/ease/tag-articles.ftl @@ -0,0 +1,25 @@ +<#include "macro-head.ftl"> + + + + <@head title="${tag.tagTitle} - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "header.ftl"> + + <#include "footer.ftl"> + + diff --git a/ease/tags.ftl b/ease/tags.ftl new file mode 100644 index 0000000..001b7f6 --- /dev/null +++ b/ease/tags.ftl @@ -0,0 +1,32 @@ +<#include "macro-head.ftl"> + + + + <@head title="${allTagsLabel} - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "header.ftl"> +
    + +
    +
    + <#include "footer.ftl"> + + + diff --git a/favourite/archive-articles.ftl b/favourite/archive-articles.ftl new file mode 100644 index 0000000..d68479d --- /dev/null +++ b/favourite/archive-articles.ftl @@ -0,0 +1,44 @@ +<#include "macro-head.ftl"> + + + + <@head title="${archiveDate.archiveDateMonth} ${archiveDate.archiveDateYear} (${archiveDate.archiveDatePublishedArticleCount}) - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "nav.ftl"> +
    +
    + <#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 "side.ftl"> +
    +
    +
    +
    +
    +
    + + + diff --git a/favourite/article-list.ftl b/favourite/article-list.ftl new file mode 100644 index 0000000..b8ee70d --- /dev/null +++ b/favourite/article-list.ftl @@ -0,0 +1,92 @@ +<#list articles as article> +
    +

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

    +
    +
    + <#if article.hasUpdated> + ${article.articleUpdateDate?string("yyyy-MM")} + <#else> + ${article.articleCreateDate?string("yyyy-MM")} + +
    +
    + <#if article.hasUpdated> + ${article.articleUpdateDate?string("dd")} + <#else> + ${article.articleCreateDate?string("dd")} + +
    +
    +
    +
    +
    +
    + ${article.articleAbstract} +
    +
    +
    +
    +
    + + + ${article.articleViewCount} + +
    + + <#list article.articleTags?split(",") as articleTag> + + <#if articleTag_has_next>, + + +
    + + + ${article.articleCommentCount} + + +
    +
    + +
    + +<#if 0 != paginationPageCount> + + \ No newline at end of file diff --git a/favourite/article.ftl b/favourite/article.ftl new file mode 100644 index 0000000..8e5ef9d --- /dev/null +++ b/favourite/article.ftl @@ -0,0 +1,136 @@ +<#include "macro-head.ftl"> +<#include "macro-comments.ftl"> + + + + <@head title="${article.articleTitle} - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "nav.ftl"> +
    +
    + <#include "header.ftl"> +
    +
    +
    +
    +

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

    +
    +
    + <#if article.hasUpdated> + ${article.articleUpdateDate?string("yyyy-MM")} + <#else> + ${article.articleCreateDate?string("yyyy-MM")} + +
    +
    + <#if article.hasUpdated> + ${article.articleUpdateDate?string("dd")} + <#else> + ${article.articleCreateDate?string("dd")} + +
    +
    +
    +
    +
    +
    + ${article.articleContent} + <#if "" != article.articleSign.signHTML?trim> +
    + ${article.articleSign.signHTML} +
    + +
    +
    +
    +
    + + + ${article.articleViewCount} + +
    + + <#list article.articleTags?split(",") as articleTag> + + <#if articleTag_has_next>, + + +
    + + + ${article.articleCommentCount} + + +
    +
    + +
    + <#if nextArticlePermalink??> + +
    + + <#if previousArticlePermalink??> + + +
    +
    +
    +
    +
    +
    + <@comments commentList=articleComments article=article> +
    +
    + <#include "side.ftl"> +
    +
    +
    +
    +
    +
    + + <@comment_script oId=article.oId> + page.tips.externalRelevantArticlesDisplayCount = "${externalRelevantArticlesDisplayCount}"; + <#if 0 != randomArticlesDisplayCount> + page.loadRandomArticles(); + + <#if 0 != relevantArticlesDisplayCount> + page.loadRelevantArticles('${article.oId}', '

    ${relevantArticles1Label}

    '); + + <#if 0 != externalRelevantArticlesDisplayCount> + page.loadExternalRelevantArticles("<#list article.articleTags?split(",") as articleTag>${articleTag}<#if articleTag_has_next>,"); + + + + diff --git a/favourite/author-articles.ftl b/favourite/author-articles.ftl new file mode 100644 index 0000000..904d289 --- /dev/null +++ b/favourite/author-articles.ftl @@ -0,0 +1,40 @@ +<#include "macro-head.ftl"> + + + + <@head title="${authorName} - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "nav.ftl"> +
    +
    + <#include "header.ftl"> +
    +
    +
    +
    + ${author1Label} +
    +
    + ${authorName} +
    + <#include "article-list.ftl"> +
    +
    + <#include "side.ftl"> +
    +
    +
    +
    +
    +
    + + + diff --git a/favourite/css/favourite.css b/favourite/css/favourite.css new file mode 100644 index 0000000..aa16f82 --- /dev/null +++ b/favourite/css/favourite.css @@ -0,0 +1,638 @@ +@charset "utf-8"; +/* + * skin favoutite style + * + * @author Liyuan Li + * @version 1.0.0.7, May 14, 2012 +*/ +body { + background: url("../images/bg.jpg") repeat scroll left top transparent; +} +a, a:link, a:active, a:visited { + color: #2970A6; + text-decoration: none; +} +a:hover { + color: black; +} +h1 { + font-size: 300%; +} +h4 { + font-size: 160%; + padding: 18px 0 0 80px; +} +h5 { + font-size: 12px; +} +.margin5R { + margin-right: 5px; +} +.margin5 { + margin: 5px; +} +.margin25 { + margin: 25px 25px 0; +} +.content { + margin: 0 auto; + width: 960px; +} +.header { + height: 65px; + padding: 15px 0 0 30px; +} +.body { + background: url("../images/cont-bg.png") repeat-y scroll right center #FFFFFF; + min-height: 400px; +} +.side-navi { + background: url("../images/cont-bg.png") repeat-y scroll left top #00798A; + color: white; + font-size: 95%; + line-height: 145%; + padding-top: 8px; + position: relative; + width: 300px; +} +.side-navi ul { + list-style: none; +} +.side-navi a { + color: #FFFFFF; +} +.comm div { + display: none; +} +.main { + padding: 0 0 15px 35px; + width: 600px; +} +.footer { + color: white; + line-height: 145%; +} +#logoTitle { + color: white; + display: block; + font-family: "Microsoft YaHei"; + height: 50px; + outline: none; + text-decoration: none; +} +.sub-title { + border-top: 1px solid #FFFFFF; + color: #FFFFFF; + font-size: 18px; + padding: 0 15px; +} +#header-navi { + background: none repeat scroll 0 0 #FFFFFF; + border-bottom: 1px solid #A6A6A6; +} +#header-navi li { + float: left; + list-style: none; + margin-left: 0px; +} +#header-navi li a { + background: url("../images/menu.gif") no-repeat scroll 0 0 transparent; + color: #382E1F; + display: block; + font-size: 11px; + height: 31px; + line-height: 31px; + margin-left: -10px; + outline: none; + padding: 0 20px; + text-decoration: none; +} +#header-navi li a:hover { + background-position: 0 -31px; +} +#header-navi li a.home { + background-position: 0 -93px; + margin-left: 0; + padding: 0; + text-indent: -999em; + width: 45px; +} +#header-navi li a.home:hover { + background-position: 0 -124px; +} +#header-navi li a.lastNavi:hover { + background-position: 0 0; +} +#header-navi li.selected a { + background-position: 0 -62px; +} +#header-navi li.selected a.home { + background-position: 0 -155px; +} +#statistic { + left: 250px; + position: relative; + text-align: left; + top: 110px; + width: 600px; +} +.footer .copyright { + padding-top: 60px; + text-align: center; +} +.footer .goTop { + background: url("../images/icons.gif") no-repeat scroll 0 -304px transparent; + cursor: pointer; + font-size: 12px; + padding-left: 16px; + position: absolute; + right: 17px; + top: 0; + width: 25px; +} +.article { + border-top: 1px dotted #0184AF; + padding-bottom: 15px; +} +.article-title { + font-size: 22px; + margin-top: 10px; + padding: 0 5px 3px; + position: relative; + top: 20px; +} +.article-title sup { + font-size: 12px; +} +.article-title a { + color: #4C4C4C; + text-decoration: none; +} +.article-title a:hover { + color: #2970A6; +} +.article-abstract { + line-height: 145%; + margin: 5px 0 5px 5px; + word-wrap: break-word; +} +.tagsIcon, .articles-commentIcon, .dateIcon, .article-browserIcon { + background: url("../images/icons.gif") no-repeat scroll 0 -400px transparent; + float: left; + height: 30px; + margin-right: 6px; + width: 30px; +} +.tagsIcon { + background: url("../images/tagsIcon.png"); +} +.dateIcon { + background-position: 0 -48px; +} +.articles-commentIcon { + background: url("../images/comment.jpg"); +} +.article-browserIcon { + background: url("../images/category.jpg"); +} +.article-body { + line-height: 145%; + padding: 5px 0 0 5px; +} +.article-footer { + margin: 0 5px 10px 5px; +} +.article-relative { + line-height: 22px; + margin-top: 20px; +} +.article-relative h4 { + font-size: 12px; + padding: 0; +} +.comments { + background: none repeat scroll 0 0 #FCFCFC; + border-bottom: 1px solid #CCCCCC; + border-top: 1px solid #CCCCCC; + margin: 15px -15px; + padding: 0 15px 15px; + position: relative; +} +.comment-title { + background-color: #E3E9FF; + border-top: 1px solid #3366CC; + padding: 3px 12px 3px 12px; + position: relative; +} +.comment-body-ref { + background-color: #FFFFFF; + filter: alpha(opacity=90); + left: 217px; + opacity: 0.9; + padding: 6px; + position: absolute; + width: 605px; + z-index: 10; +} +.comment-body { + margin-top: 15px; +} +.comment-author { + float: left; + text-align: center; + width: 81px; +} +.comment-author div { + background: url("../images/commentpoint.png") no-repeat scroll 100% 33% transparent; + margin-top: 10px; + padding-right: 14px; +} +.comment-author img { + border: 1px solid #999999; + height: 32px; + padding: 1px; + width: 32px; +} +.comment-author a { + font-weight: bold; + white-space: nowrap; + margin-right: 14px; +} +.comment-info { + background: url("../images/comment.gif") no-repeat scroll 0 0 #EDEFF0; + font-size: 12px; + margin: -62px 0 0 80px; + padding: 10px 15px 0; + width: 494px; +} +.comment-content { + background: url("../images/comment.gif") no-repeat scroll 100% 100% transparent; + font-size: 12px; + line-height: 145%; + margin: 0 -15px; + overflow: hidden; + padding: 9px 15px 10px; + word-wrap: break-word; +} +.comment-form img { + cursor: pointer; +} +.comment-form input, .comment-form textarea { + background: url("../images/textfield.gif") repeat-x scroll 50% 0 #FFFFFF; + border: 1px solid #A6A6A6; + color: #555555; + font-family: Helvetica,Arial,sans-serif; + height: 16px; + outline: none; + padding: 2px 1px; + width: 200px; +} +.comment-form textarea { + font-size: 12px; + height: auto; + width: 600px; +} +.comment-form button { + background: none repeat scroll 0 0 #B4D666; + border-color: #B4D666 #81B840 #81B840 #B4D666; + border-radius: 0px; + border-style: solid; + border-width: 1px; + color: #2970A6; + font-size: 12px; + height: 22px; + line-height: 22px; + padding: 0px 6px; +} +.comment-form button:hover { + background: none repeat scroll 0 0 #98C64C; + border-color: #76B33A #98C64C #98C64C #76B33A; + color: #074A7E; +} +.em00, .em01, .em02, .em03, .em04, .em05, .em06, .em07, .em08, .em09, .em10, .em11, .em12, .em13, .em14 { + background-image: url("../../favourite/images/emotions/emotions-blue.png"); +} +.error-msg { + color: #3366CC; +} +.side-navi .item { + padding: 12px 15px; +} +.side-navi .navi-comments img { + border: 1px solid #999999; + height: 32px; + margin-right: 7px; + padding: 1px; + width: 32px; +} +.side-navi .navi-comments a { + color: white; + font-weight: bold; +} +.side-navi .navi-comments .side-comment { + color: white; + font-weight: normal; + height: 18px; + width: 210px; +} +.side-navi .navi-comments .side-comment img { + border: 0px; + height: 16px; + margin-right: 0px; + padding: 0px; + width: 16px; +} +.side-navi .navi-comments li { + padding: 2px 0; +} +.side-navi .navi-comments li div { + width: 215px; + overflow: hidden; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; +} +.side-navi a.selected { + color: #555555; + text-decoration: none; +} +.side-navi ul.navi-tags li, .side-navi .navi-comments li { + background-image: none; + padding-left: 0px; +} +.side-navi ul.navi-tags li img { + height: 16px; + padding-right: 6px; + width: 16px; +} +.side-navi li { + background: url("../images/pl.png") no-repeat scroll 0 0 transparent; + margin: 5px 0 0 0; + overflow: hidden; + padding-left: 22px; + white-space: nowrap; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; +} +.side-navi li.aboutMe { + white-space: normal; +} +.side-navi .line { + border-color: #67C3CF; + border-style: dotted; + border-width: 1px 0; +} +.pagination { + margin: 16px; + text-align: center; +} +.pagination a, .pagination a:visited { + color: #4272DB; + padding: 0 3px; +} +.pagination a.selected { + color: #000000; + font-weight: bold; +} +#tagsPanel .tagPanel { + border: 2px solid; + border-radius: 6px; + cursor: pointer; + float: left; + margin: 3px; +} +#tagsPanel .tagPanel:hover { + background-color: #EEEEEE; + border: 2px dashed; +} +#tagsPanel .tagPanel { + text-decoration: none; +} +.error-body { + background: url("../images/cont-bg_2.png") repeat-y scroll left; + height: 400px; + padding: 12px; +} +.error-title { + line-height: 72px; +} +.error-panel { + margin: 0 auto; + width: 201px; +} +.error-panel a { + background: none repeat scroll 0 0 #9CD941; + border-color: #D0F29D #398A38 #398A38 #D0F29D; + border-style: solid; + border-width: 1px; + color: #000000; + font-size: 14px; + font-weight: bold; + margin-right: 3px; + padding: 10px 15px; + text-decoration: none; +} +.error-panel a:hover { + background-color: #ADEb51; +} +.kind-panel { + background: url("../images/box.gif") no-repeat scroll 100% 100% #F4F5F7; + margin-bottom: 10px; + padding: 8px 12px; +} +.kind-title { + background: url("../images/box.gif") no-repeat scroll 0 0 #E3E4E6; + border-bottom: 1px solid #CCCCCC; + font-weight: bold; + padding: 6px 12px; +} +.top { + background: url("../images/top-bg.jpg") repeat-x scroll left top transparent; + border: none; + color: white; + height: 87px; +} +.footer-icon { + background: url("../images/footer-ico.png") no-repeat scroll center center transparent; + height: 133px; +} +.info { + background: url("../images/info.png") repeat-x scroll left top transparent; + height: 110px; + position: relative; +} +.logoutIcon { + background-position: -96px -16px; +} +#qq2 { + float: right; + padding: 68px 120px 0 0; +} +.thinks { + background: url("../images/thinks.png") no-repeat scroll left top transparent; + height: 420px; + position: absolute; + right: 12px; + top: 36px; + width: 388px; + z-index: 1; +} +.lamb { + background: url("../images/lamb.png") no-repeat scroll left top transparent; + height: 80px; + left: 460px; + position: absolute; + top: 100px; + width: 320px; +} +.lamb a { + display: block; + height: 80px; + outline: none; + width: 320px; +} +.null { + height: 160px; +} +#navigation { + height: 87px; + margin: 0 auto; + width: 960px; +} +#navigation a.classifiche { + background: url("../images/classifiche.png") no-repeat scroll left top transparent; +} +#navigation a.about { + background: url("../images/about.png") no-repeat scroll left top transparent; +} +#navigation a.home { + background: url("../images/home.png") no-repeat scroll left top transparent; +} +#navigation a.Guestbook { + background: url("../images/Guestbook.png") no-repeat scroll left top transparent; +} +#navigation a { + background: url("../images/default.png") no-repeat scroll left top transparent; + color: #FFFFFF; + cursor: pointer !important; + float: left; + height: 70px; + margin-left: 10px; + outline: none; + padding-top: 2px; + text-align: center; + text-decoration: none; + width: 73px; +} +.admins { + position: relative; + top: -85px; +} +#mostCommentArticles li a,#mostViewCountArticles li a,.navi-tags li a,#sideLink li a,#save li a,#sideAuthor li a { + color: white; +} +.roundtop { + background: url("../images/roundtop.png") no-repeat scroll left top transparent; + height: 75px; +} +.roundbottom { + background: url("../images/roundbottom.png") no-repeat scroll left top transparent; + height: 35px; +} +.paint { + background: url("../images/paint.png") no-repeat scroll left top transparent; + height: 183px; + left: 34px; + position: absolute; + top: 450px; + width: 87px; +} +.rings { + background: url("../images/anelli.png") no-repeat scroll left top transparent; + height: 121px; + left: -28px; + position: absolute; + width: 56px; + z-index: 80; +} +.antefatto { + background: url("../images/twitter.png") no-repeat scroll left top transparent; + height: 64px; +} +.ads { + background: url("../images/ads.png") no-repeat scroll left top transparent; + height: 64px; +} +.categorie { + background: url("../images/categorie.png") no-repeat scroll left top transparent; + height: 64px; +} +.archivio { + background: url("../images/archivio.png") no-repeat scroll left top transparent; + height: 64px; +} +.side-author { + background: url("../images/antefatto.png") no-repeat scroll left top transparent; + height: 64px; +} +.blog { + background: url("../images/blog.png") no-repeat scroll left top transparent; + height: 64px; +} +.cuore { + background: url("../images/cuore.png") no-repeat scroll left top transparent; + height: 64px; +} +.esclamativo { + background: url("../images/esclamativo.png") no-repeat scroll left top transparent; + height: 64px; +} +.posttime-blue { + background-color: #0184AF; +} +.posttime-blue, .posttime-pink { + border: 1px solid #999999; + clear: right; + color: #FFFFFF; + float: right; + font-family: Tohama,Arial,Helvetica,sans-serif; + height: 60px; + position: relative; + right: 30px; + top: -25px; + width: 60px; +} +.posttime-MY { + border-bottom: 1px solid #FFFFFF; + font-size: 9px; + height: 15px; + padding-top: 5px; + text-align: center; +} +.posttime-D { + font-size: 28px; + font-weight: bold; + text-align: center; +} +.note { + background: none repeat scroll 0 0 #E7F5F7; + margin: 40px 0 0 -49px; + padding: 10px 10px 10px 85px; + position: relative; + width: 574px; + z-index: 50; +} +.corner { + background: url("../images/corner.png") no-repeat scroll left top transparent; + height: 9px; + left: 0; + position: absolute; + top: -9px; + width: 9px; +} +.count { + position: relative; + top: 8px; +} +.substance { + width: 500px; +} \ No newline at end of file diff --git a/favourite/footer.ftl b/favourite/footer.ftl new file mode 100644 index 0000000..2f37b26 --- /dev/null +++ b/favourite/footer.ftl @@ -0,0 +1,52 @@ +
    + +
    + ${goTopLabel} +
    +
    + + + +${plugins} \ No newline at end of file diff --git a/favourite/header.ftl b/favourite/header.ftl new file mode 100644 index 0000000..c0b4e64 --- /dev/null +++ b/favourite/header.ftl @@ -0,0 +1,8 @@ +
    +

    + + ${blogTitle} + +

    + ${blogSubtitle} +
    \ No newline at end of file diff --git a/favourite/images/Guestbook.png b/favourite/images/Guestbook.png new file mode 100644 index 0000000..0b61903 Binary files /dev/null and b/favourite/images/Guestbook.png differ diff --git a/favourite/images/about.png b/favourite/images/about.png new file mode 100644 index 0000000..c70aae0 Binary files /dev/null and b/favourite/images/about.png differ diff --git a/favourite/images/ads.png b/favourite/images/ads.png new file mode 100644 index 0000000..8773128 Binary files /dev/null and b/favourite/images/ads.png differ diff --git a/favourite/images/anelli.png b/favourite/images/anelli.png new file mode 100644 index 0000000..11d1900 Binary files /dev/null and b/favourite/images/anelli.png differ diff --git a/favourite/images/antefatto.png b/favourite/images/antefatto.png new file mode 100644 index 0000000..262b829 Binary files /dev/null and b/favourite/images/antefatto.png differ diff --git a/favourite/images/archivio.png b/favourite/images/archivio.png new file mode 100644 index 0000000..7e62dfb Binary files /dev/null and b/favourite/images/archivio.png differ diff --git a/favourite/images/bg.jpg b/favourite/images/bg.jpg new file mode 100644 index 0000000..2b8f393 Binary files /dev/null and b/favourite/images/bg.jpg differ diff --git a/favourite/images/blog.png b/favourite/images/blog.png new file mode 100644 index 0000000..9fc7dec Binary files /dev/null and b/favourite/images/blog.png differ diff --git a/favourite/images/box.gif b/favourite/images/box.gif new file mode 100644 index 0000000..618f073 Binary files /dev/null and b/favourite/images/box.gif differ diff --git a/favourite/images/categorie.png b/favourite/images/categorie.png new file mode 100644 index 0000000..5857178 Binary files /dev/null and b/favourite/images/categorie.png differ diff --git a/favourite/images/category.jpg b/favourite/images/category.jpg new file mode 100644 index 0000000..dec7ead Binary files /dev/null and b/favourite/images/category.jpg differ diff --git a/favourite/images/classifiche.png b/favourite/images/classifiche.png new file mode 100644 index 0000000..d840daf Binary files /dev/null and b/favourite/images/classifiche.png differ diff --git a/favourite/images/comment.gif b/favourite/images/comment.gif new file mode 100644 index 0000000..5c6300e Binary files /dev/null and b/favourite/images/comment.gif differ diff --git a/favourite/images/comment.jpg b/favourite/images/comment.jpg new file mode 100644 index 0000000..0d1eb94 Binary files /dev/null and b/favourite/images/comment.jpg differ diff --git a/favourite/images/commentpoint.png b/favourite/images/commentpoint.png new file mode 100644 index 0000000..632318f Binary files /dev/null and b/favourite/images/commentpoint.png differ diff --git a/favourite/images/cont-bg.png b/favourite/images/cont-bg.png new file mode 100644 index 0000000..500c240 Binary files /dev/null and b/favourite/images/cont-bg.png differ diff --git a/favourite/images/cont-bg_2.png b/favourite/images/cont-bg_2.png new file mode 100644 index 0000000..dece546 Binary files /dev/null and b/favourite/images/cont-bg_2.png differ diff --git a/favourite/images/corner.png b/favourite/images/corner.png new file mode 100644 index 0000000..3441787 Binary files /dev/null and b/favourite/images/corner.png differ diff --git a/favourite/images/cuore.png b/favourite/images/cuore.png new file mode 100644 index 0000000..750d9f3 Binary files /dev/null and b/favourite/images/cuore.png differ diff --git a/favourite/images/default.png b/favourite/images/default.png new file mode 100644 index 0000000..c477337 Binary files /dev/null and b/favourite/images/default.png differ diff --git a/favourite/images/emotions/em00.png b/favourite/images/emotions/em00.png new file mode 100644 index 0000000..d691d4f Binary files /dev/null and b/favourite/images/emotions/em00.png differ diff --git a/favourite/images/emotions/em01.png b/favourite/images/emotions/em01.png new file mode 100644 index 0000000..0efa659 Binary files /dev/null and b/favourite/images/emotions/em01.png differ diff --git a/favourite/images/emotions/em02.png b/favourite/images/emotions/em02.png new file mode 100644 index 0000000..4f215fc Binary files /dev/null and b/favourite/images/emotions/em02.png differ diff --git a/favourite/images/emotions/em03.png b/favourite/images/emotions/em03.png new file mode 100644 index 0000000..5ee30a3 Binary files /dev/null and b/favourite/images/emotions/em03.png differ diff --git a/favourite/images/emotions/em04.png b/favourite/images/emotions/em04.png new file mode 100644 index 0000000..d23b375 Binary files /dev/null and b/favourite/images/emotions/em04.png differ diff --git a/favourite/images/emotions/em05.png b/favourite/images/emotions/em05.png new file mode 100644 index 0000000..7ea4e9a Binary files /dev/null and b/favourite/images/emotions/em05.png differ diff --git a/favourite/images/emotions/em06.png b/favourite/images/emotions/em06.png new file mode 100644 index 0000000..ce4241f Binary files /dev/null and b/favourite/images/emotions/em06.png differ diff --git a/favourite/images/emotions/em07.png b/favourite/images/emotions/em07.png new file mode 100644 index 0000000..1d0b88c Binary files /dev/null and b/favourite/images/emotions/em07.png differ diff --git a/favourite/images/emotions/em08.png b/favourite/images/emotions/em08.png new file mode 100644 index 0000000..ef5ba61 Binary files /dev/null and b/favourite/images/emotions/em08.png differ diff --git a/favourite/images/emotions/em09.png b/favourite/images/emotions/em09.png new file mode 100644 index 0000000..c2c70c5 Binary files /dev/null and b/favourite/images/emotions/em09.png differ diff --git a/favourite/images/emotions/em10.png b/favourite/images/emotions/em10.png new file mode 100644 index 0000000..22ca949 Binary files /dev/null and b/favourite/images/emotions/em10.png differ diff --git a/favourite/images/emotions/em11.png b/favourite/images/emotions/em11.png new file mode 100644 index 0000000..d318fc2 Binary files /dev/null and b/favourite/images/emotions/em11.png differ diff --git a/favourite/images/emotions/em12.png b/favourite/images/emotions/em12.png new file mode 100644 index 0000000..a4190d1 Binary files /dev/null and b/favourite/images/emotions/em12.png differ diff --git a/favourite/images/emotions/em13.png b/favourite/images/emotions/em13.png new file mode 100644 index 0000000..a602aaa Binary files /dev/null and b/favourite/images/emotions/em13.png differ diff --git a/favourite/images/emotions/em14.png b/favourite/images/emotions/em14.png new file mode 100644 index 0000000..fb75113 Binary files /dev/null and b/favourite/images/emotions/em14.png differ diff --git a/favourite/images/emotions/emotions-blue.png b/favourite/images/emotions/emotions-blue.png new file mode 100644 index 0000000..7677c13 Binary files /dev/null and b/favourite/images/emotions/emotions-blue.png differ diff --git a/favourite/images/esclamativo.png b/favourite/images/esclamativo.png new file mode 100644 index 0000000..e910b3e Binary files /dev/null and b/favourite/images/esclamativo.png differ diff --git a/favourite/images/footer-ico.png b/favourite/images/footer-ico.png new file mode 100644 index 0000000..d5f0ee1 Binary files /dev/null and b/favourite/images/footer-ico.png differ diff --git a/favourite/images/header.jpg b/favourite/images/header.jpg new file mode 100644 index 0000000..20cfa7a Binary files /dev/null and b/favourite/images/header.jpg differ diff --git a/favourite/images/home.png b/favourite/images/home.png new file mode 100644 index 0000000..0148482 Binary files /dev/null and b/favourite/images/home.png differ diff --git a/favourite/images/icons.gif b/favourite/images/icons.gif new file mode 100644 index 0000000..cf5057b Binary files /dev/null and b/favourite/images/icons.gif differ diff --git a/favourite/images/info.png b/favourite/images/info.png new file mode 100644 index 0000000..07d4d5c Binary files /dev/null and b/favourite/images/info.png differ diff --git a/favourite/images/pl.png b/favourite/images/pl.png new file mode 100644 index 0000000..7df1395 Binary files /dev/null and b/favourite/images/pl.png differ diff --git a/favourite/images/roundbottom.png b/favourite/images/roundbottom.png new file mode 100644 index 0000000..0de7fae Binary files /dev/null and b/favourite/images/roundbottom.png differ diff --git a/favourite/images/roundtop.png b/favourite/images/roundtop.png new file mode 100644 index 0000000..cbfc8c8 Binary files /dev/null and b/favourite/images/roundtop.png differ diff --git a/favourite/images/tagsIcon.png b/favourite/images/tagsIcon.png new file mode 100644 index 0000000..0c9b2d3 Binary files /dev/null and b/favourite/images/tagsIcon.png differ diff --git a/favourite/images/textfield.gif b/favourite/images/textfield.gif new file mode 100644 index 0000000..cdb0b3b Binary files /dev/null and b/favourite/images/textfield.gif differ diff --git a/favourite/images/thinks.png b/favourite/images/thinks.png new file mode 100644 index 0000000..1f504b6 Binary files /dev/null and b/favourite/images/thinks.png differ diff --git a/favourite/images/top-bg.jpg b/favourite/images/top-bg.jpg new file mode 100644 index 0000000..2877c29 Binary files /dev/null and b/favourite/images/top-bg.jpg differ diff --git a/favourite/images/twitter.png b/favourite/images/twitter.png new file mode 100644 index 0000000..562db9c Binary files /dev/null and b/favourite/images/twitter.png differ diff --git a/favourite/index.ftl b/favourite/index.ftl new file mode 100644 index 0000000..47fd93e --- /dev/null +++ b/favourite/index.ftl @@ -0,0 +1,34 @@ +<#include "macro-head.ftl"> + + + + <@head title="${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "nav.ftl"> +
    +
    + <#include "header.ftl"> +
    +
    +
    + <#include "article-list.ftl"> +
    +
    + <#include "side.ftl"> +
    +
    +
    +
    +
    +
    + + + diff --git a/favourite/lang/lang_en_US.properties b/favourite/lang/lang_en_US.properties new file mode 100644 index 0000000..2860965 --- /dev/null +++ b/favourite/lang/lang_en_US.properties @@ -0,0 +1,287 @@ +# +# 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: 2.0.5.7, Sep 5, 2011 +# Author: Liang Ding +# + +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= +blogSyncLabel=Blog Sync +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 +blogSyncMgmtLabel=Blog Sync Management +syncMgmtLabel=Sync manage Blog +userName1Label=Username: +userPassword1Label=Password: +syncPostLabel=Sync Post +syncUpdateLabel=Sync Update +syncRemoveLabel=Sync Remove +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 +clearAllCacheLabel=Clear all cache +clearCacheLabel=Clear cache +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 +welcomeToSoloLabel=Welcome to B3log Solo! +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 +updatePreferenceFailLabel=Update Fail, please check Blog Host configuration! +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. +exceedMaxUploadSizeLabel=Size exceed 1M :-( +uploadFailLabel=Upload Fail! +fileEmptyLabel=File is empty +duplicatedPermalinkLabel=Duplicated permalink! +invalidPermalinkFormatLabel=Invalid permalink format! +duplicatedEmailLabel=Duplicated email! +canntBeLocalhostOnProductionLabel=Can not set host as localhost on production! +refreshAndRetryLabel=Please refresh and try again! +noDataLable=NO Data +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/favourite/lang/lang_zh_CN.properties b/favourite/lang/lang_zh_CN.properties new file mode 100644 index 0000000..0cedee0 --- /dev/null +++ b/favourite/lang/lang_zh_CN.properties @@ -0,0 +1,287 @@ +# +# 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: 2.0.6.2, Sep 5, 2011 +# Author: Liang Ding +# + +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 +clearAllCacheLabel=\u6e05\u9664\u6240\u6709\u9875\u9762\u7f13\u5b58 +clearCacheLabel=\u6e05\u9664\u672c\u9875\u7f13\u5b58 +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 +welcomeToSoloLabel=\u6b22\u8fce\u4f7f\u7528 B3log Solo\uff01 +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 +updatePreferenceFailLabel=\u66f4\u65b0\u5931\u8d25\uff0c\u8bf7\u4ed4\u7ec6\u68c0\u67e5\u201c\u535a\u5ba2\u5730\u5740\u201d\u7684\u914d\u7f6e\u662f\u5426\u6b63\u786e +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 +exceedMaxUploadSizeLabel=\u76ee\u524d\u53ea\u80fd\u4e0a\u4f20\u5c0f\u4e8e 1M \u7684\u6587\u4ef6 :-( +uploadFailLabel=\u4e0a\u4f20\u5931\u8d25\uff01 +fileEmptyLabel=\u6587\u4ef6\u4e3a\u7a7a\uff01 +duplicatedPermalinkLabel=\u94fe\u63a5\u91cd\u590d\uff01 +invalidPermalinkFormatLabel=\u975e\u6cd5\u7684\u94fe\u63a5\u683c\u5f0f\uff01 +duplicatedEmailLabel=\u90ae\u4ef6\u5730\u5740\u91cd\u590d\uff01 +canntBeLocalhostOnProductionLabel=GAE \u73af\u5883\u4e0a\u8bf7\u52ff\u6307\u5b9a\u535a\u5ba2\u5730\u5740\u4e3a localhost\uff01 +refreshAndRetryLabel=\u8bf7\u5237\u65b0\u91cd\u8bd5\uff01 +noDataLable=\u65e0\u6570\u636e +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/favourite/macro-comments.ftl b/favourite/macro-comments.ftl new file mode 100644 index 0000000..217a003 --- /dev/null +++ b/favourite/macro-comments.ftl @@ -0,0 +1,172 @@ +<#macro comments commentList article> +
    + <#list commentList as comment> +
    +
    +
    +
    + ${comment.commentName} +
    + <#if "http://" == comment.commentURL> + ${comment.commentName} + <#else> + ${comment.commentName} + +
    +
    +
    + ${comment.commentDate?string("yyyy-MM-dd HH:mm:ss")} + <#if comment.isReply> + @ + ${comment.commentOriginalCommentName} + +
    + <#if article.commentable> + + +
    +
    +
    + ${comment.commentContent} +
    +
    +
    +
    +
    + +
    +<#if article.commentable> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + ${commentNameLabel} +
    + + + ${commentEmailLabel} +
    + + + ${commentURLLabel} +
    + + + + + + + + + + + + + + + +
    + +
    + + + validate + + +
    + +
    + + + +<#macro comment_script oId> + + + \ No newline at end of file diff --git a/favourite/macro-head.ftl b/favourite/macro-head.ftl new file mode 100644 index 0000000..71183d6 --- /dev/null +++ b/favourite/macro-head.ftl @@ -0,0 +1,15 @@ +<#macro head title> + +${title} +<#nested> + + + + + + + + + +${htmlHead} + \ No newline at end of file diff --git a/favourite/nav.ftl b/favourite/nav.ftl new file mode 100644 index 0000000..f647c9c --- /dev/null +++ b/favourite/nav.ftl @@ -0,0 +1,11 @@ +
    + +
    +
    \ No newline at end of file diff --git a/favourite/page.ftl b/favourite/page.ftl new file mode 100644 index 0000000..919f0bd --- /dev/null +++ b/favourite/page.ftl @@ -0,0 +1,46 @@ +<#include "macro-head.ftl"> +<#include "macro-comments.ftl"> + + + + <@head title="${page.pageTitle} - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "nav.ftl"> +
    +
    + <#include "header.ftl"> +
    +
    +
    +
    +
    +
    +
    +
    + ${page.pageContent} +
    +
    +
    +
    + <@comments commentList=pageComments article=page> +
    +
    + <#include "side.ftl"> +
    +
    +
    +
    +
    +
    + + <@comment_script oId=page.oId> + + diff --git a/favourite/preview.png b/favourite/preview.png new file mode 100644 index 0000000..6647180 Binary files /dev/null and b/favourite/preview.png differ diff --git a/favourite/side.ftl b/favourite/side.ftl new file mode 100644 index 0000000..7c588d9 --- /dev/null +++ b/favourite/side.ftl @@ -0,0 +1,159 @@ +
    +
    +
    + <#if "" != noticeBoard> +
    +
    +

    ${noticeBoardLabel}

    +
    +
    + ${noticeBoard} +
    +
    +
    + + <#if 0 != recentComments?size> + +
    + + <#if 0 != mostCommentArticles?size> +
    +
    +

    ${mostCommentArticlesLabel}

    +
    + +
    +
    + + <#if 0 != mostViewCountArticles?size> +
    +
    +

    ${mostViewCountArticlesLabel}

    +
    + +
    +
    + + <#if 0 != mostUsedTags?size> +
    +
    +

    ${popTagsLabel}

    +
    + +
    +
    + + <#if 0 != links?size> +
    +
    +

    ${linkLabel}

    +
    + +
    +
    + + <#if 0 != archiveDates?size> +
    +
    +

    ${archiveLabel}

    +
    + +
    +
    + + <#if 1 != users?size> +
    +
    +

    ${authorLabel}

    +
    + +
    + +
    +
    \ No newline at end of file diff --git a/favourite/skin.properties b/favourite/skin.properties new file mode 100644 index 0000000..4f69e5a --- /dev/null +++ b/favourite/skin.properties @@ -0,0 +1,26 @@ +# +# Copyright (C) 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: Favourite skin. +# Version: 1.0.0.5, May 7, 2012 +# Author: Lamb Gao & Liyuan Li +# + +name=favourite +version=2.0.3 +forSolo=0.4.5 +memo=Refers to http://www.iprimidieci.com/ \ No newline at end of file diff --git a/favourite/statistic.ftl b/favourite/statistic.ftl new file mode 100644 index 0000000..a6fc67e --- /dev/null +++ b/favourite/statistic.ftl @@ -0,0 +1,23 @@ +
    + + ${viewCount1Label} + + ${statistic.statisticBlogViewCount} + +    + + + ${articleCount1Label} + + ${statistic.statisticPublishedBlogArticleCount} + +    + + + ${commentCount1Label} + + ${statistic.statisticPublishedBlogCommentCount} + + +
    +
    \ No newline at end of file diff --git a/favourite/tag-articles.ftl b/favourite/tag-articles.ftl new file mode 100644 index 0000000..5ac0d68 --- /dev/null +++ b/favourite/tag-articles.ftl @@ -0,0 +1,42 @@ +<#include "macro-head.ftl"> + + + + <@head title="${tag.tagTitle} - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "nav.ftl"> +
    +
    + <#include "header.ftl"> +
    +
    +
    +
    + ${tag1Label} +
    + + <#include "article-list.ftl"> +
    +
    + <#include "side.ftl"> +
    +
    +
    +
    +
    +
    + + + diff --git a/favourite/tags.ftl b/favourite/tags.ftl new file mode 100644 index 0000000..2fc1953 --- /dev/null +++ b/favourite/tags.ftl @@ -0,0 +1,47 @@ +<#include "macro-head.ftl"> + + + + <@head title="${allTagsLabel} - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "nav.ftl"> +
    +
    + <#include "header.ftl"> +
    +
    +
    + +
    +
    + <#include "side.ftl"> +
    +
    +
    +
    +
    +
    + + + + diff --git a/i-nove/archive-articles.ftl b/i-nove/archive-articles.ftl new file mode 100644 index 0000000..f127a01 --- /dev/null +++ b/i-nove/archive-articles.ftl @@ -0,0 +1,42 @@ +<#include "macro-head.ftl"> + + + + <@head title="${archiveDate.archiveDateMonth} ${archiveDate.archiveDateYear} (${archiveDate.archiveDatePublishedArticleCount}) - ${blogTitle}"> + + + + + + ${topBarReplacement} +
    +
    +
    + <#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 "side.ftl"> +
    +
    +
    + +
    +
    +
    + + diff --git a/i-nove/article-list.ftl b/i-nove/article-list.ftl new file mode 100644 index 0000000..e5a9f5c --- /dev/null +++ b/i-nove/article-list.ftl @@ -0,0 +1,82 @@ +<#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/i-nove/article.ftl b/i-nove/article.ftl new file mode 100644 index 0000000..615e70c --- /dev/null +++ b/i-nove/article.ftl @@ -0,0 +1,122 @@ +<#include "macro-head.ftl"> +<#include "macro-comments.ftl"> + + + + <@head title="${article.articleTitle} - ${blogTitle}"> + + + + + + ${topBarReplacement} +
    +
    +
    + <#include "header.ftl"> +
    +
    +
    +

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

    +
    + + +
    +
    +
    + ${article.articleContent} + <#if "" != article.articleSign.signHTML?trim> +
    + ${article.articleSign.signHTML} +
    + +
    +
    + + + ${article.articleViewCount} + +
    + + <#list article.articleTags?split(",") as articleTag> + + <#if articleTag_has_next>, + + +
    +
    +
    +
    + <#if nextArticlePermalink??> + +
    + + <#if previousArticlePermalink??> + + +
    +
    +
    +
    +
    +
    + <@comments commentList=articleComments article=article> +
    +
    + <#include "side.ftl"> +
    +
    +
    + +
    +
    + <@comment_script oId=article.oId> + page.tips.externalRelevantArticlesDisplayCount = "${externalRelevantArticlesDisplayCount}"; + <#if 0 != randomArticlesDisplayCount> + page.loadRandomArticles(); + + <#if 0 != relevantArticlesDisplayCount> + page.loadRelevantArticles('${article.oId}', '

    ${relevantArticles1Label}

    '); + + <#if 0 != externalRelevantArticlesDisplayCount> + page.loadExternalRelevantArticles("<#list article.articleTags?split(",") as articleTag>${articleTag}<#if articleTag_has_next>,"); + + +
    + + diff --git a/i-nove/author-articles.ftl b/i-nove/author-articles.ftl new file mode 100644 index 0000000..2d8029c --- /dev/null +++ b/i-nove/author-articles.ftl @@ -0,0 +1,38 @@ +<#include "macro-head.ftl"> + + + + <@head title="${authorName} - ${blogTitle}"> + + + + + + ${topBarReplacement} +
    +
    +
    + <#include "header.ftl"> +
    +
    +
    + ${commentName1Label} +
    +
    + ${authorName} +
    + <#include "article-list.ftl"> +
    +
    + <#include "side.ftl"> +
    +
    +
    + +
    +
    +
    + + diff --git a/i-nove/css/i-nove.css b/i-nove/css/i-nove.css new file mode 100644 index 0000000..0e0b5ea --- /dev/null +++ b/i-nove/css/i-nove.css @@ -0,0 +1,462 @@ +@charset "utf-8"; +/* + * skin i-nove style + * + * @author Liyuan Li + * @version 1.0.1.3, May 28, 2012 +*/ +.bg { + background: url("../images/bg.jpg") repeat-x scroll 0 0 #BEC3C6; + color: #555555; +} +a, a:link, a:active, a:visited { + color: #2970A6; + text-decoration: none; +} +a:hover { + text-decoration: underline; +} +h1 { + font-size: 200%; +} +h4 { + font-size: 160%; +} +h5 { + font-size: 12px; +} +.margin5R { + margin-right: 5px; +} +.margin5 { + margin: 5px; +} +.wrapper { + background: url("../images/light.gif") no-repeat scroll 50% 0 transparent; + padding: 20px 0; +} +.content { + margin: 0 auto; + width: 936px; +} +.header { + background: url("../images/header.jpg") no-repeat scroll 0 0 transparent; + border-bottom: 1px solid #A6A6A6; + height: 65px; + padding: 25px 30px 0; +} +.body { + background: url("../images/sidesep.gif") repeat-y scroll right center #FFFFFF; + min-height: 400px; +} +.side-navi { + background: url("../images/sidebar_shadow.gif") repeat-x scroll 50% 0 #F7F7F7; + font-size: 95%; + line-height: 145%; + padding-top: 8px; + width: 300px; +} +.main { + background: url("../images/main_shadow.gif") repeat-x scroll center top #FFFFFF; + padding: 13px 15px 15px; + width: 605px; +} +.footer { + background: url("../images/footer.jpg") no-repeat scroll 0 0 transparent; + border-top: 1px solid #CCCCCC; + font-size: 11px; + height: 88px; + line-height: 145%; + padding: 0; +} +#logoTitle { + color: #FFFFFF; + display: block; + font-family: "Trajan Pro"; + height: 30px; + outline: none; + text-decoration: none; +} +.sub-title { + border-top: 1px solid #FFFFFF; + color: #FFFFFF; + font-size: 10px; + padding: 0 3px; +} +#header-navi { + background: none repeat scroll 0 0 #FFFFFF; + border-bottom: 1px solid #A6A6A6; +} +#header-navi li { + float: left; + list-style: none; + margin-left: 0px; +} +#header-navi li a { + background: url("../images/menu.gif") no-repeat scroll 0 0 transparent; + color: #382E1F; + display: block; + font-size: 11px; + height: 31px; + line-height: 31px; + margin-left: -10px; + outline: none; + padding: 0 20px; + text-decoration: none; +} +#header-navi li a:hover { + background-position: 0 -31px; +} +#header-navi li a.home { + background-position: 0 -93px; + margin-left: 0; + padding: 0; + text-indent: -999em; + width: 45px; +} +#header-navi li a.home:hover { + background-position: 0 -124px; +} +#header-navi li a.lastNavi:hover { + background-position: 0 0; +} +#header-navi li.selected a { + background-position: 0 -62px; +} +#header-navi li.selected a.home { + background-position: 0 -155px; +} +#statistic { + font-size: 11px; + line-height: 31px; + margin-right: 15px; +} +.footer .copyright { + padding: 12px; + width: 857px; +} +.footer .copyright span { + margin: 0px; +} +.footer .goTop { + background: url("../images/icons.gif") no-repeat scroll 0 -304px transparent; + color: #2A2A2A; + cursor: pointer; + line-height: 18px; + margin: 5px 17px 0 0; + padding-left: 16px; + width: 22px; + white-space: nowrap; +} +.article { + padding-bottom: 15px; +} +.article-title { + border-bottom: 1px solid #CCCCCC; + font-size: 16px; + margin-top: 10px; + padding: 0 5px 3px; +} +.article-title sup { + font-size: 12px; +} +.article-title a { + color: #4C4C4C; + text-decoration: none; +} +.article-title a:hover { + color: #2970A6; +} +.article-abstract { + line-height: 145%; + margin: 10px 0 10px 5px; + word-wrap: break-word; +} +.tagsIcon, .articles-commentIcon, .dateIcon, .article-browserIcon, .authorIcon { + background: url("../images/icons.gif") no-repeat scroll 0 -400px transparent; + float: left; + height: 16px; + margin-right: 6px; + width: 16px; +} +.tagsIcon { + background-position: 0 -400px; + margin-left: 15px; +} +.dateIcon { + background-position: 0 -48px; + margin-left: 15px; +} +.authorIcon { + background-position: 0 0; +} +.articles-commentIcon { + background-position: 0 -96px; +} +.article-browserIcon { + background-position: 0 -480px; +} +.article-body { + line-height: 145%; + padding: 5px 0 0 5px; +} +.article-footer { + margin: 0 5px 10px 5px; +} +.article-relative { + line-height: 22px; + margin-top: 24px; +} +.article-relative h4 { + font-size: 12px; +} +.comments { + background: none repeat scroll 0 0 #FCFCFC; + border-bottom: 1px solid #CCCCCC; + border-top: 1px solid #CCCCCC; + margin: 15px -15px; + padding: 0 15px 15px; + position: relative; +} +.comment-title { + background-color: #E3E9FF; + border-top: 1px solid #3366CC; + padding: 3px 12px 3px 12px; + position: relative; +} +.comment-body-ref { + background-color: #FFFFFF; + filter: alpha(opacity=90); + left: 217px; + opacity: 0.9; + padding: 6px; + position: absolute; + width: 605px; + z-index: 10; +} +.comment-body { + margin-top: 15px; +} +.comment-author { + float: left; + text-align: center; + width: 81px; +} +.comment-author div { + background: url("../images/commentpoint.png") no-repeat scroll 100% 33% transparent; + margin-top: 10px; + padding-right: 14px; +} +.comment-author img { + border: 1px solid #999999; + height: 32px; + padding: 1px; + width: 32px; +} +.comment-author a { + font-weight: bold; + white-space: nowrap; + margin-right: 14px; +} +.comment-info { + background: url("../images/comment.gif") no-repeat scroll 0 0 #EDEFF0; + font-size: 12px; + padding: 10px 15px 0; + width: 494px; +} +.comment-content { + background: url("../images/comment.gif") no-repeat scroll 100% 100% transparent; + font-size: 12px; + line-height: 145%; + margin: 0 -15px; + overflow: hidden; + padding: 9px 15px 10px; + word-wrap: break-word; +} +.comment-form img { + cursor: pointer; +} +.comment-form input, .comment-form textarea { + background: url("../images/textfield.gif") repeat-x scroll 50% 0 #FFFFFF; + border: 1px solid #A6A6A6; + color: #555555; + font-family: Helvetica,Arial,sans-serif; + height: 16px; + outline: none; + padding: 2px 1px; + width: 200px; +} +.comment-form textarea { + font-size: 12px; + height: auto; + width: 601px; +} +.comment-form button { + background: none repeat scroll 0 0 #B4D666; + border-color: #B4D666 #81B840 #81B840 #B4D666; + border-radius: 0px; + border-style: solid; + border-width: 1px; + color: #2970A6; + font-size: 12px; + height: 24px; + line-height: 24px; + padding: 0px 6px; +} +.comment-form button:hover { + background: none repeat scroll 0 0 #98C64C; + border-color: #76B33A #98C64C #98C64C #76B33A; + color: #074A7E; +} +.em00, .em01, .em02, .em03, .em04, .em05, .em06, .em07, .em08, .em09, .em10, .em11, .em12, .em13, .em14 { + background-image: url("../../i-nove/images/emotions/emotions-black.png"); +} +.error-msg { + color: #3366CC; +} +.side-navi ul { + list-style: none; + margin-top: 10px; +} + +.side-navi .item { + padding: 15px; +} + +.side-navi sup { + margin-right: 3px; + color: #555; +} + +.side-navi .navi-comments img { + border: 1px solid #999999; + height: 32px; + margin-right: 7px; + padding: 1px; + width: 32px; +} + +.side-navi .navi-comments a { + font-weight: bold; +} + +.side-navi .navi-comments .side-comment { + color: #555555; + font-weight: normal; + height: 18px; +} +.side-navi .navi-comments div.left>div>div { + display: none; +} +.side-navi .navi-comments .side-comment img { + border: 0px; + height: 16px; + margin-right: 0px; + padding: 0px; + width: 16px; +} +.side-navi .navi-comments li { + padding: 2px 0; +} +.side-navi .navi-comments li div { + overflow: hidden; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; + width: 227px; +} +.side-navi a.selected { + color: #555555; + text-decoration: none; +} +.side-navi ul.navi-tags li, .side-navi .navi-comments li { + background-image: none; + padding-left: 0px; +} +.side-navi ul.navi-tags li img { + height: 16px; + padding-right: 6px; + width: 16px; +} +.side-navi li { + background: url("../images/icons.gif") no-repeat scroll 0 -623px transparent; + margin: 5px 0 0 0; + overflow: hidden; + padding-left: 20px; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; + white-space: nowrap; +} + +.side-navi li.aboutMe { + white-space: normal; +} + +.side-navi .line { + background: url("../images/widgetsep.png") no-repeat scroll center bottom transparent; + height: 6px; + width: 300px; +} +.pagination { + margin: 16px; + text-align: center; +} +.pagination a, .pagination a:visited { + color: #4272DB; + padding: 0 3px; +} +.pagination a.selected { + color: #000000; + font-weight: bold; +} +#tagsPanel .tagPanel { + border: 2px solid; + border-radius: 6px; + cursor: pointer; + float: left; + margin: 3px; +} +#tagsPanel .tagPanel:hover { + background-color: #EEEEEE; + border: 2px dashed; +} +#tagsPanel .tagPanel { + text-decoration: none; +} +.error-body { + background: url("../images/main_shadow.gif") repeat-x scroll center top #FFFFFF; + height: 400px; + padding: 12px; +} +.error-title { + line-height: 72px; +} +.error-panel { + margin-left: 35px; + width: 201px; +} +.error-panel a { + background-color: #9CD941; + border-color: #D0F29D #398A38 #398A38 #D0F29D; + border-style: solid; + border-width: 1px; + color: #000000; + font-size: 14px; + font-weight: bold; + margin-right: 3px; + padding: 10px 15px; + text-decoration: none; +} +.error-panel a:hover { + background-color: #ADEb51; +} +.kind-panel { + background: url("../images/box.gif") no-repeat scroll 100% 100% #F4F5F7; + margin-bottom: 10px; + padding: 8px 12px; +} +.kind-title { + background: url("../images/box.gif") no-repeat scroll 0 0 #E3E4E6; + border-bottom: 1px solid #CCCCCC; + font-weight: bold; + padding: 6px 12px; +} \ No newline at end of file diff --git a/i-nove/footer.ftl b/i-nove/footer.ftl new file mode 100644 index 0000000..ce04a17 --- /dev/null +++ b/i-nove/footer.ftl @@ -0,0 +1,65 @@ + +
    + ${goTopLabel} +
    + + + +${plugins} \ No newline at end of file diff --git a/i-nove/header.ftl b/i-nove/header.ftl new file mode 100644 index 0000000..4e3341f --- /dev/null +++ b/i-nove/header.ftl @@ -0,0 +1,59 @@ +
    +

    + + ${blogTitle} + +

    + ${blogSubtitle} +
    +
    +
    + +
    +
    + + ${viewCount1Label} + + ${statistic.statisticBlogViewCount} + +    + + + ${articleCount1Label} + + ${statistic.statisticPublishedBlogArticleCount} + +    + + + ${commentCount1Label} + + ${statistic.statisticPublishedBlogCommentCount} + + +
    +
    +
    \ No newline at end of file diff --git a/i-nove/images/bg.jpg b/i-nove/images/bg.jpg new file mode 100644 index 0000000..140bf34 Binary files /dev/null and b/i-nove/images/bg.jpg differ diff --git a/i-nove/images/box.gif b/i-nove/images/box.gif new file mode 100644 index 0000000..618f073 Binary files /dev/null and b/i-nove/images/box.gif differ diff --git a/i-nove/images/comment.gif b/i-nove/images/comment.gif new file mode 100644 index 0000000..5c6300e Binary files /dev/null and b/i-nove/images/comment.gif differ diff --git a/i-nove/images/commentpoint.png b/i-nove/images/commentpoint.png new file mode 100644 index 0000000..632318f Binary files /dev/null and b/i-nove/images/commentpoint.png differ diff --git a/i-nove/images/emotions/em00.png b/i-nove/images/emotions/em00.png new file mode 100644 index 0000000..2420609 Binary files /dev/null and b/i-nove/images/emotions/em00.png differ diff --git a/i-nove/images/emotions/em01.png b/i-nove/images/emotions/em01.png new file mode 100644 index 0000000..bddbe24 Binary files /dev/null and b/i-nove/images/emotions/em01.png differ diff --git a/i-nove/images/emotions/em02.png b/i-nove/images/emotions/em02.png new file mode 100644 index 0000000..39051f3 Binary files /dev/null and b/i-nove/images/emotions/em02.png differ diff --git a/i-nove/images/emotions/em03.png b/i-nove/images/emotions/em03.png new file mode 100644 index 0000000..8cf9113 Binary files /dev/null and b/i-nove/images/emotions/em03.png differ diff --git a/i-nove/images/emotions/em04.png b/i-nove/images/emotions/em04.png new file mode 100644 index 0000000..fb061a8 Binary files /dev/null and b/i-nove/images/emotions/em04.png differ diff --git a/i-nove/images/emotions/em05.png b/i-nove/images/emotions/em05.png new file mode 100644 index 0000000..83d82b4 Binary files /dev/null and b/i-nove/images/emotions/em05.png differ diff --git a/i-nove/images/emotions/em06.png b/i-nove/images/emotions/em06.png new file mode 100644 index 0000000..20d66f0 Binary files /dev/null and b/i-nove/images/emotions/em06.png differ diff --git a/i-nove/images/emotions/em07.png b/i-nove/images/emotions/em07.png new file mode 100644 index 0000000..dcda19c Binary files /dev/null and b/i-nove/images/emotions/em07.png differ diff --git a/i-nove/images/emotions/em08.png b/i-nove/images/emotions/em08.png new file mode 100644 index 0000000..676df26 Binary files /dev/null and b/i-nove/images/emotions/em08.png differ diff --git a/i-nove/images/emotions/em09.png b/i-nove/images/emotions/em09.png new file mode 100644 index 0000000..94f4605 Binary files /dev/null and b/i-nove/images/emotions/em09.png differ diff --git a/i-nove/images/emotions/em10.png b/i-nove/images/emotions/em10.png new file mode 100644 index 0000000..11f9f4c Binary files /dev/null and b/i-nove/images/emotions/em10.png differ diff --git a/i-nove/images/emotions/em11.png b/i-nove/images/emotions/em11.png new file mode 100644 index 0000000..9979744 Binary files /dev/null and b/i-nove/images/emotions/em11.png differ diff --git a/i-nove/images/emotions/em12.png b/i-nove/images/emotions/em12.png new file mode 100644 index 0000000..0c9d57f Binary files /dev/null and b/i-nove/images/emotions/em12.png differ diff --git a/i-nove/images/emotions/em13.png b/i-nove/images/emotions/em13.png new file mode 100644 index 0000000..5279d49 Binary files /dev/null and b/i-nove/images/emotions/em13.png differ diff --git a/i-nove/images/emotions/em14.png b/i-nove/images/emotions/em14.png new file mode 100644 index 0000000..7594861 Binary files /dev/null and b/i-nove/images/emotions/em14.png differ diff --git a/i-nove/images/emotions/emotions-black.png b/i-nove/images/emotions/emotions-black.png new file mode 100644 index 0000000..3e67ef9 Binary files /dev/null and b/i-nove/images/emotions/emotions-black.png differ diff --git a/i-nove/images/footer.jpg b/i-nove/images/footer.jpg new file mode 100644 index 0000000..19c9207 Binary files /dev/null and b/i-nove/images/footer.jpg differ diff --git a/i-nove/images/header.jpg b/i-nove/images/header.jpg new file mode 100644 index 0000000..20cfa7a Binary files /dev/null and b/i-nove/images/header.jpg differ diff --git a/i-nove/images/icons.gif b/i-nove/images/icons.gif new file mode 100644 index 0000000..cf5057b Binary files /dev/null and b/i-nove/images/icons.gif differ diff --git a/i-nove/images/light.gif b/i-nove/images/light.gif new file mode 100644 index 0000000..19633fb Binary files /dev/null and b/i-nove/images/light.gif differ diff --git a/i-nove/images/main_shadow.gif b/i-nove/images/main_shadow.gif new file mode 100644 index 0000000..c5bff2d Binary files /dev/null and b/i-nove/images/main_shadow.gif differ diff --git a/i-nove/images/menu.gif b/i-nove/images/menu.gif new file mode 100644 index 0000000..d930d8c Binary files /dev/null and b/i-nove/images/menu.gif differ diff --git a/i-nove/images/sidebar_shadow.gif b/i-nove/images/sidebar_shadow.gif new file mode 100644 index 0000000..3f2eefa Binary files /dev/null and b/i-nove/images/sidebar_shadow.gif differ diff --git a/i-nove/images/sidesep.gif b/i-nove/images/sidesep.gif new file mode 100644 index 0000000..f3875ad Binary files /dev/null and b/i-nove/images/sidesep.gif differ diff --git a/i-nove/images/textfield.gif b/i-nove/images/textfield.gif new file mode 100644 index 0000000..cdb0b3b Binary files /dev/null and b/i-nove/images/textfield.gif differ diff --git a/i-nove/images/widgetsep.png b/i-nove/images/widgetsep.png new file mode 100644 index 0000000..c722729 Binary files /dev/null and b/i-nove/images/widgetsep.png differ diff --git a/i-nove/index.ftl b/i-nove/index.ftl new file mode 100644 index 0000000..880d1bf --- /dev/null +++ b/i-nove/index.ftl @@ -0,0 +1,32 @@ +<#include "macro-head.ftl"> + + + + <@head title="${blogTitle}"> + + + + + + ${topBarReplacement} +
    +
    +
    + <#include "header.ftl"> +
    +
    + <#include "article-list.ftl"> +
    +
    + <#include "side.ftl"> +
    +
    +
    + +
    +
    +
    + + diff --git a/i-nove/lang/lang_en_US.properties b/i-nove/lang/lang_en_US.properties new file mode 100644 index 0000000..2860965 --- /dev/null +++ b/i-nove/lang/lang_en_US.properties @@ -0,0 +1,287 @@ +# +# 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: 2.0.5.7, Sep 5, 2011 +# Author: Liang Ding +# + +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= +blogSyncLabel=Blog Sync +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 +blogSyncMgmtLabel=Blog Sync Management +syncMgmtLabel=Sync manage Blog +userName1Label=Username: +userPassword1Label=Password: +syncPostLabel=Sync Post +syncUpdateLabel=Sync Update +syncRemoveLabel=Sync Remove +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 +clearAllCacheLabel=Clear all cache +clearCacheLabel=Clear cache +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 +welcomeToSoloLabel=Welcome to B3log Solo! +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 +updatePreferenceFailLabel=Update Fail, please check Blog Host configuration! +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. +exceedMaxUploadSizeLabel=Size exceed 1M :-( +uploadFailLabel=Upload Fail! +fileEmptyLabel=File is empty +duplicatedPermalinkLabel=Duplicated permalink! +invalidPermalinkFormatLabel=Invalid permalink format! +duplicatedEmailLabel=Duplicated email! +canntBeLocalhostOnProductionLabel=Can not set host as localhost on production! +refreshAndRetryLabel=Please refresh and try again! +noDataLable=NO Data +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/i-nove/lang/lang_zh_CN.properties b/i-nove/lang/lang_zh_CN.properties new file mode 100644 index 0000000..0cedee0 --- /dev/null +++ b/i-nove/lang/lang_zh_CN.properties @@ -0,0 +1,287 @@ +# +# 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: 2.0.6.2, Sep 5, 2011 +# Author: Liang Ding +# + +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 +clearAllCacheLabel=\u6e05\u9664\u6240\u6709\u9875\u9762\u7f13\u5b58 +clearCacheLabel=\u6e05\u9664\u672c\u9875\u7f13\u5b58 +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 +welcomeToSoloLabel=\u6b22\u8fce\u4f7f\u7528 B3log Solo\uff01 +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 +updatePreferenceFailLabel=\u66f4\u65b0\u5931\u8d25\uff0c\u8bf7\u4ed4\u7ec6\u68c0\u67e5\u201c\u535a\u5ba2\u5730\u5740\u201d\u7684\u914d\u7f6e\u662f\u5426\u6b63\u786e +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 +exceedMaxUploadSizeLabel=\u76ee\u524d\u53ea\u80fd\u4e0a\u4f20\u5c0f\u4e8e 1M \u7684\u6587\u4ef6 :-( +uploadFailLabel=\u4e0a\u4f20\u5931\u8d25\uff01 +fileEmptyLabel=\u6587\u4ef6\u4e3a\u7a7a\uff01 +duplicatedPermalinkLabel=\u94fe\u63a5\u91cd\u590d\uff01 +invalidPermalinkFormatLabel=\u975e\u6cd5\u7684\u94fe\u63a5\u683c\u5f0f\uff01 +duplicatedEmailLabel=\u90ae\u4ef6\u5730\u5740\u91cd\u590d\uff01 +canntBeLocalhostOnProductionLabel=GAE \u73af\u5883\u4e0a\u8bf7\u52ff\u6307\u5b9a\u535a\u5ba2\u5730\u5740\u4e3a localhost\uff01 +refreshAndRetryLabel=\u8bf7\u5237\u65b0\u91cd\u8bd5\uff01 +noDataLable=\u65e0\u6570\u636e +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/i-nove/macro-comments.ftl b/i-nove/macro-comments.ftl new file mode 100644 index 0000000..8227e21 --- /dev/null +++ b/i-nove/macro-comments.ftl @@ -0,0 +1,170 @@ +<#macro comments commentList article> +
    + <#list commentList as comment> +
    +
    +
    +
    + ${comment.commentName} +
    + <#if "http://" == comment.commentURL> + ${comment.commentName} + <#else> + ${comment.commentName} + +
    +
    +
    + ${comment.commentDate?string("yyyy-MM-dd HH:mm:ss")} + <#if comment.isReply> + @ + ${comment.commentOriginalCommentName} + +
    +
    + <#if article.commentable> + ${replyLabel} + +
    +
    +
    + ${comment.commentContent} +
    +
    +
    +
    +
    + +
    +<#if article.commentable> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + ${commentNameLabel} +
    + + + ${commentEmailLabel} +
    + + + ${commentURLLabel} +
    + + + + + + + + + + + + + + + +
    + +
    + + + validate + + +
    + +
    + + + +<#macro comment_script oId> + + + \ No newline at end of file diff --git a/i-nove/macro-head.ftl b/i-nove/macro-head.ftl new file mode 100644 index 0000000..71183d6 --- /dev/null +++ b/i-nove/macro-head.ftl @@ -0,0 +1,15 @@ +<#macro head title> + +${title} +<#nested> + + + + + + + + + +${htmlHead} + \ No newline at end of file diff --git a/i-nove/page.ftl b/i-nove/page.ftl new file mode 100644 index 0000000..3d8ac5d --- /dev/null +++ b/i-nove/page.ftl @@ -0,0 +1,39 @@ +<#include "macro-head.ftl"> +<#include "macro-comments.ftl"> + + + + <@head title="${page.pageTitle} - ${blogTitle}"> + + + + + + ${topBarReplacement} +
    +
    +
    + <#include "header.ftl"> +
    +
    +
    +
    + ${page.pageContent} +
    +
    + <@comments commentList=pageComments article=page> +
    +
    + <#include "side.ftl"> +
    +
    +
    + +
    +
    + <@comment_script oId=page.oId> +
    + + diff --git a/i-nove/preview.png b/i-nove/preview.png new file mode 100644 index 0000000..4bb3062 Binary files /dev/null and b/i-nove/preview.png differ diff --git a/i-nove/side.ftl b/i-nove/side.ftl new file mode 100644 index 0000000..16e9d4e --- /dev/null +++ b/i-nove/side.ftl @@ -0,0 +1,126 @@ +
    + <#if "" != noticeBoard> +
    +

    ${noticeBoardLabel}

    +
    + ${noticeBoard} +
    +
    +
    + + <#if 0 != recentComments?size> + +
    + + <#if 0 != mostCommentArticles?size> +
    +

    ${mostCommentArticlesLabel}

    + +
    +
    + + <#if 0 != mostViewCountArticles?size> +

    ${mostViewCountArticlesLabel}

    + +
    +
    + + <#if 0 != mostUsedTags?size> +
    +

    ${popTagsLabel}

    + +
    +
    + + <#if 0 != links?size> +
    +

    ${linkLabel}

    + +
    +
    + + <#if 0 != archiveDates?size> +
    +

    ${archiveLabel}

    + +
    + +
    diff --git a/i-nove/skin.properties b/i-nove/skin.properties new file mode 100644 index 0000000..deaa401 --- /dev/null +++ b/i-nove/skin.properties @@ -0,0 +1,26 @@ +# +# Copyright (C) 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: i-nove skin. +# Version: 1.0.0.6, May 7, 2012 +# Author: Liyuan Li +# + +name=i-nove +version=2.0.3 +forSolo=0.4.5 +memo=Refers to http://demo.neoease.com \ No newline at end of file diff --git a/i-nove/tag-articles.ftl b/i-nove/tag-articles.ftl new file mode 100644 index 0000000..c654ab8 --- /dev/null +++ b/i-nove/tag-articles.ftl @@ -0,0 +1,40 @@ +<#include "macro-head.ftl"> + + + + <@head title="${tag.tagTitle} - ${blogTitle}"> + + + + + + ${topBarReplacement} +
    +
    +
    + <#include "header.ftl"> +
    +
    +
    + ${tag1Label} +
    + + <#include "article-list.ftl"> +
    +
    + <#include "side.ftl"> +
    +
    +
    + +
    +
    +
    + + diff --git a/i-nove/tags.ftl b/i-nove/tags.ftl new file mode 100644 index 0000000..289d2a0 --- /dev/null +++ b/i-nove/tags.ftl @@ -0,0 +1,45 @@ +<#include "macro-head.ftl"> + + + + <@head title="${allTagsLabel} - ${blogTitle}"> + + + + + + ${topBarReplacement} +
    +
    +
    + <#include "header.ftl"> +
    +
    + +
    +
    + <#include "side.ftl"> +
    +
    +
    + +
    +
    + +
    + + diff --git a/neoease/archive-articles.ftl b/neoease/archive-articles.ftl new file mode 100644 index 0000000..cb44541 --- /dev/null +++ b/neoease/archive-articles.ftl @@ -0,0 +1,31 @@ +<#include "macro-head.ftl"> + + + + <@head title="${archiveDate.archiveDateMonth} ${archiveDate.archiveDateYear} (${archiveDate.archiveDatePublishedArticleCount}) - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#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 "side.ftl"> +
    +
    +
    + <#include "footer.ftl"> + + diff --git a/neoease/article-list.ftl b/neoease/article-list.ftl new file mode 100644 index 0000000..f781af0 --- /dev/null +++ b/neoease/article-list.ftl @@ -0,0 +1,78 @@ +<#list articles as article> +
    +

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

    +
    + + <#if article.hasUpdated> + ${article.articleUpdateDate?string("yyyy-MM-dd HH:mm:ss")} + <#else> + ${article.articleCreateDate?string("yyyy-MM-dd HH:mm:ss")} + + + + ${article.authorName} + +
    +
    + + ${article.articleCommentCount}  ${commentLabel} +    + + ${article.articleViewCount}  ${viewLabel} + +
    +
    +
    +
    + ${article.articleAbstract} +
    +
    +
    +
    + + <#list article.articleTags?split(",") as articleTag> + <#if articleTag_has_next>, + + +
    +
    + +<#if 0 != paginationPageCount> + + \ No newline at end of file diff --git a/neoease/article.ftl b/neoease/article.ftl new file mode 100644 index 0000000..be150d1 --- /dev/null +++ b/neoease/article.ftl @@ -0,0 +1,110 @@ +<#include "macro-head.ftl"> +<#include "macro-comments.ftl"> + + + + <@head title="${article.articleTitle} - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "header.ftl"> +
    +
    +
    +
    +

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

    +
    + + <#if article.hasUpdated> + ${article.articleUpdateDate?string("yyyy-MM-dd HH:mm:ss")} + <#else> + ${article.articleCreateDate?string("yyyy-MM-dd HH:mm:ss")} + + + + ${article.authorName} + +
    +
    + + ${article.articleCommentCount}  ${commentLabel} +    + + ${article.articleViewCount}  ${viewLabel} + +
    +
    +
    + ${article.articleContent} + <#if "" != article.articleSign.signHTML?trim> +
    + ${article.articleSign.signHTML} +
    + +
    +
    + + <#list article.articleTags?split(",") as articleTag> + <#if articleTag_has_next>, + + +
    +
    + <#if nextArticlePermalink??> +
    + + <#if previousArticlePermalink??> + + +
    +
    +
    +
    +
    +
    +
    +
    +
    + <@comments commentList=articleComments article=article> +
    + <#include "side.ftl"> +
    +
    +
    + <#include "footer.ftl"> + <@comment_script oId=article.oId> + page.tips.externalRelevantArticlesDisplayCount = "${externalRelevantArticlesDisplayCount}"; + <#if 0 != randomArticlesDisplayCount> + page.loadRandomArticles(); + + <#if 0 != relevantArticlesDisplayCount> + page.loadRelevantArticles('${article.oId}', '

    ${relevantArticlesLabel}

    '); + + <#if 0 != externalRelevantArticlesDisplayCount> + page.loadExternalRelevantArticles("<#list article.articleTags?split(",") as articleTag>${articleTag}<#if articleTag_has_next>,"); + + + + diff --git a/neoease/author-articles.ftl b/neoease/author-articles.ftl new file mode 100644 index 0000000..02c1a1f --- /dev/null +++ b/neoease/author-articles.ftl @@ -0,0 +1,25 @@ +<#include "macro-head.ftl"> + + + + <@head title="${authorName} - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "header.ftl"> +
    +
    +
    +

    ${author1Label}${authorName}

    + <#include "article-list.ftl"> +
    + <#include "side.ftl"> +
    +
    +
    + <#include "footer.ftl"> + + diff --git a/neoease/css/neoease.css b/neoease/css/neoease.css new file mode 100644 index 0000000..01aac3a --- /dev/null +++ b/neoease/css/neoease.css @@ -0,0 +1,882 @@ +/** + * skin neoease style + * + * @author Liyuan Li + * @version 1.0.1.6, May 14, 2012 +*/ +/* start base */ +html, body, div, ul, li, h1, h2, h3, h4, h5, h6 { + margin: 0; + padding: 0; +} + +body { + font-family: "Lucida Grande",Verdana,\5fae\8f6f\96c5\9ed1; + font-size: 12px; + background-color: #F9F9F9; + color: #333; +} + +a:link { + outline: none; + color: #21759B; + text-decoration: none; +} + +a:visited { + color: #555777; +} + +a:hover { + color: #D54E21; +} + +a:active { + color: #333; +} + +img { + vertical-align: middle; + border: 0; +} + +textarea, input { + outline: none; +} + +.left { + float: left; +} + +.right { + float: right; +} + +.clear { + background-color: transparent; + border: 0; + clear: both; + display: block; + font-size: 0; + height: 0; + line-height: 0; + overflow: hidden; +} + +.none { + display: none; +} + +.logo { + padding: 0 5px; + text-shadow: 0 0 1px #EEE; +} + +.tip { + color: #D54E21; + font-size: 11px; +} + +.em00, .em01, .em02, .em03, .em04, .em05, .em06, .em07, .em08, .em09, +.em10, .em11, .em12, .em13, .em14 { + background-image: url("../../neoease/images/emotions/emotions-black.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; +} +.em-span { + line-height: 24px; + float: left; +} + +.em-br { + line-height: 24px; +} +/* end base */ + +/* start ico */ +.date-ico, .tag-ico, .user-ico, .expand-ico, .collapse-ico, #search, +.translate-ico, .feed-ico { + background-image: url("../../neoease/images/icons.png"); +} + +.feed-ico { + background-position: right -146px; + background-repeat: no-repeat; + color: #333; + padding-right: 24px; +} + +.translate-ico { + background-position: 1px -125px; + background-repeat: no-repeat; + border: 1px solid #999; + border-radius: 3px 3px 3px 3px; + cursor: pointer; + float: right; + height: 16px; + margin: 6px 0 0 18px; + padding: 1px; + width: 16px; +} + +.translate-ico:hover { + border-color: #D54E21; + box-shadow: 0 0 1px #999; + background-color: #F2F2F2; +} + +.expand-ico, .collapse-ico { + background-position: 54px -84px; + cursor: pointer; + height: 16px; + background-repeat: no-repeat; +} + +.collapse-ico { + background-position: 54px -69px; +} + +.date-ico, .tag-ico, .user-ico { + background-repeat: no-repeat; + height: 16px; + display: block; + padding-left: 20px; +} + +.tag-ico { + margin: 6px 6px 0 0; +} + +.date-ico { + float: left; + background-position: 0 -16px; +} + +.user-ico { + background-position: 0 -32px; + float: left; + margin-left: 12px; +} +/* end ico */ + +/* start frame */ +.wrapper { + margin: 0 auto; + width: 960px; +} + +.body { + border-top: 2px solid #DDD; +} + +.main { + float: left; + margin: 16px 0 50px; + overflow: hidden; + width: 667px; +} +/* end frame */ + +/* start header */ +.header { + background: url("../../neoease/images/icons.png") repeat-x scroll 0 -220px #F2F2F2; + padding: 20px 0; +} + +.header .title { + border-bottom: 1px solid #242424; + color: #000; + font-size: 26px; + font-weight: normal; +} + +.header .sub-title { + color: #242424; + font-size: 11px; +} + +#search { + background-position: 7px -99px; + background-repeat: no-repeat; + background-color: #FFF; + border: 1px solid #DDD; + border-radius: 2px 2px 2px 2px; + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1) inset; + color: #888; + float: right; + font-size: 14px; + height: 20px; + line-height: 145%; + padding: 3px 10px 3px 28px; + width: 24px; + -moz-transition: width 0.4s ease, background 0.4s ease; + -webkit-transition: width 0.4s ease, background 0.4s ease; + transition: width 0.4s ease, background 0.4s ease; +} + +#search:focus { + background-color: #F9F9F9; + width: 196px; +} + +.nav { + background-color: #E9E9E9; + border-bottom: 1px solid #CCCCCC; +} + +.nav ul { + list-style: none; + float: left; +} + +.nav li { + float: left; +} + +.nav a { + color: #666666; + display: block; + float: left; + font-size: 14px; + height: 30px; + line-height: 30px; + padding: 0 15px; + text-shadow: 0 1px 0 #EEE; +} + +.nav a:hover { + color: #D54E21; + background-color: #DDD; +} + +.nav .current { + background-color: #DDD; + margin: -1px 0; + padding-right: 2px; +} + +.nav .current a { + background-color: #F9F9F9; + border-color: #CCCCCC #CCCCCC #F9F9F9; + border-style: solid; + border-width: 1px 1px 3px; + font-weight: 700; + height: 33px; + line-height: 33px; + margin: -2px 0 -3px; + color: #333; + text-shadow : 1px 1px 1px #C6D9E9; +} + +.nav img { + margin-left: 3px; +} + +.nav .right { + line-height: 29px; +} +/* end header */ + +/* start footer */ +.footer { + background-color: #E9E9E9; + border-top: 3px solid #DDD; + color: #999; + font-size: 11px; + padding: 12px 0; +} + +.footer a { + color: #787878; +} + +.footer a:hover { + color: #D54E21; +} + +#goTop { + background: url("../../neoease/images/icons.png") no-repeat scroll 5px -51px #DDD; + border-radius: 2px 2px 0 0; + cursor: pointer; + font-size: 11px; + height: 21px; + line-height: 21px; + padding: 0 10px 0 23px; + position: absolute; + right: 56px; + display: none; +} + +#goTop:hover { + background-color: #EAEAEA; +} +/* end footer*/ + +/* start side */ +.side { + float: right; + overflow: hidden; + width: 278px; + margin-bottom: 50px; +} + +.side>div { + border-bottom: 1px solid #DEDEDE; + padding: 10px 5px 15px; +} + +.side h4 { + font-size: 14px; + line-height: 32px; +} + +.side ul { + list-style: none; +} + +#archiveSide { + list-style: square outside none; + margin-left: 18px; +} + +#archiveSide .archive-year { + color: #D54E21; + font-weight: bold; + height: 18px; + line-height: 18px; + list-style: none; +} + +.side a { + line-height: 18px; + color: #21759B; +} + +.side a:hover { + text-decoration: underline; +} + +.side sup { + color: #333; +} + +.side .side-li li { + overflow: hidden; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; + width: 268px; +} + +.side .side-li a { + white-space: nowrap; +} + +.recent-comments li>img { + background-color: #FFF; + border: 1px solid #999; + padding: 1px; + width: 32px; + height: 32px; + margin-top: 1px; +} + +.recent-comments-main { + float: left; + margin: 0 0 9px 3px; + width: 229px; +} + +.recent-comments-main .expand-ico, .recent-comments-main .collapse-ico { + background-position: 0 -86px; + float: right; + width: 16px; + -moz-transition: opacity 400ms ease; + -webkit-transition: opacity 400ms ease; + transition: opacity 400ms ease; + opacity:0; + filter: alpha(opacity=0); +} + +.recent-comments li:hover .expand-ico, .recent-comments li:hover .collapse-ico { + opacity:1; + filter: alpha(opacity=100); +} + +.recent-comments-main .collapse-ico { + background-position: 0 -70px; +} + +.recent-comments-content { + height: 18px; + overflow: hidden; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; +} + +.recent-comments-content img { + width: 16px; +} + +.recent-comments-content a { + color: #555777; +} + +.recent-comments-content a:hover { + text-decoration: none; +} +/* end side */ + +/* start article list */ +.article { + border-bottom: 1px solid #CCC; + padding: 0 5px 10px; + margin-top: 20px; +} + +.article-element { + font-size: 11px; + line-height: 16px; + margin: 12px 0; +} + +.article-element a { + border-bottom: 1px solid #DFDFDF; + color: #555; + text-decoration: none; + padding-bottom: 1px; +} + +.article-element a:hover { + color: #D54E21; + border-bottom-color: #D54E21; +} + +.article-title { + color: #21759B; + font-size: 20px; + font-weight: normal; +} + +.article-title:hover { + color: #D54E21; +} + +.article .expand-ico, .article .collapse-ico { + float: right; + margin-top: 9px; + padding-right: 6px; + width: 15px; + background-position: 0 -86px; +} + +.article .collapse-ico { + background-position: 0 -70px; +} + +.article-body { + line-height: 145%; + overflow: hidden; + word-wrap: break-word; +} + +.article-body h1 { + font-size: 2em; + margin: .67em 0; +} + +.article-body h2 { + font-size: 1.5em; + margin: .75em 0; +} + +.article-body h3 { + font-size: 1.17em; + margin: .83em 0; +} + +.article-body h4 { + margin: 1.12em 0; +} + +.article-body h4 { + font-size: .83em; + margin: 1.5em 0; +} + +.article-body h6 { + font-size: .75em; + margin: 1.67em 0; +} + +.article-body ol, .article-body ul { + margin-left: 40px; +} + +.article-body a { + border-bottom: 1px solid #DFDFDF; +} + +.article-body a:hover { + color: #D54E21; + border-bottom: 1px solid #D54E21; +} + +.article-body p { + line-height: 18px; +} + +.pagination { + margin-top: 30px; + line-height: 21px; +} + +.pagination a { + border: 1px solid #C5C3C2; + font-size: 10px; + margin: 2px; + padding: 1px 5px ; + text-decoration: none; + background-color: #F2F2F2; +} + +.pagination a.current { + background-color: #FFF; + font-weight: bold; + padding: 2px 6px; + color: #000; +} + +.pagination a:hover { + background-color: #F3DEDD; + color: #D54E21; + border: 1px solid #D54E21; +} + +.page { + margin-top: 20px; + padding: 0 5px 5px; +} +/* end article list */ + +/* start article */ +.article-panel1 { + background-color: #F2F2F2; + padding: 5px 10px; +} + +.article-panel2 { + background-color: #FFF; + margin-top: 12px; + padding: 5px 10px; +} + +.article-panel2 ul { + line-height: 18px; + list-style: square outside none; + margin-left: 18px; +} + +.share { + border-bottom: 1px solid #DEDEDE; + margin-top: 15px; +} + +.share-comment { + background-color: #DDD; + border-radius: 2px 2px 0 0; + float: right; + font-size: 11px; + height: 21px; + line-height: 21px; + margin-right: 16px; + padding: 0 10px; +} + +.share-comment:hover { + background-color: #EAEAEA; +} + +#comments { + position: relative; +} + +#comments>div { + border-bottom: 1px solid #DEDEDE; + padding: 10px; + width: 647px; +} + +#comments .comment-panel>.right { + -moz-transition: opacity 400ms ease; + -webkit-transition: opacity 400ms ease; + transition: opacity 400ms ease; + opacity: 0; + filter: alpha(opacity=0); +} + +#comments>div:hover .comment-panel>.right { + opacity: 1; + filter: alpha(opacity=100); +} + +.comment-even { + background-color: #F8F8F8; +} + +.comment-odd { + background-color: #F5F5F5; +} + +.comment-header { + height: 50px; + width: 50px; + float: left; + background-color: #FFF; + border: 1px solid #DEDEDE; + padding: 1px; +} + +.comment-panel { + float: left; + margin: 0 10px; + width: 573px; + line-height: 16px; +} + +.comment-panel .article-body { + margin-top: 5px; +} + +#comments .comment-body-ref { + border-bottom: 0; + background-color: #FFF; + border-radius: 5px 5px 5px 5px; + left: 73px; + position: absolute; + box-shadow: 1px 0 3px #DEDEDE; + width: 560px; +} + +.comment-body-ref .comment-panel { + width: 486px; +} + +.comment-body-ref .arrow { + border-color: #F5F5F5 #FFF #F5F5F5 #F5F5F5; + border-style: solid; + border-width: 6px 8px 10px 0; + display: block; + left: -8px; + position: absolute; + top: 5px; +} + +.form { + margin: 10px; +} + +.form img { + cursor: pointer; +} + +.form h4 { + margin: 10px 0 5px 5px; +} + +.form th { + text-align: right; + white-space: nowrap; +} + +.form input[type="text"], .form input[type="password"], .form textarea { + border-color: silver #D9D9D9 #D9D9D9; + border-style: solid; + border-width: 1px; + font-family: "Lucida Grande",Verdana,'微软雅黑'; + font-size: 12px; + outline: medium none; + padding: 0 3px; +} + +.form input:focus, .form textarea:focus { + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3) inset; +} + +.form textarea { + overflow: auto; + resize: vertical; + padding: 3px; + width: 634px; +} + +.form input { + height: 24px; + line-height: 16px; + width: 260px; +} + +.form button { + background-color: #B4D666; + border-color: #B4D666 #81B840 #81B840 #B4D666; + border-style: solid; + border-width: 1px; + color: #2970A6; + height: 28px; + line-height: 28px; + padding: 0 12px; +} + +.form button:hover { + background-color: #98C64C; + border-color: #76B33A #98C64C #98C64C #76B33A; + color: #074A7E; +} +/* end article*/ + +/* start tags */ +#tags li { + float: left; + list-style: none; + height: 38px; +} + +#tags a:hover { + text-shadow: 0 0 2px; +} + +#tags a { + border-radius: 3px 3px 3px 3px; + box-shadow: 1px 1px 3px #333; + float: left; + margin: 3px 6px; + padding: 3px 12px; +} + +#tagsSide li a { + float: left; + line-height: 145%; + margin-right: 7px; + white-space: nowrap; +} + +.tags1 { + font-size: 12px; + color: #A1A1A1; +} + +.tags2 { + font-size: 14px; + color: #687F95; +} + +.tags3 { + font-size: 16px; + color: #4C6E90; +} + +.tags4 { + font-size: 18px; + color: #258; +} + +.tags5 { + font-size: 20px; +} + +#tagsSide .tags2 { + font-size: 14px; +} + +#tagsSide .tags3 { + font-size: 16px; +} + +#tagsSide .tags4 { + font-size: 18px; +} + +#tagsSide .tags5 { + font-size: 20px; +} +/* end tags */ + +/* start others */ +.main>h2 { + margin-top: 16px; +} + +.error { + background-image: url("../../neoease/images/404.png"); + float: left; + height: 536px; + margin: 50px 80px; + position: relative; + width: 363px; +} + +.error h2 { + left: -68px; + position: absolute; + top: -20px; +} + +.error a { + background-color: #9CD941; + border: 265px none; + bottom: 12px; + color: #333555; + float: left; + padding: 10px 15px; + position: absolute; + right: -106px; +} + +.error a:hover { + background-color: #ADEb51; +} +/* end others */ diff --git a/neoease/css/neoease.min.css b/neoease/css/neoease.min.css new file mode 100644 index 0000000..56c8c22 --- /dev/null +++ b/neoease/css/neoease.min.css @@ -0,0 +1,152 @@ +html,body,div,ul,li,h1,h2,h3,h4,h5,h6{margin:0;padding:0} +body{font-family:"Lucida Grande",Verdana,\5fae\8f6f\96c5\9ed1;font-size:12px;background-color:#F9F9F9;color:#333} +a:link{outline:none;color:#21759B;text-decoration:none} +a:visited{color:#555777} +a:hover{color:#D54E21} +a:active{color:#333} +img{vertical-align:middle;border:0} +textarea,input{outline:none} +.left{float:left} +.right{float:right} +.clear{background-color:transparent;border:0;clear:both;display:block;font-size:0;height:0;line-height:0;overflow:hidden} +.none{display:none} +.logo{padding:0 5px;text-shadow:0 0 1px #EEE} +.tip{color:#D54E21;font-size:11px} +.em00,.em01,.em02,.em03,.em04,.em05,.em06,.em07,.em08,.em09,.em10,.em11,.em12,.em13,.em14{background-image:url(../../../images/emotions-black.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} +.em-span{line-height:24px;float:left} +.em-br{line-height:24px} +.date-ico,.tag-ico,.user-ico,.expand-ico,.collapse-ico,#search,.translate-ico,.feed-ico{background-image:url(../../neoease/images/icons.png)} +.feed-ico{background-position:right -146px;background-repeat:no-repeat;color:#333;padding-right:24px} +.translate-ico{background-position:1px -125px;background-repeat:no-repeat;border:1px solid #999;border-radius:3px 3px 3px 3px;cursor:pointer;float:right;height:16px;margin:6px 0 0 18px;padding:1px;width:16px} +.translate-ico:hover{border-color:#D54E21;box-shadow:0 0 1px #999;background-color:#F2F2F2} +.expand-ico,.collapse-ico{background-position:54px -84px;cursor:pointer;height:16px;background-repeat:no-repeat} +.collapse-ico{background-position:54px -69px} +.date-ico,.tag-ico,.user-ico{background-repeat:no-repeat;height:16px;display:block;padding-left:20px} +.tag-ico{margin:6px 6px 0 0} +.date-ico{float:left;background-position:0 -16px} +.user-ico{background-position:0 -32px;float:left;margin-left:12px} +.wrapper{margin:0 auto;width:960px} +.body{border-top:2px solid #DDD} +.main{float:left;margin:16px 0 50px;overflow:hidden;width:667px} +.header{background:url(../../neoease/images/icons.png) repeat-x scroll 0 -220px #F2F2F2;padding:20px 0} +.header .title{border-bottom:1px solid #242424;color:#000;font-size:26px;font-weight:normal} +.header .sub-title{color:#242424;font-size:11px} +#search{background-position:7px -99px;background-repeat:no-repeat;background-color:#FFF;border:1px solid #DDD;border-radius:2px 2px 2px 2px;box-shadow:0 1px 1px rgba(0,0,0,0.1) inset;color:#888;float:right;font-size:14px;height:20px;line-height:20px;padding:3px 10px 3px 28px;width:24px;-moz-transition:width .4s ease, background .4s ease;-webkit-transition:width .4s ease, background .4s ease;transition:width .4s ease, background .4s ease} +#search:focus{background-color:#F9F9F9;width:196px} +.nav{background-color:#E9E9E9;border-bottom:1px solid #CCCCCC} +.nav ul{list-style:none;float:left} +.nav li{float:left} +.nav a{color:#666666;display:block;float:left;font-size:14px;height:30px;line-height:30px;padding:0 15px;text-shadow:0 1px 0 #EEE} +.nav a:hover{color:#D54E21;background-color:#DDD} +.nav .current{background-color:#DDD;margin:-1px 0;padding-right:2px} +.nav .current a{background-color:#F9F9F9;border-color:#CCCCCC #CCCCCC #F9F9F9;border-style:solid;border-width:1px 1px 3px;font-weight:700;height:33px;line-height:33px;margin:-2px 0 -3px;color:#333;text-shadow:1px 1px 1px #C6D9E9} +.nav img{margin-left:3px} +.nav .right{line-height:29px} +.footer{background-color:#E9E9E9;border-top:3px solid #DDD;color:#999;font-size:11px;padding:12px 0} +.footer a{color:#787878} +.footer a:hover{color:#D54E21} +#goTop{background:url(../../neoease/images/icons.png) no-repeat scroll 5px -51px #DDD;border-radius:2px 2px 0 0;cursor:pointer;font-size:11px;height:21px;line-height:21px;padding:0 10px 0 23px;position:absolute;right:56px;display:none} +#goTop:hover{background-color:#EAEAEA} +.side{float:right;overflow:hidden;width:278px;margin-bottom:50px} +.side>div{border-bottom:1px solid #DEDEDE;padding:10px 5px 15px} +.side h4{font-size:14px;line-height:32px} +.side ul{list-style:none} +#archiveSide{list-style:square outside none;margin-left:18px} +#archiveSide .archive-year{color:#D54E21;font-weight:bold;height:18px;line-height:18px;list-style:none} +.side a{line-height:18px;color:#21759B} +.side a:hover{text-decoration:underline} +.side sup{color:#333} +.side .side-li li{overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis;width:268px} +.side .side-li a{white-space:nowrap} +.recent-comments li>img{background-color:#FFF;border:1px solid #999;padding:1px;width:32px;height:32px;margin-top:1px} +.recent-comments-main{float:left;margin:0 0 9px 3px;width:229px} +.recent-comments-main .expand-ico,.recent-comments-main .collapse-ico{background-position:0 -86px;float:right;width:16px;-moz-transition:opacity 400ms ease;-webkit-transition:opacity 400ms ease;transition:opacity 400ms ease;opacity:0;filter:alpha(opacity=0)} +.recent-comments li:hover .expand-ico,.recent-comments li:hover .collapse-ico{opacity:1;filter:alpha(opacity=100)} +.recent-comments-main .collapse-ico{background-position:0 -70px} +.recent-comments-content{height:18px;overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis} +.recent-comments-content img{width:16px} +.recent-comments-content a{color:#555777} +.recent-comments-content a:hover{text-decoration:none} +.article{border-bottom:1px solid #CCC;padding:0 5px 10px;margin-top:20px} +.article-element{font-size:11px;line-height:16px;margin:12px 0} +.article-element a{border-bottom:1px solid #DFDFDF;color:#555;text-decoration:none;padding-bottom:1px} +.article-element a:hover{color:#D54E21;border-bottom-color:#D54E21} +.article-title{color:#21759B;font-size:20px;font-weight:normal} +.article-title:hover{color:#D54E21} +.article .expand-ico,.article .collapse-ico{float:right;margin-top:9px;padding-right:6px;width:15px;background-position:0 -86px} +.article .collapse-ico{background-position:0 -70px} +.article-body{line-height: 145%;overflow:hidden;word-wrap:break-word} +.article-body h1{font-size:2em;margin:.67em 0} +.article-body h2{font-size:1.5em;margin:.75em 0} +.article-body h3{font-size:1.17em;margin:.83em 0} +.article-body h4{font-size:.83em;margin:1.5em 0} +.article-body h6{font-size:.75em;margin:1.67em 0} +.article-body ol,.article-body ul{margin-left:40px} +.article-body a{border-bottom:1px solid #DFDFDF} +.article-body a:hover{color:#D54E21;border-bottom:1px solid #D54E21} +.article-body p{line-height:18px} +.pagination{margin-top:30px;line-height:21px} +.pagination a{border:1px solid #C5C3C2;font-size:10px;margin:2px;padding:1px 5px;text-decoration:none;background-color:#F2F2F2} +.pagination a.current{background-color:#FFF;font-weight:bold;padding:2px 6px;color:#000} +.pagination a:hover{background-color:#F3DEDD;color:#D54E21;border:1px solid #D54E21} +.page{margin-top:20px;padding:0 5px 5px} +.article-panel1{background-color:#F2F2F2;padding:5px 10px} +.article-panel2{background-color:#FFF;margin-top:12px;padding:5px 10px} +.article-panel2 ul{line-height:18px;list-style:square outside none;margin-left:18px} +.share{border-bottom:1px solid #DEDEDE;margin-top:15px} +.share-comment{background-color:#DDD;border-radius:2px 2px 0 0;float:right;font-size:11px;height:21px;line-height:21px;margin-right:16px;padding:0 10px} +.share-comment:hover{background-color:#EAEAEA} +#comments{position:relative} +#comments>div{border-bottom:1px solid #DEDEDE;padding:10px;width:647px} +#comments .comment-panel>.right{-moz-transition:opacity 400ms ease;-webkit-transition:opacity 400ms ease;transition:opacity 400ms ease;opacity:0;filter:alpha(opacity=0)} +#comments>div:hover .comment-panel>.right{opacity:1;filter:alpha(opacity=100)} +.comment-even{background-color:#F8F8F8} +.comment-odd{background-color:#F5F5F5} +.comment-header{height:50px;width:50px;float:left;background-color:#FFF;border:1px solid #DEDEDE;padding:1px} +.comment-panel{float:left;margin:0 10px;width:573px;line-height:16px} +.comment-panel .article-body{margin-top:5px} +#comments .comment-body-ref{border-bottom:0;background-color:#FFF;border-radius:5px 5px 5px 5px;left:73px;position:absolute;box-shadow:1px 0 3px #DEDEDE;width:560px} +.comment-body-ref .comment-panel{width:486px} +.comment-body-ref .arrow{border-color:#F5F5F5 #FFF #F5F5F5 #F5F5F5;border-style:solid;border-width:6px 8px 10px 0;display:block;left:-8px;position:absolute;top:5px} +.form{margin:10px} +.form img{cursor:pointer} +.form h4{margin:10px 0 5px 5px} +.form th{text-align:right;white-space:nowrap} +.form input[type=text],.form input[type=password],.form textarea{border-color:silver #D9D9D9 #D9D9D9;border-style:solid;border-width:1px;font-family:"Lucida Grande",Verdana,微软雅黑;font-size:12px;outline:medium none;padding:0 3px} +.form input:focus,.form textarea:focus{box-shadow:0 1px 2px rgba(0,0,0,0.3) inset} +.form textarea{overflow:auto;resize:vertical;padding:3px;width:634px} +.form input{height:24px;line-height:16px;width:260px} +.form button{background-color:#B4D666;border-color:#B4D666 #81B840 #81B840 #B4D666;border-style:solid;border-width:1px;color:#2970A6;height:28px;line-height:28px;padding:0 12px} +.form button:hover{background-color:#98C64C;border-color:#76B33A #98C64C #98C64C #76B33A;color:#074A7E} +#tags li{float:left;list-style:none;height:38px} +#tags a:hover{text-shadow:0 0 2px} +#tags a{border-radius:3px 3px 3px 3px;box-shadow:1px 1px 3px #333;float:left;margin:3px 6px;padding:3px 12px} +#tagsSide li a{float:left;line-height:20px;margin-right:7px;white-space:nowrap} +.tags1{font-size:12px;color:#A1A1A1} +.tags2{font-size:14px;color:#687F95} +.tags3{font-size:16px;color:#4C6E90} +.tags4{font-size:18px;color:#258} +.tags5{font-size:20px} +#tagsSide .tags2{font-size:14px} +#tagsSide .tags3{font-size:16px} +#tagsSide .tags4{font-size:18px} +#tagsSide .tags5{font-size:20px} +.main>h2{margin-top:16px} +.error{background-image:url(../../neoease/images/404.png);float:left;height:536px;margin:50px 80px;position:relative;width:363px} +.error h2{left:-68px;position:absolute;top:-20px} +.error a{background-color:#9CD941;border:265px none;bottom:12px;color:#333555;float:left;padding:10px 15px;position:absolute;right:-106px} +.error a:hover{background-color:#ADEb51} diff --git a/neoease/footer.ftl b/neoease/footer.ftl new file mode 100644 index 0000000..364852d --- /dev/null +++ b/neoease/footer.ftl @@ -0,0 +1,53 @@ + +
    TOP
    + + + + +${plugins} diff --git a/neoease/header.ftl b/neoease/header.ftl new file mode 100644 index 0000000..823ef8e --- /dev/null +++ b/neoease/header.ftl @@ -0,0 +1,61 @@ +
    +
    +
    +

    + + ${blogTitle} + +

    + ${blogSubtitle} +
    +
    + + + + + + +
    +
    +
    +
    + diff --git a/neoease/images/404.png b/neoease/images/404.png new file mode 100644 index 0000000..47f24c8 Binary files /dev/null and b/neoease/images/404.png differ diff --git a/neoease/images/ajax-loader.gif b/neoease/images/ajax-loader.gif new file mode 100644 index 0000000..5ba2f07 Binary files /dev/null and b/neoease/images/ajax-loader.gif differ diff --git a/neoease/images/emotions/em00.png b/neoease/images/emotions/em00.png new file mode 100644 index 0000000..2420609 Binary files /dev/null and b/neoease/images/emotions/em00.png differ diff --git a/neoease/images/emotions/em01.png b/neoease/images/emotions/em01.png new file mode 100644 index 0000000..bddbe24 Binary files /dev/null and b/neoease/images/emotions/em01.png differ diff --git a/neoease/images/emotions/em02.png b/neoease/images/emotions/em02.png new file mode 100644 index 0000000..39051f3 Binary files /dev/null and b/neoease/images/emotions/em02.png differ diff --git a/neoease/images/emotions/em03.png b/neoease/images/emotions/em03.png new file mode 100644 index 0000000..8cf9113 Binary files /dev/null and b/neoease/images/emotions/em03.png differ diff --git a/neoease/images/emotions/em04.png b/neoease/images/emotions/em04.png new file mode 100644 index 0000000..fb061a8 Binary files /dev/null and b/neoease/images/emotions/em04.png differ diff --git a/neoease/images/emotions/em05.png b/neoease/images/emotions/em05.png new file mode 100644 index 0000000..83d82b4 Binary files /dev/null and b/neoease/images/emotions/em05.png differ diff --git a/neoease/images/emotions/em06.png b/neoease/images/emotions/em06.png new file mode 100644 index 0000000..20d66f0 Binary files /dev/null and b/neoease/images/emotions/em06.png differ diff --git a/neoease/images/emotions/em07.png b/neoease/images/emotions/em07.png new file mode 100644 index 0000000..dcda19c Binary files /dev/null and b/neoease/images/emotions/em07.png differ diff --git a/neoease/images/emotions/em08.png b/neoease/images/emotions/em08.png new file mode 100644 index 0000000..676df26 Binary files /dev/null and b/neoease/images/emotions/em08.png differ diff --git a/neoease/images/emotions/em09.png b/neoease/images/emotions/em09.png new file mode 100644 index 0000000..94f4605 Binary files /dev/null and b/neoease/images/emotions/em09.png differ diff --git a/neoease/images/emotions/em10.png b/neoease/images/emotions/em10.png new file mode 100644 index 0000000..11f9f4c Binary files /dev/null and b/neoease/images/emotions/em10.png differ diff --git a/neoease/images/emotions/em11.png b/neoease/images/emotions/em11.png new file mode 100644 index 0000000..9979744 Binary files /dev/null and b/neoease/images/emotions/em11.png differ diff --git a/neoease/images/emotions/em12.png b/neoease/images/emotions/em12.png new file mode 100644 index 0000000..0c9d57f Binary files /dev/null and b/neoease/images/emotions/em12.png differ diff --git a/neoease/images/emotions/em13.png b/neoease/images/emotions/em13.png new file mode 100644 index 0000000..5279d49 Binary files /dev/null and b/neoease/images/emotions/em13.png differ diff --git a/neoease/images/emotions/em14.png b/neoease/images/emotions/em14.png new file mode 100644 index 0000000..7594861 Binary files /dev/null and b/neoease/images/emotions/em14.png differ diff --git a/neoease/images/emotions/emotions-black.png b/neoease/images/emotions/emotions-black.png new file mode 100644 index 0000000..3e67ef9 Binary files /dev/null and b/neoease/images/emotions/emotions-black.png differ diff --git a/neoease/images/icons.png b/neoease/images/icons.png new file mode 100644 index 0000000..b11023a Binary files /dev/null and b/neoease/images/icons.png differ diff --git a/neoease/index.ftl b/neoease/index.ftl new file mode 100644 index 0000000..5aa70bf --- /dev/null +++ b/neoease/index.ftl @@ -0,0 +1,24 @@ +<#include "macro-head.ftl"> + + + + <@head title="${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "header.ftl"> +
    +
    +
    + <#include "article-list.ftl"> +
    + <#include "side.ftl"> +
    +
    +
    + <#include "footer.ftl"> + + diff --git a/neoease/js/neoease.js b/neoease/js/neoease.js new file mode 100644 index 0000000..fcfc6f4 --- /dev/null +++ b/neoease/js/neoease.js @@ -0,0 +1,176 @@ +/* + * Copyright (c) 2009, 2010, 2011, 2012, 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. + */ + +/** + * @fileoverview neoease js. + * + * @author Liyuan Li + * @version 1.0.0.7, May 11, 2012 + */ +var goTop = function (acceleration) { + acceleration = acceleration || 0.1; + + var y = $(window).scrollTop(); + var speed = 1 + acceleration; + window.scrollTo(0, Math.floor(y / speed)); + + if (y > 0) { + var invokeFunction = "goTop(" + acceleration + ")"; + window.setTimeout(invokeFunction, 16); + } +}; + +var collapseArchive = function (it, year) { + var tag = true; + if (it.className === "collapse-ico") { + it.className = "expand-ico"; + tag = false; + } else { + it.className = "collapse-ico"; + } + + $("#archiveSide li").each(function () { + var $this = $(this); + // hide other year month archives + if ($this.data("year") === year) { + if (tag) { + $(this).show(); + } else { + $(this).hide(); + } + } + }); +}; + +var getArticle = function (it, id) { + var $abstract = $("#abstract" + id), + $content = $("#content" + id); + + if ($content.html() === "") { + $.ajax({ + url: "/get-article-content?id=" + id, + type: "GET", + dataType: "html", + beforeSend: function () { + $abstract.css("background", + "url(/skins/neoease/images/ajax-loader.gif) no-repeat scroll center center transparent"); + }, + success: function(result, textStatus){ + it.className = "collapse-ico"; + $content.html(result); + $abstract.hide().css("background", "none"); + $content.fadeIn("slow"); + } + }); + } else { + if (it.className === "expand-ico") { + $abstract.hide(); + $content.fadeIn(); + it.className = "collapse-ico"; + } else { + $content.hide(); + $abstract.fadeIn(); + it.className = "expand-ico"; + } + } + + return false; +}; + +var goTranslate = function () { + window.open("http://translate.google.com/translate?sl=auto&tl=auto&u=" + location.href); +}; + +(function () { + // go top icon show or hide + $(window).scroll(function () { + var y = $(window).scrollTop(); + + if (y > 182) { + var bodyH = $(window).height(); + var top = y + bodyH - 21; + if ($("body").height() - 58 <= y + bodyH) { + top = $(".footer").offset().top - 21; + } + $("#goTop").fadeIn("slow").css("top", top); + } else { + $("#goTop").hide(); + } + }); + + + // archive + var currentYear = (new Date()).getFullYear(), + year = currentYear; + $("#archiveSide li").each(function (i) { + var $this = $(this); + + // hide other year month archives + if ($this.data("year") !== currentYear) { + $(this).hide() + } + + // append year archive + if (year !== $this.data("year")) { + year = $this.data("year"); + $this.before("
  • " + year + " \u5e74
  • "); + } + }); + + // recent comment mouse click + $(".recent-comments .expand-ico").click(function () { + if (this.className === "expand-ico") { + $(this).parent().next().css({ + "height": "auto", + "white-space": "normal" + }); + this.className = "collapse-ico"; + } else { + $(this).parent().next().animate({ + "height": "18px" + }, function () { + $(this).css("white-space", "nowrap"); + }); + this.className = "expand-ico"; + } + }); + + // nav current + $(".nav ul a").each(function () { + var $this = $(this); + if ($this.attr("href") === location.pathname) { + $this.parent().addClass("current"); + } else if (/\/[0-9]+$/.test(location.pathname)) { + $(".nav ul li")[0].className = "current"; + } + }); + + Util.init(); + Util.replaceSideEm($(".recent-comments-content")); + Util.buildTags("tagsSide"); + + // recent comments + $(".recent-comments .recent-comments-main").each(function () { + if ($(this).find(".recent-comments-content>a").height() < 30) { + $(this).find(".expand-ico").remove(); + } else { + $(this).find(".expand-ico").parent().next().css({ + "white-space": "nowrap" + }); + } + }); +})(); \ No newline at end of file diff --git a/neoease/js/neoease.min.js b/neoease/js/neoease.min.js new file mode 100644 index 0000000..6dd1d89 --- /dev/null +++ b/neoease/js/neoease.min.js @@ -0,0 +1 @@ +var goTop=function(acceleration){acceleration=acceleration||0.1;var y=$(window).scrollTop();var speed=1+acceleration;window.scrollTo(0,Math.floor(y/speed));if(y>0){var invokeFunction="goTop("+acceleration+")";window.setTimeout(invokeFunction,16)}};var collapseArchive=function(it,year){var tag=true;if(it.className==="collapse-ico"){it.className="expand-ico";tag=false}else{it.className="collapse-ico"}$("#archiveSide li").each(function(){var $this=$(this);if($this.data("year")===year){if(tag){$(this).show()}else{$(this).hide()}}})};var getArticle=function(it,id){var $abstract=$("#abstract"+id),$content=$("#content"+id);if($content.html()===""){$.ajax({url:"/get-article-content?id="+id,type:"GET",dataType:"html",beforeSend:function(){$abstract.css("background","url(/skins/neoease/images/ajax-loader.gif) no-repeat scroll center center transparent")},success:function(result,textStatus){it.className="collapse-ico";$content.html(result);$abstract.hide().css("background","none");$content.fadeIn("slow")}})}else{if(it.className==="expand-ico"){$abstract.hide();$content.fadeIn();it.className="collapse-ico"}else{$content.hide();$abstract.fadeIn();it.className="expand-ico"}}return false};var goTranslate=function(){window.open("http://translate.google.com/translate?sl=auto&tl=auto&u="+location.href)};(function(){$(window).scroll(function(){var y=$(window).scrollTop();if(y>182){var bodyH=$(window).height();var top=y+bodyH-21;if($("body").height()-58<=y+bodyH){top=$(".footer").offset().top-21}$("#goTop").fadeIn("slow").css("top",top)}else{$("#goTop").hide()}});var currentYear=(new Date()).getFullYear(),year=currentYear;$("#archiveSide li").each(function(i){var $this=$(this);if($this.data("year")!==currentYear){$(this).hide()}if(year!==$this.data("year")){year=$this.data("year");$this.before("
  • "+year+" \u5e74
  • ")}});$(".recent-comments .expand-ico").click(function(){if(this.className==="expand-ico"){$(this).parent().next().css({"height":"auto","white-space":"normal"});this.className="collapse-ico"}else{$(this).parent().next().animate({"height":"18px"},function(){$(this).css("white-space","nowrap")});this.className="expand-ico"}});$(".nav ul a").each(function(){var $this=$(this);if($this.attr("href")===location.pathname){$this.parent().addClass("current")}else if(/\/[0-9]+$/.test(location.pathname)){$(".nav ul li")[0].className="current"}});Util.init();Util.replaceSideEm($(".recent-comments-content"));Util.buildTags("tagsSide");$(".recent-comments .recent-comments-main").each(function(){if($(this).find(".recent-comments-content>a").height()<30){$(this).find(".expand-ico").remove()}else{$(this).find(".expand-ico").parent().next().css({"white-space":"nowrap"})}})})(); \ No newline at end of file diff --git a/neoease/lang/lang_en_US.properties b/neoease/lang/lang_en_US.properties new file mode 100644 index 0000000..5e48e09 --- /dev/null +++ b/neoease/lang/lang_en_US.properties @@ -0,0 +1,96 @@ +# +# 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: Language configurations(en_US) for skin "neoease". +# Version: 1.0.0.2, Sep 30, 2011 +# Author: Liyuan Li +# +viewCount1Label=View Count: +articleCount1Label=Article Count: +commentCount1Label=Comment Count: +allTagsLabel=Tags +archiveLabel=Archive +yearLabel= +monthLabel= +noticeBoardLabel=Notice Board +recentArticlesLabel=Recent Articles +recentCommentsLabel=Recent Comments +postCommentsLabel=Post Comment +mostCommentArticlesLabel=Most Comment Articles +mostViewCountArticlesLabel=Most View Articles +popTagsLabel=Popular Tags +linkLabel=Friend Links +indexLabel=Home +sumLabel= +pageLabel=Page +clearAllCacheLabel=Clear all cache +clearCacheLabel=Clear cache +adminLabel=Admin +logoutLabel=Logout +loginLabel=Login +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 +commentLabel=Comment +viewLabel=View +tagsLabel=Tags +authorLabel=Author +dateLabel=Date +previousPageLabel=Previous Page +nextPagePabel=Next Page +firstPageLabel=First Page +lastPageLabel=Last Page +archive1Label=Archive: +author1Label=Author: +tag1Label=Tags: +sorryLabel=Sorry! +notFoundLabel=Not Found! +returnTo1Label=Return: +nextArticle1Label=Next: +previousArticle1Label=Previous: +updatedLabel=Updated! +topArticleLabel=Top! +replyLabel=Reply +postCommentsLabel=Post Comment +commentNameLabel=Name +commentEmailLabel=Email +commentURLLabel=URL +submmitCommentLabel=Commit Comment +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.... +relevantArticlesLabel=Relevant Articles +randomArticlesLabel=Random Articles +externalRelevantArticlesLabel=External Relevant Articles: +captchaErrorLabel=Captcha Error +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

    \ No newline at end of file diff --git a/neoease/lang/lang_zh_CN.properties b/neoease/lang/lang_zh_CN.properties new file mode 100644 index 0000000..c6c85ff --- /dev/null +++ b/neoease/lang/lang_zh_CN.properties @@ -0,0 +1,95 @@ +# +# 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: Language configurations(zh_CN) for skin "neoease". +# Version: 1.0.0.4, Sep 30, 2011 +# Author: Liyuan Li +# +viewCount1Label=\u6d4f\u89c8\u6b21\u6570\uff1a +articleCount1Label=\u6587\u7ae0\u603b\u6570\uff1a +commentCount1Label=\u8bc4\u8bba\u603b\u6570\uff1a +allTagsLabel=\u6807\u7b7e\u5899 +updatedLabel=\u6709\u66f4\u65b0\uff01 +topArticleLabel=\u7f6e\u9876\uff01 +archiveLabel=\u5b58\u6863 +yearLabel=\u5e74 +monthLabel=\u6708 +noticeBoardLabel=\u516c\u544a +recentArticlesLabel=\u6700\u65b0\u6587\u7ae0 +recentCommentsLabel=\u6700\u65b0\u8bc4\u8bba +mostCommentArticlesLabel=\u8bc4\u8bba\u6700\u591a\u7684\u6587\u7ae0 +mostViewCountArticlesLabel=\u8bbf\u95ee\u6700\u591a\u7684\u6587\u7ae0 +popTagsLabel=\u5206\u7c7b\u6807\u7b7e +linkLabel=\u53cb\u60c5\u94fe\u63a5 +indexLabel=\u9996\u9875 +sumLabel=\u5171 +pageLabel=\u9875 +clearAllCacheLabel=\u6e05\u9664\u6240\u6709\u9875\u9762\u7f13\u5b58 +clearCacheLabel=\u6e05\u9664\u672c\u9875\u7f13\u5b58 +adminLabel=\u7ba1\u7406 +logoutLabel=\u767b\u51fa +loginLabel=\u767b\u5f55 +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 +commentLabel=\u8bc4\u8bba +viewLabel=\u6d4f\u89c8 +tagsLabel=\u6807\u7b7e +authorLabel=\u4f5c\u8005 +dateLabel=\u65e5\u671f +previousPageLabel=\u4e0a\u4e00\u9875 +nextPagePabel=\u4e0b\u4e00\u9875 +firstPageLabel=\u7b2c\u4e00\u9875 +lastPageLabel=\u6700\u540e\u4e00\u9875 +archive1Label=\u5b58\u6863\uff1a +author1Label=\u4f5c\u8005\uff1a +tag1Label=\u6807\u7b7e\uff1a +sorryLabel=\u5bf9\u4e0d\u8d77\uff01 +notFoundLabel=\u627e\u4e0d\u5230\uff01 +returnTo1Label=\u8fd4\u56de\uff1a +nextArticle1Label=\u65b0\u4e00\u7bc7\uff1a +previousArticle1Label=\u65e7\u4e00\u7bc7\uff1a +replyLabel=\u56de\u590d +postCommentsLabel=\u53d1\u8868\u8bc4\u8bba +commentNameLabel=\u59d3\u540d +commentEmailLabel=\u90ae\u7bb1 +commentURLLabel=URL +submmitCommentLabel=\u63d0\u4ea4\u8bc4\u8bba +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.... +relevantArticlesLabel=\u76f8\u5173\u9605\u8bfb +randomArticlesLabel=\u968f\u673a\u9605\u8bfb +externalRelevantArticlesLabel=\u7ad9\u5916\u76f8\u5173\u9605\u8bfb +captchaErrorLabel=\u9a8c\u8bc1\u7801\u9519\u8bef +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 diff --git a/neoease/macro-comments.ftl b/neoease/macro-comments.ftl new file mode 100644 index 0000000..a708b92 --- /dev/null +++ b/neoease/macro-comments.ftl @@ -0,0 +1,168 @@ +<#macro comments commentList article> + +
    + <#list commentList as comment> +
    + ${comment.commentName} +
    +
    + <#if "http://" == comment.commentURL> + ${comment.commentName} + <#else> + ${comment.commentName} + + <#if comment.isReply> @ + ${comment.commentOriginalCommentName} + +
    + <#if article.commentable> +
    + ${replyLabel} +  |  + ${comment.commentDate?string("yyyy-MM-dd HH:mm:ss")} +
    + + +
    ${comment.commentContent}
    +
    + +
    + +
    +<#if article.commentable> +
    +

    ${postCommentsLabel}

    + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + +
    + + +
    + + +
    + + + + + + + + + + + + + + + +
    + +
    + + validate + + +
    + +
    +
    + + + +<#macro comment_script oId> + + + \ No newline at end of file diff --git a/neoease/macro-head.ftl b/neoease/macro-head.ftl new file mode 100644 index 0000000..6c86566 --- /dev/null +++ b/neoease/macro-head.ftl @@ -0,0 +1,14 @@ +<#macro head title> + +${title} +<#nested> + + + + + + + + +${htmlHead} + \ No newline at end of file diff --git a/neoease/page.ftl b/neoease/page.ftl new file mode 100644 index 0000000..c90865b --- /dev/null +++ b/neoease/page.ftl @@ -0,0 +1,29 @@ +<#include "macro-head.ftl"> +<#include "macro-comments.ftl"> + + + + <@head title="${page.pageTitle} - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "header.ftl"> +
    +
    +
    +
    + ${page.pageContent} +
    + <@comments commentList=pageComments article=page> +
    + <#include "side.ftl"> +
    +
    +
    + <#include "footer.ftl"> + <@comment_script oId=page.oId> + + diff --git a/neoease/preview.png b/neoease/preview.png new file mode 100644 index 0000000..1779495 Binary files /dev/null and b/neoease/preview.png differ diff --git a/neoease/side.ftl b/neoease/side.ftl new file mode 100644 index 0000000..2fda5dc --- /dev/null +++ b/neoease/side.ftl @@ -0,0 +1,123 @@ +
    + <#if "" != noticeBoard> +
    +

    ${noticeBoardLabel}

    +
    ${noticeBoard}
    +
    + + <#if 0 != recentComments?size> +
    +

    ${recentCommentsLabel}

    + +
    + + <#if 0 != mostCommentArticles?size> +
    +

    ${mostCommentArticlesLabel}

    + +
    + + <#if 0 != mostViewCountArticles?size> +
    +

    ${mostViewCountArticlesLabel}

    + +
    + + <#if 0 != mostUsedTags?size> +
    +

    ${popTagsLabel}

    + +
    +
    + + <#if 0 != links?size> +
    +

    ${linkLabel}

    + +
    + + <#if 0 != archiveDates?size> +
    +

    ${archiveLabel}

    + +
    + +
    diff --git a/neoease/skin.properties b/neoease/skin.properties new file mode 100644 index 0000000..e9f21e8 --- /dev/null +++ b/neoease/skin.properties @@ -0,0 +1,26 @@ +# +# 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: NeoEase skin. +# Version: 1.0.0.5, May 7, 2012 +# Author: Liyuan Li +# + +name=NeoEase +version=1.0.3 +forSolo=0.4.5 +memo=http://www.neoease.com/ diff --git a/neoease/tag-articles.ftl b/neoease/tag-articles.ftl new file mode 100644 index 0000000..aee174a --- /dev/null +++ b/neoease/tag-articles.ftl @@ -0,0 +1,31 @@ +<#include "macro-head.ftl"> + + + + <@head title="${tag.tagTitle} - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "header.ftl"> +
    +
    + + <#include "side.ftl"> +
    +
    +
    + <#include "footer.ftl"> + + diff --git a/neoease/tags.ftl b/neoease/tags.ftl new file mode 100644 index 0000000..a12de0e --- /dev/null +++ b/neoease/tags.ftl @@ -0,0 +1,37 @@ +<#include "macro-head.ftl"> + + + + <@head title="${allTagsLabel} - ${blogTitle}"> + + + + + + ${topBarReplacement} + <#include "header.ftl"> +
    +
    +
    + +
    + <#include "side.ftl"> +
    +
    +
    + <#include "footer.ftl"> + + + diff --git a/owmx-3.0/archive-articles.ftl b/owmx-3.0/archive-articles.ftl new file mode 100644 index 0000000..ee3b449 --- /dev/null +++ b/owmx-3.0/archive-articles.ftl @@ -0,0 +1,32 @@ +<#include "macro-head.ftl"> + + + + <@head title="${archiveDate.archiveDateMonth} ${archiveDate.archiveDateYear} (${archiveDate.archiveDatePublishedArticleCount}) - ${blogTitle}"> + + + + + + ${topBarReplacement} +
    + <#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 "side.ftl"> +
    +
    + <#include "footer.ftl"> +
    + + diff --git a/owmx-3.0/article-list.ftl b/owmx-3.0/article-list.ftl new file mode 100644 index 0000000..c048946 --- /dev/null +++ b/owmx-3.0/article-list.ftl @@ -0,0 +1,67 @@ +<#list articles as article> +

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

    +
    ${article.articleAbstract}
    +
    +

    + ${author1Label}${article.authorName} | + <#if article.hasUpdated> + ${updateDateLabel}: + ${article.articleUpdateDate?string("yyyy-MM-dd HH:mm")} + <#else> + ${createDateLabel}: + ${article.articleCreateDate?string("yyyy-MM-dd HH:mm")} + | ${viewCount1Label} + + ${article.articleViewCount} + | ${commentCount1Label} + + + ${article.articleCommentCount} + +

    +

    + ${tags1Label} + <#list article.articleTags?split(",") as articleTag> + + <#if articleTag_has_next>, + + +

    +
    + +<#if 0 != paginationPageCount> +
    + <#if 1 != paginationPageNums?first> + ${firstPageLabel} + ${previousPageLabel} + + <#list paginationPageNums as paginationPageNum> + <#if paginationPageNum == paginationCurrentPageNum> + ${paginationPageNum} + <#else> + ${paginationPageNum} + + + <#if paginationPageNums?last != paginationPageCount> + ${nextPagePabel} + ${lastPageLabel} + +   ${sumLabel} ${paginationPageCount} ${pageLabel} +
    + \ No newline at end of file diff --git a/owmx-3.0/article.ftl b/owmx-3.0/article.ftl new file mode 100644 index 0000000..63fde48 --- /dev/null +++ b/owmx-3.0/article.ftl @@ -0,0 +1,100 @@ +<#include "macro-head.ftl"> +<#include "macro-comments.ftl"> + + + + <@head title="${article.articleTitle} - ${blogTitle}"> + + + + + + ${topBarReplacement} +
    + <#include "header.ftl"> +
    +
    +

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

    +
    +

    + ${author1Label}${article.authorName} | + <#if article.hasUpdated> + ${updateDateLabel}:${article.articleUpdateDate?string("yyyy-MM-dd HH:mm:ss")} + <#else> + ${createDateLabel}:${article.articleCreateDate?string("yyyy-MM-dd HH:mm:ss")} + + ${viewCount1Label} + + ${article.articleViewCount} + | ${commentCount1Label} + + + ${article.articleCommentCount} + +

    +

    + ${tags1Label} + <#list article.articleTags?split(",") as articleTag> + + <#if articleTag_has_next>, + + +

    +
    +
    + ${article.articleContent} + <#if "" != article.articleSign.signHTML?trim> +
    + ${article.articleSign.signHTML} +
    + +
    +
    + <#if nextArticlePermalink??> +
    + + <#if previousArticlePermalink??> + + +
    +
    +
    +
      +
        + <@comments commentList=articleComments article=article> +
        + <#include "side.ftl"> +
        +
        + <#include "footer.ftl"> +
        + <@comment_script oId=article.oId> + page.tips.externalRelevantArticlesDisplayCount = "${externalRelevantArticlesDisplayCount}"; + <#if 0 != randomArticlesDisplayCount> + page.loadRandomArticles(); + + <#if 0 != relevantArticlesDisplayCount> + page.loadRelevantArticles('${article.oId}', '

        ${relevantArticles1Label}

        '); + + <#if 0 != externalRelevantArticlesDisplayCount> + page.loadExternalRelevantArticles("<#list article.articleTags?split(",") as articleTag>${articleTag}<#if articleTag_has_next>,"); + + + + diff --git a/owmx-3.0/author-articles.ftl b/owmx-3.0/author-articles.ftl new file mode 100644 index 0000000..e71e6f3 --- /dev/null +++ b/owmx-3.0/author-articles.ftl @@ -0,0 +1,28 @@ +<#include "macro-head.ftl"> + + + + <@head title="${authorName} - ${blogTitle}"> + + + + + + ${topBarReplacement} +
        + <#include "header.ftl"> +
        +
        + ${author1Label} +
        + ${authorName} +
        + <#include "article-list.ftl"> +
        + <#include "side.ftl"> +
        +
        + <#include "footer.ftl"> +
        + + diff --git a/owmx-3.0/css/owmx-3.0.css b/owmx-3.0/css/owmx-3.0.css new file mode 100644 index 0000000..e31230b --- /dev/null +++ b/owmx-3.0/css/owmx-3.0.css @@ -0,0 +1,530 @@ +@charset "utf-8"; +/*================================================== +Template: OWMX-3 +Resource: http://www.owmx.com/ +Version: 1.0 +Date: 2010-09-13 +Editor: Jonas Jacek +License: CC Attribution-Share Alike 3.0 Unported +Update: Dongxu Wang 2011-02-24 + @ http://lightdian.b3log.org/ +==================================================*/ +/* + * skin owmx-3.0 style + * @author Liyuan Li + * @version 1.0.0.6, May 11, 2012 +*/ +/* Reset */ +header, footer, article, nav, section, aside, time, hgroup { + display : block; +} +html, body, header, footer, article, nav, section, aside, time, h1, h2, h3, p, a, ul, li, dl, dd, dt, table, thead, tfoot, tbody, th, tr, td { + border : 0; + font : 12px/22px Verdana, sans-serif; + margin : 0; + outline : 0; + padding : 0; +} + +/* BASICS */ +BODY { + background : #DDD; + margin : 0px 0 0 0; + color : #444; +} + +A, A:LINK, A:ACTIVE, A:VISITED{ + color : #016f93; + text-decoration : none; +} +A:HOVER { + color : #DB0202; +} +a.selected { + font-weight: bold; + color: #000000; +} + +H1, H3, H4, H5, H6 { + background : url(../images/ai4.png) no-repeat 0 7px; + border-bottom : 1px solid #CCC; + color : #666; + font-weight : bold; + margin : 0 0 10px; + padding : 0 0 0 25px; +} +H1 { + background : url(../images/ai4.png) no-repeat 0 6px; + font-size : 15px; +} +H1 a{ + font-weight : bold; + font-size : 15px; +} +H2 { + font-size : 14px; + margin : 0 0 20px 0; +} +H3 { + background : url(../images/ai5.png) no-repeat 0 7px; +} +H3, H4, H5, H6 { + font-size : 13px; +} + +h4 { + background-position: 0 5px; +} + +sup { + color: #444; + top : -4px; +} + +/* Header */ +header { + border-radius : 4px; + background : #0098CC url(../images/hd.jpg) no-repeat top left; + height : 200px; + margin : 0 0 10px 0; + padding : 10px 10px; + position : relative; +} +header a:link, header a:active, header a:visited{ + font-weight : bold; + color : #FFF; + font-size : 16px; +} +header a:hover { + color : #FFF; +} +header p { + border-radius : 4px; + background : #FFF; + bottom : 20px; + color : #000; + font-weight : bold; + opacity : 0.5; + padding : 10px; + position : absolute; + right : 20px; + width : 400px; +} + +/* Article */ +article { + border-radius : 4px; + background : #FFF; + border: 1px solid #CCC; + float : right; + height : auto; + padding : 20px; + width : 550px; +} +article h1{ + color : #666; + font-weight : bold; + font-size : 15px; +} +/* Highlighted Paragraphs */ +.highlight-1, .highlight-2, .highlight-3 { + -moz-border-radius : 4px; + -webkit-border-radius : 4px; + padding : 5px 10px; +} +.highlight-1 { + background : #FFCCCC; + border : 1px dotted #FF9966; +} +.highlight-2 { + background : #FFFF99; + border : 1px dotted #FFCC33; +} +.highlight-3 { + background : #CCFF99; + border : 1px dotted #CCCC33; +} + +/* Citations & Quotes */ +cite { + border-left: 2px solid #0098CC; + color : #666; + font-size : 12px; + font-style : normal; + font-weight : bold; + margin : 0; + padding : 5px 10px; +} + +blockquote { + border-left: 2px solid #0098CC; + color : #666; + margin : 0 0 20px 0; + padding : 5px 10px; +} + +/* Pre & Code */ +pre { + color : #333; + font-size : 10px; + line-height : 15px; /*--Height of each line of code--*/ + overflow : hidden; /*--If the Code exceeds the width, put "auto" and scrolling is available--*/ + overflow-Y : hidden; /*--Hides vertical scroll created by IE--*/ +} +pre code { + background : #EEE; + border-left : 2px solid #0098CC; + margin : 0 0 10px 0; + padding : 5px; + display : block; +} + +/* Calendar */ +dl.vevent { + margin : -20px 0 20px 0; + padding : 0; +} +.vevent dt { + font-size : 10px; + position : relative; + left : 0; + top : 22px; + font-weight : bold; +} +.vevent dd +{ + border-left : 2px solid #0098CC; + font-size : 11px; + margin : 0 0 0 80px; + padding : 0 0 0 10px; +} +dd.summary { + font-weight : bold; +} +.vevent a { + font-size : 11px; +} + +/* Forms */ +article form { + border-radius: 4px; + background : #DDD; + margin : 0 0 20px; + padding : 10px; +} +article label { + color : #666; + display : block; + font-size : 10px; + font-weight : bold; + margin : 0 0 0 2px; +} +article input, article textarea { + border-radius : 4px; + border : 1px solid #CCC; + font-size : 11px; + padding : 4px 5px; + width : 458px; +} + +/* Lists */ +article ul, aside ul { + list-style : none; + margin : 0 0 20px 0; +} +article ul { + margin : 0 0 20px 23px; +} +article ul li { + background : url(../images/ai2.png) no-repeat 0 8px; + padding : 0 0 0 17px; +} + +/* Sidebar */ +aside { + background : #EEE; + float : left; + margin : 0 0 20px 0; + width : 200px; + white-space:normal; +} +aside ul.aside-comments img{ + border-radius : 4px; + width:32px;height:32px; + border:1px solid #999999; + padding:1px; + margin-top:5px; + margin-right:5px; +} +aside ul.aside-comments a{ + font-weight:bold; +} +aside ul.aside-comments .side-comment{ + color: #555555; + font-weight: normal; + overflow: hidden; + white-space: nowrap; + width: 158px; + height: 18px; +} +aside ul.aside-comments div.left>div>div { + display: none; +} +aside ul.aside-comments .side-comment img{ + border:0px;height:16px;width:16px;padding:0px;margin-right: 0px; + margin-top: 0; +} +aside ul.aside-comments li { + padding:2px 0; +} +aside ul.aside-comments li div{ + width:158px; +} +aside ul.aside-comments li div.left div { + height: 18px; + line-height: 18px; + overflow: hidden; + -o-text-overflow: ellipsis; + text-overflow: ellipsis; +} +aside ul.navi-tags li{padding-left:0px;background-image:none;} +aside ul.navi-tags li img{ margin-bottom:3px;padding-right:6px;height:16px;width:16px;} + +#mostViewCountArticles li, #mostCommentArticles li { + overflow: hidden; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; +} + +#mostViewCountArticles a, #mostCommentArticles a { + white-space: nowrap; +} +/* Search Box */ +.s { + border-radius : 4px; + margin : 0 0 20px 0; + padding : 10px; + width : 179px; +} +.s input { + border-radius: 4px; + border : 1px solid #AAA; + color : #999; + font-size : 11px; + padding : 4px 5px; + width : 168px; +} + +/* Navigation & Menu */ +nav ul { + list-style : none; +} +nav li { + background : url(../images/ai1.png) no-repeat 0 8px; + padding : 0 0 0 15px; +} +nav li ul, aside li ul li ul { + margin : 0; +} +nav li li a { + font-size : 11px; +} +nav li li li a { + font-size : 10px; +} +nav li li li, aside li.active li li { + background : url(../images/ai8.png) no-repeat 0 10px; +} +nav li.active, aside li.active li { + background : url(../images/ai2.png) no-repeat 0 8px; +} + +/* Gallery */ +.gallery { + list-style : none; + margin : 0 0 10px; +} +.gallery li { + display: inline; + margin : 0 15px 0 0; +} +.gallery a img { + border : 1px solid #999; + height : 50px; + opacity: 0.8; + padding : 1px; + width : 50px; +} +.gallery li:last-child { + margin : 0 0 10px 0; +} +.gallery a img:hover{ + opacity: 1; +} + +/* Ad Space */ +.adspace { + border-radius : 4px; + box-shadow : 0 2px 2px rgba(0,0,0,0.3); + background : #EEE; + height : 100%; + margin : 0 0 20px 0; + padding : 5px 10px; + text-align : center; + width : 178px; +} +.adspace a img { + border : none; +} + +/* Tag Cloud */ +#tagcloud { + overflow : hidden; + width : 200px; +} +#tagcloud li { + display : inline; + margin : 0 10px 0 0; +} +.tagcloudsize-1 a { + font-size : 14px; +} +.tagcloudsize-2 a { + font-size : 16px; +} +.tagcloudsize-3 a { + font-size : 18px; +} + +/* Footer */ +footer { + border-top : 1px dotted #B5B3A9; + clear : both; + margin : 20px 0; +} +footer a, footer p { + color : #666; + display : inline; + font-size : 12px; +} +footer div{ + background:url("../images/icons.gif") no-repeat scroll 0 -304px transparent; + color:#2A2A2A; + cursor:pointer; + line-height:18px; + margin:5px 17px 0 0; + padding-left:16px; + width:22px; + float : right; + white-space :nowrap; +} +footer span{ + margin:0px; +} +footer a span{ + margin:0px -2px; +} +footer img{ + height : 28px; +} + + +/* Comments */ +.comments{position:relative;background:none repeat scroll 0 0 #FCFCFC;border-bottom:1px solid #CCCCCC;border-top:1px solid #CCCCCC;margin:15px -15px;padding:0 15px 15px;} +.comment-title{background-color:#E3E9FF;border-top:1px solid #3366CC;padding:3px 12px 3px 12px;position:relative;} +.comment-body-ref { + border-radius: 6px; + background-color: #FFFFFF; + border: 1px solid #CCCCCC; + opacity: 0.9; + padding: 6px; + position: absolute; + width: 387px; + left: 174px; +} + +.comment-body-ref .comment-author { + width: 67px; +} + +.comment-body-ref .comment-info { + width: 300px; + border-width: 0px; +} +.comment-body{margin-top:15px;} +.comment-author{float:left;text-align:center;width:81px;} +.comment-author div{margin-top:10px;padding-right:14px;background:url("../images/commentpoint.png") no-repeat scroll 100% 33% transparent;} +.comment-author img{border-radius : 4px;border:1px solid #999999;padding:1px;width:32px;height:32px;} +.comment-author a{white-space: nowrap;margin-right:14px;font-weight:bold;} +.comment-info{border-radius : 6px;width : 440px;padding : 5px 10px;background : #EDEFF0;border : 1px dotted #EDEFF0;} +.comment-content{word-wrap:break-word;overflow: hidden;background:url("../images/comment.gif") no-repeat scroll 100% 100% transparent;line-height:145%;margin:0 -15px;padding:9px 15px 10px;font-size:12px;} +.comment-form img{cursor:pointer;} +.comment-form input, .comment-form textarea{height: 16px;outline:none;font-family:Helvetica,Arial,sans-serif;color:#555555;background:url("../images/textfield.gif") repeat-x scroll 50% 0 #FFFFFF;border:1px solid #A6A6A6;padding:2px 1px;width:200px;} +.comment-form textarea{width:541px;font-size: 12px;height: auto;} +.comment-form button{background:none repeat scroll 0 0 #B4D666;border-color:#B4D666 #81B840 #81B840 #B4D666;border-style:solid;border-width:1px;color:#2970A6;font-size:12px;padding:0px 6px;height:22px;line-height:22px;border-radius:0px;} +.comment-form button:hover{background:none repeat scroll 0 0 #98C64C;border-color:#76B33A #98C64C #98C64C #76B33A;color:#074A7E;} +.error-msg{color:#3366CC;} +/* Wrappers */ +#a, #b { + margin : 0 auto; + position : relative; +} +#a { + border-radius : 4px; + box-shadow : 0 2px 2px rgba(0,0,0,0.3); + background : #EEE; + margin : 15px auto; + padding : 10px 10px 0 10px; + width : 800px; +} +#b { + overflow : hidden; +} + +/* Shadow-Boxes*/ +#c, .meta, .s, nav ul { + border-radius : 4px; + box-shadow : 0 2px 2px rgba(0,0,0,0.4); + background : #CCC; +} +#c { + margin : 0 0 20px 0; + padding : 5px 10px; + width : 178px; +} +#c p, #c a { + font-size : 11px; + line-height : 15px; +} +#c p { + margin : 0 0 10px 0; +} +#c img { + border-radius : 4px; + float : left; + margin : 4px 10px 2px 0; +} +.meta { + margin: 10px 0 30px; + padding: 2px 5px; +} +.meta p, .meta a { + font-size : 10px; + margin : 0; +} +nav ul { + padding : 10px; +} +nav ul ul { + border-radius : none; + box-shadow : none; +} + +.single_page { + border-radius : 4px; + box-shadow : 0 2px 2px rgba(0,0,0,0.2); + background : #F2F7F8; + padding : 10px; + margin-bottom : 25px; + width : 531px; +} \ No newline at end of file diff --git a/owmx-3.0/footer.ftl b/owmx-3.0/footer.ftl new file mode 100644 index 0000000..37bebbb --- /dev/null +++ b/owmx-3.0/footer.ftl @@ -0,0 +1,48 @@ + + + + +${plugins} diff --git a/owmx-3.0/header.ftl b/owmx-3.0/header.ftl new file mode 100644 index 0000000..d26c745 --- /dev/null +++ b/owmx-3.0/header.ftl @@ -0,0 +1,27 @@ +
        + ${blogTitle} +

        ${blogSubtitle}

        +
        \ No newline at end of file diff --git a/owmx-3.0/images/ai1.png b/owmx-3.0/images/ai1.png new file mode 100644 index 0000000..ea08f61 Binary files /dev/null and b/owmx-3.0/images/ai1.png differ diff --git a/owmx-3.0/images/ai2.png b/owmx-3.0/images/ai2.png new file mode 100644 index 0000000..8ce1f91 Binary files /dev/null and b/owmx-3.0/images/ai2.png differ diff --git a/owmx-3.0/images/ai3.png b/owmx-3.0/images/ai3.png new file mode 100644 index 0000000..d6ef43d Binary files /dev/null and b/owmx-3.0/images/ai3.png differ diff --git a/owmx-3.0/images/ai4.png b/owmx-3.0/images/ai4.png new file mode 100644 index 0000000..f4d6948 Binary files /dev/null and b/owmx-3.0/images/ai4.png differ diff --git a/owmx-3.0/images/ai5.png b/owmx-3.0/images/ai5.png new file mode 100644 index 0000000..a59b68c Binary files /dev/null and b/owmx-3.0/images/ai5.png differ diff --git a/owmx-3.0/images/ai6.png b/owmx-3.0/images/ai6.png new file mode 100644 index 0000000..4a6b487 Binary files /dev/null and b/owmx-3.0/images/ai6.png differ diff --git a/owmx-3.0/images/ai7.png b/owmx-3.0/images/ai7.png new file mode 100644 index 0000000..2605b61 Binary files /dev/null and b/owmx-3.0/images/ai7.png differ diff --git a/owmx-3.0/images/ai8.png b/owmx-3.0/images/ai8.png new file mode 100644 index 0000000..ad32853 Binary files /dev/null and b/owmx-3.0/images/ai8.png differ diff --git a/owmx-3.0/images/comment.gif b/owmx-3.0/images/comment.gif new file mode 100644 index 0000000..5c6300e Binary files /dev/null and b/owmx-3.0/images/comment.gif differ diff --git a/owmx-3.0/images/commentpoint.png b/owmx-3.0/images/commentpoint.png new file mode 100644 index 0000000..632318f Binary files /dev/null and b/owmx-3.0/images/commentpoint.png differ diff --git a/owmx-3.0/images/emotions/em00.png b/owmx-3.0/images/emotions/em00.png new file mode 100644 index 0000000..2f631e8 Binary files /dev/null and b/owmx-3.0/images/emotions/em00.png differ diff --git a/owmx-3.0/images/emotions/em01.png b/owmx-3.0/images/emotions/em01.png new file mode 100644 index 0000000..a5e3586 Binary files /dev/null and b/owmx-3.0/images/emotions/em01.png differ diff --git a/owmx-3.0/images/emotions/em02.png b/owmx-3.0/images/emotions/em02.png new file mode 100644 index 0000000..b4839d2 Binary files /dev/null and b/owmx-3.0/images/emotions/em02.png differ diff --git a/owmx-3.0/images/emotions/em03.png b/owmx-3.0/images/emotions/em03.png new file mode 100644 index 0000000..141a985 Binary files /dev/null and b/owmx-3.0/images/emotions/em03.png differ diff --git a/owmx-3.0/images/emotions/em04.png b/owmx-3.0/images/emotions/em04.png new file mode 100644 index 0000000..b188dc9 Binary files /dev/null and b/owmx-3.0/images/emotions/em04.png differ diff --git a/owmx-3.0/images/emotions/em05.png b/owmx-3.0/images/emotions/em05.png new file mode 100644 index 0000000..763c208 Binary files /dev/null and b/owmx-3.0/images/emotions/em05.png differ diff --git a/owmx-3.0/images/emotions/em06.png b/owmx-3.0/images/emotions/em06.png new file mode 100644 index 0000000..8d20c22 Binary files /dev/null and b/owmx-3.0/images/emotions/em06.png differ diff --git a/owmx-3.0/images/emotions/em07.png b/owmx-3.0/images/emotions/em07.png new file mode 100644 index 0000000..5fc5af9 Binary files /dev/null and b/owmx-3.0/images/emotions/em07.png differ diff --git a/owmx-3.0/images/emotions/em08.png b/owmx-3.0/images/emotions/em08.png new file mode 100644 index 0000000..524e719 Binary files /dev/null and b/owmx-3.0/images/emotions/em08.png differ diff --git a/owmx-3.0/images/emotions/em09.png b/owmx-3.0/images/emotions/em09.png new file mode 100644 index 0000000..bcb4041 Binary files /dev/null and b/owmx-3.0/images/emotions/em09.png differ diff --git a/owmx-3.0/images/emotions/em10.png b/owmx-3.0/images/emotions/em10.png new file mode 100644 index 0000000..5ed248a Binary files /dev/null and b/owmx-3.0/images/emotions/em10.png differ diff --git a/owmx-3.0/images/emotions/em11.png b/owmx-3.0/images/emotions/em11.png new file mode 100644 index 0000000..9d2b9c3 Binary files /dev/null and b/owmx-3.0/images/emotions/em11.png differ diff --git a/owmx-3.0/images/emotions/em12.png b/owmx-3.0/images/emotions/em12.png new file mode 100644 index 0000000..68568a5 Binary files /dev/null and b/owmx-3.0/images/emotions/em12.png differ diff --git a/owmx-3.0/images/emotions/em13.png b/owmx-3.0/images/emotions/em13.png new file mode 100644 index 0000000..5ec5408 Binary files /dev/null and b/owmx-3.0/images/emotions/em13.png differ diff --git a/owmx-3.0/images/emotions/em14.png b/owmx-3.0/images/emotions/em14.png new file mode 100644 index 0000000..f3feb4b Binary files /dev/null and b/owmx-3.0/images/emotions/em14.png differ diff --git a/owmx-3.0/images/emotions/emotions-classic.png b/owmx-3.0/images/emotions/emotions-classic.png new file mode 100644 index 0000000..4be304f Binary files /dev/null and b/owmx-3.0/images/emotions/emotions-classic.png differ diff --git a/owmx-3.0/images/hd.jpg b/owmx-3.0/images/hd.jpg new file mode 100644 index 0000000..f5c3326 Binary files /dev/null and b/owmx-3.0/images/hd.jpg differ diff --git a/owmx-3.0/images/icons.gif b/owmx-3.0/images/icons.gif new file mode 100644 index 0000000..cf5057b Binary files /dev/null and b/owmx-3.0/images/icons.gif differ diff --git a/owmx-3.0/images/textfield.gif b/owmx-3.0/images/textfield.gif new file mode 100644 index 0000000..cdb0b3b Binary files /dev/null and b/owmx-3.0/images/textfield.gif differ diff --git a/owmx-3.0/index.ftl b/owmx-3.0/index.ftl new file mode 100644 index 0000000..6cde590 --- /dev/null +++ b/owmx-3.0/index.ftl @@ -0,0 +1,24 @@ +<#include "macro-head.ftl"> + + + + <@head title="${blogTitle}"> + + + + + + ${topBarReplacement} +
        + <#include "header.ftl"> +
        +
        + <#include "article-list.ftl"> +
        + <#include "side.ftl"> +
        +
        + <#include "footer.ftl"> +
        + + diff --git a/owmx-3.0/lang/lang_en_US.properties b/owmx-3.0/lang/lang_en_US.properties new file mode 100644 index 0000000..2860965 --- /dev/null +++ b/owmx-3.0/lang/lang_en_US.properties @@ -0,0 +1,287 @@ +# +# 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: 2.0.5.7, Sep 5, 2011 +# Author: Liang Ding +# + +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= +blogSyncLabel=Blog Sync +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 +blogSyncMgmtLabel=Blog Sync Management +syncMgmtLabel=Sync manage Blog +userName1Label=Username: +userPassword1Label=Password: +syncPostLabel=Sync Post +syncUpdateLabel=Sync Update +syncRemoveLabel=Sync Remove +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 +clearAllCacheLabel=Clear all cache +clearCacheLabel=Clear cache +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 +welcomeToSoloLabel=Welcome to B3log Solo! +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 +updatePreferenceFailLabel=Update Fail, please check Blog Host configuration! +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. +exceedMaxUploadSizeLabel=Size exceed 1M :-( +uploadFailLabel=Upload Fail! +fileEmptyLabel=File is empty +duplicatedPermalinkLabel=Duplicated permalink! +invalidPermalinkFormatLabel=Invalid permalink format! +duplicatedEmailLabel=Duplicated email! +canntBeLocalhostOnProductionLabel=Can not set host as localhost on production! +refreshAndRetryLabel=Please refresh and try again! +noDataLable=NO Data +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/owmx-3.0/lang/lang_zh_CN.properties b/owmx-3.0/lang/lang_zh_CN.properties new file mode 100644 index 0000000..0cedee0 --- /dev/null +++ b/owmx-3.0/lang/lang_zh_CN.properties @@ -0,0 +1,287 @@ +# +# 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: 2.0.6.2, Sep 5, 2011 +# Author: Liang Ding +# + +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 +clearAllCacheLabel=\u6e05\u9664\u6240\u6709\u9875\u9762\u7f13\u5b58 +clearCacheLabel=\u6e05\u9664\u672c\u9875\u7f13\u5b58 +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 +welcomeToSoloLabel=\u6b22\u8fce\u4f7f\u7528 B3log Solo\uff01 +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 +updatePreferenceFailLabel=\u66f4\u65b0\u5931\u8d25\uff0c\u8bf7\u4ed4\u7ec6\u68c0\u67e5\u201c\u535a\u5ba2\u5730\u5740\u201d\u7684\u914d\u7f6e\u662f\u5426\u6b63\u786e +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 +exceedMaxUploadSizeLabel=\u76ee\u524d\u53ea\u80fd\u4e0a\u4f20\u5c0f\u4e8e 1M \u7684\u6587\u4ef6 :-( +uploadFailLabel=\u4e0a\u4f20\u5931\u8d25\uff01 +fileEmptyLabel=\u6587\u4ef6\u4e3a\u7a7a\uff01 +duplicatedPermalinkLabel=\u94fe\u63a5\u91cd\u590d\uff01 +invalidPermalinkFormatLabel=\u975e\u6cd5\u7684\u94fe\u63a5\u683c\u5f0f\uff01 +duplicatedEmailLabel=\u90ae\u4ef6\u5730\u5740\u91cd\u590d\uff01 +canntBeLocalhostOnProductionLabel=GAE \u73af\u5883\u4e0a\u8bf7\u52ff\u6307\u5b9a\u535a\u5ba2\u5730\u5740\u4e3a localhost\uff01 +refreshAndRetryLabel=\u8bf7\u5237\u65b0\u91cd\u8bd5\uff01 +noDataLable=\u65e0\u6570\u636e +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/owmx-3.0/macro-comments.ftl b/owmx-3.0/macro-comments.ftl new file mode 100644 index 0000000..b406e19 --- /dev/null +++ b/owmx-3.0/macro-comments.ftl @@ -0,0 +1,172 @@ +<#macro comments commentList article> +
        + <#list commentList as comment> +
        +
        +
        +
        + ${comment.commentName} +
        + <#if "http://" == comment.commentURL> + ${comment.commentName} + <#else> + ${comment.commentName} + +
        +
        +
        + ${comment.commentDate?string("yyyy-MM-dd HH:mm:ss")} + <#if comment.isReply> + @ + ${comment.commentOriginalCommentName} + +
        + <#if article.commentable> + + +
        +
        +
        + ${comment.commentContent} +
        +
        +
        +
        +
        + +
        +<#if article.commentable> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
        + + + ${commentNameLabel} +
        + + + ${commentEmailLabel} +
        + + + ${commentURLLabel} +
        + + + + + + + + + + + + + + + +
        + +
        + + + validate + + +
        + +
        + + + +<#macro comment_script oId> + + + \ No newline at end of file diff --git a/owmx-3.0/macro-head.ftl b/owmx-3.0/macro-head.ftl new file mode 100644 index 0000000..1594659 --- /dev/null +++ b/owmx-3.0/macro-head.ftl @@ -0,0 +1,27 @@ +<#macro head title> + +${title} +<#nested> + + + + + + + + + + +${htmlHead} + \ No newline at end of file diff --git a/owmx-3.0/page.ftl b/owmx-3.0/page.ftl new file mode 100644 index 0000000..14d0b5f --- /dev/null +++ b/owmx-3.0/page.ftl @@ -0,0 +1,29 @@ +<#include "macro-head.ftl"> +<#include "macro-comments.ftl"> + + + + <@head title="${page.pageTitle} - ${blogTitle}"> + + + + + + ${topBarReplacement} +
        + <#include "header.ftl"> +
        +
        +
        + ${page.pageContent} +
        + <@comments commentList=pageComments article=page> +
        + <#include "side.ftl"> +
        +
        + <#include "footer.ftl"> +
        + <@comment_script oId=page.oId> + + diff --git a/owmx-3.0/preview.png b/owmx-3.0/preview.png new file mode 100644 index 0000000..333e5ce Binary files /dev/null and b/owmx-3.0/preview.png differ diff --git a/owmx-3.0/side.ftl b/owmx-3.0/side.ftl new file mode 100644 index 0000000..a8339f7 --- /dev/null +++ b/owmx-3.0/side.ftl @@ -0,0 +1,149 @@ + \ No newline at end of file diff --git a/owmx-3.0/skin.properties b/owmx-3.0/skin.properties new file mode 100644 index 0000000..176a4d1 --- /dev/null +++ b/owmx-3.0/skin.properties @@ -0,0 +1,26 @@ +# +# Copyright (C) 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: html5 + css3 +# Version: 1.0.0.7, May 7, 2012 +# Author: Liyuan Li +# + +name=owmx-3.0 +version=2.0.3 +forSolo=0.4.5 +memo=Refers to http://lightdian.b3log.org \ No newline at end of file diff --git a/owmx-3.0/tag-articles.ftl b/owmx-3.0/tag-articles.ftl new file mode 100644 index 0000000..08adcdb --- /dev/null +++ b/owmx-3.0/tag-articles.ftl @@ -0,0 +1,30 @@ +<#include "macro-head.ftl"> + + + + <@head title="${tag.tagTitle} - ${blogTitle}"> + + + + + + ${topBarReplacement} +
        + <#include "header.ftl"> +
        + + <#include "side.ftl"> +
        +
        + <#include "footer.ftl"> +
        + + diff --git a/owmx-3.0/tags.ftl b/owmx-3.0/tags.ftl new file mode 100644 index 0000000..4151a06 --- /dev/null +++ b/owmx-3.0/tags.ftl @@ -0,0 +1,37 @@ +<#include "macro-head.ftl"> + + + + <@head title="${allTagsLabel} - ${blogTitle}"> + + + + + + ${topBarReplacement} +
        + <#include "header.ftl"> +
        + + <#include "side.ftl"> +
        +
        + <#include "footer.ftl"> +
        + + + diff --git a/psd/arrow-left.psd b/psd/arrow-left.psd new file mode 100644 index 0000000..91c862d Binary files /dev/null and b/psd/arrow-left.psd differ diff --git a/psd/arrow-right.psd b/psd/arrow-right.psd new file mode 100644 index 0000000..3314dfe Binary files /dev/null and b/psd/arrow-right.psd differ diff --git a/skin-preview/Elegant-Box-C.png b/skin-preview/Elegant-Box-C.png new file mode 100644 index 0000000..231054f Binary files /dev/null and b/skin-preview/Elegant-Box-C.png differ diff --git a/skin-preview/Mobile.png b/skin-preview/Mobile.png new file mode 100644 index 0000000..66e8373 Binary files /dev/null and b/skin-preview/Mobile.png differ diff --git a/skin-preview/andrea.png b/skin-preview/andrea.png new file mode 100644 index 0000000..caabe4d Binary files /dev/null and b/skin-preview/andrea.png differ diff --git a/skin-preview/classic.png b/skin-preview/classic.png new file mode 100644 index 0000000..06fcef6 Binary files /dev/null and b/skin-preview/classic.png differ diff --git a/skin-preview/community.png b/skin-preview/community.png new file mode 100644 index 0000000..20268c7 Binary files /dev/null and b/skin-preview/community.png differ diff --git a/skin-preview/favourite.png b/skin-preview/favourite.png new file mode 100644 index 0000000..0eadf25 Binary files /dev/null and b/skin-preview/favourite.png differ diff --git a/skin-preview/i-nove.png b/skin-preview/i-nove.png new file mode 100644 index 0000000..d7e5082 Binary files /dev/null and b/skin-preview/i-nove.png differ diff --git a/skin-preview/neoease.png b/skin-preview/neoease.png new file mode 100644 index 0000000..c9b0b48 Binary files /dev/null and b/skin-preview/neoease.png differ diff --git a/skin-preview/owmx-3.0.png b/skin-preview/owmx-3.0.png new file mode 100644 index 0000000..91a376b Binary files /dev/null and b/skin-preview/owmx-3.0.png differ diff --git a/skin-preview/tree-house.png b/skin-preview/tree-house.png new file mode 100644 index 0000000..c2d2f9b Binary files /dev/null and b/skin-preview/tree-house.png differ diff --git a/tree-house/archive-articles.ftl b/tree-house/archive-articles.ftl new file mode 100644 index 0000000..317c186 --- /dev/null +++ b/tree-house/archive-articles.ftl @@ -0,0 +1,42 @@ +<#include "macro-head.ftl"> + + + + <@head title="${archiveDate.archiveDateMonth} ${archiveDate.archiveDateYear} (${archiveDate.archiveDatePublishedArticleCount}) - ${blogTitle}"> + + + + + +
        +
        + ${topBarReplacement} +
        +
        + <#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 "side.ftl"> +
        +
        +
        + +
        +
        +
        + + diff --git a/tree-house/article-list.ftl b/tree-house/article-list.ftl new file mode 100644 index 0000000..e3a1ac5 --- /dev/null +++ b/tree-house/article-list.ftl @@ -0,0 +1,70 @@ +<#list articles as article> +
        +
        +

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

        +
        + +
        + <#list article.articleTags?split(",") as articleTag> + + +
        +
        + ${article.articleAbstract} +
        +
        +
        +
        +
        +
        + +<#if 0 != paginationPageCount> + +<#else> +  + \ No newline at end of file diff --git a/tree-house/article.ftl b/tree-house/article.ftl new file mode 100644 index 0000000..2431527 --- /dev/null +++ b/tree-house/article.ftl @@ -0,0 +1,117 @@ +<#include "macro-head.ftl"> +<#include "macro-comments.ftl"> + + + + <@head title="${article.articleTitle} - ${blogTitle}"> + + + + + +
        +
        + ${topBarReplacement} +
        +
        + <#include "header.ftl"> +
        +
        +
        +
        +
        +

        + + ${article.articleTitle} + <#if article.hasUpdated> + + ${updatedLabel} + + + <#if article.articlePutTop> + + ${topArticleLabel} + + + + <#if article.hasUpdated> + ${article.articleUpdateDate?string("yyyy-MM-dd HH:mm:ss")} + <#else> + ${article.articleCreateDate?string("yyyy-MM-dd HH:mm:ss")} + + + +

        +
        + <#list article.articleTags?split(",") as articleTag> + + +
        +
        +
        +
        + ${article.articleContent} + <#if "" != article.articleSign.signHTML?trim> +
        + ${article.articleSign.signHTML} +
        + +
        +
        +
        + <#if nextArticlePermalink??> + ${nextArticle1Label}${nextArticleTitle} +
        + + <#if previousArticlePermalink??> + ${previousArticle1Label}${previousArticleTitle} + +
        +
        + + ${article.articleCreateDate?string("yyyy-MM-dd HH:mm:ss")}   + + + +  ${article.articleCommentCount}   + + + +   ${article.articleViewCount}   + +
        +
        +
        +
        +
        +
        +
        +
        + <@comments commentList=articleComments article=article> +
        +
        + <#include "side.ftl"> +
        +
        +
        +
        + +
        +
        + <@comment_script oId=article.oId> + page.tips.externalRelevantArticlesDisplayCount = "${externalRelevantArticlesDisplayCount}"; + <#if 0 != randomArticlesDisplayCount> + page.loadRandomArticles(); + + <#if 0 != relevantArticlesDisplayCount> + page.loadRelevantArticles('${article.oId}', '

        ${relevantArticles1Label}

        '); + + <#if 0 != externalRelevantArticlesDisplayCount> + page.loadExternalRelevantArticles("<#list article.articleTags?split(",") as articleTag>${articleTag}<#if articleTag_has_next>,"); + + + + diff --git a/tree-house/author-articles.ftl b/tree-house/author-articles.ftl new file mode 100644 index 0000000..bc73392 --- /dev/null +++ b/tree-house/author-articles.ftl @@ -0,0 +1,37 @@ +<#include "macro-head.ftl"> + + + + <@head title="${authorName} - ${blogTitle}"> + + + + + +
        +
        + ${topBarReplacement} +
        +
        + <#include "header.ftl"> +
        +
        +
        +

        + ${author1Label}${authorName} +

        + <#include "article-list.ftl"> +
        +
        + <#include "side.ftl"> +
        +
        +
        + +
        +
        +
        + + diff --git a/tree-house/css/tree-house.css b/tree-house/css/tree-house.css new file mode 100644 index 0000000..1216a79 --- /dev/null +++ b/tree-house/css/tree-house.css @@ -0,0 +1,432 @@ +@charset "utf-8"; +/* + * skin tree-house style + * + * @author Liyuan Li + * @version 1.0.0.8, May 14, 2012 +*/ +html { + min-width: 948px; +} +body { + background: url("../images/bg-tree.jpg") repeat-y scroll 50% 0 #7BCCFF; + color: #42423D; + min-width: 948px; +} +a, a:link, a:visited { + color: #FFFFFF; + text-decoration: none; +} +a:hover { + text-decoration: underline; +} +h5 { + font-size: 12px; +} +.wrapper { + background: url("../images/bg-header.jpg") no-repeat scroll 50% 0 transparent; +} +.bg-bottom { + background: url("../images/bg-footer2.jpg") no-repeat scroll 50% 100% transparent; +} +.content { + margin: 0 auto; + width: 948px; +} +.header { + height: 476px; + width: 100%; +} +.header-navi { + position: relative; + z-index: 10; +} +.header-navi ul { + list-style: none outside none; + margin-top: 20px; +} +.header-navi li { + float: left; +} +.header-title { + color: #FFFFFF; + margin-left: 146px; + padding-top: 222px; + position: relative; +} +#logoTitle { + color: #FFFFFF; + font-size: 52px; + text-decoration: none; +} +.header-title div { + color: DimGray; + width: 300px; +} +.side { + margin: 0 0 0 -21px; + width: 256px; +} +.body { + min-height: 643px; + padding-bottom: 682px; +} +.main { + width: 634px; +} +.footer { + color: Lavender; + padding: 12px; + text-align: center; +} +.footer a { + font-weight: bold; +} +.article { + overflow: hidden; + width: 553px; +} +.article-header sup { + color: red; + font-size: 12px; +} +.article-header h2 { + color: #242323; + font-weight: bold; + margin-left: 6px; + position: relative; +} +.article-header h2 a { + color: #242323; + display: block; + padding: 3px 0 4px 10px; + text-decoration: none; +} +.article-header h2 a:hover { + background-color: #242323; + color: #EC0A8B; +} +.article-info { + margin: 10px 0 0 9px; + width: 109px; +} +.article-main { + margin: 10px 0 0 9px; + min-height: 150px; + width: 426px; +} +.article-tags { + background-color: #EC0A8B; + float: left; + font-style: normal; + height: 21px; + line-height: 21px; + margin: 0 10px 10px 0; + padding: 3px 10px; +} +.article-abstract { + color: #42423D; + line-height: 145%; + overflow: hidden; + padding: 6px 10px 12px 0; + text-align: justify; + word-wrap: break-word; +} +.main .line { + background: url("../images/bg-branch.png") no-repeat scroll 0 0 transparent; + height: 108px; + width: 575px; +} +.article-date { + background-color: #D4F2FB; + border: 6px solid #A8D3ED; + border-radius: 5px; + margin-left: 16px; + padding: 6px; + width: 65px; +} +.article-comment { + background: url("../images/bg-comments.png") no-repeat scroll 0 0 transparent; + font-size: 12px; + height: 22px; + margin: 24px 0 0; + padding: 29px 0 0; + text-align: center; +} +.article-comment a { + color: #42423D; +} +.main h2.title { + color: #FF9000; + margin: -34px 0 12px; + text-align: center; +} +.main h2 span { + color: DimGray; + float: right; + font-size: 12px; + margin-top: 7px; + padding-right: 10px; +} +.article-body { + line-height: 145%; + margin: 0 12px 12px; +} +.article-body a, .article-abstract a { + color: #242323; + text-decoration: underline; +} +.article-footer { + margin-right: 12px; +} +.article-details-footer a { + line-height: 16px; +} +.article-details-footer { + margin: 36px 12px 0 0; +} + +.article-details-footer .right a:hover { + text-decoration: none; +} + +.article-relative { + line-height: 145%; + margin: 12px 0; +} +.comments { + padding-left: 99px; + position: relative; +} +.comments-header { + background: url("../images/balloons.png") no-repeat scroll 0 0 transparent; + height: 88px; + left: 100px; + position: relative; + top: 40px; + width: 440px; + z-index: 10; +} +.comment-top { + background: url("../images/bg-comments-top.png") no-repeat scroll 0 0 transparent; + height: 22px; +} +.comment-body { + background: url("../images/bg-comments-body.png") repeat-y scroll 0 0 transparent; + color: #42423D; + margin-left: -1px; + overflow: hidden; + padding: 0 27px 2px 27px; + width: 401px; + word-wrap: break-word; +} +.comment-body a { + color: #42423D; +} +.comment-body td { + white-space: normal; +} +.comment-bottom { + background: url("../images/bg-comments-bottom.png") no-repeat scroll 0 0 transparent; + height: 23px; +} +.comment-title { + padding-bottom: 6px; +} +.comment-title a { + color: #42423D; + font-weight: bold; +} +.comment-body-ref { + left: 182px; + opacity: 0.9; + position: absolute; + top: 16px; + z-index: 16; +} +#emotions img, #emotionsReply img { + cursor: pointer; + display: block; + float: left; + margin-right: 2px; +} +img.comment-picture { + height: 60px; + padding: 0px 6px 4px 0; + width: 60px; +} +.comment-reply { + margin: 0 auto 24px auto; +} +#commentURL:focus, #commentURLReply:focus { + box-shadow: -3px 1px 2px rgba(0, 0, 0, 0.3) inset; +} +#comment, #commentReply { + resize: vertical; +} +.em00, .em01, .em02, .em03, .em04, .em05, .em06, .em07, .em08, .em09, .em10, .em11, .em12, .em13, .em14 { + background-image: url("../../tree-house/images/emotions/emotions-blue.png"); + margin-right: 2px; +} +.error-msg { + color: #EC0A8B; + font-weight: bold; + white-space: normal; +} +#sideNavi .line { + background: url("../images/bg-branch-small.png") no-repeat; + height: 69px; + margin-top: 12px; +} +#sideNavi .block { + margin-left: 64px; +} +#sideNavi h3 { + background: url("../images/bg-heading.png") no-repeat scroll 0 0 transparent; + color: #EC0A8B; + font-size: 15px; + height: 30px; + padding: 38px 0 0 12px; +} +#sideNavi .notice h3 { + background-image: url("../images/bg-heading-about-us.png"); +} +#sideNavi #recentComments img { + height: 16px; + vertical-align: middle; + width: 16px; +} +#sideNavi #recentCommentsLabel { + background-image: url("../images/bg-heading-portfolio.png"); +} +#sideNavi .mostCommentArticles h3 { + background-image: url("../images/bg-heading-categories.png"); +} +#sideNavi .mostViewCountArticles h3 { + background-image: url("../images/bg-heading-resources.png"); + margin-bottom: 6px; +} +#sideNavi .notice>div { + margin: 12px 12px 12px 17px; +} +#sideNavi ul { + margin-left: 5px; + width: 182px; + list-style: none; +} +#sideNavi li { + border-bottom: 1px dotted #FFFFFF; + font-size: 12px; + margin-left: 0; + overflow: hidden; + position: relative; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; + vertical-align: top; +} +#sideNavi li:hover { + background: url("../images/bg-menu-active.png") repeat scroll -8px -8px transparent; + color: #EC0A8B; + font-weight: bold; +} + +#sideNavi li:hover a { + color: #EC0A8B; + padding-left: 24px; +} + +#sideNavi li>a { + color: #42423D; + line-height: 29px; + margin: 0; + overflow: hidden; + padding-left: 6px; + text-decoration: none; + white-space: nowrap; + width: 167px; +} + +#sideNavi li>a sup { + margin-right: 3px; + line-height: 12px; + color: #EC0A8B; +} +#sideNavi li>div { + display: none; +} +#sideNavi li p { + display: inline; +} +#sideNavi .popTags li>a { + padding-left: 40px; + width: 143px; +} +#sideNavi .popTags li img { + cursor: pointer; + height: 16px; + left: 19px; + position: absolute; + top: 7px; + width: 16px; +} +#sideNavi .popTags li:hover a { + padding-left: 46px; + width: 137px; +} + +#sideNavi .popTags li:hover img { + left: 25px; +} +#statistic { + height: 138px; + line-height: 24px; + margin: 28px 0 0 80px; +} +.pagination { + margin: 16px; + text-align: center; +} +.pagination a, .pagination a:visited { + padding: 0 3px; +} +.pagination a.selected { + color: #42423D; + font-weight: bold; +} +#tagsPanel { + width: 553px; +} +#tagsPanel .tagPanel { + background-color: #EEEEEE; + border: 2px solid; + border-radius: 6px; + cursor: pointer; + float: left; + margin: 3px; +} +#tagsPanel .tagPanel:hover { + background-color: transparent; + border: 2px dashed; +} +#tagsPanel .tagPanel { + text-decoration: none; +} +.error-title { + width: 553px; +} +.error-panel { + padding: 24px; +} +.error-title { + background-color: #242323; + color: #EC0A8B; + display: block; + padding: 3px 10px 4px 10px; + position: relative; +} +.goTopIcon { + background-position: -128px -32px; +} +.goBottomIcon { + background-position: -144px -32px; +} \ No newline at end of file diff --git a/tree-house/footer.ftl b/tree-house/footer.ftl new file mode 100644 index 0000000..f678bc8 --- /dev/null +++ b/tree-house/footer.ftl @@ -0,0 +1,47 @@ +© ${year} - ${blogTitle}
        +Powered by +, +ver ${version}   +Theme by Pixel & Vanessa. +
        +
        + + + +${plugins} \ No newline at end of file diff --git a/tree-house/header.ftl b/tree-house/header.ftl new file mode 100644 index 0000000..a25aac6 --- /dev/null +++ b/tree-house/header.ftl @@ -0,0 +1,30 @@ +
        + +
        +
        +

        + + ${blogTitle} + +

        +
        ${blogSubtitle}
        + +
        \ No newline at end of file diff --git a/tree-house/images/balloons.png b/tree-house/images/balloons.png new file mode 100644 index 0000000..e4f784d Binary files /dev/null and b/tree-house/images/balloons.png differ diff --git a/tree-house/images/bg-branch-small.png b/tree-house/images/bg-branch-small.png new file mode 100644 index 0000000..c15a6ec Binary files /dev/null and b/tree-house/images/bg-branch-small.png differ diff --git a/tree-house/images/bg-branch.png b/tree-house/images/bg-branch.png new file mode 100644 index 0000000..f684ce5 Binary files /dev/null and b/tree-house/images/bg-branch.png differ diff --git a/tree-house/images/bg-comments-body.png b/tree-house/images/bg-comments-body.png new file mode 100644 index 0000000..869e887 Binary files /dev/null and b/tree-house/images/bg-comments-body.png differ diff --git a/tree-house/images/bg-comments-bottom.png b/tree-house/images/bg-comments-bottom.png new file mode 100644 index 0000000..3e977ea Binary files /dev/null and b/tree-house/images/bg-comments-bottom.png differ diff --git a/tree-house/images/bg-comments-top.png b/tree-house/images/bg-comments-top.png new file mode 100644 index 0000000..d882a59 Binary files /dev/null and b/tree-house/images/bg-comments-top.png differ diff --git a/tree-house/images/bg-comments.png b/tree-house/images/bg-comments.png new file mode 100644 index 0000000..e2287e2 Binary files /dev/null and b/tree-house/images/bg-comments.png differ diff --git a/tree-house/images/bg-footer2.jpg b/tree-house/images/bg-footer2.jpg new file mode 100644 index 0000000..658d8d9 Binary files /dev/null and b/tree-house/images/bg-footer2.jpg differ diff --git a/tree-house/images/bg-header.jpg b/tree-house/images/bg-header.jpg new file mode 100644 index 0000000..206d005 Binary files /dev/null and b/tree-house/images/bg-header.jpg differ diff --git a/tree-house/images/bg-heading-about-us.png b/tree-house/images/bg-heading-about-us.png new file mode 100644 index 0000000..996e244 Binary files /dev/null and b/tree-house/images/bg-heading-about-us.png differ diff --git a/tree-house/images/bg-heading-categories.png b/tree-house/images/bg-heading-categories.png new file mode 100644 index 0000000..1e3382e Binary files /dev/null and b/tree-house/images/bg-heading-categories.png differ diff --git a/tree-house/images/bg-heading-portfolio.png b/tree-house/images/bg-heading-portfolio.png new file mode 100644 index 0000000..e9bf7a5 Binary files /dev/null and b/tree-house/images/bg-heading-portfolio.png differ diff --git a/tree-house/images/bg-heading-resources.png b/tree-house/images/bg-heading-resources.png new file mode 100644 index 0000000..844f07d Binary files /dev/null and b/tree-house/images/bg-heading-resources.png differ diff --git a/tree-house/images/bg-heading.png b/tree-house/images/bg-heading.png new file mode 100644 index 0000000..98166b7 Binary files /dev/null and b/tree-house/images/bg-heading.png differ diff --git a/tree-house/images/bg-menu-active-tags.png b/tree-house/images/bg-menu-active-tags.png new file mode 100644 index 0000000..6de753f Binary files /dev/null and b/tree-house/images/bg-menu-active-tags.png differ diff --git a/tree-house/images/bg-menu-active.png b/tree-house/images/bg-menu-active.png new file mode 100644 index 0000000..f06a172 Binary files /dev/null and b/tree-house/images/bg-menu-active.png differ diff --git a/tree-house/images/bg-tree.jpg b/tree-house/images/bg-tree.jpg new file mode 100644 index 0000000..515f4d8 Binary files /dev/null and b/tree-house/images/bg-tree.jpg differ diff --git a/tree-house/images/emotions/em00.png b/tree-house/images/emotions/em00.png new file mode 100644 index 0000000..d691d4f Binary files /dev/null and b/tree-house/images/emotions/em00.png differ diff --git a/tree-house/images/emotions/em01.png b/tree-house/images/emotions/em01.png new file mode 100644 index 0000000..0efa659 Binary files /dev/null and b/tree-house/images/emotions/em01.png differ diff --git a/tree-house/images/emotions/em02.png b/tree-house/images/emotions/em02.png new file mode 100644 index 0000000..4f215fc Binary files /dev/null and b/tree-house/images/emotions/em02.png differ diff --git a/tree-house/images/emotions/em03.png b/tree-house/images/emotions/em03.png new file mode 100644 index 0000000..5ee30a3 Binary files /dev/null and b/tree-house/images/emotions/em03.png differ diff --git a/tree-house/images/emotions/em04.png b/tree-house/images/emotions/em04.png new file mode 100644 index 0000000..d23b375 Binary files /dev/null and b/tree-house/images/emotions/em04.png differ diff --git a/tree-house/images/emotions/em05.png b/tree-house/images/emotions/em05.png new file mode 100644 index 0000000..7ea4e9a Binary files /dev/null and b/tree-house/images/emotions/em05.png differ diff --git a/tree-house/images/emotions/em06.png b/tree-house/images/emotions/em06.png new file mode 100644 index 0000000..ce4241f Binary files /dev/null and b/tree-house/images/emotions/em06.png differ diff --git a/tree-house/images/emotions/em07.png b/tree-house/images/emotions/em07.png new file mode 100644 index 0000000..1d0b88c Binary files /dev/null and b/tree-house/images/emotions/em07.png differ diff --git a/tree-house/images/emotions/em08.png b/tree-house/images/emotions/em08.png new file mode 100644 index 0000000..ef5ba61 Binary files /dev/null and b/tree-house/images/emotions/em08.png differ diff --git a/tree-house/images/emotions/em09.png b/tree-house/images/emotions/em09.png new file mode 100644 index 0000000..c2c70c5 Binary files /dev/null and b/tree-house/images/emotions/em09.png differ diff --git a/tree-house/images/emotions/em10.png b/tree-house/images/emotions/em10.png new file mode 100644 index 0000000..22ca949 Binary files /dev/null and b/tree-house/images/emotions/em10.png differ diff --git a/tree-house/images/emotions/em11.png b/tree-house/images/emotions/em11.png new file mode 100644 index 0000000..d318fc2 Binary files /dev/null and b/tree-house/images/emotions/em11.png differ diff --git a/tree-house/images/emotions/em12.png b/tree-house/images/emotions/em12.png new file mode 100644 index 0000000..a4190d1 Binary files /dev/null and b/tree-house/images/emotions/em12.png differ diff --git a/tree-house/images/emotions/em13.png b/tree-house/images/emotions/em13.png new file mode 100644 index 0000000..a602aaa Binary files /dev/null and b/tree-house/images/emotions/em13.png differ diff --git a/tree-house/images/emotions/em14.png b/tree-house/images/emotions/em14.png new file mode 100644 index 0000000..fb75113 Binary files /dev/null and b/tree-house/images/emotions/em14.png differ diff --git a/tree-house/images/emotions/emotions-blue.png b/tree-house/images/emotions/emotions-blue.png new file mode 100644 index 0000000..7677c13 Binary files /dev/null and b/tree-house/images/emotions/emotions-blue.png differ diff --git a/tree-house/images/fan.swf b/tree-house/images/fan.swf new file mode 100644 index 0000000..95d6573 Binary files /dev/null and b/tree-house/images/fan.swf differ diff --git a/tree-house/index.ftl b/tree-house/index.ftl new file mode 100644 index 0000000..746a01a --- /dev/null +++ b/tree-house/index.ftl @@ -0,0 +1,34 @@ +<#include "macro-head.ftl"> + + + + <@head title="${blogTitle}"> + + + + + +
        +
        + ${topBarReplacement} +
        +
        + <#include "header.ftl"> +
        +
        +
        + <#include "article-list.ftl"> +
        +
        + <#include "side.ftl"> +
        +
        +
        + +
        +
        +
        + + diff --git a/tree-house/lang/lang_en_US.properties b/tree-house/lang/lang_en_US.properties new file mode 100644 index 0000000..2860965 --- /dev/null +++ b/tree-house/lang/lang_en_US.properties @@ -0,0 +1,287 @@ +# +# 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: 2.0.5.7, Sep 5, 2011 +# Author: Liang Ding +# + +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= +blogSyncLabel=Blog Sync +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 +blogSyncMgmtLabel=Blog Sync Management +syncMgmtLabel=Sync manage Blog +userName1Label=Username: +userPassword1Label=Password: +syncPostLabel=Sync Post +syncUpdateLabel=Sync Update +syncRemoveLabel=Sync Remove +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 +clearAllCacheLabel=Clear all cache +clearCacheLabel=Clear cache +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 +welcomeToSoloLabel=Welcome to B3log Solo! +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 +updatePreferenceFailLabel=Update Fail, please check Blog Host configuration! +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. +exceedMaxUploadSizeLabel=Size exceed 1M :-( +uploadFailLabel=Upload Fail! +fileEmptyLabel=File is empty +duplicatedPermalinkLabel=Duplicated permalink! +invalidPermalinkFormatLabel=Invalid permalink format! +duplicatedEmailLabel=Duplicated email! +canntBeLocalhostOnProductionLabel=Can not set host as localhost on production! +refreshAndRetryLabel=Please refresh and try again! +noDataLable=NO Data +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/tree-house/lang/lang_zh_CN.properties b/tree-house/lang/lang_zh_CN.properties new file mode 100644 index 0000000..0cedee0 --- /dev/null +++ b/tree-house/lang/lang_zh_CN.properties @@ -0,0 +1,287 @@ +# +# 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: 2.0.6.2, Sep 5, 2011 +# Author: Liang Ding +# + +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 +clearAllCacheLabel=\u6e05\u9664\u6240\u6709\u9875\u9762\u7f13\u5b58 +clearCacheLabel=\u6e05\u9664\u672c\u9875\u7f13\u5b58 +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 +welcomeToSoloLabel=\u6b22\u8fce\u4f7f\u7528 B3log Solo\uff01 +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 +updatePreferenceFailLabel=\u66f4\u65b0\u5931\u8d25\uff0c\u8bf7\u4ed4\u7ec6\u68c0\u67e5\u201c\u535a\u5ba2\u5730\u5740\u201d\u7684\u914d\u7f6e\u662f\u5426\u6b63\u786e +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 +exceedMaxUploadSizeLabel=\u76ee\u524d\u53ea\u80fd\u4e0a\u4f20\u5c0f\u4e8e 1M \u7684\u6587\u4ef6 :-( +uploadFailLabel=\u4e0a\u4f20\u5931\u8d25\uff01 +fileEmptyLabel=\u6587\u4ef6\u4e3a\u7a7a\uff01 +duplicatedPermalinkLabel=\u94fe\u63a5\u91cd\u590d\uff01 +invalidPermalinkFormatLabel=\u975e\u6cd5\u7684\u94fe\u63a5\u683c\u5f0f\uff01 +duplicatedEmailLabel=\u90ae\u4ef6\u5730\u5740\u91cd\u590d\uff01 +canntBeLocalhostOnProductionLabel=GAE \u73af\u5883\u4e0a\u8bf7\u52ff\u6307\u5b9a\u535a\u5ba2\u5730\u5740\u4e3a localhost\uff01 +refreshAndRetryLabel=\u8bf7\u5237\u65b0\u91cd\u8bd5\uff01 +noDataLable=\u65e0\u6570\u636e +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/tree-house/macro-comments.ftl b/tree-house/macro-comments.ftl new file mode 100644 index 0000000..77b5ef7 --- /dev/null +++ b/tree-house/macro-comments.ftl @@ -0,0 +1,184 @@ +<#macro comments commentList article> +
        +
        + <#list commentList as comment> +
        +
        +
        +
        +
        + <#if "http://" == comment.commentURL> + ${comment.commentName} + <#else> + ${comment.commentName} + + <#if comment.isReply> +  @ ${comment.commentOriginalCommentName} + + <#if article.commentable> +
        + ${comment.commentDate?string("yyyy-MM-dd HH:mm:ss")} + ${replyLabel} +
        + +
        +
        +
        + ${comment.commentName} +
        + ${comment.commentContent} +
        +
        +
        +
        +
        +
        +
        + +
        +<#if article.commentable> +
        +
        +
        + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
        + ${commentName1Label} + + +
        + ${commentEmail1Label} + + +
        + ${commentURL1Label} + + +
        + + + + + + + + + + + + + + + +
        + ${commentContent1Label} + + +
        + ${captcha1Label} + + + validate + + +
        + +
        +
        +
        +
        + + + +<#macro comment_script oId> + + + \ No newline at end of file diff --git a/tree-house/macro-head.ftl b/tree-house/macro-head.ftl new file mode 100644 index 0000000..71183d6 --- /dev/null +++ b/tree-house/macro-head.ftl @@ -0,0 +1,15 @@ +<#macro head title> + +${title} +<#nested> + + + + + + + + + +${htmlHead} + \ No newline at end of file diff --git a/tree-house/page.ftl b/tree-house/page.ftl new file mode 100644 index 0000000..397f5c5 --- /dev/null +++ b/tree-house/page.ftl @@ -0,0 +1,42 @@ +<#include "macro-head.ftl"> +<#include "macro-comments.ftl"> + + + + <@head title="${page.pageTitle} - ${blogTitle}"> + + + + + +
        +
        + ${topBarReplacement} +
        +
        + <#include "header.ftl"> +
        +
        +
        +
        +
        + ${page.pageContent} +
        +
        +
        + <@comments commentList=pageComments article=page> +
        +
        + <#include "side.ftl"> +
        +
        +
        + +
        +
        +
        + <@comment_script oId=page.oId> + + diff --git a/tree-house/preview.png b/tree-house/preview.png new file mode 100644 index 0000000..33aa486 Binary files /dev/null and b/tree-house/preview.png differ diff --git a/tree-house/side.ftl b/tree-house/side.ftl new file mode 100644 index 0000000..9093797 --- /dev/null +++ b/tree-house/side.ftl @@ -0,0 +1,151 @@ +
        +
        +
        + ${viewCount1Label} + + ${statistic.statisticBlogViewCount} + +
        +
        + ${articleCount1Label} + + ${statistic.statisticPublishedBlogArticleCount} + +
        +
        + ${commentCount1Label} + + ${statistic.statisticPublishedBlogCommentCount} + +
        +
        + <#if "" != noticeBoard> +
        +

        ${noticeBoardLabel}

        +
        ${noticeBoard}
        +
        +
        + + <#if 0 != recentComments?size> +
        +

        ${recentCommentsLabel}

        + +
        +
        +
        + + <#if 0 != mostCommentArticles?size> +
        +

        ${mostCommentArticlesLabel}

        + +
        +
        +
        + + <#if 0 != mostViewCountArticles?size> +
        +

        ${mostViewCountArticlesLabel}

        + +
        +
        +
        + + <#if 0 != mostUsedTags?size> +
        +

        ${popTagsLabel}

        + +
        +
        +
        + + <#if 0 != links?size> +
        +

        ${linkLabel}

        + +
        +
        +
        + + <#if 0 != archiveDates?size> + +
        + + <#if 1 != users?size> +
        +

        ${authorLabel}

        + +
        +
        + +
        diff --git a/tree-house/skin.properties b/tree-house/skin.properties new file mode 100644 index 0000000..b62a0da --- /dev/null +++ b/tree-house/skin.properties @@ -0,0 +1,26 @@ +# +# Copyright (C) 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: Tree House skin. +# Version: 1.0.0.6, May 7, 2012 +# Author: Liyuan Li +# + +name=Tree House +version=2.0.3 +forSolo=0.4.5 +memo=Refers to http://www.thepixel.com/blog \ No newline at end of file diff --git a/tree-house/tag-articles.ftl b/tree-house/tag-articles.ftl new file mode 100644 index 0000000..fd78e4b --- /dev/null +++ b/tree-house/tag-articles.ftl @@ -0,0 +1,38 @@ +<#include "macro-head.ftl"> + + + + <@head title="${tag.tagTitle} - ${blogTitle}"> + + + + + +
        +
        + ${topBarReplacement} +
        +
        + <#include "header.ftl"> +
        +
        +
        +

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

        + <#include "article-list.ftl"> +
        +
        + <#include "side.ftl"> +
        +
        +
        + +
        +
        +
        + + diff --git a/tree-house/tags.ftl b/tree-house/tags.ftl new file mode 100644 index 0000000..64ee27a --- /dev/null +++ b/tree-house/tags.ftl @@ -0,0 +1,46 @@ +<#include "macro-head.ftl"> + + + + <@head title="${allTagsLabel} - ${blogTitle}"> + + + + + +
        +
        + ${topBarReplacement} +
        +
        + <#include "header.ftl"> +
        +
        +
        + +
        +
        + <#include "side.ftl"> +
        +
        +
        + +
        +
        +
        + + +