You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@roller.apache.org by gm...@apache.org on 2014/07/29 18:45:58 UTC
svn commit: r1614415 - in /roller/trunk/app/src/main:
java/org/apache/roller/weblogger/ui/struts2/editor/
java/org/apache/roller/weblogger/ui/struts2/util/ resources/
resources/org/apache/roller/weblogger/ui/struts2/editor/
webapp/WEB-INF/jsps/editor/
Author: gmazza
Date: Tue Jul 29 16:45:58 2014
New Revision: 1614415
URL: http://svn.apache.org/r1614415
Log:
Default permission unless manually overridden upped from POST to ADMIN, cancel functionality for deleting blog entries now routing properly back to page where delete button was pressed, those with edit_draft permission can now select images for their blog articles (although still not allowed to create images.)
Modified:
roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/EntryRemove.java
roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/MediaFileBase.java
roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/MediaFileImageChooser.java
roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/util/UIAction.java
roller/trunk/app/src/main/resources/org/apache/roller/weblogger/ui/struts2/editor/editor-menu.xml
roller/trunk/app/src/main/resources/struts.xml
roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/EntryRemove.jsp
roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/EntryRemoveViaList.jsp
Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/EntryRemove.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/EntryRemove.java?rev=1614415&r1=1614414&r2=1614415&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/EntryRemove.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/EntryRemove.java Tue Jul 29 16:45:58 2014
@@ -45,9 +45,9 @@ public class EntryRemove extends EntryBa
private WeblogEntry removeEntry = null;
public EntryRemove() {
- this.actionName = "entryRemove";
+ // actionName defined in struts.xml as it's different based on the caller
this.desiredMenu = "editor";
- this.pageTitle = "weblogEdit.title.newEntry";
+ this.pageTitle = "weblogEdit.deleteEntry";
}
public void myPrepare() {
Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/MediaFileBase.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/MediaFileBase.java?rev=1614415&r1=1614414&r2=1614415&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/MediaFileBase.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/MediaFileBase.java Tue Jul 29 16:45:58 2014
@@ -30,6 +30,7 @@ import org.apache.roller.weblogger.pojos
import org.apache.roller.weblogger.pojos.MediaFileDirectory;
import org.apache.roller.weblogger.pojos.MediaFileDirectoryComparator;
import org.apache.roller.weblogger.pojos.MediaFileDirectoryComparator.DirectoryComparatorType;
+import org.apache.roller.weblogger.pojos.WeblogPermission;
import org.apache.roller.weblogger.ui.struts2.util.UIAction;
/**
@@ -47,6 +48,10 @@ public class MediaFileBase extends UIAct
private List<MediaFileDirectory> allDirectories;
private boolean overlayMode;
+ public List<String> requiredWeblogPermissionActions() {
+ return Collections.singletonList(WeblogPermission.POST);
+ }
+
/**
* Deletes media file
*/
Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/MediaFileImageChooser.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/MediaFileImageChooser.java?rev=1614415&r1=1614414&r2=1614415&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/MediaFileImageChooser.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/editor/MediaFileImageChooser.java Tue Jul 29 16:45:58 2014
@@ -31,6 +31,7 @@ import org.apache.roller.weblogger.pojos
import org.apache.roller.weblogger.pojos.MediaFileDirectory;
import org.apache.roller.weblogger.pojos.MediaFileDirectoryComparator;
import org.apache.roller.weblogger.pojos.MediaFileDirectoryComparator.DirectoryComparatorType;
+import org.apache.roller.weblogger.pojos.WeblogPermission;
import org.apache.roller.weblogger.ui.struts2.util.KeyValueObject;
import org.apache.struts2.interceptor.validation.SkipValidation;
@@ -59,6 +60,10 @@ public class MediaFileImageChooser exten
public void myPrepare() {
}
+ public List<String> requiredWeblogPermissionActions() {
+ return Collections.singletonList(WeblogPermission.EDIT_DRAFT);
+ }
+
/**
* Fetches and displays list of media file for the given directory. The
* directory could be chosen by ID or path.
Modified: roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/util/UIAction.java
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/util/UIAction.java?rev=1614415&r1=1614414&r2=1614415&view=diff
==============================================================================
--- roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/util/UIAction.java (original)
+++ roller/trunk/app/src/main/java/org/apache/roller/weblogger/ui/struts2/util/UIAction.java Tue Jul 29 16:45:58 2014
@@ -113,12 +113,11 @@ public abstract class UIAction extends A
return true;
}
-
+ // Default is ADMIN for safety, if a subclasser forgets to override this only admins can use.
public List<String> requiredWeblogPermissionActions() {
- return Collections.singletonList(WeblogPermission.POST);
+ return Collections.singletonList(WeblogPermission.ADMIN);
}
-
-
+
public List<String> requiredGlobalPermissionActions() {
return Collections.singletonList(GlobalPermission.LOGIN);
}
Modified: roller/trunk/app/src/main/resources/org/apache/roller/weblogger/ui/struts2/editor/editor-menu.xml
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/resources/org/apache/roller/weblogger/ui/struts2/editor/editor-menu.xml?rev=1614415&r1=1614414&r2=1614415&view=diff
==============================================================================
--- roller/trunk/app/src/main/resources/org/apache/roller/weblogger/ui/struts2/editor/editor-menu.xml (original)
+++ roller/trunk/app/src/main/resources/org/apache/roller/weblogger/ui/struts2/editor/editor-menu.xml Tue Jul 29 16:45:58 2014
@@ -38,8 +38,9 @@ Each menu or menu item is governed by fo
<!-- globalPerms="login" -->
<menu-item action="entries"
name="tabbedmenu.weblog.archives"
- weblogPerms="post" />
-
+ weblogPerms="post"
+ subactions="entryRemoveViaList" />
+
<!-- globalPerms="login" -->
<menu-item action="comments"
name="tabbedmenu.admin.commentManagement"
Modified: roller/trunk/app/src/main/resources/struts.xml
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/resources/struts.xml?rev=1614415&r1=1614414&r2=1614415&view=diff
==============================================================================
--- roller/trunk/app/src/main/resources/struts.xml (original)
+++ roller/trunk/app/src/main/resources/struts.xml Tue Jul 29 16:45:58 2014
@@ -39,7 +39,7 @@
<interceptor-ref name="fileUpload"/>
<interceptor-ref name="checkbox"/>
<interceptor-ref name="multiselect"/>
- <!-- <interceptor-ref name="staticParams"/> -->
+ <interceptor-ref name="staticParams"/>
<interceptor-ref name="actionMappingParams"/>
<interceptor-ref name="params">
<param name="excludeParams">^action:.*,^method:.*</param>
@@ -290,12 +290,9 @@
<action name="entryRemove!*" method="{1}"
class="org.apache.roller.weblogger.ui.struts2.editor.EntryRemove">
+ <param name="actionName">entryRemove</param>
<result name="input" type="tiles">.EntryRemove</result>
<result name="error" type="chain">menu</result>
- <result name="cancel" type="redirectAction">
- <param name="actionName">entries</param>
- <param name="weblog">${weblog}</param>
- </result>
<result name="success" type="chain">entryAdd</result>
</action>
@@ -303,6 +300,12 @@
as return page is different (the list of entries in this case, new blog
entry in the other.
+ Also defining an actionName parameter here different from that defined above.
+ This actionName, used to determine which menu item to highlight, is configured
+ in editor-menu.xml. This value is read by class EntryRemove and used by
+ class MenuHelper to highlight the correct menu item. See Struts2
+ StaticParametersInterceptor javadoc for more info.
+
Process flow:
1. Delete item on entries.jsp activates this action.
2. Tiles.xml is consulted to satisfy the input (here, EntryRemoveViaList.jsp
@@ -314,9 +317,14 @@
-->
<action name="entryRemoveViaList!*" method="{1}"
class="org.apache.roller.weblogger.ui.struts2.editor.EntryRemove">
+ <param name="actionName">entryRemoveViaList</param>
<result name="input" type="tiles">.EntryRemoveViaList</result>
<result name="error" type="chain">menu</result>
<result name="success" type="chain">entries</result>
+ <result name="cancel" type="redirectAction">
+ <param name="actionName">entries</param>
+ <param name="weblog">${weblog}</param>
+ </result>
</action>
<action name="entries"
Modified: roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/EntryRemove.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/EntryRemove.jsp?rev=1614415&r1=1614414&r2=1614415&view=diff
==============================================================================
--- roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/EntryRemove.jsp (original)
+++ roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/EntryRemove.jsp Tue Jul 29 16:45:58 2014
@@ -41,7 +41,8 @@
<s:form action="entryEdit">
<s:hidden name="salt" />
<s:hidden name="weblog" />
- <s:submit value="%{getText('generic.no')}" action="entryRemove!cancel" />
+ <s:hidden name="bean.id" value="%{removeEntry.id}"/>
+ <s:submit value="%{getText('generic.no')}"/>
</s:form>
</td>
</tr>
Modified: roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/EntryRemoveViaList.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/EntryRemoveViaList.jsp?rev=1614415&r1=1614414&r2=1614415&view=diff
==============================================================================
--- roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/EntryRemoveViaList.jsp (original)
+++ roller/trunk/app/src/main/webapp/WEB-INF/jsps/editor/EntryRemoveViaList.jsp Tue Jul 29 16:45:58 2014
@@ -17,7 +17,7 @@
--%>
<%@ include file="/WEB-INF/jsps/taglibs-struts2.jsp" %>
-<%-- Page same as EntryRemove.jsp except has different action values to accomodate returning
+<%-- Page same as EntryRemove.jsp except has different action values to accommodate returning
to the entries list instead of the new entry page. See struts.xml for action flow. --%>
<h2>
<s:text name="weblogEntryRemove.removeWeblogEntry" /> [<s:property value="removeEntry.title"/>]
@@ -43,7 +43,7 @@
<s:form action="entries">
<s:hidden name="salt" />
<s:hidden name="weblog" />
- <s:submit value="%{getText('generic.no')}" action="entryRemove!cancel" />
+ <s:submit value="%{getText('generic.no')}" action="entryRemoveViaList!cancel" />
</s:form>
</td>
</tr>