mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-07 17:49:17 +00:00
. Added permission evaluators to View File/Folder Details actions
. Import Website Content now only accessable by Content Manger role users git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@4050 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -148,6 +148,9 @@
|
|||||||
|
|
||||||
<!-- View File details -->
|
<!-- View File details -->
|
||||||
<action id="file_details">
|
<action id="file_details">
|
||||||
|
<permissions>
|
||||||
|
<permission allow="true">Read</permission>
|
||||||
|
</permissions>
|
||||||
<label-id>view_details</label-id>
|
<label-id>view_details</label-id>
|
||||||
<image>/images/icons/View_details.gif</image>
|
<image>/images/icons/View_details.gif</image>
|
||||||
<action-listener>#{AVMBrowseBean.setupContentAction}</action-listener>
|
<action-listener>#{AVMBrowseBean.setupContentAction}</action-listener>
|
||||||
@@ -159,6 +162,9 @@
|
|||||||
|
|
||||||
<!-- View Folder details -->
|
<!-- View Folder details -->
|
||||||
<action id="folder_details">
|
<action id="folder_details">
|
||||||
|
<permissions>
|
||||||
|
<permission allow="true">Read</permission>
|
||||||
|
</permissions>
|
||||||
<label-id>view_details</label-id>
|
<label-id>view_details</label-id>
|
||||||
<image>/images/icons/View_details.gif</image>
|
<image>/images/icons/View_details.gif</image>
|
||||||
<action-listener>#{AVMBrowseBean.setupContentAction}</action-listener>
|
<action-listener>#{AVMBrowseBean.setupContentAction}</action-listener>
|
||||||
|
@@ -67,7 +67,7 @@
|
|||||||
<from-email-address>alfresco@alfresco.org</from-email-address>
|
<from-email-address>alfresco@alfresco.org</from-email-address>
|
||||||
|
|
||||||
<!-- WCM domain and port for virtualisation server -->
|
<!-- WCM domain and port for virtualisation server -->
|
||||||
<wcm-domain>127-0-0-1.ipaddr.alfresco-software.com</wcm-domain>
|
<wcm-domain>127-0-0-1.ip.alfrescodemo.net</wcm-domain>
|
||||||
<wcm-port>8180</wcm-port>
|
<wcm-port>8180</wcm-port>
|
||||||
</client>
|
</client>
|
||||||
</config>
|
</config>
|
||||||
|
@@ -39,11 +39,13 @@ import org.alfresco.service.cmr.avm.AVMNodeDescriptor;
|
|||||||
import org.alfresco.service.cmr.avm.AVMService;
|
import org.alfresco.service.cmr.avm.AVMService;
|
||||||
import org.alfresco.service.cmr.avm.AVMStoreDescriptor;
|
import org.alfresco.service.cmr.avm.AVMStoreDescriptor;
|
||||||
import org.alfresco.service.cmr.dictionary.DictionaryService;
|
import org.alfresco.service.cmr.dictionary.DictionaryService;
|
||||||
|
import org.alfresco.service.cmr.repository.ChildAssociationRef;
|
||||||
import org.alfresco.service.cmr.repository.NodeRef;
|
import org.alfresco.service.cmr.repository.NodeRef;
|
||||||
import org.alfresco.service.cmr.repository.NodeService;
|
import org.alfresco.service.cmr.repository.NodeService;
|
||||||
import org.alfresco.service.cmr.search.SearchService;
|
import org.alfresco.service.cmr.search.SearchService;
|
||||||
import org.alfresco.service.namespace.NamespaceService;
|
import org.alfresco.service.namespace.NamespaceService;
|
||||||
import org.alfresco.service.namespace.QName;
|
import org.alfresco.service.namespace.QName;
|
||||||
|
import org.alfresco.service.namespace.RegexQNamePattern;
|
||||||
import org.alfresco.web.app.Application;
|
import org.alfresco.web.app.Application;
|
||||||
import org.alfresco.web.app.context.IContextListener;
|
import org.alfresco.web.app.context.IContextListener;
|
||||||
import org.alfresco.web.app.context.UIContextService;
|
import org.alfresco.web.app.context.UIContextService;
|
||||||
@@ -86,6 +88,9 @@ public class AVMBrowseBean implements IContextListener
|
|||||||
/** Action bean Id for the AVM Submit action*/
|
/** Action bean Id for the AVM Submit action*/
|
||||||
private static final String ACTION_AVM_SUBMIT = "simple-avm-submit";
|
private static final String ACTION_AVM_SUBMIT = "simple-avm-submit";
|
||||||
|
|
||||||
|
/** Content Manager role name */
|
||||||
|
private static final String ROLE_CONTENT_MANAGER = "ContentManager";
|
||||||
|
|
||||||
private String sandbox;
|
private String sandbox;
|
||||||
private String username;
|
private String username;
|
||||||
private String sandboxTitle = null;
|
private String sandboxTitle = null;
|
||||||
@@ -468,6 +473,32 @@ public class AVMBrowseBean implements IContextListener
|
|||||||
UIContextService.getInstance(FacesContext.getCurrentInstance()).notifyBeans();
|
UIContextService.getInstance(FacesContext.getCurrentInstance()).notifyBeans();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return true if the current user has the manager role in the current website
|
||||||
|
*/
|
||||||
|
public boolean getIsManagerRole()
|
||||||
|
{
|
||||||
|
boolean isManager = false;
|
||||||
|
|
||||||
|
String currentUser = Application.getCurrentUser(FacesContext.getCurrentInstance()).getUserName();
|
||||||
|
Node websiteNode = this.navigator.getCurrentNode();
|
||||||
|
List<ChildAssociationRef> userInfoRefs = this.nodeService.getChildAssocs(
|
||||||
|
websiteNode.getNodeRef(), ContentModel.ASSOC_WEBUSER, RegexQNamePattern.MATCH_ALL);
|
||||||
|
for (ChildAssociationRef ref : userInfoRefs)
|
||||||
|
{
|
||||||
|
NodeRef userInfoRef = ref.getChildRef();
|
||||||
|
String username = (String)nodeService.getProperty(userInfoRef, ContentModel.PROP_WEBUSERNAME);
|
||||||
|
String userrole = (String)nodeService.getProperty(userInfoRef, ContentModel.PROP_WEBUSERROLE);
|
||||||
|
if (currentUser.equals(username) && ROLE_CONTENT_MANAGER.equals(userrole))
|
||||||
|
{
|
||||||
|
isManager = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return isManager;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return the AVMNode that represents the current browsing path
|
* @return the AVMNode that represents the current browsing path
|
||||||
*/
|
*/
|
||||||
|
@@ -76,9 +76,7 @@
|
|||||||
</td>
|
</td>
|
||||||
<td align=right>
|
<td align=right>
|
||||||
<%-- Import website content action --%>
|
<%-- Import website content action --%>
|
||||||
<r:permissionEvaluator value="#{NavigationBean.currentNode}" allow="CreateChildren" id="eval1">
|
<a:actionLink value="#{msg.import_website_content}" rendered="#{AVMBrowseBean.isManagerRole}" image="/images/icons/import_website.gif" padding="2" action="dialog:importContent" actionListener="#{ImportWebsiteDialog.start}" />
|
||||||
<a:actionLink value="#{msg.import_website_content}" image="/images/icons/import_website.gif" padding="2" action="dialog:importContent" actionListener="#{ImportWebsiteDialog.start}" />
|
|
||||||
</r:permissionEvaluator>
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
Reference in New Issue
Block a user