Link a un espacio usando plantilla .ftl

cancel
Showing results for 
Search instead for 
Did you mean: 
monomillo17
Member II

Link a un espacio usando plantilla .ftl

Hola a todos, he estado trabajando con las plantillas ftl, y si que son de gran ayuda. En estos momentos tengo 2 dudas sobre una plantilla que estoy desarrollando; en esta realizo un filtro para que me muestre solo los documentos que se encuentran bloqueados por algún usuario, en un espacio y sus sub espacios, dos de las cosas que quiero que la plantilla me muestre es:
1- La ruta del espacio en donde se encuetra el documento, con un link al espacio contenedor, pero no lo he logrado, no estoy seguro de la propiedad que debo emplear para ello?
actualmente lo realizo asi:


<td><a href="/alfresco${child.nodeRef}" target="new">${child.displayPath}</a></td>                         

Pero no me funciona, creo que "child.nodeRef"  no es la propiedad.

2- El nombre de la persona quien tiene bloqueado el documento, si uno observa el documento bloqueado vía Web en el candado que le aparece al documento sale el nombre de la persona que tiene el documento bloqueado, quisiera saber si es posible acceder a esta propiedad para mostrarla en una plantilla .ftl

Aqui esta la plantilla que empleo actualmente:



<html><head></head>
<body>
<#– Table of docs in a specific folder –>
<h3>${space.name} -  Elementos Bloqueados</h3>
<table cellpadding=1 border=0 style="BORDER: 1px;">
   
        <td></td>
        <td><b>Nombre</b></td>
        <td><b>Última Modificación</b></td>
        <td><b>Ubicación de Archivo</b></td>      
   
        <#assign query = ".//*[subtypeOf('cm:content')]">
        <#list space.childrenByXPath[query] as child>
          
        <#if child.isLocked>
                 <tr>
                 <td><a href="/alfresco${child.url}" target="new"><img src="/alfresco${child.icon16}" border=0></a></td>
                <td><a href="/alfresco${child.url}" target="new">${child.properties.name}</a></td>
                <td>${child.properties["cm:modified"]?string("dd-MMM-yyyy hh:mm")}</td>
                 <td><a href="/alfresco${child.nodeRef}" target="new">${child.displayPath}</a></td>                         
         </tr>
         </#if>         
         </#list>
</table>
</body>
</html>


Gracias, Saludos desde Colombia.

Smiley Happy
3 Replies
monomillo17
Member II

Re: Link a un espacio usando plantilla .ftl

Hola todos, no se si no me hice enterder bien, pero por si las dudas lo aclaro…
Lo que busco es que en la ruta del documento la cual muestro con :

<td><a href="/alfresco${child.nodeRef}" target="new">${child.displayPath}</a></td>
La idea es que esta me lleve mediante un link a ese espacio, ya me he dado cuenta que con ${child.displayPath} me muestra
la ruta del espacio en donde se encuentra el documento, he probado con ${child.displayPath} en el a href, para ver si depronto… me lleva al espacio
pero no funciona, debe de ser otra propiedad que desconozco.

Por otro lado, quisiera saber que propuiedad utilizar para mostrar quien tiene un documento bloqueado, ya realizo el
filtro para solo los documentos bloqueados; no creo que esta propiedad no exista, pues se puede apreciar al ver el candado en un documento bloqueado.

Gracias, espero algún comentario…
Hasta pronto salu2.  Smiley Happy
monomillo17
Member II

Re: Link a un espacio usando plantilla .ftl

Hola a todos, después de mucho google e ingeniería ya tengo la plantilla que buscaba. Aqui la dejo por si alguién la necesita, igual la idea siempre
es contribuir de alguna forma a las comunidades y al software libre  Smiley Very Happy .



<html><head></head>
<body>
<#– Table of docs in a specific folder –>
<h3>${space.name} -  Elementos Bloqueados</h3>

<table cellpadding=1 border=0 style="BORDER: 1px;">
   
        <td></td>
        <td><b>Nombre</b></td>
        <td><b>Última Modificación</b></td>
        <td><b>Ubicación de Archivo</b></td>
        <td><b>Ítem bloqueado por</b></td>
  
        <#assign query = ".//*[subtypeOf('cm:content')]">
        <#list space.childrenByXPath[query] as child>          

        <#if child.isLocked>
                <tr>
                <td><a href="/alfresco${child.url}" target="new"><img src="/alfresco${child.icon16}" border=0></a></td>
                <td><a href="/alfresco${child.url}" target="new">${child.properties.name}</a></td>
                <td>${child.properties["cm:modified"]?string("dd-MMM-yyyy hh:mm")}</td>                             
                             
               <td><a href="/alfresco${child.parent.url}" target="new">${child.displayPath}</a></td>

               <td>${child.properties["cm:modifier"]}</td>
               </tr>
        </#if>
          
</#list>
</table>
</body>
</html>

En esta solo faltaría mostrar un mensaje que diga algo asi como "No se encontraron documentos bloqueados" pero no encontre la forma de hacer esto, esta claro
que seria después del condicional if, pero venga!! que no me ha funcionado, entonces no tiene dicho mensaje, de resto la plantilla funciona de maravillas.
Por otro lado la propiedad con la que empezo este post es esta :


${child.parent.url}

La información en la http://wiki.alfresco.com/wiki/FreeMarker_Template_Cookbook no es suficiente, y la búsqueda de propiedades como la que estaba buscando puede llegar a ser una tarea de muchas horas.

Hasta pronto, salu2. Smiley Very Happy
cjimenez
Member II

Re: Link a un espacio usando plantilla .ftl

Gracias! Estoy entrando al mundo del .ftl y tu plantila me va a ser de gran ayuda  8)