예제 #1
0
 /**
  * Liste des Rôles auxquelles l'utilisateur à accès pour un workflow donnée
  * @param int $paramIdUser
  * @param int $paramWorkflow
  * @param FtaModel $ftaModel
  * @param string $paramSytheseAction
  * @param int $paramIdftaChapitreEncours
  * @return string
  */
 public static function getRolesNavigationBar($paramIdUser, $paramWorkflow, FtaModel $ftaModel, $paramSytheseAction, $paramIdftaChapitreEncours, $paramIdFtaRoleEncours)
 {
     //Variable
     $listeRole = array();
     $arrayRoleWorkflow = FtaRoleModel::getArrayIdFtaRoleByIdUserAndWorkflow($paramIdUser, $paramWorkflow);
     //Calcul du taux
     $taux_temp = FtaSuiviProjetModel::getArrayFtaTauxValidation($ftaModel, TRUE);
     if ($taux_temp["1"]) {
         foreach ($taux_temp["1"] as $id_fta_processus => $taux) {
             /**
              * On obtient le rôle pour lequel le processus correspond
              */
             $arrayCheckRole = FtaWorkflowStructureModel::getArrayRoleByProcessusAndWorkflow($id_fta_processus, $paramWorkflow);
             $checkRole1 = array_intersect($arrayCheckRole, $arrayRoleWorkflow);
             if ($checkRole1) {
                 $checkRole2 = array_intersect($arrayCheckRole, $listeRole);
                 if (!$checkRole2) {
                     /**
                      * 0 en attente 
                      * entre 0 et 1 cours
                      * 1 validé
                      */
                     $listeRole[] = $arrayCheckRole["0"];
                     /**
                      * Mise en forme du rôle en cours
                      */
                     if ($arrayCheckRole["0"] == $paramIdFtaRoleEncours) {
                         $font_size = "size=" . Navigation::FONT_SIZE_ROLE_ENCOURS;
                         $font_flash = "<font " . $font_size . ">";
                         $image_flash1 = $font_flash . '[  ' . "</font>";
                         $image_flash2 = $font_flash . '  ]' . "</font>";
                     } else {
                         $font_size = "";
                         $image_flash1 = '-  ';
                         $image_flash2 = '  -';
                     }
                     if ($taux == "0") {
                         /**
                          * Vérification que tous les processus précédent soit validé si oui le processus est encours
                          */
                         $taux_validation_processus = FtaProcessusModel::getFtaProcessusNonValidePrecedent($ftaModel->getKeyValue(), $id_fta_processus, $paramWorkflow);
                         if ($taux_validation_processus == "1" or $taux_validation_processus === NULL) {
                             $ftaRoleModel = new FtaRoleModel($arrayCheckRole["0"]);
                             $roles .= $image_flash1 . ' <a href=' . 'modification_fiche' . '.php?' . 'id_fta=' . $ftaModel->getKeyValue() . '&id_fta_chapitre_encours=' . $paramIdftaChapitreEncours . '&synthese_action=' . $paramSytheseAction . '&id_fta_etat=' . $ftaModel->getDataField(FtaModel::FIELDNAME_ID_FTA_ETAT)->getFieldValue() . '&abreviation_fta_etat=' . $ftaModel->getModelFtaEtat()->getDataField(FtaEtatModel::FIELDNAME_ABREVIATION)->getFieldValue() . '&id_fta_role=' . $arrayCheckRole["0"] . '>' . $ftaRoleModel->getDataField(FtaRoleModel::FIELDNAME_DESCRIPTION_FTA_ROLE)->getFieldValue() . '</a> ' . $image_flash2 . ' ';
                         } else {
                             $ftaRoleModel = new FtaRoleModel($arrayCheckRole["0"]);
                             /**
                              * Liien vers l'historique sans la navigation
                              */
                             $roles .= $image_flash1 . $ftaRoleModel->getDataField(FtaRoleModel::FIELDNAME_DESCRIPTION_FTA_ROLE)->getFieldValue() . $image_flash2 . ' ';
                         }
                     } elseif ($taux == "1" or $taux != "0" and $taux != "1") {
                         $ftaRoleModel = new FtaRoleModel($arrayCheckRole["0"]);
                         $roles .= $image_flash1 . ' <a href=' . 'modification_fiche' . '.php?' . 'id_fta=' . $ftaModel->getKeyValue() . '&id_fta_chapitre_encours=' . $paramIdftaChapitreEncours . '&synthese_action=' . $paramSytheseAction . '&id_fta_etat=' . $ftaModel->getDataField(FtaModel::FIELDNAME_ID_FTA_ETAT)->getFieldValue() . '&abreviation_fta_etat=' . $ftaModel->getModelFtaEtat()->getDataField(FtaEtatModel::FIELDNAME_ABREVIATION)->getFieldValue() . '&id_fta_role=' . $arrayCheckRole["0"] . '>' . $ftaRoleModel->getDataField(FtaRoleModel::FIELDNAME_DESCRIPTION_FTA_ROLE)->getFieldValue() . '</a> ' . $image_flash2 . ' ';
                     }
                 }
             }
         }
         $RoleNavigation = '  Rôles  ' . $roles;
     }
     return $RoleNavigation;
 }
