texto enriquecido en datalist

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

texto enriquecido en datalist

Hola!

Me están pidiendo que en las listas se puedan ver colores, negritas, hipervinculos…
Hasta ahora solo he conseguido crear un campo donde puedan meterse hipervinculos de la siguiente manera


<config evaluator="model-type" condition="psgc:sgc_list">
      <forms>
         <form>
            <field-visibility>
            <show id="psgc:codigo" />
            <show id="psgc:ruta" />
            <show id="psgc:revision" />
            <show id="psgc:fecha" />
            </field-visibility>
            <create-form template="../data-lists/forms/dataitem.ftl" />
            <appearance>   
               <field id="psgc:ruta">
                    <control template="/org/alfresco/components/form/controls/textarea.ftl" >
         <control-param name="activateLinks">true</control-param>
          </control>
               </field>         
            </appearance>
         </form>
     </forms>    
</config>


mi problema viene que con

<control template="/org/alfresco/components/form/controls/richtext.ftl" >
    <control-param name="editorAppearance">full</control-param>
</control>

a la hora de editar me edita con el TinyMCE, pero cuando se guarda se muestra como texto plano
para que me entendais, si pongo <em>texto cursiva</em> en el TinyMCE, en el datagrid del listado me sale < em > texto cursiva< /em >

¿Alguien sabe darle alguna solución si la tiene?

gracias y un saludo
1 Reply
miguelsan
Member II

Re: texto enriquecido en datalist

Hola Lázaro.

Para personalizar el comportamiento de los campos de formularios o datalist de Alfresco Share, necesitas crear tus propias plantillas (templates) de manera que puedas presentar la información tal y como necesitas.

En tu archivo de configuración de Share debes indicar para cada campo qué template es el que Alfresco utilizará. A continuación te muestro un ejemplo sencillo:

En lugar de utilizar los templates que Alfresco provee por defecto

[blockcode]
<field id="my-field">
           <control template="/org/alfresco/components/form/controls/textfield.ftl"/>
</field>
[/blockcode]

Crea tu propio template. Para ello copia el template de Alfresco que más se acerque a la funcionalidad que necesitas (en este ejemplo "textfield.ftl"). Modifica el template para que el texto aparezca en negrita, cursiva, colores, etc, o cualquier cosa que necesites. Coloca el nuevo template (en este ejemplo lo hemos renombrado "myTextfield.ftl") en tu proyecto e integralo en tu instancia de Alfresco mediante un AMP o colócalo en el tomcat/shared/classes/alfresco/web-extension/[la ruta de tu módulo]/myTextfield.ftl para poder hacer uso de él.

Una vez creado puedes referenciarlo desde tu archivo de configuración de Share:

[blockcode]
<field id="my-field">
           <control template="/com/myDomain/components/form/controls/myTextfield.ftl"/>
</field>
[/blockcode]

En los templates también es posible incluir javascript, lo cuál puede ser útil si fuera necesario hacer llamadas Ajax o trabajar con comportamientos personalizados dinámicos.

Nota: es importante que indiques en tu template personalizado cómo se mostrará el campo en las diferentes visualizaciones posibles (creación, lectura, edición)

Lázaro, espero que está información te sea de ayuda y responda tu pregunta.