listUsers.xhtml 6.05 KB
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:p="http://primefaces.org/ui"
                template="#{theme.template}">

    <!-- content -->
    <ui:define name="content">

        <h2>Liste des utilisateurs</h2>

        <p>
            Liste des utilisateurs enregistrs sur le site. Un utilisateur peut tre "visible" ou non. Dans
            le cas o il n'est pas visible, il lui est impossible de s'identifier sur le site. Au moment de
            son enregistrement, par dfaut, il n'est pas visible : un systme de confirmation par courriel permet
            de valider que l'adresse est correcte, et seulement  ce moment l de le rendre visible. La cration
            d'un utilisateur directement  partir de la passerelle n'utilise pas ce systme de confirmation.
        </p>

        <h:form>
            <div id="search" style="text-align:center;">
                <h:panelGrid columns="3" styleClass="half">
                    <h:outputLabel for="searchString" value="Filtre" styleClass="req"/>
                    <h:inputText id="searchString" value="#{userListMgr.searchString}" styleClass="req"/>
                    <h:commandButton id="find" value="OK" action="#{userListMgr.find}" styleClass="lanceReq"><!--<s:defaultAction/>--></h:commandButton>
                </h:panelGrid>
                <h:outputText value="Pas d'lment respectant ce critre dans la base"
                              rendered="#{elementList.rowCount==0}"/>
            </div>

            <h:messages globalOnly="true" errorClass="errorMsg" infoClass="infoMsg"/>

            <div id="listElements">

                <h:commandLink styleClass="fRight acLink"  action="#{userListMgr.goToCreate('user')}" >
                    <img src="/images/structure/vide.gif" class="icAddC" alt="" title="Crer un nouvel utilisateur" />
                    Nouvel Utilisateur
                </h:commandLink>

                <p:dataTable id="tableElements" rendered="#{elementList.rowCount>0}"
                                var="user" value="#{elementList}" rows="#{userListMgr.pageSize}"
                                styleClass="results" rowClasses="altRichRow,altRow">
                    <f:facet name="header">
                        <p:dataScroller for="tableElements"
                                           stepControls="auto" boundaryControls="auto" fastControls="auto">
                            <f:facet name="first">Premiers</f:facet>
                            <f:facet name="last">Derniers</f:facet>
                            <f:facet name="fastforward">Suivants</f:facet>
                            <f:facet name="fastrewind">Prcdents</f:facet>
                            <f:facet name="pages" >&#160;</f:facet>
                        </p:dataScroller>
                    </f:facet>
                    <p:column rendered="#{s:hasRole('ADMINISTRATEUR')}">
                        <h:commandLink id="delete" onclick="return confirm('Voulez vous vraiment supprimer cet lment ?');" action="#{userListMgr.delete}">
                            <img src="/images/structure/vide.gif" class="icDel" alt="" title="Effacer" />
                        </h:commandLink>
                    </p:column>
                    <p:column rendered="#{s:hasRole('ADMINISTRATEUR')}">
                        <h:commandLink action="#{userListMgr.goToUpdate('user', user.pk)}">
                            <img src="/images/structure/vide.gif" class="icEdit" alt="" title="Modifier" />
                        </h:commandLink>
                    </p:column>
                    <p:column styleClass="third" sortBy="#{user.username}">
                        <f:facet name="header">Identifiant</f:facet>
                        <h:outputLink value="#{user.traceable.urlRewrite}">
                            <h:outputText value="#{user.username}" />
                        </h:outputLink>
                    </p:column>
                    <p:column styleClass="third" sortBy="#{user.firstName} #{user.lastName}">
                        <f:facet name="header">Nom</f:facet>
                        <h:outputLink value="#{user.traceable.urlRewrite}">
                            <h:outputText value="#{user.firstName} #{user.lastName}" />
                        </h:outputLink>
                    </p:column>
                    <p:column styleClass="third" sortBy="#{user.email}">
                        <f:facet name="header">Email</f:facet>
                        <h:outputText value="#{user.email}" />
                    </p:column>
                    <p:column>
                        <h:graphicImage value="/images/structure/dVert.gif" rendered="#{user.visible and user.activated}" title="Utilisateur activ" />
                        <h:graphicImage value="/images/structure/dOrange.gif" rendered="#{(not user.visible) and user.activated}" title="Utilisateur dsactiv" />
                        <h:graphicImage value="/images/structure/dRouge.gif" rendered="#{not user.activated}" title="Utilisateur non enregistr" />
                    </p:column>
                    <f:facet name="footer">
                        <h:commandLink action="#{userListMgr.goToCreate('user')}" value="Crer un nouvel utilisateur" >
                        </h:commandLink>
                    </f:facet>
                </p:dataTable>
                <p>
                    <h:commandLink action="#{userListMgr.goToCreate('user')}" value="Crer un nouvel utilisateur"
                                   rendered="#{elementList.rowCount==0}">
                    </h:commandLink>
                </p>
            </div>
        </h:form>

    </ui:define>

    <!-- sidebars -->
    <ui:define name="sidebar">
        <ui:include src="/includes/top-sidebar-admin.include"/>

    </ui:define>

</ui:composition>