/**
  * Créé un sous-formulaire HTML à partir d'un DataField
  * @param DatabaseDataField $paramDataField
  * @param $paramSecondaryTableNamesAndIdKeyValue
  */
 public function __construct(DatabaseDataField $paramDataField, $paramSecondaryTableNamesAndIdKeyValue, $keyValue)
 {
     $paramArrayContent = DatabaseOperation::getArrayFieldsNameFromForeignKeyRelationNtoN($paramDataField->getTableName(), $paramSecondaryTableNamesAndIdKeyValue, $paramDataField->getFieldsToDisplay(), explode(',', $paramDataField->getFieldsToOrder()), $keyValue, $paramDataField->getConditionSql());
     parent::__construct($paramArrayContent, ModelTableAssociation::getModelName($paramDataField->getTableName()), $paramDataField->getFieldLabel(), $paramSecondaryTableNamesAndIdKeyValue);
     $this->setIsRightToAdd($paramDataField->getRightToAdd());
 }
 public function getDatabaseDataFieldByDataField(DatabaseDataField $paramDatabaseDataField)
 {
     return $this->arrayDatabaseDataField[$paramDatabaseDataField->getTableName()][$paramDatabaseDataField->getFieldName()];
 }
 /**
  * Créé un sous-formulaire HTML à partir d'un DataField
  * @param DatabaseDataField $paramDataField
  */
 public function __construct(DatabaseDataField $paramDataField)
 {
     $paramArrayContent = DatabaseOperation::getArrayFieldsNameFromForeignKeyRelationNtoOne($paramDataField->getReferencedTableName(), $paramDataField->getTableName(), $paramDataField->getFieldValue(), explode(',', $paramDataField->getFieldsToDisplay()), explode(',', $paramDataField->getFieldsToOrder()), $paramDataField->getConditionSql());
     parent::__construct($paramArrayContent, ModelTableAssociation::getModelName($paramDataField->getReferencedTableName()), $paramDataField->getFieldLabel());
     $this->setContentLocked(explode(',', $paramDataField->getFieldsToLock()));
     $this->setIsRightToAdd($paramDataField->getRightToAdd());
 }
Example #4
0
 /**
  * Retourne l'objet Html associé au champ DataField
  * @param DatabaseDataField $paramDataField
  * @param  $param
  * @return AbstractHtmlGlobalElement
  */
 public static function getHtmlObjectFromDataField(DatabaseDataField $paramDataField, $param = FALSE, $param2 = FALSE)
 {
     $htmlObject = NULL;
     $TypeOfHtmlObject = $paramDataField->getFieldTypeOfHtmlObject();
     switch ($TypeOfHtmlObject) {
         case Html::TYPE_OF_OBJECT_CALENDAR:
             $htmlObject = new DataFieldToHtmlInputCalendar($paramDataField);
             break;
         case Html::TYPE_OF_OBJECT_INPUTTEXT:
             $htmlObject = new DataFieldToHtmlInputText($paramDataField);
             break;
         case Html::TYPE_OF_OBJECT_LIST:
             $htmlObject = new DataFieldToHtmlListSelect($paramDataField);
             break;
         case Html::TYPE_OF_OBJECT_BOOLEAN:
             $htmlObject = new DataFieldToHtmlListBoolean($paramDataField);
             break;
         case Html::TYPE_OF_OBJECT_TEXTAREA:
             $htmlObject = new DataFieldToHtmlTextArea($paramDataField);
             break;
         case Html::TYPE_OF_OBJECT_SUBFORM_R1N:
             $htmlObject = new DataFieldToHtmlSubform_R1N($paramDataField);
             break;
         case Html::TYPE_OF_OBJECT_SUBFORM_RNN:
             $htmlObject = new DataFieldToHtmlSubform_RNN($paramDataField, $param, $param2);
             break;
         case Html::TYPE_OF_OBJECT_INPUTNUMBER:
             $htmlObject = new DataFieldToHtmlInputNumber($paramDataField);
             break;
         default:
             Lib::showMessage("Erreur", "Type d'objet <b>" . $TypeOfHtmlObject . "</b> inconnu." . " Champs concerné:" . $paramDataField->getFieldName() . " ", $redirection);
             //                throw new Exception();
     }
     return $htmlObject;
 }
 /**
  * On autorise la modification selon l'état de champs verrouillable
  * @param DatabaseDataField $paramDataField
  * @return boolean
  */
 function isEditableLockField(DatabaseDataField $paramDataField)
 {
     $isLockValue = $paramDataField->getIsFieldLock();
     $isEditable = $this->getIsEditable();
     switch ($isLockValue) {
         case FtaVerrouillageChampsModel::FIELD_LOCK_PRIMARY_FALSE:
         case FtaVerrouillageChampsModel::FIELD_LOCK_SECONDARY_FALSE:
         case FtaVerrouillageChampsModel::FIELD_LOCK_PRIMARY_TRUE:
             break;
         case FtaVerrouillageChampsModel::FIELD_LOCK_SECONDARY_TRUE:
             $isEditable = FALSE;
             break;
     }
     return $isEditable;
 }
 /**
  * On vérifie si la donnée en BDD se trouve dans le tableau
  * Sinon alors on vide la donnée de la BDD
  * @param DatabaseDataField $paramDataField
  * @param array $paramArray
  * @return \DatabaseDataField
  */
 public static function checkDataInArrayKeyList(DatabaseDataField $paramDataField, $paramArray)
 {
     $checkDataResgister = FtaController::isValueIsInKeyArray($paramDataField->getFieldValue(), $paramArray);
     if (!$checkDataResgister) {
         $paramDataField->setFieldValue("");
     }
     return $paramDataField;
 }