Example #1
0
 public static function initNavigation($id_fta, $id_fta_chapitre_encours, $synthese_action, $comeback, $id_fta_etat, $abrevation_etat, $id_fta_role, $paramActivationComplete, $paramSelectionChap)
 {
     /**
      * Modification
      */
     self::$ftaModification = Acl::getValueAccesRights(Acl::ACL_FTA_MODIFICATION);
     /**
      * Consultation
      */
     self::$ftaConsultation = Acl::getValueAccesRights(Acl::ACL_FTA_CONSULTATION);
     self::$selectionChap = $paramSelectionChap;
     self::$id_fta = $id_fta;
     self::$id_fta_chapitre_encours = $id_fta_chapitre_encours;
     self::$synthese_action = $synthese_action;
     if ($id_fta_etat == FtaEtatModel::ID_VALUE_MODIFICATION) {
         self::$synthese_action = FtaEtatModel::ETAT_AVANCEMENT_VALUE_EN_COURS;
     }
     self::$comeback = $comeback;
     self::$id_fta_etat = $id_fta_etat;
     self::$abreviation_etat = $abrevation_etat;
     self::$id_fta_role = $id_fta_role;
     self::$ftaModel = new FtaModel(self::$id_fta);
     self::$id_fta_workflow = self::$ftaModel->getDataField(FtaModel::FIELDNAME_WORKFLOW)->getFieldValue();
     self::$id_fta_role_encours = FtaWorkflowStructureModel::getIdFtaRoleByChapitreAndWorkflow(self::$id_fta_chapitre_encours, self::$id_fta_workflow);
     $ftaWorkflowModel = new FtaWorkflowModel(self::$id_fta_workflow);
     self::$id_parent_intranet_actions = $ftaWorkflowModel->getDataField(FtaWorkflowModel::FIELDNAME_ID_INTRANET_ACTIONS)->getFieldValue();
     self::$html_navigation_bar = self::buildNavigationBar($paramActivationComplete);
 }
Example #2
0
 public static function initChapitre($id_fta, $id_fta_chapitre, $synthese_action, $comeback, $idFtaEtat, $abreviationFtaEtat, $idFtaRole, $checkArcadiaData)
 {
     self::$checkArcadiaData = $checkArcadiaData;
     self::$is_data_validation_successful = FALSE;
     self::$id_fta = $id_fta;
     self::$comeback = $comeback;
     self::$id_fta_etat = $idFtaEtat;
     self::$abrevation_etat = $abreviationFtaEtat;
     self::$id_fta_role = $idFtaRole;
     self::$id_fta_chapitre = $id_fta_chapitre;
     self::$ftaModel = new FtaModel(self::$id_fta);
     self::$ftaChapitreModel = new FtaChapitreModel(self::$id_fta_chapitre);
     self::$id_fta_workflow = self::$ftaModel->getDataField(FtaModel::FIELDNAME_WORKFLOW)->getFieldValue();
     self::$ftaWorkflowModel = new FtaWorkflowModel(self::$id_fta_workflow);
     self::$synthese_action = $synthese_action;
     $globalConfig = new GlobalConfig();
     UserModel::checkUserSessionExpired($globalConfig);
     self::$idUser = $globalConfig->getAuthenticatedUser()->getKeyValue();
     $idFtaSuiviProjet = FtaSuiviProjetModel::getIdFtaSuiviProjetByIdFtaAndIdChapitre(self::$id_fta, self::$id_fta_chapitre);
     self::$ftaSuiviProjetModel = new FtaSuiviProjetModel($idFtaSuiviProjet);
     //        self::$objectFta = new ObjectFta(self::$id_fta); //cela genère un id fta_suivie projet de trop
     //        self::$objectFta->loadCurrentSuiviProjectByChapter(self::$id_fta_chapitre);
     self::$id_fta_workflow_structure = FtaWorkflowStructureModel::getIdFtaWorkflowStructureByIdFtaAndIdChapitre(self::$id_fta, self::$id_fta_chapitre);
     self::$ftaWorkflowStructureModel = new FtaWorkflowStructureModel(self::$id_fta_workflow_structure);
     self::$id_fta_processus = self::$ftaWorkflowStructureModel->getDataField(FtaWorkflowStructureModel::FIELDNAME_ID_FTA_PROCESSUS)->getFieldValue();
     self::$id_intranet_actions = IntranetActionsModel::getIdIntranetActionsFromIdParentAction(self::$ftaWorkflowModel->getDataField(FtaWorkflowModel::FIELDNAME_ID_INTRANET_ACTIONS)->getFieldValue(), self::$id_fta_chapitre, self::$id_fta_workflow, self::$id_fta_role);
     self::$moduleIntranetActionsModel = new IntranetActionsModel(self::$id_intranet_actions);
     self::$is_owner = self::buildIsOwner();
     self::$is_editable = self::buildIsEditable();
     self::$is_correctable = self::buildIsCorrectable();
     self::$taux_validation_processus = self::buildTauxValidationProcessus();
     self::$html_correct_button = self::buildHtmlCorrectButton();
     self::$html_chapitre_core = self::buildChapitreCore();
     self::$html_submit_button = self::buildHtmlSubmitButton();
     self::$html_suivi_dossier = self::buildSuiviDossier();
     self::$html_chapitre_all = self::buildChapitreAll();
 }
