20 de febrero de 2018

:: Alfresco. Crear un foro de discusión sobre un documento

En Alfresco es posible crear un foro de discusión sobre un documento para que los usuarios con acceso inserten los comentarios pertinentes.
En la prueba de concepto que realizaremos a continuación, crearemos un tema y foro de discusión sobre cada documento que se suba a una determinada carpeta de Alfresco, por lo que ejecutaremos un script mediante una regla de  contenido.

El código del script podría ser algo similar a esto:

if(!document.hasAspect("fm:discussable")) { 
 document.addAspect("fm:discussable"); 
}
if(!document.hasAspect("fm:commentsRollup")) {
      document.addAspect("fm:commentsRollup");
}
 
var forums = document.childAssocs["fm:discussion"];
var forum;
if(forums.length === 0) {
     forum = document.createNode(document.properties.name + " discusion", "fm:forum", "fm:discussion");
} else {
     forum = forums[0];
}
 
var topics = forum.childAssocs["cm:contains"];
var topic;
if(topics == null || topics.length === 0) {
    topic = forum.createNode("Comments", "fm:topic", [], "cm:contains", "cm:Comments");
} else {
    topic = topics[0];
}

var now = new Date();
var name = "comment-" + now.getTime();
var mypost = topic.createNode(name, "fm:post", [], "cm:contains", name);

mypost.setContent("Contenido del post");

No hay comentarios:

Publicar un comentario

Déjanos tu comentario

:: Liferay. Obtener los usuarios activos desde Groovy

Una solución rápida para obtener la relación de usuarios activos en Liferay 7.4 es por medio de un script en Groovy. Para ello accederemos a...