Update of /var/cvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/tree In directory james.mmbase.org:/tmp/cvs-serv24983/tree
Modified Files: NewsletterPublicationTreeItemRenderer.java Log Message: CMSC-1178 Newsletter: add mechanism to use restrictions in the newsletter edition workflow 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-1178 Index: NewsletterPublicationTreeItemRenderer.java =================================================================== RCS file: /var/cvs/contributions/CMSContainer_Portlets/portlets-newsletter/src/java/com/finalist/newsletter/tree/NewsletterPublicationTreeItemRenderer.java,v retrieving revision 1.31 retrieving revision 1.32 diff -u -b -r1.31 -r1.32 --- NewsletterPublicationTreeItemRenderer.java 10 Dec 2008 09:47:07 -0000 1.31 +++ NewsletterPublicationTreeItemRenderer.java 11 Dec 2008 06:55:37 -0000 1.32 @@ -39,10 +39,13 @@ String id = String.valueOf(parentNode.getNumber()); TreeElement element = renderer.createElement(parentNode, role, name, fragment, secure); + String process_status = NewsletterPublicationUtil.getEditionStatus(Integer.valueOf(id)); + if (SecurityUtil.isWriter(role)) { if (SecurityUtil.isEditor(role)) { element.addOption(renderer.createTreeOption("edit_defaults.png", "site.newsletteredition.edit", "newsletter", "../newsletter/NewsletterPublicationEdit.do?number=" + id)); + } boolean isSingleApplication = true; boolean isPublished; isSingleApplication = ServerUtil.isSingle(); @@ -56,7 +59,7 @@ log.debug("Publication " + parentNode.getNumber() + "'s publication status:" + isPublished + " in single:" + isSingleApplication); - if (SecurityUtil.isWebmaster(role) || (model.getChildCount(parentNode) == 0 && !isPublished)) { + if (SecurityUtil.isWebmaster(role) || (model.getChildCount(parentNode) == 0 && !isPublished && SecurityUtil.isEditor(role))) { element.addOption(renderer.createTreeOption("delete.png", "site.newsletteredition.remove", "newsletter", "../newsletter/NewsletterPublicationDelete.do?number=" + id)); } @@ -64,15 +67,14 @@ "../newsletter/NewsletterPublicationPublish.do?number=" + id)); element.addOption(renderer.createTreeOption("type/email_go.png", "site.newsletteredition.test", "newsletter", "../newsletter/NewsletterPublicationTest.do?number=" + id)); + + if (SecurityUtil.isChiefEditor(role) && ModuleUtil.checkFeature(FEATURE_WORKFLOW)) { if (NavigationUtil.getChildCount(parentNode) >= 2) { element.addOption(renderer.createTreeOption("reorder.png", "site.page.reorder", "reorder.jsp?parent=" + id)); } - - if (SecurityUtil.isWebmaster(role) && ModuleUtil.checkFeature(FEATURE_WORKFLOW)) { element.addOption(renderer.createTreeOption("publish.png", "site.newsletteredition.publish", "newsletter", "../workflow/publish.jsp?number=" + id)); } - if (SecurityUtil.isWebmaster(role)) { if(EditionStatus.INITIAL.value().equals(process_status)) { element.addOption(renderer.createTreeOption("status_finished.png", "site.newsletteredition.freeze", "newsletter", "../newsletter/NewsletterEditionFreeze.do?number=" + id)); @@ -81,18 +83,16 @@ element.addOption(renderer.createTreeOption("status_approved.png", "site.newsletteredition.defrost", "newsletter", "../newsletter/NewsletterEditionDefrost.do?number=" + id)); } - } - } - if(SecurityUtil.isWebmaster(role)){ + String status = NewsletterPublicationUtil.getEditionStatus(Integer.parseInt(id)); if("approved".equalsIgnoreCase(status)){ element.addOption(renderer.createTreeOption("status_onlive.png", "site.newsletteredition.revokeapproval", "newsletter","../newsletter/NewsletterEditionRevoke.do?number=" + id)); - }else if("frozen".equalsIgnoreCase(status)){ + } + else if("frozen".equalsIgnoreCase(status)){ element.addOption(renderer.createTreeOption("status_published.png", "site.newsletteredition.approve", "newsletter","../newsletter/NewsletterEditionApprove.do?number=" + id)); } } element.addOption(renderer.createTreeOption("rights.png", "site.page.rights", "../usermanagement/pagerights.jsp?number=" + id)); - return element; } _______________________________________________ Cvs mailing list Cvs@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/cvs