fix(client): Mise a jour liste.xhtml organisations pour utiliser Composite Component

- Remplacement de ui:include par uf:action-button-view (Composite Component)
- Utilisation de itemId au lieu de id pour eviter conflit avec ID composant JSF
- Coherence avec liste.xhtml des membres

Toutes les listes utilisent maintenant les Composite Components DRY/WOU!
This commit is contained in:
dahoud
2025-11-29 22:37:43 +00:00
parent 12f0b95587
commit f8866feffe
3 changed files with 8 additions and 10 deletions

View File

@@ -192,7 +192,7 @@
<p:column headerText="Actions" style="width:200px">
<div class="flex gap-1">
<!-- DRY/WOU: Composite Component action-button-view -->
<uf:action-button-view id="#{membre.id}"
<uf:action-button-view itemId="#{membre.id}"
detailPage="/pages/secure/membre/profil.xhtml"
iconOnly="true"/>
<ui:include src="/templates/components/buttons/button-icon.xhtml">

View File

@@ -166,14 +166,12 @@
icon="#{org.statut == organisationsBean.statutActive ? 'pi pi-check' : 'pi pi-times'}"/>
</p:column>
<!-- Actions (Rounded Text : boutons avec icône + texte) -->
<!-- Actions (DRY/WOU: Composite Components) -->
<p:column headerText="Actions" style="width: 320px;">
<!-- DRY/WOU: action-button-view pour navigation -->
<ui:include src="/templates/components/buttons/action-button-view.xhtml">
<ui:param name="id" value="#{org.id}"/>
<ui:param name="detailPage" value="/pages/secure/organisation/detail.xhtml"/>
<ui:param name="styleClass" value="mr-2"/>
</ui:include>
<!-- DRY/WOU: Composite Component action-button-view -->
<uf:action-button-view itemId="#{org.id}"
detailPage="/pages/secure/organisation/detail.xhtml"
styleClass="mr-2"/>
<!-- DRY/WOU: Composite Component action-button-edit -->
<uf:action-button-edit actionListener="#{organisationsBean.setOrganisationSelectionnee(org)}"

View File

@@ -5,7 +5,7 @@
xmlns:p="http://primefaces.org/ui">
<composite:interface>
<composite:attribute name="id" type="java.lang.String" required="true"/>
<composite:attribute name="itemId" type="java.lang.String" required="true"/>
<composite:attribute name="detailPage" type="java.lang.String" required="true"/>
<composite:attribute name="styleClass" type="java.lang.String" required="false" default=""/>
<composite:attribute name="iconOnly" type="java.lang.Boolean" required="false" default="false"/>
@@ -16,7 +16,7 @@
icon="pi pi-search"
title="Consulter"
styleClass="ui-button-rounded #{cc.attrs.iconOnly ? '' : 'ui-button-text'} ui-button-info #{cc.attrs.styleClass}"
onclick="window.location='#{request.contextPath}#{cc.attrs.detailPage}?id=#{cc.attrs.id}';return false;"/>
onclick="window.location='#{request.contextPath}#{cc.attrs.detailPage}?id=#{cc.attrs.itemId}';return false;"/>
</composite:implementation>
</html>