Commit fb8bcf9e authored by Liang Ding's avatar Liang Ding

发布 - 1.6.0

parent 9326c7ed
...@@ -5,6 +5,12 @@ ...@@ -5,6 +5,12 @@
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head> </head>
<body> <body>
<h2>Release 1.6.0 - Sep 8, 2016</h2>
<ul>
<li><a href="https://github.com/b3log/solo/issues/12147">12147 用户管理翻页失败</a>&nbsp;<span style='background: #fc2929 !important;color:#FFFFFF !important;padding: 1px 4px;'>bug</span></li>
<li><a href="https://github.com/b3log/solo/issues/12153">12153 语言设置为 English 时首页报错</a>&nbsp;<span style='background: #fc2929 !important;color:#FFFFFF !important;padding: 1px 4px;'>bug</span></li>
<li><a href="https://github.com/b3log/solo/issues/12150">12150 新版后台 UI</a>&nbsp;<span style='background: #84b6eb !important;color:#FFFFFF !important;padding: 1px 4px;'>enhancement</span></li>
</ul>
<h2>Release 1.5.0 - Aug 10, 2016</h2> <h2>Release 1.5.0 - Aug 10, 2016</h2>
<ul> <ul>
<li><a href="https://github.com/b3log/solo/issues/12130">12130 MySQL 数据导出 SQL 文件</a>&nbsp;<span style='background: #02e10c !important;color:#FFFFFF !important;padding: 1px 4px;'>feature</span></li> <li><a href="https://github.com/b3log/solo/issues/12130">12130 MySQL 数据导出 SQL 文件</a>&nbsp;<span style='background: #02e10c !important;color:#FFFFFF !important;padding: 1px 4px;'>feature</span></li>
......
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!-- <!--
Description: Solo POM. Description: Solo POM.
Version: 3.13.1.25, Aug 19, 2016 Version: 3.14.1.25, Sep 8, 2016
Author: <a href="http://88250.b3log.org">Liang Ding</a> Author: <a href="http://88250.b3log.org">Liang Ding</a>
Author: <a href="http://www.annpeter.cn">Ann Peter</a> Author: <a href="http://www.annpeter.cn">Ann Peter</a>
--> -->
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
<artifactId>solo</artifactId> <artifactId>solo</artifactId>
<packaging>war</packaging> <packaging>war</packaging>
<name>Solo</name> <name>Solo</name>
<version>1.5.0</version> <version>1.6.0</version>
<description> <description>
A blogging system written in Java, feel free to create your or your team own blog. 一个用 Java 实现的博客系统,为你或你的团队创建个博客吧。 A blogging system written in Java, feel free to create your or your team own blog. 一个用 Java 实现的博客系统,为你或你的团队创建个博客吧。
</description> </description>
......
...@@ -60,7 +60,7 @@ import org.json.JSONObject; ...@@ -60,7 +60,7 @@ import org.json.JSONObject;
* Solo Servlet listener. * Solo Servlet listener.
* *
* @author <a href="http://88250.b3log.org">Liang Ding</a> * @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.8.2.15, Aug 10, 2016 * @version 1.9.2.15, Sep 8, 2016
* @since 0.3.1 * @since 0.3.1
*/ */
public final class SoloServletListener extends AbstractServletListener { public final class SoloServletListener extends AbstractServletListener {
...@@ -68,7 +68,7 @@ public final class SoloServletListener extends AbstractServletListener { ...@@ -68,7 +68,7 @@ public final class SoloServletListener extends AbstractServletListener {
/** /**
* Solo version. * Solo version.
*/ */
public static final String VERSION = "1.5.0"; public static final String VERSION = "1.6.0";
/** /**
* Logger. * Logger.
......
...@@ -46,7 +46,7 @@ import org.json.JSONObject; ...@@ -46,7 +46,7 @@ import org.json.JSONObject;
* *
* @author <a href="http://88250.b3log.org">Liang Ding</a> * @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="mailto:dongxu.wang@acm.org">Dongxu Wang</a> * @author <a href="mailto:dongxu.wang@acm.org">Dongxu Wang</a>
* @version 1.2.0.6, Aug 10, 2016 * @version 1.2.0.7, Sep 8, 2016
* @since 1.2.0 * @since 1.2.0
*/ */
@Service @Service
...@@ -111,7 +111,7 @@ public class UpgradeService { ...@@ -111,7 +111,7 @@ public class UpgradeService {
/** /**
* Old version. * Old version.
*/ */
private static final String FROM_VER = "1.4.0"; private static final String FROM_VER = "1.5.0";
/** /**
* New version. * New version.
......
...@@ -5,6 +5,12 @@ ...@@ -5,6 +5,12 @@
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head> </head>
<body> <body>
<h2>Release 1.6.0 - Sep 8, 2016</h2>
<ul>
<li><a href="https://github.com/b3log/solo/issues/12147">12147 用户管理翻页失败</a>&nbsp;<span style='background: #fc2929 !important;color:#FFFFFF !important;padding: 1px 4px;'>bug</span></li>
<li><a href="https://github.com/b3log/solo/issues/12153">12153 语言设置为 English 时首页报错</a>&nbsp;<span style='background: #fc2929 !important;color:#FFFFFF !important;padding: 1px 4px;'>bug</span></li>
<li><a href="https://github.com/b3log/solo/issues/12150">12150 新版后台 UI</a>&nbsp;<span style='background: #84b6eb !important;color:#FFFFFF !important;padding: 1px 4px;'>enhancement</span></li>
</ul>
<h2>Release 1.5.0 - Aug 10, 2016</h2> <h2>Release 1.5.0 - Aug 10, 2016</h2>
<ul> <ul>
<li><a href="https://github.com/b3log/solo/issues/12130">12130 MySQL 数据导出 SQL 文件</a>&nbsp;<span style='background: #02e10c !important;color:#FFFFFF !important;padding: 1px 4px;'>feature</span></li> <li><a href="https://github.com/b3log/solo/issues/12130">12130 MySQL 数据导出 SQL 文件</a>&nbsp;<span style='background: #02e10c !important;color:#FFFFFF !important;padding: 1px 4px;'>feature</span></li>
......
...@@ -13,4 +13,4 @@ ...@@ -13,4 +13,4 @@
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
body,input,textarea{font-family:'sans-serif','\5fae\8f6f\96c5\9ed1'}html,body{height:100%;min-width:1024px;background-color:#fafafa}a:link{color:#21759b}a:visited{color:#551a8b}a:active{color:#d54121}a:hover{color:#d54121}button.selected{background:url("../images/bowknot/completed.png") no-repeat scroll right bottom transparent;color:#d54121}.ico-arrow-down,.ico-arrow-up{background:url("../images/arrows.png") repeat scroll 0 4px transparent;float:right;height:20px;margin:2px 3px 0 0;width:18px}.ico-arrow-up{background-position:0 -30px}.aboutIcon{background-position:-16px -48px}#allPanel{height:auto;min-height:100%;position:relative}#tabsPanel{margin:30px 0 0 162px;padding:0 12px}#tabsPanel>div{padding-bottom:36px}.tip{font-weight:bold;margin:0 auto;overflow:hidden;padding:2px 0;position:fixed;text-align:center;top:5px;width:100%;z-index:2}.tip-msg{top:33px}#tipMsg,#loadMsg{background-color:#e5e7eb;border-radius:3px;padding:2px 0}.footer{bottom:12px;position:absolute;text-align:center;width:100%}#top{background-color:#666;background-image:linear-gradient(#666,#7f7f7f);background-image:-ms-linear-gradient(#666,#7f7f7f);background-image:-o-linear-gradient(#666,#7f7f7f);background-image:-webkit-linear-gradient(#666,#7f7f7f);filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#666666',endColorstr='#7F7F7F')}#top a,#top span span{float:left;line-height:18px;margin:6px 0;padding:0 6px;text-decoration:none;text-shadow:0 -1px 0 #fff;font-weight:normal;border-right:1px solid #686868;color:#ccc;text-shadow:0 -1px 0 #555}#top>a{color:#fff}#top a:hover,#top a.hover{border-radius:0 13px 13px 0;margin:0;line-height:30px;background-color:#4c4c4c;border-left-color:#707070}#tabs{background-color:#ececec;border-radius:0 5px 5px 0;border-right:1px solid #CCC;border-top:1px solid #DDD;bottom:0;box-shadow:6px 0 6px #ececec;min-height:468px;padding:15px 0;position:absolute;top:58px;width:145px}#tabs ul{list-style:none}#tabs li{margin-left:0}#tabs a,#tabs>ul>li>div{color:#21759b;display:block;text-decoration:none;cursor:pointer;letter-spacing:1px}#tabs a:hover,#tabs>ul>li>div:hover{color:#d54121}#tabs>ul>li>div{border-bottom:1px solid #dfdfdf;border-top:1px solid #f9f9f9;font-weight:bold;padding-left:12px;line-height:30px;height:30px}#tabs>ul>li>div>a.tab-current{background-color:#777;border-bottom:1px solid #6d6d6d;border-top:1px solid #808080;color:#fff;margin-left:-12px;padding-left:12px;text-shadow:0 -1px 0 #333}#tabs li li a{background-color:#fff;padding-left:36px;line-height:28px;height:28px}#tabs .tab-current{background-color:#eaf2fa;color:#333;font-weight:bold}#tabs li li a:hover{background-color:#eaf2fa;color:#333}#tabs .commentIcon,#tabs .postIcon,#tabs .preferenceIcon,#tabs .usersIcon,#tabs .aboutIcon{margin:6px 9px 0 0}.sub-tabs{height:30px}.sub-tabs ul{float:right;list-style:none outside none;margin-right:24px}.sub-tabs li{float:left}.sub-tabs li a{background-color:#ececec;border:1px solid #dfdfdf;border-bottom:0;border-radius:5px 5px 0 0;color:#333;display:block;line-height:29px;padding:0 12px;text-decoration:none}.sub-tabs .tab-current,.sub-tabs .tab-current:hover{background-color:#fff;font-weight:bold;line-height:30px}.sub-tabs a:hover{background-color:#f5f5f5}.sub-tabs-main{background-color:#fff;border:1px solid #dfdfdf;padding:12px;border-radius:6px}.form>div{margin:12px 0}.form>div label{font-weight:bold;line-height:28px;margin-right:12px}.module-panel{border:1px solid #dfdfdf;border-radius:3px 3px 3px 3px;box-shadow:0 1px 0 #fff inset;background-color:#f5f5f5;margin-bottom:36px;min-height:160px}.module-header{background-color:#f9f9f9;background-image:linear-gradient(#f9f9f9,#ececec);background-image:-ms-linear-gradient(#f9f9f9,#ececec);background-image:-o-linear-gradient(#f9f9f9,#ececec);background-image:-webkit-linear-gradient(#f9f9f9,#ececec);filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#f9f9f9',endColorstr='#ececec');border-bottom-color:#dfdfdf;box-shadow:0 1px 0 #fff;text-shadow:0 1px 0 #fff;padding:5px 10px}.module-header h2{color:#464646;font-size:16px}.module-header a{text-decoration:none}.comment-title{background-color:#ececec;border-bottom:1px solid #dfdfdf;border-top:1px solid #f9f9f9;padding:3px 6px 3px 12px}#comments{height:462px;overflow:auto}.markdown-preivew{background-color:#fff;background-image:linear-gradient(#fff,#f3f3f3);background-image:-ms-linear-gradient(#fff,#f3f3f3);background-image:-o-linear-gradient(#fff,#f3f3f3);background-image:-webkit-linear-gradient(#fff,#f3f3f3);filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#FFFFFF',endColorstr='#F3F3F3');border-color:#c0c0c0 #D9D9D9 #d9d9d9;border-style:solid;border-width:1px;float:left;height:500px;margin-left:20px;overflow:auto;width:47%;word-wrap:break-word}.markdown-help.ico-help,.markdown-help.ico-close{background-image:url("../images/icon.png");background-position:-16px -47px;cursor:pointer;float:right;height:17px;width:17px}.markdown-help.ico-close{height:16px;background-position:-48px -16px}.markdown-help-main,.markdown-preview-main{color:#21759b;padding:0 12px}.markdown-help-main dt{font-size:14px;font-weight:bold;margin:12px 0 6px 0}.markdown-help-main dd{margin-left:12px}button#submitArticle{background:none repeat scroll 0 0 #d54121;box-shadow:0 0 0 1px #fff inset,0 1px 1px rgba(0,0,0,0.1);text-shadow:0 1px rgba(0,0,0,0.1);color:#FFF}#skinsPanel{min-width:328px;width:99%}.skinPreview{cursor:pointer;height:160px;margin:6px;width:280px}.skinItem{background-color:#fafafa;border-radius:3px;box-shadow:1px 1px 3px #333;line-height:16px;margin:24px 12px;padding:5px;text-align:center}#skinMain .skinItem.selected{background-color:#d54121}.skinItem:hover{background-color:#EEE}.f-blue,.error-msg{color:#36c}.signs button{margin:0 12px}.small-head{float:left;height:35px;margin:3px 9px 0 3px;width:35px}#commentTable .table-main td{vertical-align:top}.about-logo{float:left;margin:62px 36px 62px 24px}.about-margin{font-size:20px;margin:20px 0}.ico-alipay-me{background-image:url("../images/alipay-me.png");font-size:20px;height:24px;margin:20px 0;width:126px}.completed-input{margin:2px 12px 0 0}.completed-panel{background-color:#ececec;border:1px solid #ccc;color:#00c;display:none;overflow:auto;padding:2px;position:absolute;z-index:10}.completed-panel a{display:block;text-decoration:none}.completed-panel a.selected{background-color:#fff;color:#d54121}.completed-ck{margin-top:9px}.completed-ck span{background:url(../images/icon.png) repeat center bottom;border:1px solid;border-color:#CCc #bbb #A0A0A0;border-radius:4px;color:#21759b;cursor:pointer;float:left;height:28px;line-height:26px;margin:3px 6px;padding:0 6px;vertical-align:top}.completed-ck span:hover{border-color:#BBB}.completed-ck span.selected{color:#d54121;background:url(../images/bowknot/completed.png) no-repeat right bottom}.dialog-background{background-color:#000;display:none;filter:alpha(opacity=30);height:100%;left:0;opacity:.3;position:absolute;top:0;width:100%;z-index:90}.dialog-panel{display:none;position:absolute;z-index:100}.dialog-title{color:#fff;float:left;font-size:12px;line-height:27px;margin-left:3px}.dialog-header-bg{background:url("../images/icon.png") repeat scroll center bottom #f1f1f1;border-color:#c0c0c0 #D9D9D9 #d9d9d9;border-radius:6px 6px 0 0;border-style:solid;border-width:1px 1px 0;cursor:move;height:34px}.dialog-close-icon{background:url("../images/bowknot/dialog-close.png") no-repeat scroll 0 0 transparent;cursor:pointer;float:right;height:18px;margin-top:6px;padding:3px;width:22px}.dialog-close-icon:hover{background-image:url("../images/bowknot/dialog-close-hover.png")}.dialog-main{background-color:#fff;border:2px solid #666;border-color:#c0c0c0 #D9D9D9 #d9d9d9;border-top-width:0;padding:12px}.paginate-paginate div,.paginate-paginate a,.paginate-pageCount{float:left;height:20px;line-height:20px;margin:0 5px;text-decoration:none}.pagination-pages{background:url(../images/icon.png) repeat center bottom;border:1px solid;border-color:#CCc #bbb #A0A0A0;border-radius:4px;padding:0 6px;cursor:pointer;float:left;height:20px;line-height:20px;margin:0 5px}.pagination-current-page{cursor:auto;font-weight:bold;border-color:#BBB}.paginate-inputPage{height:14px;width:24px}.table-main{margin:0;padding:0;position:relative}.table-main table{word-break:break-all;word-wrap:break-word}.table-header{border:1px solid #d0d0d0;border-bottom:0;border-radius:6px 6px 0 0}.table-header th{height:34px;line-height:34px;text-align:left;text-indent:6px;font-size:14px;font-weight:normal;background:url("../images/icon.png") repeat scroll center bottom #f1f1f1}.table-main td{border-bottom:1px solid #d0d0d0;color:#333;padding:3px 0}.table-lineHover .table-hasExpend td{border-bottom:0}.table-heiglight td,.table-lineHover td{background-color:#f3f3f3;border-right-color:#f3f3f3}.table-expendRow td{padding:0 0 5px 36px}.table-expendRow td span{margin-left:60px}.table-expendRow td a{background-color:#999;border-radius:3px;color:#FFF;font-size:12px;margin-right:5px;padding:1px 6px;text-decoration:none}.table-expendRow td a:hover{background-color:#BBB}.table-center{margin:0 auto}.table-upIcon,.table-downIcon{background-image:url("../images/icon.png");cursor:pointer;float:left;height:16px;width:16px;background-position:-81px -32px}.table-upIcon{background-position:-64px -32px;margin-right:6px}.table-tag{color:#d54121;font-size:12px;font-style:italic;margin-left:10px}.tip-panel{background-color:#FFF;box-shadow:0 3px 10px #8b8b8b;display:none;max-height:500px;max-width:500px;overflow:hidden;padding:3px;position:absolute;z-index:1} body,input,textarea{font-family:"Helvetica Neue","Luxi Sans","DejaVu Sans",Tahoma,"Hiragino Sans GB","Microsoft Yahei",sans-serif}html,body{min-width:1024px;color:#767676;background:#f1f2f7;font-size:13px}a{color:#4183c4;text-decoration:none}a:visited{color:#7ba9d6}a:active{color:#2c5d8d}a:hover{text-decoration:underline}button.selected{background:url("../images/bowknot/completed.png") no-repeat scroll right bottom transparent!important;color:#d54121!important;border-color:#b0b5b9!important}@font-face{font-family:'icomoon';src:url('fonts/icomoon.eot?1450');src:url('fonts/icomoon.eot?#iefix') format('embedded-opentype'),url('fonts/icomoon.ttf?1450') format('truetype'),url('fonts/icomoon.woff?1450') format('woff'),url('fonts/icomoon.svg#icomoon') format('svg');font-weight:normal;font-style:normal}[class^="icon-"],[class*=" icon-"]{font-family:'icomoon';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}a[class^="icon-"],a[class*=" icon-"]{color:#333}a[class^="icon-"]:hover,a[class*=" icon-"]:hover{text-decoration:none;color:#4183c4}.icon-upload:before{content:"\f0ee"}.icon-copy:before{content:"\e908"}.icon-time:before{content:"\e906"}.icon-sortasc:before{content:"\e905"}.icon-locked:before{content:"\e61e"}.icon-close:before{content:"\e909"}.icon-points:before{content:"\e900"}.icon-goods:before{content:"\e904"}.icon-bold:before{content:"\e000"}.icon-italic:before{content:"\e001"}.icon-quote:before{content:"\e003"}.icon-unordered-list:before{content:"\e004"}.icon-ordered-list:before{content:"\e005"}.icon-link:before{content:"\e006"}.icon-image:before{content:"\e007"}.icon-play:before{content:"\e008"}.icon-music:before{content:"\e009"}.icon-contract:before{content:"\e00a"}.icon-fullscreen:before{content:"\e00b"}.icon-question:before{content:"\e00c"}.icon-info:before{content:"\e00d"}.icon-undo:before{content:"\e00e"}.icon-redo:before{content:"\e00f"}.icon-code:before{content:"\e011"}.icon-preview:before{content:"\e002"}.icon-navigation:before{content:"\e903"}.icon-thumbs-down:before{content:"\e901"}.icon-thumbs-up:before{content:"\e902"}.icon-video:before{content:"\f057"}.icon-feed:before{content:"\e61f"}.icon-article:before{content:"\e61d"}.icon-star:before{content:"\e600"}.icon-register:before{content:"\e602"}.icon-logout:before{content:"\e603"}.icon-setting:before{content:"\e604"}.icon-google:before{content:"\e605"}.icon-search:before{content:"\e606"}.icon-weibo:before{content:"\e607"}.icon-date:before{content:"\e608"}.icon-view:before{content:"\e609"}.icon-cmts:before{content:"\e60a"}.icon-refresh:before{content:"\e60b"}.icon-up:before{content:"\e60c"}.icon-twitter:before{content:"\e60d"}.icon-edit:before{content:"\e60e"}.icon-tencent:before{content:"\e60f"}.icon-tag:before{content:"\e610"}.icon-tags:before{content:"\e611"}.icon-addfile:before{content:"\e612"}.icon-login:before{content:"\e613"}.icon-articles:before{content:"\e614"}.icon-userrole:before{content:"\e615"}.icon-email:before{content:"\e616"}.icon-flag:before{content:"\e617"}.icon-chevron-down:before{content:"\e618";margin-right:10px}.icon-chevron-up:before{content:"\e619";margin-right:10px}.icon-reply:before{content:"\e61a"}.icon-clock:before{content:"\e61b"}.icon-compass:before{content:"\e61c"}.icon-heart:before{content:"\e9da"}.icon-wechat:before{content:"\e907"}.aboutIcon{background-position:-16px -48px}#allPanel{height:auto;min-height:100%;position:relative}#tabsPanel{margin:50px 0 0 240px;padding:15px}#tabsPanel>div{padding-bottom:36px}#tabsPanel_article-list,#tabsPanel_draft-list,#tabsPanel_comment-list,#tabsPanel_plugin-list,#tabsPanel_page-list>div:first-child,#tabsPanel_user-list>div:first-child,#tabsPanel_link-list>div:first-child{background-color:#FFF;border-radius:4px;margin-bottom:40px;overflow:hidden}.tip{font-weight:bold;margin:0 auto;overflow:hidden;padding:2px 0;position:fixed;text-align:center;top:3px;left:255px;z-index:1001}#tipMsg,#loadMsg{color:#31708f;background-color:#d9edf7;border-radius:4px;line-height:40px;display:inline-block}.footer{bottom:12px;position:absolute;text-align:center;width:100%;padding-left:240px;box-sizing:border-box}#top{height:50px;position:fixed;box-shadow:1px 0 3px rgba(0,0,0,.15);width:100%;top:0;background-color:#fff;z-index:1000}#top>a{background:#1fb5ad;float:left;width:240px;height:50px;position:relative;color:#f7f7f7;text-align:center;text-decoration:none;font-size:20px;line-height:50px}#top>.right a{color:#555;line-height:50px;margin:0 10px;border:1px solid #f6f6f6;background-color:#f6f6f6;border-radius:100px;padding:10px;text-decoration:none}#top>.right a:hover{color:#333}#tabs{height:100%;min-height:468px;width:240px;margin-top:50px;position:fixed;top:0;background-color:#32323a;overflow:auto}#tabs ul{list-style:none}#tabs li{margin-left:0;border-bottom:1px solid rgba(255,255,255,0.05)}#tabs li>div>a,#tabs #tabToolsTitle,#tabs #tabArticleTitle{color:#aeb2b7;display:block;text-decoration:none;letter-spacing:1px;padding:18px 0 18px 25px;line-height:18px;height:18px;transition:all .3s ease}#tabs a:hover,#tabs a.tab-current,#tabs #tabToolsTitle.tab-current,#tabs #tabArticleTitle.tab-current,#tabs #tabToolsTitle:hover,#tabs #tabArticleTitle:hover{background-color:#28282e;color:#1fb5ad}#tabs li li{border-bottom:0}#tabs li li>div>a{padding:13px 0 13px 46px;line-height:15px;height:15px;background-color:#28282e}#tabs li li>div>a:hover,#tabs li li>div>a.tab-current{background-color:#202025}#tabs .commentIcon,#tabs .postIcon,#tabs .preferenceIcon,#tabs .usersIcon,#tabs .aboutIcon{display:none}.sub-tabs{background-color:#e0e1e7;border-radius:4px 4px 0 0;overflow:hidden}.sub-tabs ul{float:left;list-style:none outside none;margin-right:24px}.sub-tabs li{float:left;margin:0}.sub-tabs li a{border-right:1px solid #e0e1e7;color:#898989;display:block;line-height:18px;padding:20px 15px;text-decoration:none}.sub-tabs .tab-current,.sub-tabs .tab-current:hover,.sub-tabs a:hover{background-color:#fff;color:#1fb5ad}.sub-tabs-main{background-color:#fff;padding:15px;border-radius:0 0 4px 4px}.form>div{margin:15px 0}.form label{margin-bottom:10px;display:inline-block}.form input[type='text'],.form input[type='password'],.form textarea{font-size:14px;outline:medium none;width:100%;padding:6px 12px;height:34px;box-sizing:border-box;border:1px solid #e2e2e4;color:#333;border-radius:4px;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form textarea{height:auto}.form input[type='text']:focus,.form input[type='password']:focus,.form textarea:focus{box-shadow:none;border-color:#1fb5ad}.form button,.completed-ck span{padding:6px 12px;margin-bottom:0;font-size:14px;font-weight:400;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;user-select:none;background-image:none;border:1px solid #1fb5ad;border-radius:4px;background-color:#1fb5ad;color:#fff;height:auto;outline:0}.form button:hover{background-color:#1ca59e;border-color:#1ca59e}.module-panel{border-radius:4px;background-color:#fff;margin-bottom:20px;min-height:160px}.module-header{background:#fafafa;padding:15px;border-bottom:1px solid #eff2f7;border-top-left-radius:3px;border-top-right-radius:3px}.module-header h2{font-size:13px;font-weight:400}.module-header a{color:#767676;text-decoration:none}.module-header a:hover{color:#1fb5ad}.module-panel .module-body{padding:15px}.module-panel .module-body li{padding:10px;line-height:18px;border-bottom:1px solid #ddd}.module-panel .module-body li:hover{background-color:#f5f5f5}.module-panel .module-body li a:hover{text-decoration:none}.comment-title{background-color:#ececec;border-bottom:1px solid #dfdfdf;border-top:1px solid #f9f9f9;padding:3px 6px 3px 12px}#comments{height:462px;overflow:auto}button#submitArticle,#unSubmitArticle{background-color:#fa8564;border-color:#fa8564}button#submitArticle:hover,#unSubmitArticle:hover{background-color:#ec6459;border-color:#ec6459}.CodeMirror{border-radius:0 0 3px 3px;box-shadow:0 1px 2px rgba(0,0,0,0.075) inset;border:1px solid #ccc;margin-bottom:20px;border-top-width:0;height:470px}.comment-content .CodeMirror{height:170px}#skinsPanel{min-width:328px;width:99%}.skinPreview{cursor:pointer;height:160px;margin:6px;width:280px}.skinItem{background-color:#fafafa;border-radius:3px;box-shadow:1px 1px 3px #333;line-height:16px;margin:24px 12px;padding:5px;text-align:center}#skinMain .skinItem.selected{background-color:#1fb5ad}.skinItem:hover{background-color:#EEE}.f-blue,.error-msg{color:#36c}.signs button{margin:0 12px}#keyOfSolo{width:200px}.small-head{float:left;height:35px;margin:3px 9px 0 3px;width:35px}#commentTable .table-main td{vertical-align:top}.about-logo{float:left;margin:62px 36px 62px 24px}.about-margin{font-size:20px;margin:20px 0}.ico-alipay-me{background-image:url("../images/alipay-me.png");font-size:20px;height:24px;margin:20px 0;width:126px}.completed-input{margin:2px 12px 0 0}.completed-panel{background-color:#ececec;border:1px solid #ccc;color:#00c;display:none;overflow:auto;padding:2px;position:absolute;z-index:10}.completed-panel a{display:block;text-decoration:none}.completed-panel a.selected{background-color:#fff;color:#d54121}.completed-ck{margin-top:9px}.completed-ck span{margin:5px 10px 5px 0;display:inline-block;background-color:#c7cbd6;border-color:#c7cbd6}.completed-ck span:hover{background-color:#b0b5b9;border-color:#b0b5b9}.completed-ck span.selected{color:#d54121;background:url(../images/bowknot/completed.png) no-repeat right bottom}.dialog-background{background-color:#000;display:none;filter:alpha(opacity=30);height:100%;left:0;opacity:.3;position:absolute;top:0;width:100%;z-index:90}.dialog-panel{display:none;position:absolute;z-index:100}.dialog-title{color:#fff;float:left;font-size:12px;line-height:27px;margin-left:3px}.dialog-header-bg{background:url("../images/icon.png") repeat scroll center bottom #f1f1f1;border-color:#c0c0c0 #D9D9D9 #d9d9d9;border-radius:6px 6px 0 0;border-style:solid;border-width:1px 1px 0;cursor:move;height:34px}.dialog-close-icon{background:url("../images/bowknot/dialog-close.png") no-repeat scroll 0 0 transparent;cursor:pointer;float:right;height:18px;margin-top:6px;padding:3px;width:22px}.dialog-close-icon:hover{background-image:url("../images/bowknot/dialog-close-hover.png")}.dialog-main{background-color:#fff;border:2px solid #666;border-color:#c0c0c0 #D9D9D9 #d9d9d9;border-top-width:0;padding:12px}.paginate-paginate div.button.paginate-page,.paginate-paginate a,.paginate-pageCount,.pagination-pages{border:1px solid #eff2f7;padding:6px 12px;cursor:pointer;float:left;line-height:18px;background:#eee;height:18px;margin-left:1px;border-radius:0;text-decoration:none;color:#333}.pagination-current-page,.paginate-pageCount{cursor:auto}.paginate-pageCount{margin-left:10px}.pagination-current-page,.paginate-paginate a:hover,.paginate-paginate div.button.paginate-page:hover,.pagination-pages:hover{border-color:#2eb4ad;background-color:#2eb4ad;color:#FFF}.paginate-paginate div.button{padding:0;float:left;border:0;background:0}.paginate-inputPage{height:26px;width:24px;margin:0 5px}.table-main{margin:0;padding:0;position:relative}.table-main table{word-break:break-all;word-wrap:break-word}.table-header{border-bottom:1px solid #ddd;background-color:#fafafa;padding:15px 0}.table-header th{line-height:18px;text-align:left;text-indent:6px;font-weight:normal}.table-main td{border-bottom:1px solid #ddd;color:#767676;padding:10px 0}.table-lineHover .table-hasExpend td{border-bottom:0}.table-heiglight td,.table-lineHover td{background-color:#f5f5f5;border-right-color:#f5f5f5}.table-expendRow td{padding:0 0 5px 36px}.table-expendRow td span{margin-left:60px}.table-expendRow td a{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px;text-decoration:none;color:#FFF;background-color:#c7cbd6;border-color:#c7cbd6}.table-expendRow td a:hover{background-color:#b0b5b9;border-color:#b0b5b9}.table-center{margin:0 auto}.table-upIcon,.table-downIcon{background-image:url("../images/icon.png");cursor:pointer;float:left;height:16px;width:16px;background-position:-81px -32px}.table-upIcon{background-position:-64px -32px;margin-right:6px}.table-tag{color:#d54121;font-size:12px;font-style:italic;margin-left:10px}.tip-panel{background-color:#FFF;box-shadow:0 3px 10px #8b8b8b;display:none;max-height:500px;max-width:500px;overflow:hidden;padding:3px;position:absolute;z-index:1}
\ No newline at end of file \ No newline at end of file
...@@ -13,4 +13,4 @@ ...@@ -13,4 +13,4 @@
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
html,body,div,ul,li,h1,h2,h3,h4,h5,h6,p,dd,dl,ol{margin:0;padding:0}body{background-color:#FFF;color:#000;font-family:elvetica,Arial,'sans-serif','\5fae\8f6f\96c5\9ed1';font-size:small}img{border:medium none;margin:0;padding:0;vertical-align:middle}h1{font-size:160%}h2{font-size:140%}h3{font-size:120%}h4{font-size:110%}textarea{overflow:auto}li{margin-left:12px}button,.button{background:url(../images/icon.png) repeat center bottom;border:1px solid;border-color:#CCc #bbb #A0A0A0;border-radius:4px;height:28px;margin:0;padding:0 6px;vertical-align:top}button:hover,.button:hover{border-color:#BBB}.padding12{padding:12px}.paddingBottom12{padding-bottom:12px!important}.paddingTop12{padding-top:12px!important}.margin12{margin:12px}.marginTop12{margin-top:12px!important}.marginBottom12{margin-bottom:12px!important}.marginLeft12{margin-left:12px!important}.marginLeft6{margin-left:6px!important}.marginRight12{margin-right:12px!important}.f-bold{font-weight:bold!important}.nowrap{white-space:nowrap}.left{float:left}.right{float:right}.clear{background-color:transparent;border:0;clear:both;display:block;font-size:0;height:0;line-height:0;overflow:hidden}.none{display:none}.pointer{cursor:pointer}.no-underline{text-decoration:none!important}.red{color:red}.contentBody{margin-bottom:12px;padding:3px 12px}.form th{text-align:right;white-space:nowrap}.form input[type='text'],.form input[type='password'],.form textarea{border-color:#c0c0c0 #D9D9D9 #d9d9d9;border-right:1px solid #d9d9d9;border-style:solid;border-width:1px;font-family:Helvetica,Arial,sans-serif;font-size:12px;outline:medium none;width:99%;padding:0 3px}.form input{height:24px}.form input[type='checkbox']{border:0;vertical-align:middle}.form input.normalInput{width:auto}.form input[type='checkbox']:focus{border:0}.form input:focus,.form textarea:focus{box-shadow:0 1px 2px rgba(0,0,0,0.3) inset}.form textarea{padding:3px;overflow:auto;resize:vertical}.logo{padding:0 5px;text-decoration:none;text-shadow:0 0 1px #eee}.putTopIcon,.notPutTopIcon,.deleteIcon,.updateIcon,.commentIcon,.homeIcon,.adminIcon,.loginIcon,.logoutIcon,.calendarIcon,.browserIcon,.postIcon,.articlesIcon,.draftsIcon,.usersIcon,.linkIcon,.preferenceIcon,.pageIcon,.trueIcon,.falseIcon,.fileIcon,.othersIcon,.goTopIcon,.goBottomIcon,.cacheIcon,.aboutIcon{background-image:url("../images/icon.png");cursor:pointer;height:16px;width:16px}.adminIcon,.loginIcon,.logoutIcon,.homeIcon{margin-top:3px}.pageIcon{background-position:-144px 0}.postIcon{background-position:-16px 0}.linkIcon{background-position:-32px 0}.preferenceIcon{background-position:-48px 0}.articlesIcon{background-position:-64px 0}.trueIcon{background-position:-80px 0;cursor:auto}.falseIcon{background-position:-96px 0;cursor:auto}.fileIcon{background-position:-112px 0}.deleteIcon{background-position:0 -16px}.updateIcon{background-position:-16px -16px}.commentIcon{background-position:-32px -16px}.homeIcon{background-position:-64px -16px}.adminIcon{background-position:-80px -16px}.logoutIcon{background-position:-96px -16px}.loginIcon{background-position:-112px -16px}.browserIcon{background-position:-128px -16px}.calendarIcon{background-position:-144px -16px}.putTopIcon{background-position:-16px -32px;float:left}.notPutTopIcon{background-position:-32px -32px;float:left}.othersIcon{background-position:-48px -32px}.cacheIcon{background-position:-96px -32px}.draftsIcon{background-position:-96px -32px}.usersIcon{background-position:-112px -32px}.goTopIcon{background-position:-64px -32px;position:fixed;right:20px;top:45%}.goBottomIcon{background-position:-80px -32px;bottom:40%;position:fixed;right:20px}.article-body{overflow:hidden;line-height:145%;word-wrap:break-word}.article-body blockquote{border:1px dotted #98a47f;font-style:italic;margin:12px;padding:12px}.article-body h1{font-size:2em;margin:.67em 0}.article-body h2{font-size:1.5em;margin:.75em 0}.article-body h3{font-size:1.17em;margin:.83em 0}.article-body h4,.article-body p,.article-body blockquote,.article-body ul,.article-body fieldset,.article-body form,.article-body ol,.article-body dl,.article-body dir,.article-body menu{margin:1.12em 0}.article-body h5{font-size:.83em;margin:1.5em 0}.article-body h6{font-size:.75em;margin:1.67em 0}.article-body blockquote{margin-left:40px;margin-right:40px}.article-body ol,.article-body ul,.article-body dir,.article-body menu,.article-body dd{margin-left:40px}.em00,.em01,.em02,.em03,.em04,.em05,.em06,.em07,.em08,.em09,.em10,.em11,.em12,.em13,.em14{background-image:url("../images/emotions/classic/emotions-classic.png");float:left;height:24px;margin-right:5px;width:24px}#emotions span{cursor:pointer}.em01{background-position:-24px 0}.em02{background-position:-48px 0}.em03{background-position:-72px 0}.em04{background-position:-96px 0}.em05{background-position:0 -24px}.em06{background-position:-24px -24px}.em07{background-position:-48px -24px}.em08{background-position:-72px -24px}.em09{background-position:-96px -24px}.em10{background-position:0 -48px}.em11{background-position:-24px -48px}.em12{background-position:-48px -48px}.em13{background-position:-72px -48px}.em14{background-position:-96px -48px}#tags{list-style:none}#tags li{float:left;list-style:none;height:38px}#tags a:hover{text-shadow:0 0 2px #555}#tags a{border-radius:3px 3px 3px 3px;box-shadow:1px 1px 3px #555;float:left;margin:3px 6px;padding:3px 12px;text-decoration:none}#tags .tags1{font-size:12px;font-weight:normal}#tags .tags2{font-size:14px;font-weight:normal}#tags .tags3{font-size:16px;font-weight:normal}#tags .tags4{font-size:18px;font-weight:bold}#tags .tags5{font-size:20px;font-weight:bold}#captcha,#captchaReply{cursor:pointer} html,body,div,ul,li,h1,h2,h3,h4,h5,h6,p,dd,dl,ol{margin:0;padding:0}body{background-color:#FFF;color:#000;font-family:elvetica,Arial,'sans-serif','\5fae\8f6f\96c5\9ed1';font-size:small}img{border:medium none;margin:0;padding:0;vertical-align:middle}h1{font-size:160%}h2{font-size:140%}h3{font-size:120%}h4{font-size:110%}textarea{overflow:auto}li{margin-left:12px}button,.button{background:url(../images/icon.png) repeat center bottom;border:1px solid;border-color:#CCc #bbb #A0A0A0;border-radius:4px;height:28px;margin:0;padding:0 6px;vertical-align:top}button:hover,.button:hover{border-color:#BBB}.padding12{padding:12px}.paddingBottom12{padding-bottom:12px!important}.paddingTop12{padding-top:12px!important}.margin12{margin:12px}.marginTop12{margin-top:12px!important}.marginBottom12{margin-bottom:12px!important}.marginLeft12{margin-left:12px!important}.marginLeft6{margin-left:6px!important}.marginRight12{margin-right:12px!important}.f-bold{font-weight:bold!important}.nowrap{white-space:nowrap}.left{float:left}.right{float:right}.clear{background-color:transparent;border:0;clear:both;display:block;font-size:0;height:0;line-height:0;overflow:hidden}.fn-clear:before,.fn-clear:after{display:table;content:""}.fn-clear:after{clear:both}.none{display:none}.pointer{cursor:pointer}.no-underline{text-decoration:none!important}.red{color:red}.contentBody{margin-bottom:12px;padding:3px 12px}.form th{text-align:right;white-space:nowrap}.form input[type='text'],.form input[type='password'],.form textarea{border-color:#c0c0c0 #D9D9D9 #d9d9d9;border-right:1px solid #d9d9d9;border-style:solid;border-width:1px;font-family:Helvetica,Arial,sans-serif;font-size:12px;outline:medium none;width:99%;padding:0 3px}.form input{height:24px}.form input[type='checkbox']{border:0;vertical-align:middle}.form input.normalInput{width:auto}.form input[type='checkbox']:focus{border:0}.form input:focus,.form textarea:focus{box-shadow:0 1px 2px rgba(0,0,0,0.3) inset}.form textarea{padding:3px;overflow:auto;resize:vertical}.logo{padding:0 5px;text-decoration:none;text-shadow:0 0 1px #eee}.putTopIcon,.notPutTopIcon,.deleteIcon,.updateIcon,.commentIcon,.homeIcon,.adminIcon,.loginIcon,.logoutIcon,.calendarIcon,.browserIcon,.postIcon,.articlesIcon,.draftsIcon,.usersIcon,.linkIcon,.preferenceIcon,.pageIcon,.trueIcon,.falseIcon,.fileIcon,.othersIcon,.goTopIcon,.goBottomIcon,.cacheIcon,.aboutIcon{background-image:url("../images/icon.png");cursor:pointer;height:16px;width:16px}.adminIcon,.loginIcon,.logoutIcon,.homeIcon{margin-top:3px}.pageIcon{background-position:-144px 0}.postIcon{background-position:-16px 0}.linkIcon{background-position:-32px 0}.preferenceIcon{background-position:-48px 0}.articlesIcon{background-position:-64px 0}.trueIcon{background-position:-80px 0;cursor:auto}.falseIcon{background-position:-96px 0;cursor:auto}.fileIcon{background-position:-112px 0}.deleteIcon{background-position:0 -16px}.updateIcon{background-position:-16px -16px}.commentIcon{background-position:-32px -16px}.homeIcon{background-position:-64px -16px}.adminIcon{background-position:-80px -16px}.logoutIcon{background-position:-96px -16px}.loginIcon{background-position:-112px -16px}.browserIcon{background-position:-128px -16px}.calendarIcon{background-position:-144px -16px}.putTopIcon{background-position:-16px -32px;float:left}.notPutTopIcon{background-position:-32px -32px;float:left}.othersIcon{background-position:-48px -32px}.cacheIcon{background-position:-96px -32px}.draftsIcon{background-position:-96px -32px}.usersIcon{background-position:-112px -32px}.goTopIcon{background-position:-64px -32px;position:fixed;right:20px;top:45%}.goBottomIcon{background-position:-80px -32px;bottom:40%;position:fixed;right:20px}.article-body{overflow:hidden;line-height:145%;word-wrap:break-word}.article-body blockquote{border:1px dotted #98a47f;font-style:italic;margin:12px;padding:12px}.article-body h1{font-size:2em;margin:.67em 0}.article-body h2{font-size:1.5em;margin:.75em 0}.article-body h3{font-size:1.17em;margin:.83em 0}.article-body h4,.article-body p,.article-body blockquote,.article-body ul,.article-body fieldset,.article-body form,.article-body ol,.article-body dl,.article-body dir,.article-body menu{margin:1.12em 0}.article-body h5{font-size:.83em;margin:1.5em 0}.article-body h6{font-size:.75em;margin:1.67em 0}.article-body blockquote{margin-left:40px;margin-right:40px}.article-body ol,.article-body ul,.article-body dir,.article-body menu,.article-body dd{margin-left:40px}.em00,.em01,.em02,.em03,.em04,.em05,.em06,.em07,.em08,.em09,.em10,.em11,.em12,.em13,.em14{background-image:url("../images/emotions/classic/emotions-classic.png");float:left;height:24px;margin-right:5px;width:24px}#emotions span{cursor:pointer}.em01{background-position:-24px 0}.em02{background-position:-48px 0}.em03{background-position:-72px 0}.em04{background-position:-96px 0}.em05{background-position:0 -24px}.em06{background-position:-24px -24px}.em07{background-position:-48px -24px}.em08{background-position:-72px -24px}.em09{background-position:-96px -24px}.em10{background-position:0 -48px}.em11{background-position:-24px -48px}.em12{background-position:-48px -48px}.em13{background-position:-72px -48px}.em14{background-position:-96px -48px}#tags{list-style:none}#tags li{float:left;list-style:none;height:38px}#tags a:hover{text-shadow:0 0 2px #555}#tags a{border-radius:3px 3px 3px 3px;box-shadow:1px 1px 3px #555;float:left;margin:3px 6px;padding:3px 12px;text-decoration:none}#tags .tags1{font-size:12px;font-weight:normal}#tags .tags2{font-size:14px;font-weight:normal}#tags .tags3{font-size:16px;font-weight:normal}#tags .tags4{font-size:18px;font-weight:bold}#tags .tags5{font-size:20px;font-weight:bold}#captcha,#captchaReply{cursor:pointer}
\ No newline at end of file \ No newline at end of file
...@@ -17,9 +17,9 @@ ...@@ -17,9 +17,9 @@
* @description index for admin * @description index for admin
* *
* @author <a href="http://vanessa.b3log.org">Liyuan Li</a> * @author <a href="http://vanessa.b3log.org">Liyuan Li</a>
* @version 1.0.2.2, May 28, 2013 * @version 1.0.3.2, Sep 2, 2013
*/ */
var Admin = function() { var Admin = function () {
this.register = {}; this.register = {};
// 工具栏下的工具 // 工具栏下的工具
this.tools = ['#page-list', '#file-list', '#link-list', '#preference', this.tools = ['#page-list', '#file-list', '#link-list', '#preference',
...@@ -33,13 +33,13 @@ $.extend(Admin.prototype, { ...@@ -33,13 +33,13 @@ $.extend(Admin.prototype, {
/** /**
* @description 登出 * @description 登出
*/ */
logout: function() { logout: function () {
window.location.href = latkeConfig.servePath + "/logout?goto=" + latkeConfig.servePath; window.location.href = latkeConfig.servePath + "/logout?goto=" + latkeConfig.servePath;
}, },
/** /**
* @description 清除提示 * @description 清除提示
*/ */
clearTip: function() { clearTip: function () {
$("#tipMsg").text(""); $("#tipMsg").text("");
$("#loadMsg").text(""); $("#loadMsg").text("");
}, },
...@@ -47,7 +47,7 @@ $.extend(Admin.prototype, { ...@@ -47,7 +47,7 @@ $.extend(Admin.prototype, {
* @description 根据当前页数设置 hash * @description 根据当前页数设置 hash
* @param {Int} currentPage 当前页 * @param {Int} currentPage 当前页
*/ */
setHashByPage: function(currentPage) { setHashByPage: function (currentPage) {
var hash = window.location.hash, var hash = window.location.hash,
hashList = hash.split("/"); hashList = hash.split("/");
if (/^\d*$/.test(hashList[hashList.length - 1])) { if (/^\d*$/.test(hashList[hashList.length - 1])) {
...@@ -61,13 +61,13 @@ $.extend(Admin.prototype, { ...@@ -61,13 +61,13 @@ $.extend(Admin.prototype, {
* @description 设置某个 tab 被选择 * @description 设置某个 tab 被选择
* @param {Stirng} id id tab id * @param {Stirng} id id tab id
*/ */
selectTab: function(id) { selectTab: function (id) {
window.location.hash = "#" + id; window.location.hash = "#" + id;
}, },
/** /**
* @description 根据当前 hash 解析出当前页数及 hash 数组。 * @description 根据当前 hash 解析出当前页数及 hash 数组。
*/ */
analyseHash: function() { analyseHash: function () {
var hash = window.location.hash; var hash = window.location.hash;
var tag = hash.substr(1, hash.length - 1); var tag = hash.substr(1, hash.length - 1);
var tagList = tag.split("/"); var tagList = tag.split("/");
...@@ -86,7 +86,8 @@ $.extend(Admin.prototype, { ...@@ -86,7 +86,8 @@ $.extend(Admin.prototype, {
/** /**
* @description 根据当前 hash 设置当前 tab * @description 根据当前 hash 设置当前 tab
*/ */
setCurByHash: function() { setCurByHash: function () {
$(window).scrollTop(0);
$("#tipMsg").text(""); $("#tipMsg").text("");
var tags = admin.analyseHash(); var tags = admin.analyseHash();
var tab = tags.hashList[1], var tab = tags.hashList[1],
...@@ -103,7 +104,7 @@ $.extend(Admin.prototype, { ...@@ -103,7 +104,7 @@ $.extend(Admin.prototype, {
if (tab !== "article") { if (tab !== "article") {
admin.article.clearDraftTimer(); admin.article.clearDraftTimer();
} else if (tab === "article") { } else if (tab === "article") {
admin.article.autoSaveDraftTimer = setInterval(function() { admin.article.autoSaveDraftTimer = setInterval(function () {
admin.article._autoSaveToDraft(); admin.article._autoSaveToDraft();
}, admin.article.AUTOSAVETIME); }, admin.article.AUTOSAVETIME);
} }
...@@ -157,7 +158,7 @@ $.extend(Admin.prototype, { ...@@ -157,7 +158,7 @@ $.extend(Admin.prototype, {
if ($("#tabsPanel_" + tab).length === 1) { if ($("#tabsPanel_" + tab).length === 1) {
if ($("#tabsPanel_" + tab).html().replace(/\s/g, "") === "") { if ($("#tabsPanel_" + tab).html().replace(/\s/g, "") === "") {
// 还未加载 HTML // 还未加载 HTML
$("#tabsPanel_" + tab).load("admin-" + tab + ".do", function() { $("#tabsPanel_" + tab).load("admin-" + tab + ".do", function () {
// 页面加载完后,回调初始函数 // 页面加载完后,回调初始函数
if (tab === "article" && admin.article.status.id) { if (tab === "article" && admin.article.status.id) {
// 当文章页面编辑器未初始化时,调用更新文章需先初始化编辑器 // 当文章页面编辑器未初始化时,调用更新文章需先初始化编辑器
...@@ -202,7 +203,7 @@ $.extend(Admin.prototype, { ...@@ -202,7 +203,7 @@ $.extend(Admin.prototype, {
/** /**
* @description 初始化整个后台 * @description 初始化整个后台
*/ */
init: function() { init: function () {
//window.onerror = Util.error; //window.onerror = Util.error;
Util.killIE(); Util.killIE();
...@@ -212,9 +213,9 @@ $.extend(Admin.prototype, { ...@@ -212,9 +213,9 @@ $.extend(Admin.prototype, {
$("#tabs").tabs(); $("#tabs").tabs();
// tipMsg // tipMsg
setInterval(function() { setInterval(function () {
if ($("#tipMsg").text() !== "") { if ($("#tipMsg").text() !== "") {
setTimeout(function() { setTimeout(function () {
$("#tipMsg").text(""); $("#tipMsg").text("");
}, 7000); }, 7000);
} }
...@@ -225,20 +226,25 @@ $.extend(Admin.prototype, { ...@@ -225,20 +226,25 @@ $.extend(Admin.prototype, {
* @description tools and article collapse * @description tools and article collapse
* @param {Bom} it 触发事件对象 * @param {Bom} it 触发事件对象
*/ */
collapseNav: function(it) { collapseNav: function (it) {
var subNav = $(it).next(); var subNav = $(it).next();
subNav.slideToggle("normal", function() { subNav.slideToggle("normal", function () {
if (this.style.display !== "none") { if (this.style.display !== "none") {
$(it).find(".ico-arrow-down")[0].className = "ico-arrow-up"; $(it).find(".icon-chevron-down")[0].className = "icon-chevron-up right";
$(it).addClass('tab-current');
} else { } else {
$(it).find(".ico-arrow-up")[0].className = "ico-arrow-down"; $(it).find(".icon-chevron-up")[0].className = "icon-chevron-down right";
$(it).removeClass('tab-current');
} }
$('#tabs > ul').height('auto');
$('#tabs > ul').height($('#tabs > ul').height() + 80);
}); });
}, },
/** /**
* @description 后台及当前页面所需插件初始化完后,对权限进行控制及当前页面属于 tools 时,tools 选项需展开。 * @description 后台及当前页面所需插件初始化完后,对权限进行控制及当前页面属于 tools 时,tools 选项需展开。
*/ */
inited: function() { inited: function () {
// Removes functions with the current user role // Removes functions with the current user role
if (Label.userRole !== "adminRole") { if (Label.userRole !== "adminRole") {
for (var i = 0; i < this.adTools.length; i++) { for (var i = 0; i < this.adTools.length; i++) {
...@@ -606,8 +612,17 @@ admin.editors.KindEditor = { ...@@ -606,8 +612,17 @@ admin.editors.KindEditor = {
* *
* @author <a href="http://vanessa.b3log.org">Liyuan Li</a> * @author <a href="http://vanessa.b3log.org">Liyuan Li</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a> * @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.1.1.4, Aug 13, 2015 * @version 1.2.1.4, Aug 26, 2016
*/ */
Util.processClipBoard = function (text, cm) {
var text = toMarkdown(text, {converters: [
], gfm: true});
// ascii 160 替换为 30
text = $('<div>' + text + '</div>').text().replace(/\n{2,}/g, '\n\n').replace(/ /g, ' ');
return $.trim(text);
};
admin.editors.CodeMirror = { admin.editors.CodeMirror = {
/* /*
* @description 初始化编辑器 * @description 初始化编辑器
...@@ -620,124 +635,38 @@ admin.editors.CodeMirror = { ...@@ -620,124 +635,38 @@ admin.editors.CodeMirror = {
* @returns {obj} editor * @returns {obj} editor
*/ */
init: function (conf) { init: function (conf) {
var it = this;
// load preview and clear
var previewHTML = "<div class='clear'></div>";
if (conf.kind !== "simple") {
previewHTML = "<div class='markdown-preivew'>" +
"<div class='markdown-help ico-close'></div>" +
"<div class='clear'></div>" +
"<div class='markdown-preview-main none'></div>" +
"<div class='markdown-help-main'>" + Label.markdownHelpLabel + "</div>"
+ "</div><div class='clear'></div>";
}
$("#" + conf.id).after(previewHTML);
// init codemirror // init codemirror
if (conf.kind === "simple") { var commentEditor = new CodeMirrorEditor({
this[conf.id] = CodeMirror.fromTextArea(document.getElementById(conf.id), { element: document.getElementById(conf.id),
mode: 'markdown', dragDrop: false,
lineWrapping: true, lineWrapping: true,
lineNumbers: true, toolbar: [
matchBrackets: true, {name: 'bold'},
theme: "default", {name: 'italic'},
height: conf.height '|',
}); {name: 'link'},
} else { {name: 'quote'},
// preview 执行队列 {name: 'unordered-list'},
it[conf.id + "Timers"] = []; {name: 'ordered-list'},
'|',
// 该编辑器是否第一次触发 preivew 事件 {name: 'redo'},
it[conf.id + "IsFirst"] = true; {name: 'undo'},
'|',
var $preview = $("#" + conf.id).parent().find(".markdown-preivew"), {name: 'preview'}
$help = $("#" + conf.id).parent().find(".markdown-preivew").find(".markdown-help"); ],
this[conf.id] = CodeMirror.fromTextArea(document.getElementById(conf.id), { extraKeys: {
mode: 'markdown', "Ctrl-/": "autocompleteEmoji"
lineWrapping: true, },
lineNumbers: true, status: false
matchBrackets: true, });
theme: "default", commentEditor.render();
height: conf.height, this[conf.id] = commentEditor.codemirror;
onUpdate: function () {
var update = function () {
if (it[conf.id].getValue() === "") {
return;
}
$.ajax({
url: latkeConfig.servePath + "/console/markdown/2html",
type: "POST",
cache: false,
data: JSON.stringify({markdownText: it[conf.id].getValue()}),
success: function (data, textStatus) {
if (data.sc) {
if (it[conf.id + "IsFirst"] && $help.hasClass("ico-close")) {
$help.click();
}
it[conf.id + "IsFirst"] = false;
$preview.find(".markdown-preview-main").html(data.html);
} else {
$preview.find(".markdown-preview-main").html(data.msg);
}
}
});
}
it[conf.id + "Timers"].push(update);
}
});
this._callPreview(conf.id, it[conf.id + "Timers"]);
}
if (conf.kind === "simple") {
// 摘要不需要 preview,设置其宽度
$("#" + conf.id).next().width("99%");
} else {
// 有 preview 时,绑定 preview 事件
this._bindEvent(conf.id);
}
// after render, call back function // after render, call back function
if (typeof (conf.fun) === "function") { if (typeof (conf.fun) === "function") {
conf.fun(); conf.fun();
} }
}, },
/*
* @description 当有更新时每隔3秒 preview
* @param {string} id 编辑器 id
*/
_callPreview: function (id) {
setInterval(function () {
var timers = admin.editors.CodeMirror[id + "Timers"];
$(document).queue("myAnimation", [timers[timers.length - 1]]);
$(document).dequeue("myAnimation");
admin.editors.CodeMirror[id + "Timers"] = [];
}, 2000);
},
/*
* @description 绑定编辑器 preview 事件
* @param {string} id 编辑器id
*/
_bindEvent: function (id) {
var $preview = $("#" + id).parent().find(".markdown-preivew");
$preview.find(".markdown-help").click(function () {
var $it = $(this);
if ($it.hasClass("ico-help")) {
$it.removeClass("ico-help").addClass("ico-close");
$preview.find(".markdown-preview-main").hide();
$preview.find(".markdown-help-main").show();
} else {
$it.addClass("ico-help").removeClass("ico-close");
$preview.find(".markdown-preview-main").show();
$preview.find(".markdown-help-main").hide();
}
});
},
/* /*
* @description 获取编辑器值 * @description 获取编辑器值
* @param {string} id 编辑器id * @param {string} id 编辑器id
...@@ -762,7 +691,7 @@ admin.editors.CodeMirror = { ...@@ -762,7 +691,7 @@ admin.editors.CodeMirror = {
*/ */
remove: function (id) { remove: function (id) {
this[id].toTextArea(); this[id].toTextArea();
$(".markdown-preivew").remove(); $('.editor-toolbar').remove();
} }
};/* };/*
* Copyright (c) 2010-2016, b3log.org & hacpai.com * Copyright (c) 2010-2016, b3log.org & hacpai.com
...@@ -825,8 +754,8 @@ $.extend(TablePaginate.prototype, { ...@@ -825,8 +754,8 @@ $.extend(TablePaginate.prototype, {
}, },
"currentPage": 1, "currentPage": 1,
"errorMessage": Label.inputErrorLabel, "errorMessage": Label.inputErrorLabel,
"nextPageText": Label.nextPagePabel, "nextPageText": '>',
"previousPageText": Label.previousPageLabel, "previousPageText": '<',
"goText": Label.gotoLabel, "goText": Label.gotoLabel,
"type": "custom", "type": "custom",
"custom": [1], "custom": [1],
...@@ -1188,7 +1117,7 @@ admin.article = { ...@@ -1188,7 +1117,7 @@ admin.article = {
} }
$("#tagCheckboxPanel>span").remove(""); $("#tagCheckboxPanel>span").remove("");
var spans = ""; var spans = "";
for (var i = 0; i < result.tags.length; i++) { for (var i = 0; i < result.tags.length; i++) {
spans += "<span>" + result.tags[i].tagTitle + "</span>"; spans += "<span>" + result.tags[i].tagTitle + "</span>";
...@@ -1263,42 +1192,11 @@ admin.article = { ...@@ -1263,42 +1192,11 @@ admin.article = {
*/ */
init: function (fun) { init: function (fun) {
this.currentEditorType = Label.editorType; this.currentEditorType = Label.editorType;
// Inits Signs.
$.ajax({
url: latkeConfig.servePath + "/console/signs/",
type: "GET",
cache: false,
success: function (result, textStatus) {
$("#tipMsg").text(result.msg);
if (!result.sc) {
$("#loadMsg").text("");
return;
}
$(".signs button").each(function (i) { // Inits Signs.
// Sets signs. $(".signs button").click(function (i) {
if (i === result.signs.length) { $(".signs button").removeClass('selected');
$("#articleSign1").addClass("selected"); $(this).addClass('selected');
} else {
$("#articleSign" + result.signs[i].oId).tip({
content: result.signs[i].signHTML === "" ? Label.signIsNullLabel :
result.signs[i].signHTML.replace(/\n/g, "").replace(/<script.*<\/script>/ig, ""),
position: "top"
});
}
// Binds checkbox event.
$(this).click(function () {
if (this.className !== "selected") {
$(".signs button").each(function () {
this.className = "";
});
this.className = "selected";
}
});
});
$("#loadMsg").text("");
}
}); });
// For tag auto-completion // For tag auto-completion
...@@ -1339,8 +1237,8 @@ admin.article = { ...@@ -1339,8 +1237,8 @@ admin.article = {
} else { } else {
admin.article.add(true); admin.article.add(true);
} }
}); }
);
$("#saveArticle").click(function () { $("#saveArticle").click(function () {
if (admin.article.status.id) { if (admin.article.status.id) {
admin.article.update(admin.article.status.isArticle); admin.article.update(admin.article.status.isArticle);
...@@ -1358,26 +1256,26 @@ admin.article = { ...@@ -1358,26 +1256,26 @@ admin.article = {
url: "http://upload.qiniu.com/", url: "http://upload.qiniu.com/",
add: function (e, data) { add: function (e, data) {
filename = data.files[0].name; filename = data.files[0].name;
data.submit(); data.submit();
}, },
formData: function (form) { formData: function (form) {
var data = form.serializeArray(); var data = form.serializeArray();
var ext = filename.substring(filename.lastIndexOf(".") + 1); var ext = filename.substring(filename.lastIndexOf(".") + 1);
data.push({name: 'key', value: getUUID() + "." + ext}); data.push({name: 'key', value: getUUID() + "." + ext});
data.push({name: 'token', value: qiniu.qiniuUploadToken}); data.push({name: 'token', value: qiniu.qiniuUploadToken});
return data; return data;
}, },
done: function (e, data) { done: function (e, data) {
var qiniuKey = data.result.key; var qiniuKey = data.result.key;
if (!qiniuKey) { if (!qiniuKey) {
alert("Upload error"); alert("Upload error");
return; return;
} }
$('#articleUpload').after('<div id="uploadContent">!<a target="_blank" href="http://' + qiniu.qiniuDomain + qiniuKey + '">[' + filename + ']</a>(http://' $('#articleUpload').after('<div id="uploadContent">!<a target="_blank" href="http://' + qiniu.qiniuDomain + qiniuKey + '">[' + filename + ']</a>(http://'
+ qiniu.qiniuDomain + qiniuKey + ')</div>'); + qiniu.qiniuDomain + qiniuKey + ')</div>');
}, },
...@@ -1574,17 +1472,18 @@ admin.register.article = { ...@@ -1574,17 +1472,18 @@ admin.register.article = {
function getUUID() { function getUUID() {
var d = new Date().getTime(); var d = new Date().getTime();
var ret = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) { var ret = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
var r = (d + Math.random()*16)%16 | 0; var r = (d + Math.random() * 16) % 16 | 0;
d = Math.floor(d/16); d = Math.floor(d / 16);
return (c=='x' ? r : (r&0x3|0x8)).toString(16); return (c == 'x' ? r : (r & 0x3 | 0x8)).toString(16);
}); });
ret = ret.replace(new RegExp("-", 'g'), ""); ret = ret.replace(new RegExp("-", 'g'), "");
return ret; return ret;
}; }
;
/* /*
* Copyright (c) 2010-2016, b3log.org & hacpai.com * Copyright (c) 2010-2016, b3log.org & hacpai.com
* *
...@@ -1735,7 +1634,7 @@ admin.comment = { ...@@ -1735,7 +1634,7 @@ admin.comment = {
* *
* @author <a href="http://vanessa.b3log.org">Liyuan Li</a> * @author <a href="http://vanessa.b3log.org">Liyuan Li</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a> * @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.0.1.5, May 28, 2013 * @version 1.0.2.5, Aug 23, 2016
*/ */
/* article-list 相关操作 */ /* article-list 相关操作 */
...@@ -1799,7 +1698,7 @@ admin.articleList = { ...@@ -1799,7 +1698,7 @@ admin.articleList = {
articleData = []; articleData = [];
for (var i = 0; i < articles.length; i++) { for (var i = 0; i < articles.length; i++) {
articleData[i] = {}; articleData[i] = {};
articleData[i].title = "<a href='" + latkeConfig.servePath + articles[i].articlePermalink + "' target='_blank' title='" + articles[i].articleTitle + "' class='no-underline'>" articleData[i].title = "<a href=\"" + latkeConfig.servePath + articles[i].articlePermalink + "\" target='_blank' title='" + articles[i].articleTitle + "' class='no-underline'>"
+ articles[i].articleTitle + "</a><span class='table-tag'>" + articles[i].articleTags + "</span>"; + articles[i].articleTitle + "</a><span class='table-tag'>" + articles[i].articleTags + "</span>";
articleData[i].date = $.bowknot.getDate(articles[i].articleCreateTime); articleData[i].date = $.bowknot.getDate(articles[i].articleCreateTime);
articleData[i].comments = articles[i].articleCommentCount; articleData[i].comments = articles[i].articleCommentCount;
...@@ -3020,10 +2919,6 @@ admin.preference = { ...@@ -3020,10 +2919,6 @@ admin.preference = {
var signs = eval('(' + preference.signs + ')'); var signs = eval('(' + preference.signs + ')');
for (var j = 1; j < signs.length; j++) { for (var j = 1; j < signs.length; j++) {
$("#preferenceSign" + j).val(signs[j].signHTML); $("#preferenceSign" + j).val(signs[j].signHTML);
$("#preferenceSignButton" + j).tip({
content: signs[j].signHTML === "" ? Label.signIsNullLabel : signs[j].signHTML.replace(/\n/g, "").replace(/<script.*<\/script>/ig, ""),
position: "bottom"
});
} }
$("#articleListDisplay").val(preference.articleListStyle); $("#articleListDisplay").val(preference.articleListStyle);
...@@ -3508,7 +3403,7 @@ admin.userList = { ...@@ -3508,7 +3403,7 @@ admin.userList = {
} else { } else {
userData[i].expendRow = "<a href='javascript:void(0)' onclick=\"admin.userList.get('" + userData[i].expendRow = "<a href='javascript:void(0)' onclick=\"admin.userList.get('" +
users[i].oId + "', '" + users[i].userRole + "')\">" + Label.updateLabel + "</a>\ users[i].oId + "', '" + users[i].userRole + "')\">" + Label.updateLabel + "</a>\
<a href='javascript:void(0)' onclick=\"admin.userList.del('" + users[i].oId + "', '" + users[i].userName + "')\">" + Label.removeLabel + "</a>" + <a href='javascript:void(0)' onclick=\"admin.userList.del('" + users[i].oId + "', '" + users[i].userName + "')\">" + Label.removeLabel + "</a> " +
"<a href='javascript:void(0)' onclick=\"admin.userList.changeRole('" + users[i].oId + "')\">" + Label.changeRoleLabel + "</a>"; "<a href='javascript:void(0)' onclick=\"admin.userList.changeRole('" + users[i].oId + "')\">" + Label.changeRoleLabel + "</a>";
if ("defaultRole" === users[i].userRole) { if ("defaultRole" === users[i].userRole) {
userData[i].isAdmin = Label.commonUserLabel; userData[i].isAdmin = Label.commonUserLabel;
...@@ -3759,9 +3654,7 @@ admin.userList = { ...@@ -3759,9 +3654,7 @@ admin.userList = {
admin.register["user-list"] = { admin.register["user-list"] = {
"obj": admin.userList, "obj": admin.userList,
"init": admin.userList.init, "init": admin.userList.init,
"refresh": function() { "refresh": admin.userList.getList
admin.clearTip();
}
}/* }/*
* Copyright (c) 2010-2016, b3log.org & hacpai.com * Copyright (c) 2010-2016, b3log.org & hacpai.com
* *
......
This source diff could not be displayed because it is too large. You can view the blob instead.
/*
* Copyright (c) 2010-2016, b3log.org & hacpai.com
*
* 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.
*/
function convertEntities(t){var e,n;if(e=function(t){if(/&[^;]+;/.test(t)){var e=document.createElement("div");return e.innerHTML=t,e.firstChild?e.firstChild.nodeValue:t}return t},"string"==typeof t)return e(t);if("object"==typeof t)for(n in t)"string"==typeof t[n]&&(t[n]=e(t[n]));return t} function convertEntities(t){var e,n;if(e=function(t){if(/&[^;]+;/.test(t)){var e=document.createElement("div");return e.innerHTML=t,e.firstChild?e.firstChild.nodeValue:t}return t},"string"==typeof t)return e(t);if("object"==typeof t)for(n in t)"string"==typeof t[n]&&(t[n]=e(t[n]));return t}
\ No newline at end of file
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
* skin next style * skin next style
* *
* @author <a href="http://vanessa.b3log.org">Liyuan Li</a> * @author <a href="http://vanessa.b3log.org">Liyuan Li</a>
* @version 0.1.2.1, Aug 26, 2016 * @version 0.2.2.1, Sep 6, 2016
*/ */
/* start reset */ /* start reset */
html { html {
...@@ -250,8 +250,10 @@ img { ...@@ -250,8 +250,10 @@ img {
/* start framework */ /* start framework */
.wrapper { .wrapper {
width: 700px; max-width: 700px;
min-width: 600px;
margin: 0 auto; margin: 0 auto;
padding: 0 10px;
} }
.main { .main {
...@@ -263,12 +265,11 @@ img { ...@@ -263,12 +265,11 @@ img {
.header { .header {
background: #f5f5f5; background: #f5f5f5;
margin-bottom: 80px; margin-bottom: 80px;
padding: 40px 45px; padding: 40px 0px;
} }
.logo-wrap { .logo-wrap {
float: left; float: left;
margin-left: -20px;
overflow: hidden; overflow: hidden;
top: 0; top: 0;
opacity: 0; opacity: 0;
...@@ -386,6 +387,10 @@ img { ...@@ -386,6 +387,10 @@ img {
-webkit-transform: translateZ(0); -webkit-transform: translateZ(0);
} }
.sidebar-toggle.has-toc .sidebar-toggle-line{
background: #87daff;
}
.sidebar-toggle-line { .sidebar-toggle-line {
position: relative; position: relative;
display: inline-block; display: inline-block;
...@@ -570,6 +575,34 @@ img { ...@@ -570,6 +575,34 @@ img {
font-size: 14px; font-size: 14px;
line-height: 2; line-height: 2;
} }
.sidebar section {
opacity: 0;
position: relative;
}
.sidebar > ul > li {
display: inline-block;
cursor: pointer;
border-bottom: 1px solid transparent;
font-size: 14px;
color: #555;
}
.sidebar > ul > li:hover {
color: #f5f5f5;
}
.sidebar > ul > li.current {
color: #87daff;
border-bottom-color: #87daff;
}
.sidebar > ul > li:last-child {
margin-left: 10px;
}
/* end side */ /* end side */
/* start list*/ /* start list*/
...@@ -714,6 +747,11 @@ img { ...@@ -714,6 +747,11 @@ img {
.article-body { .article-body {
overflow: auto; overflow: auto;
text-align: justify;
}
.article-body p {
margin: 0 0 25px 0;
} }
/* end article */ /* end article */
...@@ -940,13 +978,18 @@ ul.comments .comment-meta time { ...@@ -940,13 +978,18 @@ ul.comments .comment-meta time {
/* end archives */ /* end archives */
/* start responsive */ /* start responsive */
@media (max-width: 1000px) {
.sidebar-toggle,
.sidebar {
display: none;
}
@media (max-width: 700px) { body {
.b3-solo-list { padding-right: 0 !important;
margin: 0;
padding: 0;
} }
}
@media (max-width: 700px) {
.page-archive .posts-collapse .archive-move-on { .page-archive .posts-collapse .archive-move-on {
margin-left: 5px; margin-left: 5px;
} }
...@@ -954,9 +997,6 @@ ul.comments .comment-meta time { ...@@ -954,9 +997,6 @@ ul.comments .comment-meta time {
.posts-collapse { .posts-collapse {
margin-left: 10px; margin-left: 10px;
} }
}
@media (max-width: 500px) {
pre { pre {
word-wrap: break-word; word-wrap: break-word;
word-break: break-all; word-break: break-all;
...@@ -976,7 +1016,6 @@ ul.comments .comment-meta time { ...@@ -976,7 +1016,6 @@ ul.comments .comment-meta time {
.logo-line-after, .logo-line-after,
.menu, .menu,
.site-search, .site-search,
.sidebar-toggle,
.back-to-top { .back-to-top {
display: none; display: none;
} }
...@@ -994,18 +1033,9 @@ ul.comments .comment-meta time { ...@@ -994,18 +1033,9 @@ ul.comments .comment-meta time {
background-color: #ddd; background-color: #ddd;
display: none; display: none;
} }
.header .wrapper {
padding: 0 10px;
}
.logo-wrap .site-title {
margin-left: 10px;
}
.wrapper { .wrapper {
width: auto; min-width: inherit;
margin: 0 10px;
} }
.btn-bar { .btn-bar {
...@@ -1032,6 +1062,12 @@ ul.comments .comment-meta time { ...@@ -1032,6 +1062,12 @@ ul.comments .comment-meta time {
.footer { .footer {
text-align: center; text-align: center;
font-size: 12px;
padding: 10px 0;
}
.footer .fn-right {
float: none;
} }
} }
/* end responsive */ /* end responsive */
\ No newline at end of file
<footer class="footer"> <footer class="footer">
<div class="wrapper"> <div class="wrapper fn-clear">
<a href="${servePath}">${blogTitle}</a> • <a href="${servePath}">${blogTitle}</a> •
${onlineVisitor1Label}${onlineVisitorCnt} <br/> ${onlineVisitor1Label}${onlineVisitorCnt} <br/>
&copy; ${year} &copy; ${year}
...@@ -39,7 +39,9 @@ ...@@ -39,7 +39,9 @@
"em11Label": "${em11Label}", "em11Label": "${em11Label}",
"em12Label": "${em12Label}", "em12Label": "${em12Label}",
"em13Label": "${em13Label}", "em13Label": "${em13Label}",
"em14Label": "${em14Label}" "em14Label": "${em14Label}",
"tocLabel": "${tocLabel}",
"siteViewLabel": "${siteViewLabel}"
}; };
</script> </script>
${plugins} ${plugins}
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
* @fileoverview util and every page should be used. * @fileoverview util and every page should be used.
* *
* @author <a href="http://vanessa.b3log.org">Liyuan Li</a> * @author <a href="http://vanessa.b3log.org">Liyuan Li</a>
* @version 0.1.1.0, Jul 30, 2016 * @version 0.2.1.0, Sep 6, 2016
*/ */
/** /**
...@@ -37,6 +37,7 @@ var NexT = { ...@@ -37,6 +37,7 @@ var NexT = {
$sidebar.animate({ $sidebar.animate({
right: -320 right: -320
}); });
$sidebar.find('section').css('opacity', 0);
} else { } else {
$(this).addClass('sidebar-active'); $(this).addClass('sidebar-active');
$('body').animate({ $('body').animate({
...@@ -44,6 +45,10 @@ var NexT = { ...@@ -44,6 +45,10 @@ var NexT = {
}); });
$sidebar.animate({ $sidebar.animate({
right: 0 right: 0
}, function () {
$sidebar.find('section:first').animate({
'opacity': 1
});
}); });
} }
}); });
...@@ -54,6 +59,7 @@ var NexT = { ...@@ -54,6 +59,7 @@ var NexT = {
$(document).ready(function () { $(document).ready(function () {
setTimeout(function () { setTimeout(function () {
// logo animate
$('.logo-wrap').css('opacity', 1); $('.logo-wrap').css('opacity', 1);
$('.logo-line-before i').animate({ $('.logo-line-before i').animate({
'left': '0' 'left': '0'
...@@ -66,6 +72,11 @@ var NexT = { ...@@ -66,6 +72,11 @@ var NexT = {
}); });
$('.main').css('opacity', 1).animate({ $('.main').css('opacity', 1).animate({
'top': '0' 'top': '0'
}, function () {
// 当有文章页面有目录时,回调不放这里,侧边栏就会一片空白
if ($('.b3-solo-list li').length > 0 && $(window).width() > 1000) {
$('.sidebar-toggle').click();
}
}); });
}); });
...@@ -79,9 +90,44 @@ var NexT = { ...@@ -79,9 +90,44 @@ var NexT = {
}); });
}, },
initArticle: function () { initArticle: function () {
if ($('.b3-solo-list li').length > 0 && $(window).width() > 700) { if ($('.b3-solo-list li').length > 0 && $(window).width() > 1000) {
$('.sidebar').html($('.b3-solo-list')); // add color to sidebar menu
$('.sidebar-toggle').click(); $('.sidebar-toggle').addClass('has-toc');
// append toc to sidebar menu
var articleTocHTML = '<ul><li class="current" data-tab="toc">' + Label.tocLabel + '</li><li data-tab="site">' + Label.siteViewLabel + '</li></ul><section></section>';
$('.sidebar').prepend(articleTocHTML);
var $sectionF = $('.sidebar section:first').html($('.b3-solo-list')),
$sectionL = $('.sidebar section:last');
// 切换 tab
$('.sidebar > ul > li').click(function () {
if ($(this).data('tab') === 'toc') {
$sectionL.animate({
"opacity": '0',
"top": '-50px'
}, 300, function () {
$sectionF.show().css('top', '-50px');
$sectionF.animate({
"opacity": '1',
"top": '0'
}, 300);
});
} else {
$sectionF.animate({
"opacity": '0',
"top": '-50px'
}, 300, function () {
$sectionF.hide().css('top', '-50px');
$sectionL.animate({
"opacity": '1',
"top": '0'
}, 300);
});
}
$('.sidebar > ul > li').removeClass('current');
$(this).addClass('current');
});
} }
} }
}; };
......
var NexT={init:function(){$(".sidebar-toggle").click(function(){var i=$(".sidebar");$(this).hasClass("sidebar-active")?($(this).removeClass("sidebar-active"),$("body").animate({"padding-right":0}),i.animate({right:-320})):($(this).addClass("sidebar-active"),$("body").animate({"padding-right":320}),i.animate({right:0}))}),$(".site-nav-toggle").click(function(){$(".site-nav").slideToggle()}),$(document).ready(function(){setTimeout(function(){$(".logo-wrap").css("opacity",1),$(".logo-line-before i").animate({left:"0"},function(){$(".site-title").css("opacity",1).animate({top:0},function(){$(".menu").css("opacity",1).animate({"margin-top":"15px"}),$(".main").css("opacity",1).animate({top:"0"})})}),$(".logo-line-after i").animate({right:"0"})},500)})},initArticle:function(){$(".b3-solo-list li").length>0&&$(window).width()>700&&($(".sidebar").html($(".b3-solo-list")),$(".sidebar-toggle").click())}};NexT.init(); /*
\ No newline at end of file * Copyright (c) 2010-2016, b3log.org & hacpai.com
*
* 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.
*/
var NexT={init:function(){$(".sidebar-toggle").click(function(){var i=$(".sidebar");$(this).hasClass("sidebar-active")?($(this).removeClass("sidebar-active"),$("body").animate({"padding-right":0}),i.animate({right:-320}),i.find("section").css("opacity",0)):($(this).addClass("sidebar-active"),$("body").animate({"padding-right":320}),i.animate({right:0},function(){i.find("section:first").animate({opacity:1})}))}),$(".site-nav-toggle").click(function(){$(".site-nav").slideToggle()}),$(document).ready(function(){setTimeout(function(){$(".logo-wrap").css("opacity",1),$(".logo-line-before i").animate({left:"0"},function(){$(".site-title").css("opacity",1).animate({top:0},function(){$(".menu").css("opacity",1).animate({"margin-top":"15px"}),$(".main").css("opacity",1).animate({top:"0"},function(){$(".b3-solo-list li").length>0&&$(window).width()>1e3&&$(".sidebar-toggle").click()})})}),$(".logo-line-after i").animate({right:"0"})},500)})},initArticle:function(){if($(".b3-solo-list li").length>0&&$(window).width()>1e3){$(".sidebar-toggle").addClass("has-toc");var i='<ul><li class="current" data-tab="toc">'+Label.tocLabel+'</li><li data-tab="site">'+Label.siteViewLabel+"</li></ul><section></section>";$(".sidebar").prepend(i);var t=$(".sidebar section:first").html($(".b3-solo-list")),a=$(".sidebar section:last");$(".sidebar > ul > li").click(function(){"toc"===$(this).data("tab")?a.animate({opacity:"0",top:"-50px"},300,function(){t.show().css("top","-50px"),t.animate({opacity:"1",top:"0"},300)}):t.animate({opacity:"0",top:"-50px"},300,function(){t.hide().css("top","-50px"),a.animate({opacity:"1",top:"0"},300)}),$(".sidebar > ul > li").removeClass("current"),$(this).addClass("current")})}}};NexT.init();
\ No newline at end of file
...@@ -16,11 +16,13 @@ ...@@ -16,11 +16,13 @@
# #
# Description: B3log Solo language configurations(en_US). # Description: B3log Solo language configurations(en_US).
# Version: 1.0.1.2, Sep 4, 2015 # Version: 1.1.1.2, Sep 6, 2016
# Author: Liyuan Li # Author: Liyuan Li
# Author: Liang Ding # Author: Liang Ding
# #
tocLabel=\u6587\u7ae0\u76ee\u5f55
siteViewLabel=\u7ad9\u70b9\u6982\u89c8
viewsLabel=Heat viewsLabel=Heat
cmtLabel=Comments cmtLabel=Comments
postTimeLabel=Post At postTimeLabel=Post At
......
...@@ -16,10 +16,12 @@ ...@@ -16,10 +16,12 @@
# #
# Description: B3log Solo default language configurations(zh_CN). # Description: B3log Solo default language configurations(zh_CN).
# Version: 1.0.0.1, Jul 30, 2016 # Version: 1.1.1.2, Sep 6, 2016
# Author: Liyuan Li # Author: Liyuan Li
# #
tocLabel=\u6587\u7ae0\u76ee\u5f55
siteViewLabel=\u7ad9\u70b9\u6982\u89c8
viewsLabel=\u70ed\u5ea6 viewsLabel=\u70ed\u5ea6
cmtLabel=\u6761\u8bc4\u8bba cmtLabel=\u6761\u8bc4\u8bba
postTimeLabel=\u53d1\u8868\u4e8e postTimeLabel=\u53d1\u8868\u4e8e
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment