En el web part Data View o Data Form puedes mostrar contenido condicional basado en los permisos del usuario actual gracias a la función ddwrt:IfHasRights() . Es decir mostrar ciertas partes de páginas
<xsl:if test="ddwrt:IfHasRights(mascara de permisos)">
contenido
</xsl:if>
<xsl:if test=”ddwrt:IfHasRights(4)”>Only Editors can see this text!</xsl:if>
De esta manera podremos ocultar lo que deseamos, ej: un campo de una lista.
La lista de permisos (máscara) se puede encontrar en el archivo: CAML2XSL.XSL
List/document perms | Mask |
ViewListItems | 1 |
AddListItems | 2 |
EditListItems | 4 |
DeleteListItems | 8 |
ApproveItems | 16 |
OpenItems | 32 |
ViewVersions | 64 |
DeleteVersions | 128 |
CancelCheckout | 256 |
ManagePersonalViews | 512 |
ManageLists | 2,048 |
ViewFormPages | 4,096 |
Web level perms | |
Open | 65,536 |
ViewPages | 131,072 |
AddAndCustomizePages | 262,144 |
ApplyThemeAndBorder | 524,288 |
ApplyStyleSheets | 1,048,576 |
ViewUsageData | 2,097,152 |
CreateSSCSite | 4,194,314 |
ManageSubwebs | 8,388,608 |
CreateGroups | 16,777,216 |
ManagePermissions | 33,554,432 |
BrowseDirectories | 67,108,864 |
BrowseUserInfo | 134,217,728 |
AddDelPrivateWebParts | 268,435,456 |
UpdatePersonalWebParts | 536,870,912 |
ManageWeb | 1,073,741,824 |
UseRemoteAPIs | 137,438,953,472 |
ManageAlerts | 274,877,906,944 |
CreateAlerts | 549,755,813,888 |
EditMyUserInfo | 1,099,511,627,776 |
special perms | |
EnumeratePermissions | 4,611,686,018,427,380,000 |
<Sharepoint:SPSecurityTrimmedControl runat="server" PermissionsString="EditListItems">Only Editors can see this text!</Sharepoint:SPSecurityTrimmedControl>
Para usar el control anterior, debes registrar lo siguiente:
<%@ Register tagprefix="SharePoint" namespace="Microsoft.SharePoint.WebControls" assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
No hay comentarios:
Publicar un comentario