Exemple #1
0
$extensions = array('.png', '.gif', '.jpg', '.jpeg', '.pdf', '.txt', '.doc', '.docx', '.odt', '.xlsx', '.csv', '.ppt', '.pptx');
$extension = strrchr($_FILES['avatar']['name'], '.');
////Début des vérifications de sécurité...
if (!in_array($extension, $extensions)) {
    //Si l'extension n'est pas dans le tableau
    $erreur = 'Vous devez uploader un fichier de type png, gif, jpg, pdf, jpeg, txt, doc, docx, odt, ppt, pptx, xlsx ou csv';
}
if (!isset($erreur)) {
    //S'il n'y a pas d'erreur, on upload
    //On formate le nom du fichier ici...
    $fichier = strtr($fichier, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
    $fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
    if (move_uploaded_file($_FILES['avatar']['tmp_name'], $dossier . $fichier)) {
        //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
        /**
         * Enregistrement du nom du fichier en BDD
         */
        $intranetColumInfoModel = new IntranetColumnInfoModel($idIntranetColumnInfo);
        $intranetColumInfoModel->getDataField(IntranetColumnInfoModel::FIELDNAME_UPLOAD_NAME_FILE)->setFieldValue($fichier);
        $intranetColumInfoModel->saveToDatabase();
        //Redirection
        header("Location: popup-mysql_field_desc.php?id_intranet_column_info=" . $idIntranetColumnInfo . "&edit_mode=1");
    } else {
        //Sinon (la fonction renvoie FALSE).
        echo 'Echec de l\'upload ! (probablement une erreur de permission sur le dossier lib/upload';
        echo $retour;
    }
} else {
    echo $erreur;
    echo $retour;
}
 /**
  * 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;
 }
Exemple #3
0
 /**
  * Liste des étiqettes colis     
  * @param type $paramIsEditable
  * @param type $paramSiteDeProduction
  * @param type $paramEtiqetteCodesoft
  * @return type
  */
 function getListeCodesoftEtiquettesColis($paramIsEditable, $paramSiteDeProduction, $paramEtiqetteCodesoft)
 {
     $HtmlList = new HtmlListSelect();
     $arrayEtiquette = DatabaseOperation::convertSqlStatementWithKeyAndOneFieldToArray('SELECT DISTINCT ' . CodesoftEtiquettesModel::KEYNAME . ',' . CodesoftEtiquettesModel::FIELDNAME_DESIGNATION_CODESOFT_ETIQUETTES . ' FROM ' . CodesoftEtiquettesModel::TABLENAME . ' WHERE (' . CodesoftEtiquettesModel::FIELDNAME_K_SITE . '=' . $paramSiteDeProduction . ' OR ' . CodesoftEtiquettesModel::FIELDNAME_K_SITE . '=0)' . ' AND (' . CodesoftEtiquettesModel::FIELDNAME_K_TYPE_ETIQUETTE_CODESOFT_ETIQUETTES . '=1' . ' OR ' . CodesoftEtiquettesModel::FIELDNAME_K_TYPE_ETIQUETTE_CODESOFT_ETIQUETTES . '=0' . ')' . ' AND ' . CodesoftEtiquettesModel::FIELDNAME_IS_ENABLED_FTA . '=1' . ' ORDER BY ' . CodesoftEtiquettesModel::FIELDNAME_DESIGNATION_CODESOFT_ETIQUETTES);
     $HtmlList->setArrayListContent($arrayEtiquette);
     $HtmlTableName = FtaModel::TABLENAME . '_' . FtaModel::FIELDNAME_ETIQUETTE_CODESOFT . '_' . $this->getModel()->getKeyValue();
     /**
      * Champ verrouillable condition
      */
     /**
      * Vérification du champ initialisé
      */
     $isFieldLock = FtaVerrouillageChampsModel::isFieldLock(FtaModel::FIELDNAME_ETIQUETTE_CODESOFT, $this->getModel());
     /**
      * Génération du lien pour verrouillé/déverrouillé
      */
     $linkFieldLock = FtaVerrouillageChampsModel::linkFieldLock($isFieldLock, FtaModel::FIELDNAME_ETIQUETTE_CODESOFT, $this->getModel(), $paramIsEditable);
     /**
      * Affectation de la modification d'un champ ou non
      */
     $isEditable = FtaVerrouillageChampsModel::isEditableLockField($isFieldLock, $paramIsEditable);
     $etiquetteCodesoftDataField = $this->getModel()->getDataField(FtaModel::FIELDNAME_ETIQUETTE_CODESOFT);
     $HtmlList->getAttributes()->getName()->setValue(FtaModel::FIELDNAME_ETIQUETTE_CODESOFT);
     $HtmlList->setLabel(DatabaseDescription::getFieldDocLabel(FtaModel::TABLENAME, FtaModel::FIELDNAME_ETIQUETTE_CODESOFT));
     $HtmlList->setIsEditable($isEditable);
     $HtmlList->initAbstractHtmlSelect($HtmlTableName, $HtmlList->getLabel(), $paramEtiqetteCodesoft, $etiquetteCodesoftDataField->isFieldDiff(), $HtmlList->getArrayListContent(), NULL, NULL, $isFieldLock, $linkFieldLock);
     $HtmlList->getEventsForm()->setOnChangeWithAjaxAutoSave(FtaModel::TABLENAME, FtaModel::KEYNAME, $this->getModel()->getKeyValue(), FtaModel::FIELDNAME_ETIQUETTE_CODESOFT);
     /**
      * Description d'un champ
      */
     $HtmlList->setHelp(IntranetColumnInfoModel::getFieldDesc($etiquetteCodesoftDataField->getTableName(), $etiquetteCodesoftDataField->getFieldName(), $etiquetteCodesoftDataField->getFieldLabel(), $HtmlList));
     $listeCodesoftEtiquettes = $HtmlList->getHtmlResult();
     return $listeCodesoftEtiquettes;
 }
 /**
  * On insert les champs à verrouiller par défaut
  * @param int $paramFtaDossierPrimaire
  */
 public static function insertDefaultFieldToLock($paramFtaDossierPrimaire)
 {
     $arrayIntranetColumInfoLockField = IntranetColumnInfoModel::getArrayDefaultLockField();
     if ($arrayIntranetColumInfoLockField) {
         foreach ($arrayIntranetColumInfoLockField as $rowIntranetColumInfoLockField) {
             $lockValueIntranet = $rowIntranetColumInfoLockField[IntranetColumnInfoModel::FIELDNAME_DEFAULT_FIELD_TO_LOCK_FOR_PRIMARY_FTA];
             /**
              * On vérifie si il s'agit un champ à verrouilé par défaut ou pas.
              */
             switch ($lockValueIntranet) {
                 case IntranetColumnInfoModel::DEFAULT_FIELD_TO_LOCK_FOR_PRIMARY_FTA_VALUES:
                     $lockValue = self::FIELD_LOCK_TRUE;
                     break;
                 case IntranetColumnInfoModel::DEFAULT_FIELD_NOT_TO_LOCK_FOR_PRIMARY_FTA_VALUES:
                     $lockValue = self::FIELD_LOCK_FALSE;
                     break;
             }
             DatabaseOperation::execute("INSERT INTO " . self::TABLENAME . " ( " . self::FIELDNAME_TABLE_NAME . ", " . self::FIELDNAME_FIELD_NAME . ", " . self::FIELDNAME_DOSSIER_FTA_PRIMAIRE . ", " . self::FIELDNAME_FIELD_LOCK . ", " . self::FIELDNAME_FIELD_CHANGE_STATE . " ) VALUES ( \"" . $rowIntranetColumInfoLockField[IntranetColumnInfoModel::FIELDNAME_TABLE_NAME_INTRANET_COLUMN_INFO] . "\", \"" . $rowIntranetColumInfoLockField[IntranetColumnInfoModel::FIELDNAME_COLUMN_NAME_INTRANET_COLUMN_INFO] . "\", \"" . $paramFtaDossierPrimaire . "\", \"" . $lockValue . "\", \"" . self::CHANGE_STATE_TRUE_VALIDATION_FTA . "\" ) ");
         }
     } else {
         $titre = UserInterfaceMessage::FR_WARNING_VERROUILLAGE_CHAMPS_TITLE;
         $message = UserInterfaceMessage::FR_WARNING_VERROUILLAGE_CHAMPS;
         Lib::showMessage($titre, $message);
     }
 }
Exemple #5
0
 protected static function buildIsOwner()
 {
     //Recherche du droit d'accès correspondant
     $module = self::$moduleIntranetActionsModel->getDataField(IntranetActionsModel::FIELDNAME_NOM_INTRANET_ACTIONS)->getFieldValue();
     if (Acl::getValueAccesRights('fta_' . $module)) {
         $return = true;
     } else {
         $return = false;
     }
     //        /**
     //         * Recherche du droit d'accès correspondant
     //         */
     //        $ftaModification = IntranetDroitsAccesModel::getFtaModification(self::$idUser);
     //        if (
     //                $ftaModification
     //        ) {
     //            $return = true;
     //        } else {
     //            $return = false;
     //        }
     IntranetColumnInfoModel::setOwner($return);
     return $return;
 }
Exemple #6
0
 /**
  * Retourne le code HTML représentant le champs de la base de données
  * @param DatabaseDataField $paramDataField
  * @param type $paramIsEditable
  */
 public static function convertDataFieldToHtml(DatabaseDataField $paramDataField, $paramIsEditable)
 {
     $htmlObject = self::getHtmlObjectFromDataField($paramDataField);
     $htmlObject->setIsEditable($paramIsEditable);
     $htmlObject->setHelp(IntranetColumnInfoModel::getFieldDesc($paramDataField->getTableName(), $paramDataField->getFieldName(), $paramDataField->getFieldLabel(), $htmlObject));
     return $htmlObject->getHtmlResult();
 }
        break;
        /*     * **********
              Fin de switch
             * ********** */
}
if ($arrayDossierFta) {
    /**
     * On récupère la liste des Champs verrouillables
     */
    $arrayFtaLock = IntranetColumnInfoModel::getArrayDefaultLockField();
    $separateur = "";
    $htmlListTitre = UserInterfaceLabel::FR_VERROUILLABLE_TITRE;
    foreach ($arrayFtaLock as $rowsFtaLock) {
        $tableName = $rowsFtaLock[IntranetColumnInfoModel::FIELDNAME_TABLE_NAME_INTRANET_COLUMN_INFO];
        $fieldName = $rowsFtaLock[IntranetColumnInfoModel::FIELDNAME_COLUMN_NAME_INTRANET_COLUMN_INFO];
        $label = IntranetColumnInfoModel::getLabelByTableNameAndColummName($tableName, $fieldName);
        $htmlList .= $separateur . $label;
        $separateur = "<br>";
    }
    foreach ($arrayDossierFta as $rowsDossierFta) {
        $idFta = $rowsDossierFta[FtaModel::KEYNAME];
        /**
         * Contrôle
         */
        if ($idFta == $paramIdFta) {
            $message = UserInterfaceMessage::FR_WARNING_ARTICLE_PRIMAIRE;
            $titre = UserInterfaceMessage::FR_WARNING_ARTICLE_PRIMAIRE_TITLE;
            Lib::showMessage($titre, $message);
        }
        $ftaCheckModel = new FtaModel($idFta);
        $dossierPrimaireCheck = $ftaCheckModel->getDossierPrimaire();
Exemple #8
0
 /**
  * Affiche la liste des site de production pour lesquel l'utilisateur connecté à les droits d'accès 
  * et l'identifiant de la Fta en cours
  * @param int $paramIdUser
  * @param HtmlListSelect $paramHtmlObjet
  * @param boolean $paramIsEditable
  * @return string
  */
 function showListeDeroulanteSiteProdByAccesAndIdFta($paramIdUser, HtmlListSelect $paramHtmlObjet, $paramIsEditable)
 {
     /**
      * Datafield site de production
      */
     $dataFieldSiteDeProduction = $this->getDataField(FtaModel::FIELDNAME_SITE_PRODUCTION);
     /**
      * Modification
      */
     $ftaModification = IntranetDroitsAccesModel::getFtaModification($paramIdUser);
     /**
      * Consultation
      */
     $ftaConsultation = IntranetDroitsAccesModel::getFtaConsultation($paramIdUser);
     /**
      * Si l'utilisateur a les droits en consultation sur le module et pas en modification
      * Transmettre à $paramHtmlObjet la liste de tous les sites taggés "fta".
      * 
      * Si il a accès en consultation et modification alors
      */
     if ($ftaConsultation and $ftaModification) {
         $idFtaWorkflow = $this->getDataField(FtaModel::FIELDNAME_WORKFLOW)->getFieldValue();
         $arraySite = DatabaseOperation::convertSqlStatementWithKeyAndOneFieldToArray('SELECT DISTINCT ' . GeoModel::KEYNAME . ',' . GeoModel::FIELDNAME_GEO . ' FROM ' . GeoModel::TABLENAME . ', ' . FtaActionSiteModel::TABLENAME . ', ' . IntranetActionsModel::TABLENAME . ', ' . IntranetDroitsAccesModel::TABLENAME . ', ' . FtaWorkflowModel::TABLENAME . ' WHERE ' . FtaActionSiteModel::TABLENAME . '.' . FtaActionSiteModel::FIELDNAME_ID_SITE . '=' . GeoModel::KEYNAME . ' AND ' . FtaActionSiteModel::TABLENAME . '.' . FtaActionSiteModel::FIELDNAME_ID_INTRANET_ACTIONS . '=' . IntranetActionsModel::TABLENAME . '.' . IntranetActionsModel::KEYNAME . ' AND ' . FtaWorkflowModel::TABLENAME . '.' . FtaWorkflowModel::FIELDNAME_ID_INTRANET_ACTIONS . '=' . IntranetActionsModel::TABLENAME . '.' . IntranetActionsModel::FIELDNAME_PARENT_INTRANET_ACTIONS . ' AND ' . FtaWorkflowModel::TABLENAME . '.' . FtaWorkflowModel::KEYNAME . '=' . $idFtaWorkflow . ' AND ' . IntranetActionsModel::TABLENAME . '.' . IntranetActionsModel::KEYNAME . '=' . IntranetDroitsAccesModel::TABLENAME . '.' . IntranetDroitsAccesModel::FIELDNAME_ID_INTRANET_ACTIONS . ' AND ' . IntranetDroitsAccesModel::FIELDNAME_ID_USER . '=' . $paramIdUser . ' AND ' . IntranetDroitsAccesModel::TABLENAME . '.' . IntranetDroitsAccesModel::FIELDNAME_NIVEAU_INTRANET_DROITS_ACCES . '=' . IntranetNiveauAccesModel::NIVEAU_GENERIC_TRUE . ' ORDER BY ' . GeoModel::FIELDNAME_GEO);
     } elseif ($ftaConsultation) {
         $arraySite = DatabaseOperation::convertSqlStatementWithKeyAndOneFieldToArray('SELECT DISTINCT ' . GeoModel::KEYNAME . ',' . GeoModel::FIELDNAME_GEO . ' FROM ' . GeoModel::TABLENAME . ' WHERE ' . GeoModel::FIELDNAME_TAG_APPLICATION_GEO . ' LIKE \'%fta%\'' . ' ORDER BY ' . GeoModel::FIELDNAME_GEO);
     }
     $paramHtmlObjet->setArrayListContent($arraySite);
     /**
      * On vérifie si le champ est verrouillable
      */
     $dataFieldSiteDeProduction->checkLockField($this, $paramIsEditable);
     /**
      * On autorise la modification selon l'état de champs verrouillable
      */
     $isEditable = FtaVerrouillageChampsModel::isEditableLockField($dataFieldSiteDeProduction->getIsFieldLock(), $paramIsEditable);
     /**
      * Verification des règles de validation
      */
     $dataFieldSiteDeProduction->checkValidationRules();
     if ($dataFieldSiteDeProduction->getDataValidationSuccessful() == TRUE) {
         $this->setDataValidationSuccessfulToTrue();
     } else {
         $this->setDataValidationSuccessfulToFalse();
     }
     $HtmlTableName = FtaModel::TABLENAME . '_' . FtaModel::FIELDNAME_SITE_PRODUCTION . '_' . $this->getKeyValue();
     $paramHtmlObjet->getAttributes()->getName()->setValue(FtaModel::FIELDNAME_SITE_PRODUCTION);
     $paramHtmlObjet->setLabel(DatabaseDescription::getFieldDocLabel(GeoModel::TABLENAME, GeoModel::FIELDNAME_GEO));
     $paramHtmlObjet->setIsEditable($isEditable);
     $paramHtmlObjet->initAbstractHtmlSelect($HtmlTableName, $paramHtmlObjet->getLabel(), $dataFieldSiteDeProduction->getFieldValue(), $dataFieldSiteDeProduction->isFieldDiff(), $paramHtmlObjet->getArrayListContent(), $dataFieldSiteDeProduction->getDataValidationSuccessful(), $dataFieldSiteDeProduction->getDataWarningMessage(), $dataFieldSiteDeProduction->getIsFieldLock(), $dataFieldSiteDeProduction->getLinkFieldLock());
     $paramHtmlObjet->getEventsForm()->setOnChangeWithAjaxAutoSave(FtaModel::TABLENAME, FtaModel::KEYNAME, $this->getKeyValue(), FtaModel::FIELDNAME_SITE_PRODUCTION);
     /**
      * Description d'un champ
      */
     $paramHtmlObjet->setHelp(IntranetColumnInfoModel::getFieldDesc($dataFieldSiteDeProduction->getTableName(), $dataFieldSiteDeProduction->getFieldName(), $dataFieldSiteDeProduction->getFieldLabel(), $paramHtmlObjet));
     $listeSiteProduction = $paramHtmlObjet->getHtmlResult();
     return $listeSiteProduction;
 }
 /**
  * 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;
 }
 /**
  * Affiche le le COde PSF avec le prefixe
  * @return string
  */
 function getHtmlPrefixeIdCodePSF()
 {
     $id_fta_composant = $this->getFtaComposantModel()->getKeyValue();
     $prefixe = $this->getAnnexeAgrologicArticleCodificationModel()->getDataField(AnnexeAgrologicArticleCodificationModel::FIELDNAME_PREFIXE_ANNEXE_AGRO_ART_COD)->getFieldValue();
     $codePSFValue = $this->getFtaComposantModel()->getDataField(FtaComposantModel::FIELDNAME_CODE_PRODUIT_AGROLOGIC_FTA_NOMENCLATURE)->getFieldValue();
     $completeCode = $prefixe . $codePSFValue;
     $codePSF = new HtmlInputText();
     $HtmlTableName = FtaComposantModel::TABLENAME . '_' . FtaComposantModel::FIELDNAME_CODE_PRODUIT_AGROLOGIC_FTA_NOMENCLATURE . '_' . $id_fta_composant;
     $codePSFDataField = $this->getFtaComposantModel()->getDataField(FtaComposantModel::FIELDNAME_CODE_PRODUIT_AGROLOGIC_FTA_NOMENCLATURE);
     $codePSF->setLabel(DatabaseDescription::getFieldDocLabel(FtaComposantModel::TABLENAME, FtaComposantModel::FIELDNAME_CODE_PRODUIT_AGROLOGIC_FTA_NOMENCLATURE));
     $codePSF->getAttributes()->getValue()->setValue($completeCode);
     $codePSF->getAttributes()->getPattern()->setValue("[0-9]{1,6}");
     $codePSF->getAttributes()->getMaxLength()->setValue("6");
     $codePSF->setIsEditable(FALSE);
     $codePSF->initAbstractHtmlInput($HtmlTableName, $codePSF->getLabel(), $completeCode, $codePSFDataField->isFieldDiff());
     $codePSF->getEventsForm()->setOnChangeWithAjaxAutoSave(FtaComposantModel::TABLENAME, FtaComposantModel::KEYNAME, $id_fta_composant, FtaComposantModel::FIELDNAME_CODE_PRODUIT_AGROLOGIC_FTA_NOMENCLATURE);
     /**
      * Description d'un champ
      */
     $codePSF->setHelp(IntranetColumnInfoModel::getFieldDesc($codePSFDataField->getTableName(), $codePSFDataField->getFieldName(), $codePSFDataField->getFieldLabel(), $codePSF));
     return $codePSF->getHtmlResult();
 }
  fonction située dans le fichier "functions.php"
*/
switch ($action) {
    /*
     S'il n'y a pas d'actions défini
    */
    case 'record':
        /**
         * Ennregistrement de la nouvelle description du champs
         */
        $request = "UPDATE " . IntranetColumnInfoModel::TABLENAME . " SET " . IntranetColumnInfoModel::FIELDNAME_EXPLICATION_INTRANET_COLUMN_INFO . "=\"" . $explication_intranet_description_controle . "\" " . " WHERE " . IntranetColumnInfoModel::KEYNAME . "='" . $idIntranetColumnInfo . "' ";
        DatabaseOperation::execute($request);
        //Redirection
        header("Location: popup-mysql_field_desc.php?id_intranet_column_info=" . $idIntranetColumnInfo . "&edit_mode=1");
        break;
    case 'supprimer':
        if ($idIntranetColumnInfo) {
            $intranetColumnInfoModel = new IntranetColumnInfoModel($idIntranetColumnInfo);
            $intranetColumnInfoModel->suppressionFile();
        }
        //Redirection
        header("Location: popup-mysql_field_desc.php?id_intranet_column_info=" . $idIntranetColumnInfo . "&edit_mode=1");
        /*     * **********
              Fin de switch
             * ********** */
}
//include ("./action_bs.php");
//include ("./action_sm.php");
?>

/*
 Récupération des données MySQL
*/
$idIntranetColumnInfo = Lib::getParameterFromRequest(IntranetColumnInfoModel::KEYNAME);
//Fourni par URL
$edit_mode = Lib::getParameterFromRequest('edit_mode');
$action = Lib::getParameterFromRequest('action');
//Récupération des droits d'accès necessaire
$fta_consultation = Acl::getValueAccesRights('fta_consultation');
$fta_modification = Acl::getValueAccesRights('fta_modification');
$owner = IntranetColumnInfoModel::getOwner();
$QUERY_STRING = $_SERVER['QUERY_STRING'];
/**
 * Initilisation
 */
$intranetColumInfoModel = new IntranetColumnInfoModel($idIntranetColumnInfo);
$explication_intranet_description = $intranetColumInfoModel->getDataField(IntranetColumnInfoModel::FIELDNAME_EXPLICATION_INTRANET_COLUMN_INFO)->getFieldValue();
$nom_table = $intranetColumInfoModel->getDataField(IntranetColumnInfoModel::FIELDNAME_TABLE_NAME_INTRANET_COLUMN_INFO)->getFieldValue();
$nom_variable = $intranetColumInfoModel->getDataField(IntranetColumnInfoModel::FIELDNAME_COLUMN_NAME_INTRANET_COLUMN_INFO)->getFieldValue();
$fichier = $intranetColumInfoModel->getDataField(IntranetColumnInfoModel::FIELDNAME_UPLOAD_NAME_FILE)->getFieldValue();
$title = DatabaseDescription::getFieldDocLabel($nom_table, $nom_variable);
//L'utilisateur a-t-il la permission de modifier le manuel ?
if ($edit_mode) {
    $action = 'record';
}
/**
 * Affichage de la description
 */
$htmlTexArea = new HtmlTextArea();
$htmlTexArea->setTextAreaContent($explication_intranet_description);
$htmlTexArea->setHtmlRenderToTable();
 /**
  * Liste des options étiqettes
  * @param boolean $paramIsEditable
  * @return string
  */
 function getListeModeEtiquette($paramIsEditable)
 {
     $HtmlList = new HtmlListSelect();
     $activationCodification = $this->getModelFta()->getDataField(FtaModel::FIELDNAME_ACTIVATION_CODESOFT)->getFieldValue();
     $codePSFValue = $this->getDataField(self::FIELDNAME_CODE_PRODUIT_AGROLOGIC_FTA_NOMENCLATURE)->getFieldValue();
     if (($activationCodification == AnnexeGestionDesEtiquettesModel::ACTIVATION_ETIQUETTE_COLIS_ET_COMPOSITION or $activationCodification == AnnexeGestionDesEtiquettesModel::ACTIVATION_ETIQUETTE_COMPOSITION) and $codePSFValue) {
         $sqlCondi = " ";
     } else {
         $sqlCondi = " WHERE " . AnnexeModeEtiquetteModel::FIELDNAME_ETIQUETTE_ACTIF . "=0 ";
     }
     $sql = "SELECT " . AnnexeModeEtiquetteModel::KEYNAME . "," . AnnexeModeEtiquetteModel::FIELDNAME_MODE_ETIQUETTE_LABEL . " FROM " . AnnexeModeEtiquetteModel::TABLENAME . $sqlCondi . "  ORDER BY " . AnnexeModeEtiquetteModel::FIELDNAME_MODE_ETIQUETTE_NOM . "";
     $arrayModeEtiquette = DatabaseOperation::convertSqlStatementWithKeyAndOneFieldToArray($sql);
     $HtmlList->setArrayListContent($arrayModeEtiquette);
     $HtmlTableName = self::TABLENAME . '_' . self::FIELDNAME_MODE_ETIQUETTE_FTA_COMPOSITION . '_' . $this->getKeyValue();
     $modeEtiquetteDataField = $this->getDataField(self::FIELDNAME_MODE_ETIQUETTE_FTA_COMPOSITION);
     $HtmlList->getAttributes()->getName()->setValue(self::FIELDNAME_MODE_ETIQUETTE_FTA_COMPOSITION);
     $HtmlList->setLabel(DatabaseDescription::getFieldDocLabel(self::TABLENAME, self::FIELDNAME_MODE_ETIQUETTE_FTA_COMPOSITION));
     $HtmlList->setIsEditable($paramIsEditable);
     $HtmlList->initAbstractHtmlSelect($HtmlTableName, $HtmlList->getLabel(), $modeEtiquetteDataField->getFieldValue(), $modeEtiquetteDataField->isFieldDiff(), $HtmlList->getArrayListContent());
     $HtmlList->getEventsForm()->setOnChangeWithAjaxAutoSave(self::TABLENAME, self::KEYNAME, $this->getKeyValue(), self::FIELDNAME_MODE_ETIQUETTE_FTA_COMPOSITION);
     /**
      * Description d'un champ
      */
     $HtmlList->setHelp(IntranetColumnInfoModel::getFieldDesc($modeEtiquetteDataField->getTableName(), $modeEtiquetteDataField->getFieldName(), $modeEtiquetteDataField->getFieldLabel(), $HtmlList));
     $listeModeEtiquettes = $HtmlList->getHtmlResult();
     return $listeModeEtiquettes;
 }