예제 #2
0
if ($globalConfig->getAuthenticatedUser()) {
    $idUser = $globalConfig->getAuthenticatedUser()->getKeyValue();
} else {
    $titre = UserInterfaceMessage::FR_WARNING_DECONNECTION_TITLE;
    $message = UserInterfaceMessage::FR_WARNING_DECONNECTION;
    Lib::showMessage($titre, $message, $redirection);
}
$idUser = $globalConfig->getAuthenticatedUser()->getKeyValue();
/**
 * Contrôle du rôle attribué
 */
if ($idFtaRole == FtaRoleModel::ID_FTA_ROLE_COMMUN) {
    if ($abreviationFtaEtat == FtaEtatModel::ETAT_ABREVIATION_VALUE_MODIFICATION) {
        $synthese_action = FtaEtatModel::ETAT_AVANCEMENT_VALUE_EN_COURS;
    }
    $arrayIdFtaRoleAcces = FtaRoleModel::getArrayIdFtaRoleByIdUserAndWorkflow($idUser, $idFtaWorkflow);
    $idFtaRole = $arrayIdFtaRoleAcces["0"];
}
$id_fta_chapitre = $id_fta_chapitre_encours;
/* * ***********
  Début Code PHP
 * *********** */
/*
 Initialisation des variables
*/
$page_default = substr(strrchr($_SERVER['PHP_SELF'], '/'), '1', '-4');
$page_action = 'modification_fiche.php';
$page_pdf = $page_default . '_pdf.php';
$action = 'valider';
//Action proposée à la page _post.php
$method = 'POST';
예제 #3
0
 /**
  * Barre de naviagtion de la Fta
  * @param type $paramActivationComplete
  * @return string
  */
 protected static function buildNavigationBar($paramActivationComplete)
 {
     //Variables
     $globalConfig = new GlobalConfig();
     UserModel::checkUserSessionExpired($globalConfig);
     $idUser = $globalConfig->getAuthenticatedUser()->getKeyValue();
     $html_table = 'table ' . 'border=1 ' . 'width=100% ' . 'class=contenu ';
     if (self::$id_fta) {
         $checkIdFta = self::$ftaModel->getDataField(FtaModel::KEYNAME)->getFieldValue();
         if (!$checkIdFta) {
             $titre = UserInterfaceMessage::FR_WARNING_PARAM_ID_FTA_TITLE;
             $message = UserInterfaceMessage::FR_WARNING_PARAM_ID_FTA_NOT_EXISTANT;
             $redirection = "index.php";
             Lib::showMessage($titre, $message, $redirection);
         }
     } else {
         $titre = UserInterfaceMessage::FR_WARNING_PARAM_ID_FTA_TITLE;
         $message = UserInterfaceMessage::FR_WARNING_PARAM_ID_FTA;
         $redirection = "index.php";
         Lib::showMessage($titre, $message, $redirection);
     }
     //Récupère la page en cours
     $arrayFtaEtatAndFta = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT ' . FtaModel::KEYNAME . ', ' . FtaModel::FIELDNAME_CREATEUR . ', ' . FtaModel::FIELDNAME_ARTICLE_AGROLOGIC . ', ' . FtaModel::FIELDNAME_DOSSIER_FTA . ', ' . FtaModel::FIELDNAME_VERSION_DOSSIER_FTA . ', ' . FtaModel::FIELDNAME_LIBELLE . ', ' . FtaModel::FIELDNAME_DESIGNATION_COMMERCIALE . ', ' . FtaModel::FIELDNAME_CODE_ARTICLE_LDC . ', ' . FtaWorkflowModel::FIELDNAME_DESCRIPTION_FTA_WORKFLOW . ', ' . FtaModel::FIELDNAME_COMMENTAIRE . ' FROM ' . FtaModel::TABLENAME . ',' . FtaEtatModel::TABLENAME . ',' . FtaWorkflowModel::TABLENAME . ' WHERE ' . FtaModel::KEYNAME . '=' . self::$id_fta . ' AND ' . FtaEtatModel::TABLENAME . '.' . FtaEtatModel::KEYNAME . '=' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_ID_FTA_ETAT . ' AND ' . FtaWorkflowModel::TABLENAME . '.' . FtaWorkflowModel::KEYNAME . '=' . FtaModel::TABLENAME . '.' . FtaModel::FIELDNAME_WORKFLOW);
     /**
      * Liste des Rôles auxquelles l'utilisateur à accès pour un workflow donnée
      */
     $arrayRoleWorkflow = FtaRoleModel::getArrayIdFtaRoleByIdUserAndWorkflow($idUser, self::$id_fta_workflow);
     if (count($arrayRoleWorkflow) > "1") {
         $RoleNavigation = FtaRoleModel::getRolesNavigationBar($idUser, self::$id_fta_workflow, self::$ftaModel, self::$synthese_action, self::$id_fta_chapitre_encours, self::$id_fta_role);
     } else {
         $ftaRoleModel = new FtaRoleModel(self::$id_fta_role);
     }
     $siteDeProduction = self::$ftaModel->getDataField(FtaModel::FIELDNAME_SITE_PRODUCTION)->getFieldValue();
     $geoModel = new GeoModel($siteDeProduction);
     foreach ($arrayFtaEtatAndFta as $rowsFtaEtatAndFta) {
         //Récupération des informations préalables
         //Nom de l'assistante de projet responsable:
         $userModel = new UserModel($rowsFtaEtatAndFta[FtaModel::FIELDNAME_CREATEUR]);
         $createur = $userModel->getPrenomNom();
         //Construction du Menu
         $menu_navigation = self::buildMenu($arrayRoleWorkflow, $rowsFtaEtatAndFta, $html_table, $RoleNavigation, $geoModel, $createur, $ftaRoleModel);
     }
     if ($paramActivationComplete) {
         //Si une action est donnée, alors construction du menu des chapitres
         $menu_navigation .= self::CheckSyntheseAction();
     }
     //Lien de retour rapide
     /**
      * Version avec le rewrite
      */
     //        self::$comeback_url = 'index-' . self::$id_fta_etat . '-' . self::$abreviation_etat . '-' . self::$id_fta_role . '-' . self::$synthese_action . '.html';
     if (self::$comeback == "1") {
         //                   self::$comeback_url = 'index.php?id_fta_etat=' . self::$id_fta_etat . '&nom_fta_etat=' . self::$abreviation_etat . '&id_fta_role=' . self::$id_fta_role . '&synthese_action=' . self::$synthese_action;
         $_SESSION["comeback_url"] = $_SERVER["HTTP_REFERER"];
     } elseif ($_SESSION["comeback_url"] == "") {
         $_SESSION["comeback_url"] = 'index.php?id_fta_etat=' . self::$id_fta_etat . '&nom_fta_etat=' . self::$abreviation_etat . '&id_fta_role=' . self::$id_fta_role . '&synthese_action=' . self::$synthese_action;
     }
     $menu_navigation .= '</tr><tr><td colspan=6 >
 <a href=' . $_SESSION["comeback_url"] . '><img src=../lib/images/bouton_retour.png alt=\'\' title=\'Retour\' width=\'18\' height=\'15\' border=\'0\' /> Retour</a> |
 ';
     if ($paramActivationComplete) {
         //Corps du menu
         $accesTransitionButton = FtaTransitionModel::isAccesTransitionButton(self::$id_fta_role, self::$id_fta_workflow);
         $idIntranetActionsSiteDeProduction = FtaActionSiteModel::getArrayIdIntranetActionByWorkflowAndSiteDeProduction(self::$id_fta_workflow, $siteDeProduction);
         $checkAccesButtonBySiteProd = IntranetActionsModel::isAccessFtaActionByIdUserFtaWorkflowAndSiteDeProduction($idUser, self::$id_fta_workflow, $idIntranetActionsSiteDeProduction);
         $tauxRound = FtaSuiviProjetModel::getPourcentageFtaTauxValidation(self::$ftaModel);
         /**
          * Bouton de trasition
          */
         $transition = TableauFicheView::getHmlLinkTransiter(self::$id_fta, self::$id_fta_role, self::$abreviation_etat, $checkAccesButtonBySiteProd, $accesTransitionButton, self::$synthese_action, $tauxRound, "18", " Transiter");
         /**
          * Bouton d'accès au rendu PDF de la FTA
          */
         $pdf = TableauFicheView::getHtmlLinkPDF(self::$abreviation_etat, self::$id_fta, self::$id_fta_workflow, "18", "Export PDF");
         if ($transition) {
             $transition = " | " . $transition;
         }
         if ($pdf) {
             $pdf = " | " . $pdf;
         }
         $historique = " | " . TableauFicheView::getHtmlLinkHistoriqueModfify(self::$abreviation_etat, self::$id_fta, self::$synthese_action, self::$id_fta_etat, self::$id_fta_role, "18", "Historique de modification");
         $menu_navigation .= '
                 <a href=historique-' . self::$id_fta . '-' . self::$id_fta_chapitre_encours . '-' . self::$id_fta_etat . '-' . self::$abreviation_etat . '-' . self::$id_fta_role . '-' . self::$synthese_action . '.html ><img src=./images/graphique.png alt=\'\' title=\'Etat d\'avancement\' width=\'18\' height=\'15\' border=\'0\' /> Etat d\'avancement</a>' . $historique . ' | <a href=fta2arcadia_summary.php?' . FtaModel::KEYNAME . '=' . self::$id_fta . '&id_fta_chapitre_encours=' . self::$id_fta_chapitre_encours . '&' . FtaEtatModel::KEYNAME . '=' . self::$id_fta_etat . '&' . FtaEtatModel::FIELDNAME_ABREVIATION . '=' . self::$abreviation_etat . '&' . FtaRoleModel::KEYNAME . '=' . self::$id_fta_role . '&synthese_action=' . self::$synthese_action . ' ><img src=./images/icone_information.png alt=\'\' title=\'Fta2Arcadia width=\'18\' height=\'15\' border=\'0\' /> Fta2Arcadia</a>' . $transition . $pdf . ' 
                    </td></tr>                       
                    </table>
                    ';
     }
     return $menu_navigation;
     //return $return raplacera menu_navigation;
 }
         $redirection = "index.php";
         Lib::showMessage($titre, $message, $redirection);
     } else {
         /**
          * On affecte un IdFtaRole seulement dans le cas ou on est vient de la page de recherche
          */
         if ($idFtaRole == FtaRoleModel::ID_FTA_ROLE_COMMUN) {
             $idFtaRole = $arrayIdFtaRoleAcces["0"];
         }
     }
 } elseif ($ftaModification) {
     /**
      * On affecte un IdFtaRole seulement dans le cas ou on est vient de la page de recherche
      */
     if ($idFtaRole == FtaRoleModel::ID_FTA_ROLE_COMMUN) {
         $arrayIdFtaRoleAcces = FtaRoleModel::getArrayIdFtaRoleByIdUserAndWorkflow($idUser, $idWorkflowFtaEncours);
         $idFtaRole = $arrayIdFtaRoleAcces["0"];
         if (!$arrayIdFtaRoleAcces and $idFtaEtat == FtaEtatModel::ID_VALUE_MODIFICATION) {
             $titre = UserInterfaceMessage::FR_WARNING_ACCES_RIGHTS_TITLE;
             $message = UserInterfaceMessage::FR_WARNING_ACCES_RIGHTS_WORKFLOW;
             $redirection = "index.php";
             Lib::showMessage($titre, $message, $redirection);
         } elseif (!$arrayIdFtaRoleAcces) {
             $idFtaRole = FtaRoleModel::ID_FTA_ROLE_COMMUN;
         }
     }
 }
 $affichgeDesChapitres = TRUE;
 Navigation::initNavigation($idFta, $id_fta_chapitre_encours, $synthese_action, $comeback, $idFtaEtat, $abreviationFtaEtat, $idFtaRole, $affichgeDesChapitres, FALSE, FALSE);
 $navigue = Navigation::getHtmlNavigationBar();
 /*