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
62c17b5d
Unverified
Commit
62c17b5d
authored
Sep 25, 2018
by
Liang Ding
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
🎨
#12527
parent
d8f875ff
Changes
6
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
35 additions
and
123 deletions
+35
-123
src/main/java/org/b3log/solo/processor/console/AdminConsole.java
...n/java/org/b3log/solo/processor/console/AdminConsole.java
+4
-11
src/main/java/org/b3log/solo/processor/console/ArticleConsole.java
...java/org/b3log/solo/processor/console/ArticleConsole.java
+12
-75
src/main/java/org/b3log/solo/processor/console/PluginConsole.java
.../java/org/b3log/solo/processor/console/PluginConsole.java
+3
-3
src/main/java/org/b3log/solo/processor/console/common/ConsoleAuthAdvice.java
...3log/solo/processor/console/common/ConsoleAuthAdvice.java
+15
-12
src/main/webapp/WEB-INF/web.xml
src/main/webapp/WEB-INF/web.xml
+0
-21
src/test/resources/admin-about.ftl
src/test/resources/admin-about.ftl
+1
-1
No files found.
src/main/java/org/b3log/solo/processor/console/AdminConsole.java
View file @
62c17b5d
...
...
@@ -38,6 +38,7 @@ import org.b3log.latke.service.LangPropsService;
import
org.b3log.latke.service.ServiceException
;
import
org.b3log.latke.servlet.HTTPRequestContext
;
import
org.b3log.latke.servlet.HTTPRequestMethod
;
import
org.b3log.latke.servlet.annotation.Before
;
import
org.b3log.latke.servlet.annotation.RequestProcessing
;
import
org.b3log.latke.servlet.annotation.RequestProcessor
;
import
org.b3log.latke.servlet.renderer.freemarker.AbstractFreeMarkerRenderer
;
...
...
@@ -48,6 +49,7 @@ import org.b3log.solo.model.Common;
import
org.b3log.solo.model.Option
;
import
org.b3log.solo.model.Skin
;
import
org.b3log.solo.model.UserExt
;
import
org.b3log.solo.processor.console.common.ConsoleAuthAdvice
;
import
org.b3log.solo.processor.renderer.ConsoleRenderer
;
import
org.b3log.solo.processor.util.Filler
;
import
org.b3log.solo.service.ExportService
;
...
...
@@ -73,10 +75,11 @@ import java.util.*;
* Admin console render processing.
*
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.7.0.
4, Aug 8
, 2018
* @version 1.7.0.
5, Sep 25
, 2018
* @since 0.4.1
*/
@RequestProcessor
@Before
(
adviceClass
=
ConsoleAuthAdvice
.
class
)
public
class
AdminConsole
{
/**
...
...
@@ -141,26 +144,18 @@ public class AdminConsole {
@RequestProcessing
(
value
=
"/admin-index.do"
,
method
=
HTTPRequestMethod
.
GET
)
public
void
showAdminIndex
(
final
HttpServletRequest
request
,
final
HTTPRequestContext
context
)
{
final
AbstractFreeMarkerRenderer
renderer
=
new
ConsoleRenderer
();
context
.
setRenderer
(
renderer
);
final
String
templateName
=
"admin-index.ftl"
;
renderer
.
setTemplateName
(
templateName
);
final
Map
<
String
,
String
>
langs
=
langPropsService
.
getAll
(
Latkes
.
getLocale
());
final
Map
<
String
,
Object
>
dataModel
=
renderer
.
getDataModel
();
dataModel
.
putAll
(
langs
);
final
JSONObject
currentUser
=
userQueryService
.
getCurrentUser
(
request
);
final
String
userName
=
currentUser
.
optString
(
User
.
USER_NAME
);
dataModel
.
put
(
User
.
USER_NAME
,
userName
);
final
String
roleName
=
currentUser
.
optString
(
User
.
USER_ROLE
);
dataModel
.
put
(
User
.
USER_ROLE
,
roleName
);
final
String
email
=
currentUser
.
optString
(
User
.
USER_EMAIL
);
final
String
userAvatar
=
currentUser
.
optString
(
UserExt
.
USER_AVATAR
);
if
(
StringUtils
.
isNotBlank
(
userAvatar
))
{
dataModel
.
put
(
Common
.
GRAVATAR
,
userAvatar
);
...
...
@@ -171,7 +166,6 @@ public class AdminConsole {
try
{
final
JSONObject
preference
=
preferenceQueryService
.
getPreference
();
dataModel
.
put
(
Option
.
ID_C_LOCALE_STRING
,
preference
.
getString
(
Option
.
ID_C_LOCALE_STRING
));
dataModel
.
put
(
Option
.
ID_C_BLOG_TITLE
,
preference
.
getString
(
Option
.
ID_C_BLOG_TITLE
));
dataModel
.
put
(
Option
.
ID_C_BLOG_SUBTITLE
,
preference
.
getString
(
Option
.
ID_C_BLOG_SUBTITLE
));
...
...
@@ -183,7 +177,6 @@ public class AdminConsole {
dataModel
.
put
(
Option
.
ID_C_LOCALE_STRING
,
preference
.
getString
(
Option
.
ID_C_LOCALE_STRING
));
dataModel
.
put
(
Option
.
ID_C_EDITOR_TYPE
,
preference
.
getString
(
Option
.
ID_C_EDITOR_TYPE
));
dataModel
.
put
(
Skin
.
SKIN_DIR_NAME
,
preference
.
getString
(
Skin
.
SKIN_DIR_NAME
));
Keys
.
fillRuntime
(
dataModel
);
filler
.
fillMinified
(
dataModel
);
}
catch
(
final
Exception
e
)
{
...
...
src/main/java/org/b3log/solo/processor/console/ArticleConsole.java
View file @
62c17b5d
This diff is collapsed.
Click to expand it.
src/main/java/org/b3log/solo/processor/console/PluginConsole.java
View file @
62c17b5d
...
...
@@ -31,7 +31,7 @@ import org.b3log.latke.servlet.annotation.RequestProcessing;
import
org.b3log.latke.servlet.annotation.RequestProcessor
;
import
org.b3log.latke.servlet.renderer.JSONRenderer
;
import
org.b3log.latke.util.Requests
;
import
org.b3log.solo.processor.console.common.
Process
AuthAdvice
;
import
org.b3log.solo.processor.console.common.
Console
AuthAdvice
;
import
org.b3log.solo.processor.renderer.ConsoleRenderer
;
import
org.b3log.solo.service.PluginMgmtService
;
import
org.b3log.solo.service.PluginQueryService
;
...
...
@@ -45,12 +45,12 @@ import java.util.Map;
* Plugin console request processing.
*
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @author <a href="
mailto:wmainlove@gmail.com
">Love Yao</a>
* @author <a href="
https://hacpai.com/member/mainlove
">Love Yao</a>
* @version 1.1.0.2, Sep 20, 2018
* @since 0.4.0
*/
@RequestProcessor
@Before
(
adviceClass
=
Process
AuthAdvice
.
class
)
@Before
(
adviceClass
=
Console
AuthAdvice
.
class
)
public
class
PluginConsole
{
/**
...
...
src/main/java/org/b3log/solo/processor/console/common/
Process
AuthAdvice.java
→
src/main/java/org/b3log/solo/processor/console/common/
Console
AuthAdvice.java
View file @
62c17b5d
...
...
@@ -17,47 +17,50 @@
*/
package
org
.
b3log
.
solo
.
processor
.
console
.
common
;
import
org.b3log.latke.Keys
;
import
org.b3log.latke.ioc.LatkeBeanManager
;
import
org.b3log.latke.ioc.Lifecycle
;
import
org.b3log.latke.ioc.inject.Named
;
import
org.b3log.latke.ioc.inject.Singleton
;
import
org.b3log.latke.logging.Level
;
import
org.b3log.latke.logging.Logger
;
import
org.b3log.latke.servlet.HTTPRequestContext
;
import
org.b3log.latke.servlet.advice.BeforeRequestProcessAdvice
;
import
org.b3log.latke.servlet.advice.RequestProcessAdviceException
;
import
org.b3log.solo.service.UserQueryService
;
import
org.json.JSONObject
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.IOException
;
import
java.util.Map
;
/**
* The common auth check before advice for admin console.
*
* @author <a href="mailto:wmainlove@gmail.com">Love Yao</a>
* @author <a href="http://88250.b3log.org">Liang Ding</a>
* @version 1.0.1.1, Sep 25, 2018
* @since 2.9.5
*/
@Named
@Singleton
public
class
Process
AuthAdvice
extends
BeforeRequestProcessAdvice
{
public
class
Console
AuthAdvice
extends
BeforeRequestProcessAdvice
{
/**
* Logger.
*/
private
static
final
Logger
LOGGER
=
Logger
.
getLogger
(
Process
AuthAdvice
.
class
);
private
static
final
Logger
LOGGER
=
Logger
.
getLogger
(
Console
AuthAdvice
.
class
);
@Override
public
void
doAdvice
(
final
HTTPRequestContext
context
,
final
Map
<
String
,
Object
>
args
)
{
public
void
doAdvice
(
final
HTTPRequestContext
context
,
final
Map
<
String
,
Object
>
args
)
throws
RequestProcessAdviceException
{
final
LatkeBeanManager
beanManager
=
Lifecycle
.
getBeanManager
();
final
UserQueryService
userQueryService
=
beanManager
.
getReference
(
UserQueryService
.
class
);
if
(!
userQueryService
.
isAdminLoggedIn
(
context
.
getRequest
()))
{
try
{
context
.
getResponse
().
sendError
(
HttpServletResponse
.
SC_FORBIDDEN
);
}
catch
(
final
IOException
e
)
{
LOGGER
.
log
(
Level
.
ERROR
,
"Response sends error failed"
,
e
);
}
final
HttpServletRequest
request
=
context
.
getRequest
();
if
(!
userQueryService
.
isLoggedIn
(
request
,
context
.
getResponse
()))
{
final
JSONObject
exception401
=
new
JSONObject
();
exception401
.
put
(
Keys
.
MSG
,
"Unauthorized to request ["
+
request
.
getRequestURI
()
+
"]"
);
exception401
.
put
(
Keys
.
STATUS_CODE
,
HttpServletResponse
.
SC_UNAUTHORIZED
);
throw
new
RequestProcessAdviceException
(
exception401
);
}
}
}
src/main/webapp/WEB-INF/web.xml
View file @
62c17b5d
...
...
@@ -46,27 +46,6 @@
<url-pattern>
/*
</url-pattern>
</filter-mapping>
<filter>
<filter-name>
AuthFilter
</filter-name>
<filter-class>
org.b3log.solo.filter.AuthFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>
AuthFilter
</filter-name>
<url-pattern>
/admin-index.do
</url-pattern>
<url-pattern>
/admin-main.do
</url-pattern>
<url-pattern>
/admin-article.do
</url-pattern>
<url-pattern>
/admin-article-list.do
</url-pattern>
<url-pattern>
/admin-comment-list.do
</url-pattern>
<url-pattern>
/admin-link-list.do
</url-pattern>
<url-pattern>
/admin-preference.do
</url-pattern>
<url-pattern>
/admin-page-list.do
</url-pattern>
<url-pattern>
/admin-others.do
</url-pattern>
<url-pattern>
/admin-draft-list.do
</url-pattern>
<url-pattern>
/admin-user-list.do
</url-pattern>
<url-pattern>
/admin-plugin-list.do
</url-pattern>
<url-pattern>
/admin-about.do
</url-pattern>
<url-pattern>
/fix/*
</url-pattern>
</filter-mapping>
<filter>
<filter-name>
PermalinkFilter
</filter-name>
<filter-class>
org.b3log.solo.filter.PermalinkFilter
</filter-class>
...
...
src/test/resources/admin-about.ftl
View file @
62c17b5d
...
...
@@ -81,7 +81,7 @@
<ul>
<li><a target="_blank" href="http://88250.b3log.org">D</a></li>
<li><a target="_blank" href="http://vanessa.b3log.org">V</a></li>
<li><a target="_blank" href="
mailto:wmainlove@gmail.com
">mainlove</a></li>
<li><a target="_blank" href="
https://hacpai.com/member/mainlove
">mainlove</a></li>
<li><a target="_blank" href="http://people.apache.org/%7Edongxu">DX</a></li>
<li><a target="_blank" href="http://mizhichashao.com">大叔</a></li>
<li><a target="_blank" href="http://www.jiangzezhou.com">javen.jiang</a></li>
...
...
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