sábado, 30 de agosto de 2014

Variable CTX–Sharepoint 2013

La variable ctx es llamada variable de contexto, esta variable no está disponible en cada contexto de Sharepoint, por lo cual ten cuidado donde la usas. Por ejemplo: es muy usada en display templates de Search (link). En las páginas de forms de las listas/librerías (New, Edit y Display forms) y layouts (ej: site settings) NO suele estar definida esta variable. En las home page/wiki pages suele estar disponible. En las vistas de las listas también suele estar disponible.LO cual cómo les decía revisen donde la pueden usar. En el App Model tampoco está disponible obviamente.

Es una propiedad de read-only solamente, es decir sólo puedo leer la información de la misma. Para verla, abrimos la developer tools del IE (F12) y en la consola escribimos ctx

image

image

image

image

Con respecto a las funciones podemos tener las siguientes:

image

Voy a comentar las más importantes propiedades o funciones.

Por ejemplo si yo estoy en una vista de la lista podemos ver las propiedades.

Si en las propiedades avanzadas de la lista, marco/desmarco algunas propiedades, veo las propiedades avanzadas de la variable

image

Variable ContentTypesEnabled –> true

image

image

image

AllowCreateFolder –> undefined

image

image

AllowGridMode  --> false

image

image

EnabledMinorVersions –> true

Si yo selecciono dos items, me aparecerá la información en la propiedad “CurrentSelectItems”

image

También podemos obtener las urls de los forms de new/edit/display

image

image

Podemos ver la cantidad de items de la página de la vista (TotalListItems), el GUID de la View (propiedad view) y el nombre de la vista (ViewTitle). La propiedad verEnabled hace referencia si está habilitado el versionado (1) o no (0).

image

Después tenemos las propiedades listName  (guid de la lista), listTemplate (101 es una librería), listTitle (nombre de la libreria) y listUrlDir (url relativa de la librería)

image

Otra propiedad importante es ListSchema, la cual tiene todo el esquema propio de la libreria:

DefaultItemOpen = 1 –> es cuando seteas Open in the browser en las propiedades avanzadas de la librería

image

Después tenes todas propiedades propias del sitio: HttpRoot, CurrentLanguage, CurrentUICultureName, etc. Otras propiedades importantes son CurrentUserId (es el ID de la User Information List) y CurrentUserIsSiteAdmin.

image

Hay un montón de propiedades más, pero para finalizar voy a hacer uso de la propiedad ListData

image

La cual permite recorrer todas las filas de la view actual, y procesar los campos.

Por ejemplo. ctx.ListData.Row[0]

image

si yo escribo lo siguiente: alert(ctx.ListData.Row[0].FileLeafRef)

image

Una propiedad muy útil es : PermMask, que define que permisos tiene el usuario actual sobre ese item específico (row

image

FullMask = 0x7FFFFFFFFFFFFFFF (Grant all permissions). En este link tienen una lista de mask de permisos.

No hay comentarios:

Publicar un comentario