20 de julio de 2016

:: Alfresco. Crear webscript que añada enlace a la carpeta personal

En este caso vamos a crear un webscript que nos incluya un enlace a la carpeta personal del usuario logueado, desde el dashlet denominado "Mi perfil".


Los pasos a seguir son los siguientes:

1.- Crearemos el fichero correspondiente al descriptor del WebScript, y lo nombraremos como: "userhome.get.desc.xml" con el siguiente contenido:

< webscript >
   < shortname >Get User Home< /shortname >
   < description >Get the userHome field from alfresco< /description >
   < url >/getuserhome< /url >
   < format default="json" />
   < authentication >user< /authentication >
< /webscript >

El fichero anterior lo copiaremos en: "Repositorio>Diccionario de datos>Web Scripts"

2.- Definimos la plantilla asociada, que en este caso será en formato json, y lo nombramos: "userhome.get.json.ftl"
{
    "userhome":"${userhome.properties.name}"
}

El fichero lo copiaremos en la misma ubicación que el anterior: "Repositorio>Diccionario de datos>Web Scripts"

3.- Definimos el fichero javascript encargado de llevar a cabo esta tarea; lo nombraremos como "my-profile.get.js":
function main()
{   
    var userHome = "NOT_FOUND";
    // Getting user home
    var resultCall = remote.call("/getuserhome");
    var nodeTmp = eval('(' + resultCall + ')');
    if(nodeTmp != null){
        userHome = nodeTmp.userhome;
    }
    model.userHomeFolderName = userHome;
}
main();

4.- Modificaremos la plantilla encargada de mostrar el perfil del usuario logueado. El fichero a modificar es: "my-profile.get.html.ftl"


A este fichero le añadiremos (donde corresponda) el código correspondiente al enlace al espacio personal del usuario:
< a class="sitio_personal" href="https://www.blogger.com/share/page/site/Usuarios/documentlibrary#filter=path%7C/${userHomeFolderName?url}" title="Mi carpeta personal" >Mi carpeta personal< /a >

En el tema que utilicemos definiríamos (en el fichero presentation.css) los estilos correspondientes para mostrar este enlace al espacio personal.

Este fichero debemos copiarlo en la ruta siguiente: "${alfresco}\tomcat\shared\classes\alfresco\web-extension\site-webscripts\org\alfresco\components\dashlets"

5.- Para habilitar el webscript accederemos a la url: "http://localhost:8080/alfresco/service/index" y tras especificar las credenciales de acceso actualizaremos la lista de webscripts disponibles.
Seleccionaremos la entrada "Browse all Web Scripts" y comprobaremos que nuestro webscript se encuentra en la lista.

Tras reiniciar el servicio, en el dashlet de mi perfil tendremos un enlace para que el usuario acceda al sitio personal.

No hay comentarios:

Publicar un comentario

Déjanos tu comentario

:: Cookies de nuestra página web. ¿Para qué sirve cada una?

A menudo una pregunta que nos hacen es qué cookies se están utilizando en mi página y para qué sirven. Para ver las cookies, podemos selecci...