Files
unionflow-client-quarkus-pr…/target/classes/META-INF/resources/pages/secure/personnel/activites.xhtml

101 lines
5.1 KiB
HTML

<!DOCTYPE html>
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://xmlns.jcp.org/jsf/html"
xmlns:f="http://xmlns.jcp.org/jsf/core"
xmlns:ui="http://xmlns.jcp.org/jsf/facelets"
xmlns:p="http://primefaces.org/ui"
template="/templates/main-template.xhtml">
<ui:param name="page" value="#{personnelBean}"/>
<ui:define name="title">Mes Activités - UnionFlow</ui:define>
<ui:define name="content">
<!-- En-tête -->
<ui:include src="/templates/components/layout/page-header.xhtml">
<ui:param name="icon" value="pi pi-history text-purple-500" />
<ui:param name="title" value="Mes Activités" />
<ui:param name="description" value="Suivez toutes vos interactions et participations dans UnionFlow" />
<ui:define name="actions">
<h:form id="formActions">
<div class="flex gap-2">
<ui:include src="/templates/components/buttons/button-secondary.xhtml">
<ui:param name="value" value="Exporter" />
<ui:param name="icon" value="pi pi-download" />
<ui:param name="outlined" value="true" />
</ui:include>
<ui:include src="/templates/components/buttons/button-primary.xhtml">
<ui:param name="value" value="Filtrer" />
<ui:param name="icon" value="pi pi-filter" />
<ui:param name="onclick" value="PF('dlgFiltres').show();" />
</ui:include>
</div>
</h:form>
</ui:define>
</ui:include>
<!-- Statistiques d'activité -->
<div class="grid">
<ui:include src="/templates/components/cards/stat-card.xhtml">
<ui:param name="value" value="#{personnelBean.statistiques.actionsRealisees}" />
<ui:param name="label" value="Actions Totales" />
<ui:param name="subLabel" value="Toutes périodes" />
<ui:param name="icon" value="pi pi-check-circle" />
<ui:param name="bgColor" value="blue" />
</ui:include>
<ui:include src="/templates/components/cards/stat-card.xhtml">
<ui:param name="value" value="#{personnelBean.statistiques.evenementsParticipes}" />
<ui:param name="label" value="Événements" />
<ui:param name="subLabel" value="Participés" />
<ui:param name="icon" value="pi pi-calendar" />
<ui:param name="bgColor" value="green" />
</ui:include>
<ui:include src="/templates/components/cards/stat-card.xhtml">
<ui:param name="value" value="#{personnelBean.statistiques.tauxParticipation}%" />
<ui:param name="label" value="Taux Participation" />
<ui:param name="subLabel" value="Global" />
<ui:param name="icon" value="pi pi-chart-line" />
<ui:param name="bgColor" value="purple" />
</ui:include>
<ui:include src="/templates/components/cards/stat-card.xhtml">
<ui:param name="value" value="8h" />
<ui:param name="label" value="Temps Connecté" />
<ui:param name="subLabel" value="Cette semaine" />
<ui:param name="icon" value="pi pi-clock" />
<ui:param name="bgColor" value="orange" />
</ui:include>
</div>
<!-- Activités récentes -->
<div class="card">
<h5>Activités Récentes</h5>
<ui:repeat value="#{personnelBean.activitesRecentes}" var="activite">
<div class="surface-100 hover:surface-200 border-round p-4 mb-3 cursor-pointer transition-duration-200">
<div class="flex align-items-center justify-content-between">
<div class="flex align-items-center gap-3">
<div class="w-3rem h-3rem border-circle bg-#{activite.couleur}-100 flex align-items-center justify-content-center">
<i class="pi #{activite.icon} text-#{activite.couleur}-600 text-xl"></i>
</div>
<div>
<h6 class="text-900 font-semibold mb-1">#{activite.titre}</h6>
<p class="text-600 text-sm mb-0">#{activite.description}</p>
</div>
</div>
<div class="text-right">
<div class="text-900 font-semibold text-sm">#{activite.dateHeure}</div>
</div>
</div>
</div>
</ui:repeat>
<div class="text-center text-600 text-sm" rendered="#{empty personnelBean.activitesRecentes}">
Aucune activité récente
</div>
</div>
</ui:define>
</ui:composition>