Subversion Repositories eFlore/Applications.cel

Compare Revisions

Ignore whitespace Rev 3540 → Rev 3541

/trunk/jrest/bibliotheque/GestionChampsEtendus.php
136,7 → 136,7
public function ajouterParLots(Array $champs_etendus, $projet = null) {
if (! $champs_etendus) return TRUE; // le tableau ... vide à été inséré
$ajout = false;
$label_champs_etendus = new GestionChampsEtendus2();
$label_champs_etendus = new GestionChampsEtendus2($cel->config);
$champs_etendus_id = $label_champs_etendus->consulterGroupesChampsEtendusPredefinis($projet);
if ($champs_etendus_id !== null) {
153,12 → 153,14
// la partie on duplicate key est spécifique mysql mais il sera facile de s'en passer le jour
// où l'on change de sgbd
$ajout = Cel::db()->executer(sprintf(
"INSERT INTO %s (%s, extended_field_id, value) VALUES %s ON DUPLICATE KEY UPDATE value = VALUES(valeur) -- %s:%d",
$this->table_obs_etendus,
$this->champ_id,
implode(',', $lignes),
__FILE__, __LINE__));
if ($lignes != array()) {
$ajout = Cel::db()->executer(sprintf(
"INSERT INTO %s (%s, extended_field_id, value) VALUES %s ON DUPLICATE KEY UPDATE value = VALUES(valeur) -- %s:%d",
$this->table_obs_etendus,
$this->champ_id,
implode(',', $lignes),
__FILE__, __LINE__));
}
}
return ($ajout !== false);
}
/trunk/jrest/bibliotheque/GestionChampsEtendus2.php
19,7 → 19,7
private $table_champs_etendus = "extended_field";
private $table_champs_etendus_trad = "extendedfield_translation";
private $champ_id = "field_id";
private $liste_champs = "ce.`id`, ce.`project`, ce.field_id, ce.`data_type`, ce.`is_mandatory`, ce.`unit`, ".
private $liste_champs = "ce.`id`, ce.`project`,ce.`project_id`, ce.field_id, ce.`data_type`, ce.`is_mandatory`, ce.`unit`, ".
"cet.extended_field_id, cet.`label`, cet.`description`, cet.`default_value`, cet.`error_message`, cet.`language_iso_code`, cet.`help` ";
 
199,26 → 199,26
// les champs sont ordonnés par groupe, ce qui permet de les assembler
// séquentiellement en créeant un nouveau groupe lorsque la clé
// de groupe du champ actuel est différénte de la précédente
if ($cle_groupe != $groupe_champ['ce.`project`']) {
if ($cle_groupe != $groupe_champ['project']) {
if($infos_groupe != null) {
$groupes[] = $infos_groupe;
}
$infos_groupe = array();
$cle_groupe = $groupe_champ['ce.`project`'];
$cle_groupe = $groupe_champ['project'];
}
if (empty($infos_groupe)) {
$infos_groupe = array(
'cle' => $groupe_champ['ce.`project`'],
'nom' => $groupe_champ['ce.`project`'],
'cle' => $groupe_champ['project_id'],
'nom' => $groupe_champ['project'],
'champs' => array()
);
}
$infos_groupe['champs'][$groupe_champ['ce.field_id']] = array(
'id' => $groupe_champ['ce.id'],
'cle' => $groupe_champ['ce.field_id'],
'label' => $groupe_champ['cet.`label`'],
$infos_groupe['champs'][$groupe_champ['field_id']] = array(
'id' => $groupe_champ['id'],
'cle' => $groupe_champ['field_id'],
'label' => $groupe_champ['label'],
'type' => $groupe_champ['type_champ'],
'valeur' => $groupe_champ['valeur_champ'],
'options' => array(