Sync: code local unifié
Synchronisation du code source local (fait foi). Signed-off-by: lions dev Team
This commit is contained in:
@@ -7,7 +7,7 @@
|
||||
template="/templates/main-template.xhtml">
|
||||
|
||||
<f:metadata>
|
||||
<f:viewParam name="id" value="#{membreCotisationBean.membreId}"/>
|
||||
<f:viewParam name="id" value="#{membreCotisationBean.membreId}" converter="uuidConverter"/>
|
||||
<f:event type="preRenderView" listener="#{membreCotisationBean.init}"/>
|
||||
</f:metadata>
|
||||
|
||||
@@ -86,7 +86,7 @@
|
||||
|
||||
<!-- Liste des cotisations -->
|
||||
<div class="card">
|
||||
<h5 class="mb-3">Historique des Cotisations</h5>
|
||||
<h5 class="mb-3">Mes Cotisations</h5>
|
||||
|
||||
<!-- Filtres -->
|
||||
<p:toolbar>
|
||||
|
||||
@@ -143,7 +143,7 @@
|
||||
<div class="col-12 md:col-4">
|
||||
<div class="field">
|
||||
<p:outputLabel for="organisationFilter" value="Organisation" />
|
||||
<p:selectOneMenu id="organisationFilter" value="#{membreExportBean.organisationId}" styleClass="w-full">
|
||||
<p:selectOneMenu id="organisationFilter" value="#{membreExportBean.organisationId}" converter="uuidConverter" styleClass="w-full">
|
||||
<f:selectItem itemLabel="Toutes les organisations" itemValue="" />
|
||||
<f:selectItems value="#{membreExportBean.organisationsDisponibles}"
|
||||
var="org"
|
||||
|
||||
@@ -130,7 +130,7 @@
|
||||
<div class="col-12 md:col-6">
|
||||
<div class="field">
|
||||
<p:outputLabel for="organisationImport" value="Organisation par défaut" />
|
||||
<p:selectOneMenu id="organisationImport" value="#{membreImportBean.organisationId}" styleClass="w-full">
|
||||
<p:selectOneMenu id="organisationImport" value="#{membreImportBean.organisationId}" converter="uuidConverter" styleClass="w-full">
|
||||
<f:selectItem itemLabel="Sélectionner une organisation..." itemValue="" />
|
||||
<f:selectItems value="#{membreImportBean.organisationsDisponibles}"
|
||||
var="org"
|
||||
|
||||
@@ -6,6 +6,11 @@
|
||||
xmlns:p="http://primefaces.org/ui"
|
||||
template="/templates/main-template.xhtml">
|
||||
|
||||
<!-- Sécurisation de la page basée sur les rôles -->
|
||||
<ui:include src="/templates/components/security/page-access-control.xhtml">
|
||||
<ui:param name="allowedRoles" value="SECRETAIRE,ADMIN" />
|
||||
</ui:include>
|
||||
|
||||
<ui:param name="page" value="#{membreInscriptionBean}"/>
|
||||
<ui:define name="title">Inscription Membre - UnionFlow</ui:define>
|
||||
|
||||
@@ -268,7 +273,7 @@
|
||||
<ui:define name="content">
|
||||
<div class="field">
|
||||
<p:outputLabel for="organisationId" value="Organisation *" styleClass="font-bold text-primary" />
|
||||
<p:selectOneMenu id="organisationId" value="#{membreInscriptionBean.organisationId}" required="true" requiredMessage="Vous devez sélectionner une organisation" styleClass="w-full">
|
||||
<p:selectOneMenu id="organisationId" value="#{membreInscriptionBean.organisationId}" converter="uuidConverter" required="true" requiredMessage="Vous devez sélectionner une organisation" styleClass="w-full">
|
||||
<f:selectItem itemLabel="--- Sélectionner une organisation ---" itemValue="" noSelectionOption="true" />
|
||||
<f:selectItems value="#{membreInscriptionBean.organisationsDisponibles}"
|
||||
var="org"
|
||||
|
||||
@@ -19,16 +19,20 @@
|
||||
<ui:param name="styleClass" value="mb-3" />
|
||||
<ui:define name="actions">
|
||||
<p:button value="Nouveau Membre" icon="pi pi-user-plus" outcome="membreInscriptionPage"
|
||||
styleClass="ui-button-success mr-2" />
|
||||
styleClass="ui-button-success mr-2"
|
||||
rendered="#{menuBean.gestionMembresMenuVisible}" />
|
||||
<p:commandButton value="Import / Export" icon="pi pi-file-excel"
|
||||
onclick="PF('dlgImportExport').show();" type="button" styleClass="ui-button-info" />
|
||||
onclick="PF('dlgImportExport').show();" type="button" styleClass="ui-button-info"
|
||||
rendered="#{menuBean.gestionMembresMenuVisible}" />
|
||||
</ui:define>
|
||||
</ui:decorate>
|
||||
|
||||
<!-- ================================================================
|
||||
STATISTIQUES (DRY/WOU: stat-card)
|
||||
Visible uniquement pour SECRETAIRE, ADMIN (pas MEMBRE_ACTIF)
|
||||
================================================================ -->
|
||||
<h:panelGroup id="panelStatistiques" layout="block" styleClass="grid mb-3">
|
||||
<h:panelGroup id="panelStatistiques" layout="block" styleClass="grid mb-3"
|
||||
rendered="#{menuBean.gestionMembresMenuVisible}">
|
||||
<div class="col-12 md:col-3">
|
||||
<ui:decorate template="/templates/components/cards/stat-card.xhtml">
|
||||
<ui:param name="value" value="#{membreListeBean.totalMembres}" />
|
||||
@@ -125,10 +129,11 @@
|
||||
|
||||
<!-- ================================================================
|
||||
ACTIONS GROUPÉES (visible si sélection)
|
||||
Visible uniquement pour SECRETAIRE, ADMIN (actions administratives)
|
||||
================================================================ -->
|
||||
<h:panelGroup id="panelActionsGroupeesWrapper">
|
||||
<h:panelGroup id="panelActionsGroupees" layout="block" styleClass="flex gap-2 mb-3"
|
||||
rendered="#{not empty membreListeBean.selectedMembres}">
|
||||
rendered="#{not empty membreListeBean.selectedMembres and menuBean.gestionMembresMenuVisible}">
|
||||
<p:commandButton value="Rappel Cotisations" icon="pi pi-bell"
|
||||
action="#{membreListeBean.rappelCotisationsGroupe}" update="messages"
|
||||
styleClass="ui-button-warning ui-button-sm" />
|
||||
@@ -157,8 +162,9 @@
|
||||
<p:ajax event="rowUnselect" update=":formMembres:panelActionsGroupeesWrapper" />
|
||||
<p:ajax event="toggleSelect" update=":formMembres:panelActionsGroupeesWrapper" />
|
||||
|
||||
<!-- Colonne sélection checkbox -->
|
||||
<p:column selectionMode="multiple" headerText="" style="width: 3rem; text-align: center;" />
|
||||
<!-- Colonne sélection checkbox - ADMIN SEULEMENT (pour actions groupées) -->
|
||||
<p:column selectionMode="multiple" headerText="" style="width: 3rem; text-align: center;"
|
||||
rendered="#{menuBean.gestionMembresMenuVisible}" />
|
||||
|
||||
<!-- Colonne: Membre (Nom + Email) -->
|
||||
<ui:decorate template="/templates/components/columns/column-name-with-subtitle.xhtml">
|
||||
@@ -225,9 +231,10 @@
|
||||
<f:param name="id" value="#{membre.id}" />
|
||||
</p:button>
|
||||
|
||||
<!-- Éditer -->
|
||||
<!-- Éditer - ADMIN SEULEMENT -->
|
||||
<p:button icon="pi pi-pencil" outcome="membreModifierPage" title="Modifier"
|
||||
styleClass="ui-button-warning ui-button-sm ui-button-rounded mr-1">
|
||||
styleClass="ui-button-warning ui-button-sm ui-button-rounded mr-1"
|
||||
rendered="#{menuBean.gestionMembresMenuVisible}">
|
||||
<f:param name="id" value="#{membre.id}" />
|
||||
</p:button>
|
||||
|
||||
@@ -237,31 +244,34 @@
|
||||
oncomplete="PF('dlgContact').show();" update=":dlgContact"
|
||||
styleClass="ui-button-help ui-button-sm ui-button-rounded mr-1" />
|
||||
|
||||
<!-- Suspendre (visible si actif) -->
|
||||
<!-- Suspendre - ADMIN SEULEMENT (visible si actif) -->
|
||||
<p:commandButton icon="pi pi-ban" title="Suspendre"
|
||||
action="#{membreListeBean.suspendreMembre(membre)}"
|
||||
update="dtMembres messages panelStatistiques" rendered="#{membre.statut == 'ACTIF'}"
|
||||
styleClass="ui-button-danger ui-button-sm ui-button-rounded mr-1">
|
||||
<p:confirm header="Confirmation" message="Suspendre #{membre.nomComplet} ?"
|
||||
icon="pi pi-exclamation-triangle" />
|
||||
</p:commandButton>
|
||||
actionListener="#{membreListeBean.preparerSuspendre(membre)}"
|
||||
update=":formMembres:dlgConfirmSuspendre"
|
||||
oncomplete="PF('dlgConfirmSuspendre').show();"
|
||||
rendered="#{menuBean.gestionMembresMenuVisible and membre.statut == 'ACTIF'}"
|
||||
styleClass="ui-button-danger ui-button-sm ui-button-rounded mr-1" />
|
||||
|
||||
<!-- Réactiver (visible si suspendu) -->
|
||||
<!-- Réactiver - ADMIN SEULEMENT (visible si suspendu) -->
|
||||
<p:commandButton icon="pi pi-replay" title="Réactiver"
|
||||
action="#{membreListeBean.reactiverMembre(membre)}"
|
||||
update="dtMembres messages panelStatistiques" rendered="#{membre.statut == 'SUSPENDU'}"
|
||||
update="dtMembres messages panelStatistiques"
|
||||
rendered="#{menuBean.gestionMembresMenuVisible and membre.statut == 'SUSPENDU'}"
|
||||
styleClass="ui-button-success ui-button-sm ui-button-rounded" />
|
||||
</ui:define>
|
||||
</ui:decorate>
|
||||
</p:dataTable>
|
||||
|
||||
<!-- Confirmation dialog global -->
|
||||
<p:confirmDialog global="true" showEffect="fade" hideEffect="fade" responsive="true" width="450">
|
||||
<p:commandButton value="Oui" type="button" styleClass="ui-button-danger ui-confirmdialog-yes"
|
||||
icon="pi pi-check" />
|
||||
<p:commandButton value="Non" type="button" styleClass="ui-button-secondary ui-confirmdialog-no"
|
||||
icon="pi pi-times" />
|
||||
</p:confirmDialog>
|
||||
<p:dialog id="dlgConfirmSuspendre" widgetVar="dlgConfirmSuspendre" header="Confirmation" modal="true" width="400" showEffect="fade" hideEffect="fade">
|
||||
<p class="mb-3">Suspendre ce membre ?</p>
|
||||
<f:facet name="footer">
|
||||
<p:commandButton value="Non" icon="pi pi-times" styleClass="ui-button-secondary" onclick="PF('dlgConfirmSuspendre').hide();" />
|
||||
<p:commandButton value="Oui" icon="pi pi-check" styleClass="ui-button-danger" process="@this"
|
||||
actionListener="#{membreListeBean.confirmerSuspendre}"
|
||||
update=":formMembres:dtMembres :formMembres:messages :formMembres:panelStatistiques"
|
||||
oncomplete="PF('dlgConfirmSuspendre').hide();" />
|
||||
</f:facet>
|
||||
</p:dialog>
|
||||
</h:form>
|
||||
|
||||
<!-- ================================================================
|
||||
|
||||
Reference in New Issue
Block a user