Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
solo-1
Project overview
Project overview
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
solo-1
Commits
83955412
Commit
83955412
authored
Apr 09, 2017
by
Liang Ding
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
🔨
https://github.com/b3log/latke/issues/64
parent
3ed8dc48
Changes
109
Hide whitespace changes
Inline
Side-by-side
Showing
109 changed files
with
522 additions
and
569 deletions
+522
-569
pom.xml
pom.xml
+1
-1
src/main/java/org/b3log/solo/SoloServletListener.java
src/main/java/org/b3log/solo/SoloServletListener.java
+9
-8
src/main/java/org/b3log/solo/Starter.java
src/main/java/org/b3log/solo/Starter.java
+5
-10
src/main/java/org/b3log/solo/api/metaweblog/MetaWeblogAPI.java
...ain/java/org/b3log/solo/api/metaweblog/MetaWeblogAPI.java
+10
-13
src/main/java/org/b3log/solo/api/symphony/ArticleReceiver.java
...ain/java/org/b3log/solo/api/symphony/ArticleReceiver.java
+1
-1
src/main/java/org/b3log/solo/api/symphony/CommentReceiver.java
...ain/java/org/b3log/solo/api/symphony/CommentReceiver.java
+7
-6
src/main/java/org/b3log/solo/dev/ArticleGenerator.java
src/main/java/org/b3log/solo/dev/ArticleGenerator.java
+6
-5
src/main/java/org/b3log/solo/event/comment/ArticleCommentReplyNotifier.java
...b3log/solo/event/comment/ArticleCommentReplyNotifier.java
+2
-2
src/main/java/org/b3log/solo/event/comment/PageCommentReplyNotifier.java
...rg/b3log/solo/event/comment/PageCommentReplyNotifier.java
+2
-2
src/main/java/org/b3log/solo/event/ping/AddArticleGoogleBlogSearchPinger.java
...log/solo/event/ping/AddArticleGoogleBlogSearchPinger.java
+4
-3
src/main/java/org/b3log/solo/event/ping/UpdateArticleGoogleBlogSearchPinger.java
.../solo/event/ping/UpdateArticleGoogleBlogSearchPinger.java
+4
-3
src/main/java/org/b3log/solo/event/plugin/PluginRefresher.java
...ain/java/org/b3log/solo/event/plugin/PluginRefresher.java
+3
-2
src/main/java/org/b3log/solo/event/rhythm/ArticleSender.java
src/main/java/org/b3log/solo/event/rhythm/ArticleSender.java
+6
-5
src/main/java/org/b3log/solo/event/rhythm/ArticleUpdater.java
...main/java/org/b3log/solo/event/rhythm/ArticleUpdater.java
+6
-5
src/main/java/org/b3log/solo/event/symphony/CommentSender.java
...ain/java/org/b3log/solo/event/symphony/CommentSender.java
+5
-4
src/main/java/org/b3log/solo/filter/AuthFilter.java
src/main/java/org/b3log/solo/filter/AuthFilter.java
+5
-9
src/main/java/org/b3log/solo/filter/InitCheckFilter.java
src/main/java/org/b3log/solo/filter/InitCheckFilter.java
+5
-9
src/main/java/org/b3log/solo/filter/PermalinkFilter.java
src/main/java/org/b3log/solo/filter/PermalinkFilter.java
+5
-9
src/main/java/org/b3log/solo/model/PageTypes.java
src/main/java/org/b3log/solo/model/PageTypes.java
+1
-1
src/main/java/org/b3log/solo/model/feed/atom/Entry.java
src/main/java/org/b3log/solo/model/feed/atom/Entry.java
+2
-5
src/main/java/org/b3log/solo/model/feed/atom/Feed.java
src/main/java/org/b3log/solo/model/feed/atom/Feed.java
+2
-1
src/main/java/org/b3log/solo/model/feed/rss/Channel.java
src/main/java/org/b3log/solo/model/feed/rss/Channel.java
+2
-1
src/main/java/org/b3log/solo/model/feed/rss/Item.java
src/main/java/org/b3log/solo/model/feed/rss/Item.java
+2
-1
src/main/java/org/b3log/solo/plugin/broadcast/ChanceProcessor.java
...java/org/b3log/solo/plugin/broadcast/ChanceProcessor.java
+7
-6
src/main/java/org/b3log/solo/processor/ArticleProcessor.java
src/main/java/org/b3log/solo/processor/ArticleProcessor.java
+13
-17
src/main/java/org/b3log/solo/processor/BlogProcessor.java
src/main/java/org/b3log/solo/processor/BlogProcessor.java
+9
-12
src/main/java/org/b3log/solo/processor/CaptchaProcessor.java
src/main/java/org/b3log/solo/processor/CaptchaProcessor.java
+11
-14
src/main/java/org/b3log/solo/processor/CategoryProcessor.java
...main/java/org/b3log/solo/processor/CategoryProcessor.java
+1
-1
src/main/java/org/b3log/solo/processor/CommentProcessor.java
src/main/java/org/b3log/solo/processor/CommentProcessor.java
+1
-1
src/main/java/org/b3log/solo/processor/ErrorProcessor.java
src/main/java/org/b3log/solo/processor/ErrorProcessor.java
+7
-6
src/main/java/org/b3log/solo/processor/FeedProcessor.java
src/main/java/org/b3log/solo/processor/FeedProcessor.java
+9
-14
src/main/java/org/b3log/solo/processor/IndexProcessor.java
src/main/java/org/b3log/solo/processor/IndexProcessor.java
+9
-8
src/main/java/org/b3log/solo/processor/InitProcessor.java
src/main/java/org/b3log/solo/processor/InitProcessor.java
+7
-6
src/main/java/org/b3log/solo/processor/LoginProcessor.java
src/main/java/org/b3log/solo/processor/LoginProcessor.java
+3
-3
src/main/java/org/b3log/solo/processor/PageProcessor.java
src/main/java/org/b3log/solo/processor/PageProcessor.java
+7
-7
src/main/java/org/b3log/solo/processor/RepairProcessor.java
src/main/java/org/b3log/solo/processor/RepairProcessor.java
+20
-24
src/main/java/org/b3log/solo/processor/SitemapProcessor.java
src/main/java/org/b3log/solo/processor/SitemapProcessor.java
+6
-5
src/main/java/org/b3log/solo/processor/StatProcessor.java
src/main/java/org/b3log/solo/processor/StatProcessor.java
+2
-2
src/main/java/org/b3log/solo/processor/TagProcessor.java
src/main/java/org/b3log/solo/processor/TagProcessor.java
+13
-16
src/main/java/org/b3log/solo/processor/UserTemplateProcessor.java
.../java/org/b3log/solo/processor/UserTemplateProcessor.java
+7
-6
src/main/java/org/b3log/solo/processor/console/AdminConsole.java
...n/java/org/b3log/solo/processor/console/AdminConsole.java
+1
-1
src/main/java/org/b3log/solo/processor/console/ArticleConsole.java
...java/org/b3log/solo/processor/console/ArticleConsole.java
+5
-4
src/main/java/org/b3log/solo/processor/console/CategoryConsole.java
...ava/org/b3log/solo/processor/console/CategoryConsole.java
+1
-1
src/main/java/org/b3log/solo/processor/console/CommentConsole.java
...java/org/b3log/solo/processor/console/CommentConsole.java
+5
-4
src/main/java/org/b3log/solo/processor/console/LinkConsole.java
...in/java/org/b3log/solo/processor/console/LinkConsole.java
+6
-5
src/main/java/org/b3log/solo/processor/console/PageConsole.java
...in/java/org/b3log/solo/processor/console/PageConsole.java
+4
-3
src/main/java/org/b3log/solo/processor/console/PluginConsole.java
.../java/org/b3log/solo/processor/console/PluginConsole.java
+5
-4
src/main/java/org/b3log/solo/processor/console/PreferenceConsole.java
...a/org/b3log/solo/processor/console/PreferenceConsole.java
+6
-9
src/main/java/org/b3log/solo/processor/console/TagConsole.java
...ain/java/org/b3log/solo/processor/console/TagConsole.java
+7
-6
src/main/java/org/b3log/solo/processor/console/UserConsole.java
...in/java/org/b3log/solo/processor/console/UserConsole.java
+1
-1
src/main/java/org/b3log/solo/processor/console/common/ProcessAuthAdvice.java
...3log/solo/processor/console/common/ProcessAuthAdvice.java
+6
-8
src/main/java/org/b3log/solo/processor/renderer/ConsoleRenderer.java
...va/org/b3log/solo/processor/renderer/ConsoleRenderer.java
+3
-2
src/main/java/org/b3log/solo/processor/util/FillTagArticles.java
...n/java/org/b3log/solo/processor/util/FillTagArticles.java
+1
-1
src/main/java/org/b3log/solo/processor/util/Filler.java
src/main/java/org/b3log/solo/processor/util/Filler.java
+1
-1
src/main/java/org/b3log/solo/processor/util/TopBars.java
src/main/java/org/b3log/solo/processor/util/TopBars.java
+9
-8
src/main/java/org/b3log/solo/repository/ArchiveDateRepository.java
...java/org/b3log/solo/repository/ArchiveDateRepository.java
+2
-1
src/main/java/org/b3log/solo/repository/ArticleRepository.java
...ain/java/org/b3log/solo/repository/ArticleRepository.java
+2
-1
src/main/java/org/b3log/solo/repository/CommentRepository.java
...ain/java/org/b3log/solo/repository/CommentRepository.java
+2
-2
src/main/java/org/b3log/solo/repository/PageRepository.java
src/main/java/org/b3log/solo/repository/PageRepository.java
+2
-1
src/main/java/org/b3log/solo/repository/TagArticleRepository.java
.../java/org/b3log/solo/repository/TagArticleRepository.java
+2
-1
src/main/java/org/b3log/solo/repository/TagRepository.java
src/main/java/org/b3log/solo/repository/TagRepository.java
+2
-1
src/main/java/org/b3log/solo/repository/impl/ArchiveDateArticleRepositoryImpl.java
...olo/repository/impl/ArchiveDateArticleRepositoryImpl.java
+2
-7
src/main/java/org/b3log/solo/repository/impl/ArchiveDateRepositoryImpl.java
...b3log/solo/repository/impl/ArchiveDateRepositoryImpl.java
+6
-10
src/main/java/org/b3log/solo/repository/impl/ArticleRepositoryImpl.java
...org/b3log/solo/repository/impl/ArticleRepositoryImpl.java
+7
-12
src/main/java/org/b3log/solo/repository/impl/CommentRepositoryImpl.java
...org/b3log/solo/repository/impl/CommentRepositoryImpl.java
+8
-12
src/main/java/org/b3log/solo/repository/impl/LinkRepositoryImpl.java
...va/org/b3log/solo/repository/impl/LinkRepositoryImpl.java
+1
-6
src/main/java/org/b3log/solo/repository/impl/PageRepositoryImpl.java
...va/org/b3log/solo/repository/impl/PageRepositoryImpl.java
+3
-7
src/main/java/org/b3log/solo/repository/impl/TagArticleRepositoryImpl.java
.../b3log/solo/repository/impl/TagArticleRepositoryImpl.java
+6
-10
src/main/java/org/b3log/solo/repository/impl/TagRepositoryImpl.java
...ava/org/b3log/solo/repository/impl/TagRepositoryImpl.java
+10
-14
src/main/java/org/b3log/solo/repository/impl/UserRepositoryImpl.java
...va/org/b3log/solo/repository/impl/UserRepositoryImpl.java
+1
-5
src/main/java/org/b3log/solo/service/ArchiveDateQueryService.java
.../java/org/b3log/solo/service/ArchiveDateQueryService.java
+3
-2
src/main/java/org/b3log/solo/service/ArticleMgmtService.java
src/main/java/org/b3log/solo/service/ArticleMgmtService.java
+15
-26
src/main/java/org/b3log/solo/service/ArticleQueryService.java
...main/java/org/b3log/solo/service/ArticleQueryService.java
+2
-6
src/main/java/org/b3log/solo/service/CategoryMgmtService.java
...main/java/org/b3log/solo/service/CategoryMgmtService.java
+1
-2
src/main/java/org/b3log/solo/service/CategoryQueryService.java
...ain/java/org/b3log/solo/service/CategoryQueryService.java
+2
-2
src/main/java/org/b3log/solo/service/CommentMgmtService.java
src/main/java/org/b3log/solo/service/CommentMgmtService.java
+11
-7
src/main/java/org/b3log/solo/service/CommentQueryService.java
...main/java/org/b3log/solo/service/CommentQueryService.java
+6
-5
src/main/java/org/b3log/solo/service/InitService.java
src/main/java/org/b3log/solo/service/InitService.java
+11
-19
src/main/java/org/b3log/solo/service/LinkMgmtService.java
src/main/java/org/b3log/solo/service/LinkMgmtService.java
+1
-1
src/main/java/org/b3log/solo/service/LinkQueryService.java
src/main/java/org/b3log/solo/service/LinkQueryService.java
+3
-2
src/main/java/org/b3log/solo/service/OptionMgmtService.java
src/main/java/org/b3log/solo/service/OptionMgmtService.java
+1
-1
src/main/java/org/b3log/solo/service/OptionQueryService.java
src/main/java/org/b3log/solo/service/OptionQueryService.java
+1
-1
src/main/java/org/b3log/solo/service/PageMgmtService.java
src/main/java/org/b3log/solo/service/PageMgmtService.java
+3
-2
src/main/java/org/b3log/solo/service/PageQueryService.java
src/main/java/org/b3log/solo/service/PageQueryService.java
+3
-2
src/main/java/org/b3log/solo/service/PermalinkQueryService.java
...in/java/org/b3log/solo/service/PermalinkQueryService.java
+4
-3
src/main/java/org/b3log/solo/service/PluginMgmtService.java
src/main/java/org/b3log/solo/service/PluginMgmtService.java
+4
-3
src/main/java/org/b3log/solo/service/PluginQueryService.java
src/main/java/org/b3log/solo/service/PluginQueryService.java
+4
-3
src/main/java/org/b3log/solo/service/PreferenceMgmtService.java
...in/java/org/b3log/solo/service/PreferenceMgmtService.java
+12
-12
src/main/java/org/b3log/solo/service/PreferenceQueryService.java
...n/java/org/b3log/solo/service/PreferenceQueryService.java
+1
-1
src/main/java/org/b3log/solo/service/StatisticMgmtService.java
...ain/java/org/b3log/solo/service/StatisticMgmtService.java
+8
-7
src/main/java/org/b3log/solo/service/StatisticQueryService.java
...in/java/org/b3log/solo/service/StatisticQueryService.java
+1
-1
src/main/java/org/b3log/solo/service/TagMgmtService.java
src/main/java/org/b3log/solo/service/TagMgmtService.java
+1
-1
src/main/java/org/b3log/solo/service/TagQueryService.java
src/main/java/org/b3log/solo/service/TagQueryService.java
+4
-3
src/main/java/org/b3log/solo/service/UpgradeService.java
src/main/java/org/b3log/solo/service/UpgradeService.java
+3
-3
src/main/java/org/b3log/solo/service/UserMgmtService.java
src/main/java/org/b3log/solo/service/UserMgmtService.java
+8
-7
src/main/java/org/b3log/solo/service/UserQueryService.java
src/main/java/org/b3log/solo/service/UserQueryService.java
+5
-4
src/main/java/org/b3log/solo/util/Comments.java
src/main/java/org/b3log/solo/util/Comments.java
+2
-1
src/main/java/org/b3log/solo/util/Emotions.java
src/main/java/org/b3log/solo/util/Emotions.java
+2
-1
src/main/java/org/b3log/solo/util/Skins.java
src/main/java/org/b3log/solo/util/Skins.java
+9
-12
src/main/java/org/b3log/solo/util/Thumbnails.java
src/main/java/org/b3log/solo/util/Thumbnails.java
+4
-3
src/main/java/org/b3log/solo/util/TimeZones.java
src/main/java/org/b3log/solo/util/TimeZones.java
+2
-1
src/main/java/org/b3log/solo/util/comparator/ArticleCreateDateComparator.java
...log/solo/util/comparator/ArticleCreateDateComparator.java
+3
-2
src/main/java/org/b3log/solo/util/comparator/ArticleUpdateDateComparator.java
...log/solo/util/comparator/ArticleUpdateDateComparator.java
+3
-2
src/main/java/org/b3log/solo/util/comparator/TagRefCntComparator.java
...a/org/b3log/solo/util/comparator/TagRefCntComparator.java
+2
-1
src/main/webapp/css/default-admin.min.css
src/main/webapp/css/default-admin.min.css
+1
-1
src/main/webapp/css/default-base.min.css
src/main/webapp/css/default-base.min.css
+1
-1
src/main/webapp/css/selection..min.css
src/main/webapp/css/selection..min.css
+15
-0
src/main/webapp/js/admin/latkeAdmin.js
src/main/webapp/js/admin/latkeAdmin.js
+15
-15
src/main/webapp/js/admin/latkeAdmin.min.js
src/main/webapp/js/admin/latkeAdmin.min.js
+1
-1
No files found.
pom.xml
View file @
83955412
...
@@ -107,7 +107,7 @@
...
@@ -107,7 +107,7 @@
<properties>
<properties>
<project.build.sourceEncoding>
UTF-8
</project.build.sourceEncoding>
<project.build.sourceEncoding>
UTF-8
</project.build.sourceEncoding>
<org.b3log.latke.version>
2.3.1
0
</org.b3log.latke.version>
<org.b3log.latke.version>
2.3.1
1-SNAPSHOT
</org.b3log.latke.version>
<servlet.version>
3.1.0
</servlet.version>
<servlet.version>
3.1.0
</servlet.version>
<slf4j.version>
1.7.5
</slf4j.version>
<slf4j.version>
1.7.5
</slf4j.version>
...
...
src/main/java/org/b3log/solo/SoloServletListener.java
View file @
83955412
...
@@ -15,14 +15,6 @@
...
@@ -15,14 +15,6 @@
*/
*/
package
org
.
b3log
.
solo
;
package
org
.
b3log
.
solo
;
import
java.util.ResourceBundle
;
import
java.util.Set
;
import
javax.servlet.ServletContextEvent
;
import
javax.servlet.ServletRequestEvent
;
import
javax.servlet.http.Cookie
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpSession
;
import
javax.servlet.http.HttpSessionEvent
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.event.EventManager
;
import
org.b3log.latke.event.EventManager
;
...
@@ -56,6 +48,15 @@ import org.b3log.solo.service.UpgradeService;
...
@@ -56,6 +48,15 @@ import org.b3log.solo.service.UpgradeService;
import
org.b3log.solo.util.Skins
;
import
org.b3log.solo.util.Skins
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.ServletContextEvent
;
import
javax.servlet.ServletRequestEvent
;
import
javax.servlet.http.Cookie
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpSession
;
import
javax.servlet.http.HttpSessionEvent
;
import
java.util.ResourceBundle
;
import
java.util.Set
;
/**
/**
* Solo Servlet listener.
* Solo Servlet listener.
*
*
...
...
src/main/java/org/b3log/solo/Starter.java
View file @
83955412
...
@@ -15,16 +15,7 @@
...
@@ -15,16 +15,7 @@
*/
*/
package
org
.
b3log
.
solo
;
package
org
.
b3log
.
solo
;
import
java.awt.Desktop
;
import
org.apache.commons.cli.*
;
import
java.io.File
;
import
java.net.URI
;
import
org.apache.commons.cli.CommandLine
;
import
org.apache.commons.cli.CommandLineParser
;
import
org.apache.commons.cli.DefaultParser
;
import
org.apache.commons.cli.HelpFormatter
;
import
org.apache.commons.cli.Option
;
import
org.apache.commons.cli.Options
;
import
org.apache.commons.cli.ParseException
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.RuntimeMode
;
import
org.b3log.latke.RuntimeMode
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
...
@@ -35,6 +26,10 @@ import org.eclipse.jetty.util.log.Log;
...
@@ -35,6 +26,10 @@ import org.eclipse.jetty.util.log.Log;
import
org.eclipse.jetty.util.log.Slf4jLog
;
import
org.eclipse.jetty.util.log.Slf4jLog
;
import
org.eclipse.jetty.webapp.WebAppContext
;
import
org.eclipse.jetty.webapp.WebAppContext
;
import
java.awt.*
;
import
java.io.File
;
import
java.net.URI
;
/**
/**
* Solo with embedded Jetty, <a href="https://github.com/b3log/solo/issues/12037">standalone mode</a>.
* Solo with embedded Jetty, <a href="https://github.com/b3log/solo/issues/12037">standalone mode</a>.
*
*
...
...
src/main/java/org/b3log/solo/api/metaweblog/MetaWeblogAPI.java
View file @
83955412
...
@@ -15,19 +15,13 @@
...
@@ -15,19 +15,13 @@
*/
*/
package
org
.
b3log
.
solo
.
api
.
metaweblog
;
package
org
.
b3log
.
solo
.
api
.
metaweblog
;
import
java.text.ParseException
;
import
java.util.Date
;
import
java.util.List
;
import
javax.inject.Inject
;
import
javax.servlet.ServletInputStream
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.apache.commons.io.IOUtils
;
import
org.apache.commons.io.IOUtils
;
import
org.apache.commons.lang.StringEscapeUtils
;
import
org.apache.commons.lang.StringEscapeUtils
;
import
org.apache.commons.lang.time.DateFormatUtils
;
import
org.apache.commons.lang.time.DateFormatUtils
;
import
org.apache.commons.lang.time.DateUtils
;
import
org.apache.commons.lang.time.DateUtils
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.User
;
import
org.b3log.latke.model.User
;
...
@@ -43,17 +37,20 @@ import org.b3log.solo.model.Article;
...
@@ -43,17 +37,20 @@ import org.b3log.solo.model.Article;
import
org.b3log.solo.model.Option
;
import
org.b3log.solo.model.Option
;
import
org.b3log.solo.model.Tag
;
import
org.b3log.solo.model.Tag
;
import
org.b3log.solo.repository.ArticleRepository
;
import
org.b3log.solo.repository.ArticleRepository
;
import
org.b3log.solo.service.ArticleMgmtService
;
import
org.b3log.solo.service.*
;
import
org.b3log.solo.service.ArticleQueryService
;
import
org.b3log.solo.service.PreferenceQueryService
;
import
org.b3log.solo.service.TagQueryService
;
import
org.b3log.solo.service.UserQueryService
;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONException
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
org.json.XML
;
import
org.json.XML
;
import
org.jsoup.Jsoup
;
import
org.jsoup.Jsoup
;
import
javax.servlet.ServletInputStream
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.text.ParseException
;
import
java.util.Date
;
import
java.util.List
;
/**
/**
* <a href="http://www.xmlrpc.com/metaWeblogApi">MetaWeblog API</a> requests processing.
* <a href="http://www.xmlrpc.com/metaWeblogApi">MetaWeblog API</a> requests processing.
*
*
...
@@ -423,7 +420,7 @@ public class MetaWeblogAPI {
...
@@ -423,7 +420,7 @@ public class MetaWeblogAPI {
}
}
}
}
final
boolean
publish
=
1
==
params
.
getJSONObject
(
INDEX_PUBLISH
).
getJSONObject
(
"value"
).
getInt
(
"boolean"
)
?
true
:
false
;
final
boolean
publish
=
1
==
params
.
getJSONObject
(
INDEX_PUBLISH
).
getJSONObject
(
"value"
).
getInt
(
"boolean"
);
ret
.
put
(
Article
.
ARTICLE_IS_PUBLISHED
,
publish
);
ret
.
put
(
Article
.
ARTICLE_IS_PUBLISHED
,
publish
);
...
...
src/main/java/org/b3log/solo/api/symphony/ArticleReceiver.java
View file @
83955412
...
@@ -16,6 +16,7 @@
...
@@ -16,6 +16,7 @@
package
org
.
b3log
.
solo
.
api
.
symphony
;
package
org
.
b3log
.
solo
.
api
.
symphony
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.User
;
import
org.b3log.latke.model.User
;
...
@@ -39,7 +40,6 @@ import org.json.JSONObject;
...
@@ -39,7 +40,6 @@ import org.json.JSONObject;
import
org.jsoup.Jsoup
;
import
org.jsoup.Jsoup
;
import
org.jsoup.safety.Whitelist
;
import
org.jsoup.safety.Whitelist
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpServletResponse
;
...
...
src/main/java/org/b3log/solo/api/symphony/CommentReceiver.java
View file @
83955412
...
@@ -15,16 +15,11 @@
...
@@ -15,16 +15,11 @@
*/
*/
package
org
.
b3log
.
solo
.
api
.
symphony
;
package
org
.
b3log
.
solo
.
api
.
symphony
;
import
java.net.MalformedURLException
;
import
java.net.URL
;
import
java.util.Date
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.apache.commons.lang.time.DateFormatUtils
;
import
org.apache.commons.lang.time.DateFormatUtils
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.event.Event
;
import
org.b3log.latke.event.Event
;
import
org.b3log.latke.event.EventManager
;
import
org.b3log.latke.event.EventManager
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.repository.Transaction
;
import
org.b3log.latke.repository.Transaction
;
...
@@ -52,6 +47,12 @@ import org.b3log.solo.util.Comments;
...
@@ -52,6 +47,12 @@ import org.b3log.solo.util.Comments;
import
org.b3log.solo.util.QueryResults
;
import
org.b3log.solo.util.QueryResults
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.net.MalformedURLException
;
import
java.net.URL
;
import
java.util.Date
;
/**
/**
* Comment receiver (from B3log Symphony).
* Comment receiver (from B3log Symphony).
*
*
...
...
src/main/java/org/b3log/solo/dev/ArticleGenerator.java
View file @
83955412
...
@@ -16,14 +16,10 @@
...
@@ -16,14 +16,10 @@
package
org
.
b3log
.
solo
.
dev
;
package
org
.
b3log
.
solo
.
dev
;
import
java.io.IOException
;
import
java.util.Date
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.apache.commons.lang.time.DateUtils
;
import
org.apache.commons.lang.time.DateUtils
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.RuntimeMode
;
import
org.b3log.latke.RuntimeMode
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.User
;
import
org.b3log.latke.model.User
;
...
@@ -37,6 +33,11 @@ import org.b3log.solo.service.ArticleMgmtService;
...
@@ -37,6 +33,11 @@ import org.b3log.solo.service.ArticleMgmtService;
import
org.b3log.solo.service.UserQueryService
;
import
org.b3log.solo.service.UserQueryService
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.util.Date
;
/**
/**
* Generates some dummy articles for development testing.
* Generates some dummy articles for development testing.
...
...
src/main/java/org/b3log/solo/event/comment/ArticleCommentReplyNotifier.java
View file @
83955412
...
@@ -65,7 +65,7 @@ public final class ArticleCommentReplyNotifier extends AbstractEventListener<JSO
...
@@ -65,7 +65,7 @@ public final class ArticleCommentReplyNotifier extends AbstractEventListener<JSO
LOGGER
.
log
(
Level
.
DEBUG
,
LOGGER
.
log
(
Level
.
DEBUG
,
"Processing an event[type={0}, data={1}] in listener[className={2}]"
,
"Processing an event[type={0}, data={1}] in listener[className={2}]"
,
new
Object
[]{
event
.
getType
(),
eventData
,
ArticleCommentReplyNotifier
.
class
.
getName
()}
);
event
.
getType
(),
eventData
,
ArticleCommentReplyNotifier
.
class
.
getName
()
);
final
String
originalCommentId
=
comment
.
optString
(
Comment
.
COMMENT_ORIGINAL_COMMENT_ID
);
final
String
originalCommentId
=
comment
.
optString
(
Comment
.
COMMENT_ORIGINAL_COMMENT_ID
);
if
(
Strings
.
isEmptyOrNull
(
originalCommentId
))
{
if
(
Strings
.
isEmptyOrNull
(
originalCommentId
))
{
...
@@ -144,7 +144,7 @@ public final class ArticleCommentReplyNotifier extends AbstractEventListener<JSO
...
@@ -144,7 +144,7 @@ public final class ArticleCommentReplyNotifier extends AbstractEventListener<JSO
message
.
setHtmlBody
(
mailBody
);
message
.
setHtmlBody
(
mailBody
);
LOGGER
.
log
(
Level
.
DEBUG
,
"Sending a mail[mailSubject={0}, mailBody=[{1}] to [{2}]"
,
LOGGER
.
log
(
Level
.
DEBUG
,
"Sending a mail[mailSubject={0}, mailBody=[{1}] to [{2}]"
,
new
Object
[]{
mailSubject
,
mailBody
,
originalCommentEmail
}
);
mailSubject
,
mailBody
,
originalCommentEmail
);
mailService
.
send
(
message
);
mailService
.
send
(
message
);
}
catch
(
final
Exception
e
)
{
}
catch
(
final
Exception
e
)
{
...
...
src/main/java/org/b3log/solo/event/comment/PageCommentReplyNotifier.java
View file @
83955412
...
@@ -65,7 +65,7 @@ public final class PageCommentReplyNotifier extends AbstractEventListener<JSONOb
...
@@ -65,7 +65,7 @@ public final class PageCommentReplyNotifier extends AbstractEventListener<JSONOb
final
JSONObject
page
=
eventData
.
optJSONObject
(
Page
.
PAGE
);
final
JSONObject
page
=
eventData
.
optJSONObject
(
Page
.
PAGE
);
LOGGER
.
log
(
Level
.
DEBUG
,
"Processing an event[type={0}, data={1}] in listener[className={2}]"
,
LOGGER
.
log
(
Level
.
DEBUG
,
"Processing an event[type={0}, data={1}] in listener[className={2}]"
,
new
Object
[]
{
event
.
getType
(),
eventData
,
PageCommentReplyNotifier
.
class
.
getName
()}
);
event
.
getType
(),
eventData
,
PageCommentReplyNotifier
.
class
.
getName
()
);
final
String
originalCommentId
=
comment
.
optString
(
Comment
.
COMMENT_ORIGINAL_COMMENT_ID
);
final
String
originalCommentId
=
comment
.
optString
(
Comment
.
COMMENT_ORIGINAL_COMMENT_ID
);
if
(
Strings
.
isEmptyOrNull
(
originalCommentId
))
{
if
(
Strings
.
isEmptyOrNull
(
originalCommentId
))
{
...
@@ -123,7 +123,7 @@ public final class PageCommentReplyNotifier extends AbstractEventListener<JSONOb
...
@@ -123,7 +123,7 @@ public final class PageCommentReplyNotifier extends AbstractEventListener<JSONOb
message
.
setHtmlBody
(
mailBody
);
message
.
setHtmlBody
(
mailBody
);
LOGGER
.
log
(
Level
.
DEBUG
,
"Sending a mail[mailSubject={0}, mailBody=[{1}] to [{2}]"
,
LOGGER
.
log
(
Level
.
DEBUG
,
"Sending a mail[mailSubject={0}, mailBody=[{1}] to [{2}]"
,
new
Object
[]
{
mailSubject
,
mailBody
,
originalCommentEmail
}
);
mailSubject
,
mailBody
,
originalCommentEmail
);
mailService
.
send
(
message
);
mailService
.
send
(
message
);
}
catch
(
final
Exception
e
)
{
}
catch
(
final
Exception
e
)
{
LOGGER
.
log
(
Level
.
ERROR
,
e
.
getMessage
(),
e
);
LOGGER
.
log
(
Level
.
ERROR
,
e
.
getMessage
(),
e
);
...
...
src/main/java/org/b3log/solo/event/ping/AddArticleGoogleBlogSearchPinger.java
View file @
83955412
...
@@ -16,8 +16,6 @@
...
@@ -16,8 +16,6 @@
package
org
.
b3log
.
solo
.
event
.
ping
;
package
org
.
b3log
.
solo
.
event
.
ping
;
import
java.net.URL
;
import
java.net.URLEncoder
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.event.AbstractEventListener
;
import
org.b3log.latke.event.AbstractEventListener
;
import
org.b3log.latke.event.Event
;
import
org.b3log.latke.event.Event
;
...
@@ -35,6 +33,9 @@ import org.b3log.solo.model.Option;
...
@@ -35,6 +33,9 @@ import org.b3log.solo.model.Option;
import
org.b3log.solo.service.PreferenceQueryService
;
import
org.b3log.solo.service.PreferenceQueryService
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.net.URL
;
import
java.net.URLEncoder
;
/**
/**
* This listener is responsible for pinging <a href="http://blogsearch.google.com">
* This listener is responsible for pinging <a href="http://blogsearch.google.com">
...
@@ -93,7 +94,7 @@ public final class AddArticleGoogleBlogSearchPinger extends AbstractEventListene
...
@@ -93,7 +94,7 @@ public final class AddArticleGoogleBlogSearchPinger extends AbstractEventListene
if
(
Latkes
.
getServePath
().
contains
(
"localhost"
))
{
if
(
Latkes
.
getServePath
().
contains
(
"localhost"
))
{
LOGGER
.
log
(
Level
.
TRACE
,
LOGGER
.
log
(
Level
.
TRACE
,
"Solo runs on local server, so should not ping "
+
"Google Blog Search Service for the article[title={0}]"
,
"Solo runs on local server, so should not ping "
+
"Google Blog Search Service for the article[title={0}]"
,
new
Object
[]
{
article
.
getString
(
Article
.
ARTICLE_TITLE
)}
);
article
.
getString
(
Article
.
ARTICLE_TITLE
)
);
return
;
return
;
}
}
...
...
src/main/java/org/b3log/solo/event/ping/UpdateArticleGoogleBlogSearchPinger.java
View file @
83955412
...
@@ -16,8 +16,6 @@
...
@@ -16,8 +16,6 @@
package
org
.
b3log
.
solo
.
event
.
ping
;
package
org
.
b3log
.
solo
.
event
.
ping
;
import
java.net.URL
;
import
java.net.URLEncoder
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.event.AbstractEventListener
;
import
org.b3log.latke.event.AbstractEventListener
;
import
org.b3log.latke.event.Event
;
import
org.b3log.latke.event.Event
;
...
@@ -35,6 +33,9 @@ import org.b3log.solo.model.Option;
...
@@ -35,6 +33,9 @@ import org.b3log.solo.model.Option;
import
org.b3log.solo.service.PreferenceQueryService
;
import
org.b3log.solo.service.PreferenceQueryService
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.net.URL
;
import
java.net.URLEncoder
;
/**
/**
* This listener is responsible for pinging <a href="http://blogsearch.google.com">
* This listener is responsible for pinging <a href="http://blogsearch.google.com">
...
@@ -93,7 +94,7 @@ public final class UpdateArticleGoogleBlogSearchPinger extends AbstractEventList
...
@@ -93,7 +94,7 @@ public final class UpdateArticleGoogleBlogSearchPinger extends AbstractEventList
if
(
Latkes
.
getServePath
().
contains
(
"localhost"
))
{
if
(
Latkes
.
getServePath
().
contains
(
"localhost"
))
{
LOGGER
.
log
(
Level
.
TRACE
,
LOGGER
.
log
(
Level
.
TRACE
,
"Solo runs on local server, so should not ping "
+
"Google Blog Search Service for the article[title={0}]"
,
"Solo runs on local server, so should not ping "
+
"Google Blog Search Service for the article[title={0}]"
,
new
Object
[]
{
article
.
getString
(
Article
.
ARTICLE_TITLE
)}
);
article
.
getString
(
Article
.
ARTICLE_TITLE
)
);
return
;
return
;
}
}
...
...
src/main/java/org/b3log/solo/event/plugin/PluginRefresher.java
View file @
83955412
...
@@ -16,7 +16,6 @@
...
@@ -16,7 +16,6 @@
package
org
.
b3log
.
solo
.
event
.
plugin
;
package
org
.
b3log
.
solo
.
event
.
plugin
;
import
java.util.List
;
import
org.b3log.latke.event.AbstractEventListener
;
import
org.b3log.latke.event.AbstractEventListener
;
import
org.b3log.latke.event.Event
;
import
org.b3log.latke.event.Event
;
import
org.b3log.latke.event.EventException
;
import
org.b3log.latke.event.EventException
;
...
@@ -31,6 +30,8 @@ import org.b3log.solo.repository.PluginRepository;
...
@@ -31,6 +30,8 @@ import org.b3log.solo.repository.PluginRepository;
import
org.b3log.solo.repository.impl.PluginRepositoryImpl
;
import
org.b3log.solo.repository.impl.PluginRepositoryImpl
;
import
org.b3log.solo.service.PluginMgmtService
;
import
org.b3log.solo.service.PluginMgmtService
;
import
java.util.List
;
/**
/**
* This listener is responsible for refreshing plugin after every loaded.
* This listener is responsible for refreshing plugin after every loaded.
...
@@ -51,7 +52,7 @@ public final class PluginRefresher extends AbstractEventListener<List<AbstractPl
...
@@ -51,7 +52,7 @@ public final class PluginRefresher extends AbstractEventListener<List<AbstractPl
final
List
<
AbstractPlugin
>
plugins
=
event
.
getData
();
final
List
<
AbstractPlugin
>
plugins
=
event
.
getData
();
LOGGER
.
log
(
Level
.
DEBUG
,
"Processing an event[type={0}, data={1}] in listener[className={2}]"
,
LOGGER
.
log
(
Level
.
DEBUG
,
"Processing an event[type={0}, data={1}] in listener[className={2}]"
,
new
Object
[]
{
event
.
getType
(),
plugins
,
PluginRefresher
.
class
.
getName
()}
);
event
.
getType
(),
plugins
,
PluginRefresher
.
class
.
getName
()
);
final
LatkeBeanManager
beanManager
=
Lifecycle
.
getBeanManager
();
final
LatkeBeanManager
beanManager
=
Lifecycle
.
getBeanManager
();
final
PluginRepository
pluginRepository
=
beanManager
.
getReference
(
PluginRepositoryImpl
.
class
);
final
PluginRepository
pluginRepository
=
beanManager
.
getReference
(
PluginRepositoryImpl
.
class
);
...
...
src/main/java/org/b3log/solo/event/rhythm/ArticleSender.java
View file @
83955412
...
@@ -15,9 +15,6 @@
...
@@ -15,9 +15,6 @@
*/
*/
package
org
.
b3log
.
solo
.
event
.
rhythm
;
package
org
.
b3log
.
solo
.
event
.
rhythm
;
import
java.net.MalformedURLException
;
import
java.net.URL
;
import
java.util.Date
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.event.AbstractEventListener
;
import
org.b3log.latke.event.AbstractEventListener
;
...
@@ -40,6 +37,10 @@ import org.b3log.solo.model.Option;
...
@@ -40,6 +37,10 @@ import org.b3log.solo.model.Option;
import
org.b3log.solo.service.PreferenceQueryService
;
import
org.b3log.solo.service.PreferenceQueryService
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.net.MalformedURLException
;
import
java.net.URL
;
import
java.util.Date
;
/**
/**
* This listener is responsible for sending article to B3log Rhythm.
* This listener is responsible for sending article to B3log Rhythm.
*
*
...
@@ -83,7 +84,7 @@ public final class ArticleSender extends AbstractEventListener<JSONObject> {
...
@@ -83,7 +84,7 @@ public final class ArticleSender extends AbstractEventListener<JSONObject> {
final
JSONObject
data
=
event
.
getData
();
final
JSONObject
data
=
event
.
getData
();
LOGGER
.
log
(
Level
.
DEBUG
,
"Processing an event[type={0}, data={1}] in listener[className={2}]"
,
LOGGER
.
log
(
Level
.
DEBUG
,
"Processing an event[type={0}, data={1}] in listener[className={2}]"
,
new
Object
[]{
event
.
getType
(),
data
,
ArticleSender
.
class
.
getName
()}
);
event
.
getType
(),
data
,
ArticleSender
.
class
.
getName
()
);
try
{
try
{
final
JSONObject
originalArticle
=
data
.
getJSONObject
(
Article
.
ARTICLE
);
final
JSONObject
originalArticle
=
data
.
getJSONObject
(
Article
.
ARTICLE
);
...
@@ -108,7 +109,7 @@ public final class ArticleSender extends AbstractEventListener<JSONObject> {
...
@@ -108,7 +109,7 @@ public final class ArticleSender extends AbstractEventListener<JSONObject> {
if
(
Latkes
.
getServePath
().
contains
(
"localhost"
))
{
if
(
Latkes
.
getServePath
().
contains
(
"localhost"
))
{
LOGGER
.
log
(
Level
.
INFO
,
"Solo runs on local server, so should not send this article[id={0}, title={1}] to Rhythm"
,
LOGGER
.
log
(
Level
.
INFO
,
"Solo runs on local server, so should not send this article[id={0}, title={1}] to Rhythm"
,
new
Object
[]{
originalArticle
.
getString
(
Keys
.
OBJECT_ID
),
originalArticle
.
getString
(
Article
.
ARTICLE_TITLE
)}
);
originalArticle
.
getString
(
Keys
.
OBJECT_ID
),
originalArticle
.
getString
(
Article
.
ARTICLE_TITLE
)
);
return
;
return
;
}
}
...
...
src/main/java/org/b3log/solo/event/rhythm/ArticleUpdater.java
View file @
83955412
...
@@ -15,9 +15,6 @@
...
@@ -15,9 +15,6 @@
*/
*/
package
org
.
b3log
.
solo
.
event
.
rhythm
;
package
org
.
b3log
.
solo
.
event
.
rhythm
;
import
java.net.MalformedURLException
;
import
java.net.URL
;
import
java.util.Date
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.event.AbstractEventListener
;
import
org.b3log.latke.event.AbstractEventListener
;
...
@@ -40,6 +37,10 @@ import org.b3log.solo.model.Option;
...
@@ -40,6 +37,10 @@ import org.b3log.solo.model.Option;
import
org.b3log.solo.service.PreferenceQueryService
;
import
org.b3log.solo.service.PreferenceQueryService
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.net.MalformedURLException
;
import
java.net.URL
;
import
java.util.Date
;
/**
/**
* This listener is responsible for updating article to B3log Rhythm.
* This listener is responsible for updating article to B3log Rhythm.
*
*
...
@@ -82,7 +83,7 @@ public final class ArticleUpdater extends AbstractEventListener<JSONObject> {
...
@@ -82,7 +83,7 @@ public final class ArticleUpdater extends AbstractEventListener<JSONObject> {
final
JSONObject
data
=
event
.
getData
();
final
JSONObject
data
=
event
.
getData
();
LOGGER
.
log
(
Level
.
DEBUG
,
"Processing an event[type={0}, data={1}] in listener[className={2}]"
,
LOGGER
.
log
(
Level
.
DEBUG
,
"Processing an event[type={0}, data={1}] in listener[className={2}]"
,
new
Object
[]{
event
.
getType
(),
data
,
ArticleUpdater
.
class
.
getName
()}
);
event
.
getType
(),
data
,
ArticleUpdater
.
class
.
getName
()
);
try
{
try
{
final
JSONObject
originalArticle
=
data
.
getJSONObject
(
Article
.
ARTICLE
);
final
JSONObject
originalArticle
=
data
.
getJSONObject
(
Article
.
ARTICLE
);
...
@@ -107,7 +108,7 @@ public final class ArticleUpdater extends AbstractEventListener<JSONObject> {
...
@@ -107,7 +108,7 @@ public final class ArticleUpdater extends AbstractEventListener<JSONObject> {
if
(
Latkes
.
getServePath
().
contains
(
"localhost"
))
{
if
(
Latkes
.
getServePath
().
contains
(
"localhost"
))
{
LOGGER
.
log
(
Level
.
INFO
,
"Solo runs on local server, so should not send this article[id={0}, title={1}] to Rhythm"
,
LOGGER
.
log
(
Level
.
INFO
,
"Solo runs on local server, so should not send this article[id={0}, title={1}] to Rhythm"
,
new
Object
[]{
originalArticle
.
getString
(
Keys
.
OBJECT_ID
),
originalArticle
.
getString
(
Article
.
ARTICLE_TITLE
)}
);
originalArticle
.
getString
(
Keys
.
OBJECT_ID
),
originalArticle
.
getString
(
Article
.
ARTICLE_TITLE
)
);
return
;
return
;
}
}
...
...
src/main/java/org/b3log/solo/event/symphony/CommentSender.java
View file @
83955412
...
@@ -16,8 +16,6 @@
...
@@ -16,8 +16,6 @@
package
org
.
b3log
.
solo
.
event
.
symphony
;
package
org
.
b3log
.
solo
.
event
.
symphony
;
import
java.net.MalformedURLException
;
import
java.net.URL
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.event.AbstractEventListener
;
import
org.b3log.latke.event.AbstractEventListener
;
...
@@ -39,6 +37,9 @@ import org.b3log.solo.model.Option;
...
@@ -39,6 +37,9 @@ import org.b3log.solo.model.Option;
import
org.b3log.solo.service.PreferenceQueryService
;
import
org.b3log.solo.service.PreferenceQueryService
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.net.MalformedURLException
;
import
java.net.URL
;
/**
/**
* This listener is responsible for sending comment to B3log Symphony.
* This listener is responsible for sending comment to B3log Symphony.
...
@@ -78,7 +79,7 @@ public final class CommentSender extends AbstractEventListener<JSONObject> {
...
@@ -78,7 +79,7 @@ public final class CommentSender extends AbstractEventListener<JSONObject> {
final
JSONObject
data
=
event
.
getData
();
final
JSONObject
data
=
event
.
getData
();
LOGGER
.
log
(
Level
.
DEBUG
,
"Processing an event[type={0}, data={1}] in listener[className={2}]"
,
LOGGER
.
log
(
Level
.
DEBUG
,
"Processing an event[type={0}, data={1}] in listener[className={2}]"
,
new
Object
[]
{
event
.
getType
(),
data
,
ArticleSender
.
class
.
getName
()}
);
event
.
getType
(),
data
,
ArticleSender
.
class
.
getName
()
);
try
{
try
{
final
JSONObject
originalComment
=
data
.
getJSONObject
(
Comment
.
COMMENT
);
final
JSONObject
originalComment
=
data
.
getJSONObject
(
Comment
.
COMMENT
);
...
@@ -93,7 +94,7 @@ public final class CommentSender extends AbstractEventListener<JSONObject> {
...
@@ -93,7 +94,7 @@ public final class CommentSender extends AbstractEventListener<JSONObject> {
if
(
Latkes
.
getServePath
().
contains
(
"localhost"
))
{
if
(
Latkes
.
getServePath
().
contains
(
"localhost"
))
{
LOGGER
.
log
(
Level
.
TRACE
,
"Solo runs on local server, so should not send this comment[id={0}] to Symphony"
,
LOGGER
.
log
(
Level
.
TRACE
,
"Solo runs on local server, so should not send this comment[id={0}] to Symphony"
,
new
Object
[]
{
originalComment
.
getString
(
Keys
.
OBJECT_ID
)}
);
originalComment
.
getString
(
Keys
.
OBJECT_ID
)
);
return
;
return
;
}
}
...
...
src/main/java/org/b3log/solo/filter/AuthFilter.java
View file @
83955412
...
@@ -16,15 +16,6 @@
...
@@ -16,15 +16,6 @@
package
org
.
b3log
.
solo
.
filter
;
package
org
.
b3log
.
solo
.
filter
;
import
java.io.IOException
;
import
javax.servlet.Filter
;
import
javax.servlet.FilterChain
;
import
javax.servlet.FilterConfig
;
import
javax.servlet.ServletException
;
import
javax.servlet.ServletRequest
;
import
javax.servlet.ServletResponse
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.b3log.latke.ioc.LatkeBeanManager
;
import
org.b3log.latke.ioc.LatkeBeanManager
;
import
org.b3log.latke.ioc.Lifecycle
;
import
org.b3log.latke.ioc.Lifecycle
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
...
@@ -35,6 +26,11 @@ import org.b3log.solo.service.UserMgmtService;
...
@@ -35,6 +26,11 @@ import org.b3log.solo.service.UserMgmtService;
import
org.b3log.solo.service.UserQueryService
;
import
org.b3log.solo.service.UserQueryService
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.*
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
/**
/**
* Authentication filter.
* Authentication filter.
...
...
src/main/java/org/b3log/solo/filter/InitCheckFilter.java
View file @
83955412
...
@@ -15,15 +15,6 @@
...
@@ -15,15 +15,6 @@
*/
*/
package
org
.
b3log
.
solo
.
filter
;
package
org
.
b3log
.
solo
.
filter
;
import
java.io.IOException
;
import
javax.servlet.Filter
;
import
javax.servlet.FilterChain
;
import
javax.servlet.FilterConfig
;
import
javax.servlet.ServletException
;
import
javax.servlet.ServletRequest
;
import
javax.servlet.ServletResponse
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.ioc.LatkeBeanManager
;
import
org.b3log.latke.ioc.LatkeBeanManager
;
...
@@ -37,6 +28,11 @@ import org.b3log.latke.servlet.HttpControl;
...
@@ -37,6 +28,11 @@ import org.b3log.latke.servlet.HttpControl;
import
org.b3log.latke.servlet.renderer.HTTP500Renderer
;
import
org.b3log.latke.servlet.renderer.HTTP500Renderer
;
import
org.b3log.solo.service.InitService
;
import
org.b3log.solo.service.InitService
;
import
javax.servlet.*
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
/**
/**
* Checks initialization filter.
* Checks initialization filter.
*
*
...
...
src/main/java/org/b3log/solo/filter/PermalinkFilter.java
View file @
83955412
...
@@ -16,15 +16,6 @@
...
@@ -16,15 +16,6 @@
package
org
.
b3log
.
solo
.
filter
;
package
org
.
b3log
.
solo
.
filter
;
import
java.io.IOException
;
import
javax.servlet.Filter
;
import
javax.servlet.FilterChain
;
import
javax.servlet.FilterConfig
;
import
javax.servlet.ServletException
;
import
javax.servlet.ServletRequest
;
import
javax.servlet.ServletResponse
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
...
@@ -48,6 +39,11 @@ import org.b3log.solo.service.ArticleQueryService;
...
@@ -48,6 +39,11 @@ import org.b3log.solo.service.ArticleQueryService;
import
org.b3log.solo.service.PermalinkQueryService
;
import
org.b3log.solo.service.PermalinkQueryService
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.*
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
/**
/**
* Article/Page permalink filter.
* Article/Page permalink filter.
...
...
src/main/java/org/b3log/solo/model/PageTypes.java
View file @
83955412
...
@@ -93,7 +93,7 @@ public enum PageTypes {
...
@@ -93,7 +93,7 @@ public enum PageTypes {
* @param langLabel the specified language label
* @param langLabel the specified language label
* @param typeName the specified type name
* @param typeName the specified type name
*/
*/
private
PageTypes
(
final
String
langLabel
,
final
String
typeName
)
{
PageTypes
(
final
String
langLabel
,
final
String
typeName
)
{
this
.
langLabel
=
langLabel
;
this
.
langLabel
=
langLabel
;
this
.
typeName
=
typeName
;
this
.
typeName
=
typeName
;
}
}
...
...
src/main/java/org/b3log/solo/model/feed/atom/Entry.java
View file @
83955412
...
@@ -16,13 +16,10 @@
...
@@ -16,13 +16,10 @@
package
org
.
b3log
.
solo
.
model
.
feed
.
atom
;
package
org
.
b3log
.
solo
.
model
.
feed
.
atom
;
import
java.util.Collections
;
import
java.util.Date
;
import
java.util.HashSet
;
import
java.util.Set
;
import
java.util.TimeZone
;
import
org.apache.commons.lang.time.DateFormatUtils
;
import
org.apache.commons.lang.time.DateFormatUtils
;
import
java.util.*
;
/**
/**
* Entry.
* Entry.
...
...
src/main/java/org/b3log/solo/model/feed/atom/Feed.java
View file @
83955412
...
@@ -15,11 +15,12 @@
...
@@ -15,11 +15,12 @@
*/
*/
package
org
.
b3log
.
solo
.
model
.
feed
.
atom
;
package
org
.
b3log
.
solo
.
model
.
feed
.
atom
;
import
org.apache.commons.lang.time.DateFormatUtils
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
import
java.util.TimeZone
;
import
java.util.TimeZone
;
import
org.apache.commons.lang.time.DateFormatUtils
;
/**
/**
* Feed.
* Feed.
...
...
src/main/java/org/b3log/solo/model/feed/rss/Channel.java
View file @
83955412
...
@@ -15,10 +15,11 @@
...
@@ -15,10 +15,11 @@
*/
*/
package
org
.
b3log
.
solo
.
model
.
feed
.
rss
;
package
org
.
b3log
.
solo
.
model
.
feed
.
rss
;
import
org.apache.commons.lang.time.DateFormatUtils
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
import
org.apache.commons.lang.time.DateFormatUtils
;
/**
/**
* RSS 2.0 channel.
* RSS 2.0 channel.
...
...
src/main/java/org/b3log/solo/model/feed/rss/Item.java
View file @
83955412
...
@@ -15,11 +15,12 @@
...
@@ -15,11 +15,12 @@
*/
*/
package
org
.
b3log
.
solo
.
model
.
feed
.
rss
;
package
org
.
b3log
.
solo
.
model
.
feed
.
rss
;
import
org.apache.commons.lang.time.DateFormatUtils
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.HashSet
;
import
java.util.HashSet
;
import
java.util.Locale
;
import
java.util.Locale
;
import
java.util.Set
;
import
java.util.Set
;
import
org.apache.commons.lang.time.DateFormatUtils
;
/**
/**
* Item.
* Item.
...
...
src/main/java/org/b3log/solo/plugin/broadcast/ChanceProcessor.java
View file @
83955412
...
@@ -16,14 +16,9 @@
...
@@ -16,14 +16,9 @@
package
org
.
b3log
.
solo
.
plugin
.
broadcast
;
package
org
.
b3log
.
solo
.
plugin
.
broadcast
;
import
java.net.MalformedURLException
;
import
java.net.URL
;
import
java.util.concurrent.Future
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.servlet.HTTPRequestContext
;
import
org.b3log.latke.servlet.HTTPRequestContext
;
...
@@ -46,6 +41,12 @@ import org.b3log.solo.service.UserQueryService;
...
@@ -46,6 +41,12 @@ import org.b3log.solo.service.UserQueryService;
import
org.b3log.solo.util.QueryResults
;
import
org.b3log.solo.util.QueryResults
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.net.MalformedURLException
;
import
java.net.URL
;
import
java.util.concurrent.Future
;
/**
/**
* Broadcast chance processor.
* Broadcast chance processor.
...
...
src/main/java/org/b3log/solo/processor/ArticleProcessor.java
View file @
83955412
...
@@ -15,14 +15,6 @@
...
@@ -15,14 +15,6 @@
*/
*/
package
org
.
b3log
.
solo
.
processor
;
package
org
.
b3log
.
solo
.
processor
;
import
java.io.IOException
;
import
java.io.UnsupportedEncodingException
;
import
java.net.URLDecoder
;
import
java.util.*
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpSession
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.time.DateFormatUtils
;
import
org.apache.commons.lang.time.DateFormatUtils
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
...
@@ -30,6 +22,7 @@ import org.b3log.latke.Latkes;
...
@@ -30,6 +22,7 @@ import org.b3log.latke.Latkes;
import
org.b3log.latke.event.Event
;
import
org.b3log.latke.event.Event
;
import
org.b3log.latke.event.EventException
;
import
org.b3log.latke.event.EventException
;
import
org.b3log.latke.event.EventManager
;
import
org.b3log.latke.event.EventManager
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.Pagination
;
import
org.b3log.latke.model.Pagination
;
...
@@ -45,12 +38,7 @@ import org.b3log.latke.servlet.renderer.JSONRenderer;
...
@@ -45,12 +38,7 @@ import org.b3log.latke.servlet.renderer.JSONRenderer;
import
org.b3log.latke.servlet.renderer.TextHTMLRenderer
;
import
org.b3log.latke.servlet.renderer.TextHTMLRenderer
;
import
org.b3log.latke.servlet.renderer.freemarker.AbstractFreeMarkerRenderer
;
import
org.b3log.latke.servlet.renderer.freemarker.AbstractFreeMarkerRenderer
;
import
org.b3log.latke.servlet.renderer.freemarker.FreeMarkerRenderer
;
import
org.b3log.latke.servlet.renderer.freemarker.FreeMarkerRenderer
;
import
org.b3log.latke.util.Dates
;
import
org.b3log.latke.util.*
;
import
org.b3log.latke.util.Locales
;
import
org.b3log.latke.util.Paginator
;
import
org.b3log.latke.util.Requests
;
import
org.b3log.latke.util.Stopwatchs
;
import
org.b3log.latke.util.Strings
;
import
org.b3log.solo.SoloServletListener
;
import
org.b3log.solo.SoloServletListener
;
import
org.b3log.solo.event.EventTypes
;
import
org.b3log.solo.event.EventTypes
;
import
org.b3log.solo.model.*
;
import
org.b3log.solo.model.*
;
...
@@ -64,6 +52,14 @@ import org.json.JSONException;
...
@@ -64,6 +52,14 @@ import org.json.JSONException;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
org.jsoup.Jsoup
;
import
org.jsoup.Jsoup
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpSession
;
import
java.io.IOException
;
import
java.io.UnsupportedEncodingException
;
import
java.net.URLDecoder
;
import
java.util.*
;
/**
/**
* Article processor.
* Article processor.
*
*
...
@@ -670,7 +666,7 @@ public class ArticleProcessor {
...
@@ -670,7 +666,7 @@ public class ArticleProcessor {
final
String
authorId
=
getAuthorId
(
requestURI
);
final
String
authorId
=
getAuthorId
(
requestURI
);
LOGGER
.
log
(
Level
.
DEBUG
,
"Request author articles[requestURI={0}, authorId={1}]"
,
new
Object
[]{
requestURI
,
authorId
}
);
LOGGER
.
log
(
Level
.
DEBUG
,
"Request author articles[requestURI={0}, authorId={1}]"
,
requestURI
,
authorId
);
final
int
currentPageNum
=
getAuthorCurrentPageNum
(
requestURI
,
authorId
);
final
int
currentPageNum
=
getAuthorCurrentPageNum
(
requestURI
,
authorId
);
...
@@ -679,7 +675,7 @@ public class ArticleProcessor {
...
@@ -679,7 +675,7 @@ public class ArticleProcessor {
return
;
return
;
}
}
LOGGER
.
log
(
Level
.
DEBUG
,
"Request author articles[authorId={0}, currentPageNum={1}]"
,
new
Object
[]{
authorId
,
currentPageNum
}
);
LOGGER
.
log
(
Level
.
DEBUG
,
"Request author articles[authorId={0}, currentPageNum={1}]"
,
authorId
,
currentPageNum
);
final
JSONObject
preference
=
preferenceQueryService
.
getPreference
();
final
JSONObject
preference
=
preferenceQueryService
.
getPreference
();
...
@@ -777,7 +773,7 @@ public class ArticleProcessor {
...
@@ -777,7 +773,7 @@ public class ArticleProcessor {
return
;
return
;
}
}
LOGGER
.
log
(
Level
.
DEBUG
,
"Request archive date[string={0}, currentPageNum={1}]"
,
new
Object
[]{
archiveDateString
,
currentPageNum
}
);
LOGGER
.
log
(
Level
.
DEBUG
,
"Request archive date[string={0}, currentPageNum={1}]"
,
archiveDateString
,
currentPageNum
);
final
JSONObject
result
=
archiveDateQueryService
.
getByArchiveDateString
(
archiveDateString
);
final
JSONObject
result
=
archiveDateQueryService
.
getByArchiveDateString
(
archiveDateString
);
if
(
null
==
result
)
{
if
(
null
==
result
)
{
...
...
src/main/java/org/b3log/solo/processor/BlogProcessor.java
View file @
83955412
...
@@ -15,16 +15,10 @@
...
@@ -15,16 +15,10 @@
*/
*/
package
org
.
b3log
.
solo
.
processor
;
package
org
.
b3log
.
solo
.
processor
;
import
java.net.URL
;
import
java.util.HashSet
;
import
java.util.List
;
import
java.util.Set
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.RuntimeEnv
;
import
org.b3log.latke.RuntimeEnv
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.Pagination
;
import
org.b3log.latke.model.Pagination
;
import
org.b3log.latke.model.User
;
import
org.b3log.latke.model.User
;
...
@@ -43,14 +37,17 @@ import org.b3log.solo.model.Article;
...
@@ -43,14 +37,17 @@ import org.b3log.solo.model.Article;
import
org.b3log.solo.model.Option
;
import
org.b3log.solo.model.Option
;
import
org.b3log.solo.model.Statistic
;
import
org.b3log.solo.model.Statistic
;
import
org.b3log.solo.model.Tag
;
import
org.b3log.solo.model.Tag
;
import
org.b3log.solo.service.ArticleQueryService
;
import
org.b3log.solo.service.*
;
import
org.b3log.solo.service.PreferenceQueryService
;
import
org.b3log.solo.service.StatisticQueryService
;
import
org.b3log.solo.service.TagQueryService
;
import
org.b3log.solo.service.UserQueryService
;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.net.URL
;
import
java.util.HashSet
;
import
java.util.List
;
import
java.util.Set
;
/**
/**
* Blog processor.
* Blog processor.
*
*
...
...
src/main/java/org/b3log/solo/processor/CaptchaProcessor.java
View file @
83955412
...
@@ -16,19 +16,6 @@
...
@@ -16,19 +16,6 @@
package
org
.
b3log
.
solo
.
processor
;
package
org
.
b3log
.
solo
.
processor
;
import
java.io.BufferedInputStream
;
import
java.io.File
;
import
java.io.FileOutputStream
;
import
java.io.InputStream
;
import
java.io.OutputStream
;
import
java.net.URL
;
import
java.util.Enumeration
;
import
java.util.Random
;
import
java.util.zip.ZipEntry
;
import
java.util.zip.ZipFile
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpSession
;
import
org.apache.commons.io.IOUtils
;
import
org.apache.commons.io.IOUtils
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.RuntimeEnv
;
import
org.b3log.latke.RuntimeEnv
;
...
@@ -44,6 +31,16 @@ import org.b3log.latke.servlet.annotation.RequestProcessor;
...
@@ -44,6 +31,16 @@ import org.b3log.latke.servlet.annotation.RequestProcessor;
import
org.b3log.latke.servlet.renderer.PNGRenderer
;
import
org.b3log.latke.servlet.renderer.PNGRenderer
;
import
org.b3log.solo.SoloServletListener
;
import
org.b3log.solo.SoloServletListener
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpSession
;
import
java.io.*
;
import
java.net.URL
;
import
java.util.Enumeration
;
import
java.util.Random
;
import
java.util.zip.ZipEntry
;
import
java.util.zip.ZipFile
;
/**
/**
* Captcha processor.
* Captcha processor.
...
@@ -112,7 +109,7 @@ public class CaptchaProcessor {
...
@@ -112,7 +109,7 @@ public class CaptchaProcessor {
final
HttpSession
httpSession
=
request
.
getSession
(
false
);
final
HttpSession
httpSession
=
request
.
getSession
(
false
);
if
(
null
!=
httpSession
)
{
if
(
null
!=
httpSession
)
{
LOGGER
.
log
(
Level
.
DEBUG
,
"Captcha[{0}] for session[id={1}]"
,
new
Object
[]
{
captcha
,
httpSession
.
getId
()}
);
LOGGER
.
log
(
Level
.
DEBUG
,
"Captcha[{0}] for session[id={1}]"
,
captcha
,
httpSession
.
getId
()
);
httpSession
.
setAttribute
(
CAPTCHA
,
captcha
);
httpSession
.
setAttribute
(
CAPTCHA
,
captcha
);
}
}
...
...
src/main/java/org/b3log/solo/processor/CategoryProcessor.java
View file @
83955412
...
@@ -17,6 +17,7 @@ package org.b3log.solo.processor;
...
@@ -17,6 +17,7 @@ package org.b3log.solo.processor;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.Pagination
;
import
org.b3log.latke.model.Pagination
;
...
@@ -40,7 +41,6 @@ import org.b3log.solo.util.Skins;
...
@@ -40,7 +41,6 @@ import org.b3log.solo.util.Skins;
import
org.json.JSONException
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.io.IOException
;
...
...
src/main/java/org/b3log/solo/processor/CommentProcessor.java
View file @
83955412
...
@@ -18,6 +18,7 @@ package org.b3log.solo.processor;
...
@@ -18,6 +18,7 @@ package org.b3log.solo.processor;
import
freemarker.template.Template
;
import
freemarker.template.Template
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.User
;
import
org.b3log.latke.model.User
;
...
@@ -37,7 +38,6 @@ import org.b3log.solo.service.UserQueryService;
...
@@ -37,7 +38,6 @@ import org.b3log.solo.service.UserQueryService;
import
org.b3log.solo.util.Skins
;
import
org.b3log.solo.util.Skins
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.inject.Inject
;
import
javax.servlet.ServletException
;
import
javax.servlet.ServletException
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpServletResponse
;
...
...
src/main/java/org/b3log/solo/processor/ErrorProcessor.java
View file @
83955412
...
@@ -15,12 +15,8 @@
...
@@ -15,12 +15,8 @@
*/
*/
package
org
.
b3log
.
solo
.
processor
;
package
org
.
b3log
.
solo
.
processor
;
import
java.io.IOException
;
import
java.util.Map
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.service.LangPropsService
;
import
org.b3log.latke.service.LangPropsService
;
...
@@ -37,6 +33,11 @@ import org.b3log.solo.processor.util.Filler;
...
@@ -37,6 +33,11 @@ import org.b3log.solo.processor.util.Filler;
import
org.b3log.solo.service.PreferenceQueryService
;
import
org.b3log.solo.service.PreferenceQueryService
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.util.Map
;
/**
/**
* Error processor.
* Error processor.
*
*
...
@@ -90,7 +91,7 @@ public class ErrorProcessor {
...
@@ -90,7 +91,7 @@ public class ErrorProcessor {
String
templateName
=
StringUtils
.
substringAfterLast
(
requestURI
,
"/"
);
String
templateName
=
StringUtils
.
substringAfterLast
(
requestURI
,
"/"
);
templateName
=
StringUtils
.
substringBefore
(
templateName
,
"."
)
+
".ftl"
;
templateName
=
StringUtils
.
substringBefore
(
templateName
,
"."
)
+
".ftl"
;
LOGGER
.
log
(
Level
.
DEBUG
,
"Shows error page[requestURI={0}, templateName={1}]"
,
new
Object
[]{
requestURI
,
templateName
}
);
LOGGER
.
log
(
Level
.
DEBUG
,
"Shows error page[requestURI={0}, templateName={1}]"
,
requestURI
,
templateName
);
final
ConsoleRenderer
renderer
=
new
ConsoleRenderer
();
final
ConsoleRenderer
renderer
=
new
ConsoleRenderer
();
...
...
src/main/java/org/b3log/solo/processor/FeedProcessor.java
View file @
83955412
...
@@ -15,26 +15,14 @@
...
@@ -15,26 +15,14 @@
*/
*/
package
org
.
b3log
.
solo
.
processor
;
package
org
.
b3log
.
solo
.
processor
;
import
java.io.IOException
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.apache.commons.lang.StringEscapeUtils
;
import
org.apache.commons.lang.StringEscapeUtils
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.User
;
import
org.b3log.latke.model.User
;
import
org.b3log.latke.repository.CompositeFilter
;
import
org.b3log.latke.repository.*
;
import
org.b3log.latke.repository.CompositeFilterOperator
;
import
org.b3log.latke.repository.Filter
;
import
org.b3log.latke.repository.FilterOperator
;
import
org.b3log.latke.repository.PropertyFilter
;
import
org.b3log.latke.repository.Query
;
import
org.b3log.latke.repository.SortDirection
;
import
org.b3log.latke.servlet.HTTPRequestContext
;
import
org.b3log.latke.servlet.HTTPRequestContext
;
import
org.b3log.latke.servlet.HTTPRequestMethod
;
import
org.b3log.latke.servlet.HTTPRequestMethod
;
import
org.b3log.latke.servlet.annotation.RequestProcessing
;
import
org.b3log.latke.servlet.annotation.RequestProcessing
;
...
@@ -61,6 +49,13 @@ import org.b3log.solo.service.UserQueryService;
...
@@ -61,6 +49,13 @@ import org.b3log.solo.service.UserQueryService;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
/**
/**
* Feed (Atom/RSS) processor.
* Feed (Atom/RSS) processor.
*
*
...
...
src/main/java/org/b3log/solo/processor/IndexProcessor.java
View file @
83955412
...
@@ -16,16 +16,9 @@
...
@@ -16,16 +16,9 @@
package
org
.
b3log
.
solo
.
processor
;
package
org
.
b3log
.
solo
.
processor
;
import
freemarker.template.Template
;
import
freemarker.template.Template
;
import
java.io.IOException
;
import
java.io.PrintWriter
;
import
java.io.StringWriter
;
import
java.util.Map
;
import
javax.inject.Inject
;
import
javax.servlet.http.Cookie
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.Pagination
;
import
org.b3log.latke.model.Pagination
;
...
@@ -52,6 +45,14 @@ import org.b3log.solo.service.StatisticMgmtService;
...
@@ -52,6 +45,14 @@ import org.b3log.solo.service.StatisticMgmtService;
import
org.b3log.solo.util.Skins
;
import
org.b3log.solo.util.Skins
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.Cookie
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.io.PrintWriter
;
import
java.io.StringWriter
;
import
java.util.Map
;
/**
/**
* Index processor.
* Index processor.
*
*
...
...
src/main/java/org/b3log/solo/processor/InitProcessor.java
View file @
83955412
...
@@ -15,14 +15,9 @@
...
@@ -15,14 +15,9 @@
*/
*/
package
org
.
b3log
.
solo
.
processor
;
package
org
.
b3log
.
solo
.
processor
;
import
java.util.Calendar
;
import
java.util.Locale
;
import
java.util.Map
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.Role
;
import
org.b3log.latke.model.Role
;
...
@@ -48,6 +43,12 @@ import org.b3log.solo.util.QueryResults;
...
@@ -48,6 +43,12 @@ import org.b3log.solo.util.QueryResults;
import
org.b3log.solo.util.Thumbnails
;
import
org.b3log.solo.util.Thumbnails
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.util.Calendar
;
import
java.util.Locale
;
import
java.util.Map
;
/**
/**
* Solo initialization service.
* Solo initialization service.
*
*
...
...
src/main/java/org/b3log/solo/processor/LoginProcessor.java
View file @
83955412
...
@@ -18,6 +18,7 @@ package org.b3log.solo.processor;
...
@@ -18,6 +18,7 @@ package org.b3log.solo.processor;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.mail.MailService
;
import
org.b3log.latke.mail.MailService
;
...
@@ -51,7 +52,6 @@ import org.b3log.solo.util.Randoms;
...
@@ -51,7 +52,6 @@ import org.b3log.solo.util.Randoms;
import
org.json.JSONException
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.io.IOException
;
...
@@ -367,7 +367,7 @@ public class LoginProcessor {
...
@@ -367,7 +367,7 @@ public class LoginProcessor {
user
.
put
(
User
.
USER_PASSWORD
,
newPwd
);
user
.
put
(
User
.
USER_PASSWORD
,
newPwd
);
userMgmtService
.
updateUser
(
user
);
userMgmtService
.
updateUser
(
user
);
LOGGER
.
log
(
Level
.
DEBUG
,
"[{0}]'s password updated successfully."
,
new
Object
[]
{
userEmail
}
);
LOGGER
.
log
(
Level
.
DEBUG
,
"[{0}]'s password updated successfully."
,
userEmail
);
jsonObject
.
put
(
"succeed"
,
true
);
jsonObject
.
put
(
"succeed"
,
true
);
jsonObject
.
put
(
"to"
,
Latkes
.
getServePath
()
+
"/login?from=reset"
);
jsonObject
.
put
(
"to"
,
Latkes
.
getServePath
()
+
"/login?from=reset"
);
...
@@ -428,7 +428,7 @@ public class LoginProcessor {
...
@@ -428,7 +428,7 @@ public class LoginProcessor {
jsonObject
.
put
(
"to"
,
Latkes
.
getServePath
()
+
"/login?from=forgot"
);
jsonObject
.
put
(
"to"
,
Latkes
.
getServePath
()
+
"/login?from=forgot"
);
jsonObject
.
put
(
Keys
.
MSG
,
langPropsService
.
get
(
"resetPwdSuccessSend"
));
jsonObject
.
put
(
Keys
.
MSG
,
langPropsService
.
get
(
"resetPwdSuccessSend"
));
LOGGER
.
log
(
Level
.
DEBUG
,
"Sent a mail[mailSubject={0}, mailBody=[{1}] to [{2}]"
,
new
Object
[]
{
mailSubject
,
mailBody
,
userEmail
}
);
LOGGER
.
log
(
Level
.
DEBUG
,
"Sent a mail[mailSubject={0}, mailBody=[{1}] to [{2}]"
,
mailSubject
,
mailBody
,
userEmail
);
}
}
/**
/**
...
...
src/main/java/org/b3log/solo/processor/PageProcessor.java
View file @
83955412
...
@@ -15,14 +15,8 @@
...
@@ -15,14 +15,8 @@
*/
*/
package
org
.
b3log
.
solo
.
processor
;
package
org
.
b3log
.
solo
.
processor
;
import
java.io.IOException
;
import
java.util.List
;
import
java.util.Map
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.
Latkes
;
import
org.b3log.latke.
ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.service.LangPropsService
;
import
org.b3log.latke.service.LangPropsService
;
...
@@ -45,6 +39,12 @@ import org.b3log.solo.util.Markdowns;
...
@@ -45,6 +39,12 @@ import org.b3log.solo.util.Markdowns;
import
org.b3log.solo.util.Skins
;
import
org.b3log.solo.util.Skins
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.util.List
;
import
java.util.Map
;
/**
/**
* Page processor.
* Page processor.
*
*
...
...
src/main/java/org/b3log/solo/processor/RepairProcessor.java
View file @
83955412
...
@@ -15,22 +15,19 @@
...
@@ -15,22 +15,19 @@
*/
*/
package
org
.
b3log
.
solo
.
processor
;
package
org
.
b3log
.
solo
.
processor
;
import
java.io.IOException
;
import
java.util.List
;
import
java.util.Set
;
import
java.util.concurrent.ExecutionException
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.ioc.LatkeBeanManager
;
import
org.b3log.latke.ioc.LatkeBeanManager
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.mail.MailService
;
import
org.b3log.latke.mail.MailService
;
import
org.b3log.latke.mail.MailService.Message
;
import
org.b3log.latke.mail.MailService.Message
;
import
org.b3log.latke.mail.MailServiceFactory
;
import
org.b3log.latke.mail.MailServiceFactory
;
import
org.b3log.latke.repository.*
;
import
org.b3log.latke.repository.Query
;
import
org.b3log.latke.repository.Repositories
;
import
org.b3log.latke.repository.Repository
;
import
org.b3log.latke.repository.Transaction
;
import
org.b3log.latke.repository.annotation.Transactional
;
import
org.b3log.latke.repository.annotation.Transactional
;
import
org.b3log.latke.servlet.HTTPRequestContext
;
import
org.b3log.latke.servlet.HTTPRequestContext
;
import
org.b3log.latke.servlet.HTTPRequestMethod
;
import
org.b3log.latke.servlet.HTTPRequestMethod
;
...
@@ -38,22 +35,14 @@ import org.b3log.latke.servlet.annotation.RequestProcessing;
...
@@ -38,22 +35,14 @@ import org.b3log.latke.servlet.annotation.RequestProcessing;
import
org.b3log.latke.servlet.annotation.RequestProcessor
;
import
org.b3log.latke.servlet.annotation.RequestProcessor
;
import
org.b3log.latke.servlet.renderer.TextHTMLRenderer
;
import
org.b3log.latke.servlet.renderer.TextHTMLRenderer
;
import
org.b3log.latke.util.CollectionUtils
;
import
org.b3log.latke.util.CollectionUtils
;
import
org.b3log.solo.model.*
;
import
org.b3log.solo.model.Article
;
import
org.b3log.solo.model.Option
;
import
org.b3log.solo.model.Statistic
;
import
org.b3log.solo.model.Tag
;
import
org.b3log.solo.repository.ArticleRepository
;
import
org.b3log.solo.repository.ArticleRepository
;
import
org.b3log.solo.repository.TagArticleRepository
;
import
org.b3log.solo.repository.TagArticleRepository
;
import
org.b3log.solo.repository.TagRepository
;
import
org.b3log.solo.repository.TagRepository
;
import
org.b3log.solo.repository.impl.ArchiveDateArticleRepositoryImpl
;
import
org.b3log.solo.repository.impl.*
;
import
org.b3log.solo.repository.impl.ArchiveDateRepositoryImpl
;
import
org.b3log.solo.repository.impl.ArticleRepositoryImpl
;
import
org.b3log.solo.repository.impl.CommentRepositoryImpl
;
import
org.b3log.solo.repository.impl.LinkRepositoryImpl
;
import
org.b3log.solo.repository.impl.OptionRepositoryImpl
;
import
org.b3log.solo.repository.impl.PageRepositoryImpl
;
import
org.b3log.solo.repository.impl.PluginRepositoryImpl
;
import
org.b3log.solo.repository.impl.StatisticRepositoryImpl
;
import
org.b3log.solo.repository.impl.TagArticleRepositoryImpl
;
import
org.b3log.solo.repository.impl.TagRepositoryImpl
;
import
org.b3log.solo.repository.impl.UserRepositoryImpl
;
import
org.b3log.solo.service.PreferenceMgmtService
;
import
org.b3log.solo.service.PreferenceMgmtService
;
import
org.b3log.solo.service.PreferenceQueryService
;
import
org.b3log.solo.service.PreferenceQueryService
;
import
org.b3log.solo.service.StatisticMgmtService
;
import
org.b3log.solo.service.StatisticMgmtService
;
...
@@ -61,6 +50,13 @@ import org.b3log.solo.service.StatisticQueryService;
...
@@ -61,6 +50,13 @@ import org.b3log.solo.service.StatisticQueryService;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.util.List
;
import
java.util.Set
;
import
java.util.concurrent.ExecutionException
;
/**
/**
* Provides patches on some special issues.
* Provides patches on some special issues.
*
*
...
@@ -163,7 +159,7 @@ public class RepairProcessor {
...
@@ -163,7 +159,7 @@ public class RepairProcessor {
final
JSONObject
article
=
articles
.
getJSONObject
(
i
);
final
JSONObject
article
=
articles
.
getJSONObject
(
i
);
final
JSONArray
names
=
article
.
names
();
final
JSONArray
names
=
article
.
names
();
final
Set
<
String
>
nameSet
=
CollectionUtils
.
<
String
>
jsonArrayToSet
(
names
);
final
Set
<
String
>
nameSet
=
CollectionUtils
.
jsonArrayToSet
(
names
);
if
(
nameSet
.
removeAll
(
keyNames
))
{
if
(
nameSet
.
removeAll
(
keyNames
))
{
for
(
final
String
unusedName
:
nameSet
)
{
for
(
final
String
unusedName
:
nameSet
)
{
...
@@ -172,7 +168,7 @@ public class RepairProcessor {
...
@@ -172,7 +168,7 @@ public class RepairProcessor {
articleRepository
.
update
(
article
.
getString
(
Keys
.
OBJECT_ID
),
article
);
articleRepository
.
update
(
article
.
getString
(
Keys
.
OBJECT_ID
),
article
);
LOGGER
.
log
(
Level
.
INFO
,
"Found an article[id={0}] exists unused properties[{1}]"
,
LOGGER
.
log
(
Level
.
INFO
,
"Found an article[id={0}] exists unused properties[{1}]"
,
new
Object
[]{
article
.
getString
(
Keys
.
OBJECT_ID
),
nameSet
}
);
article
.
getString
(
Keys
.
OBJECT_ID
),
nameSet
);
}
}
}
}
...
@@ -315,7 +311,7 @@ public class RepairProcessor {
...
@@ -315,7 +311,7 @@ public class RepairProcessor {
tagRepository
.
update
(
tagId
,
tag
);
tagRepository
.
update
(
tagId
,
tag
);
LOGGER
.
log
(
Level
.
INFO
,
"Repaired tag[title={0}, refCnt={1}, publishedTagRefCnt={2}]"
,
LOGGER
.
log
(
Level
.
INFO
,
"Repaired tag[title={0}, refCnt={1}, publishedTagRefCnt={2}]"
,
new
Object
[]{
tag
.
getString
(
Tag
.
TAG_TITLE
),
tagRefCnt
,
publishedTagRefCnt
}
);
tag
.
getString
(
Tag
.
TAG_TITLE
),
tagRefCnt
,
publishedTagRefCnt
);
}
}
renderer
.
setContent
(
"Repair sucessfully!"
);
renderer
.
setContent
(
"Repair sucessfully!"
);
...
...
src/main/java/org/b3log/solo/processor/SitemapProcessor.java
View file @
83955412
...
@@ -16,14 +16,10 @@
...
@@ -16,14 +16,10 @@
package
org
.
b3log
.
solo
.
processor
;
package
org
.
b3log
.
solo
.
processor
;
import
java.io.IOException
;
import
java.net.URLEncoder
;
import
java.util.Date
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletResponse
;
import
org.apache.commons.lang.time.DateFormatUtils
;
import
org.apache.commons.lang.time.DateFormatUtils
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.repository.FilterOperator
;
import
org.b3log.latke.repository.FilterOperator
;
...
@@ -49,6 +45,11 @@ import org.b3log.solo.service.PreferenceQueryService;
...
@@ -49,6 +45,11 @@ import org.b3log.solo.service.PreferenceQueryService;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.net.URLEncoder
;
import
java.util.Date
;
/**
/**
* Site map (sitemap) processor.
* Site map (sitemap) processor.
...
...
src/main/java/org/b3log/solo/processor/StatProcessor.java
View file @
83955412
...
@@ -16,7 +16,7 @@
...
@@ -16,7 +16,7 @@
package
org
.
b3log
.
solo
.
processor
;
package
org
.
b3log
.
solo
.
processor
;
import
javax
.inject.Inject
;
import
org.b3log.latke.ioc
.inject.Inject
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.servlet.HTTPRequestContext
;
import
org.b3log.latke.servlet.HTTPRequestContext
;
import
org.b3log.latke.servlet.HTTPRequestMethod
;
import
org.b3log.latke.servlet.HTTPRequestMethod
;
...
@@ -64,6 +64,6 @@ public class StatProcessor {
...
@@ -64,6 +64,6 @@ public class StatProcessor {
public
void
onlineVisitorCountRefresher
(
final
HTTPRequestContext
context
)
{
public
void
onlineVisitorCountRefresher
(
final
HTTPRequestContext
context
)
{
context
.
setRenderer
(
new
DoNothingRenderer
());
context
.
setRenderer
(
new
DoNothingRenderer
());
s
tatisticMgmtService
.
removeExpiredOnlineVisitor
();
S
tatisticMgmtService
.
removeExpiredOnlineVisitor
();
}
}
}
}
src/main/java/org/b3log/solo/processor/TagProcessor.java
View file @
83955412
...
@@ -15,17 +15,9 @@
...
@@ -15,17 +15,9 @@
*/
*/
package
org
.
b3log
.
solo
.
processor
;
package
org
.
b3log
.
solo
.
processor
;
import
java.io.IOException
;
import
java.net.URLDecoder
;
import
java.net.URLEncoder
;
import
java.util.Collections
;
import
java.util.List
;
import
java.util.Map
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.Pagination
;
import
org.b3log.latke.model.Pagination
;
...
@@ -45,16 +37,21 @@ import org.b3log.solo.model.Common;
...
@@ -45,16 +37,21 @@ import org.b3log.solo.model.Common;
import
org.b3log.solo.model.Option
;
import
org.b3log.solo.model.Option
;
import
org.b3log.solo.model.Tag
;
import
org.b3log.solo.model.Tag
;
import
org.b3log.solo.processor.util.Filler
;
import
org.b3log.solo.processor.util.Filler
;
import
org.b3log.solo.service.ArticleQueryService
;
import
org.b3log.solo.service.*
;
import
org.b3log.solo.service.PreferenceQueryService
;
import
org.b3log.solo.service.StatisticMgmtService
;
import
org.b3log.solo.service.TagQueryService
;
import
org.b3log.solo.service.UserQueryService
;
import
org.b3log.solo.util.Skins
;
import
org.b3log.solo.util.Skins
;
import
org.b3log.solo.util.comparator.Comparators
;
import
org.b3log.solo.util.comparator.Comparators
;
import
org.json.JSONException
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.net.URLDecoder
;
import
java.net.URLEncoder
;
import
java.util.Collections
;
import
java.util.List
;
import
java.util.Map
;
/**
/**
* Tag processor.
* Tag processor.
*
*
...
@@ -145,7 +142,7 @@ public class TagProcessor {
...
@@ -145,7 +142,7 @@ public class TagProcessor {
return
;
return
;
}
}
LOGGER
.
log
(
Level
.
DEBUG
,
"Tag[title={0}, currentPageNum={1}]"
,
new
Object
[]{
tagTitle
,
currentPageNum
}
);
LOGGER
.
log
(
Level
.
DEBUG
,
"Tag[title={0}, currentPageNum={1}]"
,
tagTitle
,
currentPageNum
);
tagTitle
=
URLDecoder
.
decode
(
tagTitle
,
"UTF-8"
);
tagTitle
=
URLDecoder
.
decode
(
tagTitle
,
"UTF-8"
);
final
JSONObject
result
=
tagQueryService
.
getTagByTitle
(
tagTitle
);
final
JSONObject
result
=
tagQueryService
.
getTagByTitle
(
tagTitle
);
...
@@ -191,7 +188,7 @@ public class TagProcessor {
...
@@ -191,7 +188,7 @@ public class TagProcessor {
final
int
pageCount
=
(
int
)
Math
.
ceil
((
double
)
tagArticleCount
/
(
double
)
pageSize
);
final
int
pageCount
=
(
int
)
Math
.
ceil
((
double
)
tagArticleCount
/
(
double
)
pageSize
);
LOGGER
.
log
(
Level
.
TRACE
,
"Paginate tag-articles[currentPageNum={0}, pageSize={1}, pageCount={2}, windowSize={3}]"
,
LOGGER
.
log
(
Level
.
TRACE
,
"Paginate tag-articles[currentPageNum={0}, pageSize={1}, pageCount={2}, windowSize={3}]"
,
new
Object
[]{
currentPageNum
,
pageSize
,
pageCount
,
windowSize
}
);
currentPageNum
,
pageSize
,
pageCount
,
windowSize
);
final
List
<
Integer
>
pageNums
=
Paginator
.
paginate
(
currentPageNum
,
pageSize
,
pageCount
,
windowSize
);
final
List
<
Integer
>
pageNums
=
Paginator
.
paginate
(
currentPageNum
,
pageSize
,
pageCount
,
windowSize
);
LOGGER
.
log
(
Level
.
TRACE
,
"tag-articles[pageNums={0}]"
,
pageNums
);
LOGGER
.
log
(
Level
.
TRACE
,
"tag-articles[pageNums={0}]"
,
pageNums
);
...
...
src/main/java/org/b3log/solo/processor/UserTemplateProcessor.java
View file @
83955412
...
@@ -17,13 +17,9 @@ package org.b3log.solo.processor;
...
@@ -17,13 +17,9 @@ package org.b3log.solo.processor;
import
freemarker.template.Template
;
import
freemarker.template.Template
;
import
java.io.IOException
;
import
java.util.Map
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.service.LangPropsService
;
import
org.b3log.latke.service.LangPropsService
;
...
@@ -42,6 +38,11 @@ import org.b3log.solo.service.StatisticMgmtService;
...
@@ -42,6 +38,11 @@ import org.b3log.solo.service.StatisticMgmtService;
import
org.b3log.solo.util.Skins
;
import
org.b3log.solo.util.Skins
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.util.Map
;
/**
/**
* User template processor.
* User template processor.
...
@@ -105,7 +106,7 @@ public class UserTemplateProcessor {
...
@@ -105,7 +106,7 @@ public class UserTemplateProcessor {
String
templateName
=
StringUtils
.
substringAfterLast
(
requestURI
,
"/"
);
String
templateName
=
StringUtils
.
substringAfterLast
(
requestURI
,
"/"
);
templateName
=
StringUtils
.
substringBefore
(
templateName
,
"."
)
+
".ftl"
;
templateName
=
StringUtils
.
substringBefore
(
templateName
,
"."
)
+
".ftl"
;
LOGGER
.
log
(
Level
.
DEBUG
,
"Shows page[requestURI={0}, templateName={1}]"
,
new
Object
[]
{
requestURI
,
templateName
}
);
LOGGER
.
log
(
Level
.
DEBUG
,
"Shows page[requestURI={0}, templateName={1}]"
,
requestURI
,
templateName
);
final
AbstractFreeMarkerRenderer
renderer
=
new
FreeMarkerRenderer
();
final
AbstractFreeMarkerRenderer
renderer
=
new
FreeMarkerRenderer
();
...
...
src/main/java/org/b3log/solo/processor/console/AdminConsole.java
View file @
83955412
...
@@ -25,6 +25,7 @@ import org.b3log.latke.RuntimeDatabase;
...
@@ -25,6 +25,7 @@ import org.b3log.latke.RuntimeDatabase;
import
org.b3log.latke.event.Event
;
import
org.b3log.latke.event.Event
;
import
org.b3log.latke.event.EventException
;
import
org.b3log.latke.event.EventException
;
import
org.b3log.latke.event.EventManager
;
import
org.b3log.latke.event.EventManager
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.Plugin
;
import
org.b3log.latke.model.Plugin
;
...
@@ -52,7 +53,6 @@ import org.b3log.solo.service.UserQueryService;
...
@@ -52,7 +53,6 @@ import org.b3log.solo.service.UserQueryService;
import
org.b3log.solo.util.Thumbnails
;
import
org.b3log.solo.util.Thumbnails
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.inject.Inject
;
import
javax.servlet.ServletOutputStream
;
import
javax.servlet.ServletOutputStream
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpServletResponse
;
...
...
src/main/java/org/b3log/solo/processor/console/ArticleConsole.java
View file @
83955412
...
@@ -15,12 +15,10 @@
...
@@ -15,12 +15,10 @@
*/
*/
package
org
.
b3log
.
solo
.
processor
.
console
;
package
org
.
b3log
.
solo
.
processor
.
console
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.User
;
import
org.b3log.latke.model.User
;
...
@@ -43,6 +41,9 @@ import org.b3log.solo.util.QueryResults;
...
@@ -43,6 +41,9 @@ import org.b3log.solo.util.QueryResults;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
/**
/**
* Article console request processing.
* Article console request processing.
*
*
...
@@ -261,7 +262,7 @@ public class ArticleConsole {
...
@@ -261,7 +262,7 @@ public class ArticleConsole {
path
=
path
.
substring
((
status
+
"/"
).
length
());
path
=
path
.
substring
((
status
+
"/"
).
length
());
final
boolean
published
=
"published"
.
equals
(
status
)
?
true
:
false
;
final
boolean
published
=
"published"
.
equals
(
status
);
final
JSONObject
requestJSONObject
=
Requests
.
buildPaginationRequest
(
path
);
final
JSONObject
requestJSONObject
=
Requests
.
buildPaginationRequest
(
path
);
...
...
src/main/java/org/b3log/solo/processor/console/CategoryConsole.java
View file @
83955412
...
@@ -18,6 +18,7 @@ package org.b3log.solo.processor.console;
...
@@ -18,6 +18,7 @@ package org.b3log.solo.processor.console;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.service.LangPropsService
;
import
org.b3log.latke.service.LangPropsService
;
...
@@ -38,7 +39,6 @@ import org.b3log.solo.service.UserQueryService;
...
@@ -38,7 +39,6 @@ import org.b3log.solo.service.UserQueryService;
import
org.b3log.solo.util.QueryResults
;
import
org.b3log.solo.util.QueryResults
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpServletResponse
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
...
...
src/main/java/org/b3log/solo/processor/console/CommentConsole.java
View file @
83955412
...
@@ -16,12 +16,9 @@
...
@@ -16,12 +16,9 @@
package
org
.
b3log
.
solo
.
processor
.
console
;
package
org
.
b3log
.
solo
.
processor
.
console
;
import
java.util.List
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.service.LangPropsService
;
import
org.b3log.latke.service.LangPropsService
;
...
@@ -38,6 +35,10 @@ import org.b3log.solo.service.UserQueryService;
...
@@ -38,6 +35,10 @@ import org.b3log.solo.service.UserQueryService;
import
org.b3log.solo.util.QueryResults
;
import
org.b3log.solo.util.QueryResults
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.util.List
;
/**
/**
* Comment console request processing.
* Comment console request processing.
...
...
src/main/java/org/b3log/solo/processor/console/LinkConsole.java
View file @
83955412
...
@@ -16,11 +16,9 @@
...
@@ -16,11 +16,9 @@
package
org
.
b3log
.
solo
.
processor
.
console
;
package
org
.
b3log
.
solo
.
processor
.
console
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.service.LangPropsService
;
import
org.b3log.latke.service.LangPropsService
;
...
@@ -29,14 +27,17 @@ import org.b3log.latke.servlet.HTTPRequestMethod;
...
@@ -29,14 +27,17 @@ import org.b3log.latke.servlet.HTTPRequestMethod;
import
org.b3log.latke.servlet.annotation.RequestProcessing
;
import
org.b3log.latke.servlet.annotation.RequestProcessing
;
import
org.b3log.latke.servlet.annotation.RequestProcessor
;
import
org.b3log.latke.servlet.annotation.RequestProcessor
;
import
org.b3log.latke.servlet.renderer.JSONRenderer
;
import
org.b3log.latke.servlet.renderer.JSONRenderer
;
import
org.b3log.latke.util.Requests
;
import
org.b3log.solo.model.Common
;
import
org.b3log.solo.model.Common
;
import
org.b3log.solo.service.LinkMgmtService
;
import
org.b3log.solo.service.LinkMgmtService
;
import
org.b3log.solo.service.LinkQueryService
;
import
org.b3log.solo.service.LinkQueryService
;
import
org.b3log.solo.util.QueryResults
;
import
org.b3log.latke.util.Requests
;
import
org.b3log.solo.service.UserQueryService
;
import
org.b3log.solo.service.UserQueryService
;
import
org.b3log.solo.util.QueryResults
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
/**
/**
* Link console request processing.
* Link console request processing.
...
...
src/main/java/org/b3log/solo/processor/console/PageConsole.java
View file @
83955412
...
@@ -16,11 +16,9 @@
...
@@ -16,11 +16,9 @@
package
org
.
b3log
.
solo
.
processor
.
console
;
package
org
.
b3log
.
solo
.
processor
.
console
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.service.LangPropsService
;
import
org.b3log.latke.service.LangPropsService
;
...
@@ -40,6 +38,9 @@ import org.b3log.solo.util.QueryResults;
...
@@ -40,6 +38,9 @@ import org.b3log.solo.util.QueryResults;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
/**
/**
* Plugin console request processing.
* Plugin console request processing.
...
...
src/main/java/org/b3log/solo/processor/console/PluginConsole.java
View file @
83955412
...
@@ -16,12 +16,9 @@
...
@@ -16,12 +16,9 @@
package
org
.
b3log
.
solo
.
processor
.
console
;
package
org
.
b3log
.
solo
.
processor
.
console
;
import
java.util.Map
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.Plugin
;
import
org.b3log.latke.model.Plugin
;
...
@@ -40,6 +37,10 @@ import org.b3log.solo.service.PluginQueryService;
...
@@ -40,6 +37,10 @@ import org.b3log.solo.service.PluginQueryService;
import
org.b3log.solo.util.QueryResults
;
import
org.b3log.solo.util.QueryResults
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.util.Map
;
/**
/**
* Plugin console request processing.
* Plugin console request processing.
...
...
src/main/java/org/b3log/solo/processor/console/PreferenceConsole.java
View file @
83955412
...
@@ -15,12 +15,9 @@
...
@@ -15,12 +15,9 @@
*/
*/
package
org
.
b3log
.
solo
.
processor
.
console
;
package
org
.
b3log
.
solo
.
processor
.
console
;
import
javax.inject.Inject
;
import
javax.servlet.http.Cookie
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.service.LangPropsService
;
import
org.b3log.latke.service.LangPropsService
;
...
@@ -34,15 +31,15 @@ import org.b3log.latke.util.Requests;
...
@@ -34,15 +31,15 @@ import org.b3log.latke.util.Requests;
import
org.b3log.solo.model.Option
;
import
org.b3log.solo.model.Option
;
import
org.b3log.solo.model.Sign
;
import
org.b3log.solo.model.Sign
;
import
org.b3log.solo.model.Skin
;
import
org.b3log.solo.model.Skin
;
import
org.b3log.solo.service.OptionMgmtService
;
import
org.b3log.solo.service.*
;
import
org.b3log.solo.service.OptionQueryService
;
import
org.b3log.solo.service.PreferenceMgmtService
;
import
org.b3log.solo.service.PreferenceQueryService
;
import
org.b3log.solo.service.UserQueryService
;
import
org.b3log.solo.util.QueryResults
;
import
org.b3log.solo.util.QueryResults
;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.Cookie
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
/**
/**
* Preference console request processing.
* Preference console request processing.
*
*
...
...
src/main/java/org/b3log/solo/processor/console/TagConsole.java
View file @
83955412
...
@@ -16,13 +16,8 @@
...
@@ -16,13 +16,8 @@
package
org
.
b3log
.
solo
.
processor
.
console
;
package
org
.
b3log
.
solo
.
processor
.
console
;
import
java.io.IOException
;
import
java.util.ArrayList
;
import
java.util.List
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.service.LangPropsService
;
import
org.b3log.latke.service.LangPropsService
;
...
@@ -38,6 +33,12 @@ import org.b3log.solo.service.TagQueryService;
...
@@ -38,6 +33,12 @@ import org.b3log.solo.service.TagQueryService;
import
org.b3log.solo.service.UserQueryService
;
import
org.b3log.solo.service.UserQueryService
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
/**
* Tag console request processing.
* Tag console request processing.
...
...
src/main/java/org/b3log/solo/processor/console/UserConsole.java
View file @
83955412
...
@@ -17,6 +17,7 @@ package org.b3log.solo.processor.console;
...
@@ -17,6 +17,7 @@ package org.b3log.solo.processor.console;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.Role
;
import
org.b3log.latke.model.Role
;
...
@@ -36,7 +37,6 @@ import org.b3log.solo.service.UserQueryService;
...
@@ -36,7 +37,6 @@ import org.b3log.solo.service.UserQueryService;
import
org.b3log.solo.util.QueryResults
;
import
org.b3log.solo.util.QueryResults
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpServletResponse
;
...
...
src/main/java/org/b3log/solo/processor/console/common/ProcessAuthAdvice.java
View file @
83955412
...
@@ -15,22 +15,20 @@
...
@@ -15,22 +15,20 @@
*/
*/
package
org
.
b3log
.
solo
.
processor
.
console
.
common
;
package
org
.
b3log
.
solo
.
processor
.
console
.
common
;
import
java.io.IOException
;
import
java.util.Map
;
import
javax.inject.Named
;
import
javax.inject.Singleton
;
import
javax.servlet.http.HttpServletResponse
;
import
org.b3log.latke.ioc.LatkeBeanManager
;
import
org.b3log.latke.ioc.LatkeBeanManager
;
import
org.b3log.latke.ioc.Lifecycle
;
import
org.b3log.latke.ioc.Lifecycle
;
import
org.b3log.latke.ioc.inject.Named
;
import
org.b3log.latke.ioc.inject.Singleton
;
import
org.b3log.latke.servlet.HTTPRequestContext
;
import
org.b3log.latke.servlet.HTTPRequestContext
;
import
org.b3log.latke.servlet.advice.BeforeRequestProcessAdvice
;
import
org.b3log.latke.servlet.advice.BeforeRequestProcessAdvice
;
import
org.b3log.latke.servlet.advice.RequestProcessAdviceException
;
import
org.b3log.latke.servlet.advice.RequestProcessAdviceException
;
import
org.b3log.latke.servlet.advice.RequestReturnAdviceException
;
import
org.b3log.latke.servlet.advice.RequestReturnAdviceException
;
import
org.b3log.solo.service.UserQueryService
;
import
org.b3log.solo.service.UserQueryService
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.util.Map
;
/**
/**
* The common auth check before advice for admin console.
* The common auth check before advice for admin console.
...
...
src/main/java/org/b3log/solo/processor/renderer/ConsoleRenderer.java
View file @
83955412
...
@@ -18,13 +18,14 @@ package org.b3log.solo.processor.renderer;
...
@@ -18,13 +18,14 @@ package org.b3log.solo.processor.renderer;
import
freemarker.template.Configuration
;
import
freemarker.template.Configuration
;
import
freemarker.template.Template
;
import
freemarker.template.Template
;
import
freemarker.template.TemplateExceptionHandler
;
import
freemarker.template.TemplateExceptionHandler
;
import
java.io.IOException
;
import
javax.servlet.ServletContext
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.servlet.HTTPRequestContext
;
import
org.b3log.latke.servlet.HTTPRequestContext
;
import
org.b3log.latke.servlet.renderer.freemarker.AbstractFreeMarkerRenderer
;
import
org.b3log.latke.servlet.renderer.freemarker.AbstractFreeMarkerRenderer
;
import
org.b3log.solo.SoloServletListener
;
import
org.b3log.solo.SoloServletListener
;
import
javax.servlet.ServletContext
;
import
java.io.IOException
;
/**
/**
* <a href="http://freemarker.org">FreeMarker</a> HTTP response renderer for administrator console and initialization
* <a href="http://freemarker.org">FreeMarker</a> HTTP response renderer for administrator console and initialization
* rendering.
* rendering.
...
...
src/main/java/org/b3log/solo/processor/util/FillTagArticles.java
View file @
83955412
...
@@ -19,6 +19,7 @@ package org.b3log.solo.processor.util;
...
@@ -19,6 +19,7 @@ package org.b3log.solo.processor.util;
import
freemarker.template.TemplateMethodModel
;
import
freemarker.template.TemplateMethodModel
;
import
freemarker.template.TemplateModelException
;
import
freemarker.template.TemplateModelException
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.service.ServiceException
;
import
org.b3log.latke.service.ServiceException
;
import
org.b3log.latke.service.annotation.Service
;
import
org.b3log.latke.service.annotation.Service
;
...
@@ -28,7 +29,6 @@ import org.b3log.solo.service.TagQueryService;
...
@@ -28,7 +29,6 @@ import org.b3log.solo.service.TagQueryService;
import
org.json.JSONException
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.inject.Inject
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
...
...
src/main/java/org/b3log/solo/processor/util/Filler.java
View file @
83955412
...
@@ -22,6 +22,7 @@ import org.b3log.latke.Latkes;
...
@@ -22,6 +22,7 @@ import org.b3log.latke.Latkes;
import
org.b3log.latke.event.Event
;
import
org.b3log.latke.event.Event
;
import
org.b3log.latke.event.EventException
;
import
org.b3log.latke.event.EventException
;
import
org.b3log.latke.event.EventManager
;
import
org.b3log.latke.event.EventManager
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.Pagination
;
import
org.b3log.latke.model.Pagination
;
...
@@ -46,7 +47,6 @@ import org.json.JSONArray;
...
@@ -46,7 +47,6 @@ import org.json.JSONArray;
import
org.json.JSONException
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpServletResponse
;
import
java.util.*
;
import
java.util.*
;
...
...
src/main/java/org/b3log/solo/processor/util/TopBars.java
View file @
83955412
...
@@ -18,14 +18,8 @@ package org.b3log.solo.processor.util;
...
@@ -18,14 +18,8 @@ package org.b3log.solo.processor.util;
import
freemarker.template.Template
;
import
freemarker.template.Template
;
import
freemarker.template.TemplateException
;
import
freemarker.template.TemplateException
;
import
java.io.IOException
;
import
java.io.StringWriter
;
import
java.util.HashMap
;
import
java.util.Map
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.Role
;
import
org.b3log.latke.model.Role
;
...
@@ -45,6 +39,13 @@ import org.b3log.solo.service.UserQueryService;
...
@@ -45,6 +39,13 @@ import org.b3log.solo.service.UserQueryService;
import
org.json.JSONException
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.io.StringWriter
;
import
java.util.HashMap
;
import
java.util.Map
;
/**
/**
* Top bar utilities.
* Top bar utilities.
...
@@ -119,7 +120,7 @@ public class TopBars {
...
@@ -119,7 +120,7 @@ public class TopBars {
topBarModel
.
put
(
"mobileLabel"
,
langPropsService
.
get
(
"mobileLabel"
));
topBarModel
.
put
(
"mobileLabel"
,
langPropsService
.
get
(
"mobileLabel"
));
topBarModel
.
put
(
"onlineVisitor1Label"
,
langPropsService
.
get
(
"onlineVisitor1Label"
));
topBarModel
.
put
(
"onlineVisitor1Label"
,
langPropsService
.
get
(
"onlineVisitor1Label"
));
topBarModel
.
put
(
Common
.
ONLINE_VISITOR_CNT
,
s
tatisticQueryService
.
getOnlineVisitorCount
());
topBarModel
.
put
(
Common
.
ONLINE_VISITOR_CNT
,
S
tatisticQueryService
.
getOnlineVisitorCount
());
if
(
null
==
currentUser
)
{
if
(
null
==
currentUser
)
{
topBarModel
.
put
(
Common
.
LOGIN_URL
,
userService
.
createLoginURL
(
Common
.
ADMIN_INDEX_URI
));
topBarModel
.
put
(
Common
.
LOGIN_URL
,
userService
.
createLoginURL
(
Common
.
ADMIN_INDEX_URI
));
...
...
src/main/java/org/b3log/solo/repository/ArchiveDateRepository.java
View file @
83955412
...
@@ -16,11 +16,12 @@
...
@@ -16,11 +16,12 @@
package
org
.
b3log
.
solo
.
repository
;
package
org
.
b3log
.
solo
.
repository
;
import
java.util.List
;
import
org.b3log.latke.repository.Repository
;
import
org.b3log.latke.repository.Repository
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.List
;
/**
/**
* Archive date repository.
* Archive date repository.
...
...
src/main/java/org/b3log/solo/repository/ArticleRepository.java
View file @
83955412
...
@@ -16,11 +16,12 @@
...
@@ -16,11 +16,12 @@
package
org
.
b3log
.
solo
.
repository
;
package
org
.
b3log
.
solo
.
repository
;
import
java.util.List
;
import
org.b3log.latke.repository.Repository
;
import
org.b3log.latke.repository.Repository
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.List
;
/**
/**
* Article repository.
* Article repository.
...
...
src/main/java/org/b3log/solo/repository/CommentRepository.java
View file @
83955412
...
@@ -16,12 +16,12 @@
...
@@ -16,12 +16,12 @@
package
org
.
b3log
.
solo
.
repository
;
package
org
.
b3log
.
solo
.
repository
;
import
java.util.List
;
import
org.b3log.latke.repository.Repository
;
import
org.b3log.latke.repository.Repository
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.List
;
/**
/**
* Comment repository.
* Comment repository.
...
...
src/main/java/org/b3log/solo/repository/PageRepository.java
View file @
83955412
...
@@ -16,11 +16,12 @@
...
@@ -16,11 +16,12 @@
package
org
.
b3log
.
solo
.
repository
;
package
org
.
b3log
.
solo
.
repository
;
import
java.util.List
;
import
org.b3log.latke.repository.Repository
;
import
org.b3log.latke.repository.Repository
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.List
;
/**
/**
* Page repository.
* Page repository.
...
...
src/main/java/org/b3log/solo/repository/TagArticleRepository.java
View file @
83955412
...
@@ -16,11 +16,12 @@
...
@@ -16,11 +16,12 @@
package
org
.
b3log
.
solo
.
repository
;
package
org
.
b3log
.
solo
.
repository
;
import
java.util.List
;
import
org.b3log.latke.repository.Repository
;
import
org.b3log.latke.repository.Repository
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.List
;
/**
/**
* Tag-Article repository.
* Tag-Article repository.
...
...
src/main/java/org/b3log/solo/repository/TagRepository.java
View file @
83955412
...
@@ -16,11 +16,12 @@
...
@@ -16,11 +16,12 @@
package
org
.
b3log
.
solo
.
repository
;
package
org
.
b3log
.
solo
.
repository
;
import
java.util.List
;
import
org.b3log.latke.repository.Repository
;
import
org.b3log.latke.repository.Repository
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.List
;
/**
/**
* Tag repository.
* Tag repository.
...
...
src/main/java/org/b3log/solo/repository/impl/ArchiveDateArticleRepositoryImpl.java
View file @
83955412
...
@@ -17,15 +17,10 @@ package org.b3log.solo.repository.impl;
...
@@ -17,15 +17,10 @@ package org.b3log.solo.repository.impl;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.repository.AbstractRepository
;
import
org.b3log.latke.repository.*
;
import
org.b3log.latke.repository.FilterOperator
;
import
org.b3log.latke.repository.PropertyFilter
;
import
org.b3log.latke.repository.Query
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.b3log.latke.repository.SortDirection
;
import
org.b3log.latke.repository.annotation.Repository
;
import
org.b3log.latke.repository.annotation.Repository
;
import
org.b3log.solo.model.Article
;
import
org.b3log.solo.model.ArchiveDate
;
import
org.b3log.solo.model.ArchiveDate
;
import
org.b3log.solo.model.Article
;
import
org.b3log.solo.repository.ArchiveDateArticleRepository
;
import
org.b3log.solo.repository.ArchiveDateArticleRepository
;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
...
...
src/main/java/org/b3log/solo/repository/impl/ArchiveDateRepositoryImpl.java
View file @
83955412
...
@@ -16,19 +16,11 @@
...
@@ -16,19 +16,11 @@
package
org
.
b3log
.
solo
.
repository
.
impl
;
package
org
.
b3log
.
solo
.
repository
.
impl
;
import
java.text.ParseException
;
import
java.util.Iterator
;
import
java.util.List
;
import
org.apache.commons.lang.time.DateUtils
;
import
org.apache.commons.lang.time.DateUtils
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.repository.AbstractRepository
;
import
org.b3log.latke.repository.*
;
import
org.b3log.latke.repository.FilterOperator
;
import
org.b3log.latke.repository.PropertyFilter
;
import
org.b3log.latke.repository.Query
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.b3log.latke.repository.SortDirection
;
import
org.b3log.latke.repository.annotation.Repository
;
import
org.b3log.latke.repository.annotation.Repository
;
import
org.b3log.latke.util.CollectionUtils
;
import
org.b3log.latke.util.CollectionUtils
;
import
org.b3log.solo.model.ArchiveDate
;
import
org.b3log.solo.model.ArchiveDate
;
...
@@ -36,6 +28,10 @@ import org.b3log.solo.repository.ArchiveDateRepository;
...
@@ -36,6 +28,10 @@ import org.b3log.solo.repository.ArchiveDateRepository;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.text.ParseException
;
import
java.util.Iterator
;
import
java.util.List
;
/**
/**
* Archive date repository.
* Archive date repository.
...
@@ -70,7 +66,7 @@ public class ArchiveDateRepositoryImpl extends AbstractRepository implements Arc
...
@@ -70,7 +66,7 @@ public class ArchiveDateRepositoryImpl extends AbstractRepository implements Arc
throw
new
RepositoryException
(
"Can not parse archive date ["
+
archiveDate
+
"]"
);
throw
new
RepositoryException
(
"Can not parse archive date ["
+
archiveDate
+
"]"
);
}
}
LOGGER
.
log
(
Level
.
TRACE
,
"Archive date [{0}] parsed to time [{1}]"
,
new
Object
[]
{
archiveDate
,
time
}
);
LOGGER
.
log
(
Level
.
TRACE
,
"Archive date [{0}] parsed to time [{1}]"
,
archiveDate
,
time
);
final
Query
query
=
new
Query
();
final
Query
query
=
new
Query
();
...
...
src/main/java/org/b3log/solo/repository/impl/ArticleRepositoryImpl.java
View file @
83955412
...
@@ -15,19 +15,10 @@
...
@@ -15,19 +15,10 @@
*/
*/
package
org
.
b3log
.
solo
.
repository
.
impl
;
package
org
.
b3log
.
solo
.
repository
.
impl
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.repository.AbstractRepository
;
import
org.b3log.latke.repository.*
;
import
org.b3log.latke.repository.CompositeFilterOperator
;
import
org.b3log.latke.repository.FilterOperator
;
import
org.b3log.latke.repository.PropertyFilter
;
import
org.b3log.latke.repository.Query
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.b3log.latke.repository.SortDirection
;
import
org.b3log.latke.repository.annotation.Repository
;
import
org.b3log.latke.repository.annotation.Repository
;
import
org.b3log.latke.util.CollectionUtils
;
import
org.b3log.latke.util.CollectionUtils
;
import
org.b3log.solo.model.Article
;
import
org.b3log.solo.model.Article
;
...
@@ -36,6 +27,10 @@ import org.json.JSONArray;
...
@@ -36,6 +27,10 @@ import org.json.JSONArray;
import
org.json.JSONException
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
/**
/**
* Article repository.
* Article repository.
*
*
...
@@ -233,7 +228,7 @@ public class ArticleRepositoryImpl extends AbstractRepository implements Article
...
@@ -233,7 +228,7 @@ public class ArticleRepositoryImpl extends AbstractRepository implements Article
final
JSONObject
result1
=
get
(
query
);
final
JSONObject
result1
=
get
(
query
);
final
JSONArray
array1
=
result1
.
optJSONArray
(
Keys
.
RESULTS
);
final
JSONArray
array1
=
result1
.
optJSONArray
(
Keys
.
RESULTS
);
final
List
<
JSONObject
>
list1
=
CollectionUtils
.
<
JSONObject
>
jsonArrayToList
(
array1
);
final
List
<
JSONObject
>
list1
=
CollectionUtils
.
jsonArrayToList
(
array1
);
ret
.
addAll
(
list1
);
ret
.
addAll
(
list1
);
...
@@ -252,7 +247,7 @@ public class ArticleRepositoryImpl extends AbstractRepository implements Article
...
@@ -252,7 +247,7 @@ public class ArticleRepositoryImpl extends AbstractRepository implements Article
final
JSONObject
result2
=
get
(
query
);
final
JSONObject
result2
=
get
(
query
);
final
JSONArray
array2
=
result2
.
optJSONArray
(
Keys
.
RESULTS
);
final
JSONArray
array2
=
result2
.
optJSONArray
(
Keys
.
RESULTS
);
final
List
<
JSONObject
>
list2
=
CollectionUtils
.
<
JSONObject
>
jsonArrayToList
(
array2
);
final
List
<
JSONObject
>
list2
=
CollectionUtils
.
jsonArrayToList
(
array2
);
ret
.
addAll
(
list2
);
ret
.
addAll
(
list2
);
}
}
...
...
src/main/java/org/b3log/solo/repository/impl/CommentRepositoryImpl.java
View file @
83955412
...
@@ -16,27 +16,23 @@
...
@@ -16,27 +16,23 @@
package
org
.
b3log
.
solo
.
repository
.
impl
;
package
org
.
b3log
.
solo
.
repository
.
impl
;
import
java.util.Iterator
;
import
java.util.List
;
import
javax.inject.Inject
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.repository.AbstractRepository
;
import
org.b3log.latke.repository.*
;
import
org.b3log.latke.repository.FilterOperator
;
import
org.b3log.latke.repository.PropertyFilter
;
import
org.b3log.latke.repository.Query
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.b3log.latke.repository.SortDirection
;
import
org.b3log.latke.repository.annotation.Repository
;
import
org.b3log.latke.repository.annotation.Repository
;
import
org.b3log.solo.model.Comment
;
import
org.b3log.solo.repository.CommentRepository
;
import
org.b3log.latke.util.CollectionUtils
;
import
org.b3log.latke.util.CollectionUtils
;
import
org.b3log.solo.model.Article
;
import
org.b3log.solo.model.Article
;
import
org.b3log.solo.model.Comment
;
import
org.b3log.solo.repository.ArticleRepository
;
import
org.b3log.solo.repository.ArticleRepository
;
import
org.b3log.solo.repository.CommentRepository
;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.Iterator
;
import
java.util.List
;
/**
/**
* Comment repository.
* Comment repository.
...
@@ -76,7 +72,7 @@ public class CommentRepositoryImpl extends AbstractRepository implements Comment
...
@@ -76,7 +72,7 @@ public class CommentRepositoryImpl extends AbstractRepository implements Comment
remove
(
commentId
);
remove
(
commentId
);
}
}
LOGGER
.
log
(
Level
.
DEBUG
,
"Removed comments[onId={0}, removedCnt={1}]"
,
new
Object
[]
{
onId
,
comments
.
size
()}
);
LOGGER
.
log
(
Level
.
DEBUG
,
"Removed comments[onId={0}, removedCnt={1}]"
,
onId
,
comments
.
size
()
);
return
comments
.
size
();
return
comments
.
size
();
}
}
...
...
src/main/java/org/b3log/solo/repository/impl/LinkRepositoryImpl.java
View file @
83955412
...
@@ -17,12 +17,7 @@ package org.b3log.solo.repository.impl;
...
@@ -17,12 +17,7 @@ package org.b3log.solo.repository.impl;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.repository.AbstractRepository
;
import
org.b3log.latke.repository.*
;
import
org.b3log.latke.repository.FilterOperator
;
import
org.b3log.latke.repository.PropertyFilter
;
import
org.b3log.latke.repository.Query
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.b3log.latke.repository.SortDirection
;
import
org.b3log.latke.repository.annotation.Repository
;
import
org.b3log.latke.repository.annotation.Repository
;
import
org.b3log.solo.model.Link
;
import
org.b3log.solo.model.Link
;
import
org.b3log.solo.repository.LinkRepository
;
import
org.b3log.solo.repository.LinkRepository
;
...
...
src/main/java/org/b3log/solo/repository/impl/PageRepositoryImpl.java
View file @
83955412
...
@@ -16,14 +16,8 @@
...
@@ -16,14 +16,8 @@
package
org
.
b3log
.
solo
.
repository
.
impl
;
package
org
.
b3log
.
solo
.
repository
.
impl
;
import
java.util.List
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.repository.AbstractRepository
;
import
org.b3log.latke.repository.*
;
import
org.b3log.latke.repository.FilterOperator
;
import
org.b3log.latke.repository.PropertyFilter
;
import
org.b3log.latke.repository.Query
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.b3log.latke.repository.SortDirection
;
import
org.b3log.latke.repository.annotation.Repository
;
import
org.b3log.latke.repository.annotation.Repository
;
import
org.b3log.latke.util.CollectionUtils
;
import
org.b3log.latke.util.CollectionUtils
;
import
org.b3log.solo.model.Page
;
import
org.b3log.solo.model.Page
;
...
@@ -31,6 +25,8 @@ import org.b3log.solo.repository.PageRepository;
...
@@ -31,6 +25,8 @@ import org.b3log.solo.repository.PageRepository;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.List
;
/**
/**
* Page repository.
* Page repository.
...
...
src/main/java/org/b3log/solo/repository/impl/TagArticleRepositoryImpl.java
View file @
83955412
...
@@ -16,22 +16,18 @@
...
@@ -16,22 +16,18 @@
package
org
.
b3log
.
solo
.
repository
.
impl
;
package
org
.
b3log
.
solo
.
repository
.
impl
;
import
java.util.List
;
import
org.b3log.solo.model.Article
;
import
org.b3log.solo.model.Tag
;
import
org.b3log.solo.repository.TagArticleRepository
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.repository.AbstractRepository
;
import
org.b3log.latke.repository.*
;
import
org.b3log.latke.repository.FilterOperator
;
import
org.b3log.latke.repository.PropertyFilter
;
import
org.b3log.latke.repository.Query
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.b3log.latke.repository.SortDirection
;
import
org.b3log.latke.repository.annotation.Repository
;
import
org.b3log.latke.repository.annotation.Repository
;
import
org.b3log.latke.util.CollectionUtils
;
import
org.b3log.latke.util.CollectionUtils
;
import
org.b3log.solo.model.Article
;
import
org.b3log.solo.model.Tag
;
import
org.b3log.solo.repository.TagArticleRepository
;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.List
;
/**
/**
* Tag-Article relation repository.
* Tag-Article relation repository.
...
...
src/main/java/org/b3log/solo/repository/impl/TagRepositoryImpl.java
View file @
83955412
...
@@ -15,28 +15,24 @@
...
@@ -15,28 +15,24 @@
*/
*/
package
org
.
b3log
.
solo
.
repository
.
impl
;
package
org
.
b3log
.
solo
.
repository
.
impl
;
import
java.text.Collator
;
import
java.util.ArrayList
;
import
java.util.Collections
;
import
java.util.Comparator
;
import
java.util.List
;
import
javax.inject.Inject
;
import
org.b3log.solo.model.Tag
;
import
org.b3log.solo.repository.TagRepository
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.repository.AbstractRepository
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.repository.FilterOperator
;
import
org.b3log.latke.repository.*
;
import
org.b3log.latke.repository.PropertyFilter
;
import
org.b3log.latke.repository.Query
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.b3log.latke.repository.SortDirection
;
import
org.b3log.latke.repository.annotation.Repository
;
import
org.b3log.latke.repository.annotation.Repository
;
import
org.b3log.latke.util.CollectionUtils
;
import
org.b3log.latke.util.CollectionUtils
;
import
org.b3log.solo.model.Tag
;
import
org.b3log.solo.repository.TagArticleRepository
;
import
org.b3log.solo.repository.TagArticleRepository
;
import
org.b3log.solo.repository.TagRepository
;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONException
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.text.Collator
;
import
java.util.ArrayList
;
import
java.util.Collections
;
import
java.util.Comparator
;
import
java.util.List
;
/**
/**
* Tag repository.
* Tag repository.
*
*
...
...
src/main/java/org/b3log/solo/repository/impl/UserRepositoryImpl.java
View file @
83955412
...
@@ -19,11 +19,7 @@ package org.b3log.solo.repository.impl;
...
@@ -19,11 +19,7 @@ package org.b3log.solo.repository.impl;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.model.Role
;
import
org.b3log.latke.model.Role
;
import
org.b3log.latke.model.User
;
import
org.b3log.latke.model.User
;
import
org.b3log.latke.repository.AbstractRepository
;
import
org.b3log.latke.repository.*
;
import
org.b3log.latke.repository.FilterOperator
;
import
org.b3log.latke.repository.PropertyFilter
;
import
org.b3log.latke.repository.Query
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.b3log.latke.repository.annotation.Repository
;
import
org.b3log.latke.repository.annotation.Repository
;
import
org.b3log.solo.repository.UserRepository
;
import
org.b3log.solo.repository.UserRepository
;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
...
...
src/main/java/org/b3log/solo/service/ArchiveDateQueryService.java
View file @
83955412
...
@@ -16,8 +16,7 @@
...
@@ -16,8 +16,7 @@
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
java.util.List
;
import
org.b3log.latke.ioc.inject.Inject
;
import
javax.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.b3log.latke.repository.RepositoryException
;
...
@@ -27,6 +26,8 @@ import org.b3log.solo.model.ArchiveDate;
...
@@ -27,6 +26,8 @@ import org.b3log.solo.model.ArchiveDate;
import
org.b3log.solo.repository.ArchiveDateRepository
;
import
org.b3log.solo.repository.ArchiveDateRepository
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.List
;
/**
/**
* Archive date query service.
* Archive date query service.
...
...
src/main/java/org/b3log/solo/service/ArticleMgmtService.java
View file @
83955412
...
@@ -16,18 +16,13 @@
...
@@ -16,18 +16,13 @@
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
java.text.ParseException
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.Date
;
import
java.util.List
;
import
javax.inject.Inject
;
import
org.apache.commons.lang.time.DateFormatUtils
;
import
org.apache.commons.lang.time.DateFormatUtils
;
import
org.apache.commons.lang.time.DateUtils
;
import
org.apache.commons.lang.time.DateUtils
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.event.Event
;
import
org.b3log.latke.event.Event
;
import
org.b3log.latke.event.EventException
;
import
org.b3log.latke.event.EventException
;
import
org.b3log.latke.event.EventManager
;
import
org.b3log.latke.event.EventManager
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.b3log.latke.repository.RepositoryException
;
...
@@ -39,26 +34,21 @@ import org.b3log.latke.util.CollectionUtils;
...
@@ -39,26 +34,21 @@ import org.b3log.latke.util.CollectionUtils;
import
org.b3log.latke.util.Ids
;
import
org.b3log.latke.util.Ids
;
import
org.b3log.latke.util.Strings
;
import
org.b3log.latke.util.Strings
;
import
org.b3log.solo.event.EventTypes
;
import
org.b3log.solo.event.EventTypes
;
import
org.b3log.solo.model.ArchiveDate
;
import
org.b3log.solo.model.*
;
import
org.b3log.solo.model.Article
;
import
org.b3log.solo.repository.*
;
import
static
org
.
b3log
.
solo
.
model
.
Article
.*;
import
org.b3log.solo.model.Comment
;
import
org.b3log.solo.model.Common
;
import
org.b3log.solo.model.Option
;
import
org.b3log.solo.model.Tag
;
import
org.b3log.solo.model.UserExt
;
import
org.b3log.solo.repository.ArchiveDateArticleRepository
;
import
org.b3log.solo.repository.ArchiveDateRepository
;
import
org.b3log.solo.repository.ArticleRepository
;
import
org.b3log.solo.repository.CommentRepository
;
import
org.b3log.solo.repository.TagArticleRepository
;
import
org.b3log.solo.repository.TagRepository
;
import
org.b3log.solo.repository.UserRepository
;
import
org.b3log.solo.util.Comments
;
import
org.b3log.solo.util.Comments
;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONException
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.text.ParseException
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.Date
;
import
java.util.List
;
import
static
org
.
b3log
.
solo
.
model
.
Article
.*;
/**
/**
* Article management service.
* Article management service.
...
@@ -702,9 +692,8 @@ public class ArticleMgmtService {
...
@@ -702,9 +692,8 @@ public class ArticleMgmtService {
}
}
tagRepository
.
update
(
tagId
,
tag
);
tagRepository
.
update
(
tagId
,
tag
);
LOGGER
.
log
(
Level
.
TRACE
,
"Deced tag[title={0}, refCnt={1}, publishedRefCnt={2}] of article[id={3}]"
,
LOGGER
.
log
(
Level
.
TRACE
,
"Deced tag[title={0}, refCnt={1}, publishedRefCnt={2}] of article[id={3}]"
,
new
Object
[]
{
tag
.
getString
(
Tag
.
TAG_TITLE
),
tag
.
getInt
(
Tag
.
TAG_REFERENCE_COUNT
),
tag
.
getInt
(
Tag
.
TAG_PUBLISHED_REFERENCE_COUNT
),
tag
.
getString
(
Tag
.
TAG_TITLE
),
tag
.
getInt
(
Tag
.
TAG_REFERENCE_COUNT
),
tag
.
getInt
(
Tag
.
TAG_PUBLISHED_REFERENCE_COUNT
),
articleId
);
articleId
});
}
}
}
catch
(
final
Exception
e
)
{
}
catch
(
final
Exception
e
)
{
LOGGER
.
log
(
Level
.
ERROR
,
"Decs tag references count of article[id"
+
articleId
+
"] failed"
,
e
);
LOGGER
.
log
(
Level
.
ERROR
,
"Decs tag references count of article[id"
+
articleId
+
"] failed"
,
e
);
...
@@ -967,7 +956,7 @@ public class ArticleMgmtService {
...
@@ -967,7 +956,7 @@ public class ArticleMgmtService {
if
(
null
==
tag
)
{
if
(
null
==
tag
)
{
LOGGER
.
log
(
Level
.
TRACE
,
"Found a new tag[title={0}] in article[title={1}]"
,
LOGGER
.
log
(
Level
.
TRACE
,
"Found a new tag[title={0}] in article[title={1}]"
,
new
Object
[]
{
tagTitle
,
article
.
optString
(
Article
.
ARTICLE_TITLE
)}
);
tagTitle
,
article
.
optString
(
Article
.
ARTICLE_TITLE
)
);
tag
=
new
JSONObject
();
tag
=
new
JSONObject
();
tag
.
put
(
Tag
.
TAG_TITLE
,
tagTitle
);
tag
.
put
(
Tag
.
TAG_TITLE
,
tagTitle
);
tag
.
put
(
Tag
.
TAG_REFERENCE_COUNT
,
1
);
tag
.
put
(
Tag
.
TAG_REFERENCE_COUNT
,
1
);
...
@@ -982,7 +971,7 @@ public class ArticleMgmtService {
...
@@ -982,7 +971,7 @@ public class ArticleMgmtService {
}
else
{
}
else
{
tagId
=
tag
.
optString
(
Keys
.
OBJECT_ID
);
tagId
=
tag
.
optString
(
Keys
.
OBJECT_ID
);
LOGGER
.
log
(
Level
.
TRACE
,
"Found a existing tag[title={0}, id={1}] in article[title={2}]"
,
LOGGER
.
log
(
Level
.
TRACE
,
"Found a existing tag[title={0}, id={1}] in article[title={2}]"
,
new
Object
[]
{
tag
.
optString
(
Tag
.
TAG_TITLE
),
tag
.
optString
(
Keys
.
OBJECT_ID
),
article
.
optString
(
Article
.
ARTICLE_TITLE
)}
);
tag
.
optString
(
Tag
.
TAG_TITLE
),
tag
.
optString
(
Keys
.
OBJECT_ID
),
article
.
optString
(
Article
.
ARTICLE_TITLE
)
);
final
JSONObject
tagTmp
=
new
JSONObject
();
final
JSONObject
tagTmp
=
new
JSONObject
();
tagTmp
.
put
(
Keys
.
OBJECT_ID
,
tagId
);
tagTmp
.
put
(
Keys
.
OBJECT_ID
,
tagId
);
...
...
src/main/java/org/b3log/solo/service/ArticleQueryService.java
View file @
83955412
...
@@ -16,6 +16,7 @@
...
@@ -16,6 +16,7 @@
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.Pagination
;
import
org.b3log.latke.model.Pagination
;
...
@@ -38,7 +39,6 @@ import org.json.JSONArray;
...
@@ -38,7 +39,6 @@ import org.json.JSONArray;
import
org.json.JSONException
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpSession
;
import
javax.servlet.http.HttpSession
;
import
java.util.*
;
import
java.util.*
;
...
@@ -270,11 +270,7 @@ public class ArticleQueryService {
...
@@ -270,11 +270,7 @@ public class ArticleQueryService {
final
JSONObject
currentUser
=
userQueryService
.
getCurrentUser
(
request
);
final
JSONObject
currentUser
=
userQueryService
.
getCurrentUser
(
request
);
if
(
null
!=
currentUser
&&
!
Role
.
VISITOR_ROLE
.
equals
(
currentUser
.
optString
(
User
.
USER_ROLE
)))
{
return
!(
null
!=
currentUser
&&
!
Role
.
VISITOR_ROLE
.
equals
(
currentUser
.
optString
(
User
.
USER_ROLE
)));
return
false
;
}
return
true
;
// Visitor or NOT logged in
}
}
/**
/**
...
...
src/main/java/org/b3log/solo/service/CategoryMgmtService.java
View file @
83955412
...
@@ -16,6 +16,7 @@
...
@@ -16,6 +16,7 @@
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.repository.*
;
import
org.b3log.latke.repository.*
;
...
@@ -29,8 +30,6 @@ import org.b3log.solo.repository.CategoryTagRepository;
...
@@ -29,8 +30,6 @@ import org.b3log.solo.repository.CategoryTagRepository;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.inject.Inject
;
/**
/**
* Category management service.
* Category management service.
*
*
...
...
src/main/java/org/b3log/solo/service/CategoryQueryService.java
View file @
83955412
...
@@ -16,6 +16,7 @@
...
@@ -16,6 +16,7 @@
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.Pagination
;
import
org.b3log.latke.model.Pagination
;
...
@@ -32,7 +33,6 @@ import org.b3log.solo.repository.TagRepository;
...
@@ -32,7 +33,6 @@ import org.b3log.solo.repository.TagRepository;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.inject.Inject
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.Collections
;
import
java.util.Collections
;
import
java.util.List
;
import
java.util.List
;
...
@@ -227,7 +227,7 @@ public class CategoryQueryService {
...
@@ -227,7 +227,7 @@ public class CategoryQueryService {
pagination
.
put
(
Pagination
.
PAGINATION_PAGE_NUMS
,
pageNums
);
pagination
.
put
(
Pagination
.
PAGINATION_PAGE_NUMS
,
pageNums
);
final
JSONArray
data
=
result
.
optJSONArray
(
Keys
.
RESULTS
);
final
JSONArray
data
=
result
.
optJSONArray
(
Keys
.
RESULTS
);
final
List
<
JSONObject
>
categories
=
CollectionUtils
.
<
JSONObject
>
jsonArrayToList
(
data
);
final
List
<
JSONObject
>
categories
=
CollectionUtils
.
jsonArrayToList
(
data
);
ret
.
put
(
Category
.
CATEGORIES
,
categories
);
ret
.
put
(
Category
.
CATEGORIES
,
categories
);
...
...
src/main/java/org/b3log/solo/service/CommentMgmtService.java
View file @
83955412
...
@@ -15,17 +15,13 @@
...
@@ -15,17 +15,13 @@
*/
*/
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
java.io.IOException
;
import
java.net.URL
;
import
java.util.Date
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletResponse
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.time.DateFormatUtils
;
import
org.apache.commons.lang.time.DateFormatUtils
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.event.Event
;
import
org.b3log.latke.event.Event
;
import
org.b3log.latke.event.EventManager
;
import
org.b3log.latke.event.EventManager
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.mail.MailService
;
import
org.b3log.latke.mail.MailService
;
...
@@ -35,7 +31,10 @@ import org.b3log.latke.repository.Transaction;
...
@@ -35,7 +31,10 @@ import org.b3log.latke.repository.Transaction;
import
org.b3log.latke.service.LangPropsService
;
import
org.b3log.latke.service.LangPropsService
;
import
org.b3log.latke.service.ServiceException
;
import
org.b3log.latke.service.ServiceException
;
import
org.b3log.latke.service.annotation.Service
;
import
org.b3log.latke.service.annotation.Service
;
import
org.b3log.latke.urlfetch.*
;
import
org.b3log.latke.urlfetch.HTTPRequest
;
import
org.b3log.latke.urlfetch.HTTPResponse
;
import
org.b3log.latke.urlfetch.URLFetchService
;
import
org.b3log.latke.urlfetch.URLFetchServiceFactory
;
import
org.b3log.latke.util.Ids
;
import
org.b3log.latke.util.Ids
;
import
org.b3log.latke.util.Strings
;
import
org.b3log.latke.util.Strings
;
import
org.b3log.solo.event.EventTypes
;
import
org.b3log.solo.event.EventTypes
;
...
@@ -53,6 +52,11 @@ import org.json.JSONObject;
...
@@ -53,6 +52,11 @@ import org.json.JSONObject;
import
org.jsoup.Jsoup
;
import
org.jsoup.Jsoup
;
import
org.jsoup.safety.Whitelist
;
import
org.jsoup.safety.Whitelist
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.net.URL
;
import
java.util.Date
;
/**
/**
* Comment management service.
* Comment management service.
*
*
...
@@ -251,7 +255,7 @@ public class CommentMgmtService {
...
@@ -251,7 +255,7 @@ public class CommentMgmtService {
message
.
setHtmlBody
(
mailBody
);
message
.
setHtmlBody
(
mailBody
);
LOGGER
.
log
(
Level
.
DEBUG
,
"Sending a mail[mailSubject={0}, mailBody=[{1}] to admin[email={2}]"
,
LOGGER
.
log
(
Level
.
DEBUG
,
"Sending a mail[mailSubject={0}, mailBody=[{1}] to admin[email={2}]"
,
new
Object
[]{
mailSubject
,
mailBody
,
adminEmail
}
);
mailSubject
,
mailBody
,
adminEmail
);
mailService
.
send
(
message
);
mailService
.
send
(
message
);
}
}
...
...
src/main/java/org/b3log/solo/service/CommentQueryService.java
View file @
83955412
...
@@ -15,13 +15,9 @@
...
@@ -15,13 +15,9 @@
*/
*/
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.Pagination
;
import
org.b3log.latke.model.Pagination
;
...
@@ -45,6 +41,11 @@ import org.b3log.solo.util.Thumbnails;
...
@@ -45,6 +41,11 @@ import org.b3log.solo.util.Thumbnails;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
/**
/**
* Comment query service.
* Comment query service.
*
*
...
...
src/main/java/org/b3log/solo/service/InitService.java
View file @
83955412
...
@@ -15,19 +15,13 @@
...
@@ -15,19 +15,13 @@
*/
*/
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
java.net.URL
;
import
java.text.ParseException
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Set
;
import
javax.inject.Inject
;
import
javax.servlet.ServletContext
;
import
org.apache.commons.lang.time.DateFormatUtils
;
import
org.apache.commons.lang.time.DateFormatUtils
;
import
org.apache.commons.lang.time.DateUtils
;
import
org.apache.commons.lang.time.DateUtils
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.RuntimeDatabase
;
import
org.b3log.latke.RuntimeDatabase
;
import
org.b3log.latke.RuntimeEnv
;
import
org.b3log.latke.RuntimeEnv
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.Role
;
import
org.b3log.latke.model.Role
;
...
@@ -49,16 +43,7 @@ import org.b3log.latke.util.freemarker.Templates;
...
@@ -49,16 +43,7 @@ import org.b3log.latke.util.freemarker.Templates;
import
org.b3log.solo.SoloServletListener
;
import
org.b3log.solo.SoloServletListener
;
import
org.b3log.solo.model.*
;
import
org.b3log.solo.model.*
;
import
org.b3log.solo.model.Option.DefaultPreference
;
import
org.b3log.solo.model.Option.DefaultPreference
;
import
org.b3log.solo.repository.ArchiveDateArticleRepository
;
import
org.b3log.solo.repository.*
;
import
org.b3log.solo.repository.ArchiveDateRepository
;
import
org.b3log.solo.repository.ArticleRepository
;
import
org.b3log.solo.repository.CommentRepository
;
import
org.b3log.solo.repository.LinkRepository
;
import
org.b3log.solo.repository.OptionRepository
;
import
org.b3log.solo.repository.StatisticRepository
;
import
org.b3log.solo.repository.TagArticleRepository
;
import
org.b3log.solo.repository.TagRepository
;
import
org.b3log.solo.repository.UserRepository
;
import
org.b3log.solo.util.Comments
;
import
org.b3log.solo.util.Comments
;
import
org.b3log.solo.util.Skins
;
import
org.b3log.solo.util.Skins
;
import
org.b3log.solo.util.Thumbnails
;
import
org.b3log.solo.util.Thumbnails
;
...
@@ -67,6 +52,13 @@ import org.json.JSONArray;
...
@@ -67,6 +52,13 @@ import org.json.JSONArray;
import
org.json.JSONException
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.ServletContext
;
import
java.net.URL
;
import
java.text.ParseException
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Set
;
/**
/**
* Solo initialization service.
* Solo initialization service.
*
*
...
@@ -232,7 +224,7 @@ public class InitService {
...
@@ -232,7 +224,7 @@ public class InitService {
final
List
<
CreateTableResult
>
createTableResults
=
JdbcRepositories
.
initAllTables
();
final
List
<
CreateTableResult
>
createTableResults
=
JdbcRepositories
.
initAllTables
();
for
(
final
CreateTableResult
createTableResult
:
createTableResults
)
{
for
(
final
CreateTableResult
createTableResult
:
createTableResults
)
{
LOGGER
.
log
(
Level
.
DEBUG
,
"Create table result[tableName={0}, isSuccess={1}]"
,
LOGGER
.
log
(
Level
.
DEBUG
,
"Create table result[tableName={0}, isSuccess={1}]"
,
new
Object
[]{
createTableResult
.
getName
(),
createTableResult
.
isSuccess
()}
);
createTableResult
.
getName
(),
createTableResult
.
isSuccess
()
);
}
}
}
}
...
@@ -478,7 +470,7 @@ public class InitService {
...
@@ -478,7 +470,7 @@ public class InitService {
final
JSONObject
tag
=
new
JSONObject
();
final
JSONObject
tag
=
new
JSONObject
();
LOGGER
.
log
(
Level
.
TRACE
,
"Found a new tag[title={0}] in article[title={1}]"
,
LOGGER
.
log
(
Level
.
TRACE
,
"Found a new tag[title={0}] in article[title={1}]"
,
new
Object
[]{
tagTitle
,
article
.
optString
(
Article
.
ARTICLE_TITLE
)}
);
tagTitle
,
article
.
optString
(
Article
.
ARTICLE_TITLE
)
);
tag
.
put
(
Tag
.
TAG_TITLE
,
tagTitle
);
tag
.
put
(
Tag
.
TAG_TITLE
,
tagTitle
);
tag
.
put
(
Tag
.
TAG_REFERENCE_COUNT
,
1
);
tag
.
put
(
Tag
.
TAG_REFERENCE_COUNT
,
1
);
tag
.
put
(
Tag
.
TAG_PUBLISHED_REFERENCE_COUNT
,
1
);
tag
.
put
(
Tag
.
TAG_PUBLISHED_REFERENCE_COUNT
,
1
);
...
...
src/main/java/org/b3log/solo/service/LinkMgmtService.java
View file @
83955412
...
@@ -16,8 +16,8 @@
...
@@ -16,8 +16,8 @@
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
javax.inject.Inject
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.repository.Transaction
;
import
org.b3log.latke.repository.Transaction
;
...
...
src/main/java/org/b3log/solo/service/LinkQueryService.java
View file @
83955412
...
@@ -16,9 +16,8 @@
...
@@ -16,9 +16,8 @@
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
java.util.List
;
import
javax.inject.Inject
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.Pagination
;
import
org.b3log.latke.model.Pagination
;
...
@@ -32,6 +31,8 @@ import org.b3log.solo.repository.LinkRepository;
...
@@ -32,6 +31,8 @@ import org.b3log.solo.repository.LinkRepository;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.List
;
/**
/**
* Link query service.
* Link query service.
...
...
src/main/java/org/b3log/solo/service/OptionMgmtService.java
View file @
83955412
...
@@ -16,8 +16,8 @@
...
@@ -16,8 +16,8 @@
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
javax.inject.Inject
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.repository.Transaction
;
import
org.b3log.latke.repository.Transaction
;
import
org.b3log.latke.service.ServiceException
;
import
org.b3log.latke.service.ServiceException
;
import
org.b3log.latke.service.annotation.Service
;
import
org.b3log.latke.service.annotation.Service
;
...
...
src/main/java/org/b3log/solo/service/OptionQueryService.java
View file @
83955412
...
@@ -16,8 +16,8 @@
...
@@ -16,8 +16,8 @@
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
javax.inject.Inject
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.repository.FilterOperator
;
import
org.b3log.latke.repository.FilterOperator
;
import
org.b3log.latke.repository.PropertyFilter
;
import
org.b3log.latke.repository.PropertyFilter
;
import
org.b3log.latke.repository.Query
;
import
org.b3log.latke.repository.Query
;
...
...
src/main/java/org/b3log/solo/service/PageMgmtService.java
View file @
83955412
...
@@ -15,9 +15,8 @@
...
@@ -15,9 +15,8 @@
*/
*/
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
java.util.List
;
import
javax.inject.Inject
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.b3log.latke.repository.RepositoryException
;
...
@@ -36,6 +35,8 @@ import org.b3log.solo.util.Comments;
...
@@ -36,6 +35,8 @@ import org.b3log.solo.util.Comments;
import
org.json.JSONException
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.List
;
/**
/**
* Page management service.
* Page management service.
*
*
...
...
src/main/java/org/b3log/solo/service/PageQueryService.java
View file @
83955412
...
@@ -16,9 +16,8 @@
...
@@ -16,9 +16,8 @@
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
java.util.List
;
import
javax.inject.Inject
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.Pagination
;
import
org.b3log.latke.model.Pagination
;
...
@@ -32,6 +31,8 @@ import org.b3log.solo.repository.PageRepository;
...
@@ -32,6 +31,8 @@ import org.b3log.solo.repository.PageRepository;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.List
;
/**
/**
* Page query service.
* Page query service.
...
...
src/main/java/org/b3log/solo/service/PermalinkQueryService.java
View file @
83955412
...
@@ -16,10 +16,8 @@
...
@@ -16,10 +16,8 @@
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
java.util.regex.Matcher
;
import
java.util.regex.Pattern
;
import
javax.inject.Inject
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.b3log.latke.repository.RepositoryException
;
...
@@ -28,6 +26,9 @@ import org.b3log.latke.util.Strings;
...
@@ -28,6 +26,9 @@ import org.b3log.latke.util.Strings;
import
org.b3log.solo.repository.ArticleRepository
;
import
org.b3log.solo.repository.ArticleRepository
;
import
org.b3log.solo.repository.PageRepository
;
import
org.b3log.solo.repository.PageRepository
;
import
java.util.regex.Matcher
;
import
java.util.regex.Pattern
;
/**
/**
* Permalink query service.
* Permalink query service.
...
...
src/main/java/org/b3log/solo/service/PluginMgmtService.java
View file @
83955412
...
@@ -16,12 +16,10 @@
...
@@ -16,12 +16,10 @@
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
java.util.List
;
import
java.util.Map
;
import
javax.inject.Inject
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.Plugin
;
import
org.b3log.latke.model.Plugin
;
...
@@ -38,6 +36,9 @@ import org.json.JSONArray;
...
@@ -38,6 +36,9 @@ import org.json.JSONArray;
import
org.json.JSONException
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.List
;
import
java.util.Map
;
/**
/**
* Plugin management service.
* Plugin management service.
...
...
src/main/java/org/b3log/solo/service/PluginQueryService.java
View file @
83955412
...
@@ -16,9 +16,7 @@
...
@@ -16,9 +16,7 @@
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
java.util.ArrayList
;
import
org.b3log.latke.ioc.inject.Inject
;
import
java.util.List
;
import
javax.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.Pagination
;
import
org.b3log.latke.model.Pagination
;
...
@@ -33,6 +31,9 @@ import org.b3log.solo.repository.PluginRepository;
...
@@ -33,6 +31,9 @@ import org.b3log.solo.repository.PluginRepository;
import
org.json.JSONException
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
/**
* Plugin query service.
* Plugin query service.
...
...
src/main/java/org/b3log/solo/service/PreferenceMgmtService.java
View file @
83955412
...
@@ -15,18 +15,12 @@
...
@@ -15,18 +15,12 @@
*/
*/
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
org.b3log.latke.service.LangPropsService
;
import
org.b3log.solo.util.TimeZones
;
import
org.b3log.solo.util.Skins
;
import
java.util.Iterator
;
import
java.util.Locale
;
import
java.util.Set
;
import
javax.inject.Inject
;
import
javax.servlet.ServletContext
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.repository.Transaction
;
import
org.b3log.latke.repository.Transaction
;
import
org.b3log.latke.service.LangPropsService
;
import
org.b3log.latke.service.ServiceException
;
import
org.b3log.latke.service.ServiceException
;
import
org.b3log.latke.service.annotation.Service
;
import
org.b3log.latke.service.annotation.Service
;
import
org.b3log.latke.util.Locales
;
import
org.b3log.latke.util.Locales
;
...
@@ -35,12 +29,18 @@ import org.b3log.latke.util.freemarker.Templates;
...
@@ -35,12 +29,18 @@ import org.b3log.latke.util.freemarker.Templates;
import
org.b3log.solo.SoloServletListener
;
import
org.b3log.solo.SoloServletListener
;
import
org.b3log.solo.model.Option
;
import
org.b3log.solo.model.Option
;
import
org.b3log.solo.model.Skin
;
import
org.b3log.solo.model.Skin
;
import
org.b3log.solo.repository.OptionRepository
;
import
org.b3log.solo.util.Skins
;
import
org.b3log.solo.util.TimeZones
;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
static
org
.
b3log
.
solo
.
model
.
Skin
.
SKINS
;
import
static
org
.
b3log
.
solo
.
model
.
Skin
.
SKIN_DIR_NAME
;
import
javax.servlet.ServletContext
;
import
static
org
.
b3log
.
solo
.
model
.
Skin
.
SKIN_NAME
;
import
java.util.Iterator
;
import
org.b3log.solo.repository.OptionRepository
;
import
java.util.Locale
;
import
java.util.Set
;
import
static
org
.
b3log
.
solo
.
model
.
Skin
.*;
import
static
org
.
b3log
.
solo
.
util
.
Skins
.
getSkinDirNames
;
import
static
org
.
b3log
.
solo
.
util
.
Skins
.
getSkinDirNames
;
import
static
org
.
b3log
.
solo
.
util
.
Skins
.
setDirectoryForTemplateLoading
;
import
static
org
.
b3log
.
solo
.
util
.
Skins
.
setDirectoryForTemplateLoading
;
...
...
src/main/java/org/b3log/solo/service/PreferenceQueryService.java
View file @
83955412
...
@@ -15,8 +15,8 @@
...
@@ -15,8 +15,8 @@
*/
*/
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
javax.inject.Inject
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.repository.FilterOperator
;
import
org.b3log.latke.repository.FilterOperator
;
...
...
src/main/java/org/b3log/solo/service/StatisticMgmtService.java
View file @
83955412
...
@@ -16,12 +16,7 @@
...
@@ -16,12 +16,7 @@
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
java.util.HashMap
;
import
org.b3log.latke.ioc.inject.Inject
;
import
java.util.Iterator
;
import
java.util.Map
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.b3log.latke.repository.RepositoryException
;
...
@@ -30,11 +25,17 @@ import org.b3log.latke.service.LangPropsService;
...
@@ -30,11 +25,17 @@ import org.b3log.latke.service.LangPropsService;
import
org.b3log.latke.service.ServiceException
;
import
org.b3log.latke.service.ServiceException
;
import
org.b3log.latke.service.annotation.Service
;
import
org.b3log.latke.service.annotation.Service
;
import
org.b3log.latke.util.Requests
;
import
org.b3log.latke.util.Requests
;
import
org.json.JSONObject
;
import
org.b3log.solo.model.Statistic
;
import
org.b3log.solo.model.Statistic
;
import
org.b3log.solo.repository.ArticleRepository
;
import
org.b3log.solo.repository.ArticleRepository
;
import
org.b3log.solo.repository.StatisticRepository
;
import
org.b3log.solo.repository.StatisticRepository
;
import
org.json.JSONException
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.util.HashMap
;
import
java.util.Iterator
;
import
java.util.Map
;
/**
/**
...
...
src/main/java/org/b3log/solo/service/StatisticQueryService.java
View file @
83955412
...
@@ -16,7 +16,7 @@
...
@@ -16,7 +16,7 @@
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
javax
.inject.Inject
;
import
org.b3log.latke.ioc
.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.b3log.latke.repository.RepositoryException
;
...
...
src/main/java/org/b3log/solo/service/TagMgmtService.java
View file @
83955412
...
@@ -17,6 +17,7 @@ package org.b3log.solo.service;
...
@@ -17,6 +17,7 @@ package org.b3log.solo.service;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.repository.RepositoryException
;
import
org.b3log.latke.repository.RepositoryException
;
...
@@ -29,7 +30,6 @@ import org.b3log.solo.repository.TagRepository;
...
@@ -29,7 +30,6 @@ import org.b3log.solo.repository.TagRepository;
import
org.json.JSONException
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.inject.Inject
;
import
java.util.List
;
import
java.util.List
;
...
...
src/main/java/org/b3log/solo/service/TagQueryService.java
View file @
83955412
...
@@ -15,10 +15,8 @@
...
@@ -15,10 +15,8 @@
*/
*/
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
java.util.Iterator
;
import
java.util.List
;
import
javax.inject.Inject
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.repository.Query
;
import
org.b3log.latke.repository.Query
;
...
@@ -33,6 +31,9 @@ import org.json.JSONArray;
...
@@ -33,6 +31,9 @@ import org.json.JSONArray;
import
org.json.JSONException
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.Iterator
;
import
java.util.List
;
/**
/**
* Tag query service.
* Tag query service.
*
*
...
...
src/main/java/org/b3log/solo/service/UpgradeService.java
View file @
83955412
...
@@ -15,10 +15,8 @@
...
@@ -15,10 +15,8 @@
*/
*/
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
java.io.IOException
;
import
javax.inject.Inject
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.mail.MailService
;
import
org.b3log.latke.mail.MailService
;
...
@@ -42,6 +40,8 @@ import org.json.JSONArray;
...
@@ -42,6 +40,8 @@ import org.json.JSONArray;
import
org.json.JSONException
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.io.IOException
;
/**
/**
* Upgrade service.
* Upgrade service.
*
*
...
...
src/main/java/org/b3log/solo/service/UserMgmtService.java
View file @
83955412
...
@@ -15,15 +15,12 @@
...
@@ -15,15 +15,12 @@
*/
*/
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
javax.inject.Inject
;
import
javax.servlet.http.Cookie
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.ioc.LatkeBeanManager
;
import
org.b3log.latke.ioc.LatkeBeanManager
;
import
org.b3log.latke.ioc.Lifecycle
;
import
org.b3log.latke.ioc.Lifecycle
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.Role
;
import
org.b3log.latke.model.Role
;
...
@@ -41,6 +38,10 @@ import org.b3log.solo.repository.UserRepository;
...
@@ -41,6 +38,10 @@ import org.b3log.solo.repository.UserRepository;
import
org.b3log.solo.util.Thumbnails
;
import
org.b3log.solo.util.Thumbnails
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.Cookie
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
/**
/**
* User management service.
* User management service.
*
*
...
@@ -175,12 +176,12 @@ public class UserMgmtService {
...
@@ -175,12 +176,12 @@ public class UserMgmtService {
oldUser
.
put
(
User
.
USER_EMAIL
,
userNewEmail
);
oldUser
.
put
(
User
.
USER_EMAIL
,
userNewEmail
);
oldUser
.
put
(
User
.
USER_NAME
,
userName
);
oldUser
.
put
(
User
.
USER_NAME
,
userName
);
final
boolean
mybeHashed
=
HASHED_PASSWORD_LENGTH
==
userPassword
.
length
();
final
boolean
m
a
ybeHashed
=
HASHED_PASSWORD_LENGTH
==
userPassword
.
length
();
final
String
newHashedPassword
=
MD5
.
hash
(
userPassword
);
final
String
newHashedPassword
=
MD5
.
hash
(
userPassword
);
final
String
oldHashedPassword
=
oldUser
.
optString
(
User
.
USER_PASSWORD
);
final
String
oldHashedPassword
=
oldUser
.
optString
(
User
.
USER_PASSWORD
);
if
(!
"demo.b3log.org"
.
equals
(
Latkes
.
getServerHost
()))
{
// Skips the Solo Online Demo (http://demo.b3log.org)
if
(!
"demo.b3log.org"
.
equals
(
Latkes
.
getServerHost
()))
{
// Skips the Solo Online Demo (http://demo.b3log.org)
if
(!
mybeHashed
||
(!
oldHashedPassword
.
equals
(
userPassword
)
&&
!
oldHashedPassword
.
equals
(
newHashedPassword
)))
{
if
(!
m
a
ybeHashed
||
(!
oldHashedPassword
.
equals
(
userPassword
)
&&
!
oldHashedPassword
.
equals
(
newHashedPassword
)))
{
oldUser
.
put
(
User
.
USER_PASSWORD
,
newHashedPassword
);
oldUser
.
put
(
User
.
USER_PASSWORD
,
newHashedPassword
);
}
}
}
}
...
@@ -213,7 +214,7 @@ public class UserMgmtService {
...
@@ -213,7 +214,7 @@ public class UserMgmtService {
}
}
/**
/**
* Swit
h
ches the user role between "defaultRole" and "visitorRole" by the specified user id.
* Switches the user role between "defaultRole" and "visitorRole" by the specified user id.
*
*
* @param userId the specified user id
* @param userId the specified user id
* @throws ServiceException exception
* @throws ServiceException exception
...
...
src/main/java/org/b3log/solo/service/UserQueryService.java
View file @
83955412
...
@@ -16,11 +16,8 @@
...
@@ -16,11 +16,8 @@
package
org
.
b3log
.
solo
.
service
;
package
org
.
b3log
.
solo
.
service
;
import
java.util.List
;
import
javax.inject.Inject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.inject.Inject
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.model.Pagination
;
import
org.b3log.latke.model.Pagination
;
...
@@ -38,6 +35,10 @@ import org.json.JSONArray;
...
@@ -38,6 +35,10 @@ import org.json.JSONArray;
import
org.json.JSONException
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.util.List
;
/**
/**
* User query service.
* User query service.
...
...
src/main/java/org/b3log/solo/util/Comments.java
View file @
83955412
...
@@ -16,7 +16,8 @@
...
@@ -16,7 +16,8 @@
package
org
.
b3log
.
solo
.
util
;
package
org
.
b3log
.
solo
.
util
;
import
org.b3log.solo.model.*
;
import
org.b3log.solo.model.Article
;
import
org.b3log.solo.model.Page
;
import
org.json.JSONException
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
...
...
src/main/java/org/b3log/solo/util/Emotions.java
View file @
83955412
...
@@ -16,9 +16,10 @@
...
@@ -16,9 +16,10 @@
package
org
.
b3log
.
solo
.
util
;
package
org
.
b3log
.
solo
.
util
;
import
com.vdurmont.emoji.EmojiParser
;
import
com.vdurmont.emoji.EmojiParser
;
import
java.util.regex.Pattern
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
java.util.regex.Pattern
;
/**
/**
* Emotions utilities.
* Emotions utilities.
*
*
...
...
src/main/java/org/b3log/solo/util/Skins.java
View file @
83955412
...
@@ -16,16 +16,6 @@
...
@@ -16,16 +16,6 @@
package
org
.
b3log
.
solo
.
util
;
package
org
.
b3log
.
solo
.
util
;
import
freemarker.template.TemplateExceptionHandler
;
import
freemarker.template.TemplateExceptionHandler
;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.util.HashMap
;
import
java.util.HashSet
;
import
java.util.Map
;
import
java.util.Properties
;
import
java.util.Set
;
import
javax.servlet.ServletContext
;
import
javax.servlet.http.Cookie
;
import
javax.servlet.http.HttpServletRequest
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.Latkes
;
import
org.b3log.latke.ioc.LatkeBeanManager
;
import
org.b3log.latke.ioc.LatkeBeanManager
;
import
org.b3log.latke.ioc.Lifecycle
;
import
org.b3log.latke.ioc.Lifecycle
;
...
@@ -41,6 +31,13 @@ import org.b3log.latke.util.freemarker.Templates;
...
@@ -41,6 +31,13 @@ import org.b3log.latke.util.freemarker.Templates;
import
org.b3log.solo.SoloServletListener
;
import
org.b3log.solo.SoloServletListener
;
import
org.b3log.solo.model.Skin
;
import
org.b3log.solo.model.Skin
;
import
javax.servlet.ServletContext
;
import
javax.servlet.http.Cookie
;
import
javax.servlet.http.HttpServletRequest
;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.util.*
;
/**
/**
* Skin utilities.
* Skin utilities.
*
*
...
@@ -86,7 +83,7 @@ public final class Skins {
...
@@ -86,7 +83,7 @@ public final class Skins {
if
(
null
==
langs
)
{
if
(
null
==
langs
)
{
LANG_MAP
.
clear
();
// Collect unused skin languages
LANG_MAP
.
clear
();
// Collect unused skin languages
LOGGER
.
log
(
Level
.
DEBUG
,
"Loading skin [dirName={0}, locale={1}]"
,
new
Object
[]{
currentSkinDirName
,
localeString
}
);
LOGGER
.
log
(
Level
.
DEBUG
,
"Loading skin [dirName={0}, locale={1}]"
,
currentSkinDirName
,
localeString
);
langs
=
new
HashMap
<
String
,
String
>();
langs
=
new
HashMap
<
String
,
String
>();
final
String
language
=
Locales
.
getLanguage
(
localeString
);
final
String
language
=
Locales
.
getLanguage
(
localeString
);
...
@@ -107,7 +104,7 @@ public final class Skins {
...
@@ -107,7 +104,7 @@ public final class Skins {
LANG_MAP
.
put
(
langName
,
langs
);
LANG_MAP
.
put
(
langName
,
langs
);
LOGGER
.
log
(
Level
.
DEBUG
,
"Loaded skin[dirName={0}, locale={1}, keyCount={2}]"
,
LOGGER
.
log
(
Level
.
DEBUG
,
"Loaded skin[dirName={0}, locale={1}, keyCount={2}]"
,
new
Object
[]{
currentSkinDirName
,
localeString
,
langs
.
size
()}
);
currentSkinDirName
,
localeString
,
langs
.
size
()
);
}
}
dataModel
.
putAll
(
langs
);
// Fills the current skin's language configurations
dataModel
.
putAll
(
langs
);
// Fills the current skin's language configurations
...
...
src/main/java/org/b3log/solo/util/Thumbnails.java
View file @
83955412
...
@@ -16,9 +16,10 @@
...
@@ -16,9 +16,10 @@
package
org
.
b3log
.
solo
.
util
;
package
org
.
b3log
.
solo
.
util
;
import
java.util.ResourceBundle
;
import
org.b3log.latke.util.MD5
;
import
org.b3log.latke.util.MD5
;
import
java.util.ResourceBundle
;
/**
/**
* Thumbnail utilities.
* Thumbnail utilities.
...
@@ -36,8 +37,8 @@ public final class Thumbnails {
...
@@ -36,8 +37,8 @@ public final class Thumbnails {
/**
/**
* Gravatar address.
* Gravatar address.
*/
*/
public
static
final
String
GRAVATAR
;
;
public
static
final
String
GRAVATAR
;
static
{
static
{
final
ResourceBundle
b3log
=
ResourceBundle
.
getBundle
(
"b3log"
);
final
ResourceBundle
b3log
=
ResourceBundle
.
getBundle
(
"b3log"
);
...
...
src/main/java/org/b3log/solo/util/TimeZones.java
View file @
83955412
...
@@ -16,9 +16,10 @@
...
@@ -16,9 +16,10 @@
package
org
.
b3log
.
solo
.
util
;
package
org
.
b3log
.
solo
.
util
;
import
java.util.TimeZone
;
import
org.b3log.latke.util.freemarker.Templates
;
import
org.b3log.latke.util.freemarker.Templates
;
import
java.util.TimeZone
;
/**
/**
* Time zone utilities.
* Time zone utilities.
...
...
src/main/java/org/b3log/solo/util/comparator/ArticleCreateDateComparator.java
View file @
83955412
...
@@ -16,11 +16,12 @@
...
@@ -16,11 +16,12 @@
package
org
.
b3log
.
solo
.
util
.
comparator
;
package
org
.
b3log
.
solo
.
util
.
comparator
;
import
java.util.Comparator
;
import
java.util.Date
;
import
org.b3log.solo.model.Article
;
import
org.b3log.solo.model.Article
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.Comparator
;
import
java.util.Date
;
/**
/**
* Article comparator by create date.
* Article comparator by create date.
...
...
src/main/java/org/b3log/solo/util/comparator/ArticleUpdateDateComparator.java
View file @
83955412
...
@@ -16,11 +16,12 @@
...
@@ -16,11 +16,12 @@
package
org
.
b3log
.
solo
.
util
.
comparator
;
package
org
.
b3log
.
solo
.
util
.
comparator
;
import
java.util.Comparator
;
import
java.util.Date
;
import
org.b3log.solo.model.Article
;
import
org.b3log.solo.model.Article
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.Comparator
;
import
java.util.Date
;
/**
/**
* Article comparator by update date.
* Article comparator by update date.
...
...
src/main/java/org/b3log/solo/util/comparator/TagRefCntComparator.java
View file @
83955412
...
@@ -16,10 +16,11 @@
...
@@ -16,10 +16,11 @@
package
org
.
b3log
.
solo
.
util
.
comparator
;
package
org
.
b3log
.
solo
.
util
.
comparator
;
import
java.util.Comparator
;
import
org.b3log.solo.model.Tag
;
import
org.b3log.solo.model.Tag
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.Comparator
;
/**
/**
* Tag comparator by reference count descent.
* Tag comparator by reference count descent.
...
...
src/main/webapp/css/default-admin.min.css
View file @
83955412
...
@@ -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
:
"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
}
.content-reset
{
font-family
:
"Helvetica Neue"
,
"Luxi Sans"
,
"DejaVu Sans"
,
Tahoma
,
"Hiragino Sans GB"
,
"Microsoft Yahei"
,
sans-serif
;
word-wrap
:
break-word
;
overflow
:
hidden
;
line-height
:
1.5
}
.content-reset
ul
,
.content-reset
ol
{
padding-left
:
2em
;
margin-top
:
0
;
margin-bottom
:
16px
}
.content-reset
h1
,
.content-reset
h2
,
.content-reset
h3
,
.content-reset
h4
,
.content-reset
h5
,
.content-reset
h6
{
margin-top
:
24px
;
margin-bottom
:
16px
;
font-weight
:
600
;
line-height
:
1.25
}
.content-reset
h1
{
padding-bottom
:
.3em
;
font-size
:
2em
}
.content-reset
h2
{
padding-bottom
:
.3em
;
font-size
:
1.5em
}
.content-reset
h3
{
font-size
:
1.25em
}
.content-reset
h4
{
font-size
:
1em
}
.content-reset
h5
{
font-size
:
.875em
}
.content-reset
h6
{
font-size
:
.85em
}
.content-reset
p
{
margin-top
:
0
;
margin-bottom
:
16px
}
.content-reset
blockquote
{
padding
:
0
1em
;
color
:
#777
;
border-left
:
.25em
solid
#ddd
;
margin-bottom
:
16px
}
.content-reset
blockquote
p
{
margin
:
0
}
.content-reset
iframe
{
border
:
1px
solid
#ccc
}
.content-reset
table
{
width
:
100%
;
border
:
1px
solid
#dedede
;
margin
:
15px
auto
;
border-collapse
:
collapse
;
empty-cells
:
show
}
.content-reset
thead
{
text-align
:
center
}
.content-reset
td
,
.content-reset
th
{
height
:
35px
;
border
:
1px
solid
#dedede
;
padding
:
0
10px
}
.content-reset
th
{
font-weight
:
bold
;
text-align
:
center
!important
;
background
:
rgba
(
158
,
188
,
226
,
0.2
)}
.content-reset
tbody
tr
:nth-child
(
2n
)
{
background
:
rgba
(
158
,
188
,
226
,
0.12
)}
.content-reset
tr
:hover
{
background
:
#efefef
}
.content-reset
code
{
padding
:
.2em
.4em
;
margin
:
0
;
font-size
:
85%
;
background-color
:
rgba
(
252
,
41
,
41
,
0.12
);
border-radius
:
3px
;
color
:
#d23f31
;
font-family
:
mononoki
,
Consolas
,
"Liberation Mono"
,
Menlo
,
Courier
,
monospace
}
.content-reset
pre
>
code
{
padding
:
.5em
;
border-radius
:
0
;
color
:
#333
;
background-color
:
rgba
(
0
,
0
,
0
,
0.04
);
background-image
:
url(../images/code-bg.png)
;
background-size
:
20px
20px
;
border-radius
:
5px
}
.content-reset
kbd
{
display
:
inline-block
;
padding
:
3px
5px
;
font
:
11px
Consolas
,
"Liberation Mono"
,
Menlo
,
Courier
,
monospace
;
line-height
:
10px
;
color
:
#555
;
vertical-align
:
middle
;
background-color
:
#fcfcfc
;
border
:
solid
1px
#ccc
;
border-bottom-color
:
#bbb
;
border-radius
:
3px
;
box-shadow
:
inset
0
-1px
0
#bbb
}
[
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
;
min-height
:
100px
}
#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
:
80
}
#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
:
baseline
;
cursor
:
pointer
;
user-select
:
none
;
background-image
:
none
;
border
:
1px
solid
#1fb5ad
;
border-radius
:
4px
;
background-color
:
#1fb5ad
;
color
:
#fff
;
height
:
auto
;
outline
:
0
;
line-height
:
18px
}
.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
}
#articleUpload
input
{
width
:
170px
}
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
}
#pagePagePanel
{
margin-top
:
0
}
#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
:
#fff
;
border
:
1px
solid
#ddd
;
color
:
#00c
;
display
:
none
;
overflow
:
auto
;
padding
:
2px
;
position
:
absolute
;
z-index
:
10
;
width
:
50%
;
border-top
:
0
}
.completed-panel
a
{
display
:
block
;
text-decoration
:
none
;
line-height
:
26px
;
padding
:
0
5px
}
.completed-panel
a
.selected
{
background-color
:
#f5f5f5
;
color
:
#fa8564
}
.completed-ck
{
margin-top
:
9px
}
.completed-ck
span
,
.signs
button
{
margin
:
5px
10px
5px
0
;
display
:
inline-block
;
background-color
:
#c7cbd6
;
border-color
:
#c7cbd6
}
.completed-ck
span
:hover
,
.signs
button
: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
}
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
}
.content-reset
{
font-family
:
"Helvetica Neue"
,
"Luxi Sans"
,
"DejaVu Sans"
,
Tahoma
,
"Hiragino Sans GB"
,
"Microsoft Yahei"
,
sans-serif
;
word-wrap
:
break-word
;
overflow
:
hidden
;
line-height
:
1.5
}
.content-reset
ul
,
.content-reset
ol
{
padding-left
:
2em
;
margin-top
:
0
;
margin-bottom
:
16px
}
.content-reset
h1
,
.content-reset
h2
,
.content-reset
h3
,
.content-reset
h4
,
.content-reset
h5
,
.content-reset
h6
{
margin-top
:
24px
;
margin-bottom
:
16px
;
font-weight
:
600
;
line-height
:
1.25
}
.content-reset
h1
{
padding-bottom
:
.3em
;
font-size
:
2em
}
.content-reset
h2
{
padding-bottom
:
.3em
;
font-size
:
1.5em
}
.content-reset
h3
{
font-size
:
1.25em
}
.content-reset
h4
{
font-size
:
1em
}
.content-reset
h5
{
font-size
:
.875em
}
.content-reset
h6
{
font-size
:
.85em
}
.content-reset
p
{
margin-top
:
0
;
margin-bottom
:
16px
}
.content-reset
blockquote
{
padding
:
0
1em
;
color
:
#777
;
border-left
:
.25em
solid
#ddd
;
margin-bottom
:
16px
}
.content-reset
blockquote
p
{
margin
:
0
}
.content-reset
iframe
{
border
:
1px
solid
#ccc
}
.content-reset
table
{
width
:
100%
;
border
:
1px
solid
#dedede
;
margin
:
15px
auto
;
border-collapse
:
collapse
;
empty-cells
:
show
}
.content-reset
thead
{
text-align
:
center
}
.content-reset
td
,
.content-reset
th
{
height
:
35px
;
border
:
1px
solid
#dedede
;
padding
:
0
10px
}
.content-reset
th
{
font-weight
:
bold
;
text-align
:
center
!important
;
background
:
rgba
(
158
,
188
,
226
,
0.2
)}
.content-reset
tbody
tr
:nth-child
(
2n
)
{
background
:
rgba
(
158
,
188
,
226
,
0.12
)}
.content-reset
tr
:hover
{
background
:
#efefef
}
.content-reset
code
{
padding
:
.2em
.4em
;
margin
:
0
;
font-size
:
85%
;
background-color
:
rgba
(
252
,
41
,
41
,
0.12
);
border-radius
:
3px
;
color
:
#d23f31
;
font-family
:
mononoki
,
Consolas
,
"Liberation Mono"
,
Menlo
,
Courier
,
monospace
}
.content-reset
pre
>
code
{
padding
:
.5em
;
border-radius
:
0
;
color
:
#333
;
background-color
:
rgba
(
0
,
0
,
0
,
0.04
);
background-image
:
url(../images/code-bg.png)
;
background-size
:
20px
20px
;
border-radius
:
5px
}
.content-reset
kbd
{
display
:
inline-block
;
padding
:
3px
5px
;
font
:
11px
Consolas
,
"Liberation Mono"
,
Menlo
,
Courier
,
monospace
;
line-height
:
10px
;
color
:
#555
;
vertical-align
:
middle
;
background-color
:
#fcfcfc
;
border
:
solid
1px
#ccc
;
border-bottom-color
:
#bbb
;
border-radius
:
3px
;
box-shadow
:
inset
0
-1px
0
#bbb
}
button
,
.completed-ck
span
{
padding
:
6px
12px
;
margin-bottom
:
0
;
font-size
:
14px
;
font-weight
:
400
;
text-align
:
center
;
white-space
:
nowrap
;
vertical-align
:
baseline
;
cursor
:
pointer
;
user-select
:
none
;
background-image
:
none
;
border
:
1px
solid
#1fb5ad
;
border-radius
:
4px
;
background-color
:
#1fb5ad
;
color
:
#fff
;
height
:
auto
;
outline
:
0
;
line-height
:
18px
}
button
:hover
{
background-color
:
#1ca59e
;
border-color
:
#1ca59e
}
@font-face
{
font-family
:
'icomoon'
;
src
:
url('fonts/icomoon.eot?f71494')
;
src
:
url('fonts/icomoon.eot?f71494#iefix')
format
(
'embedded-opentype'
),
url('fonts/icomoon.ttf?f71494')
format
(
'truetype'
),
url('fonts/icomoon.woff?f71494')
format
(
'woff'
),
url('fonts/icomoon.svg?f71494#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
}
.icon-move-down
:before
{
content
:
"\e90a"
}
.icon-move-up
:before
{
content
:
"\e90b"
}
.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"
}
.icon-chevron-up
:before
{
content
:
"\e619"
}
.icon-reply
:before
{
content
:
"\e61a"
}
.icon-clock
:before
{
content
:
"\e61b"
}
.icon-compass
:before
{
content
:
"\e61c"
}
.icon-heart
:before
{
content
:
"\e9da"
}
.icon-locked
:before
{
content
:
"\e61e"
}
.icon-close
:before
{
content
:
"\e909"
}
.icon-wechat
:before
{
content
:
"\e907"
}
.icon-upload
:before
{
content
:
"\f0ee"
}
.icon-copy
:before
{
content
:
"\e908"
}
.icon-time
:before
{
content
:
"\e906"
}
.icon-sortasc
:before
{
content
:
"\e905"
}
a
[
class
^=
"icon-"
],
a
[
class
*=
" icon-"
]
{
color
:
#333
}
a
[
class
^=
"icon-"
]
:hover
,
a
[
class
*=
" icon-"
]
:hover
{
text-decoration
:
none
;
color
:
#4183c4
}
.aboutIcon
{
background-position
:
-16px
-48px
}
.icon-move-down
,
.icon-move-up
{
cursor
:
pointer
}
#allPanel
{
height
:
auto
;
min-height
:
100%
;
position
:
relative
}
#tabsPanel
{
margin
:
50px
0
0
240px
;
padding
:
15px
;
min-height
:
100px
}
#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_category-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
:
80
}
#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
}
#tabs
.icon-chevron-up
,
#tabs
.icon-chevron-down
{
margin-right
:
10px
}
.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
}
.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
}
#articleUpload
input
{
width
:
170px
}
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
}
#pagePagePanel
{
margin-top
:
0
}
#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
:
#fff
;
border
:
1px
solid
#ddd
;
color
:
#00c
;
display
:
none
;
overflow
:
auto
;
padding
:
2px
;
position
:
absolute
;
z-index
:
10
;
width
:
50%
;
border-top
:
0
}
.completed-panel
a
{
display
:
block
;
text-decoration
:
none
;
line-height
:
26px
;
padding
:
0
5px
}
.completed-panel
a
.selected
{
background-color
:
#f5f5f5
;
color
:
#fa8564
}
.completed-ck
{
margin-top
:
9px
}
.completed-ck
span
,
.signs
button
{
margin
:
5px
10px
5px
0
;
display
:
inline-block
;
background-color
:
#c7cbd6
;
border-color
:
#c7cbd6
}
.completed-ck
span
:hover
,
.signs
button
:hover
{
background-color
:
#b0b5b9
;
border-color
:
#b0b5b9
}
.completed-ck
span
.selected
,
.signs
button
.selected
{
background-color
:
#1ca59e
;
border-color
:
#1ca59e
;
color
:
#fff
}
.dialog-background
{
background-color
:
#000
;
display
:
none
;
filter
:
alpha
(
opacity
=
30
);
height
:
100%
;
left
:
0
;
opacity
:
.3
;
position
:
fixed
;
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
:
#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-header-bg
.icon-close
{
cursor
:
pointer
;
float
:
right
;
height
:
18px
;
margin-top
:
6px
;
padding
:
3px
;
width
:
22px
}
.dialog-main
{
background-color
:
#fff
;
border
:
1px
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-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
src/main/webapp/css/default-base.min.css
View file @
83955412
...
@@ -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
}
.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
}
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
}
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
src/main/webapp/css/selection..min.css
0 → 100644
View file @
83955412
/**
* Copyright (c) 2010-2017, 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.
*/
src/main/webapp/js/admin/latkeAdmin.js
View file @
83955412
...
@@ -2109,7 +2109,7 @@ admin.register["draft-list"] = {
...
@@ -2109,7 +2109,7 @@ admin.register["draft-list"] = {
*
*
* @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.2.5, Nov 8, 2016
* @version 1.
2.2.5, Apr 9, 2017
*/
*/
/* page-list 相关操作 */
/* page-list 相关操作 */
...
@@ -2231,7 +2231,7 @@ admin.pageList = {
...
@@ -2231,7 +2231,7 @@ admin.pageList = {
}
else
{
}
else
{
pageData
[
i
].
pageOrder
=
'
<div class="table-center" style="width:14px">
\
pageData
[
i
].
pageOrder
=
'
<div class="table-center" style="width:14px">
\
<span onclick="admin.pageList.changeOrder(
'
+
pages
[
i
].
oId
+
'
,
'
+
i
+
'
,
\'
down
\'
);"
\
<span onclick="admin.pageList.changeOrder(
'
+
pages
[
i
].
oId
+
'
,
'
+
i
+
'
,
\'
down
\'
);"
\
class="
table-downIco
n"></span></div>
'
;
class="
icon-move-dow
n"></span></div>
'
;
}
}
}
else
if
(
i
===
pages
.
length
-
1
)
{
}
else
if
(
i
===
pages
.
length
-
1
)
{
pageData
[
i
].
pageOrder
=
'
<div class="table-center" style="width:14px">
\
pageData
[
i
].
pageOrder
=
'
<div class="table-center" style="width:14px">
\
...
@@ -2240,7 +2240,7 @@ admin.pageList = {
...
@@ -2240,7 +2240,7 @@ admin.pageList = {
}
else
{
}
else
{
pageData
[
i
].
pageOrder
=
'
<div class="table-center" style="width:38px">
\
pageData
[
i
].
pageOrder
=
'
<div class="table-center" style="width:38px">
\
<span onclick="admin.pageList.changeOrder(
'
+
pages
[
i
].
oId
+
'
,
'
+
i
+
'
,
\'
up
\'
);" class="icon-move-up"></span>
\
<span onclick="admin.pageList.changeOrder(
'
+
pages
[
i
].
oId
+
'
,
'
+
i
+
'
,
\'
up
\'
);" class="icon-move-up"></span>
\
<span onclick="admin.pageList.changeOrder(
'
+
pages
[
i
].
oId
+
'
,
'
+
i
+
'
,
\'
down
\'
);" class="
table-downIco
n"></span>
\
<span onclick="admin.pageList.changeOrder(
'
+
pages
[
i
].
oId
+
'
,
'
+
i
+
'
,
\'
down
\'
);" class="
icon-move-dow
n"></span>
\
</div>
'
;
</div>
'
;
}
}
...
@@ -2701,7 +2701,7 @@ admin.register.others = {
...
@@ -2701,7 +2701,7 @@ admin.register.others = {
*
*
* @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.4, Feb 23, 2013
* @version 1.
1.1.4, Apr 9, 2017
*/
*/
/* link-list 相关操作 */
/* link-list 相关操作 */
...
@@ -2743,7 +2743,7 @@ admin.linkList = {
...
@@ -2743,7 +2743,7 @@ admin.linkList = {
$
(
"
#updateLink
"
).
dialog
({
$
(
"
#updateLink
"
).
dialog
({
width
:
700
,
width
:
700
,
height
:
18
0
,
height
:
21
0
,
"
modal
"
:
true
,
"
modal
"
:
true
,
"
hideFooter
"
:
true
"
hideFooter
"
:
true
});
});
...
@@ -2785,7 +2785,7 @@ admin.linkList = {
...
@@ -2785,7 +2785,7 @@ admin.linkList = {
linkData
[
i
].
linkOrder
=
""
;
linkData
[
i
].
linkOrder
=
""
;
}
else
{
}
else
{
linkData
[
i
].
linkOrder
=
'
<div class="table-center" style="width:14px">
\
linkData
[
i
].
linkOrder
=
'
<div class="table-center" style="width:14px">
\
<span onclick="admin.linkList.changeOrder(
'
+
links
[
i
].
oId
+
'
,
'
+
i
+
'
,
\'
down
\'
);" class="
table-downIco
n"></span>
\
<span onclick="admin.linkList.changeOrder(
'
+
links
[
i
].
oId
+
'
,
'
+
i
+
'
,
\'
down
\'
);" class="
icon-move-dow
n"></span>
\
</div>
'
;
</div>
'
;
}
}
}
else
if
(
i
===
links
.
length
-
1
)
{
}
else
if
(
i
===
links
.
length
-
1
)
{
...
@@ -2795,7 +2795,7 @@ admin.linkList = {
...
@@ -2795,7 +2795,7 @@ admin.linkList = {
}
else
{
}
else
{
linkData
[
i
].
linkOrder
=
'
<div class="table-center" style="width:38px">
\
linkData
[
i
].
linkOrder
=
'
<div class="table-center" style="width:38px">
\
<span onclick="admin.linkList.changeOrder(
'
+
links
[
i
].
oId
+
'
,
'
+
i
+
'
,
\'
up
\'
);" class="icon-move-up"></span>
\
<span onclick="admin.linkList.changeOrder(
'
+
links
[
i
].
oId
+
'
,
'
+
i
+
'
,
\'
up
\'
);" class="icon-move-up"></span>
\
<span onclick="admin.linkList.changeOrder(
'
+
links
[
i
].
oId
+
'
,
'
+
i
+
'
,
\'
down
\'
);" class="
table-downIco
n"></span>
\
<span onclick="admin.linkList.changeOrder(
'
+
links
[
i
].
oId
+
'
,
'
+
i
+
'
,
\'
down
\'
);" class="
icon-move-dow
n"></span>
\
</div>
'
;
</div>
'
;
}
}
...
@@ -3504,7 +3504,7 @@ admin.register["plugin-list"] = {
...
@@ -3504,7 +3504,7 @@ admin.register["plugin-list"] = {
"
obj
"
:
admin
.
pluginList
,
"
obj
"
:
admin
.
pluginList
,
"
init
"
:
admin
.
pluginList
.
init
,
"
init
"
:
admin
.
pluginList
.
init
,
"
refresh
"
:
function
()
{
"
refresh
"
:
function
()
{
admin
.
claerTip
(
);
$
(
"
#loadMsg
"
).
text
(
""
);
}
}
};
};
/*
/*
...
@@ -3568,7 +3568,7 @@ admin.userList = {
...
@@ -3568,7 +3568,7 @@ admin.userList = {
$
(
"
#userUpdate
"
).
dialog
({
$
(
"
#userUpdate
"
).
dialog
({
width
:
700
,
width
:
700
,
height
:
25
0
,
height
:
30
0
,
"
modal
"
:
true
,
"
modal
"
:
true
,
"
hideFooter
"
:
true
"
hideFooter
"
:
true
});
});
...
@@ -3888,7 +3888,7 @@ admin.register["user-list"] = {
...
@@ -3888,7 +3888,7 @@ admin.register["user-list"] = {
*
*
* @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.
0.1, Apr 7
, 2017
* @version 1.0.
1.1, Apr 9
, 2017
* @since 2.0.0
* @since 2.0.0
*/
*/
...
@@ -3910,7 +3910,7 @@ admin.categoryList = {
...
@@ -3910,7 +3910,7 @@ admin.categoryList = {
width
:
60
width
:
60
},
{
},
{
style
:
"
padding-left: 12px;
"
,
style
:
"
padding-left: 12px;
"
,
text
:
Label
.
linkT
itleLabel
,
text
:
Label
.
t
itleLabel
,
index
:
"
categoryTitle
"
,
index
:
"
categoryTitle
"
,
width
:
230
width
:
230
},
{
},
{
...
@@ -3920,7 +3920,7 @@ admin.categoryList = {
...
@@ -3920,7 +3920,7 @@ admin.categoryList = {
width
:
230
width
:
230
},
{
},
{
style
:
"
padding-left: 12px;
"
,
style
:
"
padding-left: 12px;
"
,
text
:
Label
.
linkD
escriptionLabel
,
text
:
Label
.
d
escriptionLabel
,
index
:
"
categoryDesc
"
,
index
:
"
categoryDesc
"
,
minWidth
:
180
minWidth
:
180
}]);
}]);
...
@@ -3968,7 +3968,7 @@ admin.categoryList = {
...
@@ -3968,7 +3968,7 @@ admin.categoryList = {
categoryData
[
i
].
linkOrder
=
""
;
categoryData
[
i
].
linkOrder
=
""
;
}
else
{
}
else
{
categoryData
[
i
].
linkOrder
=
'
<div class="table-center" style="width:14px">
\
categoryData
[
i
].
linkOrder
=
'
<div class="table-center" style="width:14px">
\
<span onclick="admin.categoryList.changeOrder(
'
+
categories
[
i
].
oId
+
'
,
'
+
i
+
'
,
\'
down
\'
);" class="
table-downIco
n"></span>
\
<span onclick="admin.categoryList.changeOrder(
'
+
categories
[
i
].
oId
+
'
,
'
+
i
+
'
,
\'
down
\'
);" class="
icon-move-dow
n"></span>
\
</div>
'
;
</div>
'
;
}
}
}
else
if
(
i
===
categories
.
length
-
1
)
{
}
else
if
(
i
===
categories
.
length
-
1
)
{
...
@@ -3977,8 +3977,8 @@ admin.categoryList = {
...
@@ -3977,8 +3977,8 @@ admin.categoryList = {
</div>
'
;
</div>
'
;
}
else
{
}
else
{
categoryData
[
i
].
linkOrder
=
'
<div class="table-center" style="width:38px">
\
categoryData
[
i
].
linkOrder
=
'
<div class="table-center" style="width:38px">
\
<span onclick="admin.categoryList.changeOrder(
'
+
categories
[
i
].
oId
+
'
,
'
+
i
+
'
,
\'
up
\'
);" class="
table-upIcon
"></span>
\
<span onclick="admin.categoryList.changeOrder(
'
+
categories
[
i
].
oId
+
'
,
'
+
i
+
'
,
\'
up
\'
);" class="
icon-move-up
"></span>
\
<span onclick="admin.categoryList.changeOrder(
'
+
categories
[
i
].
oId
+
'
,
'
+
i
+
'
,
\'
down
\'
);" class="
table-downIco
n"></span>
\
<span onclick="admin.categoryList.changeOrder(
'
+
categories
[
i
].
oId
+
'
,
'
+
i
+
'
,
\'
down
\'
);" class="
icon-move-dow
n"></span>
\
</div>
'
;
</div>
'
;
}
}
...
...
src/main/webapp/js/admin/latkeAdmin.min.js
View file @
83955412
This source diff could not be displayed because it is too large. You can
view the blob
instead.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment