/** * On affiche la liste des raccourcis de classification associé à une classification * @param objet $paramFtaModel * @param int $paramIdClassificationFta2 * @param boolean $paramIsEditable * @return string */ public static function getHtmlClassificationRaccourcisAssociation(FtaModel $paramFtaModel, $paramIdClassificationFta2, $paramIsEditable) { $htmlList = new HtmlListSelect(); $paramFtaModel->setDataFtaTableToCompare(); $dataFieldIdClassificationRaccourcisTMP = $paramFtaModel->getDataField(FtaModel::FIELDNAME_ID_CLASSIFICATION_RACCOURCIS); $arrayClassificationRaccourcis = DatabaseOperation::convertSqlStatementWithKeyAndOneFieldToArray('SELECT DISTINCT ' . ClassificationRaccourcisModel::TABLENAME . '.' . ClassificationRaccourcisModel::KEYNAME . ',' . ClassificationRaccourcisModel::TABLENAME . '.' . ClassificationRaccourcisModel::FIELDNAME_NOM_CLASSIFICATION_RACCOURCIS . ' FROM ' . ClassificationRaccourcisModel::TABLENAME . ',' . self::TABLENAME . ' WHERE ' . ClassificationRaccourcisModel::TABLENAME . '.' . ClassificationRaccourcisModel::KEYNAME . ' = ' . self::TABLENAME . '.' . self::FIELDNAME_ID_CLASSIFICATION_RACCOURCIS . ' AND ' . self::FIELDNAME_ID_FTA_CLASSIFICATION2 . '=' . $paramIdClassificationFta2 . ' ORDER BY ' . ClassificationRaccourcisModel::FIELDNAME_NOM_CLASSIFICATION_RACCOURCIS); /** * Si le chapitre est editable alors on vérifie si * pour une classification nous avons plusieurs raccourcis de classification associé * Si nous avons plusieur résultat alors on affiche la liste déroulante * sinon on enregistre l'unique résutat */ // if ($paramIsEditable == Chapitre::EDITABLE) { // if (count($arrayClassificationRaccourcis) > "1") { // $paramIsEditable = Chapitre::EDITABLE; // } else { // /** // * Enregistrement de la donnée raccourcis de classification // */ // if ($arrayClassificationRaccourcis) { // foreach ($arrayClassificationRaccourcis as $key => $value) { // $ftaModel->getDataField(FtaModel::FIELDNAME_ID_CLASSIFICATION_RACCOURCIS)->setFieldValue($key); // $ftaModel->saveToDatabase(); // } // } // $paramIsEditable = Chapitre::NOT_EDITABLE; // } // } $htmlList->setArrayListContent($arrayClassificationRaccourcis); /** * On vérifie si la donnée en BDD se trouve dans le tableau * Sinon alors on vide la donnée de la BDD */ $dataFieldIdClassificationRaccourcis = FtaController::checkDataInArrayKeyList($dataFieldIdClassificationRaccourcisTMP, $arrayClassificationRaccourcis); $HtmlTableName = FtaModel::TABLENAME . '_' . FtaModel::FIELDNAME_ID_CLASSIFICATION_RACCOURCIS . '_' . $paramFtaModel->getKeyValue(); /** * Vérification des règle de validation */ $dataFieldIdClassificationRaccourcis->checkValidationRules(); if ($dataFieldIdClassificationRaccourcis->getDataValidationSuccessful() == TRUE) { $htmlList->setIsWarningMessage($dataFieldIdClassificationRaccourcis->getDataValidationSuccessful()); $paramFtaModel->setDataValidationSuccessfulToTrue(); } else { $htmlList->setIsWarningMessage($dataFieldIdClassificationRaccourcis->getDataValidationSuccessful()); $htmlList->setWarningMessage($dataFieldIdClassificationRaccourcis->getDataWarningMessage()); $paramFtaModel->setDataValidationSuccessfulToFalse(); } $htmlList->setSelectedValue($dataFieldIdClassificationRaccourcis->getFieldValue()); $htmlList->getAttributes()->getName()->setValue(FtaModel::FIELDNAME_ID_CLASSIFICATION_RACCOURCIS); $htmlList->setLabel(DatabaseDescription::getFieldDocLabel(ClassificationRaccourcisAssociationModel::TABLENAME, ClassificationRaccourcisAssociationModel::FIELDNAME_ID_CLASSIFICATION_RACCOURCIS)); $htmlList->setIsEditable($paramIsEditable); $htmlList->initAbstractHtmlSelect($HtmlTableName, $htmlList->getLabel(), $dataFieldIdClassificationRaccourcis->getFieldValue(), $dataFieldIdClassificationRaccourcis->isFieldDiff(), $htmlList->getArrayListContent(), $htmlList->getIsWarningMessage(), $htmlList->getWarningMessage()); $htmlList->getEventsForm()->setOnChangeWithAjaxAutoSave(FtaModel::TABLENAME, FtaModel::KEYNAME, $paramFtaModel->getKeyValue(), FtaModel::FIELDNAME_ID_CLASSIFICATION_RACCOURCIS); /** * Description d'un champ */ $htmlList->setHelp(IntranetColumnInfoModel::getFieldDesc($dataFieldIdClassificationRaccourcis->getTableName(), $dataFieldIdClassificationRaccourcis->getFieldName(), $dataFieldIdClassificationRaccourcis->getFieldLabel(), $htmlList)); $listeClassificationRaccourcis = $htmlList->getHtmlResult(); return $listeClassificationRaccourcis; }
/** * Géneration du lien ou non des cadenas pour les champs verrouillé/déverrouillé * @param int $paramIsFieldLock * @param $paramDataFieldFieldName * @param FtaModel $paramFtaModel * @param boolean $paramIsEditable * @return string */ public static function linkFieldLock($paramIsFieldLock, $paramDataFieldFieldName, FtaModel $paramFtaModel, $paramIsEditable) { switch ($paramIsFieldLock) { /** * Cadenas déverrouillé modifiable */ case self::FIELD_LOCK_PRIMARY_FALSE: $image_locked = Html::DEFAULT_HTML_IMAGE_DEVERROUILLE_MODIFIABLE; if ($paramIsEditable) { $linkJavaScriptLock = '<a href="#" onclick="lockFields(\'' . $paramDataFieldFieldName . '\',\'' . $paramFtaModel->getKeyValue() . '\')" >'; } break; /** * Cadenas verrouillé modifiable */ /** * Cadenas verrouillé modifiable */ case self::FIELD_LOCK_PRIMARY_TRUE: $image_locked = Html::DEFAULT_HTML_IMAGE_VERROUILLE_MODIFIABLE; if ($paramIsEditable) { $linkJavaScriptLock = '<a href="#" onClick="lockFields(\'' . $paramDataFieldFieldName . '\',\'' . $paramFtaModel->getKeyValue() . '\')" >'; } break; /** * Cadenas déverrouillé non-modifiable */ /** * Cadenas déverrouillé non-modifiable */ case self::FIELD_LOCK_SECONDARY_FALSE: $image_locked = Html::DEFAULT_HTML_IMAGE_DEVERROUILLE_NON_MODIFIABLE; break; /** * Cadenas verrouillé non-modifiable */ /** * Cadenas verrouillé non-modifiable */ case self::FIELD_LOCK_SECONDARY_TRUE: $image_locked = Html::DEFAULT_HTML_IMAGE_VERROUILLE_NON_MODIFIABLE; break; /** * Aucun cadenas */ /** * Aucun cadenas */ default: $image_locked = ""; break; } $linkFieldLock = '<div align=right width="25%" >' . $linkJavaScriptLock . $image_locked . '</a></div>'; return $linkFieldLock; }
public function __construct(FtaModel $paramFtaModel) { $this->setFtaProcessusDelaiModel(new FtaProcessusDelaiModel()); $this->getFtaProcessusDelaiModel()->setModelFtaById($paramFtaModel->getKeyValue()); }
/** * Affiche le lien vers les Fta secondaires * @param int $paramIdFtaChapitre * @param string $paramSyntheseAction * @param int $paramComeback * @param int $paramIdFtaRole * @return string */ function getLinkToSecondaryFta($paramIdFtaChapitre, $paramSyntheseAction, $paramComeback, $paramIdFtaRole) { $arraySecondaryFta = $this->getArrayIdFtaFromDossierFtaPrimary(); $separator = " "; $link = "<tr ><td class=\"contenu\"> " . UserInterfaceLabel::FR_FTA_SECONDAIRE . "</td ><td class=\"contenu\" width=75% >"; foreach ($arraySecondaryFta as $rowsSecondaryFta) { $ftaModelSecond = new FtaModel($rowsSecondaryFta[self::KEYNAME]); /** * On vérifie si le code Article Arcadia est renseigné * si oui on l'affiche * sinon on affiche le dossier avec la version */ if ($ftaModelSecond->getDataField(self::FIELDNAME_CODE_ARTICLE_LDC)->getFieldValue()) { $valueLink = $ftaModelSecond->getDataField(self::FIELDNAME_CODE_ARTICLE_LDC)->getFieldValue(); } else { $valueLink = $ftaModelSecond->getDataField(self::FIELDNAME_DOSSIER_FTA)->getFieldValue() . "v" . $ftaModelSecond->getDataField(FtaModel::FIELDNAME_VERSION_DOSSIER_FTA)->getFieldValue(); } $link .= $separator . "<a href=" . "modification_fiche.php?" . "id_fta=" . $ftaModelSecond->getKeyValue() . "&id_fta_chapitre_encours=" . $paramIdFtaChapitre . "&synthese_action=" . $paramSyntheseAction . "&comeback=" . $paramComeback . "&id_fta_etat=" . $ftaModelSecond->getDataField(self::FIELDNAME_ID_FTA_ETAT)->getFieldValue() . "&abreviation_fta_etat=" . $ftaModelSecond->getModelFtaEtat()->getDataField(FtaEtatModel::FIELDNAME_ABREVIATION)->getFieldValue() . "&id_fta_role=" . $paramIdFtaRole . ">" . $valueLink . "</a>"; $separator = " - "; } $link .= "</td></tr>"; return $link; }
/** * On affiche la liste des gammes famille budget associé à une classification * @param object $paramFtaModel FtaModel * @param int $paramIdClassificationFta2 * @param boolean $paramIsEditable * @return string */ public static function getHtmlClassificationGammeFamilleBudget(FtaModel $paramFtaModel, $paramIdClassificationFta2, $paramIsEditable) { $htmlList = new HtmlListSelect(); $paramFtaModel->setDataFtaTableToCompare(); $idMarque = ClassificationFta2Model::getIdClassificationTypeByTypeNameAndIdClassificationFta2($paramIdClassificationFta2, ClassificationFta2Model::FIELDNAME_ID_MARQUE); $dataFieldIdArcadiaGammeFamilleBudgetTMP = $paramFtaModel->getDataField(FtaModel::FIELDNAME_ID_ARCADIA_GAMME_FAMILLE_BUDGET); $arrayGammeFamilleBudget = DatabaseOperation::convertSqlStatementWithKeyAndOneFieldToArray('SELECT DISTINCT ' . ArcadiaGammeFamilleBudgetModel::TABLENAME . '.' . ArcadiaGammeFamilleBudgetModel::KEYNAME . ', CONCAT_WS( \' - \',' . ArcadiaGammeFamilleBudgetModel::TABLENAME . '.' . ArcadiaGammeFamilleBudgetModel::KEYNAME . ',' . ArcadiaGammeFamilleBudgetModel::FIELDNAME_NOM_ARCADIA_GAMME_FAMILLE_BUDGET . ') FROM ' . ArcadiaGammeFamilleBudgetModel::TABLENAME . ',' . self::TABLENAME . ' WHERE ' . ArcadiaGammeFamilleBudgetModel::TABLENAME . '.' . ArcadiaGammeFamilleBudgetModel::KEYNAME . ' = ' . self::TABLENAME . '.' . self::FIELDNAME_ID_ARCADIA_GAMME_FAMILLE_BUDGET . ' AND ' . self::FIELDNAME_ID_MARQUE . '=' . $idMarque . ' ORDER BY ' . ArcadiaGammeFamilleBudgetModel::KEYNAME); /** * Si le chapitre est editable alors on vérifie si * pour une classification nous avons plusieurs gamme famille budget associé * Si nous avons plusieur résultat alors on affiche la liste déroulante * sinon on enregistre l'unique résutat */ // if ($paramIsEditable == Chapitre::EDITABLE) { // if (count($arrayGammeFamilleBudget) > "1") { // $paramIsEditable = Chapitre::EDITABLE; // } else { // /** // * Enregistrement de la donnée gamme famille budget // */ // if ($arrayGammeFamilleBudget) { // foreach ($arrayGammeFamilleBudget as $key => $value) { // $ftaModel->getDataField(FtaModel::FIELDNAME_ID_ARCADIA_GAMME_FAMILLE_BUDGET)->setFieldValue($key); // $ftaModel->saveToDatabase(); // } // } // $paramIsEditable = Chapitre::NOT_EDITABLE; // } // } $htmlList->setArrayListContent($arrayGammeFamilleBudget); /** * On vérifie si la donnée en BDD se trouve dans le tableau * Sinon alors on vide la donnée de la BDD */ $dataFieldIdArcadiaGammeFamilleBudget = FtaController::checkDataInArrayKeyList($dataFieldIdArcadiaGammeFamilleBudgetTMP, $arrayGammeFamilleBudget); $HtmlTableName = FtaModel::TABLENAME . '_' . FtaModel::FIELDNAME_ID_ARCADIA_GAMME_FAMILLE_BUDGET . '_' . $paramFtaModel->getKeyValue(); /** * Vérification des règle de validation */ $dataFieldIdArcadiaGammeFamilleBudget->checkValidationRules(); if ($dataFieldIdArcadiaGammeFamilleBudget->getDataValidationSuccessful() == TRUE) { $htmlList->setIsWarningMessage($dataFieldIdArcadiaGammeFamilleBudget->getDataValidationSuccessful()); $paramFtaModel->setDataValidationSuccessfulToTrue(); } else { $htmlList->setIsWarningMessage($dataFieldIdArcadiaGammeFamilleBudget->getDataValidationSuccessful()); $htmlList->setWarningMessage($dataFieldIdArcadiaGammeFamilleBudget->getDataWarningMessage()); $paramFtaModel->setDataValidationSuccessfulToFalse(); } $htmlList->getAttributes()->getName()->setValue(FtaModel::FIELDNAME_ID_ARCADIA_GAMME_FAMILLE_BUDGET); $htmlList->setLabel(DatabaseDescription::getFieldDocLabel(FtaModel::TABLENAME, FtaModel::FIELDNAME_ID_ARCADIA_GAMME_FAMILLE_BUDGET)); $htmlList->setIsEditable($paramIsEditable); $htmlList->initAbstractHtmlSelect($HtmlTableName, $htmlList->getLabel(), $dataFieldIdArcadiaGammeFamilleBudget->getFieldValue(), $dataFieldIdArcadiaGammeFamilleBudget->isFieldDiff(), $htmlList->getArrayListContent(), $htmlList->getIsWarningMessage(), $htmlList->getWarningMessage()); $htmlList->getEventsForm()->setOnChangeWithAjaxAutoSave(FtaModel::TABLENAME, FtaModel::KEYNAME, $paramFtaModel->getKeyValue(), FtaModel::FIELDNAME_ID_ARCADIA_GAMME_FAMILLE_BUDGET); /** * Description d'un champ */ $htmlList->setHelp(IntranetColumnInfoModel::getFieldDesc($dataFieldIdArcadiaGammeFamilleBudget->getTableName(), $dataFieldIdArcadiaGammeFamilleBudget->getFieldName(), $dataFieldIdArcadiaGammeFamilleBudget->getFieldLabel(), $htmlList)); $listeGammeFamilleBudget = $htmlList->getHtmlResult(); return $listeGammeFamilleBudget; }