/** * On obtient le chapitre par défaut en redirection * @param int $paramIdFtaRole * @param int $paramIdFtaWorkflow * @param array $paramListeDesChapitres * @return array */ public static function getIdFtaChapitreByDefault($paramIdFtaRole, $paramIdFtaWorkflow, $paramListeDesChapitres) { $arrayProcessusAcces = FtaWorkflowStructureModel::getArrayProcessusByRoleAndWorkflow($paramIdFtaRole, $paramIdFtaWorkflow); $ListeDesChapitresByUser = FtaChapitreModel::getIdFtaChapitreByArrayProcessusAndWorkflow($arrayProcessusAcces, $paramIdFtaWorkflow); if ($paramListeDesChapitres) { $ListeDesChapitresAcces = array_intersect($paramListeDesChapitres, $ListeDesChapitresByUser); } foreach ($ListeDesChapitresAcces as $key => $value) { $idFtaChapitre = $value; } if (!$idFtaChapitre) { $idFtaChapitre = FtaChapitreModel::ID_CHAPITRE_IDENTITE; } return $idFtaChapitre; }
/** * On récupèer les Chapitres séléctionnés. */ $arrayChapitre = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT ' . FtaChapitreModel::KEYNAME . ',' . FtaChapitreModel::FIELDNAME_NOM_USUEL_CHAPITRE . ' FROM ' . FtaChapitreModel::TABLENAME . ' ORDER BY ' . FtaChapitreModel::FIELDNAME_NOM_USUEL_CHAPITRE); foreach ($arrayChapitre as $rowsChapitre) { if (Lib::getParameterFromRequest(FtaChapitreModel::FIELDNAME_NOM_CHAPITRE . '_' . $rowsChapitre[FtaWorkflowStructureModel::FIELDNAME_ID_FTA_CHAPITRE]) == 1) { $ListeDesChapitres[] = $rowsChapitre[FtaChapitreModel::KEYNAME]; } } if ($ListeDesChapitres) { foreach ($ListeDesChapitres as $idChapitre) { $idFtaWorkflowStructure = FtaWorkflowStructureModel::getIdFtaWorkflowStructureByIdFtaAndIdChapitre($idFta, $idChapitre); $ftaWorkflowStructureModel = new FtaWorkflowStructureModel($idFtaWorkflowStructure, $idChapitre); $idFtaProcessus = $ftaWorkflowStructureModel->getDataField(FtaWorkflowStructureModel::FIELDNAME_ID_FTA_PROCESSUS)->getFieldValue(); $return = FtaProcessusModel::getProcessusNextFromIdFtaChapitres($idFta, $idFtaProcessus, $idFtaWorkflow, "I", $htmlResult, $idFtaProcessusEffectue); $ListeDesChapitresSuivant[] = FtaChapitreModel::getIdFtaChapitreByArrayProcessusAndWorkflow($return['processus'], $idFtaWorkflow); $redirectionSelectionne .= '&' . FtaChapitreModel::FIELDNAME_NOM_CHAPITRE . '_' . $idChapitre . '=1'; } $ListeDesChapitresSuivant = array_unique($ListeDesChapitresSuivant); if ($ListeDesChapitresSuivant["0"]) { $arrayChapitreDescription = DatabaseOperation::convertSqlStatementWithoutKeyToArray('SELECT DISTINCT ' . FtaChapitreModel::FIELDNAME_NOM_USUEL_CHAPITRE . ',' . FtaChapitreModel::KEYNAME . ' FROM ' . FtaChapitreModel::TABLENAME . ' WHERE ( 0' . FtaChapitreModel::addIdFtaChapitre($ListeDesChapitresSuivant["0"]) . ' )'); foreach ($arrayChapitreDescription as $rowsChapitreDescription) { $bloc .= $rowsChapitreDescription[FtaChapitreModel::FIELDNAME_NOM_USUEL_CHAPITRE] . ' / '; $redirection .= '&' . FtaChapitreModel::FIELDNAME_NOM_CHAPITRE . '_' . $rowsChapitreDescription[FtaChapitreModel::KEYNAME] . '=2'; } } else { $bloc = "<i>Les chapitres sélectionnés sont les seuls à être dévalidé </i>"; } } else { //Averissement $titre = UserInterfaceMessage::FR_WARNING_CHAPITRES_TITLE;