🚧 #12256 skins
This commit is contained in:
parent
bf212920ad
commit
b48eac788f
@ -13,7 +13,7 @@
|
||||
<div class="main-wrap">
|
||||
<main>
|
||||
<div class="title">
|
||||
<h2 style="border-bottom:0">
|
||||
<h2 class="tip">
|
||||
<i class="icon-inbox"></i>
|
||||
|
||||
<#if "en" == localeString?substring(0, 2)>
|
||||
|
29
9IPHP/category-articles.ftl
Normal file
29
9IPHP/category-articles.ftl
Normal file
@ -0,0 +1,29 @@
|
||||
<#include "macro-head.ftl">
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<@head title="${category.categoryTitle} - ${blogTitle}">
|
||||
<meta name="keywords" content="${metaKeywords},${category.categoryTitle}"/>
|
||||
<meta name="description" content="<#list articles as article>${article.articleTitle}<#if article_has_next>,</#if></#list>"/>
|
||||
</@head>
|
||||
</head>
|
||||
<body>
|
||||
<#include "header.ftl">
|
||||
<div class="wrapper">
|
||||
<div class="main-wrap">
|
||||
<main>
|
||||
<div class="title">
|
||||
<h2 class="tip"><i class="icon-category"></i>
|
||||
${category.categoryTitle}
|
||||
<small>${category.categoryDescription}</small>
|
||||
</h2>
|
||||
|
||||
</div>
|
||||
<#include "article-list.ftl">
|
||||
</main>
|
||||
<#include "side.ftl">
|
||||
</div>
|
||||
</div>
|
||||
<#include "footer.ftl">
|
||||
</body>
|
||||
</html>
|
@ -495,25 +495,6 @@ a[class*=" icon-"]:hover {
|
||||
text-decoration: none;
|
||||
color: #4285f4
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'icomoon';
|
||||
src: url("fonts/icomoon.eot?68j667");
|
||||
src: url("fonts/icomoon.eot?68j667#iefix") format("embedded-opentype"), url("fonts/icomoon.ttf?68j667") format("truetype"), url("fonts/icomoon.woff?68j667") format("woff"), url("fonts/icomoon.svg?68j667#icomoon") format("svg");
|
||||
font-weight: normal;
|
||||
font-style: normal
|
||||
}
|
||||
[class^="icon-"],
|
||||
[class*=" icon-"] {
|
||||
font-family: 'icomoon' !important;
|
||||
speak: none;
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
font-variant: normal;
|
||||
text-transform: none;
|
||||
line-height: 1;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale
|
||||
}
|
||||
.em00, .em01, .em02, .em03, .em04, .em05, .em06, .em07, .em08, .em09,
|
||||
.em10, .em11, .em12, .em13, .em14 {
|
||||
cursor: pointer;
|
||||
@ -593,6 +574,32 @@ a[class*=" icon-"]:hover {
|
||||
/* end common */
|
||||
|
||||
/* start reset common */
|
||||
@font-face {
|
||||
font-family: 'icomoon';
|
||||
src: url('fonts/icomoon.eot?oyqnlj');
|
||||
src: url('fonts/icomoon.eot?oyqnlj#iefix') format('embedded-opentype'),
|
||||
url('fonts/icomoon.ttf?oyqnlj') format('truetype'),
|
||||
url('fonts/icomoon.woff?oyqnlj') format('woff'),
|
||||
url('fonts/icomoon.svg?oyqnlj#icomoon') format('svg');
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
[class^="icon-"], [class*=" icon-"] {
|
||||
/* use !important to prevent issues with browser extensions that change fonts */
|
||||
font-family: 'icomoon' !important;
|
||||
speak: none;
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
font-variant: normal;
|
||||
text-transform: none;
|
||||
line-height: 1;
|
||||
|
||||
/* Better Font Rendering =========== */
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
}
|
||||
|
||||
.icon-list:before {
|
||||
content: "\f0ca";
|
||||
}
|
||||
@ -623,6 +630,9 @@ a[class*=" icon-"]:hover {
|
||||
.icon-refresh:before {
|
||||
content: "\f021";
|
||||
}
|
||||
.icon-category:before {
|
||||
content: "\e9bc";
|
||||
}
|
||||
.icon-logout:before {
|
||||
content: "\ea14";
|
||||
}
|
||||
@ -641,6 +651,7 @@ a[class*=" icon-"]:hover {
|
||||
.icon-rss:before {
|
||||
content: "\e901";
|
||||
}
|
||||
|
||||
*::selection {
|
||||
background: none repeat scroll 0% 0% #3D4450;
|
||||
color: #FFF;
|
||||
@ -1051,6 +1062,10 @@ aside.has-toc > section:last-child {
|
||||
border-bottom: 1px solid #f1f1f1;
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
.title > h2.tip {
|
||||
border-bottom: 0
|
||||
}
|
||||
/* end article list */
|
||||
|
||||
/* start comments */
|
||||
|
2
9IPHP/css/base.min.css
vendored
2
9IPHP/css/base.min.css
vendored
File diff suppressed because one or more lines are too long
Binary file not shown.
@ -11,6 +11,7 @@
|
||||
<glyph unicode="" glyph-name="rss" d="M136.294 209.070c-75.196 0-136.292-61.334-136.292-136.076 0-75.154 61.1-135.802 136.292-135.802 75.466 0 136.494 60.648 136.494 135.802-0.002 74.742-61.024 136.076-136.494 136.076zM0.156 612.070v-196.258c127.784 0 247.958-49.972 338.458-140.512 90.384-90.318 140.282-211.036 140.282-339.3h197.122c-0.002 372.82-303.282 676.070-675.862 676.070zM0.388 960v-196.356c455.782 0 826.756-371.334 826.756-827.644h196.856c0 564.47-459.254 1024-1023.612 1024z" />
|
||||
<glyph unicode="" glyph-name="register" d="M384 224c0 151.234 95.874 280.486 230.032 330.2 16.28 36.538 25.968 77.164 25.968 117.8 0 159.058 0 288-192 288s-192-128.942-192-288c0-99.060 57.502-198.104 128-237.832v-52.78c-217.102-17.748-384-124.42-384-253.388h397.306c-8.664 30.53-13.306 62.732-13.306 96zM736 512c-159.058 0-288-128.942-288-288s128.942-288 288-288c159.056 0 288 128.942 288 288s-128.942 288-288 288zM896 192h-128v-128h-64v128h-128v64h128v128h64v-128h128v-64z" />
|
||||
<glyph unicode="" glyph-name="setting" d="M933.79 349.75c-53.726 93.054-21.416 212.304 72.152 266.488l-100.626 174.292c-28.75-16.854-62.176-26.518-97.846-26.518-107.536 0-194.708 87.746-194.708 195.99h-201.258c0.266-33.41-8.074-67.282-25.958-98.252-53.724-93.056-173.156-124.702-266.862-70.758l-100.624-174.292c28.97-16.472 54.050-40.588 71.886-71.478 53.638-92.908 21.512-211.92-71.708-266.224l100.626-174.292c28.65 16.696 61.916 26.254 97.4 26.254 107.196 0 194.144-87.192 194.7-194.958h201.254c-0.086 33.074 8.272 66.57 25.966 97.218 53.636 92.906 172.776 124.594 266.414 71.012l100.626 174.29c-28.78 16.466-53.692 40.498-71.434 71.228zM512 240.668c-114.508 0-207.336 92.824-207.336 207.334 0 114.508 92.826 207.334 207.336 207.334 114.508 0 207.332-92.826 207.332-207.334-0.002-114.51-92.824-207.334-207.332-207.334z" />
|
||||
<glyph unicode="" glyph-name="category" d="M976 192h-16v208c0 61.756-50.242 112-112 112h-272v128h16c26.4 0 48 21.6 48 48v160c0 26.4-21.6 48-48 48h-160c-26.4 0-48-21.6-48-48v-160c0-26.4 21.6-48 48-48h16v-128h-272c-61.756 0-112-50.244-112-112v-208h-16c-26.4 0-48-21.6-48-48v-160c0-26.4 21.6-48 48-48h160c26.4 0 48 21.6 48 48v160c0 26.4-21.6 48-48 48h-16v192h256v-192h-16c-26.4 0-48-21.6-48-48v-160c0-26.4 21.6-48 48-48h160c26.4 0 48 21.6 48 48v160c0 26.4-21.6 48-48 48h-16v192h256v-192h-16c-26.4 0-48-21.6-48-48v-160c0-26.4 21.6-48 48-48h160c26.4 0 48 21.6 48 48v160c0 26.4-21.6 48-48 48zM192 0h-128v128h128v-128zM576 0h-128v128h128v-128zM448 704v128h128v-128h-128zM960 0h-128v128h128v-128z" />
|
||||
<glyph unicode="" glyph-name="login" d="M384 448h-320v128h320v128l192-192-192-192zM1024 960v-832l-384-192v192h-384v256h64v-192h320v576l256 128h-576v-256h-64v320z" />
|
||||
<glyph unicode="" glyph-name="logout" d="M768 320v128h-320v128h320v128l192-192zM704 384v-256h-320v-192l-384 192v832h704v-320h-64v256h-512l256-128v-576h256v192z" />
|
||||
<glyph unicode="" glyph-name="search" horiz-adv-x="951" d="M658.286 475.428c0 141.143-114.857 256-256 256s-256-114.857-256-256 114.857-256 256-256 256 114.857 256 256zM950.857 0c0-40-33.143-73.143-73.143-73.143-19.429 0-38.286 8-51.429 21.714l-196 195.429c-66.857-46.286-146.857-70.857-228-70.857-222.286 0-402.286 180-402.286 402.286s180 402.286 402.286 402.286 402.286-180 402.286-402.286c0-81.143-24.571-161.143-70.857-228l196-196c13.143-13.143 21.143-32 21.143-51.429z" />
|
||||
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 13 KiB |
Binary file not shown.
Binary file not shown.
@ -19,13 +19,13 @@
|
||||
"attrs": [],
|
||||
"properties": {
|
||||
"name": "list",
|
||||
"id": 290,
|
||||
"order": 106,
|
||||
"id": 6,
|
||||
"order": 3,
|
||||
"prevSize": 28,
|
||||
"code": 61642
|
||||
},
|
||||
"setIdx": 1,
|
||||
"setId": 1,
|
||||
"setIdx": 0,
|
||||
"setId": 3,
|
||||
"iconIdx": 0
|
||||
},
|
||||
{
|
||||
@ -46,13 +46,13 @@
|
||||
"attrs": [],
|
||||
"properties": {
|
||||
"name": "home",
|
||||
"id": 289,
|
||||
"order": 107,
|
||||
"id": 7,
|
||||
"order": 4,
|
||||
"prevSize": 28,
|
||||
"code": 61461
|
||||
},
|
||||
"setIdx": 1,
|
||||
"setId": 1,
|
||||
"setIdx": 0,
|
||||
"setId": 3,
|
||||
"iconIdx": 1
|
||||
},
|
||||
{
|
||||
@ -73,14 +73,14 @@
|
||||
"attrs": [],
|
||||
"properties": {
|
||||
"name": "comments",
|
||||
"id": 286,
|
||||
"order": 110,
|
||||
"id": 8,
|
||||
"order": 5,
|
||||
"prevSize": 28,
|
||||
"code": 61670
|
||||
},
|
||||
"setIdx": 1,
|
||||
"setId": 1,
|
||||
"iconIdx": 4
|
||||
"setIdx": 0,
|
||||
"setId": 3,
|
||||
"iconIdx": 2
|
||||
},
|
||||
{
|
||||
"icon": {
|
||||
@ -100,14 +100,14 @@
|
||||
"attrs": [],
|
||||
"properties": {
|
||||
"name": "date",
|
||||
"id": 285,
|
||||
"order": 111,
|
||||
"id": 9,
|
||||
"order": 6,
|
||||
"prevSize": 28,
|
||||
"code": 61555
|
||||
},
|
||||
"setIdx": 1,
|
||||
"setId": 1,
|
||||
"iconIdx": 5
|
||||
"setIdx": 0,
|
||||
"setId": 3,
|
||||
"iconIdx": 3
|
||||
},
|
||||
{
|
||||
"icon": {
|
||||
@ -127,14 +127,14 @@
|
||||
"attrs": [],
|
||||
"properties": {
|
||||
"name": "search",
|
||||
"id": 284,
|
||||
"order": 112,
|
||||
"id": 10,
|
||||
"order": 7,
|
||||
"prevSize": 28,
|
||||
"code": 61442
|
||||
},
|
||||
"setIdx": 1,
|
||||
"setId": 1,
|
||||
"iconIdx": 6
|
||||
"setIdx": 0,
|
||||
"setId": 3,
|
||||
"iconIdx": 4
|
||||
},
|
||||
{
|
||||
"icon": {
|
||||
@ -154,14 +154,14 @@
|
||||
"attrs": [],
|
||||
"properties": {
|
||||
"name": "up",
|
||||
"id": 283,
|
||||
"order": 113,
|
||||
"id": 11,
|
||||
"order": 8,
|
||||
"prevSize": 28,
|
||||
"code": 61559
|
||||
},
|
||||
"setIdx": 1,
|
||||
"setId": 1,
|
||||
"iconIdx": 7
|
||||
"setIdx": 0,
|
||||
"setId": 3,
|
||||
"iconIdx": 5
|
||||
},
|
||||
{
|
||||
"icon": {
|
||||
@ -181,14 +181,14 @@
|
||||
"attrs": [],
|
||||
"properties": {
|
||||
"name": "inbox",
|
||||
"id": 280,
|
||||
"order": 114,
|
||||
"id": 12,
|
||||
"order": 9,
|
||||
"prevSize": 28,
|
||||
"code": 61468
|
||||
},
|
||||
"setIdx": 1,
|
||||
"setId": 1,
|
||||
"iconIdx": 8
|
||||
"setIdx": 0,
|
||||
"setId": 3,
|
||||
"iconIdx": 6
|
||||
},
|
||||
{
|
||||
"icon": {
|
||||
@ -208,14 +208,14 @@
|
||||
"attrs": [],
|
||||
"properties": {
|
||||
"name": "tags",
|
||||
"id": 279,
|
||||
"order": 115,
|
||||
"id": 13,
|
||||
"order": 10,
|
||||
"prevSize": 28,
|
||||
"code": 61484
|
||||
},
|
||||
"setIdx": 1,
|
||||
"setId": 1,
|
||||
"iconIdx": 9
|
||||
"setIdx": 0,
|
||||
"setId": 3,
|
||||
"iconIdx": 7
|
||||
},
|
||||
{
|
||||
"icon": {
|
||||
@ -236,14 +236,14 @@
|
||||
"attrs": [],
|
||||
"properties": {
|
||||
"name": "link",
|
||||
"id": 278,
|
||||
"order": 116,
|
||||
"id": 14,
|
||||
"order": 11,
|
||||
"prevSize": 28,
|
||||
"code": 61633
|
||||
},
|
||||
"setIdx": 1,
|
||||
"setId": 1,
|
||||
"iconIdx": 10
|
||||
"setIdx": 0,
|
||||
"setId": 3,
|
||||
"iconIdx": 8
|
||||
},
|
||||
{
|
||||
"icon": {
|
||||
@ -263,14 +263,41 @@
|
||||
"attrs": [],
|
||||
"properties": {
|
||||
"name": "refresh",
|
||||
"id": 277,
|
||||
"order": 117,
|
||||
"id": 15,
|
||||
"order": 12,
|
||||
"prevSize": 28,
|
||||
"code": 61473
|
||||
},
|
||||
"setIdx": 1,
|
||||
"setId": 1,
|
||||
"iconIdx": 11
|
||||
"setIdx": 0,
|
||||
"setId": 3,
|
||||
"iconIdx": 9
|
||||
},
|
||||
{
|
||||
"icon": {
|
||||
"paths": [
|
||||
"M976 768h-16v-208c0-61.756-50.242-112-112-112h-272v-128h16c26.4 0 48-21.6 48-48v-160c0-26.4-21.6-48-48-48h-160c-26.4 0-48 21.6-48 48v160c0 26.4 21.6 48 48 48h16v128h-272c-61.756 0-112 50.244-112 112v208h-16c-26.4 0-48 21.6-48 48v160c0 26.4 21.6 48 48 48h160c26.4 0 48-21.6 48-48v-160c0-26.4-21.6-48-48-48h-16v-192h256v192h-16c-26.4 0-48 21.6-48 48v160c0 26.4 21.6 48 48 48h160c26.4 0 48-21.6 48-48v-160c0-26.4-21.6-48-48-48h-16v-192h256v192h-16c-26.4 0-48 21.6-48 48v160c0 26.4 21.6 48 48 48h160c26.4 0 48-21.6 48-48v-160c0-26.4-21.6-48-48-48zM192 960h-128v-128h128v128zM576 960h-128v-128h128v128zM448 256v-128h128v128h-128zM960 960h-128v-128h128v128z"
|
||||
],
|
||||
"tags": [
|
||||
"tree",
|
||||
"branches",
|
||||
"inheritance"
|
||||
],
|
||||
"defaultCode": 59836,
|
||||
"grid": 16,
|
||||
"attrs": []
|
||||
},
|
||||
"attrs": [],
|
||||
"properties": {
|
||||
"ligatures": "tree, branches",
|
||||
"name": "category",
|
||||
"order": 13,
|
||||
"id": 16,
|
||||
"prevSize": 32,
|
||||
"code": 59836
|
||||
},
|
||||
"setIdx": 0,
|
||||
"setId": 3,
|
||||
"iconIdx": 10
|
||||
},
|
||||
{
|
||||
"icon": {
|
||||
@ -294,14 +321,14 @@
|
||||
"properties": {
|
||||
"ligatures": "exit, signout",
|
||||
"name": "logout",
|
||||
"id": 288,
|
||||
"order": 108,
|
||||
"id": 0,
|
||||
"order": 14,
|
||||
"prevSize": 32,
|
||||
"code": 59924
|
||||
},
|
||||
"setIdx": 1,
|
||||
"setId": 1,
|
||||
"iconIdx": 2
|
||||
"setIdx": 0,
|
||||
"setId": 3,
|
||||
"iconIdx": 11
|
||||
},
|
||||
{
|
||||
"icon": {
|
||||
@ -323,15 +350,15 @@
|
||||
{}
|
||||
],
|
||||
"properties": {
|
||||
"order": 109,
|
||||
"id": 287,
|
||||
"order": 15,
|
||||
"id": 1,
|
||||
"name": "views",
|
||||
"prevSize": 32,
|
||||
"code": 59648
|
||||
},
|
||||
"setIdx": 1,
|
||||
"setId": 1,
|
||||
"iconIdx": 3
|
||||
"setIdx": 0,
|
||||
"setId": 3,
|
||||
"iconIdx": 12
|
||||
},
|
||||
{
|
||||
"icon": {
|
||||
@ -359,14 +386,14 @@
|
||||
"properties": {
|
||||
"ligatures": "user-plus, user2",
|
||||
"name": "register",
|
||||
"id": 115,
|
||||
"order": 118,
|
||||
"id": 2,
|
||||
"order": 16,
|
||||
"prevSize": 32,
|
||||
"code": 59763
|
||||
},
|
||||
"setIdx": 1,
|
||||
"setId": 1,
|
||||
"iconIdx": 12
|
||||
"setIdx": 0,
|
||||
"setId": 3,
|
||||
"iconIdx": 13
|
||||
},
|
||||
{
|
||||
"icon": {
|
||||
@ -392,14 +419,14 @@
|
||||
"properties": {
|
||||
"ligatures": "cog, gear",
|
||||
"name": "setting",
|
||||
"id": 148,
|
||||
"order": 119,
|
||||
"id": 3,
|
||||
"order": 17,
|
||||
"prevSize": 32,
|
||||
"code": 59796
|
||||
},
|
||||
"setIdx": 1,
|
||||
"setId": 1,
|
||||
"iconIdx": 13
|
||||
"setIdx": 0,
|
||||
"setId": 3,
|
||||
"iconIdx": 14
|
||||
},
|
||||
{
|
||||
"icon": {
|
||||
@ -421,14 +448,14 @@
|
||||
"properties": {
|
||||
"ligatures": "enter, signin",
|
||||
"name": "login",
|
||||
"id": 275,
|
||||
"order": 120,
|
||||
"id": 4,
|
||||
"order": 18,
|
||||
"prevSize": 32,
|
||||
"code": 59923
|
||||
},
|
||||
"setIdx": 1,
|
||||
"setId": 1,
|
||||
"iconIdx": 14
|
||||
"setIdx": 0,
|
||||
"setId": 3,
|
||||
"iconIdx": 15
|
||||
},
|
||||
{
|
||||
"icon": {
|
||||
@ -451,15 +478,15 @@
|
||||
{}
|
||||
],
|
||||
"properties": {
|
||||
"order": 121,
|
||||
"id": 0,
|
||||
"order": 19,
|
||||
"id": 5,
|
||||
"prevSize": 32,
|
||||
"code": 59649,
|
||||
"name": "rss"
|
||||
},
|
||||
"setIdx": 1,
|
||||
"setId": 1,
|
||||
"iconIdx": 15
|
||||
"setIdx": 0,
|
||||
"setId": 3,
|
||||
"iconIdx": 16
|
||||
}
|
||||
],
|
||||
"height": 1024,
|
||||
|
2
9IPHP/js/common.min.js
vendored
2
9IPHP/js/common.min.js
vendored
@ -13,4 +13,4 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
var Skin={_initCommon:function(i){$("body").on("click",".content-reset img",function(){window.open(this.src)});var t=$("header .banner"),n=$("header .navbar");$(window).scroll(function(){if($(window).scrollTop()>125?i.show():i.hide(),$(window).width()<701)return!1;$(window).scrollTop()>t.height()?(n.addClass("pin"),$(".main-wrap").parent().css("margin-top","86px")):(n.removeClass("pin"),$(".main-wrap").parent().css("margin-top","0"))})},init:function(){this._initCommon($(".icon-up")),$(".navbar nav a").each(function(){this.href===location.href&&(this.className="current")}),$(".responsive .list a").each(function(){this.href===location.href&&$(this).parent().addClass("current")}),$(".responsive .icon-list").click(function(){$(".responsive .list").slideToggle()})},_initArticleCommon:function(i,t){if($(".b3-solo-list li").length>0&&$(window).width()>1e3){$("aside").addClass("has-toc");var n='<ul class="fn-clear"><li class="current" data-tab="toc">'+i+'</li><li data-tab="site">'+t+"</li></ul><section></section>";$("aside").prepend(n);var o=$("aside section:first").html($(".b3-solo-list")),s=$("aside section:last");o.height($(window).height()-154).css({overflow:"auto",width:$("aside").width()+"px"}),s.hide(),$("aside > ul > li").click(function(){"toc"===$(this).data("tab")?s.animate({opacity:"0",top:"-50px"},300,function(){o.show().css("top","-50px"),o.animate({opacity:"1",top:"0"},300).show()}):o.animate({opacity:"0",top:"-50px"},300,function(){o.hide().css("top","-50px"),s.animate({opacity:"1",top:"0"},300).show()}).hide(),$("aside > ul > li").removeClass("current"),$(this).addClass("current")}),$(window).scroll(function(){$(window).scrollTop()>125?$("aside section:eq(0)").css({position:"fixed",top:"51px",backgroundColor:"#fff"}):$("aside section:eq(0)").css({position:"inherit",borderLeft:0})})}},initArticle:function(i,t){this._initArticleCommon(i,t)}};Skin.init();
|
||||
var Skin={_initCommon:function(i){$("body").on("click",".content-reset img",function(){window.open(this.src)});var t=$("header .banner"),n=$("header .navbar");$(window).scroll(function(){return $(window).scrollTop()>125?i.show():i.hide(),!($(window).width()<701)&&void($(window).scrollTop()>t.height()?(n.addClass("pin"),$(".main-wrap").parent().css("margin-top","86px")):(n.removeClass("pin"),$(".main-wrap").parent().css("margin-top","0")))})},init:function(){this._initCommon($(".icon-up")),$(".navbar nav a").each(function(){this.href===location.href&&(this.className="current")}),$(".responsive .list a").each(function(){this.href===location.href&&$(this).parent().addClass("current")}),$(".responsive .icon-list").click(function(){$(".responsive .list").slideToggle()})},_initArticleCommon:function(i,t){if($(".b3-solo-list li").length>0&&$(window).width()>1e3){$("aside").addClass("has-toc");var n='<ul class="fn-clear"><li class="current" data-tab="toc">'+i+'</li><li data-tab="site">'+t+"</li></ul><section></section>";$("aside").prepend(n);var o=$("aside section:first").html($(".b3-solo-list")),s=$("aside section:last");o.height($(window).height()-154).css({overflow:"auto",width:$("aside").width()+"px"}),s.hide(),$("aside > ul > li").click(function(){"toc"===$(this).data("tab")?s.animate({opacity:"0",top:"-50px"},300,function(){o.show().css("top","-50px"),o.animate({opacity:"1",top:"0"},300).show()}):o.animate({opacity:"0",top:"-50px"},300,function(){o.hide().css("top","-50px"),s.animate({opacity:"1",top:"0"},300).show()}).hide(),$("aside > ul > li").removeClass("current"),$(this).addClass("current")}),$(window).scroll(function(){$(window).scrollTop()>125?$("aside section:eq(0)").css({position:"fixed",top:"51px",backgroundColor:"#fff"}):$("aside section:eq(0)").css({position:"inherit",borderLeft:0})})}},initArticle:function(i,t){this._initArticleCommon(i,t)}};Skin.init();
|
@ -16,7 +16,7 @@
|
||||
|
||||
#
|
||||
# Description: B3log Solo language configurations(en_US).
|
||||
# Version: 1.1.0.0, Mar 14, 2017
|
||||
# Version: 1.2.0.0, Apr 8, 2017
|
||||
# Author: Liyuan Li
|
||||
#
|
||||
|
||||
@ -27,4 +27,5 @@ readLabel=Read More
|
||||
nextArticleLabel=Next
|
||||
previousArticleLabel=Previous
|
||||
articleCP1Label=Please indicate the source:
|
||||
viewCountLabel=View Count
|
||||
viewCountLabel=View Count
|
||||
cntLabel=
|
@ -16,7 +16,7 @@
|
||||
|
||||
#
|
||||
# Description: B3log Solo default language configurations(zh_CN).
|
||||
# Version: 1.1.0.0, Mar 14, 2017
|
||||
# Version: 1.2.0.0, Apr 8, 2017
|
||||
# Author: Liyuan Li
|
||||
#
|
||||
|
||||
@ -27,4 +27,5 @@ readLabel=\u9605\u8BFB\u5168\u6587
|
||||
nextArticleLabel=\u65B0\u4E00\u7BC7
|
||||
previousArticleLabel=\u65E7\u4E00\u7BC7
|
||||
articleCP1Label=\u8F6C\u8F7D\u8BF7\u6CE8\u660E\u6765\u6E90\uFF1A
|
||||
viewCountLabel=\u6D4F\u89C8\u6570
|
||||
viewCountLabel=\u6D4F\u89C8\u6570
|
||||
cntLabel=\u4E2A
|
@ -6,14 +6,29 @@
|
||||
</div>
|
||||
</#if>
|
||||
|
||||
<#if 0 != mostUsedCategories?size>
|
||||
<div class="module">
|
||||
<header><h2>${categoryLabel}</h2></header>
|
||||
<main>
|
||||
<#list mostUsedCategories as category>
|
||||
<a href="${servePath}/category/${category.categoryURI}"
|
||||
aria-label="${category.categoryTagCnt} ${cntLabel}${tagsLabel}"
|
||||
class="tag tooltipped tooltipped-n">
|
||||
${category.categoryTitle}</a>
|
||||
</#list>
|
||||
</main>
|
||||
</div>
|
||||
</#if>
|
||||
|
||||
<#if 0 != mostUsedTags?size>
|
||||
<div class="module">
|
||||
<header><h2>${popTagsLabel}</h2></header>
|
||||
<header><h2>${tagsLabel}</h2></header>
|
||||
<main>
|
||||
<#list mostUsedTags as tag>
|
||||
<a rel="tag" title="${tag.tagTitle}(${tag.tagPublishedRefCount})"
|
||||
<a rel="tag"
|
||||
href="${servePath}/tags/${tag.tagTitle?url('UTF-8')}"
|
||||
class="tag tooltipped tooltipped-n" aria-label="${tag.tagPublishedRefCount} ${countLabel}${articleLabel}">
|
||||
class="tag tooltipped tooltipped-n"
|
||||
aria-label="${tag.tagPublishedRefCount} ${countLabel}${articleLabel}">
|
||||
${tag.tagTitle}</a>
|
||||
</#list>
|
||||
</main>
|
||||
|
@ -11,56 +11,13 @@
|
||||
<#include "header.ftl">
|
||||
<div class="wrapper">
|
||||
<div class="main-wrap">
|
||||
<main class="other">
|
||||
<main>
|
||||
<div class="title">
|
||||
<h2><i class="icon-tags"></i>
|
||||
<h2 class="tip"><i class="icon-tags"></i>
|
||||
${tag.tagTitle}
|
||||
<small>${tagLabel}</small>
|
||||
</div>
|
||||
<ul class="list">
|
||||
<#list articles as article>
|
||||
<li>
|
||||
<a class="post-title" href="${servePath}${article.articlePermalink}">
|
||||
<span>${article.articleTitle}</span>
|
||||
<#if article.articlePutTop>
|
||||
<sup>
|
||||
${topArticleLabel}
|
||||
</sup>
|
||||
</#if>
|
||||
<#if article.hasUpdated>
|
||||
<sup>
|
||||
${updatedLabel}
|
||||
</sup>
|
||||
</#if>
|
||||
<time class="fn-right">
|
||||
<i class="icon-date"></i> ${article.articleCreateDate?string("yyyy-MM-dd")}
|
||||
</time>
|
||||
</a>
|
||||
</li>
|
||||
</#list>
|
||||
</ul>
|
||||
|
||||
<#if 0 != paginationPageCount>
|
||||
<div class="fn-clear">
|
||||
<nav class="pagination fn-right">
|
||||
<#if 1 != paginationPageNums?first>
|
||||
<a href="${servePath}${path}/${paginationPreviousPageNum}" class="page-number">«</a>
|
||||
<a class="page-number" href="${servePath}${path}/1">1</a> <span class="page-number">...</span>
|
||||
</#if>
|
||||
<#list paginationPageNums as paginationPageNum>
|
||||
<#if paginationPageNum == paginationCurrentPageNum>
|
||||
<span class="page-number current">${paginationPageNum}</span>
|
||||
<#else>
|
||||
<a class="page-number" href="${servePath}${path}/${paginationPageNum}">${paginationPageNum}</a>
|
||||
</#if>
|
||||
</#list>
|
||||
<#if paginationPageNums?last != paginationPageCount> <span class="page-number">...</span>
|
||||
<a href="${servePath}${path}/${paginationPageCount}" class="page-number">${paginationPageCount}</a>
|
||||
<a href="${servePath}${path}/${paginationNextPageNum}" class="page-number">»</a>
|
||||
</#if>
|
||||
</nav>
|
||||
</div>
|
||||
</#if>
|
||||
<#include "article-list.ftl">
|
||||
</main>
|
||||
<#include "side.ftl">
|
||||
</div>
|
||||
|
41
andrea/category-articles.ftl
Normal file
41
andrea/category-articles.ftl
Normal file
@ -0,0 +1,41 @@
|
||||
<#include "macro-head.ftl">
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<@head title="${category.categoryTitle} - ${blogTitle}">
|
||||
<meta name="keywords" content="${metaKeywords},${category.categoryTitle}"/>
|
||||
<meta name="description" content="<#list articles as article>${article.articleTitle}<#if article_has_next>,</#if></#list>"/>
|
||||
</@head>
|
||||
</head>
|
||||
<body>
|
||||
${topBarReplacement}
|
||||
<#include "side-tool.ftl">
|
||||
<div class="wrapper">
|
||||
<#include "header.ftl">
|
||||
<div>
|
||||
<div class="main">
|
||||
<div class="main-content">
|
||||
<h2>
|
||||
${categoryLabel}:
|
||||
${category.categoryTitle}
|
||||
(${category.categoryTagCnt})<small> ${category.categoryDescription}</small>
|
||||
</h2>
|
||||
<#include "article-list.ftl">
|
||||
</div>
|
||||
<div class="main-footer"></div>
|
||||
</div>
|
||||
<div class="side-navi">
|
||||
<#include "side.ftl">
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
<div class="brush">
|
||||
<div class="brush-icon"></div>
|
||||
<div id="brush"></div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<#include "footer.ftl">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@ -60,25 +60,42 @@
|
||||
</dl>
|
||||
</div>
|
||||
</#if>
|
||||
<#if 0 != mostUsedTags?size>
|
||||
<div class="item">
|
||||
<dl>
|
||||
<dd>
|
||||
<h4>${popTagsLabel}</h4>
|
||||
<ul class="navi-tags">
|
||||
<#list mostUsedTags as tag>
|
||||
<li>
|
||||
<a rel="tag" title="${tag.tagTitle}(${tag.tagPublishedRefCount})" href="${servePath}/tags/${tag.tagTitle?url('UTF-8')}">
|
||||
${tag.tagTitle}(${tag.tagPublishedRefCount})</a>
|
||||
<img onclick="window.location='${servePath}/tag-articles-feed.do?oId=${tag.oId}'"
|
||||
alt="${tag.tagTitle}" src="${staticServePath}/images/feed.png"/>
|
||||
</li>
|
||||
</#list>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
<#if 0 != mostUsedCategories?size || 0 != mostUsedTags?size>
|
||||
<div class="item">
|
||||
<dl>
|
||||
<#if 0 != mostUsedCategories?size>
|
||||
<dd>
|
||||
<h4>${categoryLabel}</h4>
|
||||
<ul>
|
||||
<#list mostUsedCategories as category>
|
||||
<li>
|
||||
<a href="${servePath}/category/${category.categoryURI}">
|
||||
${category.categoryTitle} (${category.categoryTagCnt})</a>
|
||||
</li>
|
||||
</#list>
|
||||
</ul>
|
||||
</dd>
|
||||
</#if>
|
||||
<#if 0 != mostUsedTags?size>
|
||||
<dd>
|
||||
<h4>${tagsLabel}</h4>
|
||||
<ul class="navi-tags">
|
||||
<#list mostUsedTags as tag>
|
||||
<li>
|
||||
<a rel="tag" title="${tag.tagTitle}(${tag.tagPublishedRefCount})" href="${servePath}/tags/${tag.tagTitle?url('UTF-8')}">
|
||||
${tag.tagTitle} (${tag.tagPublishedRefCount})</a>
|
||||
<img onclick="window.location='${servePath}/tag-articles-feed.do?oId=${tag.oId}'"
|
||||
alt="${tag.tagTitle}" src="${staticServePath}/images/feed.png"/>
|
||||
</li>
|
||||
</#list>
|
||||
</ul>
|
||||
</dd>
|
||||
</#if>
|
||||
</dl>
|
||||
</div>
|
||||
</#if>
|
||||
|
||||
<#if 0 != links?size>
|
||||
<div class="item">
|
||||
<dl>
|
||||
@ -110,11 +127,11 @@
|
||||
<#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>
|
||||
${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>
|
||||
${archiveDate.archiveDateYear} ${yearLabel} ${archiveDate.archiveDateMonth} ${monthLabel} (${archiveDate.archiveDatePublishedArticleCount})</a>
|
||||
</#if>
|
||||
</li>
|
||||
</#list>
|
||||
|
29
bruce/category-articles.ftl
Normal file
29
bruce/category-articles.ftl
Normal file
@ -0,0 +1,29 @@
|
||||
<#include "macro-head.ftl">
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<@head title="${category.categoryTitle} - ${blogTitle}">
|
||||
<meta name="keywords" content="${metaKeywords},${category.categoryTitle}"/>
|
||||
<meta name="description" content="<#list articles as article>${article.articleTitle}<#if article_has_next>,</#if></#list>"/>
|
||||
</@head>
|
||||
</head>
|
||||
<body>
|
||||
<#include "header.ftl">
|
||||
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-sm-2"></div>
|
||||
<div class="col-sm-8 site article-list">
|
||||
<h2>
|
||||
${category.categoryTitle}
|
||||
(${category.categoryTagCnt})<small> ${category.categoryDescription}</small>
|
||||
</h2>
|
||||
<#include "article-list.ftl">
|
||||
</div>
|
||||
<div class="col-sm-2"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<#include "footer.ftl">
|
||||
</body>
|
||||
</html>
|
2
bruce/css/bootstrap.min.css
vendored
2
bruce/css/bootstrap.min.css
vendored
File diff suppressed because one or more lines are too long
80
bruce/js/bootstrap.min.js
vendored
80
bruce/js/bootstrap.min.js
vendored
File diff suppressed because one or more lines are too long
@ -15,6 +15,19 @@
|
||||
<div class="col-sm-2"></div>
|
||||
|
||||
<div class="col-sm-8 site">
|
||||
<h2>${categoryLabel}</h2>
|
||||
<ul>
|
||||
<#list mostUsedCategories as category>
|
||||
<li>
|
||||
<a href="${servePath}/category/${category.categoryURI}">
|
||||
<span>${category.categoryTitle}</span>
|
||||
(<b>${category.categoryTagCnt}</b>)</a>
|
||||
</a>
|
||||
</li>
|
||||
</#list>
|
||||
</ul>
|
||||
|
||||
<h2>${tagsLabel}</h2>
|
||||
<ul>
|
||||
<#list tags as tag>
|
||||
<li>
|
||||
|
37
classic/category-articles.ftl
Normal file
37
classic/category-articles.ftl
Normal file
@ -0,0 +1,37 @@
|
||||
<#include "macro-head.ftl">
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<@head title="${category.categoryTitle} - ${blogTitle}">
|
||||
<meta name="keywords" content="${metaKeywords},${category.categoryTitle}"/>
|
||||
<meta name="description" content="<#list articles as article>${article.articleTitle}<#if article_has_next>,</#if></#list>"/>
|
||||
</@head>
|
||||
</head>
|
||||
<body>
|
||||
${topBarReplacement}
|
||||
<div class="content">
|
||||
<div class="header">
|
||||
<#include "header.ftl">
|
||||
</div>
|
||||
<div class="body">
|
||||
<div class="left main">
|
||||
<div>
|
||||
<h2 class="marginLeft12 marginBottom12">
|
||||
${categoryLabel}:
|
||||
${category.categoryTitle}
|
||||
(${category.categoryTagCnt})<small> ${category.categoryDescription}</small>
|
||||
</h2>
|
||||
</div>
|
||||
<#include "article-list.ftl">
|
||||
</div>
|
||||
<div class="right side">
|
||||
<#include "side.ftl">
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<#include "footer.ftl">
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@ -65,10 +65,31 @@
|
||||
</ul>
|
||||
<div class="line"></div>
|
||||
</#if>
|
||||
|
||||
<#if 0 != mostUsedCategories?size>
|
||||
<ul>
|
||||
<li>
|
||||
<h4>${categoryLabel}</h4>
|
||||
</li>
|
||||
<li>
|
||||
<ul>
|
||||
<#list mostUsedCategories as category>
|
||||
<li>
|
||||
<a class="tag" href="${servePath}/category/${category.categoryURI}">
|
||||
${category.categoryTitle}</a> (${category.categoryTagCnt})
|
||||
</li>
|
||||
</#list>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<div class="line"></div>
|
||||
</#if>
|
||||
|
||||
|
||||
<#if 0 != mostUsedTags?size>
|
||||
<ul>
|
||||
<li>
|
||||
<h4>${popTagsLabel}</h4>
|
||||
<h4>${tagsLabel}</h4>
|
||||
</li>
|
||||
<li>
|
||||
<ul>
|
||||
|
29
community/category-articles.ftl
Normal file
29
community/category-articles.ftl
Normal file
@ -0,0 +1,29 @@
|
||||
<#include "macro-head.ftl">
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<@head title="${category.categoryTitle} - ${blogTitle}">
|
||||
<meta name="keywords" content="${metaKeywords},${category.categoryTitle}"/>
|
||||
<meta name="description" content="<#list articles as article>${article.articleTitle}<#if article_has_next>,</#if></#list>"/>
|
||||
</@head>
|
||||
</head>
|
||||
<body>
|
||||
${topBarReplacement}
|
||||
<div class="header">
|
||||
<#include "header.ftl">
|
||||
</div>
|
||||
<div class="content">
|
||||
<h2>${categoryLabel}
|
||||
${category.categoryTitle}
|
||||
(${category.categoryTagCnt})<small> ${category.categoryDescription}</small>
|
||||
</h2>
|
||||
<#include "article-list.ftl">
|
||||
</div>
|
||||
<div>
|
||||
<#include "side.ftl">
|
||||
</div>
|
||||
<div class="footer">
|
||||
<#include "footer.ftl">
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@ -68,9 +68,26 @@
|
||||
</ul>
|
||||
</div>
|
||||
</#if>
|
||||
|
||||
<#if 0 != mostUsedCategories?size>
|
||||
<div class="left footer-block">
|
||||
<h4><span class="left">${categoryLabel}</span></h4>
|
||||
<span class="clear"></span>
|
||||
<ul>
|
||||
<#list mostUsedCategories as category>
|
||||
<li class="mostUsedTags">
|
||||
<a href="${servePath}/category/${category.categoryURI}">
|
||||
${category.categoryTitle}(${category.categoryTagCnt})</a>
|
||||
</li>
|
||||
</#list>
|
||||
</ul>
|
||||
</div>
|
||||
</#if>
|
||||
|
||||
|
||||
<#if 0 != mostUsedTags?size>
|
||||
<div class="left footer-block">
|
||||
<h4><span class="left">${popTagsLabel}</span></h4>
|
||||
<h4><span class="left">${tagsLabel}</span></h4>
|
||||
<span class="clear"></span>
|
||||
<ul>
|
||||
<#list mostUsedTags as tag>
|
||||
|
26
ease/category-articles.ftl
Normal file
26
ease/category-articles.ftl
Normal file
@ -0,0 +1,26 @@
|
||||
<#include "macro-head.ftl">
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<@head title="${category.categoryTitle} - ${blogTitle}">
|
||||
<meta name="keywords" content="${metaKeywords},${category.categoryTitle}"/>
|
||||
<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>
|
||||
${categoryLabel}
|
||||
${category.categoryTitle}
|
||||
(${category.categoryTagCnt})
|
||||
</h2>
|
||||
${category.categoryDescription}
|
||||
<#include "article-list.ftl">
|
||||
</div>
|
||||
</div>
|
||||
<#include "footer.ftl">
|
||||
</body>
|
||||
</html>
|
@ -47,7 +47,7 @@
|
||||
</#if>
|
||||
<#if 0 != mostUsedTags?size>
|
||||
<div class="module side-tags">
|
||||
<h3 class="ft-gray">${popTagsLabel}</h3>
|
||||
<h3 class="ft-gray">${tagsLabel}</h3>
|
||||
<ul>
|
||||
<#list mostUsedTags as tag>
|
||||
<li>
|
||||
@ -61,6 +61,23 @@
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
</#if>
|
||||
|
||||
<#if 0 != mostUsedCategories?size>
|
||||
<div class="module side-tags">
|
||||
<h3 class="ft-gray">${categoryLabel}</h3>
|
||||
<ul>
|
||||
<#list mostUsedCategories as category>
|
||||
<li>
|
||||
<a href="${servePath}/category/${category.categoryURI}"
|
||||
title="${category.categoryTitle} (${category.categoryTagCnt})">
|
||||
${category.categoryTitle}</a>
|
||||
</li>
|
||||
</#list>
|
||||
</ul>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
</#if>
|
||||
|
||||
<div class="clear"></div>
|
||||
<#if 0 != mostCommentArticles?size>
|
||||
<div class="module side-most-comment">
|
||||
|
2
ease/js/ease.min.js
vendored
2
ease/js/ease.min.js
vendored
@ -13,4 +13,4 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
var goTranslate=function(){window.open("http://translate.google.com/translate?sl=auto&tl=auto&u="+location.href)},getNextPage=function(){var e=$(".article-next");currentPage+=1;var t="/articles/";if(1===$("#tag").length){var a=location.pathname.split("/");t="/articles/tags/"+a[a.length-1]+"/"}else if(1===$("#archive").length){var a=location.pathname.split("/");t="/articles/archives/"+a[a.length-2]+"/"+a[a.length-1]+"/"}else if(1===$("#author").length){var a=location.pathname.split("/");t="/articles/authors/"+a[a.length-1]+"/"}$.ajax({url:latkeConfig.servePath+t+currentPage,type:"GET",beforeSend:function(){e.css("background","url("+latkeConfig.staticServePath+"/skins/ease/images/ajax-loader.gif) no-repeat scroll center center #fefefe")},success:function(t,a){if(t.sc){for(var i="",r=t.rslts.pagination,n=0;n<t.rslts.articles.length;n++){var l=t.rslts.articles[n],s="";t.rslts.articles.length-1===n&&(s=" article-last"),i+='<li class="article'+s+'"><div class="article-title"><h2><a rel="bookmark" class="ft-gray" href="'+latkeConfig.servePath+l.articlePermalink+'">'+l.articleTitle+"</a>",l.hasUpdated&&(i+="<sup>"+Label.updatedLabel+"</sup>"),l.articlePutTop&&(i+="<sup>"+Label.topArticleLabel+"</sup>"),i+='</h2><div class="right"><a rel="nofollow" class="ft-gray" href="'+latkeConfig.servePath+l.articlePermalink+'#comments">'+ +l.articleCommentCount+" "+Label.commentLabel+'</a> <a rel="nofollow" class="ft-gray" href="'+latkeConfig.servePath+l.articlePermalink+'">'+l.articleViewCount+" "+Label.viewLabel+'</a></div><div class="clear"></div></div><div class="article-body"><div id="abstract'+l.oId+'">'+l.articleAbstract+'</div><div id="content'+l.oId+'" class="none"></div></div><div class="right ft-gray">',l.hasUpdated?i+=Util.toDate(l.articleUpdateTime,"yy-MM-dd HH:mm"):i+=Util.toDate(l.articleCreateTime,"yy-MM-dd HH:mm"),i+=' <a href="'+latkeConfig.servePath+"/authors/"+l.authorId+'">'+l.authorName+'</a></div><div class="left ft-gray">'+Label.tag1Label+" ";for(var o=l.articleTags.split(","),c=0;c<o.length;c++)i+='<a rel="tag" href="'+latkeConfig.servePath+"/tags/"+encodeURIComponent(o[c])+'">'+o[c]+"</a>",c<o.length-1&&(i+=", ");i+='</div><div class="clear"></div></li>'}$(".article-last").removeClass("article-last"),$(".main>.wrapper>ul").append(i),r.paginationPageCount===currentPage?e.remove():e.css("background","none")}}})},ease={$header:$(".header"),headerH:103,$body:$(".main > .wrapper"),$nav:$(".nav"),getCurrentPage:function(){var e=$(".article-next");e.length>0&&(window.currentPage=e.data("page"))},setNavCurrent:function(){$(".nav ul a").each(function(){var e=$(this);e.attr("href")===location.href?e.addClass("current"):/\/[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 e=$(".archives");if(!(e.length<1)){$(".footer").css("marginTop","30px");for(var t=[],a=e.find("span").each(function(){for(var e=$(this).data("year"),a=!0,i=0;i<t.length;i++)if(e===t[i]){a=!1;break}a&&t.push(e)}),i="",r=0;r<t.length;r++){for(var n="",l=0;l<a.length;l++){var s=$(a[l]);s.data("year")===t[r]&&(n+=s.html())}i+="<div><h3 class='ft-gray'>"+t[r]+"</h3>"+n+"</div>"}e.html(i);for(var o=$(".archives>div"),c=0,h=0,g=[],d=0;d<o.length;d++){for(var f=0;f<3&&!(d>=o.length);f++)o[d].style.left=310*f+"px",c>0?(""!==o[d-3].style.top&&(h=parseInt(o[d-3].style.top)),o[d].style.top=$(o[d-3]).height()+60+h+"px",g[f]=parseInt(o[d].style.top)+$(o[d]).height()+60):g[f]=$(o[d]).height()+60,f<2&&(d+=1);c+=1}e.height(g.sort()[g.length-1])}},scrollEvent:function(){var e=this;$(window).scroll(function(){var t=$(window).scrollTop();if(t>e.headerH){var a=$(window).height(),i=t+a-21;$("body").height()-58<=t+a&&(i=$(".footer").offset().top-21),$("#goTop").fadeIn("slow").css("top",i)}else $("#goTop").hide()})},setDynamic:function(){var e=$(".dynamic");if(!($(".dynamic").length<1)){var t=e.find(".side-comments"),a=e.find(".side-tags"),i=e.find(".side-most-comment"),r=e.find(".side-most-view");t.height()>a.height()?a.height(t.height()):t.height(a.height()),i.height()>r.height()?r.height(i.height()):i.height(r.height()),$(".article-body").each(function(){this.innerHTML=Util.replaceEmString($(this).html())})}}};!function(){ease.getCurrentPage(),ease.initCommon(),ease.scrollEvent(),ease.setNavCurrent(),ease.initArchives(),ease.setDynamic()}();
|
||||
var goTranslate=function(){window.open("http://translate.google.com/translate?sl=auto&tl=auto&u="+location.href)},getNextPage=function(){var e=$(".article-next");currentPage+=1;var t="/articles/";if(1===$("#tag").length){var a=location.pathname.split("/");t="/articles/tags/"+a[a.length-1]+"/"}else if(1===$("#archive").length){var a=location.pathname.split("/");t="/articles/archives/"+a[a.length-2]+"/"+a[a.length-1]+"/"}else if(1===$("#author").length){var a=location.pathname.split("/");t="/articles/authors/"+a[a.length-1]+"/"}$.ajax({url:latkeConfig.servePath+t+currentPage,type:"GET",beforeSend:function(){e.css("background","url("+latkeConfig.staticServePath+"/skins/ease/images/ajax-loader.gif) no-repeat scroll center center #fefefe")},success:function(t,a){if(t.sc){for(var i="",r=t.rslts.pagination,n=0;n<t.rslts.articles.length;n++){var l=t.rslts.articles[n],s="";t.rslts.articles.length-1===n&&(s=" article-last"),i+='<li class="article'+s+'"><div class="article-title"><h2><a rel="bookmark" class="ft-gray" href="'+latkeConfig.servePath+l.articlePermalink+'">'+l.articleTitle+"</a>",l.hasUpdated&&(i+="<sup>"+Label.updatedLabel+"</sup>"),l.articlePutTop&&(i+="<sup>"+Label.topArticleLabel+"</sup>"),i+='</h2><div class="right"><a rel="nofollow" class="ft-gray" href="'+latkeConfig.servePath+l.articlePermalink+'#comments">'+ +l.articleCommentCount+" "+Label.commentLabel+'</a> <a rel="nofollow" class="ft-gray" href="'+latkeConfig.servePath+l.articlePermalink+'">'+l.articleViewCount+" "+Label.viewLabel+'</a></div><div class="clear"></div></div><div class="article-body"><div id="abstract'+l.oId+'">'+l.articleAbstract+'</div><div id="content'+l.oId+'" class="none"></div></div><div class="right ft-gray">',i+=l.hasUpdated?Util.toDate(l.articleUpdateTime,"yy-MM-dd HH:mm"):Util.toDate(l.articleCreateTime,"yy-MM-dd HH:mm"),i+=' <a href="'+latkeConfig.servePath+"/authors/"+l.authorId+'">'+l.authorName+'</a></div><div class="left ft-gray">'+Label.tag1Label+" ";for(var o=l.articleTags.split(","),c=0;c<o.length;c++)i+='<a rel="tag" href="'+latkeConfig.servePath+"/tags/"+encodeURIComponent(o[c])+'">'+o[c]+"</a>",c<o.length-1&&(i+=", ");i+='</div><div class="clear"></div></li>'}$(".article-last").removeClass("article-last"),$(".main>.wrapper>ul").append(i),r.paginationPageCount===currentPage?e.remove():e.css("background","none")}}})},ease={$header:$(".header"),headerH:103,$body:$(".main > .wrapper"),$nav:$(".nav"),getCurrentPage:function(){var e=$(".article-next");e.length>0&&(window.currentPage=e.data("page"))},setNavCurrent:function(){$(".nav ul a").each(function(){var e=$(this);e.attr("href")===location.href?e.addClass("current"):/\/[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 e=$(".archives");if(!(e.length<1)){$(".footer").css("marginTop","30px");for(var t=[],a=e.find("span").each(function(){for(var e=$(this).data("year"),a=!0,i=0;i<t.length;i++)if(e===t[i]){a=!1;break}a&&t.push(e)}),i="",r=0;r<t.length;r++){for(var n="",l=0;l<a.length;l++){var s=$(a[l]);s.data("year")===t[r]&&(n+=s.html())}i+="<div><h3 class='ft-gray'>"+t[r]+"</h3>"+n+"</div>"}e.html(i);for(var o=$(".archives>div"),c=0,h=0,g=[],d=0;d<o.length;d++){for(var f=0;f<3&&!(d>=o.length);f++)o[d].style.left=310*f+"px",c>0?(""!==o[d-3].style.top&&(h=parseInt(o[d-3].style.top)),o[d].style.top=$(o[d-3]).height()+60+h+"px",g[f]=parseInt(o[d].style.top)+$(o[d]).height()+60):g[f]=$(o[d]).height()+60,f<2&&(d+=1);c+=1}e.height(g.sort()[g.length-1])}},scrollEvent:function(){var e=this;$(window).scroll(function(){var t=$(window).scrollTop();if(t>e.headerH){var a=$(window).height(),i=t+a-21;$("body").height()-58<=t+a&&(i=$(".footer").offset().top-21),$("#goTop").fadeIn("slow").css("top",i)}else $("#goTop").hide()})},setDynamic:function(){var e=$(".dynamic");if(!($(".dynamic").length<1)){var t=e.find(".side-comments"),a=e.find(".side-tags"),i=e.find(".side-most-comment"),r=e.find(".side-most-view");t.height()>a.height()?a.height(t.height()):t.height(a.height()),i.height()>r.height()?r.height(i.height()):i.height(r.height()),$(".article-body").each(function(){this.innerHTML=Util.replaceEmString($(this).html())})}}};!function(){ease.getCurrentPage(),ease.initCommon(),ease.scrollEvent(),ease.setNavCurrent(),ease.initArchives(),ease.setDynamic()}();
|
41
favourite/category-articles.ftl
Normal file
41
favourite/category-articles.ftl
Normal file
@ -0,0 +1,41 @@
|
||||
<#include "macro-head.ftl">
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<@head title="${category.categoryTitle} - ${blogTitle}">
|
||||
<meta name="keywords" content="${metaKeywords},${category.categoryTitle}"/>
|
||||
<meta name="description" content="<#list articles as article>${article.articleTitle}<#if article_has_next>,</#if></#list>"/>
|
||||
</@head>
|
||||
</head>
|
||||
<body>
|
||||
${topBarReplacement}
|
||||
<#include "nav.ftl">
|
||||
<div class="wrapper">
|
||||
<div class="content">
|
||||
<#include "header.ftl">
|
||||
<div class="roundtop"></div>
|
||||
<div class="body">
|
||||
<div class="left main">
|
||||
<div class="kind-title">
|
||||
${categoryLabel}
|
||||
</div>
|
||||
<div class="kind-panel">
|
||||
${category.categoryTitle}
|
||||
(${category.categoryTagCnt}) ${category.categoryDescription}
|
||||
</div>
|
||||
<#include "article-list.ftl">
|
||||
</div>
|
||||
<div class="right">
|
||||
<#include "side.ftl">
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
<div class="roundbottom"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<div class="footer-icon"><#include "statistic.ftl"></div>
|
||||
<#include "footer.ftl">
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@ -18,7 +18,7 @@
|
||||
* skin favoutite style
|
||||
*
|
||||
* @author <a href="mailto:LLY219@gmail.com">Liyuan Li</a>
|
||||
* @version 1.0.0.8, Jun 6, 2012
|
||||
* @version 1.1.0.8, Apr 9, 2017
|
||||
*/
|
||||
body {
|
||||
background: url("../images/bg.jpg") repeat scroll left top transparent;
|
||||
@ -581,6 +581,11 @@ h5 {
|
||||
background: url("../images/categorie.png") no-repeat scroll left top transparent;
|
||||
height: 64px;
|
||||
}
|
||||
#sideNavi .tags {
|
||||
background: url(../images/tagsIcon.png) no-repeat scroll left top transparent;
|
||||
height: 52px;
|
||||
background-size: contain;
|
||||
}
|
||||
.archivio {
|
||||
background: url("../images/archivio.png") no-repeat scroll left top transparent;
|
||||
height: 64px;
|
||||
|
2
favourite/css/favourite.min.css
vendored
2
favourite/css/favourite.min.css
vendored
File diff suppressed because one or more lines are too long
@ -76,10 +76,29 @@
|
||||
</div>
|
||||
<div class="line"></div>
|
||||
</#if>
|
||||
|
||||
<#if 0 != mostUsedCategories?size>
|
||||
<div class="item">
|
||||
<div class="categorie">
|
||||
<h4>${categoryLabel}</h4>
|
||||
</div>
|
||||
<ul id="mostViewCountArticles">
|
||||
<#list mostUsedCategories as category>
|
||||
<li>
|
||||
<a href="${servePath}/category/${category.categoryURI}"
|
||||
title="${category.categoryTitle} (${category.categoryTagCnt})">
|
||||
${category.categoryTitle}</a>(${category.categoryTitle})
|
||||
</li>
|
||||
</#list>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="line"></div>
|
||||
</#if>
|
||||
|
||||
<#if 0 != mostUsedTags?size>
|
||||
<div class="item">
|
||||
<div class="categorie">
|
||||
<h4>${popTagsLabel}</h4>
|
||||
<div class="tags">
|
||||
<h4>${tagsLabel}</h4>
|
||||
</div>
|
||||
<ul class="navi-tags">
|
||||
<#list mostUsedTags as tag>
|
||||
@ -96,6 +115,8 @@
|
||||
</div>
|
||||
<div class="line"></div>
|
||||
</#if>
|
||||
|
||||
|
||||
<#if 0 != links?size>
|
||||
<div class="item">
|
||||
<div class="blog">
|
||||
|
27
finding/category-articles.ftl
Normal file
27
finding/category-articles.ftl
Normal file
@ -0,0 +1,27 @@
|
||||
<#include "macro-head.ftl">
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<@head title="${category.categoryTitle} - ${blogTitle}">
|
||||
<meta name="keywords" content="${metaKeywords},${category.categoryTitle}"/>
|
||||
<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">
|
||||
${categoryLabel}:
|
||||
${category.categoryTitle}
|
||||
(${category.categoryTagCnt})<small> ${category.categoryDescription}</small>
|
||||
</h2>
|
||||
<#include "article-list.ftl">
|
||||
</main>
|
||||
<#include "footer.ftl">
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
35
finding/category.ftl
Normal file
35
finding/category.ftl
Normal file
@ -0,0 +1,35 @@
|
||||
<#include "macro-head.ftl">
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<@head title="${categoryLabel} - ${blogTitle}">
|
||||
<meta name="keywords" content="${metaKeywords},${categoryLabel}"/>
|
||||
<meta name="description" content="<#list mostUsedCategories as category>${category.categoryTitle}<#if category_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 mostUsedCategories as category>
|
||||
<li>
|
||||
<a href="${servePath}/category/${category.categoryURI}"
|
||||
title="${category.categoryTitle} (${category.categoryTagCnt})">
|
||||
${category.categoryTitle} (<b>${category.categoryTagCnt}</b>)
|
||||
</a>
|
||||
</li>
|
||||
</#list>
|
||||
</ul>
|
||||
</main>
|
||||
<#include "footer.ftl">
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
Util.buildTags();
|
||||
</script>
|
||||
</body>
|
||||
</body>
|
||||
</html>
|
2
finding/js/finding.min.js
vendored
2
finding/js/finding.min.js
vendored
@ -13,4 +13,4 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
var Finding={init:function(){Util.killIE(),this._initToc(),$(".scroll-down").click(function(t){t.preventDefault();var o=$(this),n=$("html, body"),a=!!o.attr("data-offset")&&o.attr("data-offset"),i=parseInt(a);n.stop(!0,!1).animate({scrollTop:$(this.hash).offset().top+i},500)}),$("body").click(function(t){0===$(t.target).closest(".nav").length&&$("body").hasClass("nav-opened")&&!$(t.target).hasClass("icon-gotop")&&$("body").removeClass("nav-opened").addClass("nav-closed")}),$(".menu-button").click(function(t){t.stopPropagation(),$("body").toggleClass("nav-opened nav-closed")}),$("body").append('<a class="icon-gotop fn-none" href="javascript:Util.goTop()"></a>'),$(window).scroll(function(){$(window).scrollTop()>$(window).height()?$(".icon-gotop").show():$(".icon-gotop").hide()})},_initToc:function(){if(0===$(".b3-solo-list").length)return $(".nav .icon-sitemap, .nav .icon-list").show(),!1;$(".nav .icon-sitemap, .nav .icon-list").show(),$(".nav ul:first").hide(),$(".nav ul:first").after($(".b3-solo-list")),$("body").toggleClass("nav-opened nav-closed")},tabNav:function(t){$(".nav .current").removeClass("current"),"toc"===t?($(".nav ul:first").hide(),$(".nav ul:last").show(),$(".icon-list").addClass("current")):($(".nav ul:first").show(),$(".nav ul:last").hide(),$(".icon-sitemap").addClass("current"))},share:function(){$(".share span").click(function(){var t=$(this).data("type"),o=encodeURIComponent($("title").text()),n=$(".post-title a").attr("href")?$(".post-title a").attr("href"):location,a=$(".post-content img:eq(0)").attr("src"),i={};i.tencent="http://share.v.t.qq.com/index.php?c=share&a=index&title="+o+"&url="+n+"&pic="+a,i.weibo="http://v.t.sina.com.cn/share/share.php?title="+o+"&url="+n+"&pic="+a,i.google="https://plus.google.com/share?url="+n,i.twitter="https://twitter.com/intent/tweet?status="+o+" "+n,window.open(i[t],"_blank","top=100,left=200,width=648,height=618")})}};Finding.init();
|
||||
var Finding={init:function(){Util.killIE(),this._initToc(),$(".scroll-down").click(function(t){t.preventDefault();var o=$(this),n=$("html, body"),a=!!o.attr("data-offset")&&o.attr("data-offset"),i=parseInt(a);n.stop(!0,!1).animate({scrollTop:$(this.hash).offset().top+i},500)}),$("body").click(function(t){0===$(t.target).closest(".nav").length&&$("body").hasClass("nav-opened")&&!$(t.target).hasClass("icon-gotop")&&$("body").removeClass("nav-opened").addClass("nav-closed")}),$(".menu-button").click(function(t){t.stopPropagation(),$("body").toggleClass("nav-opened nav-closed")}),$("body").append('<a class="icon-gotop fn-none" href="javascript:Util.goTop()"></a>'),$(window).scroll(function(){$(window).scrollTop()>$(window).height()?$(".icon-gotop").show():$(".icon-gotop").hide()})},_initToc:function(){return 0===$(".b3-solo-list").length?($(".nav .icon-sitemap, .nav .icon-list").show(),!1):($(".nav .icon-sitemap, .nav .icon-list").show(),$(".nav ul:first").hide(),$(".nav ul:first").after($(".b3-solo-list")),void $("body").toggleClass("nav-opened nav-closed"))},tabNav:function(t){$(".nav .current").removeClass("current"),"toc"===t?($(".nav ul:first").hide(),$(".nav ul:last").show(),$(".icon-list").addClass("current")):($(".nav ul:first").show(),$(".nav ul:last").hide(),$(".icon-sitemap").addClass("current"))},share:function(){$(".share span").click(function(){var t=$(this).data("type"),o=encodeURIComponent($("title").text()),n=$(".post-title a").attr("href")?$(".post-title a").attr("href"):location,a=$(".post-content img:eq(0)").attr("src"),i={};i.tencent="http://share.v.t.qq.com/index.php?c=share&a=index&title="+o+"&url="+n+"&pic="+a,i.weibo="http://v.t.sina.com.cn/share/share.php?title="+o+"&url="+n+"&pic="+a,i.google="https://plus.google.com/share?url="+n,i.twitter="https://twitter.com/intent/tweet?status="+o+" "+n,window.open(i[t],"_blank","top=100,left=200,width=648,height=618")})}};Finding.init();
|
@ -24,6 +24,9 @@
|
||||
<li>
|
||||
<a href="${servePath}/dynamic.html">${dynamicLabel}</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="${servePath}/category.html">${categoryLabel}</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="${servePath}/tags.html">${allTagsLabel}</a>
|
||||
</li>
|
||||
|
39
i-nove/category-articles.ftl
Normal file
39
i-nove/category-articles.ftl
Normal file
@ -0,0 +1,39 @@
|
||||
<#include "macro-head.ftl">
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<@head title="${category.categoryTitle} - ${blogTitle}">
|
||||
<meta name="keywords" content="${metaKeywords},${category.categoryTitle}"/>
|
||||
<meta name="description" content="<#list articles as article>${article.articleTitle}<#if article_has_next>,</#if></#list>"/>
|
||||
</@head>
|
||||
</head>
|
||||
<body>
|
||||
${topBarReplacement}
|
||||
<div class="bg">
|
||||
<div class="wrapper">
|
||||
<div class="content">
|
||||
<#include "header.ftl">
|
||||
<div class="body">
|
||||
<div class="left main">
|
||||
<div class="kind-title">
|
||||
${categoryLabel}
|
||||
</div>
|
||||
<div class="kind-panel">
|
||||
${category.categoryTitle}
|
||||
(${category.categoryTagCnt})<small> ${category.categoryDescription}</small>
|
||||
</div>
|
||||
<#include "article-list.ftl">
|
||||
</div>
|
||||
<div class="right">
|
||||
<#include "side.ftl">
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<#include "footer.ftl">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@ -69,9 +69,26 @@
|
||||
</div>
|
||||
<div class="line"></div>
|
||||
</#if>
|
||||
|
||||
<#if 0 != mostUsedCategories?size>
|
||||
<div class="item">
|
||||
<h4>${categoryLabel}</h4>
|
||||
<ul class="navi-tags">
|
||||
<#list mostUsedCategories as category>
|
||||
<li>
|
||||
<a href="${servePath}/category/${category.categoryURI}">
|
||||
${category.categoryTitle}</a> (${category.categoryTagCnt})
|
||||
</li>
|
||||
</#list>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="line"></div>
|
||||
</#if>
|
||||
|
||||
|
||||
<#if 0 != mostUsedTags?size>
|
||||
<div class="item">
|
||||
<h4>${popTagsLabel}</h4>
|
||||
<h4>${tagsLabel}</h4>
|
||||
<ul class="navi-tags">
|
||||
<#list mostUsedTags as tag>
|
||||
<li>
|
||||
@ -79,7 +96,7 @@
|
||||
<img alt="${tag.tagTitle}" src="${staticServePath}/images/feed.png"/>
|
||||
</a>
|
||||
<a rel="tag" title="${tag.tagTitle}(${tag.tagPublishedRefCount})" href="${servePath}/tags/${tag.tagTitle?url('UTF-8')}">
|
||||
${tag.tagTitle}</a>(${tag.tagPublishedRefCount})
|
||||
${tag.tagTitle}</a> (${tag.tagPublishedRefCount})
|
||||
</li>
|
||||
</#list>
|
||||
</ul>
|
||||
|
53
metro-hot/category-articles.ftl
Normal file
53
metro-hot/category-articles.ftl
Normal file
@ -0,0 +1,53 @@
|
||||
<#include "macro-head.ftl">
|
||||
<#include "macro-side.ftl">
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<@head title="${category.categoryTitle} - ${blogTitle}">
|
||||
<meta name="keywords" content="${metaKeywords},${category.categoryTitle}"/>
|
||||
<meta name="description" content="<#list articles as article>${article.articleTitle}<#if article_has_next>,</#if></#list>"/>
|
||||
</@head>
|
||||
</head>
|
||||
<body>
|
||||
${topBarReplacement}
|
||||
<div class="wrapper">
|
||||
<div id="header">
|
||||
<#include "header.ftl" />
|
||||
<div class="sub-nav fn-clear">
|
||||
<h2>
|
||||
${categoryLabel}:
|
||||
${category.categoryTitle}
|
||||
(${category.categoryTagCnt})<small> ${category.categoryDescription}</small>
|
||||
</h2>
|
||||
<#if 0 != paginationPageCount>
|
||||
<div class="pagination">
|
||||
<#if 1 != paginationPageNums?first>
|
||||
<a id="previousPage" href="${servePath}${path}/${paginationPreviousPageNum}"
|
||||
title="${previousPageLabel}"><</a>
|
||||
</#if>
|
||||
<#list paginationPageNums as paginationPageNum>
|
||||
<#if paginationPageNum == paginationCurrentPageNum>
|
||||
<span>${paginationPageNum}</span>
|
||||
<#else>
|
||||
<a href="${servePath}${path}/${paginationPageNum}">${paginationPageNum}</a>
|
||||
</#if>
|
||||
</#list>
|
||||
<#if paginationPageNums?last != paginationPageCount>
|
||||
<a id="nextPage" href="${servePath}${path}/${paginationNextPageNum}" title="${nextPagePabel}">></a>
|
||||
</#if>
|
||||
</div>
|
||||
</#if>
|
||||
</div>
|
||||
</div>
|
||||
<div class="fn-clear">
|
||||
<div class="main">
|
||||
<#include "article-list.ftl"/>
|
||||
<#include "copyright.ftl"/>
|
||||
</div>
|
||||
<@side isArticle=false />
|
||||
</div>
|
||||
</div>
|
||||
<span id="goTop" onclick="Util.goTop()" data-ico="" class="side-tile"></span>
|
||||
<#include "footer.ftl"/>
|
||||
</body>
|
||||
</html>
|
40
metro-hot/category.ftl
Normal file
40
metro-hot/category.ftl
Normal file
@ -0,0 +1,40 @@
|
||||
<#include "macro-head.ftl">
|
||||
<#include "macro-side.ftl">
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<@head title="${categoryLabel} - ${blogTitle}">
|
||||
<meta name="keywords" content="${metaKeywords},${categoryLabel}"/>
|
||||
<meta name="description" content="<#list mostUsedCategories as category>${category.categoryTitle}<#if category_has_next>,</#if></#list>"/>
|
||||
</@head>
|
||||
</head>
|
||||
<body>
|
||||
${topBarReplacement}
|
||||
<div class="wrapper">
|
||||
<div id="header">
|
||||
<#include "header.ftl" />
|
||||
<div class="sub-nav fn-clear">
|
||||
<h2>${categoryLabel}</h2>
|
||||
</div>
|
||||
</div>
|
||||
<div class="fn-clear">
|
||||
<div class="main">
|
||||
<ul id="tags" class="archives fn-clear">
|
||||
<#list mostUsedCategories as category>
|
||||
<li>
|
||||
<a href="${servePath}/category/${category.categoryURI}">
|
||||
<span>${category.categoryTitle}</span>
|
||||
(<b>${category.categoryTagCnt}</b>)</a>
|
||||
</a>
|
||||
</li>
|
||||
</#list>
|
||||
</ul>
|
||||
<#include "copyright.ftl"/>
|
||||
</div>
|
||||
<@side isArticle=false />
|
||||
</div>
|
||||
</div>
|
||||
<span id="goTop" onclick="Util.goTop()" data-ico="" class="side-tile"></span>
|
||||
<#include "footer.ftl"/>
|
||||
</body>
|
||||
</html>
|
@ -17,6 +17,9 @@
|
||||
<li>
|
||||
<a href="${servePath}/dynamic.html">${dynamicLabel}</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="${servePath}/category.html">${categoryLabel}</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="${servePath}/tags.html">${allTagsLabel}</a>
|
||||
</li>
|
||||
|
2
metro-hot/js/metro-hot.min.js
vendored
2
metro-hot/js/metro-hot.min.js
vendored
File diff suppressed because one or more lines are too long
24
mobile/category-articles.ftl
Normal file
24
mobile/category-articles.ftl
Normal file
@ -0,0 +1,24 @@
|
||||
<#include "macro-head.ftl">
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<@head title="${category.categoryTitle} - ${blogTitle}">
|
||||
<meta name="keywords" content="${metaKeywords},${category.categoryTitle}"/>
|
||||
<meta name="description" content="<#list articles as article>${article.articleTitle}<#if article_has_next>,</#if></#list>"/>
|
||||
</@head>
|
||||
</head>
|
||||
<body class="classic-wptouch-bg ">
|
||||
<#include "header.ftl">
|
||||
<div class="content single">
|
||||
<div class="post">
|
||||
<h2 >${categoryLabel}
|
||||
<a rel="alternate" href="${servePath}/category/${category.categoryURI}">
|
||||
${category.categoryTitle}
|
||||
(${category.categoryTagCnt})</a>
|
||||
</h2>
|
||||
</div>
|
||||
</div>
|
||||
<#include "article-list.ftl">
|
||||
<#include "footer.ftl">
|
||||
</body>
|
||||
</html>
|
@ -6,8 +6,7 @@
|
||||
</center>
|
||||
<p><span style="color: gray;">© ${year}</span> - <a href="${servePath}">${blogTitle}</a>${footerContent}</p>
|
||||
<p>Powered by <a href="http://b3log.org" target="_blank">B3log 开源</a> • <a href="http://b3log.org/services/#solo" target="_blank">Solo</a> ${version},
|
||||
Theme by <a rel="friend" href="http://dx.b3log.org" target="_blank">dx</a> <
|
||||
<a rel="friend" href="http://www.bravenewcode.com/products/wptouch-pro">WPtouch</a>.</p>
|
||||
Theme by <a rel="friend" href="http://vanessa.b3log.org" target="_blank">Vanessa</a></p>
|
||||
</div>
|
||||
<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>
|
||||
|
@ -28,6 +28,7 @@
|
||||
<a href="#head-pages"><img src="${staticServePath}/skins/${skinDirName}/images/icon-pool/Pages.png" alt=""/></a>
|
||||
<a href="#head-tags"><img src="${staticServePath}/skins/${skinDirName}/images/icon-pool/Tags.png" alt=""/></a>
|
||||
<a href="#head-cats"><img src="${staticServePath}/skins/${skinDirName}/images/icon-pool/Archives.png" alt=""/></a>
|
||||
<a href="#head-category"><img src="${staticServePath}/skins/${skinDirName}/images/icon-pool/category.png" alt=""/></a>
|
||||
</div>
|
||||
|
||||
<ul id="head-pages">
|
||||
@ -60,6 +61,17 @@
|
||||
</#if>
|
||||
</ul>
|
||||
|
||||
<ul id="head-category">
|
||||
<#if 0 != mostUsedCategories?size>
|
||||
<#list mostUsedCategories as category>
|
||||
<li>
|
||||
<a href="${servePath}/category/${category.categoryURI}">
|
||||
${category.categoryTitle}</a>
|
||||
</li>
|
||||
</#list>
|
||||
</#if>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
BIN
mobile/images/icon-pool/category.png
Normal file
BIN
mobile/images/icon-pool/category.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 20 KiB |
@ -135,3 +135,15 @@
|
||||
</ul>
|
||||
</#if>
|
||||
</div>
|
||||
<ul id="head-category">
|
||||
<#if 0 != mostUsedCategories?size>
|
||||
<#list mostUsedCategories as category>
|
||||
<li>
|
||||
<a href="${servePath}/category/${category.categoryURI}"
|
||||
aria-label="${category.categoryTagCnt} ${tagsLabel}"
|
||||
class="tag tooltipped tooltipped-n">
|
||||
${category.categoryTitle}</a>
|
||||
</li>
|
||||
</#list>
|
||||
</#if>
|
||||
</ul>
|
@ -322,7 +322,12 @@ blockquote {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.dropper ul#head-pages li, .dropper ul#head-cats li, .dropper ul#head-tags li li, .dropper ul#head-account li, ul#tweets li {
|
||||
.dropper ul#head-pages li,
|
||||
.dropper ul#head-cats li,
|
||||
.dropper ul#head-tags li,
|
||||
.dropper ul#head-account li,
|
||||
.dropper ul#head-category li,
|
||||
ul#tweets li {
|
||||
border-bottom: 1px solid #1d1d1d;
|
||||
background: url(../core/core-images/arrow.png) no-repeat right center;
|
||||
border-top: 1px solid #363636;
|
||||
@ -348,7 +353,10 @@ blockquote {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.dropper ul#head-cats li:hover, .dropper ul#head-tags li li:hover, .dropper ul#head-pages li:hover {
|
||||
.dropper ul#head-cats li:hover,
|
||||
.dropper ul#head-tags li li:hover,
|
||||
.dropper ul#head-category li li:hover,
|
||||
.dropper ul#head-pages li:hover {
|
||||
background-color: #222;
|
||||
border-top: 1px solid #222;
|
||||
position: relative;
|
||||
@ -761,7 +769,7 @@ input#search-submit {
|
||||
img.head-close {
|
||||
display: inline;
|
||||
position: relative;
|
||||
top: 6px;
|
||||
top: 0px;
|
||||
left: 5px;
|
||||
}
|
||||
|
||||
|
29
neoease/category-articles.ftl
Normal file
29
neoease/category-articles.ftl
Normal file
@ -0,0 +1,29 @@
|
||||
<#include "macro-head.ftl">
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<@head title="${category.categoryTitle} - ${blogTitle}">
|
||||
<meta name="keywords" content="${metaKeywords},${category.categoryTitle}"/>
|
||||
<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="body">
|
||||
<div class="wrapper">
|
||||
<div class="main">
|
||||
<h2>
|
||||
${categoryLabel}:
|
||||
${category.categoryTitle}
|
||||
(${category.categoryTagCnt})<small> ${category.categoryDescription}</small>
|
||||
</h2>
|
||||
<#include "article-list.ftl">
|
||||
</div>
|
||||
<#include "side.ftl">
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
</div>
|
||||
<#include "footer.ftl">
|
||||
</body>
|
||||
</html>
|
2
neoease/js/neoease.min.js
vendored
2
neoease/js/neoease.min.js
vendored
@ -13,4 +13,4 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
var goTop=function(e){e=e||.1;var a=$(window).scrollTop(),t=1+e;if(window.scrollTo(0,Math.floor(a/t)),a>0){var n="goTop("+e+")";window.setTimeout(n,16)}},collapseArchive=function(e,a){var t=!0;"collapse-ico"===e.className?(e.className="expand-ico",t=!1):e.className="collapse-ico",$("#archiveSide li").each(function(){$(this).data("year")===a&&(t?$(this).show():$(this).hide())})},getArticle=function(e,a){var t=$("#abstract"+a),n=$("#content"+a);return""===n.html()?$.ajax({url:"/get-article-content?id="+a,type:"GET",dataType:"html",beforeSend:function(){t.css("background","url(/skins/neoease/images/ajax-loader.gif) no-repeat scroll center center transparent")},success:function(a,i){e.className="collapse-ico",n.html(a),t.hide().css("background","none"),n.fadeIn("slow")}}):"expand-ico"===e.className?(t.hide(),n.fadeIn(),e.className="collapse-ico"):(n.hide(),t.fadeIn(),e.className="expand-ico"),!1},goTranslate=function(){window.open("http://translate.google.com/translate?sl=auto&tl=auto&u="+location.href)};!function(){$(window).scroll(function(){var e=$(window).scrollTop();if(e>182){var a=$(window).height(),t=e+a-21;$("body").height()-58<=e+a&&(t=$(".footer").offset().top-21),$("#goTop").fadeIn("slow").css("top",t)}else $("#goTop").hide()});var e=(new Date).getFullYear(),a=e;$("#archiveSide li").each(function(t){var n=$(this);n.data("year")!==e&&$(this).hide(),a!==n.data("year")&&(a=n.data("year"),n.before("<li class='archive-year'><div onclick='collapseArchive(this, "+a+")' class='expand-ico'>"+a+" 年</div></li>"))}),$(".recent-comments .expand-ico").click(function(){"expand-ico"===this.className?($(this).parent().next().css({height:"auto","white-space":"normal"}),this.className="collapse-ico"):($(this).parent().next().animate({height:"18px"},function(){$(this).css("white-space","nowrap")}),this.className="expand-ico")}),$(".nav ul li").each(function(){$(this).find("a").attr("href")===latkeConfig.servePath+location.pathname?$(this).addClass("current"):/\/[0-9]+$/.test(location.pathname)&&($(".nav ul li")[0].className="current")}),Util.init(),Util.replaceSideEm($(".recent-comments-content")),Util.buildTags("tagsSide"),$(".recent-comments .recent-comments-main").each(function(){$(this).find(".recent-comments-content>a").height()<30?$(this).find(".expand-ico").remove():$(this).find(".expand-ico").parent().next().css({"white-space":"nowrap"})})}();
|
||||
var goTop=function(e){e=e||.1;var a=$(window).scrollTop(),t=1+e;if(window.scrollTo(0,Math.floor(a/t)),a>0){var n="goTop("+e+")";window.setTimeout(n,16)}},collapseArchive=function(e,a){var t=!0;"collapse-ico"===e.className?(e.className="expand-ico",t=!1):e.className="collapse-ico",$("#archiveSide li").each(function(){var e=$(this);e.data("year")===a&&(t?$(this).show():$(this).hide())})},getArticle=function(e,a){var t=$("#abstract"+a),n=$("#content"+a);return""===n.html()?$.ajax({url:"/get-article-content?id="+a,type:"GET",dataType:"html",beforeSend:function(){t.css("background","url(/skins/neoease/images/ajax-loader.gif) no-repeat scroll center center transparent")},success:function(a,i){e.className="collapse-ico",n.html(a),t.hide().css("background","none"),n.fadeIn("slow")}}):"expand-ico"===e.className?(t.hide(),n.fadeIn(),e.className="collapse-ico"):(n.hide(),t.fadeIn(),e.className="expand-ico"),!1},goTranslate=function(){window.open("http://translate.google.com/translate?sl=auto&tl=auto&u="+location.href)};!function(){$(window).scroll(function(){var e=$(window).scrollTop();if(e>182){var a=$(window).height(),t=e+a-21;$("body").height()-58<=e+a&&(t=$(".footer").offset().top-21),$("#goTop").fadeIn("slow").css("top",t)}else $("#goTop").hide()});var e=(new Date).getFullYear(),a=e;$("#archiveSide li").each(function(t){var n=$(this);n.data("year")!==e&&$(this).hide(),a!==n.data("year")&&(a=n.data("year"),n.before("<li class='archive-year'><div onclick='collapseArchive(this, "+a+")' class='expand-ico'>"+a+" 年</div></li>"))}),$(".recent-comments .expand-ico").click(function(){"expand-ico"===this.className?($(this).parent().next().css({height:"auto","white-space":"normal"}),this.className="collapse-ico"):($(this).parent().next().animate({height:"18px"},function(){$(this).css("white-space","nowrap")}),this.className="expand-ico")}),$(".nav ul li").each(function(){var e=$(this).find("a");e.attr("href")===latkeConfig.servePath+location.pathname?$(this).addClass("current"):/\/[0-9]+$/.test(location.pathname)&&($(".nav ul li")[0].className="current")}),Util.init(),Util.replaceSideEm($(".recent-comments-content")),Util.buildTags("tagsSide"),$(".recent-comments .recent-comments-main").each(function(){$(this).find(".recent-comments-content>a").height()<30?$(this).find(".expand-ico").remove():$(this).find(".expand-ico").parent().next().css({"white-space":"nowrap"})})}();
|
@ -68,9 +68,26 @@
|
||||
</ul>
|
||||
</div>
|
||||
</#if>
|
||||
|
||||
<#if 0 != mostUsedCategories?size>
|
||||
<div>
|
||||
<h4>${categoryLabel}</h4>
|
||||
<ul class="tags">
|
||||
<#list mostUsedCategories as category>
|
||||
<li>
|
||||
<sup>[${category.categoryTagCnt}]</sup>
|
||||
<a class="tag" href="${servePath}/category/${category.categoryURI}">
|
||||
${category.categoryTitle}</a>
|
||||
</li>
|
||||
</#list>
|
||||
</ul>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
</#if>
|
||||
|
||||
<#if 0 != mostUsedTags?size>
|
||||
<div>
|
||||
<h4>${popTagsLabel}</h4>
|
||||
<h4>${tagsLabel}</h4>
|
||||
<ul id="tagsSide" class="tags">
|
||||
<#list mostUsedTags as tag>
|
||||
<li>
|
||||
|
69
next/category-articles.ftl
Normal file
69
next/category-articles.ftl
Normal file
@ -0,0 +1,69 @@
|
||||
<#include "macro-head.ftl">
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<@head title="${category.categoryTitle} - ${blogTitle}">
|
||||
<meta name="keywords" content="${metaKeywords},${category.categoryTitle}"/>
|
||||
<meta name="description" content="<#list articles as article>${article.articleTitle}<#if article_has_next>,</#if></#list>"/>
|
||||
</@head>
|
||||
</head>
|
||||
<body>
|
||||
<#include "header.ftl">
|
||||
<main class="main wrapper">
|
||||
<div class="content posts-collapse">
|
||||
<div class="collection-title">
|
||||
<h2>
|
||||
${category.categoryTitle}
|
||||
<small>${categoryLabel}</small>
|
||||
</h2>
|
||||
</div>
|
||||
<#list articles as article>
|
||||
<article>
|
||||
<header class="post-header">
|
||||
<h1>
|
||||
<a class="post-title" href="${servePath}${article.articlePermalink}">
|
||||
<span>${article.articleTitle}</span>
|
||||
<#if article.articlePutTop>
|
||||
<sup>
|
||||
${topArticleLabel}
|
||||
</sup>
|
||||
</#if>
|
||||
<#if article.hasUpdated>
|
||||
<sup>
|
||||
${updatedLabel}
|
||||
</sup>
|
||||
</#if>
|
||||
</a>
|
||||
</h1>
|
||||
<time class="post-time">
|
||||
${article.articleCreateDate?string("MM-dd")}
|
||||
</time>
|
||||
</header>
|
||||
</article>
|
||||
</#list>
|
||||
|
||||
<#if 0 != paginationPageCount>
|
||||
<nav class="pagination">
|
||||
<#if 1 != paginationPageNums?first>
|
||||
<a href="${servePath}${path}/${paginationPreviousPageNum}" class="extend next"><<</a>
|
||||
<a class="page-number" href="${servePath}${path}/1">1</a> ...
|
||||
</#if>
|
||||
<#list paginationPageNums as paginationPageNum>
|
||||
<#if paginationPageNum == paginationCurrentPageNum>
|
||||
<span class="page-number current">${paginationPageNum}</span>
|
||||
<#else>
|
||||
<a class="page-number" href="${servePath}${path}/${paginationPageNum}">${paginationPageNum}</a>
|
||||
</#if>
|
||||
</#list>
|
||||
<#if paginationPageNums?last != paginationPageCount> ...
|
||||
<a href="${servePath}${path}/${paginationPageCount}" class="page-number">${paginationPageCount}</a>
|
||||
<a href="${servePath}${path}/${paginationNextPageNum}" class="extend next">>></a>
|
||||
</#if>
|
||||
</nav>
|
||||
</#if>
|
||||
</div>
|
||||
<#include "side.ftl">
|
||||
</main>
|
||||
<#include "footer.ftl">
|
||||
</body>
|
||||
</html>
|
@ -10,6 +10,29 @@
|
||||
<body>
|
||||
<#include "header.ftl">
|
||||
<main class="main wrapper">
|
||||
<#if mostUsedCategories?size != 0>
|
||||
<div class="content page-archive">
|
||||
<section class="posts-collapse">
|
||||
<div class="tag-cloud">
|
||||
${sumLabel} ${mostUsedCategories?size} ${categoryLabel}
|
||||
</div>
|
||||
<#list mostUsedCategories as category>
|
||||
<article>
|
||||
<header class="post-header">
|
||||
<h1>
|
||||
<a class="post-title" href="${servePath}/category/${category.categoryURI}">
|
||||
${category.categoryTitle} (${category.categoryTagCnt})</a>
|
||||
<small>${category.categoryDescription}</small>
|
||||
</h1>
|
||||
</header>
|
||||
</article>
|
||||
</#list>
|
||||
</section>
|
||||
</div>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
</#if>
|
||||
<div class="content">
|
||||
<div class="tag-cloud">
|
||||
${sumLabel} ${tags?size} ${tagLabel}
|
||||
|
29
owmx-3.0/category-articles.ftl
Normal file
29
owmx-3.0/category-articles.ftl
Normal file
@ -0,0 +1,29 @@
|
||||
<#include "macro-head.ftl">
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<@head title="${category.categoryTitle} - ${blogTitle}">
|
||||
<meta name="keywords" content="${metaKeywords},${category.categoryTitle}"/>
|
||||
<meta name="description" content="<#list articles as article>${article.articleTitle}<#if article_has_next>,</#if></#list>"/>
|
||||
</@head>
|
||||
</head>
|
||||
<body>
|
||||
${topBarReplacement}
|
||||
<div id="a">
|
||||
<#include "header.ftl">
|
||||
<div id="b">
|
||||
<article>
|
||||
<cite>${categoryLabel}</cite>
|
||||
<blockquote>
|
||||
${category.categoryTitle}
|
||||
(${category.categoryTagCnt}) ${category.categoryDescription}
|
||||
</blockquote>
|
||||
<#include "article-list.ftl">
|
||||
</article>
|
||||
<#include "side.ftl">
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
<#include "footer.ftl">
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@ -1,16 +1,4 @@
|
||||
<aside>
|
||||
<!--
|
||||
<h4>Search</h4>
|
||||
<form action="http://www.google.com/cse" id="cse-search-box" class="s" target="_blank">
|
||||
<div>
|
||||
<input type="hidden" name="cx" value="014052262704486520429:eeg5ule8tro" />
|
||||
<input type="hidden" name="ie" value="UTF-8" />
|
||||
<input type="hidden" name="oe" value="UTF-8">
|
||||
<input type="hidden" name="hl" value="zh-CN">
|
||||
<input type="text" name="q" size="15" value="站内搜索" onclick="this.value=''"/>
|
||||
<input type="hidden" name="sa" value="site-search"/>
|
||||
</div>
|
||||
</form>-->
|
||||
<nav>
|
||||
<h4>Navigation</h4>
|
||||
<ul>
|
||||
@ -99,8 +87,22 @@
|
||||
</#list>
|
||||
</ul>
|
||||
</#if>
|
||||
|
||||
<#if 0 != mostUsedCategories?size>
|
||||
<h4>${categoryLabel}</h4>
|
||||
<ul>
|
||||
<#list mostUsedCategories as category>
|
||||
<li>
|
||||
<a href="${servePath}/category/${category.categoryURI}"
|
||||
title="${category.categoryTitle} (${category.categoryTagCnt})">
|
||||
${category.categoryTitle}</a>(${category.categoryTagCnt})
|
||||
</li>
|
||||
</#list>
|
||||
</ul>
|
||||
</#if>
|
||||
|
||||
<#if 0 != mostUsedTags?size>
|
||||
<h4>${popTagsLabel}</h4>
|
||||
<h4>${tagsLabel}</h4>
|
||||
<ul class="navi-tags">
|
||||
<#list mostUsedTags as tag>
|
||||
<li>
|
||||
|
21
timeline/category-articles.ftl
Normal file
21
timeline/category-articles.ftl
Normal file
@ -0,0 +1,21 @@
|
||||
<#include "macro-head.ftl">
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<@head title="${category.categoryTitle} - ${blogTitle}">
|
||||
<meta name="keywords" content="${metaKeywords},${category.categoryTitle}"/>
|
||||
<meta name="description" content="<#list articles as article>${article.articleTitle}<#if article_has_next>,</#if></#list>"/>
|
||||
</@head>
|
||||
</head>
|
||||
<body>
|
||||
${topBarReplacement}
|
||||
<#include "header.ftl">
|
||||
<h3 id="category" class="nav-abs">
|
||||
${categoryLabel}:
|
||||
${category.categoryTitle}
|
||||
(${category.categoryTagCnt})<small> ${category.categoryDescription}</small>
|
||||
</h3>
|
||||
<#include "article-list.ftl">
|
||||
<#include "footer.ftl">
|
||||
</body>
|
||||
</html>
|
@ -172,17 +172,17 @@ img {
|
||||
background-position: -96px -48px;
|
||||
}
|
||||
|
||||
#tags {
|
||||
.tags {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
#tags li {
|
||||
.tags li {
|
||||
float: left;
|
||||
list-style-type: none;
|
||||
height: 45px;
|
||||
}
|
||||
|
||||
#tags a {
|
||||
.tags a {
|
||||
background-color: #FCFCFC;
|
||||
box-shadow: 0 0 2px #D5D5D5;
|
||||
display: block;
|
||||
@ -190,13 +190,13 @@ img {
|
||||
padding: 5px 10px;
|
||||
}
|
||||
|
||||
#tags a:hover {
|
||||
.tags a:hover {
|
||||
text-shadow: 0 0 2px;
|
||||
text-decoration: none;
|
||||
box-shadow: 0 0 4px #D5D5D5;
|
||||
}
|
||||
|
||||
#tags b {
|
||||
.tags b {
|
||||
font-size: 70%;
|
||||
opacity: 0.6;
|
||||
filter: alpha(opacity=60);
|
||||
|
2
timeline/css/timeline.min.css
vendored
2
timeline/css/timeline.min.css
vendored
File diff suppressed because one or more lines are too long
2
timeline/js/timeline.min.js
vendored
2
timeline/js/timeline.min.js
vendored
File diff suppressed because one or more lines are too long
@ -12,7 +12,22 @@
|
||||
<#include "header.ftl">
|
||||
<div class="wrapper">
|
||||
<div class="container">
|
||||
<ul id="tags" class="module fn-clear">
|
||||
<#if 0 != mostUsedCategories?size>
|
||||
<h2>${categoryLabel}</h2>
|
||||
<ul class="module fn-clear tags">
|
||||
<#list mostUsedCategories as category>
|
||||
<li>
|
||||
<a href="${servePath}/category/${category.categoryURI}">
|
||||
<span>${category.categoryTitle}</span>
|
||||
(<b>${category.categoryTagCnt}</b>)
|
||||
</a>
|
||||
</li>
|
||||
</#list>
|
||||
</ul>
|
||||
</#if>
|
||||
|
||||
<h2>${tagsLabel}</h2>
|
||||
<ul id="tags" class="tags module fn-clear">
|
||||
<#list tags as tag>
|
||||
<li>
|
||||
<a rel="tag" data-count="${tag.tagPublishedRefCount}"
|
||||
|
39
tree-house/category-articles.ftl
Normal file
39
tree-house/category-articles.ftl
Normal file
@ -0,0 +1,39 @@
|
||||
<#include "macro-head.ftl">
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<@head title="${category.categoryTitle} - ${blogTitle}">
|
||||
<meta name="keywords" content="${metaKeywords},${category.categoryTitle}"/>
|
||||
<meta name="description" content="<#list articles as article>${article.articleTitle}<#if article_has_next>,</#if></#list>"/>
|
||||
</@head>
|
||||
</head>
|
||||
<body>
|
||||
<div class="wrapper">
|
||||
<div class="bg-bottom">
|
||||
${topBarReplacement}
|
||||
<div class="content">
|
||||
<div class="header">
|
||||
<#include "header.ftl">
|
||||
</div>
|
||||
<div class="body">
|
||||
<div class="left main">
|
||||
<h2 class="title">
|
||||
${categoryLabel}:
|
||||
${category.categoryTitle}
|
||||
(${category.categoryTagCnt})<small> ${category.categoryDescription}</small>
|
||||
</h2>
|
||||
<#include "article-list.ftl">
|
||||
</div>
|
||||
<div class="left side">
|
||||
<#include "side.ftl">
|
||||
</div>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<#include "footer.ftl">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@ -74,9 +74,26 @@
|
||||
</div>
|
||||
<div class="line"></div>
|
||||
</#if>
|
||||
|
||||
<#if 0 != mostUsedCategories?size>
|
||||
<div class="block">
|
||||
<h3>${categoryLabel}</h3>
|
||||
<ul>
|
||||
<#list mostUsedCategories as category>
|
||||
<li>
|
||||
<a href="${servePath}/category/${category.categoryURI}">
|
||||
${category.categoryTitle} (${category.categoryTagCnt})</a>
|
||||
</li>
|
||||
</#list>
|
||||
</ul>
|
||||
<div class='clear'></div>
|
||||
</div>
|
||||
<div class="line"></div>
|
||||
</#if>
|
||||
|
||||
<#if 0 != mostUsedTags?size>
|
||||
<div class="block popTags">
|
||||
<h3>${popTagsLabel}</h3>
|
||||
<h3>${tagsLabel}</h3>
|
||||
<ul>
|
||||
<#list mostUsedTags as tag>
|
||||
<li>
|
||||
|
22
yilia/category-articles.ftl
Normal file
22
yilia/category-articles.ftl
Normal file
@ -0,0 +1,22 @@
|
||||
<#include "macro-head.ftl">
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<@head title="${category.categoryTitle} - ${blogTitle}">
|
||||
<meta name="keywords" content="${metaKeywords},${category.categoryTitle}"/>
|
||||
<meta name="description" content="<#list articles as article>${article.articleTitle}<#if article_has_next>,</#if></#list>"/>
|
||||
</@head>
|
||||
</head>
|
||||
<body>
|
||||
<#include "side.ftl">
|
||||
<main>
|
||||
<h2 class="classify-name">
|
||||
${categoryLabel}
|
||||
${category.categoryTitle}
|
||||
(${category.categoryTagCnt})<small> ${category.categoryDescription}</small>
|
||||
</h2>
|
||||
<#include "article-list.ftl">
|
||||
<#include "footer.ftl">
|
||||
</main>
|
||||
</body>
|
||||
</html>
|
2
yilia/js/yilia.min.js
vendored
2
yilia/js/yilia.min.js
vendored
@ -13,4 +13,4 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
var Yilia={init:function(){Util.killIE(),this._initToc(),this.resetTags(),$(window).scroll(function(){$("article").length>0&&0===$("article.post").length&&$("article:not(.show)").each(function(){$(this).offset().top<=$(window).scrollTop()+$(window).height()-$(this).height()/7&&$(this).addClass("show")}),$(window).scrollTop()>$(window).height()?$(".icon-goup").show():$(".icon-goup").hide(),1===$("article.post").length&&$("article.post").addClass("show")}),$(window).scroll()},_initToc:function(){if(0===$(".b3-solo-list li").length)return!1;$(".side footer").after('<div class="toc"><a href="javascript:$(\'.side .toc\').hide()" class="close">X</a></div>'),$(".side .toc a").after($(".b3-solo-list")),$(".side .toc-btn").show()},resetTags:function(){$("a.tag").each(function(t){$(this).addClass("color"+Math.ceil(4*Math.random()))})},share:function(){$(".share span").click(function(){var t=$(this).data("type"),i=encodeURIComponent($("title").text()),o=$(".post-title a").attr("href")?$(".post-title a").attr("href"):location,e=$(".post-content img:eq(0)").attr("src"),s={};s.tencent="http://share.v.t.qq.com/index.php?c=share&a=index&title="+i+"&url="+o+"&pic="+e,s.weibo="http://v.t.sina.com.cn/share/share.php?title="+i+"&url="+o+"&pic="+e,s.google="https://plus.google.com/share?url="+o,s.twitter="https://twitter.com/intent/tweet?status="+i+" "+o,window.open(s[t],"_blank","top=100,left=200,width=648,height=618")})}};Yilia.init();
|
||||
var Yilia={init:function(){Util.killIE(),this._initToc(),this.resetTags(),$(window).scroll(function(){$("article").length>0&&0===$("article.post").length&&$("article:not(.show)").each(function(){$(this).offset().top<=$(window).scrollTop()+$(window).height()-$(this).height()/7&&$(this).addClass("show")}),$(window).scrollTop()>$(window).height()?$(".icon-goup").show():$(".icon-goup").hide(),1===$("article.post").length&&$("article.post").addClass("show")}),$(window).scroll()},_initToc:function(){return 0!==$(".b3-solo-list li").length&&($(".side footer").after('<div class="toc"><a href="javascript:$(\'.side .toc\').hide()" class="close">X</a></div>'),$(".side .toc a").after($(".b3-solo-list")),void $(".side .toc-btn").show())},resetTags:function(){$("a.tag").each(function(t){$(this).addClass("color"+Math.ceil(4*Math.random()))})},share:function(){$(".share span").click(function(){var t=$(this).data("type"),i=encodeURIComponent($("title").text()),o=$(".post-title a").attr("href")?$(".post-title a").attr("href"):location,e=$(".post-content img:eq(0)").attr("src"),s={};s.tencent="http://share.v.t.qq.com/index.php?c=share&a=index&title="+i+"&url="+o+"&pic="+e,s.weibo="http://v.t.sina.com.cn/share/share.php?title="+i+"&url="+o+"&pic="+e,s.google="https://plus.google.com/share?url="+o,s.twitter="https://twitter.com/intent/tweet?status="+i+" "+o,window.open(s[t],"_blank","top=100,left=200,width=648,height=618")})}};Yilia.init();
|
@ -10,6 +10,26 @@
|
||||
<body>
|
||||
<#include "side.ftl">
|
||||
<main class="classify">
|
||||
<#if 0 != mostUsedCategories?size>
|
||||
<article>
|
||||
<header>
|
||||
<h2>
|
||||
<a rel="archive" href="${servePath}/tags.html">
|
||||
${categoryLabel}
|
||||
</a>
|
||||
</h2>
|
||||
</header>
|
||||
<ul class="tags fn-clear">
|
||||
<#list mostUsedCategories as category>
|
||||
<li>
|
||||
<a class="tag" href="${servePath}/category/${category.categoryURI}">
|
||||
${category.categoryTitle} (${category.categoryTagCnt})</a>
|
||||
</li>
|
||||
</#list>
|
||||
</ul>
|
||||
</article>
|
||||
</#if>
|
||||
|
||||
<article>
|
||||
<header>
|
||||
<h2>
|
||||
|
Loading…
x
Reference in New Issue
Block a user