Example #3
0
 /**
  * Affiche la liste des espaces de travail pour lesquel l'utilisateur connecté à les droits d'accès
  * @param int $paramIdUser
  * @param bolean $paramIsEditable
  * @param int $paramIdFta
  * @return string
  */
 public function listeWorkflowByAcces($paramIdUser, $paramIsEditable, $paramIdFta, $paramIdFtaRole)
 {
     $HtmlList = new HtmlListSelect();
     /*
      * Worflow de FTA
      */
     return FtaWorkflowModel::showListeDeroulanteNomWorkflowByAccesAndIdFta($paramIdUser, $HtmlList, $paramIsEditable, $paramIdFta, $paramIdFtaRole);
 }
//Action proposée à la page _post.php
$method = 'POST';
$html_table = "table " . "border=1 " . "width=100% " . "class=contenu ";
/*
 Récupération des données MySQL
*/
$idFta = Lib::getParameterFromRequest('id_fta');
$id_fta_chapitre_encours = Lib::getParameterFromRequest('id_fta_chapitre_encours');
$syntheseAction = Lib::getParameterFromRequest('synthese_action');
$comeback = Lib::getParameterFromRequest('comeback');
$idFtaEtat = Lib::getParameterFromRequest(FtaEtatModel::KEYNAME);
$abreviationFtaEtat = Lib::getParameterFromRequest(FtaEtatModel::FIELDNAME_ABREVIATION);
$idFtaRole = Lib::getParameterFromRequest(FtaRoleModel::KEYNAME);
$idFtaWorkflow = Lib::getParameterFromRequest('id_fta_workflow');
$HtmlList = new HtmlListSelect();
$listeWorkflow = FtaWorkflowModel::showListeDeroulanteNomWorkflow($idFtaWorkflow, $HtmlList);
$bouton_submit = FtaView::getHtmlButtonSubmit();
$bouton_retour_vers_fta = FtaView::getHtmlButtonReturnFta($idFta, $id_fta_chapitre_encours, $syntheseAction, $idFtaEtat, $abreviationFtaEtat, FtaRoleModel::ID_FTA_ROLE_COMMUN);
/* * *********
  Fin Code PHP
 * ********* */
/* * ************
  Début Code HTML
 * ************ */
echo $navigue . "\r\n     <form " . $method . " action=" . $page_action . " name=form_action>\r\n     <input type=hidden name=action value=" . $action . ">\r\n     <input type=hidden name=id_fta id=id_fta value=" . $idFta . ">\r\n     <input type=\"hidden\" name=\"synthese_action\" id=\"synthese_action\" value=\"" . $syntheseAction . "\" />\r\n     <input type=\"hidden\" name=\"abreviation_fta_etat\" id=\"abreviation_fta_etat\" value=\"" . $abreviationFtaEtat . "\" />\r\n     <input type=\"hidden\" name=\"id_fta_etat\" id=\"id_fta_etat\" value=\"" . $idFtaEtat . "\" />\r\n     <input type=\"hidden\" name=\"id_fta_role\" id=\"id_fta_role\" value=\"" . $idFtaRole . "\" />\r\n     <input type=\"hidden\" name=\"comeback\" id=\"comeback\" value=\"" . $comeback . "\" />\r\n     <input type=\"hidden\" name=\"id_fta_workflow\" id=\"id_fta_workflow\" value=\"" . $idFtaWorkflow . "\" />\r\n     <input type=\"hidden\" name=\"id_fta_chapitre_encours\" id=\"id_fta_chapitre_encours\" value=\"" . $id_fta_chapitre_encours . "\" />\r\n     <br><br><br><br><br><br><br><br><br><br><br>\r\n     <" . $html_table . ">\r\n         \r\n     <tr class=titre_principal><td>\r\n\r\n        " . UserInterfaceLabel::FR_ESPACE_DE_TRAVAIL . "\r\n\r\n     </td>\r\n     <td>\r\n\r\n        " . UserInterfaceLabel::FR_MODIFICATION_RAPPEL_ESPACE_DE_TRAVAIL . "    \r\n\r\n     </td>\r\n     </tr>\r\n    \r\n\r\n        {$listeWorkflow}\r\n\r\n        \r\n     </tr>\r\n    <tr>\r\n         \r\n         {$bouton_retour_vers_fta}\r\n             {$bouton_submit}\r\n       </tr>\r\n   \r\n     </table>\r\n\r\n     </form>\r\n     ";
/* * **********
  Fin Code HTML
 * ********** */
