Estoy usando webscripts para la creación de documentos en Alfresco. En la capa de presentación uso un fckeditor como editor HTML WYSIWYG y mediante un webscript guardo esto en el contenido del documento creado.
El problema es que cuando voy a través del cliente JSP de Alfresco, no puedo editar este contenido salvo si activo la opción de "Make Inline Editable". Es un solo click pero los usuarios suelen ser recalcitrantes :wink:
El código que uso creo que es correcto ya que fuerzo el aspect app:inlineeditable y pongo a true la property app:editInline a true, pero ni así lo consigo
¿Alguien ha hecho algo parecido? Os adjunto mi código de webscript a ver si alguien tiene ideas
(myexp es un contenido tipo Folder, con algunos metadatos customizados y fecha es un new Date con formato, body sería el texto que le llega al webscript) var nuevaopinion = myexp.createFile("opinion_"+fecha); nuevaopinion.specializeType("{http://www.someco.es/model/expedientes/1.0}opinion"); nuevaopinion.specializeType("{http://www.alfresco.org/model/application/1.0}inlineeditable"); nuevaopinion.content = body; nuevaopinion.mimetype = "text/html"; nuevaopinion.properties["exppinionbody"] = body; nuevaopinion.properties["app:editInline"] = true; nuevaopinion.save();
Bueno, al final gracias al prueba y error lo he conseguido solucionar
No sé por qué, pero aquellos aspects que vienen predefinidos en Alfresco hay que aplicarlos con addAspect y los aspectos que creamos nosotros con specializeType (o por lo menos a mí solo me va así). Además, no sé qué implicaciones colaterales pueden tener uno u otro. Si alguien puede aportar luz en este sentido, se lo agradecería.
En cualquier caso, para esto, el webscript quedaría con
var nuevaopinion = myexp.createFile("opinion_"+fecha); /* Esto es un aspect mío para añadir alguna columna más */ nuevaopinion.specializeType("{http://www.someco.es/model/expedientes/1.0}opinion"); /* Este es el aspect inline editable que trae Alfresco por defecto */ nuevaopinion.addAspect("app:inlineeditable"); nuevaopinion.content = body; nuevaopinion.mimetype = "text/html"; /* Propiedad de mi aspect */ nuevaopinion.properties["exppinionbody"] = body; /* Propiedad del aspect de Alfresco */ nuevaopinion.properties["app:editInline"] = true; nuevaopinion.save();
Interesante remarcar que los cambios de FCKEditor son compatibles con el Editor HTML interno de Alfresco, o sea que genial por si queremos tener varias fuentes de edición. Bueno no he probado todo, pero negritas, subrayados y colores sí