Commit 01dbc2f7 authored by Van's avatar Van

cilia

parent 40bd50b6
......@@ -5,4 +5,5 @@
src/main/webapp/skins/*
!src/main/webapp/skins/mobile
!src/main/webapp/skins/finding
!src/main/webapp/skins/yilia
<#include "macro-head.ftl">
<!DOCTYPE html>
<html>
<head>
<@head title="${archiveDate.archiveDateMonth} ${archiveDate.archiveDateYear} (${archiveDate.archiveDatePublishedArticleCount}) - ${blogTitle}">
<meta name="keywords" content="${metaKeywords},${archiveDate.archiveDateYear}${archiveDate.archiveDateMonth}"/>
<meta name="description" content="<#list articles as article>${article.articleTitle}<#if article_has_next>,</#if></#list>"/>
</@head>
</head>
<body class="nav-closed">
<div class="nav">
<#include "side.ftl">
</div>
<div class="site-wrapper">
<#include "header.ftl">
<main id="content">
<h2 class="fn-wrap">
${archive1Label}
<#if "en" == localeString?substring(0, 2)>
${archiveDate.archiveDateMonth} ${archiveDate.archiveDateYear} (${archiveDate.archiveDatePublishedArticleCount})
<#else>
${archiveDate.archiveDateYear} ${yearLabel} ${archiveDate.archiveDateMonth} ${monthLabel} (${archiveDate.archiveDatePublishedArticleCount})
</#if>
</h2>
<#include "article-list.ftl">
</main>
<#include "footer.ftl">
</div>
</body>
</html>
<#include "macro-head.ftl">
<!DOCTYPE html>
<html>
<head>
<@head title="${blogTitle}">
<meta name="keywords" content="${metaKeywords},${archiveLabel}"/>
<meta name="description" content="${metaDescription},${archiveLabel}"/>
</@head>
</head>
<body class="nav-closed">
<div class="nav">
<#include "side.ftl">
</div>
<div class="site-wrapper">
<#include "header.ftl">
<main id="content">
<#if 0 != archiveDates?size>
<ul class="fn-clear fn-wrap" id='tags'>
<#list archiveDates as archiveDate>
<li>
<#if "en" == localeString?substring(0, 2)>
<a href="${servePath}/archives/${archiveDate.archiveDateYear}/${archiveDate.archiveDateMonth}"
title="${archiveDate.monthName} ${archiveDate.archiveDateYear}(${archiveDate.archiveDatePublishedArticleCount})">
${archiveDate.monthName} ${archiveDate.archiveDateYear}(${archiveDate.archiveDatePublishedArticleCount})</a>
<#else>
<a href="${servePath}/archives/${archiveDate.archiveDateYear}/${archiveDate.archiveDateMonth}"
title="${archiveDate.archiveDateYear} ${yearLabel} ${archiveDate.archiveDateMonth} ${monthLabel}(${archiveDate.archiveDatePublishedArticleCount})">
${archiveDate.archiveDateYear} ${yearLabel} ${archiveDate.archiveDateMonth} ${monthLabel}(${archiveDate.archiveDatePublishedArticleCount})</a>
</#if>
</li>
</#list>
</ul>
</#if>
</main>
<#include "footer.ftl">
</div>
</body>
</html>
<#if !isIndex && paginationCurrentPageNum != 1>
<nav class="pagination fn-clear fn-wrap" role="navigation">
<#if paginationCurrentPageNum != 1>
<a class="fn-left" href="${servePath}${path}/${paginationPreviousPageNum}">← ${previousPageLabel}</a>
</#if>
<span>${pageLabel} ${paginationCurrentPageNum} of ${paginationPageCount}</span>
<#if paginationPageCount != paginationCurrentPageNum>
<a class="fn-right" href="${servePath}${path}/${paginationNextPageNum}">${nextPagePabel} →</a>
</#if>
</nav>
</#if>
<#list articles as article>
<article class="post fn-wrap">
<header>
<h2 class="post-title">
<a rel="bookmark" href="${servePath}${article.articlePermalink}">
${article.articleTitle}
</a>
<#if article.hasUpdated>
<sup class="post-tip">
${updatedLabel}
</sup>
</#if>
<#if article.articlePutTop>
<sup class="post-tip">
${topArticleLabel}
</sup>
</#if>
</h2>
</header>
<section class="post-excerpt fn-clear">
<p>${article.articleAbstract}</p>
</section>
<footer class="post-meta">
<img class="avatar" title="${article.authorName}" alt="${article.authorName}" src="${article.authorThumbnailURL}"/>
<a rel="nofollow" href="${servePath}/authors/${article.authorId}">${article.authorName}</a>
on
<#list article.articleTags?split(",") as articleTag>
<span>
<a rel="tag" href="${servePath}/tags/${articleTag?url('UTF-8')}">
${articleTag}</a><#if articleTag_has_next>,</#if>
</span>
</#list>
<time>${article.articleCreateDate?string("yyyy-MM-dd")}</time>
</footer>
</article>
</#list>
<#if 0 != paginationPageCount>
<nav class="pagination fn-clear fn-wrap" role="navigation">
<#if paginationCurrentPageNum != 1>
<a class="fn-left" href="${servePath}${path}/${paginationPreviousPageNum}">← ${previousPageLabel}</a>
</#if>
<span>${pageLabel} ${paginationCurrentPageNum} of ${paginationPageCount}</span>
<#if paginationPageCount != paginationCurrentPageNum>
<a class="fn-right" href="${servePath}${path}/${paginationNextPageNum}">${nextPagePabel} →</a>
</#if>
</nav>
</#if>
\ No newline at end of file
<#include "macro-head.ftl">
<#include "macro-comments.ftl">
<!DOCTYPE html>
<html>
<head>
<@head title="${article.articleTitle} - ${blogTitle}">
<meta name="keywords" content="${article.articleTags}" />
<meta name="description" content="${article.articleAbstract?html}" />
</@head>
</head>
<body class="nav-closed">
<div class="nav">
<#include "side.ftl">
</div>
<div class="site-wrapper">
<#include "header.ftl">
<main>
<article class="post fn-wrap">
<header>
<h1 class="post-title">
<a rel="bookmark" href="${servePath}${article.articlePermalink}">
${article.articleTitle}
</a>
<#if article.hasUpdated>
<sup class="post-tip">
${updatedLabel}
</sup>
</#if>
<#if article.articlePutTop>
<sup class="post-tip">
${topArticleLabel}
</sup>
</#if>
</h1>
<section class="post-meta">
<#list article.articleTags?split(",") as articleTag>
<span>
<a rel="tag" href="${servePath}/tags/${articleTag?url('UTF-8')}">
${articleTag}</a><#if articleTag_has_next>,</#if>
</span>
</#list>
<time>${article.articleCreateDate?string("yyyy-MM-dd")}</time>
</section>
</header>
<section class="post-content article-body">
${article.articleContent}
<#if "" != article.articleSign.signHTML?trim>
<div class="marginTop12">
${article.articleSign.signHTML}
</div>
</#if>
</section>
<footer>
<figure class="post-author">
<a href="${servePath}/authors/${article.authorId}"
title="${article.authorName}" alt="${article.authorName}"
style="background-image: url('${article.authorThumbnailURL}')">
<span class="fn-none">${article.authorName}</span>
</a>
</figure>
<div class="share fn-right">
<span class="icon icon-tencent" data-type="tencent"></span>
<span class="icon icon-weibo" data-type="weibo"></span>
<span class="icon icon-twitter" data-type="twitter"></span>
<span class="icon icon-google" data-type="google"></span>
</div>
</footer>
</article>
<@comments commentList=articleComments article=article></@comments>
</main>
<#if nextArticlePermalink?? || previousArticlePermalink??>
<aside class="read-next">
<#if nextArticlePermalink??>
<div class="read-next-story " style="background-image: url('${staticServePath}/skins/${skinDirName}/images/next.jpg')"
onclick="window.location = '${servePath}${nextArticlePermalink}'">
<section class="post">
<h2>${nextArticleTitle}</h2>
<p>${nextArticleAbstract}</p>
</section>
</div>
</#if>
<#if previousArticlePermalink??>
<div class="read-next-story prev " style="background-image: url('${staticServePath}/skins/${skinDirName}/images/preview.jpg')"
onclick="window.location = '${servePath}${previousArticlePermalink}'">
<section class="post">
<h2>${previousArticleTitle}</h2>
<p>${previousArticleAbstract}</p>
</section>
</div>
</#if>
</aside>
</#if>
<#include "footer.ftl">
<@comment_script oId=article.oId>
page.tips.externalRelevantArticlesDisplayCount = "${externalRelevantArticlesDisplayCount}";
</@comment_script>
</div>
</body>
</html>
<#include "macro-head.ftl">
<!DOCTYPE html>
<html>
<head>
<@head title="${authorName} - ${blogTitle}">
<meta name="keywords" content="${metaKeywords},${authorName}"/>
<meta name="description" content="<#list articles as article>${article.articleTitle}<#if article_has_next>,</#if></#list>"/>
</@head>
</head>
<body class="nav-closed">
<div class="nav">
<#include "side.ftl">
</div>
<div class="site-wrapper">
<#include "header.ftl">
<main id="content">
<h2 class="fn-wrap">
${author1Label}${authorName}
</h2>
<#include "article-list.ftl">
</main>
<#include "footer.ftl">
</div>
</body>
</html>
This diff is collapsed.
This diff is collapsed.
<#include "macro-head.ftl">
<!DOCTYPE html>
<html>
<head>
<@head title="${blogTitle}">
<meta name="keywords" content="${metaKeywords},${dynamicLabel}"/>
<meta name="description" content="${metaDescription},${dynamicLabel}"/>
</@head>
</head>
<body class="nav-closed">
<div class="nav">
<#include "side.ftl">
</div>
<div class="site-wrapper">
<#include "header.ftl">
<main id="content">
<#if 0 != recentComments?size>
<ul class="comments fn-wrap">
<#list recentComments as comment>
<#if comment_index < 6>
<li id="${comment.oId}" class="fn-clear">
<div class="fn-left avatar-warp">
<img class="avatar-48" title="${comment.commentName}"
alt="${comment.commentName}" src="${comment.commentThumbnailURL}">
</div>
<div class="fn-left" style="width: 90%">
<div class="fn-clear post-meta">
<span class="fn-left">
<#if "http://" == comment.commentURL>
<span>${comment.commentName}</span>
<#else>
<a href="${comment.commentURL}" target="_blank">${comment.commentName}</a>
</#if>
<time>${comment.commentDate?string("yy-MM-dd HH")}</time>
</span>
<a class="fn-right" href="${servePath}${comment.commentSharpURL}">${viewLabel}»</a>
</div>
<div class="comment-content">
${comment.commentContent}
</div>
</div>
</li>
</#if>
</#list>
</ul>
</#if>
</main>
<#if 0 != mostCommentArticles?size || 0 != mostViewCountArticles?size>
<aside class="read-next dynamic">
<#if 0 != mostCommentArticles?size>
<div class="read-next-story" style="background-image: url('${staticServePath}/skins/${skinDirName}/images/next.jpg')">
<div>
${mostCommentArticlesLabel}
<ul>
<#list mostCommentArticles as article>
<li>
<a href="${servePath}${article.articlePermalink}" title="${article.articleTitle}" rel="nofollow">
${article.articleTitle}
</a>
<span data-ico="&#xe14e;">
${article.articleCommentCount}
</span>
</li>
</#list>
</ul>
</div>
</div>
</#if>
<#if 0 != mostViewCountArticles?size>
<section class="read-next-story prev" style="background-image: url('${staticServePath}/skins/${skinDirName}/images/preview.jpg')">
<div>
${mostViewCountArticlesLabel}
<ul>
<#list mostViewCountArticles as article>
<li>
<a href="${servePath}${article.articlePermalink}" title="${article.articleTitle}" rel="nofollow">
${article.articleTitle}
</a>
<span data-ico="&#xe185;">
${article.articleViewCount}
</span>
</li>
</#list>
</ul>
</div>
</section>
</#if>
</aside>
</#if>
<#include "footer.ftl">
</div>
<script>
var $commentContents = $(".comments .comment-content");
for (var i = 0; i < $commentContents.length; i++) {
var str = $commentContents[i].innerHTML;
$commentContents[i].innerHTML = Util.replaceEmString(str);
}
</script>
</body>
</html>
<footer class="site-footer fn-clear">
<a href="${servePath}">${blogTitle}</a>
&copy; ${year}
<span class="fn-right">
Powered by <a href="http://b3log.org" target="_blank">B3log 开源</a> • <a href="http://b3log.org/services/#solo" target="_blank">Solo</a> ${version}&nbsp;&nbsp;
Theme by <a rel="friend" href="http://vanessa.b3log.org" target="_blank">Vanessa</a>.
</span>
</footer>
<script type="text/javascript" src="${staticServePath}/js/lib/jquery/jquery.min.js" charset="utf-8"></script>
<script type="text/javascript" src="${staticServePath}/js/common${miniPostfix}.js?${staticResourceVersion}" charset="utf-8"></script>
<script type="text/javascript" src="${staticServePath}/skins/${skinDirName}/js/${skinDirName}${miniPostfix}.js?${staticResourceVersion}" charset="utf-8"></script>
<script type="text/javascript">
var latkeConfig = {
"servePath": "${servePath}",
"staticServePath": "${staticServePath}",
"isLoggedIn": "${isLoggedIn?string}",
"userName": "${userName}"
};
var Label = {
"skinDirName": "${skinDirName}",
"em00Label": "${em00Label}",
"em01Label": "${em01Label}",
"em02Label": "${em02Label}",
"em03Label": "${em03Label}",
"em04Label": "${em04Label}",
"em05Label": "${em05Label}",
"em06Label": "${em06Label}",
"em07Label": "${em07Label}",
"em08Label": "${em08Label}",
"em09Label": "${em09Label}",
"em10Label": "${em10Label}",
"em11Label": "${em11Label}",
"em12Label": "${em12Label}",
"em13Label": "${em13Label}",
"em14Label": "${em14Label}"
};
</script>
${plugins}
<header class="main-header"<#if !isIndex> style='height:30vh;'</#if>>
<div class="fn-clear">
<a class="menu-button icon-menu" href="#"><span class="word">Menu</span></a>
</div>
<div class="fn-vertical">
<div class="main-header-content fn-wrap">
<h1 class="page-title">
<a href="${servePath}">${blogTitle}</a>
<#if "" != noticeBoard>
<small class="page-description"> &nbsp; ${blogSubtitle}</small>
</#if>
</h1>
<h2 class="page-description">
<#if "" != noticeBoard>
${noticeBoard}
<#else>
${blogSubtitle}
</#if>
</h2>
</div>
</div>
<#if isIndex><a class="scroll-down icon-arrow-left" href="#content" data-offset="-45"></a></#if>
</header>
\ No newline at end of file
<#include "macro-head.ftl">
<!DOCTYPE html>
<html>
<head>
<@head title="${blogTitle}">
<#if metaKeywords??>
<meta name="keywords" content="${metaKeywords}"/>
</#if>
<#if metaDescription??>
<meta name="description" content="${metaDescription}"/>
</#if>
</@head>
</head>
<body class="nav-closed">
<div class="nav">
<#include "side.ftl">
</div>
<div class="site-wrapper">
<#include "header.ftl">
<main id="content">
<#include "article-list.ftl">
</main>
<#include "footer.ftl">
</div>
</body>
</html>
/*
* Copyright (c) 2010-2015, b3log.org
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* @fileoverview util and every page should be used.
*
* @author <a href="http://vanessa.b3log.org">Liyuan Li</a>
* @version 1.0.0.0, Jun 13, 2015
*/
/**
* @description Finding 皮肤脚本
* @static
*/
var Finding = {
/**
* @description 页面初始化
*/
init: function () {
Util.killIE();
$(".scroll-down").click(function (event) {
event.preventDefault();
var $this = $(this),
$htmlBody = $('html, body'),
offset = ($this.attr('data-offset')) ? $this.attr('data-offset') : false,
toMove = parseInt(offset);
$htmlBody.stop(true, false).animate({scrollTop: ($(this.hash).offset().top + toMove)}, 500);
});
$('body').click(function (event) {
if ($(event.target).closest('.nav').length === 0
&& $("body").hasClass('nav-opened')
&& !$(event.target).hasClass('icon-gotop')) {
$("body").removeClass('nav-opened').addClass('nav-closed');
}
});
$(".menu-button").click(function (event) {
event.stopPropagation();
$("body").toggleClass("nav-opened nav-closed");
});
$('body').append('<a class="icon-gotop fn-none" href="javascript:Util.goTop()"></a>');
$(window).scroll(function () {
if ($(window).scrollTop() > $(window).height()) {
$(".icon-gotop").show();
} else {
$(".icon-gotop").hide();
}
});
},
share: function () {
$(".share span").click(function () {
var key = $(this).data("type");
var title = encodeURIComponent($("title").text()),
url = $(".post-title a").attr('href') ? $(".post-title a").attr('href') : location,
pic = $(".post-content img:eq(0)").attr("src");
var urls = {};
urls.tencent = "http://share.v.t.qq.com/index.php?c=share&a=index&title=" + title +
"&url=" + url + "&pic=" + pic;
urls.weibo = "http://v.t.sina.com.cn/share/share.php?title=" +
title + "&url=" + url + "&pic=" + pic;
urls.google = "https://plus.google.com/share?url=" + url;
urls.twitter = "https://twitter.com/intent/tweet?status=" + title + " " + url;
window.open(urls[key], "_blank", "top=100,left=200,width=648,height=618");
});
}
};
Finding.init();
\ No newline at end of file
#
# Copyright (c) 2010-2015, b3log.org
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
#
# Description: B3log Solo language configurations(en_US).
# Version: 1.0.0.1, Jun 19, 2015
# Author: Liyuan Li
#
subscribeLabel=Subscribe
dynamicLabel=Dynamic
adminConsoleLabel=Admin
adminIndexLabel=Admin Index
postArticleLabel=Post
articleListLabel=Articles
commentListLabel=Comments
draftListLabel=Drafts
userManageLabel=Users
commonUserLabel=Common User
addUserLabel=Add User
updateUserLabel=Update User
linkManagementLabel=Links
pluginMgmtLabel=Plugins
pluginNameLabel=Name
versionLabel=Version
statusLabel=Status
enabledLabel=Enabled
disabledLabel=Disabled
enableLabel=Enable
disableLabel=Disable
preferenceLabel=Preference
localeString1Label=Language:
timeZoneId1Label=Time Zone:
adminLabel=Admin
administratorLabel=Administrator
loginLabel=Login
logoutLabel=Logout
initLabel=Initial
popTagsLabel=Popular Tags
tag1Label=Tag:
tags1Label=Tags:
recentArticlesLabel=Recent Articles
recentCommentsLabel=Recent Comments
postCommentsLabel=Post Comment
mostCommentArticlesLabel=Most Comment Articles
mostViewCountArticlesLabel=Most View Articles
em00Label=Smile
em01Label=Laughter
em02Label=Happy
em03Label=Sad
em04Label=Cry
em05Label=No Comments
em06Label=Fidget
em07Label=Angry
em08Label=Look Around
em09Label=Surprise
em10Label=Cool
em11Label=Cheeky
em12Label=Heart
em13Label=Heart Broken
em14Label=Devil
linkLabel=Friend Links
sumLabel=
pageLabel=Page
commentLabel=Comment
linkTitleLabel=Link Title
linkTitle1Label=Title:
updateLabel=Update
removeLabel=Remove
putTopLabel=Put Top
cancelPutTopLabel=Cancel Put Top
downloadCountLabel=Count
sizeLabel=Size
uploadDateLabel=Upload Date
downloadURLLabel=Download URL
downloadLabel=Download
createDateLabel=Create Date
updateDateLabel=Update Date
titleLabel=Title
title1Label=Title:
content1Label=Content:
abstract1Label=Summary:
publishLabel=Publish
unPublishLabel=Un Publish
urlLabel=URL
url1Label=URL (start protocol, e.g.: http://):
addLinkLabel=Add Link
updateLinkLabel=Update Link
archiveLabel=Archive
archive1Label=archive:
yearLabel=
monthLabel=
pageLabel=Page
pageMgmtLabel=Pages
othersLabel=Others
fileListLabel=Files
submitUploadLabel=Upload
fileNameLabel=File Name
paramSettingsLabel=Parameters
skinLabel=Skins
signLabel=Signs
sign1Label=Signs:
noSignLabel=No Signs
signIsNullLabel=This Sign is Null
statisticLabel=Blog Statistic
viewLabel=View
countLabel=Posts
viewCount1Label=View Count:
articleCount1Label=Article Count:
commentCountLabel=Comment Count
commentCount1Label=Comment Count:
commentEmotions1Label=Emotions:
commentEmotionsLabel=Emotions
commentName1Label=Name:
commentNameLabel=Name
commentEmail1Label=Email:
commentEmailLabel=Email
commentURL1Label=URL:
commentURLLabel=URL
commentContent1Label=Content:
commentContentLabel=Content
getDateLabel=Get Date
getArticleLabel=Get Article
selectDateLabel=Select Date
selectDate1Label=Select Date:
importLabel=Import
chooseBlog1Label=Choose Blog:
blogArticleImportLabel=Article Import
userName1Label=Username:
userPassword1Label=Password:
categoryLabel=Category
noticeBoard1Label=Notice Board:
noticeBoardLabel=Notice Board
htmlhead1Label=HTML head:
indexTagDisplayCnt1Label=Index Tag Display Count:
indexRecentArticleDisplayCnt1Label=Recent Article Display Count:
indexRecentCommentDisplayCnt1Label=Recent Comment Display Count:
indexMostCommentArticleDisplayCnt1Label=Most Comment Article Display Count:
indexMostViewArticleDisplayCnt1Label=Most View Article Display Count:
relevantArticlesDisplayCnt1Label=Relevant Article Display Count:
randomArticlesDisplayCnt1Label=Random Article Display Count:
externalRelevantArticlesDisplayCnt1Label=External Relevant Article Display Count:
windowSize1Label=Pagination Window Size:
pageSize1Label=Pagination Page Size:
blogTitle1Label=Blog Title:
blogSubtitle1Label=Blog Subtitle:
blogHost1Label=Blog Host:
submmitCommentLabel=Commit Comment
saveLabel=Save
tagLabel=Tag
tagsLabel=Tags
importedLabel=Imported
captcha1Label=Captcha:
captchaLabel=Captcha
indexLabel=Index
nextArticle1Label=Next:
previousArticle1Label=Previous:
updatedLabel=Updated!
topArticleLabel=Top!
CSDNBlogLabel=CSDN Blog
BlogJavaLabel=BlogJava
CnBlogsLabel=CnBlogs
previousPageLabel=Previous Page
nextPagePabel=Next Page
firstPageLabel=First Page
lastPageLabel=Last Page
returnTo1Label=Return to:
tencentLabel=Tencent
appKey1Label=App Key:
appSecret1Label=App Secret:
postToTencentMicroblogWhilePublishArticleLabel=Post to Tencent microblog while publish an article:
postToCommunityLabel=Post to Community:
authorizeTencentMicroblog1Label=Click to authorize:
googleLabel=Google
OAuthConsumerSecret1Label=OAuth Consumer Secret:
atomLabel=Atom
relevantArticles1Label=Relevant Articles:
randomArticles1Label=Random Articles:
externalRelevantArticles1Label=External Relevant Articles:
metaKeywords1Label=Meta Keywords:
metaDescription1Label=Meta Description:
removeUnusedTagsLabel=Remove Unused Tags
goTopLabel=Top
permalink1Label=Permalink:
permalinkLabel=Permalink
b3logLabel=<span style="color: orange;">B</span><span style="color: blue;"><sup>3</sup></span><span style="color: green;">L</span><span style="color: red;">O</span><span style="color: blue;">G</span>
killBrowserLabel=<h2>Let's kill outdated and insecure browser!</h2><p>Let's kill outdated and insecure browser for browser evolution, human progress and better experience.</p><p>You can download</p><ul><li><a href="http://www.mozilla.com/" target="_blank">Firefox</a></li><li><a href="http://www.google.com/chrome" target="_blank">Chrome</a></li><li><a href="http://windows.microsoft.com/en-US/internet-explorer/downloads/ie" target="_blank">IE8 / IE9</a></li><li><a href="http://www.maxthon.com/" target="_blank">Maxthon</a> and <a href="http://www.google.com" target="_blank">so on</a>.</li></ul>
readmoreLabel=Read more\u00bb
readmore2Label=Read more
replyLabel=Reply\u00bb
homeLabel=Home
enableArticleUpdateHint1Label=Enable Article Update Hint:
allowVisitDraftViaPermalink1Label=Allow Visit Draft Via Link:
author1Label=Author:
authorLabel=Author
keyOfSolo1Label=Solo Key:
articleLabel=Article
tagArticlesLabel=Tag Articles
dateArticlesLabel=Archive Date Articles
authorArticlesLabel=Author Articles
indexArticleLabel=Index Articles
allTagsLabel=Tag Cloud
customizedPageLabel=Customized Page
killBrowserPageLabel=Kill Browser Page
pageNumLabel=Page Number
####
forbiddenLabel=Forbidden Access!
sorryLabel=Sorry!
notFoundLabel=Not Found!
unPulbishSuccLabel=Un Publish Successfully
unPulbishFailLabel=Un Publish Fail
removeSuccLabel=Remove Successfully
removeFailLabel=Remove Fail
removeUserFailSkinNeedMulUsersLabel=Remove Fail, the current skin need multiple users!
putTopSuccLabel=Put Top Successfully
putTopFailLabel=Put Top Fail
cancelTopSuccLabel=Cancel Top Successfully
cancelTopFailLabel=Cancel Top Fail
addSuccLabel=Add Successfully
addFailLabel=Add Fail
updateSuccLabel=Update Successfully
updateFailLabel=Update Fail
updatePreferenceFailNeedMulUsersLabel=Update Fail, the selected skin need multiple users!
setFailLabel=Set Fail
setSuccLabel=Set Successfully
getFailLabel=Get Fail
noSettingLabel=No Setting
getSuccLabel=Get Successfully
importSuccLabel=Import Successfully :-)
importFailLabel=Some Import Fail %>_<%
noCommentLabel=No Comment
captchaErrorLabel=Captcha Error
inputErrorLabel=Input Error!
gotoLabel=Go
nameEmptyLabel=Username is empty
passwordEmptyLabel=Password is empty
blogEmptyLabel=Blogging service is empty
blogArticleEmptyLabel=Please select articles
nameTooLongLabel=Sorry, your username must be between 2 and 20 characters long.
mailCannotEmptyLabel=Mail is empty
mailInvalidLabel=Mail is invalid
commentContentCannotEmptyLabel=Sorry, your content must be between 2 and 500 characters long.
captchaCannotEmptyLabel=Captcha is empty
loadingLabel=Loading....
titleEmptyLabel=Title is empty
contentEmptyLabel=Content is empty
orderEmptyLabel=Order is empty
abstractEmptyLabel=Abstract is empty
tagsEmptyLabel=Tags is empty
addressEmptyLabel=Address is empty
noAuthorizationURLLabel=Can not retrieve authorization URL from Google, please \
make sure the <em>Consumer Secret</em> you typed in and then try again.
duplicatedPermalinkLabel=Duplicated permalink!
invalidPermalinkFormatLabel=Invalid permalink format!
duplicatedEmailLabel=Duplicated email!
refreshAndRetryLabel=Please refresh and try again!
editorLeaveLabel=Content is not null, Do you leave\uff1f
editorPostLabel=Content is not null, Do you clear\uff1f
####
confirmRemoveLabel=Are You Sure?
confirmInitLabel=Are You Sure?
This diff is collapsed.
<#include "macro-head.ftl">
<!DOCTYPE html>
<html>
<head>
<@head title="${blogTitle}">
<meta name="keywords" content="${metaKeywords},${linkLabel}"/>
<meta name="description" content="${metaDescription},${linkLabel}"/>
</@head>
</head>
<body class="nav-closed">
<div class="nav">
<#include "side.ftl">
</div>
<div class="site-wrapper">
<#include "header.ftl">
<main id="content">
<#if 0 != links?size>
<ul class="fn-clear fn-wrap" id="tags">
<#list links as link>
<li>
<a rel="friend" href="${link.linkAddress}" title="${link.linkDescription}" target="_blank">
<img src="${faviconAPI}<#list link.linkAddress?split('/') as x><#if x_index=2>${x}<#break></#if></#list>" width="16" height="16" />
${link.linkTitle}
</a>
</li>
</#list>
</ul>
</#if>
</main>
<#include "footer.ftl">
</div>
</body>
</html>
<#macro comments commentList article>
<ul class="comments fn-wrap" id="comments">
<#list commentList as comment>
<li id="${comment.oId}" class="fn-clear">
<div class="fn-left avatar-warp">
<img class="avatar-48" title="${comment.commentName}" src="${comment.commentThumbnailURL}">
</div>
<div class="fn-left" style="width: 90%">
<div class="fn-clear post-meta">
<span class="fn-left">
<#if "http://" == comment.commentURL>
<a>${comment.commentName}</a>
<#else>
<a href="${comment.commentURL}" target="_blank">${comment.commentName}</a>
</#if>
<#if comment.isReply>
@
<a href="${servePath}${article.permalink}#${comment.commentOriginalCommentId}"
onmouseover="page.showComment(this, '${comment.commentOriginalCommentId}', 23);"
onmouseout="page.hideComment('${comment.commentOriginalCommentId}')"
>${comment.commentOriginalCommentName}</a>
</#if>
<time>${comment.commentDate?string("yyyy-MM-dd HH:mm")}</time>
</span>
<#if article.commentable>
<a class="fn-right" href="javascript:replyTo('${comment.oId}')">${replyLabel}</a>
</#if>
</div>
<div class="comment-content">
${comment.commentContent}
</div>
</div>
</li>
</#list>
</ul>
<#if article.commentable>
<div class="comment-body fn-wrap">
<table id="commentForm" class="form">
<tbody>
<#if !isLoggedIn>
<tr>
<td>
<input placeholder="${commentNameLabel}" type="text" class="normalInput" id="commentName"/>
</td>
</tr>
<tr>
<td>
<input placeholder="${commentEmailLabel}" type="email" class="normalInput" id="commentEmail"/>
</td>
</tr>
<tr>
<td>
<input placeholder="${commentURLLabel}" type="url" id="commentURL"/>
</td>
</tr>
</#if>
<tr>
<td id="emotions">
<span class="em00" title="${em00Label}"></span>
<span class="em01" title="${em01Label}"></span>
<span class="em02" title="${em02Label}"></span>
<span class="em03" title="${em03Label}"></span>
<span class="em04" title="${em04Label}"></span>
<span class="em05" title="${em05Label}"></span>
<span class="em06" title="${em06Label}"></span>
<span class="em07" title="${em07Label}"></span>
<span class="em08" title="${em08Label}"></span>
<span class="em09" title="${em09Label}"></span>
<span class="em10" title="${em10Label}"></span>
<span class="em11" title="${em11Label}"></span>
<span class="em12" title="${em12Label}"></span>
<span class="em13" title="${em13Label}"></span>
<span class="em14" title="${em14Label}"></span>
</td>
</tr>
<tr>
<td>
<textarea rows="10" cols="96" id="comment"></textarea>
</td>
</tr>
<#if !isLoggedIn>
<tr>
<td>
<input style="width:50%" placeholder="${captchaLabel}" type="text" class="normalInput" id="commentValidate"/>
<img id="captcha" alt="validate" src="${servePath}/captcha.do" />
</td>
</tr>
</#if>
<tr>
<td colspan="2" align="right">
<span class="error-msg" id="commentErrorTip"></span>
<button id="submitCommentButton" onclick="page.submitComment();">${submmitCommentLabel}</button>
</td>
</tr>
</tbody>
</table>
</div>
</#if>
</#macro>
<#macro comment_script oId>
<script type="text/javascript" src="${staticServePath}/js/page${miniPostfix}.js?${staticResourceVersion}" charset="utf-8"></script>
<script type="text/javascript">
var page = new Page({
"nameTooLongLabel": "${nameTooLongLabel}",
"mailCannotEmptyLabel": "${mailCannotEmptyLabel}",
"mailInvalidLabel": "${mailInvalidLabel}",
"commentContentCannotEmptyLabel": "${commentContentCannotEmptyLabel}",
"captchaCannotEmptyLabel": "${captchaCannotEmptyLabel}",
"loadingLabel": "${loadingLabel}",
"oId": "${oId}",
"skinDirName": "${skinDirName}",
"blogHost": "${blogHost}",
"randomArticles1Label": "${randomArticles1Label}",
"externalRelevantArticles1Label": "${externalRelevantArticles1Label}"
});
var addComment = function (result, state) {
var commentable = $("#commentForm").length === 0 ? false : true;
var commentHTML = '<li class="fn-clear" id="' + result.oId +
'"><div class="fn-left" style="width: 10%"><img class="avatar-48" title="'
+ result.userName + '" src="' + result.commentThumbnailURL + '"></div><div class="fn-left" style="width: 90%">'
+ '<div class="fn-clear post-meta"><span class="fn-left">' + result.replyNameHTML;
if (state !== "") {
var commentOriginalCommentName = $("#" + page.currentCommentId).find(".post-meta a").first().text();
commentHTML += '&nbsp;@&nbsp;<a href="${servePath}' + result.commentSharpURL.split("#")[0] + '#' + page.currentCommentId + '"'
+ 'onmouseover="page.showComment(this, \'' + page.currentCommentId + '\', 23);"'
+ 'onmouseout="page.hideComment(\'' + page.currentCommentId + '\')">' + commentOriginalCommentName + '</a>';
}
commentHTML += '<time>' + result.commentDate
+ '</time></span>';
if (commentable) {
commentHTML += '<a class="fn-right" href="javascript:replyTo(\'' + result.oId + '\');">${replyLabel}</a>';
}
commentHTML += '</div><div class="comment-content">' +
Util.replaceEmString($("#comment" + state).val().replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/\n/g, "<br/>"))
+ '</div></div></li>';
return commentHTML;
};
var replyTo = function (id) {
var commentFormHTML = "<table class='form comment-reply' id='replyForm'>";
page.addReplyForm(id, commentFormHTML);
};
(function () {
Finding.share();
page.load();
// emotions
page.replaceCommentsEm("#comments .comment-content");
<#nested>
})();
</script>
</#macro>
\ No newline at end of file
<#macro head title>
<meta charset="utf-8" />
<title>${title}</title>
<#nested>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="author" content="${blogTitle?html}" />
<meta name="generator" content="Solo" />
<meta name="owner" content="B3log Team" />
<meta name="revised" content="${blogTitle?html}, ${year}" />
<meta name="copyright" content="B3log" />
<meta http-equiv="Window-target" content="_top" />
<link rel="stylesheet" type="text/css" href="//fonts.useso.com/css?family=Merriweather:300,700,700italic,300italic|Open+Sans:700,400" />
<link type="text/css" rel="stylesheet" href="${staticServePath}/skins/${skinDirName}/css/${skinDirName}${miniPostfix}.css?${staticResourceVersion}" charset="utf-8" />
<link href="${servePath}/blog-articles-rss.do" title="RSS" type="application/rss+xml" rel="alternate" />
<link rel="icon" type="image/png" href="${staticServePath}/favicon.png" />
${htmlHead}
</#macro>
\ No newline at end of file
<#include "macro-head.ftl">
<#include "macro-comments.ftl">
<!DOCTYPE html>
<html>
<head>
<@head title="${page.pageTitle} - ${blogTitle}">
<meta name="keywords" content="${metaKeywords},${page.pageTitle}" />
<meta name="description" content="${metaDescription}" />
</@head>
</head>
<body class="nav-closed">
<div class="nav">
<#include "side.ftl">
</div>
<div class="site-wrapper">
<#include "header.ftl">
<main>
<article class="post">
<section class="post-content article-body">
${page.pageContent}
</section>
<footer>
<div class="share fn-right">
<span class="icon icon-tencent" data-type="tencent"></span>
<span class="icon icon-weibo" data-type="weibo"></span>
<span class="icon icon-twitter" data-type="twitter"></span>
<span class="icon icon-google" data-type="google"></span>
</div>
</footer>
</article>
<@comments commentList=pageComments article=page></@comments>
</main>
<#include "footer.ftl">
<@comment_script oId=page.oId></@comment_script>
</div>
</body>
</html>
<div class="fn-clear">
<span class="fn-right">
<#if isLoggedIn>
<a href="${servePath}/admin-index.do#main" title="${adminLabel}" class="icon-setting"></a>
&nbsp;
<a title="${logoutLabel}" class="icon-logout" href="${logoutURL}"></a>
<#else>
<a title="${loginLabel}" href="${loginURL}" class="icon-login"></a>
&nbsp;
<a href="${servePath}/register" title="${registerLabel}" class="icon-register"></a>
</#if>
</span>
</div>
<ul>
<#list pageNavigations as page>
<li>
<a href="${page.pagePermalink}" target="${page.pageOpenTarget}">${page.pageTitle}</a>
</li>
</#list>
<li>
<a href="${servePath}/dynamic.html">${dynamicLabel}</a>
</li>
<li>
<a href="${servePath}/tags.html">${allTagsLabel}</a>
</li>
<li>
<a href="${servePath}/archives.html">${archiveLabel}</a>
</li>
<li>
<a href="${servePath}/links.html">${linkLabel}</a>
</li>
<li>
<a rel="alternate" href="${servePath}/blog-articles-rss.do">${subscribeLabel}</a>
</li>
</ul>
<div class="count">
<span>
${viewCount1Label}
${statistic.statisticBlogViewCount}
</span> &nbsp; &nbsp;
<span>
${articleCount1Label}
${statistic.statisticPublishedBlogArticleCount}
</span><br/>
<span>
${commentCount1Label}
${statistic.statisticPublishedBlogCommentCount}
</span> &nbsp; &nbsp;
<span>
${onlineVisitor1Label}
${onlineVisitorCnt}
</span>
</div>
#
# Copyright (c) 2010-2015, b3log.org
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
#
# Description: yilia skin.
# Version: 0.1.0.0, Nov 1, 2015
# Author: Liyuan Li
#
name=yilia
version=1.0.0
forSolo=1.1.0
memo=http://litten.github.io/
<#include "macro-head.ftl">
<!DOCTYPE html>
<html>
<head>
<@head title="${tag.tagTitle} - ${blogTitle}">
<meta name="keywords" content="${metaKeywords},${tag.tagTitle}"/>
<meta name="description" content="<#list articles as article>${article.articleTitle}<#if article_has_next>,</#if></#list>"/>
</@head>
</head>
<body class="nav-closed">
<div class="nav">
<#include "side.ftl">
</div>
<div class="site-wrapper">
<#include "header.ftl">
<main id="content">
<h2 class="fn-wrap">
${tag1Label}
<a rel="alternate" href="${servePath}/tag-articles-feed.do?oId=${tag.oId}">
${tag.tagTitle}
(${tag.tagPublishedRefCount})
</a>
</h2>
<#include "article-list.ftl">
</main>
<#include "footer.ftl">
</div>
</body>
</html>
<#include "macro-head.ftl">
<!DOCTYPE html>
<html>
<head>
<@head title="${allTagsLabel} - ${blogTitle}">
<meta name="keywords" content="${metaKeywords},${allTagsLabel}"/>
<meta name="description" content="<#list tags as tag>${tag.tagTitle}<#if tag_has_next>,</#if></#list>"/>
</@head>
</head>
<body class="nav-closed">
<div class="nav">
<#include "side.ftl">
</div>
<div class="site-wrapper">
<#include "header.ftl">
<main id="content">
<ul id="tags" class="fn-clear fn-wrap">
<#list tags as tag>
<li>
<a rel="tag" data-count="${tag.tagPublishedRefCount}"
href="${servePath}/tags/${tag.tagTitle?url('UTF-8')}" title="${tag.tagTitle}">
<span>${tag.tagTitle}</span>
(<b>${tag.tagPublishedRefCount}</b>)
</a>
</li>
</#list>
</ul>
</main>
<#include "footer.ftl">
</div>
<script type="text/javascript">
Util.buildTags();
</script>
</body>
</body>
</html>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment