Update of
/var/cvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/tree
In directory
james.mmbase.org:/tmp/cvs-serv4873/portlets-newsletter/src/java/com/finalist/newsletter/tree
Modified Files:
NewsletterTreeItemRenderer.java
Log Message:
CMSC-811 update publiser and some other test case.refactory tree item render.
See also:
http://cvs.mmbase.org/viewcvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/tree
See also: http://www.mmbase.org/jira/browse/CMSC-811
Index: NewsletterTreeItemRenderer.java
===================================================================
RCS file:
/var/cvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/tree/NewsletterTreeItemRenderer.java,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -b -r1.13 -r1.14
--- NewsletterTreeItemRenderer.java 19 Feb 2008 21:13:55 -0000 1.13
+++ NewsletterTreeItemRenderer.java 17 Apr 2008 02:54:42 -0000 1.14
@@ -12,7 +12,6 @@
import com.finalist.newsletter.util.NewsletterUtil;
import com.finalist.tree.TreeElement;
import com.finalist.tree.TreeModel;
-import com.finalist.util.module.ModuleUtil;
public class NewsletterTreeItemRenderer implements NavigationTreeItemRenderer {
@@ -20,11 +19,15 @@
protected static final String FEATURE_WORKFLOW = "workflowitem";
public void addParentOption(NavigationRenderer renderer, TreeElement
element, String parentId) {
- element.addOption(renderer.createTreeOption("mail.png",
"site.newsletter.new", "newsletter",
- "../newsletter/NewsletterCreate.do?parentnewsletter=" + parentId));
+ element.addOption(
+ renderer.createTreeOption(
+ "mail.png", "site.newsletter.new", "newsletter",
op("NewsletterCreate", "parentnewsletter", parentId)
+ )
+ );
}
public TreeElement getTreeElement(NavigationRenderer renderer, Node
parentNode, TreeModel model) {
+
UserRole role = NavigationUtil.getRole(parentNode.getCloud(),
parentNode, false);
boolean secure = parentNode.getBooleanValue(PagesUtil.SECURE_FIELD);
@@ -35,25 +38,10 @@
TreeElement element = renderer.createElement(parentNode, role, name,
fragment, secure);
if (SecurityUtil.isEditor(role)) {
- element.addOption(renderer.createTreeOption("edit_defaults.png",
"site.newsletter.edit", "newsletter",
- "../newsletter/NewsletterEdit.do?number=" + id));
- element.addOption(renderer.createTreeOption("mail.png",
"site.newsletterpublication.new.blank", "newsletter",
- "../newsletter/NewsletterPublicationCreate.do?parent=" + id +
"©content=false"));
- element.addOption(renderer.createTreeOption("mail.png",
"site.newsletterpublication.new.withcontent", "newsletter",
- "../newsletter/NewsletterPublicationCreate.do?parent=" + id +
"©content=true"));
+ addEditorOptions(renderer, id, element);
if (SecurityUtil.isWebmaster(role) ||
(model.getChildCount(parentNode) == 0 && !Publish.isPublished(parentNode))) {
- element.addOption(renderer.createTreeOption("delete.png",
"site.newsletter.remove", "newsletter",
- "../newsletter/NewsletterDelete.do?number=" + id));
- boolean isPaused = NewsletterUtil.isPaused(Integer.parseInt(id));
- if (isPaused == true) {
- element.addOption(renderer.createTreeOption("resume.png",
"site.newsletter.resume", "newsletter",
- "../newsletter/NewsletterResume.do?number=" + id));
- }
- if (isPaused == false) {
- element.addOption(renderer.createTreeOption("pause.png",
"site.newsletter.pause", "newsletter",
- "../newsletter/NewsletterPause.do?number=" + id));
- }
+ addWebmasterOptions(renderer, id, element);
}
if (NavigationUtil.getChildCount(parentNode) >= 2) {
@@ -61,25 +49,70 @@
}
if (SecurityUtil.isChiefEditor(role)) {
+ addChiefEditorOptions(renderer, id, element);
+ }
+ }
+
+ element.addOption(
+ renderer.createTreeOption("rights.png", "site.page.rights",
"../usermanagement/pagerights.jsp?number=" + id)
+ );
+
+ return element;
+ }
+
+ private void addChiefEditorOptions(NavigationRenderer renderer, String id,
TreeElement element) {
element.addOption(renderer.createTreeOption("cut.png",
"site.page.cut", "javascript:cut('" + id + "');"));
element.addOption(renderer.createTreeOption("copy.png",
"site.page.copy", "javascript:copy('" + id + "');"));
element.addOption(renderer.createTreeOption("paste.png",
"site.page.paste", "javascript:paste('" + id + "');"));
}
- if (SecurityUtil.isWebmaster(role) &&
ModuleUtil.checkFeature(FEATURE_WORKFLOW)) {
- element.addOption(renderer.createTreeOption("publish.png",
"site.newsletter.publish", "newsletter", "../workflow/publish.jsp?number="
- + id));
- element.addOption(renderer.createTreeOption("masspublish.png",
"site.newsletter.masspublish", "newsletter",
- "../workflow/masspublish.jsp?number=" + id));
+ private void addWebmasterOptions(NavigationRenderer renderer, String id,
TreeElement element) {
+ element.addOption(
+ renderer.createTreeOption("delete.png", "site.newsletter.remove",
"newsletter",
+ "../newsletter/NewsletterDelete.do?number=" + id
+ )
+ );
+ boolean isPaused = NewsletterUtil.isPaused(Integer.parseInt(id));
+ if (isPaused) {
+ element.addOption(
+ renderer.createTreeOption("resume.png",
"site.newsletter.resume", "newsletter",
+ "../newsletter/NewsletterResume.do?number=" + id
+ )
+ );
+ }
+ else {
+ element.addOption(
+ renderer.createTreeOption("pause.png", "site.newsletter.pause",
"newsletter",
+ "../newsletter/NewsletterPause.do?number=" + id
+ )
+ );
}
}
- element.addOption(renderer.createTreeOption("rights.png",
"site.page.rights", "../usermanagement/pagerights.jsp?number=" + id));
- return element;
+ private void addEditorOptions(NavigationRenderer renderer, String id,
TreeElement element) {
+ element.addOption(
+ renderer.createTreeOption("edit_defaults.png",
"site.newsletter.edit", "newsletter",
+ "../newsletter/NewsletterEdit.do?number=" + id
+ )
+ );
+ element.addOption(
+ renderer.createTreeOption("mail.png",
"site.newsletterpublication.new.blank", "newsletter",
+ "../newsletter/NewsletterPublicationCreate.do?parent=" + id
+ "©content=false"
+ )
+ );
+ element.addOption(
+ renderer.createTreeOption("mail.png",
"site.newsletterpublication.new.withcontent", "newsletter",
+ "../newsletter/NewsletterPublicationCreate.do?parent=" + id
+ "©content=true"
+ )
+ );
}
public boolean showChildren(Node parentNode) {
- return true; // Always show sub-items
+ return true;
}
+
+ private String op(String action, String param, String value) {
+ return String.format("../newsletter/%s.do?%s=%s", action, param, value);
+ }
}
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs