new skin for posart
|
@ -0,0 +1,27 @@
|
|||
<#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>
|
||||
${topBarReplacement}
|
||||
<#include "header.ftl">
|
||||
<div class="main">
|
||||
<div class="wrapper">
|
||||
<h2 id="archive">${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">
|
||||
</div>
|
||||
</div>
|
||||
<#include "footer.ftl">
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,36 @@
|
|||
<#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>
|
||||
${topBarReplacement}
|
||||
<#include "header.ftl">
|
||||
<div class="main">
|
||||
<div class="wrapper">
|
||||
<#if 0 != archiveDates?size>
|
||||
<div class="other-main archives">
|
||||
<#list archiveDates as archiveDate>
|
||||
<span data-year="${archiveDate.archiveDateYear}">
|
||||
<#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>
|
||||
</span>
|
||||
</#list>
|
||||
</div>
|
||||
</#if>
|
||||
</div>
|
||||
</div>
|
||||
<#include "footer.ftl">
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,58 @@
|
|||
<#list articles as article>
|
||||
<div class="article cl">
|
||||
<h2 class="entry-title"><a href="${servePath}${article.articlePermalink}">${article.articleTitle}</a>
|
||||
<!--<#if article.hasUpdated>
|
||||
${updatedLabel}
|
||||
</#if>
|
||||
<#if article.articlePutTop>
|
||||
<sup>
|
||||
${topArticleLabel}
|
||||
</sup>
|
||||
</#if>-->
|
||||
</h2>
|
||||
<div class="abstract">
|
||||
${article.articleAbstract}
|
||||
</div>
|
||||
|
||||
<p class="entry-meta">
|
||||
<#if article.hasUpdated>
|
||||
${article.articleUpdateDate?string("yy-MM-dd HH:mm")}
|
||||
<#else>
|
||||
${article.articleCreateDate?string("yy-MM-dd HH:mm")}
|
||||
</#if>
|
||||
${article.authorName}
|
||||
<a href="${servePath}${article.articlePermalink}#comments">
|
||||
${article.articleCommentCount} ${commentLabel}
|
||||
</a>
|
||||
<a rel="nofollow" class="ft-gray" href="${servePath}${article.articlePermalink}">
|
||||
${article.articleViewCount} ${viewLabel}
|
||||
</a>
|
||||
${tag1Label}
|
||||
<#list article.articleTags?split(",") as articleTag>
|
||||
<a href="${servePath}/tags/${articleTag?url('UTF-8')}">
|
||||
${articleTag}</a><#if articleTag_has_next>, </#if>
|
||||
</#list>
|
||||
|
||||
|
||||
<a class="y" href="${servePath}${article.articlePermalink}">More...</a>
|
||||
</p>
|
||||
</div>
|
||||
</#list>
|
||||
<#if 0 != paginationPageCount>
|
||||
<ol class="page-navigator">
|
||||
<#if 1 != paginationPageNums?first>
|
||||
<li><a id="previousPage" href="${servePath}${path}/${paginationPreviousPageNum}"
|
||||
title="${previousPageLabel}"><</a></li>
|
||||
</#if>
|
||||
<#list paginationPageNums as paginationPageNum>
|
||||
<#if paginationPageNum == paginationCurrentPageNum>
|
||||
<li class="current"><a href="#">${paginationPageNum}</a></li>
|
||||
<#else>
|
||||
<li><a href="${servePath}${path}/${paginationPageNum}">${paginationPageNum}</a></li>
|
||||
</#if>
|
||||
</#list>
|
||||
<#if paginationPageNums?last != paginationPageCount>
|
||||
<li><a id="nextPage" href="${servePath}${path}/${paginationNextPageNum}" title="${nextPagePabel}">></a></li>
|
||||
</#if>
|
||||
</ol>
|
||||
</#if>
|
|
@ -0,0 +1,113 @@
|
|||
<#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>
|
||||
<script src="${staticServePath}/skins/${skinDirName}/js/syntaxhighlighter/scripts/shCore.js"></script>
|
||||
<script src="${staticServePath}/skins/${skinDirName}/js/syntaxhighlighter/scripts/shBrushJScript.js"></script>
|
||||
<script src="${staticServePath}/skins/${skinDirName}/js/syntaxhighlighter/scripts/shBrushJava.js"></script>
|
||||
<script src="${staticServePath}/skins/${skinDirName}/js/syntaxhighlighter/scripts/shBrushJScript.js"></script>
|
||||
<script src="${staticServePath}/skins/${skinDirName}/js/syntaxhighlighter/scripts/shBrushXml.js"></script>
|
||||
<link type="text/css" rel="stylesheet" href="${staticServePath}/skins/${skinDirName}/js/syntaxhighlighter/styles/shCoreDefault.css" charset="utf-8" />
|
||||
<script type="text/javascript">SyntaxHighlighter.all();</script>
|
||||
</head>
|
||||
<body>
|
||||
${topBarReplacement}
|
||||
<#include "header.ftl">
|
||||
<div id="wrapper">
|
||||
<a href="${servePath}" class="header mhidden"><img src="${staticServePath}/skins/${skinDirName}/images/ghead.png"></a>
|
||||
<div id="container" class="cl">
|
||||
<div class="body">
|
||||
<ul class="breadcrumb">
|
||||
<li><a href="${servePath}">首页</a> <span class="divider">/</span></li>
|
||||
<li style="color:#333333">
|
||||
${article.articleTitle}</li>
|
||||
<li class='y'>
|
||||
${tag1Label}
|
||||
<#list article.articleTags?split(",") as articleTag>
|
||||
<a rel="tag" href="${servePath}/tags/${articleTag?url('UTF-8')}">${articleTag}</a><#if articleTag_has_next>,</#if>
|
||||
</#list>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
<div class="content">
|
||||
<div class="post-7 post type-post status-publish format-standard hentry category-uncategorized" style="position: relative; z-index: 1;">
|
||||
<header class="entry-header">
|
||||
<h2 class="entry-title">${article.articleTitle}</h2>
|
||||
<!--<#if article.hasUpdated>
|
||||
<sup>
|
||||
${updatedLabel}
|
||||
</sup>
|
||||
</#if>
|
||||
<#if article.articlePutTop>
|
||||
<sup>
|
||||
${topArticleLabel}
|
||||
</sup>
|
||||
</#if>-->
|
||||
|
||||
</header>
|
||||
<div class="entry-content">
|
||||
<div class="article-body">
|
||||
${article.articleContent}
|
||||
<#if "" != article.articleSign.signHTML?trim>
|
||||
<p>
|
||||
${article.articleSign.signHTML}
|
||||
</p>
|
||||
</#if>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<footer style="width:100%">
|
||||
<p class="entry-meta" >
|
||||
<#if article.hasUpdated>
|
||||
${article.articleUpdateDate?string("yy-MM-dd HH:mm")}
|
||||
<#else>
|
||||
${article.articleCreateDate?string("yy-MM-dd HH:mm")}
|
||||
</#if>
|
||||
<a rel="nofollow" href="${servePath}/authors/${article.authorId}">${article.authorName}</a>
|
||||
|
||||
<a href="${servePath}${article.articlePermalink}#comments">
|
||||
${article.articleCommentCount} ${commentLabel}
|
||||
</a>
|
||||
<a href="${servePath}${article.articlePermalink}">
|
||||
${article.articleViewCount} ${viewLabel}
|
||||
</a>
|
||||
</p>
|
||||
</footer>
|
||||
</div>
|
||||
<ul class="breadcrumb">
|
||||
<li class='active' >
|
||||
<#if nextArticlePermalink??>
|
||||
<a href="${servePath}${nextArticlePermalink}"><span class="ft-gray"><</span>${nextArticleTitle}</a>
|
||||
</#if>
|
||||
</li>
|
||||
<li class='y active'>
|
||||
<#if previousArticlePermalink??>
|
||||
<a href="${servePath}${previousArticlePermalink}">${previousArticleTitle} <span class="ft-gray">></span></a>
|
||||
</#if>
|
||||
</li>
|
||||
</ul>
|
||||
<@comments commentList=articleComments article=article></@comments>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<#include "footer.ftl">
|
||||
</div>
|
||||
<@comment_script oId=article.oId>
|
||||
page.tips.externalRelevantArticlesDisplayCount = "${externalRelevantArticlesDisplayCount}";
|
||||
<#if 0 != randomArticlesDisplayCount>
|
||||
page.loadRandomArticles('<h4 class="ft-gray">${randomArticlesLabel}</h4>');
|
||||
</#if>
|
||||
<#if 0 != relevantArticlesDisplayCount>
|
||||
page.loadRelevantArticles('${article.oId}', '<h4 class="ft-gray">${relevantArticlesLabel}</h4>');
|
||||
</#if>
|
||||
<#if 0 != externalRelevantArticlesDisplayCount>
|
||||
page.loadExternalRelevantArticles("<#list article.articleTags?split(",") as articleTag>${articleTag}<#if articleTag_has_next>,</#if></#list>");
|
||||
</#if>
|
||||
</@comment_script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,21 @@
|
|||
<#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>
|
||||
${topBarReplacement}
|
||||
<#include "header.ftl">
|
||||
<div class="main">
|
||||
<div class="wrapper">
|
||||
<h2 id="author">${author1Label}${authorName}</h2>
|
||||
<#include "article-list.ftl">
|
||||
</div>
|
||||
</div>
|
||||
<#include "footer.ftl">
|
||||
</body>
|
||||
</html>
|
After Width: | Height: | Size: 880 KiB |
After Width: | Height: | Size: 15 KiB |
After Width: | Height: | Size: 6.2 KiB |
After Width: | Height: | Size: 42 KiB |
After Width: | Height: | Size: 95 KiB |
After Width: | Height: | Size: 72 KiB |
After Width: | Height: | Size: 100 KiB |
After Width: | Height: | Size: 42 KiB |
After Width: | Height: | Size: 54 KiB |
After Width: | Height: | Size: 64 KiB |
After Width: | Height: | Size: 40 KiB |
After Width: | Height: | Size: 72 KiB |
After Width: | Height: | Size: 95 KiB |
After Width: | Height: | Size: 81 KiB |
After Width: | Height: | Size: 40 KiB |
After Width: | Height: | Size: 48 KiB |
After Width: | Height: | Size: 65 KiB |
After Width: | Height: | Size: 78 KiB |
After Width: | Height: | Size: 78 KiB |
After Width: | Height: | Size: 108 KiB |
After Width: | Height: | Size: 66 KiB |
After Width: | Height: | Size: 178 KiB |
After Width: | Height: | Size: 73 KiB |
After Width: | Height: | Size: 8.1 KiB |
|
@ -0,0 +1,248 @@
|
|||
/**
|
||||
* Copyright (c) 2009, 2010, 2011, 2012, 2013, B3log Team
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
/*
|
||||
Theme Name: PosArt
|
||||
Theme URI: http://www.dsu.pw/posart
|
||||
Description: A simple theme.
|
||||
Author: Kunr(Lingoys Art)
|
||||
Author URI: http://www.dsu.pw
|
||||
Version: 1.0
|
||||
Tags: blog
|
||||
*/
|
||||
p{margin:0;}article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block;}audio,canvas,video{display:inline;zoom:1;}audio:not([controls]){display:none;}[hidden]{display:none;}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;}html,button,input,select,textarea{font-family: "Microsoft YaHei Light", "Helvetica Neue", Helvetica, "Hiragino Sans GB", "Hiragino Sans GB W3", "Microsoft YaHei",sans-serif;color:#444;}body{margin:0;font-size:1em;line-height:1.4;}::-moz-selection{background:#f7d2d2;color:#333;text-shadow:none;}::selection{background:#fe57a1;color:#fff;text-shadow:none;}a,a:hover,a:visited{color:#999;text-decoration:none}a:hover,a:active{outline:0;}abbr[title]{border-bottom:1px dotted;}b,strong{font-weight:700;}blockquote{margin:1em 40px;}dfn{font-style:italic;}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0;}ins{background:#ff9;color:#000;text-decoration:none;}mark{background:#ff0;color:#000;font-style:italic;font-weight:700;}pre,code,kbd,samp{font-family:monospace,serif;_font-family:'courier new',monospace;font-size:1em;}pre{white-space:pre-wrap;word-wrap:break-word;}q{quotes:none;}q:before,q:after{content:none;}small{font-size:85%;}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline;}sup{top:-.5em;}sub{bottom:-.25em;}ul,ol{margin:0;padding:0;}dd{margin:0 0 0 40px;}nav ul,nav ol{list-style:none;list-style-image:none;margin:0;padding:0;}img{border:0;-ms-interpolation-mode:bicubic;vertical-align:middle;}svg:not(:root){overflow:hidden;}figure{margin:0;}form{margin:0;}fieldset{border:0;margin:0;padding:0;}label{cursor:pointer;}legend{border:0;margin-left:-7px;padding:0;white-space:normal;}button,input,select,textarea{font-size:100%;margin:0;vertical-align:middle;}button,input{line-height:normal;}button,input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button;overflow:visible;}button[disabled],input[disabled]{cursor:default;}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0;width:13px;height:13px;}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box;}input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none;}input,button,select,textarea{outline:none;}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0;}textarea{overflow:auto;vertical-align:top;resize:vertical;}input:invalid,textarea:invalid{background-color:#FAFAFA;}table{border-collapse:collapse;border-spacing:0;}td{vertical-align:top;}h1,h2,h3,h4,h5,h6{padding:0;margin:0;}
|
||||
.cl:after{content:".";display:block;height:0;clear:both;visibility:hidden;}.cl{zoom:1;}li{list-style:none;}.z{float:left;}.y{float:right;}
|
||||
body { background: #e3e3e3; }
|
||||
::selection { background: #CCEBFF; color: #003E66; }
|
||||
::-moz-selection { background: #CCEBFF; color: #003E66; }
|
||||
::-webkit-selection { background: #CCEBFF; color: #003E66; }
|
||||
::-webkit-scrollbar { background: #fff; width: 6px; height: 6px; -webkit-border-radius: 5px; }
|
||||
::-webkit-scrollbar-track { background: #fff; }
|
||||
::-webkit-scrollbar-track-piece { background: #e5e5e5;-webkit-border-radius: 5px; }
|
||||
::-webkit-scrollbar-thumb { background: #ccc;-webkit-border-radius: 5px; }
|
||||
::-webkit-scrollbar-thumb:hover { background: #999; }
|
||||
#wpadminbar{display:none}
|
||||
#wrapper { top: 60px; position: relative; width: 100%; height: auto; overflow: visible; -webkit-transition: all 0.3s; -moz-transition: all 0.3s; transition: all 0.3s; }
|
||||
|
||||
/* commons */
|
||||
#header { height: 40px; width: 100%; position: fixed; left: 0; top:0; -webkit-box-shadow: 0 3px 4px rgba(0,0,0,0.12); -moz-box-shadow: 0 3px 4px rgba(0,0,0,0.12); box-shadow: 0 3px 4px rgba(0,0,0,0.12); background-color: rgba(255,255,255,0.88); z-index: 999; }
|
||||
#header ul { padding: 0 10px; }
|
||||
#header li { float: left; position: relative; }
|
||||
#header a{ height: 40px; }
|
||||
#header li a { width: auto; height: 40px; line-height: 40px; display: inline-block; padding: 0 16px; color: #525252; border-right: 1px solid #DDD; text-decoration: none;font-size: 18px; }
|
||||
#header li a:hover { text-decoration: none; background-color: #000; color: #fff; -webkit-transition: .1s ease-in-out; transition: .1s ease-in-out; -o-transition: .1s ease-in-out; -moz-transition: .1s ease-in-out; }
|
||||
#header li a.main { font-weight: bold; }
|
||||
#header li:hover a.menu-item { background-color: #000; }
|
||||
#header li:hover .sub-menu { display: block; }
|
||||
#header li .sub-menu {padding: 5px; display: none; position: absolute; box-shadow: 1px 1px 5px; -webkit-box-shadow: 1px 1px 5px; -moz-box-shadow: 1px 1px 5px; min-width: 150px; background: white; }
|
||||
#header li .sub-menu li { width: 100%; padding: 0; }
|
||||
#header li .sub-menu a { border: 0; padding:0; width: 100%; }
|
||||
.searchform { height: 40px; display: inline; }
|
||||
.search-input { transition: background .5s;margin-top: 5px;margin-right: 15px; -moz-transition: background .5s; -ms-transition: background .5s; -o-transition: background .5s; -webkit-transition: background .5s; border: 2px solid #ddd; border-radius: 10px; height: 25px; background: #ebebeb; padding-left: 10px; outline: 0; width: 150px; }
|
||||
.search-input:hover,.search-input:focus { background: #fff; transition: background .5s; -moz-transition: background .5s; -ms-transition: background .5s; -o-transition: background .5s; -webkit-transition: background .5s; }
|
||||
.header { display: block; padding-bottom: 25px;}
|
||||
.header img { max-width: 160px; border-radius: 160px; -webkit-border-radius: 160px; -moz-border-radius: 160px; border: 10px solid #fff; display: block; margin: 0 auto;}
|
||||
|
||||
.unbody , .body { margin: 0 auto; }
|
||||
.unbody { width: 82.97872340425532%; }
|
||||
.body { position:relative; width: 780px; width: calc(80% - 2.5em); }
|
||||
|
||||
.breadcrumb { padding: 8px 15px; margin-bottom: 15px; list-style: none; background-color: #fafafa; }
|
||||
.breadcrumb li { line-height: 20px; display: inline-block; }
|
||||
.breadcrumb li .divider { padding: 0 5px; color: #ccc; }
|
||||
|
||||
.site-footer { font-size: 15px; text-align: center; line-height: 20px; padding: 20px; }
|
||||
/*common*/
|
||||
|
||||
/*social*/
|
||||
[class^="sc-"], [class*=" sc-"] {display: inline-block;width: 30px;height: 30px;margin-right: 8px;line-height: 30px;vertical-align: text-top;background-image: url(images/contact.png);background-repeat: no-repeat;filter:alpha(opacity=50); /*IE滤镜,透明度50%*/-moz-opacity:0.5; /*Firefox私有,透明度50%*/opacity:0.5;/*其他,透明度50%*/ transition: all .7s;-moz-transition: all .7s;-webkit-transition: all .7s;-o-transition: all .7s;}
|
||||
[class^="sc-"]:hover, [class*=" sc-"]:hover { filter:alpha(opacity=100); /*IE滤镜,透明度50%*/ -moz-opacity:1; /*Firefox私有,透明度50%*/ opacity:1;/*其他,透明度50%*/ }
|
||||
|
||||
.sc-sina { background-position: 0px 0px; }
|
||||
.sc-qzone { background-position: -30px 0px; }
|
||||
.sc-tqq { background-position: -60px 0px; }
|
||||
.sc-qq { background-position: -90px 0px; }
|
||||
.sc-renren { background-position: -120px 0px; }
|
||||
.sc-baidu { background-position: -150px 0px; }
|
||||
/*social*/
|
||||
|
||||
/* article */
|
||||
.article { background: #fff; margin-bottom: 20px;-webkit-box-shadow: 0 1px 8px rgba(0,0,0,0.15);-moz-box-shadow: 0 1px 8px rgba(0,0,0,0.15); box-shadow: 0 1px 8px rgba(0,0,0,0.15); }
|
||||
.entry-title { background: #f1f1f1; height: 30px; padding-left: 20px; display: block; font-size: 13px; color: #929292; font-weight: 300; line-height: 30px; text-transform: uppercase; }
|
||||
.entry-title a { color: #929292; height: 30px; display: block; }
|
||||
.entry-thumbnail img { width: 100%; height: auto; }
|
||||
.entry-meta { color: #999; border-top: 1px dotted #999; font-size: 12px; }
|
||||
.entry-content , .entry-meta { margin: 0 30px; padding: 10px; }
|
||||
#comments .entry-content {
|
||||
margin-left: 78px;
|
||||
}
|
||||
#comments {
|
||||
position: relative;
|
||||
}
|
||||
.comment-body-ref {
|
||||
position: absolute;
|
||||
left: 80px;
|
||||
top: 138px;
|
||||
width: 87%;
|
||||
}
|
||||
.content { -webkit-box-shadow: 0 1px 8px rgba(0,0,0,0.15);-moz-box-shadow: 0 1px 8px rgba(0,0,0,0.15); box-shadow: 0 1px 8px rgba(0,0,0,0.15); padding-bottom: 30px; overflow: hidden; background: #fff; min-height: 450px; position: relative;}
|
||||
.content footer { position: absolute; bottom: 0px; z-index: 1; }
|
||||
.comments { background: #fff; padding: 10px; margin-top: 10px; }
|
||||
.background { background-position: bottom right; opacity: 0.4; filter: alpha(opacity=40);background-repeat: no-repeat; width: 100%; height: 150%; position:absolute; bottom:-100px; right:0;}
|
||||
.abstract { margin: 6px 32px;}
|
||||
.comment-header {
|
||||
width: 60px;
|
||||
}
|
||||
#reply-title small a { font-size: 14px; padding: 5px; background: #ECECEC; }
|
||||
.comment-list li { margin: 15px 0; }
|
||||
.comment-list .children { padding-left: 50px; }
|
||||
.comment-list .avatar { margin-right: 15px; -webkit-border-radius: 60px; -moz-border-radius: 60px; border-radius: 60px; display: inline; float: left; }
|
||||
.comment_meta_head { color: #999; font-size: 12px; margin: 5px 0; }
|
||||
.comment_meta_head a { color: #999; }
|
||||
.comment_meta_head .authorname,.comment_meta_head time,.comment_meta_head .comment-edit-link{ margin-right: 15px; }
|
||||
.comment_meta_head .fn .authorname, .comment_meta_head .fn .authorname a{ color: #2275E2; }
|
||||
|
||||
#commentForm input,#commentForm textarea,
|
||||
#replyForm input,#replyForm textarea{ resize: none; outline: none; background: #FFF; border: 1px solid #DEDEDE; box-shadow: inset 0 1px 3px #DCDCDC;line-height: 24px;font-size: 14px;padding: 8px;overflow: hidden;color: #444; }
|
||||
#comment,#commentReply { width: 80%; margin: 18px 0; height: 80px; }
|
||||
#comments_submit { width: 130px; }
|
||||
#replyForm {
|
||||
margin: 0 80px 30px;
|
||||
}
|
||||
/*post*/
|
||||
|
||||
/* widget */
|
||||
.widget{width:254px;float:left;margin:5px 3px;background-color:#fff;}
|
||||
.widget h3{position:relative;margin:0;line-height:20px;padding:6px 15px;font-size:15px;background-color:#F7F7F7;height: 20px;border-bottom: 1px solid #eaeaea;font-weight: normal;}
|
||||
.widget h3 .btn{position:absolute;top:5px;right:10px;font-weight:normal;padding: 2px 7px 1px}
|
||||
.widget-notip{line-height:20px;color:#666;border-top-color:#f00}
|
||||
.widget ul{*zoom:1;padding:10px;}
|
||||
.widget ul:before,.widget ul:after{display:table;content:"";line-height:0}
|
||||
.widget ul:after{clear:both}
|
||||
.widget ul li { float: left; margin: 5px; }
|
||||
#calendar_wrap{margin: 0 15px 10px;}
|
||||
.widget_calendar table{width:100%;text-align:center;}
|
||||
.widget_calendar table caption{padding:10px 0 5px;font-size:15px;}
|
||||
.widget_calendar table #prev a,.widget_calendar table #next a{display:block;padding:0 10px}
|
||||
.widget_calendar table #prev{text-align:left}
|
||||
.widget_calendar table #next{text-align:right}
|
||||
.widget_calendar table tbody td,.widget_calendar table tfoot td,.widget_calendar table thead th{padding:5px 3px;border:1px solid #eee;}
|
||||
.widget_calendar table thead th{background-color:#fbfbfb}
|
||||
.widget_calendar table tbody td a{display:block;margin:0 3px;background-color:#428BCA;color:#fff}
|
||||
.widget_calendar table tbody td a:hover{background-color: #357EBD;}
|
||||
.tags{padding: 12px 13px 10px 15px;}
|
||||
.tags a:nth-child(9n){background-color: #4A4A4A;}
|
||||
.tags a:nth-child(9n+1){background-color: #428BCA;}
|
||||
.tags a:nth-child(9n+2){background-color: #5CB85C;}
|
||||
.tags a:nth-child(9n+3){background-color: #D9534F;}
|
||||
.tags a:nth-child(9n+4){background-color: #567E95;}
|
||||
.tags a:nth-child(9n+5){background-color: #B433FF;}
|
||||
.tags a:nth-child(9n+6){background-color: #00ABA9;}
|
||||
.tags a:nth-child(9n+7){background-color: #B37333;}
|
||||
.tags a:nth-child(9n+8){background-color: #FF6600;}
|
||||
.tags a{opacity: 0.80;filter:alpha(opacity=80);color: #fff;background-color: #428BCA;display: inline-block;margin: 0 5px 5px 0;padding: 0 6px;line-height: 21px}
|
||||
.tags a:hover{opacity: 1;filter:alpha(opacity=100);}
|
||||
/* widget */
|
||||
|
||||
/* exts */
|
||||
/* code,pre,blockquote */
|
||||
code,pre{padding:0 3px 2px;font-family:Monaco,Menlo,Consolas,"Courier New",monospace;font-size:10px;color:#444444;}
|
||||
code{padding:2px 4px;color:#d14;background-color:#fbfbfb;border:1px solid #e1e1e8;white-space:nowrap}
|
||||
pre{display:block;padding:9.5px;margin:0 0 10px;font-size:11px;line-height:20px;word-break:break-all;word-wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);background: rgba(238,238,238,0.55);}
|
||||
pre.prettyprint{margin-bottom:20px}
|
||||
pre code{padding:0;color:inherit;white-space:pre;white-space:pre-wrap;background-color:transparent;border:0}
|
||||
blockquote{padding:0 0 0 15px;margin:0 0 20px;border-left:5px solid #eeeeee}
|
||||
blockquote p{margin-bottom:0;font-size:15px;font-weight:300;line-height:1.25}
|
||||
blockquote small{display:block;line-height:20px;color:#999999}
|
||||
blockquote small:before{content:'\2014 \00A0'}
|
||||
blockquote.pull-right{float:right;padding-right:15px;padding-left:0;border-right:5px solid #eeeeee;border-left:0}
|
||||
blockquote.pull-right p,blockquote.pull-right small{text-align:right}
|
||||
blockquote.pull-right small:before{content:''}
|
||||
blockquote.pull-right small:after{content:'\00A0 \2014'}
|
||||
/* Pagination*/
|
||||
.pagination{padding-bottom:20px}
|
||||
.pagination ul li{display:inline}
|
||||
.pagination a,.pagination span{margin:0 5px;padding:4px 12px 3px;line-height:20px;text-decoration:none;background-color:#fff;color:#666}
|
||||
.pagination a:hover,.pagination a:focus{background-color:#ccc;color:#444}
|
||||
.pagination .current a,.pagination .current{background-color:#428BCA;color:#fff;cursor:default}
|
||||
/* RightMenu */
|
||||
#rightmenu { display:block;right: 20px; bottom: 20px; position: fixed; width: 62px; z-index: 88; }
|
||||
#rightmenu a { padding: 0;position: relative;margin-top: 20px; display: block;width: 60px; height: 60px;border: 1px solid #ddd;opacity: 0.5; background-color: #fff;background-repeat: no-repeat; cursor: pointer; transition: opacity .3s; -moz-transition: opacity .3s; -ms-transition: opacity .3s; -o-transition: opacity .3s; -webkit-transition: opacity .3s; }
|
||||
#rightmenu a:hover { opacity:1; }
|
||||
#bdshare,#rightmenu a { float: none !important; }
|
||||
#bdshare a { background: url(images/icon.png) #fff -60px -540px !important; }
|
||||
.totop { background-image: url(images/arrow.png); }
|
||||
.tocomments { background: url(images/icon.png) #fff 0px -420px; }
|
||||
.go_top { background-position: 0px -60px; }
|
||||
/* Mukio player*/
|
||||
#mkplayer-content { margin: 10px 0; }
|
||||
#mkplayer-box div { padding: 5px; background: #fff; }
|
||||
#loading-posts,#loading-comments { left: 0; top: 0;cursor: wait; background: #fff; position: absolute; height: 100%; width: 100%; z-index: 5; opacity: 0.7; }
|
||||
/*exts*/
|
||||
|
||||
.page-navigator {
|
||||
padding-bottom: 20px;
|
||||
}
|
||||
.page-navigator li {
|
||||
display: block;
|
||||
float: left;
|
||||
}
|
||||
.page-navigator a, .page-navigator span {
|
||||
background: none repeat scroll 0 0 rgba(255, 255, 255, 0.75);
|
||||
color: #666666;
|
||||
line-height: 30px;
|
||||
padding: 5px 15px;
|
||||
text-decoration: none;
|
||||
}
|
||||
.page-navigator a:hover, .page-navigator a:focus {
|
||||
background-color: #CCCCCC;
|
||||
color: #444444;
|
||||
}
|
||||
.page-navigator .current a, .page-navigator .current {
|
||||
background-color: #428BCA;
|
||||
color: #FFFFFF;
|
||||
cursor: default;
|
||||
}
|
||||
.entry-thumbnail img {
|
||||
height: auto;
|
||||
opacity: 0.85;
|
||||
width: 100%;
|
||||
}
|
||||
.tag-content {
|
||||
background: none repeat scroll 0 0 #00FFFFFF;
|
||||
|
||||
min-height: 450px;
|
||||
overflow: hidden;
|
||||
padding-bottom: 30px;
|
||||
position: relative;
|
||||
}
|
||||
.tab-label {
|
||||
background-color: #FAFAFA;
|
||||
list-style: none outside none;
|
||||
margin-bottom: 15px;
|
||||
padding: 8px 15px;
|
||||
margin:6px 6px 6px 6px;
|
||||
box-shadow: 0 1px 8px rgba(0, 0, 0, 0.15);
|
||||
}
|
||||
/* respositive */
|
||||
@media (max-width: 780px){
|
||||
.body { width: 90%; }
|
||||
.unbody { width: 90%; }
|
||||
#article { padding: 20px; }
|
||||
.widget { width: 100%;}
|
||||
.lists{padding:0;}
|
||||
.mhidden,#rightmenu .tocomments ,#rightmenu .bds_more{ display: none; }
|
||||
}
|
||||
/* respositive */
|
|
@ -0,0 +1,108 @@
|
|||
<#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>
|
||||
${topBarReplacement}
|
||||
<#include "header.ftl">
|
||||
<div class="main">
|
||||
<div class="wrapper dynamic">
|
||||
<div class="other-main">
|
||||
<#if 0 != recentComments?size>
|
||||
<div class="module side-comments">
|
||||
<h3 class="ft-gray">${recentCommentsLabel}</h3>
|
||||
<ul>
|
||||
<#list recentComments as comment>
|
||||
<li>
|
||||
<img class='comment-header'
|
||||
alt='${comment.commentName}'
|
||||
src='${comment.commentThumbnailURL}'/>
|
||||
<div class='comment-panel'>
|
||||
<span class="left">
|
||||
<#if "http://" == comment.commentURL>
|
||||
${comment.commentName}
|
||||
<#else>
|
||||
<a target="_blank" href="${comment.commentURL}">${comment.commentName}</a>
|
||||
</#if>
|
||||
</span>
|
||||
<div class="right ft-gray">
|
||||
${comment.commentDate?string("yyyy-MM-dd HH:mm:ss")}
|
||||
<a rel="nofollow" href="${servePath}${comment.commentSharpURL}">${viewLabel}</a>
|
||||
</div>
|
||||
<span class="clear"></span>
|
||||
<div class="article-body">
|
||||
${comment.commentContent}
|
||||
</div>
|
||||
</div>
|
||||
<div class='clear'></div>
|
||||
</li>
|
||||
</#list>
|
||||
</ul>
|
||||
</div>
|
||||
</#if>
|
||||
<#if 0 != mostUsedTags?size>
|
||||
<div class="module side-tags">
|
||||
<h3 class="ft-gray">${popTagsLabel}</h3>
|
||||
<ul>
|
||||
<#list mostUsedTags as tag>
|
||||
<li>
|
||||
<a rel="tag" href="${servePath}/tags/${tag.tagTitle?url('UTF-8')}"
|
||||
title="${tag.tagTitle}(${tag.tagPublishedRefCount})">
|
||||
<span>${tag.tagTitle}</span>
|
||||
</a>
|
||||
</li>
|
||||
</#list>
|
||||
</ul>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
</#if>
|
||||
<div class="clear"></div>
|
||||
<#if 0 != mostCommentArticles?size>
|
||||
<div class="module side-most-comment">
|
||||
<h3 class="ft-gray">${mostCommentArticlesLabel}</h3>
|
||||
<ul>
|
||||
<#list mostCommentArticles as article>
|
||||
<li>
|
||||
<a rel="nofollow" class="left" title="${article.articleTitle}"
|
||||
href="${servePath}${article.articlePermalink}">
|
||||
${article.articleTitle}
|
||||
</a>
|
||||
<a rel="nofollow" class="ft-gray right" href="${servePath}${article.articlePermalink}#comments">
|
||||
${article.articleCommentCount} ${commentLabel}
|
||||
</a>
|
||||
<span class="clear"></span>
|
||||
</li>
|
||||
</#list>
|
||||
</ul>
|
||||
</div>
|
||||
</#if>
|
||||
<#if 0 != mostViewCountArticles?size>
|
||||
<div class="module side-most-view">
|
||||
<h3 class="ft-gray">${mostViewCountArticlesLabel}</h3>
|
||||
<ul>
|
||||
<#list mostViewCountArticles as article>
|
||||
<li>
|
||||
<a rel="nofollow" class="left" title="${article.articleTitle}" href="${servePath}${article.articlePermalink}">
|
||||
${article.articleTitle}
|
||||
</a>
|
||||
<a rel="nofollow" class="ft-gray right" href="${servePath}${article.articlePermalink}">
|
||||
${article.articleViewCount} ${viewLabel}
|
||||
</a>
|
||||
<span class="clear"></span>
|
||||
</li>
|
||||
</#list>
|
||||
</ul>
|
||||
</div>
|
||||
</#if>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<#include "footer.ftl">
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,68 @@
|
|||
<div class="site-footer" role="contentinfo">
|
||||
<p><span class="ft-gray">© ${year}</span> - <a href="${servePath}">${blogTitle}</a>
|
||||
Powered by
|
||||
<a href="http://b3log.org" target="_blank" class="logo">
|
||||
${b3logLabel}
|
||||
<span style="color: orangered; font-weight: bold;">Solo</span></a>,
|
||||
ver ${version}
|
||||
Theme Posart Design By <a href="http://www.dsu.pw" target="_blank">Goy</a>| Edit By <a href="http://Zbmobi.com" target="_blank">GCoder</a></p>
|
||||
<p></p>
|
||||
<p> ${viewCount1Label}
|
||||
<span class="ft-gray">
|
||||
${statistic.statisticBlogViewCount}
|
||||
</span>
|
||||
|
||||
${articleCount1Label}
|
||||
<span class="ft-gray">
|
||||
${statistic.statisticPublishedBlogArticleCount}
|
||||
</span>
|
||||
|
||||
${commentCount1Label}
|
||||
<span class="ft-gray">
|
||||
${statistic.statisticPublishedBlogCommentCount}
|
||||
</span></p>
|
||||
<p></p>
|
||||
<p>鲁ICP备13005988号</p>
|
||||
|
||||
</div>
|
||||
<div id="rightmenu">
|
||||
<a href="#" onclick="Util.goTop()" class="totop"></a>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
var latkeConfig = {
|
||||
"servePath": "${servePath}",
|
||||
"staticServePath": "${staticServePath}"
|
||||
};
|
||||
|
||||
var Label = {
|
||||
"tag1Label": "${tag1Label}",
|
||||
"viewLabel": "${viewLabel}",
|
||||
"commentLabel": "${commentLabel}",
|
||||
"topArticleLabel": "${topArticleLabel}",
|
||||
"updatedLabel": "${updatedLabel}",
|
||||
"contentLabel": "${contentLabel}",
|
||||
"abstractLabel": "${abstractLabel}",
|
||||
"adminLabel": "${adminLabel}",
|
||||
"logoutLabel": "${logoutLabel}",
|
||||
"skinDirName": "${skinDirName}",
|
||||
"loginLabel": "${loginLabel}",
|
||||
"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>
|
||||
<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>
|
||||
${plugins}
|
|
@ -0,0 +1,32 @@
|
|||
<div id="header">
|
||||
<ul class="z">
|
||||
<li><a class="main" href="${servePath}" title="${blogTitle}"> ${blogTitle}</a></li>
|
||||
<#list pageNavigations as page>
|
||||
<li>
|
||||
<a href="${page.pagePermalink}" target="${page.pageOpenTarget}">${page.pageTitle}</a>
|
||||
</li>
|
||||
</#list>
|
||||
<li>
|
||||
<a href="${servePath}/tags.html">${allTagsLabel}</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#">我的作品</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#">关于我们</a>
|
||||
</li>
|
||||
<!--<li>
|
||||
<a href="${servePath}/dynamic.html">${dynamicLabel}</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-feed.do">Atom<img src="${staticServePath}/images/feed.png" alt="Atom"/></a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
After Width: | Height: | Size: 880 KiB |
After Width: | Height: | Size: 4.1 KiB |
After Width: | Height: | Size: 6.2 KiB |
After Width: | Height: | Size: 42 KiB |
After Width: | Height: | Size: 95 KiB |
After Width: | Height: | Size: 72 KiB |
After Width: | Height: | Size: 100 KiB |
After Width: | Height: | Size: 42 KiB |
After Width: | Height: | Size: 54 KiB |
After Width: | Height: | Size: 64 KiB |
After Width: | Height: | Size: 40 KiB |
After Width: | Height: | Size: 72 KiB |
After Width: | Height: | Size: 95 KiB |
After Width: | Height: | Size: 81 KiB |
After Width: | Height: | Size: 40 KiB |
After Width: | Height: | Size: 48 KiB |
After Width: | Height: | Size: 65 KiB |
After Width: | Height: | Size: 78 KiB |
After Width: | Height: | Size: 78 KiB |
After Width: | Height: | Size: 108 KiB |
After Width: | Height: | Size: 66 KiB |
After Width: | Height: | Size: 178 KiB |
After Width: | Height: | Size: 73 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 926 B |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.0 KiB |
After Width: | Height: | Size: 1.0 KiB |
After Width: | Height: | Size: 1001 B |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.0 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 4.0 KiB |
After Width: | Height: | Size: 3.7 KiB |
After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 3.6 KiB |
After Width: | Height: | Size: 8.1 KiB |
|
@ -0,0 +1,28 @@
|
|||
<#include "macro-head.ftl">
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<@head title="${blogTitle}">
|
||||
<meta name="keywords" content="${metaKeywords}"/>
|
||||
<meta name="description" content="<#list articles as article>${article.articleTitle}<#if article_has_next>,</#if></#list>"/>
|
||||
</@head>
|
||||
</head>
|
||||
<body>
|
||||
${topBarReplacement}
|
||||
<#include "header.ftl">
|
||||
<div id="wrapper">
|
||||
<a href="${servePath}" class="header mhidden"><img src="${staticServePath}/skins/${skinDirName}/images/ghead.png"></a>
|
||||
<div id="container" class="cl">
|
||||
<div class="body">
|
||||
<div id="loading-posts" style="display:none;"></div>
|
||||
<div class="posts-list">
|
||||
<#include "article-list.ftl">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<#include "footer.ftl">
|
||||
</div>
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,316 @@
|
|||
/*
|
||||
* Copyright (c) 2009, 2010, 2011, 2012, 2013, B3log Team
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
/**
|
||||
* @fileoverview ease js.
|
||||
*
|
||||
* @author <a href="mailto:LLY219@gmail.com">Liyuan Li</a>
|
||||
* @version 1.0.1.6, Nov 28, 2013
|
||||
*/
|
||||
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($("#tag").length === 1) {
|
||||
var pathnames = location.pathname.split("/");
|
||||
path = "/articles/tags/" + pathnames[pathnames.length - 1] + "/";
|
||||
} else if ($("#archive").length === 1) {
|
||||
var pathnames = location.pathname.split("/");
|
||||
path = "/articles/archives/" + pathnames[pathnames.length - 2] + "/" + pathnames[pathnames.length - 1] + "/";
|
||||
} else if ($("#author").length === 1) {
|
||||
var pathnames = location.pathname.split("/");
|
||||
path = "/articles/authors/" + pathnames[pathnames.length - 1] + "/";
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
url: latkeConfig.servePath + 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],
|
||||
lastClass = "";
|
||||
if (result.rslts.articles.length - 1 === i) {
|
||||
lastClass = " article-last";
|
||||
}
|
||||
|
||||
articlesHTML += '<li class="article' + lastClass + '">' +
|
||||
'<div class="article-title">' +
|
||||
'<h2>' +
|
||||
'<a rel="bookmark" class="ft-gray" href="' + latkeConfig.servePath + article.articlePermalink + '">' +
|
||||
article.articleTitle +
|
||||
'</a>';
|
||||
if (article.hasUpdated) {
|
||||
articlesHTML += '<sup>' + Label.updatedLabel + '</sup>';
|
||||
}
|
||||
|
||||
if (article.articlePutTop) {
|
||||
articlesHTML += '<sup>' + Label.topArticleLabel + '</sup>';
|
||||
}
|
||||
|
||||
articlesHTML += '</h2>' +
|
||||
'<div class="right">' +
|
||||
'<a rel="nofollow" class="ft-gray" href="' + latkeConfig.servePath + article.articlePermalink + '#comments">' +
|
||||
+ article.articleCommentCount + ' ' + Label.commentLabel +
|
||||
'</a> ' +
|
||||
'<a rel="nofollow" class="ft-gray" href="' + latkeConfig.servePath + article.articlePermalink + '">' +
|
||||
article.articleViewCount + ' ' + Label.viewLabel +
|
||||
'</a>' +
|
||||
'</div>' +
|
||||
'<div class="clear"></div>' +
|
||||
'</div>' +
|
||||
'<div class="article-body">' +
|
||||
'<div id="abstract' + article.oId + '">' +
|
||||
article.articleAbstract +
|
||||
'</div>' +
|
||||
'<div id="content' + article.oId + '" class="none"></div>' +
|
||||
'</div>' +
|
||||
'<div class="right ft-gray">';
|
||||
if (article.hasUpdated) {
|
||||
articlesHTML += Util.toDate(article.articleUpdateTime, 'yy-MM-dd HH:mm');
|
||||
} else {
|
||||
articlesHTML += Util.toDate(article.articleCreateTime, 'yy-MM-dd HH:mm');
|
||||
}
|
||||
|
||||
articlesHTML += ' <a href="' + latkeConfig.servePath + '/authors/' + article.authorId + '">' + article.authorName + '</a>' +
|
||||
'</div>' +
|
||||
'<div class="left ft-gray">' +
|
||||
Label.tag1Label + " ";
|
||||
|
||||
var articleTags = article.articleTags.split(",");
|
||||
for (var j = 0; j < articleTags.length; j++) {
|
||||
articlesHTML += '<a rel="tag" href="' + latkeConfig.servePath + '/tags/' + encodeURIComponent(articleTags[j]) + '">' +
|
||||
articleTags[j] + '</a>';
|
||||
|
||||
if (j < articleTags.length - 1) {
|
||||
articlesHTML += ", ";
|
||||
}
|
||||
}
|
||||
|
||||
articlesHTML += '</div>' +
|
||||
'<div class="clear"></div>' +
|
||||
'</li>';
|
||||
}
|
||||
|
||||
$(".article-last").removeClass("article-last");
|
||||
$(".main>.wrapper>ul").append(articlesHTML);
|
||||
|
||||
// 最后一页处理
|
||||
if (pagination.paginationPageCount === currentPage) {
|
||||
$more.remove();
|
||||
} else {
|
||||
$more.css("background", "none");
|
||||
}
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
var ease = {
|
||||
$header: $(".header"),
|
||||
headerH: 103,
|
||||
$body: $(".main > .wrapper"),
|
||||
$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") === location.href) {
|
||||
$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");
|
||||
},
|
||||
|
||||
initArchives: function () {
|
||||
var $archives = $(".archives");
|
||||
if ($archives.length < 1) {
|
||||
return;
|
||||
}
|
||||
|
||||
$(".footer").css("marginTop", "30px");
|
||||
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 += "<div><h3 class='ft-gray'>" + years[j] + "</h3>" + monthsHTML + "</div>";
|
||||
}
|
||||
|
||||
$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 * 310) + "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()[heights.length - 1]);
|
||||
},
|
||||
|
||||
scrollEvent: function () {
|
||||
var _it = this;
|
||||
$(window).scroll(function () {
|
||||
var y = $(window).scrollTop(),
|
||||
topH = 0;
|
||||
if ($("#top").css("display") === "block") {
|
||||
topH = $("#top").height();
|
||||
}
|
||||
|
||||
// header event
|
||||
if (y >= _it.headerH + topH) {
|
||||
_it.$nav.css("position", "fixed");
|
||||
_it.$body.css("marginTop", "55px");
|
||||
} else {
|
||||
_it.$nav.css("position" ,"inherit");
|
||||
_it.$body.css("marginTop", "0");
|
||||
}
|
||||
|
||||
// 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());
|
||||
});
|
||||
},
|
||||
|
||||
/**
|
||||
* @description 纠正评论滚动位置偏差
|
||||
*/
|
||||
scrollToCmt: function () {
|
||||
if ($(window.location.hash).length == 1) {
|
||||
$(window).scrollTop($(window.location.hash).offset().top - 60);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
(function () {
|
||||
ease.getCurrentPage();
|
||||
ease.initCommon();
|
||||
ease.scrollEvent();
|
||||
ease.setNavCurrent();
|
||||
|
||||
ease.initArchives();
|
||||
ease.setDynamic();
|
||||
})();
|
|
@ -0,0 +1,165 @@
|
|||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
Version 3, 29 June 2007
|
||||
|
||||
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
|
||||
This version of the GNU Lesser General Public License incorporates
|
||||
the terms and conditions of version 3 of the GNU General Public
|
||||
License, supplemented by the additional permissions listed below.
|
||||
|
||||
0. Additional Definitions.
|
||||
|
||||
As used herein, "this License" refers to version 3 of the GNU Lesser
|
||||
General Public License, and the "GNU GPL" refers to version 3 of the GNU
|
||||
General Public License.
|
||||
|
||||
"The Library" refers to a covered work governed by this License,
|
||||
other than an Application or a Combined Work as defined below.
|
||||
|
||||
An "Application" is any work that makes use of an interface provided
|
||||
by the Library, but which is not otherwise based on the Library.
|
||||
Defining a subclass of a class defined by the Library is deemed a mode
|
||||
of using an interface provided by the Library.
|
||||
|
||||
A "Combined Work" is a work produced by combining or linking an
|
||||
Application with the Library. The particular version of the Library
|
||||
with which the Combined Work was made is also called the "Linked
|
||||
Version".
|
||||
|
||||
The "Minimal Corresponding Source" for a Combined Work means the
|
||||
Corresponding Source for the Combined Work, excluding any source code
|
||||
for portions of the Combined Work that, considered in isolation, are
|
||||
based on the Application, and not on the Linked Version.
|
||||
|
||||
The "Corresponding Application Code" for a Combined Work means the
|
||||
object code and/or source code for the Application, including any data
|
||||
and utility programs needed for reproducing the Combined Work from the
|
||||
Application, but excluding the System Libraries of the Combined Work.
|
||||
|
||||
1. Exception to Section 3 of the GNU GPL.
|
||||
|
||||
You may convey a covered work under sections 3 and 4 of this License
|
||||
without being bound by section 3 of the GNU GPL.
|
||||
|
||||
2. Conveying Modified Versions.
|
||||
|
||||
If you modify a copy of the Library, and, in your modifications, a
|
||||
facility refers to a function or data to be supplied by an Application
|
||||
that uses the facility (other than as an argument passed when the
|
||||
facility is invoked), then you may convey a copy of the modified
|
||||
version:
|
||||
|
||||
a) under this License, provided that you make a good faith effort to
|
||||
ensure that, in the event an Application does not supply the
|
||||
function or data, the facility still operates, and performs
|
||||
whatever part of its purpose remains meaningful, or
|
||||
|
||||
b) under the GNU GPL, with none of the additional permissions of
|
||||
this License applicable to that copy.
|
||||
|
||||
3. Object Code Incorporating Material from Library Header Files.
|
||||
|
||||
The object code form of an Application may incorporate material from
|
||||
a header file that is part of the Library. You may convey such object
|
||||
code under terms of your choice, provided that, if the incorporated
|
||||
material is not limited to numerical parameters, data structure
|
||||
layouts and accessors, or small macros, inline functions and templates
|
||||
(ten or fewer lines in length), you do both of the following:
|
||||
|
||||
a) Give prominent notice with each copy of the object code that the
|
||||
Library is used in it and that the Library and its use are
|
||||
covered by this License.
|
||||
|
||||
b) Accompany the object code with a copy of the GNU GPL and this license
|
||||
document.
|
||||
|
||||
4. Combined Works.
|
||||
|
||||
You may convey a Combined Work under terms of your choice that,
|
||||
taken together, effectively do not restrict modification of the
|
||||
portions of the Library contained in the Combined Work and reverse
|
||||
engineering for debugging such modifications, if you also do each of
|
||||
the following:
|
||||
|
||||
a) Give prominent notice with each copy of the Combined Work that
|
||||
the Library is used in it and that the Library and its use are
|
||||
covered by this License.
|
||||
|
||||
b) Accompany the Combined Work with a copy of the GNU GPL and this license
|
||||
document.
|
||||
|
||||
c) For a Combined Work that displays copyright notices during
|
||||
execution, include the copyright notice for the Library among
|
||||
these notices, as well as a reference directing the user to the
|
||||
copies of the GNU GPL and this license document.
|
||||
|
||||
d) Do one of the following:
|
||||
|
||||
0) Convey the Minimal Corresponding Source under the terms of this
|
||||
License, and the Corresponding Application Code in a form
|
||||
suitable for, and under terms that permit, the user to
|
||||
recombine or relink the Application with a modified version of
|
||||
the Linked Version to produce a modified Combined Work, in the
|
||||
manner specified by section 6 of the GNU GPL for conveying
|
||||
Corresponding Source.
|
||||
|
||||
1) Use a suitable shared library mechanism for linking with the
|
||||
Library. A suitable mechanism is one that (a) uses at run time
|
||||
a copy of the Library already present on the user's computer
|
||||
system, and (b) will operate properly with a modified version
|
||||
of the Library that is interface-compatible with the Linked
|
||||
Version.
|
||||
|
||||
e) Provide Installation Information, but only if you would otherwise
|
||||
be required to provide such information under section 6 of the
|
||||
GNU GPL, and only to the extent that such information is
|
||||
necessary to install and execute a modified version of the
|
||||
Combined Work produced by recombining or relinking the
|
||||
Application with a modified version of the Linked Version. (If
|
||||
you use option 4d0, the Installation Information must accompany
|
||||
the Minimal Corresponding Source and Corresponding Application
|
||||
Code. If you use option 4d1, you must provide the Installation
|
||||
Information in the manner specified by section 6 of the GNU GPL
|
||||
for conveying Corresponding Source.)
|
||||
|
||||
5. Combined Libraries.
|
||||
|
||||
You may place library facilities that are a work based on the
|
||||
Library side by side in a single library together with other library
|
||||
facilities that are not Applications and are not covered by this
|
||||
License, and convey such a combined library under terms of your
|
||||
choice, if you do both of the following:
|
||||
|
||||
a) Accompany the combined library with a copy of the same work based
|
||||
on the Library, uncombined with any other library facilities,
|
||||
conveyed under the terms of this License.
|
||||
|
||||
b) Give prominent notice with the combined library that part of it
|
||||
is a work based on the Library, and explaining where to find the
|
||||
accompanying uncombined form of the same work.
|
||||
|
||||
6. Revised Versions of the GNU Lesser General Public License.
|
||||
|
||||
The Free Software Foundation may publish revised and/or new versions
|
||||
of the GNU Lesser General Public License from time to time. Such new
|
||||
versions will be similar in spirit to the present version, but may
|
||||
differ in detail to address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the
|
||||
Library as you received it specifies that a certain numbered version
|
||||
of the GNU Lesser General Public License "or any later version"
|
||||
applies to it, you have the option of following the terms and
|
||||
conditions either of that published version or of any later version
|
||||
published by the Free Software Foundation. If the Library as you
|
||||
received it does not specify a version number of the GNU Lesser
|
||||
General Public License, you may choose any version of the GNU Lesser
|
||||
General Public License ever published by the Free Software Foundation.
|
||||
|
||||
If the Library as you received it specifies that a proxy can decide
|
||||
whether future versions of the GNU Lesser General Public License shall
|
||||
apply, that proxy's public statement of acceptance of any version is
|
||||
permanent authorization for you to choose that version for the
|
||||
Library.
|
|
@ -0,0 +1,20 @@
|
|||
Copyright (c) 2003, 2004 Jim Weirich
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be
|
||||
included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
@ -0,0 +1,120 @@
|
|||
$background: white !default;
|
||||
|
||||
$line_alt1_background: $background !default;
|
||||
$line_alt2_background: $background !default;
|
||||
|
||||
$line_highlighted_background: #e0e0e0 !default;
|
||||
$line_highlighted_number: black !default;
|
||||
|
||||
$gutter_text: #afafaf !default;
|
||||
$gutter_border_color: #6ce26c !default;
|
||||
$gutter_border: 3px solid $gutter_border_color !default;
|
||||
|
||||
$toolbar_collapsed_a: #00f !default;
|
||||
$toolbar_collapsed_a_hover: #f00 !default;
|
||||
$toolbar_collapsed_background: #fff !default;
|
||||
$toolbar_collapsed_border: 1px solid $gutter_border_color !default;
|
||||
|
||||
$toolbar_a: #fff !default;
|
||||
$toolbar_a_hover: #000 !default;
|
||||
$toolbar_background: $gutter_border_color !default;
|
||||
$toolbar_border: none !default;
|
||||
|
||||
$code_plain: black !default;
|
||||
$code_comments: #008200 !default;
|
||||
$code_string: blue !default;
|
||||
$code_keyword: #006699 !default;
|
||||
$code_preprocessor: gray !default;
|
||||
$code_variable: #aa7700 !default;
|
||||
$code_value: #009900 !default;
|
||||
$code_functions: #ff1493 !default;
|
||||
$code_constants: #0066cc !default;
|
||||
$code_script: $code_keyword !default;
|
||||
$code_script_background: none !default;
|
||||
$code_color1: gray !default;
|
||||
$code_color2: #ff1493 !default;
|
||||
$code_color3: red !default;
|
||||
|
||||
$caption_color: $code_plain !default;
|
||||
|
||||
// Interface elements.
|
||||
.syntaxhighlighter {
|
||||
background-color: $background !important;
|
||||
|
||||
// Highlighed line number
|
||||
.line {
|
||||
&.alt1 { background-color: $line_alt1_background !important; }
|
||||
&.alt2 { background-color: $line_alt2_background !important; }
|
||||
|
||||
// Highlighed line
|
||||
&.highlighted {
|
||||
&.alt1, &.alt2 { background-color: $line_highlighted_background !important; }
|
||||
&.number { color: $line_highlighted_number !important; }
|
||||
}
|
||||
}
|
||||
|
||||
table {
|
||||
caption {
|
||||
color: $caption_color !important;
|
||||
}
|
||||
}
|
||||
|
||||
// Add border to the lines
|
||||
.gutter {
|
||||
color: $gutter_text !important;
|
||||
.line {
|
||||
border-right: $gutter_border !important;
|
||||
|
||||
&.highlighted {
|
||||
background-color: $gutter_border_color !important;
|
||||
color: $background !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&.printing .line .content { border: none !important; }
|
||||
|
||||
&.collapsed {
|
||||
overflow: visible !important;
|
||||
|
||||
.toolbar {
|
||||
color: $toolbar_collapsed_a !important;
|
||||
background: $toolbar_collapsed_background !important;
|
||||
border: $toolbar_collapsed_border !important;
|
||||
|
||||
a {
|
||||
color: $toolbar_collapsed_a !important;
|
||||
&:hover { color: $toolbar_collapsed_a_hover !important; }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.toolbar {
|
||||
color: $toolbar_a !important;
|
||||
background: $toolbar_background !important;
|
||||
border: $toolbar_border !important;
|
||||
a {
|
||||
color: $toolbar_a !important;
|
||||
&:hover { color: $toolbar_a_hover !important; }
|
||||
}
|
||||
}
|
||||
|
||||
// Actual syntax highlighter colors.
|
||||
.plain, .plain a { color: $code_plain !important; }
|
||||
.comments, .comments a { color: $code_comments !important; }
|
||||
.string, .string a { color: $code_string !important; }
|
||||
.keyword { color: $code_keyword !important; }
|
||||
.preprocessor { color: $code_preprocessor !important; }
|
||||
.variable { color: $code_variable !important; }
|
||||
.value { color: $code_value !important; }
|
||||
.functions { color: $code_functions !important; }
|
||||
.constants { color: $code_constants !important; }
|
||||
.script {
|
||||
font-weight: bold !important;
|
||||
color: $code_script !important;
|
||||
background-color: $code_script_background !important;
|
||||
}
|
||||
.color1, .color1 a { color: $code_color1 !important; }
|
||||
.color2, .color2 a { color: $code_color2 !important; }
|
||||
.color3, .color3 a { color: $code_color3 !important; }
|
||||
}
|
|
@ -0,0 +1,14 @@
|
|||
environment = :production
|
||||
project_type = :stand_alone
|
||||
http_path = "/"
|
||||
css_dir = "../styles"
|
||||
sass_dir = "."
|
||||
images_dir = "images"
|
||||
sass_options = {
|
||||
:line_numbers => false,
|
||||
:debug_info => false
|
||||
}
|
||||
|
||||
# output_style = :compressed
|
||||
# output_style = :compact
|
||||
output_style = :expanded
|
|
@ -0,0 +1,216 @@
|
|||
@mixin round_corners_custom($top, $right, $bottom, $left) {
|
||||
-moz-border-radius: $top $right $bottom $left !important;
|
||||
-webkit-border-radius: $top $right $bottom $left !important;
|
||||
}
|
||||
|
||||
@mixin round_corners($radius) {
|
||||
@include round_corners_custom($radius, $radius, $radius, $radius);
|
||||
}
|
||||
|
||||
.syntaxhighlighter {
|
||||
a,
|
||||
div,
|
||||
code,
|
||||
table,
|
||||
table td,
|
||||
table tr,
|
||||
table tbody,
|
||||
table thead,
|
||||
table caption,
|
||||
textarea {
|
||||
@include round_corners(0);
|
||||
|
||||
background: none !important;
|
||||
border: 0 !important;
|
||||
bottom: auto !important;
|
||||
float: none !important;
|
||||
height: auto !important;
|
||||
left: auto !important;
|
||||
line-height: 1.1em !important;
|
||||
margin: 0 !important;
|
||||
outline: 0 !important;
|
||||
overflow: visible !important;
|
||||
padding: 0 !important;
|
||||
position: static !important;
|
||||
right: auto !important;
|
||||
text-align: left !important;
|
||||
top: auto !important;
|
||||
vertical-align: baseline !important;
|
||||
width: auto !important;
|
||||
box-sizing: content-box !important;
|
||||
font: {
|
||||
family: "Consolas", "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important;
|
||||
weight: normal !important;
|
||||
style: normal !important;
|
||||
size: 1em !important;
|
||||
}
|
||||
min: {
|
||||
// For IE8, FF & WebKit
|
||||
height: inherit !important;
|
||||
// For IE7
|
||||
height: auto !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.syntaxhighlighter {
|
||||
width: 100% !important;
|
||||
margin: 1em 0 1em 0 !important;
|
||||
|
||||
position: relative !important;
|
||||
overflow: auto !important;
|
||||
font-size: 1em !important;
|
||||
|
||||
&.source { overflow: hidden !important; }
|
||||
|
||||
// set up bold and italic
|
||||
.bold { font-weight: bold !important; }
|
||||
.italic { font-style: italic !important; }
|
||||
|
||||
.line { white-space: pre !important; }
|
||||
|
||||
// main table and columns
|
||||
table {
|
||||
width: 100% !important;
|
||||
caption {
|
||||
text-align: left !important;
|
||||
padding: .5em 0 0.5em 1em !important;
|
||||
}
|
||||
|
||||
td.code {
|
||||
width: 100% !important;
|
||||
|
||||
.container {
|
||||
position: relative !important;
|
||||
|
||||
textarea {
|
||||
box-sizing: border-box !important;
|
||||
position: absolute !important;
|
||||
left: 0 !important;
|
||||
top: 0 !important;
|
||||
width: 100% !important;
|
||||
height: 100% !important;
|
||||
border: none !important;
|
||||
background: white !important;
|
||||
padding-left: 1em !important;
|
||||
overflow: hidden !important;
|
||||
white-space: pre !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// middle spacing between line numbers and lines
|
||||
td.gutter .line {
|
||||
text-align: right !important;
|
||||
padding: 0 0.5em 0 1em !important;
|
||||
}
|
||||
|
||||
td.code .line {
|
||||
padding: 0 1em !important;
|
||||
}
|
||||
}
|
||||
|
||||
&.nogutter {
|
||||
td.code {
|
||||
.container textarea, .line { padding-left: 0em !important; }
|
||||
}
|
||||
}
|
||||
|
||||
&.show { display: block !important; }
|
||||
|
||||
// Adjust some properties when collapsed
|
||||
&.collapsed {
|
||||
table { display: none !important; }
|
||||
|
||||
.toolbar {
|
||||
padding: 0.1em 0.8em 0em 0.8em !important;
|
||||
font-size: 1em !important;
|
||||
position: static !important;
|
||||
width: auto !important;
|
||||
height: auto !important;
|
||||
|
||||
span {
|
||||
display: inline !important;
|
||||
margin-right: 1em !important;
|
||||
|
||||
a {
|
||||
padding: 0 !important;
|
||||
display: none !important;
|
||||
&.expandSource { display: inline !important; }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Styles for the toolbar
|
||||
.toolbar {
|
||||
position: absolute !important;
|
||||
right: 1px !important;
|
||||
top: 1px !important;
|
||||
width: 11px !important;
|
||||
height: 11px !important;
|
||||
font-size: 10px !important;
|
||||
z-index: 10 !important;
|
||||
|
||||
span.title { display: inline !important; }
|
||||
|
||||
a {
|
||||
display: block !important;
|
||||
text-align: center !important;
|
||||
text-decoration: none !important;
|
||||
padding-top: 1px !important;
|
||||
|
||||
&.expandSource { display: none !important; }
|
||||
}
|
||||
}
|
||||
|
||||
&.ie {
|
||||
font-size: .9em !important;
|
||||
padding: 1px 0 1px 0 !important;
|
||||
|
||||
.toolbar {
|
||||
line-height: 8px !important;
|
||||
a {
|
||||
padding-top: 0px !important;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Print view.
|
||||
// Colors are based on the default theme without background.
|
||||
&.printing {
|
||||
.line.alt1 .content,
|
||||
.line.alt2 .content,
|
||||
.line.highlighted .number,
|
||||
.line.highlighted.alt1 .content,
|
||||
.line.highlighted.alt2 .content { background: none !important; }
|
||||
|
||||
// Gutter line numbers
|
||||
.line {
|
||||
.number { color: #bbbbbb !important; }
|
||||
// Add border to the lines
|
||||
.content { color: black !important; }
|
||||
}
|
||||
|
||||
// Toolbar when visible
|
||||
.toolbar { display: none !important; }
|
||||
a { text-decoration: none !important; }
|
||||
.plain, .plain a { color: black !important; }
|
||||
.comments, .comments a { color: #008200 !important; }
|
||||
.string, .string a { color: blue !important; }
|
||||
.keyword {
|
||||
color: #006699 !important;
|
||||
font-weight: bold !important;
|
||||
}
|
||||
.preprocessor { color: gray !important; }
|
||||
.variable { color: #aa7700 !important; }
|
||||
.value { color: #009900 !important; }
|
||||
.functions { color: #ff1493 !important; }
|
||||
.constants { color: #0066cc !important; }
|
||||
.script { font-weight: bold !important; }
|
||||
.color1, .color1 a { color: gray !important; }
|
||||
.color2, .color2 a { color: #ff1493 !important; }
|
||||
.color3, .color3 a { color: red !important; }
|
||||
.break, .break a { color: black !important; }
|
||||
}
|
||||
}
|
|
@ -0,0 +1,2 @@
|
|||
@import "shCore.scss";
|
||||
@import "shThemeDefault.scss";
|
|
@ -0,0 +1,2 @@
|
|||
@import "shCore.scss";
|
||||
@import "shThemeDjango.scss";
|
|
@ -0,0 +1,2 @@
|
|||
@import "shCore.scss";
|
||||
@import "shThemeEclipse.scss";
|
|
@ -0,0 +1,2 @@
|
|||
@import "shCore.scss";
|
||||
@import "shThemeEmacs.scss";
|
|
@ -0,0 +1,2 @@
|
|||
@import "shCore.scss";
|
||||
@import "shThemeFadeToGrey.scss";
|
|
@ -0,0 +1,2 @@
|
|||
@import "shCore.scss";
|
||||
@import "shThemeMDUltra.scss";
|
|
@ -0,0 +1,2 @@
|
|||
@import "shCore.scss";
|
||||
@import "shThemeMidnight.scss";
|
|
@ -0,0 +1,2 @@
|
|||
@import "shCore.scss";
|
||||
@import "shThemeRDark.scss";
|
|
@ -0,0 +1,7 @@
|
|||
// Default Syntax Highlighter theme.
|
||||
|
||||
@import "_theme_template.scss";
|
||||
|
||||
.syntaxhighlighter {
|
||||
.keyword { font-weight: bold !important; }
|
||||
}
|
|
@ -0,0 +1,36 @@
|
|||
// Django SyntaxHighlighter theme
|
||||
|
||||
$background: #0a2b1d !default;
|
||||
|
||||
$line_highlighted_background: #233729 !default;
|
||||
$line_highlighted_number: white !default;
|
||||
|
||||
$gutter_text: #497958 !default;
|
||||
$gutter_border_color: #41a83e !default;
|
||||
|
||||
$toolbar_collapsed_a: #96dd3b !default;
|
||||
$toolbar_collapsed_a_hover: #fff !default;
|
||||
$toolbar_collapsed_background: #000 !default;
|
||||
|
||||
$toolbar_a: #fff !default;
|
||||
$toolbar_a_hover: #ffe862 !default;
|
||||
|
||||
$code_plain: #f8f8f8 !default;
|
||||
$code_comments: #336442 !default;
|
||||
$code_string: #9df39f !default;
|
||||
$code_keyword: #96dd3b !default;
|
||||
$code_preprocessor: #91bb9e !default;
|
||||
$code_variable: #ffaa3e !default;
|
||||
$code_value: #f7e741 !default;
|
||||
$code_functions: #ffaa3e !default;
|
||||
$code_constants: #e0e8ff !default;
|
||||
$code_color1: #eb939a !default;
|
||||
$code_color2: #91bb9e !default;
|
||||
$code_color3: #edef7d !default;
|
||||
|
||||
@import "_theme_template.scss";
|
||||
|
||||
.syntaxhighlighter {
|
||||
.comments { font-style: italic !important; }
|
||||
.keyword { font-weight: bold !important; }
|
||||
}
|
|
@ -0,0 +1,48 @@
|
|||
// Eclipse IDE SyntaxHighlighter color theme
|
||||
// (C) Code-House
|
||||
// :http//blog.code-house.org/2009/10/xml-i-adnotacje-kod-ogolnego-przeznaczenia-i-jpa/
|
||||
|
||||
$background: #fff !default;
|
||||
|
||||
$line_highlighted_background: #c3defe !default;
|
||||
$line_highlighted_number: #fff !default;
|
||||
|
||||
$gutter_text: #787878 !default;
|
||||
$gutter_border_color: #d4d0c8 !default;
|
||||
|
||||
$toolbar_collapsed_a: #3f5fbf !default;
|
||||
$toolbar_collapsed_a_hover: #aa7700 !default;
|
||||
$toolbar_collapsed_background: #fff !default;
|
||||
|
||||
$toolbar_a: #a0a0a0 !default;
|
||||
$toolbar_a_hover: red !default;
|
||||
|
||||
$code_plain: black !default;
|
||||
$code_comments: #3f5fbf !default;
|
||||
$code_string: #2a00ff !default;
|
||||
$code_keyword: #7f0055 !default;
|
||||
$code_preprocessor: #646464 !default;
|
||||
$code_variable: #aa7700 !default;
|
||||
$code_value: #009900 !default;
|
||||
$code_functions: #ff1493 !default;
|
||||
$code_constants: #0066cc !default;
|
||||
$code_color1: gray !default;
|
||||
$code_color2: #ff1493 !default;
|
||||
$code_color3: red !default;
|
||||
|
||||
@import "_theme_template.scss";
|
||||
|
||||
.syntaxhighlighter {
|
||||
.keyword { font-weight: bold !important; }
|
||||
|
||||
.xml {
|
||||
.keyword {
|
||||
color: #3f7f7f !important;
|
||||
font-weight: normal !important; }
|
||||
.color1, .color1 a { color: #7f007f !important; }
|
||||
.string {
|
||||
font-style: italic !important;
|
||||
color: #2a00ff !important;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,32 @@
|
|||
// Emacs SyntaxHighlighter theme based on theme by Joshua Emmons
|
||||
// http://www.skia.net/
|
||||
|
||||
$background: black !default;
|
||||
|
||||
$line_highlighted_background: #2A3133 !default;
|
||||
$line_highlighted_number: white !default;
|
||||
|
||||
$gutter_text: #d3d3d3 !default;
|
||||
$gutter_border_color: #990000 !default;
|
||||
|
||||
$toolbar_collapsed_a: #ebdb8d !default;
|
||||
$toolbar_collapsed_a_hover: #ff7d27 !default;
|
||||
$toolbar_collapsed_background: black !default;
|
||||
|
||||
$toolbar_a: #fff !default;
|
||||
$toolbar_a_hover: #9ccff4 !default;
|
||||
|
||||
$code_plain: #d3d3d3 !default;
|
||||
$code_comments: #ff7d27 !default;
|
||||
$code_string: #ff9e7b !default;
|
||||
$code_keyword: aqua !default;
|
||||
$code_preprocessor: #aec4de !default;
|
||||
$code_variable: #ffaa3e !default;
|
||||
$code_value: #009900 !default;
|
||||
$code_functions: #81cef9 !default;
|
||||
$code_constants: #ff9e7b !default;
|
||||
$code_color1: #ebdb8d !default;
|
||||
$code_color2: #ff7d27 !default;
|
||||
$code_color3: #aec4de !default;
|
||||
|
||||
@import "_theme_template.scss";
|
|
@ -0,0 +1,36 @@
|
|||
// Fade to Grey SyntaxHighlighter theme based on theme by Brasten Sager
|
||||
// :http//www.ibrasten.com/
|
||||
|
||||
$background: #121212 !default;
|
||||
|
||||
$line_highlighted_background: #2C2C29 !default;
|
||||
$line_highlighted_number: white !default;
|
||||
|
||||
$gutter_text: #afafaf !default;
|
||||
$gutter_border_color: #3185b9 !default;
|
||||
|
||||
$toolbar_collapsed_a: #3185b9 !default;
|
||||
$toolbar_collapsed_a_hover: #d01d33 !default;
|
||||
$toolbar_collapsed_background: black !default;
|
||||
|
||||
$toolbar_a: #fff !default;
|
||||
$toolbar_a_hover: #96daff !default;
|
||||
|
||||
$code_plain: white !default;
|
||||
$code_comments: #696854 !default;
|
||||
$code_string: #e3e658 !default;
|
||||
$code_keyword: #d01d33 !default;
|
||||
$code_preprocessor: #435a5f !default;
|
||||
$code_variable: #898989 !default;
|
||||
$code_value: #009900 !default;
|
||||
$code_functions: #aaaaaa !default;
|
||||
$code_constants: #96daff !default;
|
||||
$code_color1: #ffc074 !default;
|
||||
$code_color2: #4a8cdb !default;
|
||||
$code_color3: #96daff !default;
|
||||
|
||||
@import "_theme_template.scss";
|
||||
|
||||
.syntaxhighlighter {
|
||||
.functions { font-weight: bold !important; }
|
||||
}
|
|
@ -0,0 +1,32 @@
|
|||
// MDUltra SyntaxHighlighter theme based on Midnight Theme
|
||||
// http://www.mddev.co.uk/
|
||||
|
||||
$background: #222222 !default;
|
||||
|
||||
$line_highlighted_background: #253e5a !default;
|
||||
$line_highlighted_number: white !default;
|
||||
|
||||
$gutter_text: #38566f !default;
|
||||
$gutter_border_color: #435a5f !default;
|
||||
|
||||
$toolbar_collapsed_a: #428bdd !default;
|
||||
$toolbar_collapsed_a_hover: lime !default;
|
||||
$toolbar_collapsed_background: black !default;
|
||||
|
||||
$toolbar_a: #aaaaff !default;
|
||||
$toolbar_a_hover: #9ccff4 !default;
|
||||
|
||||
$code_plain: lime !default;
|
||||
$code_comments: #428bdd !default;
|
||||
$code_string: lime !default;
|
||||
$code_keyword: #aaaaff !default;
|
||||
$code_preprocessor: #8aa6c1 !default;
|
||||
$code_variable: aqua !default;
|
||||
$code_value: #f7e741 !default;
|
||||
$code_functions: #ff8000 !default;
|
||||
$code_constants: yellow !default;
|
||||
$code_color1: red !default;
|
||||
$code_color2: yellow !default;
|
||||
$code_color3: #ffaa3e !default;
|
||||
|
||||
@import "_theme_template.scss";
|
|
@ -0,0 +1,32 @@
|
|||
// Midnight SyntaxHighlighter theme based on theme by J.D. Myers
|
||||
// http://webdesign.lsnjd.com/
|
||||
|
||||
$background: #0f192a !default;
|
||||
|
||||
$line_highlighted_background: #253e5a !default;
|
||||
$line_highlighted_number: #38566f !default;
|
||||
|
||||
$gutter_text: #afafaf !default;
|
||||
$gutter_border_color: #435a5f !default;
|
||||
|
||||
$toolbar_collapsed_a: #428bdd !default;
|
||||
$toolbar_collapsed_a_hover: #1dc116 !default;
|
||||
$toolbar_collapsed_background: #000 !default;
|
||||
|
||||
$toolbar_a: #D1EDFF !default;
|
||||
$toolbar_a_hover: #8aa6c1 !default;
|
||||
|
||||
$code_plain: #d1edff !default;
|
||||
$code_comments: #428bdd !default;
|
||||
$code_string: #1dc116 !default;
|
||||
$code_keyword: #b43d3d !default;
|
||||
$code_preprocessor: #8aa6c1 !default;
|
||||
$code_variable: #ffaa3e !default;
|
||||
$code_value: #f7e741 !default;
|
||||
$code_functions: #ffaa3e !default;
|
||||
$code_constants: #e0e8ff !default;
|
||||
$code_color1: #f8bb00 !default;
|
||||
$code_color2: white !default;
|
||||
$code_color3: #ffaa3e !default;
|
||||
|
||||
@import "_theme_template.scss";
|