/* * *********************
  Inclusion de fin de page
 * ********************* */
Example #5
0
    if ($comeback) {
        $_SESSION["comeback_url"] = $_SERVER["HTTP_REFERER"];
    }
} else {
    $checked_vierge = 'checked';
}
$HtmlList = new HtmlListSelectTagName();
/*
 * Worflow de FTA
 */
//if ($checked_duplicate) {
//    $isEditable = FALSE;
//} else {
//    $isEditable = TRUE;
//}
$listeWorkflow = FtaWorkflowModel::showListeDeroulanteNomWorkflowByAcces($idUser, $HtmlList, TRUE, $idFtaRole, $idFtaWorkflow);
/*
 * Site de production FTA
 */
$listeSiteProduction = GeoModel::showListeDeroulanteSiteProdByAcces($idUser, $HtmlList, TRUE, $SiteDeProduction);
/* * *********
  Fin Code PHP
 * ********* */
/* * ************
  Début Code HTML
 * ************ */
echo '
     <form ' . $method . ' action=' . $page_action . '>
     <!input type=hidden name=action value=' . $action . '>
     <input type=hidden name=id_fta_role value=' . $idFtaRole . '>
 * One ne le récupère pas pour le cas de des rôle chef de projet et site
 */
//$idFtaRole = Lib::getParameterFromRequest(FtaRoleModel::KEYNAME);
$idFtaEtat = Lib::getParameterFromRequest(FtaEtatModel::KEYNAME);
$abreviationFtaEtat = Lib::getParameterFromRequest(FtaEtatModel::FIELDNAME_ABREVIATION);
$comeback = Lib::getParameterFromRequest(FtaEtatModel::KEYNAME);
$idFtaWorkflowOLD = Lib::getParameterFromRequest(FtaWorkflowModel::KEYNAME);
$idFtaWorkflowNEW = Lib::getParameterFromRequest(FtaWorkflowModel::TABLENAME . '_' . FtaWorkflowModel::KEYNAME);
/**
 * Initialisation
 */
