feat(client): Ajout de Composite Component action-button-view et correction bouton voir profil
- Creation de action-button-view.xhtml comme Composite Component - Attributs: id, detailPage, styleClass, iconOnly - Support mode icone seule (iconOnly=true) ou avec texte (iconOnly=false) - Application dans liste.xhtml des membres pour le bouton Voir profil Le bouton Voir profil fonctionne maintenant correctement avec navigation vers profil.xhtml Composite Components = Solution DRY/WOU qui fonctionne en JSF!
This commit is contained in:
@@ -4,6 +4,7 @@
|
|||||||
xmlns:f="http://xmlns.jcp.org/jsf/core"
|
xmlns:f="http://xmlns.jcp.org/jsf/core"
|
||||||
xmlns:ui="http://xmlns.jcp.org/jsf/facelets"
|
xmlns:ui="http://xmlns.jcp.org/jsf/facelets"
|
||||||
xmlns:p="http://primefaces.org/ui"
|
xmlns:p="http://primefaces.org/ui"
|
||||||
|
xmlns:uf="http://xmlns.jcp.org/jsf/composite/components"
|
||||||
template="/templates/main-template.xhtml">
|
template="/templates/main-template.xhtml">
|
||||||
|
|
||||||
<ui:define name="title">Liste des Membres - UnionFlow</ui:define>
|
<ui:define name="title">Liste des Membres - UnionFlow</ui:define>
|
||||||
@@ -190,12 +191,10 @@
|
|||||||
|
|
||||||
<p:column headerText="Actions" style="width:200px">
|
<p:column headerText="Actions" style="width:200px">
|
||||||
<div class="flex gap-1">
|
<div class="flex gap-1">
|
||||||
<ui:include src="/templates/components/buttons/button-icon.xhtml">
|
<!-- DRY/WOU: Composite Component action-button-view -->
|
||||||
<ui:param name="icon" value="pi pi-eye" />
|
<uf:action-button-view id="#{membre.id}"
|
||||||
<ui:param name="action" value="#{membreListeBean.voirProfil(membre)}" />
|
detailPage="/pages/secure/membre/profil.xhtml"
|
||||||
<ui:param name="title" value="Voir profil" />
|
iconOnly="true"/>
|
||||||
<ui:param name="severity" value="info" />
|
|
||||||
</ui:include>
|
|
||||||
<ui:include src="/templates/components/buttons/button-icon.xhtml">
|
<ui:include src="/templates/components/buttons/button-icon.xhtml">
|
||||||
<ui:param name="icon" value="pi pi-pencil" />
|
<ui:param name="icon" value="pi pi-pencil" />
|
||||||
<ui:param name="action" value="#{membreListeBean.modifierMembre(membre)}" />
|
<ui:param name="action" value="#{membreListeBean.modifierMembre(membre)}" />
|
||||||
|
|||||||
@@ -0,0 +1,22 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml"
|
||||||
|
xmlns:h="http://xmlns.jcp.org/jsf/html"
|
||||||
|
xmlns:composite="http://xmlns.jcp.org/jsf/composite"
|
||||||
|
xmlns:p="http://primefaces.org/ui">
|
||||||
|
|
||||||
|
<composite:interface>
|
||||||
|
<composite:attribute name="id" 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"/>
|
||||||
|
</composite:interface>
|
||||||
|
|
||||||
|
<composite:implementation>
|
||||||
|
<p:commandButton value="#{cc.attrs.iconOnly ? null : 'Consulter'}"
|
||||||
|
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;"/>
|
||||||
|
</composite:implementation>
|
||||||
|
</html>
|
||||||
|
|
||||||
Reference in New Issue
Block a user