Package org.silverpeas.components.whitepages.control

## Class WhitePagesSessionController

- java.lang.Object
- - org.silverpeas.core.web.mvc.controller.AbstractComponentSessionController
  - - org.silverpeas.components.whitepages.control.WhitePagesSessionController

- All Implemented Interfaces:
    `Serializable`, `org.silverpeas.core.web.mvc.controller.ComponentSessionController`, `org.silverpeas.core.web.session.SessionCloseable`

      public class WhitePagesSessionController
      extends org.silverpeas.core.web.mvc.controller.AbstractComponentSessionController

  See Also:
    Serialized Form

- - ### Field Summary

    - ### Fields inherited from class org.silverpeas.core.web.mvc.controller.AbstractComponentSessionController

      `context`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `WhitePagesSessionController​(org.silverpeas.core.web.mvc.controller.MainSessionController mainSessionCtrl, org.silverpeas.core.web.mvc.controller.ComponentContext context)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `confirmFieldsChoice​(String[] fields)` |
    `void` | `createCard​(jakarta.servlet.http.HttpServletRequest request)` | Rempli le DataRecord de la fiche courante en cours de création à partir de la request
    `Card` | `createCard​(org.silverpeas.core.admin.user.model.UserDetail userDetail)` | Crée une nouvelle fiche (new Card()) et affecte le UserRecord de la fiche et le userForm (userTemplate.getViewForm()) Met la fiche en session et la retourne Ajoute un new WhitePages(" fiche en cours de création " ) à la liste des fiches
    `void` | `delete​(Collection<String> userCardIds)` | Supprime une liste de fiches de l'annuaire + liste des cardRecord correspondant
    `boolean` | `existCard​(String userId)` | Indique si un utilisateur possède déjà une fiche dans l'annuaire courant
    `List<org.silverpeas.core.contribution.content.form.FieldTemplate>` | `getAllXmlFieldsForSearch()` |
    `Card` | `getCard​(long userCardId)` | Recherche une fiche Retourne currentCard si son id est le même que celui de la fiche recherchée Demande au CardManager la fiche sinon Affecte l'attribut ReadOnly de Card à false si la fiche fait partie de l'instance (instanceId) Recherche et affecte le cardRecord de la fiche (getTemplate(currentCard .getInstanceId()).getRecordset().getRecord(userCardId)) Recherche et affecte le userRecord de la fiche (userTemplate.getRecord(userCardId)) Affecte le cardViewForm (getTemplate(currentCard.getInstanceId()).getViewForm()) Affecte le cardUpdateForm (cardTemplate.getUpdateForm()) Affecte le userForm (userTemplate.getViewForm()) Appel getWhitePagesCards pour mettre à jour la liste des fiches inter-instance portant sur le même user Met la fiche en session puis la retourne
    `Card` | `getCardReadOnly​(long userCardId)` | Recherche une fiche en lecture seule pour accès externe ou rôle user Retourne currentCard si son id est le même que celui de la fiche recherchée Demande au CardManager la fiche sinon Recherche et affecte le cardRecord de la fiche (getTemplate(currentCard.getInstanceId()).getRecordset().getRecord( userCardId)) Recherche et affecte le userRecord de la fiche (userTemplate.getRecord(userCardId)) Affecte le cardViewForm (getTemplate(currentCard.getInstanceId()).getViewForm()) Affecte le userForm (userTemplate.getViewForm()) Appel getWhitePagesCards pour mettre à jour la liste des fiches inter-instance portant sur le même user Met la fiche en session puis la retourne
    `Collection<Card>` | `getCards()` | Liste les fiches de l'annuaire
    `Card` | `getCurrentCard()` |
    `String` | `getCurrentCardContentId()` |
    `Card` | `getCurrentCreateCard()` |
    `Collection<WhitePagesCard>` | `getCurrentUserCards()` |
    `List<SearchField>` | `getLdapAttributesList()` |
    `Map<String,​Set<org.silverpeas.core.pdc.pdc.model.ClassifyValue>>` | `getPdcPositions​(int cardId)` |
    `Set<String>` | `getSearchFieldIds()` |
    `SortedSet<SearchField>` | `getSearchFields()` |
    `List<Card>` | `getSearchResult​(String query, String taxonomyPosition, Map<String,​String> xmlFields, List<org.silverpeas.core.index.indexing.model.FieldDescription> fieldsQuery)` |
    `int` | `getSilverObjectId()` |
    `Card` | `getUserCard​(String userId)` | Recherche une fiche à partir d'un userId (appel de WhitePages à partir d'un autre composant) Récupère le premier élement de la liste des fiches inter-instance portant sur le user (getWhitePagesCards) Appel la recherche fiche (getCardReadOnly) à partir de l'id du premier elèment de currentUserCards
    `org.silverpeas.core.admin.user.model.UserDetail` | `getUserDetailSelected()` | Appel UserPannel pour récup du user sélectionné : UserDetail[] UserPanel.getUserDetailSelected()
    `Collection<Card>` | `getVisibleCards()` | Liste les fiches de l'annuaire non masquées
    `void` | `hide​(Collection<String> userCardIds)` | Masque une liste de fiches de l'annuaire
    `void` | `initCurrentUserCards()` |
    `String` | `initUserPanel()` | Appel UserPannel pour set des users selectionnable (4 [] vides) :
    `boolean` | `isAdmin()` |
    `Boolean` | `isEmailHidden()` |
    `void` | `reverseHide​(Collection<String> userCardIds)` | Reverse le statut Masqué d'une liste de fiches de l'annuaire
    `void` | `saveCard()` | Enregistre la fiche courante : Enregistre les données du modèle de la fiche (cardTemplate.getRecordset().save(currentCard.readCardRecord()))
    `void` | `sendNotification​(String bodyMessage)` |
    `Card` | `setCardRecord()` | Affecte un DataRecord vide (cardTemplate.getRecordset().getEmptyRecord()), le cardViewForm (cardTemplate.getViewForm()) et le cardUpdateForm à la fiche courante Retourne la fiche courante
    `void` | `setNotifiedUserCard​(Card card)` |
    `void` | `unHide​(Collection<String> userCardIds)` | De Masque une liste de fiches de l'annuaire
    `void` | `updateCardRecord​(jakarta.servlet.http.HttpServletRequest request)` | Rempli le DataRecord de la fiche courante à partir de la request

    - ### Methods inherited from class org.silverpeas.core.web.mvc.controller.AbstractComponentSessionController

      `addClipboardSelection, clipboardPasteDone, close, getClipboardErrorMessage, getClipboardExceptionError, getClipboardObjects, getClipboardSelectedObjects, getClipboardSize, getComponentAccessController, getComponentId, getComponentLabel, getComponentName, getComponentParameterValue, getComponentParameterValue, getComponentRootName, getComponentUrl, getHighestSilverpeasUserRole, getIcon, getLanguage, getLook, getMultilang, getOrganisationController, getPersonalization, getRSSUrl, getSelection, getSettings, getSilverpeasUserRoles, getSpaceId, getSpaceLabel, getString, getSubscriptionContext, getUrlEncodedParameter, getUserAccessLevel, getUserAvailComponentIds, getUserDetail, getUserDetail, getUserId, getUserManageableGroupIds, getUserManageableSpaceIds, getUserRoles, getZoneId, isAppInMaintenance, isGroupManager, isPasswordChangeAllowed, isSpaceInMaintenance, removeClipboardElement, setAppModeMaintenance, setClipboardSelectedElement, setComponentRootName, setSpaceModeMaintenance`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### WhitePagesSessionController

          public WhitePagesSessionController​(org.silverpeas.core.web.mvc.controller.MainSessionController mainSessionCtrl,
                                             org.silverpeas.core.web.mvc.controller.ComponentContext context)

  - ### Method Detail

    - #### isAdmin

          public boolean isAdmin()

    - #### getCard

          public Card getCard​(long userCardId)
                       throws WhitePagesException

      Recherche une fiche Retourne currentCard si son id est le même que celui de la fiche recherchée Demande au CardManager la fiche sinon Affecte l'attribut ReadOnly de Card à false si la fiche fait partie de l'instance (instanceId) Recherche et affecte le cardRecord de la fiche (getTemplate(currentCard .getInstanceId()).getRecordset().getRecord(userCardId)) Recherche et affecte le userRecord de la fiche (userTemplate.getRecord(userCardId)) Affecte le cardViewForm (getTemplate(currentCard.getInstanceId()).getViewForm()) Affecte le cardUpdateForm (cardTemplate.getUpdateForm()) Affecte le userForm (userTemplate.getViewForm()) Appel getWhitePagesCards pour mettre à jour la liste des fiches inter-instance portant sur le même user Met la fiche en session puis la retourne
      Parameters:
        `userCardId` - id de la fiche
      Throws:
        `WhitePagesException`

    - #### getCardReadOnly

          public Card getCardReadOnly​(long userCardId)
                               throws WhitePagesException

      Recherche une fiche en lecture seule pour accès externe ou rôle user Retourne currentCard si son id est le même que celui de la fiche recherchée Demande au CardManager la fiche sinon Recherche et affecte le cardRecord de la fiche (getTemplate(currentCard.getInstanceId()).getRecordset().getRecord( userCardId)) Recherche et affecte le userRecord de la fiche (userTemplate.getRecord(userCardId)) Affecte le cardViewForm (getTemplate(currentCard.getInstanceId()).getViewForm()) Affecte le userForm (userTemplate.getViewForm()) Appel getWhitePagesCards pour mettre à jour la liste des fiches inter-instance portant sur le même user Met la fiche en session puis la retourne
      Parameters:
        `userCardId` - id de la fiche
      Throws:
        `WhitePagesException`

    - #### getUserCard

          public Card getUserCard​(String userId)
                           throws WhitePagesException

      Recherche une fiche à partir d'un userId (appel de WhitePages à partir d'un autre composant) Récupère le premier élement de la liste des fiches inter-instance portant sur le user (getWhitePagesCards) Appel la recherche fiche (getCardReadOnly) à partir de l'id du premier elèment de currentUserCards
      Parameters:
        `userId` - id d'un user
      Returns:
        une Card ou NULL
      Throws:
        `WhitePagesException`

    - #### createCard

          public Card createCard​(org.silverpeas.core.admin.user.model.UserDetail userDetail)
                          throws WhitePagesException

      Crée une nouvelle fiche (new Card()) et affecte le UserRecord de la fiche et le userForm (userTemplate.getViewForm()) Met la fiche en session et la retourne Ajoute un new WhitePages(" fiche en cours de création " ) à la liste des fiches
      Parameters:
        `userDetail` - détail de l'utilisateur sur lequel porte la fiche
      Throws:
        `WhitePagesException`

    - #### setCardRecord

          public Card setCardRecord()
                             throws WhitePagesException

      Affecte un DataRecord vide (cardTemplate.getRecordset().getEmptyRecord()), le cardViewForm (cardTemplate.getViewForm()) et le cardUpdateForm à la fiche courante Retourne la fiche courante
      Throws:
        `WhitePagesException`

    - #### createCard

          public void createCard​(jakarta.servlet.http.HttpServletRequest request)
                          throws WhitePagesException

      Rempli le DataRecord de la fiche courante en cours de création à partir de la request
      Throws:
        `WhitePagesException` - error

    - #### updateCardRecord

          public void updateCardRecord​(jakarta.servlet.http.HttpServletRequest request)
                                throws WhitePagesException

      Rempli le DataRecord de la fiche courante à partir de la request
      Throws:
        `WhitePagesException`

    - #### saveCard

          public void saveCard()
                        throws WhitePagesException

      Enregistre la fiche courante : Enregistre les données du modèle de la fiche (cardTemplate.getRecordset().save(currentCard.readCardRecord()))
      Throws:
        `WhitePagesException`

    - #### getCards

          public Collection<Card> getCards()
                                    throws WhitePagesException

      Liste les fiches de l'annuaire
      Returns:
        la liste de toutes les fiches de l'annuaire (Collection de Card)
      Throws:
        `WhitePagesException`

    - #### getVisibleCards

          public Collection<Card> getVisibleCards()
                                           throws WhitePagesException

      Liste les fiches de l'annuaire non masquées
      Returns:
        la liste de toutes les fiches de l'annuaire (Collection de Card) non masquées (hideStatus = 0)
      Throws:
        `WhitePagesException`

    - #### delete

          public void delete​(Collection<String> userCardIds)
                      throws WhitePagesException

      Supprime une liste de fiches de l'annuaire + liste des cardRecord correspondant
      Parameters:
        `userCardIds` - liste des identifiants des fiches à supprimer
      Throws:
        `WhitePagesException`

    - #### hide

          public void hide​(Collection<String> userCardIds)
                    throws WhitePagesException

      Masque une liste de fiches de l'annuaire
      Parameters:
        `userCardIds` - liste des identifiants des fiches à masquer
      Throws:
        `WhitePagesException`

    - #### unHide

          public void unHide​(Collection<String> userCardIds)
                      throws WhitePagesException

      De Masque une liste de fiches de l'annuaire
      Parameters:
        `userCardIds` - liste des identifiants des fiches à de masquer
      Throws:
        `WhitePagesException`

    - #### reverseHide

          public void reverseHide​(Collection<String> userCardIds)
                           throws WhitePagesException

      Reverse le statut Masqué d'une liste de fiches de l'annuaire
      Parameters:
        `userCardIds` - liste des identifiants des fiches
      Throws:
        `WhitePagesException`

    - #### existCard

          public boolean existCard​(String userId)
                            throws WhitePagesException

      Indique si un utilisateur possède déjà une fiche dans l'annuaire courant
      Parameters:
        `userId` - l'identifiant d'un utilisateur
      Throws:
        `WhitePagesException`

    - #### initUserPanel

          public String initUserPanel()

      Appel UserPannel pour set des users selectionnable (4 [] vides) :

    - #### getUserDetailSelected

          public org.silverpeas.core.admin.user.model.UserDetail getUserDetailSelected()

      Appel UserPannel pour récup du user sélectionné : UserDetail[] UserPanel.getUserDetailSelected()

    - #### initCurrentUserCards

          public void initCurrentUserCards()

    - #### getCurrentCard

          public Card getCurrentCard()

    - #### getCurrentCreateCard

          public Card getCurrentCreateCard()

    - #### getCurrentUserCards

          public Collection<WhitePagesCard> getCurrentUserCards()

    - #### getSilverObjectId

          public int getSilverObjectId()

    - #### getCurrentCardContentId

          public String getCurrentCardContentId()

    - #### setNotifiedUserCard

          public void setNotifiedUserCard​(Card card)

    - #### sendNotification

          public void sendNotification​(String bodyMessage)
                                throws org.silverpeas.core.notification.NotificationException

      Throws:
        `org.silverpeas.core.notification.NotificationException`

    - #### isEmailHidden

          public Boolean isEmailHidden()

    - #### getAllXmlFieldsForSearch

          public List<org.silverpeas.core.contribution.content.form.FieldTemplate> getAllXmlFieldsForSearch()
                                                                                                     throws WhitePagesException,
                                                                                                            org.silverpeas.core.contribution.template.publication.PublicationTemplateException

      Throws:
        `WhitePagesException`
        `org.silverpeas.core.contribution.template.publication.PublicationTemplateException`

    - #### getLdapAttributesList

          public List<SearchField> getLdapAttributesList()
                                                  throws org.silverpeas.core.admin.service.AdminException

      Throws:
        `org.silverpeas.core.admin.service.AdminException`

    - #### confirmFieldsChoice

          public void confirmFieldsChoice​(String[] fields)

    - #### getSearchFields

          public SortedSet<SearchField> getSearchFields()

    - #### getSearchFieldIds

          public Set<String> getSearchFieldIds()

    - #### getSearchResult

          public List<Card> getSearchResult​(String query,
                                            String taxonomyPosition,
                                            Map<String,​String> xmlFields,
                                            List<org.silverpeas.core.index.indexing.model.FieldDescription> fieldsQuery)

    - #### getPdcPositions

          public Map<String,​Set<org.silverpeas.core.pdc.pdc.model.ClassifyValue>> getPdcPositions​(int cardId)
                                                                                                 throws org.silverpeas.core.pdc.pdc.model.PdcException

      Throws:
        `org.silverpeas.core.pdc.pdc.model.PdcException`