$globalConfig = new GlobalConfig();
$idUser = $globalConfig->getAuthenticatedUser()->getKeyValue();
$nomPrenomConnect = $globalConfig->getAuthenticatedUser()->getPrenomNom();
$ftaWorflowModelOLD = new FtaWorkflowModel($idFtaWorkflowOLD);
$ftaWorflowModelNEW = new FtaWorkflowModel($idFtaWorkflowNEW);
$nomWorkflowOLD = $ftaWorflowModelOLD->getDataField(FtaWorkflowModel::FIELDNAME_DESCRIPTION_FTA_WORKFLOW)->getFieldValue();
$nomWorkflowNEW = $ftaWorflowModelNEW->getDataField(FtaWorkflowModel::FIELDNAME_DESCRIPTION_FTA_WORKFLOW)->getFieldValue();
$commentaire = FtaController::getCommentWorkflowChange($nomWorkflowOLD, $nomWorkflowNEW, $nomPrenomConnect);
switch ($action) {
    /*
     S'il n'y a pas d'actions défini
    */
    case 'valider':
        if ($idFtaWorkflowOLD != $idFtaWorkflowNEW) {
            $modelFta = new FtaModel($paramIdFta);
            $idDossierFta = $modelFta->getDossierFta();
            /**
             * Liste des IdFta changeant d'espace de travail
             */
            $arrayIdFtaChange = FtaModel::getArrayIdFtaByIdDossierFta($idDossierFta);
 public static function getListeUsersAndNotificationSuiviProjet($paramIdFta, $paramIdChapitre)
 {
     $idFtaSuiviProjet = FtaSuiviProjetModel::getIdFtaSuiviProjetByIdFtaAndIdChapitre($paramIdFta, $paramIdChapitre);
     $modelFtaSuiviProjet = new FtaSuiviProjetModel($idFtaSuiviProjet, $paramIdChapitre);
     $modelFta = new FtaModel($paramIdFta, $paramIdChapitre);
     $id_fta_workflow = $modelFta->getDataField(FtaModel::FIELDNAME_WORKFLOW)->getFieldValue();
     $ftaWorkflowModel = new FtaWorkflowModel($id_fta_workflow);
     $id_parent_intranet_actions = $ftaWorkflowModel->getDataField(FtaWorkflowModel::FIELDNAME_ID_INTRANET_ACTIONS)->getFieldValue();
     //Récupération des Processus
     $arrayProcessus = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT DISTINCT ' . FtaProcessusModel::TABLENAME . '.' . FtaProcessusModel::KEYNAME . ', ' . FtaWorkflowModel::FIELDNAME_ID_INTRANET_ACTIONS . ', ' . FtaProcessusModel::FIELDNAME_MULTISITE_FTA_PROCESSUS . ', ' . FtaProcessusModel::FIELDNAME_INFO_CHEF_PROJET . ', ' . FtaProcessusModel::FIELDNAME_NOM . ' FROM ' . FtaProcessusModel::TABLENAME . ',' . FtaWorkflowStructureModel::TABLENAME . ',' . FtaWorkflowModel::TABLENAME . ' WHERE ' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_WORKFLOW . '=' . FtaWorkflowModel::TABLENAME . '.' . FtaWorkflowModel::KEYNAME . ' AND ' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_PROCESSUS . '=' . FtaProcessusModel::TABLENAME . '.' . FtaProcessusModel::KEYNAME . ' AND ' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_WORKFLOW . '=' . $id_fta_workflow);
     foreach ($arrayProcessus as $rowsProcessus) {
         //Si l'utilisateur appartient au processus, il n'est pas necessaire d'informer tous son service par mail
         $arrayIntranetActionProcessus = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT ' . IntranetActionsModel::FIELDNAME_NOM_INTRANET_ACTIONS . ' FROM ' . IntranetActionsModel::TABLENAME . ' WHERE ' . IntranetActionsModel::KEYNAME . '=\'' . $rowsProcessus[FtaActionRoleModel::FIELDNAME_ID_INTRANET_ACTIONS] . '\' ');
         if ($arrayIntranetActionProcessus) {
             foreach ($arrayIntranetActionProcessus as $rowsIntranetActionProcessus) {
                 $nom_intranet_actions = $rowsIntranetActionProcessus[IntranetActionsModel::FIELDNAME_NOM_INTRANET_ACTIONS];
             }
         }
         //echo      'fta_'.$nom_intranet_actions.': '.$GLOBALS{'fta_'.$nom_intranet_actions}.'<br>';
         if (Acl::getValueAccesRights('fta_' . $nom_intranet_actions)) {
             $no_mail = 1;
             //Désactivation du mail pour ce processus
         } else {
             $no_mail = 0;
             //Activation du mail
         }
         //Ce processus est-il un processus en cours ?
         if (FtaProcessusModel::getValideProcessusEncours($paramIdFta, $rowsProcessus[FtaProcessusModel::KEYNAME], $id_fta_workflow) != 0 and FtaProcessusModel::getValideProcessusEncours($paramIdFta, $rowsProcessus[FtaProcessusModel::KEYNAME], $id_fta_workflow) != 1) {
             //Activation du mail
             //$no_mail=0;
             //Recherche des Notifications des chapitres
             $arraySuiviProjetChapitreProcessus = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT ' . FtaSuiviProjetModel::FIELDNAME_NOTIFICATION_FTA_SUIVI_PROJET . ' FROM ' . FtaSuiviProjetModel::TABLENAME . ', ' . FtaChapitreModel::TABLENAME . ', ' . FtaProcessusModel::TABLENAME . ', ' . FtaWorkflowStructureModel::TABLENAME . ' WHERE (' . FtaSuiviProjetModel::TABLENAME . '.' . FtaSuiviProjetModel::FIELDNAME_ID_FTA_CHAPITRE . '=' . FtaChapitreModel::TABLENAME . '.' . FtaChapitreModel::KEYNAME . ' AND ' . FtaProcessusModel::TABLENAME . '.' . FtaProcessusModel::KEYNAME . ' = ' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_PROCESSUS . ' AND ' . FtaChapitreModel::TABLENAME . '.' . FtaChapitreModel::KEYNAME . ' = ' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_CHAPITRE . ') AND ' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_PROCESSUS . '=' . $rowsProcessus[FtaProcessusModel::KEYNAME] . ' ' . 'AND ' . FtaSuiviProjetModel::TABLENAME . '.' . FtaSuiviProjetModel::FIELDNAME_ID_FTA . '=' . $paramIdFta . ' ');
             //L'ensemble des chapitres a-t-il été entièrement notifié ?
             // -1 = le suivi doit etre créé et le processus doit être informé
             //  0 = ce processus doit être informé
             //  1 = ce processus a déjà était informé
             if ($arraySuiviProjetChapitreProcessus) {
                 foreach ($arraySuiviProjetChapitreProcessus as $rowsSuiviProjetChapitreProcessus) {
                     $notification = 1 * $rowsSuiviProjetChapitreProcessus[FtaSuiviProjetModel::FIELDNAME_NOTIFICATION_FTA_SUIVI_PROJET];
                 }
             } else {
                 $notification = -1;
             }
             //Si au moins un des chapitres n'a pas été notifié ou qu'il n' y a pas encore de suivi
             if ($notification <= 0 and $rowsProcessus[FtaProcessusModel::KEYNAME] != 1) {
                 //Initialisation du tableau des destinataires (mail + identifiant)
                 $liste_mail = '';
                 $liste_user = '';
                 //Si le mail reste actif, on construit la listes des utilisateurs à informer
                 if (!$no_mail) {
                     //Recherche de la liste des utilisateurs à informer
                     switch ($rowsProcessus[FtaProcessusModel::FIELDNAME_MULTISITE_FTA_PROCESSUS]) {
                         case 0:
                             //1. Cas de processus mono-site
                             //-----------------------------
                             //Est-ce que seul le service du chef de projet doit être informé ?
                             if ($rowsProcessus[FtaProcessusModel::FIELDNAME_INFO_CHEF_PROJET]) {
                                 //Rechercher du service du chef de projet
                                 /**
                                  * Pour cette requête le chapitre clé est test identité le 1
                                  */
                                 $arraySuiviProjetSalaries = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT ' . UserModel::FIELDNAME_ID_SERVICE . ' FROM ' . FtaSuiviProjetModel::TABLENAME . ', ' . UserModel::TABLENAME . ' WHERE (' . FtaSuiviProjetModel::TABLENAME . '.' . FtaSuiviProjetModel::FIELDNAME_SIGNATURE_VALIDATION_SUIVI_PROJET . '=' . UserModel::TABLENAME . '.' . UserModel::FIELDNAME_ID_SERVICE . ') AND ( (' . FtaSuiviProjetModel::TABLENAME . '.' . FtaSuiviProjetModel::FIELDNAME_ID_FTA . '= ' . $paramIdFta . 'AND ' . FtaSuiviProjetModel::TABLENAME . '.' . FtaSuiviProjetModel::FIELDNAME_ID_FTA_CHAPITRE . '= 1 ) ) ');
                                 foreach ($arraySuiviProjetSalaries as $rowsSuiviProjetSalaries) {
                                     $where = ' AND ' . UserModel::TABLENAME . '.' . UserModel::FIELDNAME_ID_SERVICE . '=' . $rowsSuiviProjetSalaries[UserModel::FIELDNAME_ID_SERVICE];
                                 }
                                 //Désactivation de l'envoi du mail dans ce cas de figure.
                                 $no_mail = 1;
                             }
                             //tableau des utilisateurs selon leur accès aux processus
                             $arraySalarieProcessusMono = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT DISTINCT ' . UserModel::TABLENAME . '.' . UserModel::KEYNAME . ', ' . UserModel::TABLENAME . '.' . UserModel::FIELDNAME_MAIL . ', ' . UserModel::TABLENAME . '.' . UserModel::FIELDNAME_LOGIN . ', ' . UserModel::TABLENAME . '.' . UserModel::FIELDNAME_NOM . ', ' . UserModel::TABLENAME . '.' . UserModel::FIELDNAME_PRENOM . ', ' . FtaProcessusModel::TABLENAME . '.' . FtaProcessusModel::KEYNAME . ' FROM ' . UserModel::TABLENAME . ',' . IntranetActionsModel::TABLENAME . ', ' . IntranetModulesModel::TABLENAME . ',' . IntranetDroitsAccesModel::TABLENAME . ', ' . FtaProcessusModel::TABLENAME . ', ' . FtaActionRoleModel::TABLENAME . ' WHERE ( ' . UserModel::TABLENAME . '.' . UserModel::KEYNAME . '=' . IntranetDroitsAccesModel::TABLENAME . '.' . IntranetDroitsAccesModel::FIELDNAME_ID_USER . ' AND ' . UserModel::FIELDNAME_ACTIF . '= \'oui\' ' . ' AND ' . IntranetActionsModel::TABLENAME . '.' . IntranetActionsModel::KEYNAME . '=' . IntranetDroitsAccesModel::TABLENAME . '.' . IntranetDroitsAccesModel::FIELDNAME_ID_INTRANET_ACTIONS . ' AND ' . IntranetActionsModel::TABLENAME . '.' . IntranetActionsModel::KEYNAME . '=' . FtaActionRoleModel::TABLENAME . '.' . FtaActionRoleModel::FIELDNAME_ID_INTRANET_ACTIONS . ') ' . ' AND ( ( ' . IntranetDroitsAccesModel::TABLENAME . '.' . IntranetDroitsAccesModel::FIELDNAME_NIVEAU_INTRANET_DROITS_ACCES . ' <>  ' . IntranetNiveauAccesModel::NIVEAU_GENERIC_FALSE . ' AND ' . FtaProcessusModel::TABLENAME . '.' . FtaProcessusModel::KEYNAME . ' = ' . $rowsProcessus[FtaProcessusModel::KEYNAME] . ' AND ' . FtaProcessusModel::TABLENAME . '.' . FtaProcessusModel::FIELDNAME_MULTISITE_FTA_PROCESSUS . ' = 0 ' . ' AND ' . IntranetModulesModel::TABLENAME . '.' . IntranetModulesModel::FIELDNAME_NOM_INTRANET_MODULES . ' = \'fta\' ) )' . ' AND ' . UserModel::TABLENAME . '.' . UserModel::KEYNAME . '<>\'' . $modelFta->getModelCreateur()->getDataField(UserModel::KEYNAME)->getFieldValue() . '\'' . $where);
                             if ($arraySalarieProcessusMono) {
                                 foreach ($arraySalarieProcessusMono as $rowsSalarieProcessusMono) {
                                     //Remplissage du tableau des destinataires (mail + identifiant)
                                     $liste_mail[] = $rowsSalarieProcessusMono[UserModel::FIELDNAME_MAIL];
                                     $liste_user[] = '- ' . $rowsSalarieProcessusMono[UserModel::FIELDNAME_PRENOM] . ' ' . $rowsSalarieProcessusMono[UserModel::FIELDNAME_NOM];
                                 }
                             }
                             break;
                         case 1:
                             //2. Cas de processus multi-site
                             //------------------------------
                             //Existe-t-il un processus d'un autre site qui gère ce site d'assemblage ?
                             $arrayMultisiteProcessus = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT ' . FtaProcessusMultisiteModel::FIELDNAME_ID_SITE_PROCESSUS_FTA_PROCESSUS_MULTISITE . ' FROM  ' . FtaProcessusMultisiteModel::TABLENAME . ' WHERE ' . FtaProcessusMultisiteModel::FIELDNAME_ID_SITE_ASSEMBLAGE_FTA_PROCESSUS_MULTISITE . '=' . $modelFta->getDataField(FtaModel::FIELDNAME_SITE_PRODUCTION)->getFieldValue() . ' AND ' . FtaProcessusMultisiteModel::FIELDNAME_ID_PROCESSUS_FTA_PROCESSUS_MULTISITE . '=' . $rowsProcessus[FtaProcessusModel::KEYNAME]);
                             if ($arrayMultisiteProcessus) {
                                 foreach ($arrayMultisiteProcessus as $rowsMultisiteProcessus) {
                                     $site_gestionnaire = $rowsMultisiteProcessus[FtaProcessusMultisiteModel::FIELDNAME_ID_SITE_PROCESSUS_FTA_PROCESSUS_MULTISITE];
                                 }
                             } else {
                                 $site_gestionnaire = $modelFta->getDataField(FtaModel::FIELDNAME_SITE_PRODUCTION)->getFieldValue();
                             }
                             $arraySalarieProcessusMulti = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT DISTINCT ' . UserModel::TABLENAME . '.' . UserModel::KEYNAME . ', ' . UserModel::TABLENAME . '.' . UserModel::FIELDNAME_MAIL . ', ' . UserModel::TABLENAME . '.' . UserModel::FIELDNAME_LOGIN . ', ' . UserModel::TABLENAME . '.' . UserModel::FIELDNAME_NOM . ', ' . UserModel::TABLENAME . '.' . UserModel::FIELDNAME_PRENOM . ', ' . FtaProcessusModel::TABLENAME . '.' . FtaProcessusModel::KEYNAME . ' FROM ' . UserModel::TABLENAME . ',' . IntranetActionsModel::TABLENAME . ', ' . IntranetModulesModel::TABLENAME . ',' . IntranetDroitsAccesModel::TABLENAME . ', ' . FtaProcessusModel::TABLENAME . ', ' . GeoModel::TABLENAME . ' WHERE ( ' . UserModel::TABLENAME . '.' . UserModel::KEYNAME . '=' . IntranetDroitsAccesModel::TABLENAME . '.' . IntranetDroitsAccesModel::FIELDNAME_ID_USER . ' AND ' . UserModel::FIELDNAME_ACTIF . '= \'oui\' ' . ' AND ' . IntranetActionsModel::TABLENAME . '.' . IntranetActionsModel::KEYNAME . '=' . IntranetDroitsAccesModel::TABLENAME . '.' . IntranetDroitsAccesModel::FIELDNAME_ID_INTRANET_ACTIONS . ' AND ' . IntranetActionsModel::TABLENAME . '.' . IntranetActionsModel::KEYNAME . '=' . IntranetActionsModel::getIdIntranetActionsRoleFromIdParentActionNavigation($id_parent_intranet_actions) . ' AND ' . GeoModel::TABLENAME . '.' . GeoModel::KEYNAME . '=' . UserModel::TABLENAME . '.' . UserModel::FIELDNAME_LIEU_GEO . ') ' . ' AND ( ( ' . IntranetDroitsAccesModel::TABLENAME . '.' . IntranetDroitsAccesModel::FIELDNAME_NIVEAU_INTRANET_DROITS_ACCES . ' <>  ' . IntranetNiveauAccesModel::NIVEAU_GENERIC_FALSE . ' AND ' . FtaProcessusModel::TABLENAME . '.' . FtaProcessusModel::KEYNAME . ' = ' . $rowsProcessus[FtaProcessusModel::KEYNAME] . ' AND ' . FtaProcessusModel::TABLENAME . '.' . FtaProcessusModel::FIELDNAME_MULTISITE_FTA_PROCESSUS . ' = 1 ' . ' AND ' . GeoModel::TABLENAME . '.' . GeoModel::KEYNAME . '= \'' . $site_gestionnaire . '\' ' . ' AND ' . IntranetModulesModel::TABLENAME . '.' . IntranetModulesModel::FIELDNAME_NOM_INTRANET_MODULES . ' = \'fta\' ) )' . ' AND ' . UserModel::TABLENAME . '.' . UserModel::KEYNAME . '<>\'' . $modelFta->getModelCreateur()->getDataField(UserModel::KEYNAME)->getFieldValue() . '\'');
                             //echo $rows_processus['multisite_fta_processus'].'<br>'.$req.'<br><br>';
                             if ($arraySalarieProcessusMulti) {
                                 foreach ($arraySalarieProcessusMulti as $rowsSalarieProcessusMulti) {
                                     //Remplissage du tableau des destinataires (mail + identifiant)
                                     $liste_mail[] = $rowsSalarieProcessusMulti[UserModel::FIELDNAME_MAIL];
                                     $liste_user[] = '- ' . $rowsSalarieProcessusMulti[UserModel::FIELDNAME_PRENOM] . ' ' . $rowsSalarieProcessusMulti[UserModel::FIELDNAME_NOM];
                                 }
                             }
                             break;
                     }
                     //Fin de la recherche des utilisateurs à informer
                 }
                 //Fin du controle de désactivation de mail
                 //Envoi du mail de notification
                 if ($liste_mail and !$no_mail) {
                     foreach ($liste_mail as $adresse_email) {
                         $sujetmail = 'FTA/' . $modelFta->getDataField(FtaModel::FIELDNAME_DESIGNATION_COMMERCIALE)->getFieldValue();
                         $text = 'Démarrage du processus: ' . $rowsProcessus[FtaProcessusModel::FIELDNAME_NOM] . '\\n' . 'Etat de la FTA: ' . $modelFta->getModelFtaEtat()->getDataField(FtaEtatModel::FIELDNAME_NOM_FTA_ETAT)->getFieldValue() . '\\n\\n' . 'Vous pouvez consulter l\'Etat d\'avancenement du dossier directement sur le site http://intranet.agis.fr .\\n' . '\\n' . 'Bonne journée.\\n' . 'Intranet - Fiche Technique Article.';
                         $destinataire = $adresse_email;
                         //$expediteur = $_SESSION['prenom'] . ' ' . $_SESSION['nom_famille_ses'] . ' <' . $_SESSION['mail_user'] . '>';
                         $expediteur = $modelFta->getModelCreateur()->getDataField(UserModel::FIELDNAME_PRENOM)->getFieldValue() . ' ' . $modelFta->getModelCreateur()->getDataField(UserModel::FIELDNAME_NOM)->getFieldValue() . ' <' . $modelFta->getModelCreateur()->getDataField(UserModel::FIELDNAME_MAIL)->getFieldValue() . '>';
                         $typeMail = 'mail-transactions';
                         //if ($_SESSION['notification_fta_suivi_projet']) {
                         if ($modelFtaSuiviProjet->getDataField(FtaSuiviProjetModel::FIELDNAME_NOTIFICATION_FTA_SUIVI_PROJET)->getFieldValue()) {
                             envoismail($sujetmail, $text, $destinataire, $expediteur, $typeMail);
                         }
                     }
                 }
                 //Fin des envois de mail
                 //Enregistrement de la réalisation de la notification du processus
                 switch ($notification) {
                     case 0:
                         //Mise à jour du suivi
                         $update = 'UPDATE ' . FtaWorkflowStructureModel::TABLENAME . ',' . FtaSuiviProjetModel::TABLENAME . ' SET ' . FtaSuiviProjetModel::TABLENAME . '.' . FtaSuiviProjetModel::FIELDNAME_NOTIFICATION_FTA_SUIVI_PROJET . '=1' . ' WHERE ' . FtaSuiviProjetModel::TABLENAME . '.' . FtaSuiviProjetModel::FIELDNAME_ID_FTA_CHAPITRE . '=' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_CHAPITRE . ' AND ' . FtaWorkflowStructureModel::TABLENAME . '.' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_PROCESSUS . '=' . $rowsProcessus[FtaProcessusModel::KEYNAME] . ' AND ' . FtaSuiviProjetModel::TABLENAME . '.' . FtaSuiviProjetModel::FIELDNAME_ID_FTA . '=' . $paramIdFta;
                         DatabaseOperation::execute($update);
                         break;
                     case -1:
                         //Création du suivi
                         //Récupération des chapitres du processus
                         $arrayChapitre = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT ' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_CHAPITRE . ' FROM ' . FtaWorkflowStructureModel::TABLENAME . ' WHERE ' . FtaWorkflowStructureModel::FIELDNAME_ID_FTA_PROCESSUS . '= \'' . $rowsProcessus[FtaProcessusModel::KEYNAME] . '\' ');
                         foreach ($arrayChapitre as $rowsChapitre) {
                             $insert = 'INSERT ' . FtaSuiviProjetModel::TABLENAME . ' SET ' . FtaSuiviProjetModel::FIELDNAME_NOTIFICATION_FTA_SUIVI_PROJET . '=1' . ', ' . FtaSuiviProjetModel::FIELDNAME_ID_FTA . '=\'' . $paramIdFta . '\'' . ', ' . FtaChapitreModel::KEYNAME . '=' . $rowsChapitre[FtaChapitreModel::KEYNAME];
                             DatabaseOperation::execute($insert);
                         }
                         break;
                 }
             }
             //Fin de la vérification par chapitre et du traitement de la notification
         }
         //Fin de la vérification des processus validés
     }
     //Fin du parcours des processsu
     //Retour de la fonction
     return $liste_user;
 }