cancel
Showing results for 
Search instead for 
Did you mean: 

Quitar opción Editar Propiedades Carpeta

isra_vass
Champ on-the-rise
Champ on-the-rise

Buenas,

Estoy teniendo problemas para quitar la opción de "Editar Propiedades" de las acciones al ver el detalle de una carpeta (folder-details).

Lo tengo configurado como una extension, con el siguiente código para esa accion:

<!-- Edit properties page -->
         <action id="document-edit-metadata" type="pagelink" label="actions.document.edit-metadata">
            <param name="page">edit-metadata?nodeRef={node.nodeRef}</param>
            <permissions>
               <permission allow="true">Write</permission>
            </permissions>
            <evaluator negate="true">evaluator.doclib.metadata.isLocked</evaluator>
            <evaluator negate="true">evaluator.doclib.action.checkedOutAspect</evaluator>
	    <evaluator negate="true">evaluator.doclib.isExpedienteCerrado</evaluator>
         </action>

Donde el evaluador personalizado lo que hace es mirar si tiene una propiedad:

<bean id="evaluator.doclib.isExpedienteCerrado" parent="evaluator.doclib.metadata.value">
	  <property name="accessor" value="node.properties.ciemat:exp_estado" />
          <property name="comparator">
               <bean class="org.alfresco.web.evaluator.StringEqualsComparator">
                    <property name="value" value="EE04" /> <!-- ED04=Cerrado -->
                </bean>
          </property>
</bean>

El caso es que en las carpetas que tienen dicha propiedad. La acciones de editar propiedades sigue saliendo.

Hasta donde yo conozco, la acciones de editar propiedades de carpetas y documentos es la misma, que es la que tengo definida, pero seguramente se me esté escapando algo que hace que no funcione.

¿Alguna idea?

Gracias!

5 REPLIES 5

angelborroy
Community Manager Community Manager
Community Manager

Parece que todo es correcto.

No encuentro problemas con esa definición.

¿Estás empleando share-config-custom.xml para declararlo o lo haces en otro fichero?

Hyland Developer Evangelist

Buenas,

Lo hago dentro de un modulo de extension de Share dentro del AMP.

Lo curioso es que solo me sucede en la vista de detalles de la carpeta. En el listado de la document Library, tengo configurado tambien que no muestre la opción, y ahí si me funciona correctamente.

<action id="document-edit-properties" type="javascript" label="actions.document.edit-metadata">
            <param name="function">onActionDetails</param>
            <permissions>
               <permission allow="true">Write</permission>
            </permissions>
            <evaluator negate="true">evaluator.doclib.metadata.isLocked</evaluator>
            <evaluator negate="true">evaluator.doclib.action.checkedOutAspect</evaluator>
	    <evaluator negate="true">evaluator.doclib.isExpedienteCerrado</evaluator>
         </action>

He estado mirando más en detalle, y he visto que la opción me aparece para aquellos usuarios con rol de "Collaborator" (o Manager) en el Site, quizás tenga algo que me ver y sea un tema de permisos. Aunque me sigue extrañando que en las acciones de la document library no aparezca la opción, y en el folder-details si, cuando estoy usando los mismos evaluadores. 

Creo que ahí es dónde has dado con la clave.

En el "folder-detail" sí se están cargando las propiedades personalizadas, pero en el "folder-browse" no. Quizá no te quede más remedio que desarrollar un evaluador que consulte con el repositorio el valor de esa propiedad, ya que Share no te lo está enviando por defecto. Ten cuidado con esta acción, ya que se ejecutará una vez por cada carpeta que aparezca en el listado.

Por otro lado, no recuerdo si hay alguna opción para extender el Web Script que utiliza el listado de carpetas, de manera que te permita añadir los datos que necesitas.

Hyland Developer Evangelist

Umm, no sé si te estoy entendiendo bien, o algo no me encaja. En cualquier caso, vaya por delante mi agradecimiento a tu ayuda.

En "folder-browse" si me está evaluando bien el evaluador y leyendo las propiedades personalizadas. Es decir, aquellas carpetas que tienen el atributo personalizado de mi evaluador con el valor definido, no muestran la opción de editar metadatos (que es lo esperado). Sin embargo, en dichas carpetas si que muestra la opción dentro de "folder-details". 

Dentro de "folder-detail" no aplica bien el evaluador, pero por lo que he visto es solo cuando el usuario logado tiene rol de Collaborator. Si el usuario tiene rol o permisos de contribuidor o consumidor, si aplica bien el evaluador y no muestra la opción.

Sigo investigando...

Entonces te había entendido al revés.

Un usuario con rol Contribuidor o Consumidor no tiene permisos para editar los metadatos. Por eso no está mostrando la acción. No tiene que ver con tu evaluador.

Hyland Developer Evangelist
Getting started

Tags


Find what you came for

We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.