Line 17... |
Line 17... |
17 |
class GestionChampsEtendus2 extends Cel {
|
17 |
class GestionChampsEtendus2 extends Cel {
|
Line 18... |
Line 18... |
18 |
|
18 |
|
19 |
private $table_champs_etendus = "extended_field";
|
19 |
private $table_champs_etendus = "extended_field";
|
20 |
private $table_champs_etendus_trad = "extendedfield_translation";
|
20 |
private $table_champs_etendus_trad = "extendedfield_translation";
|
21 |
private $champ_id = "field_id";
|
21 |
private $champ_id = "field_id";
|
22 |
private $liste_champs = "ce.`id`, ce.`project`,ce.`project_id`, ce.field_id, ce.`data_type`, ce.`is_mandatory`, ce.`unit`, ".
|
22 |
private $liste_champs = "ce.`id`, ce.`project`,ce.`project_id`, ce.field_id, ce.`data_type`, ce.`is_mandatory`, ce.`unit`, ce.`is_visible`, ".
|
Line 23... |
Line 23... |
23 |
"cet.extended_field_id, cet.`label`, cet.`description`, cet.`default_value`, cet.`error_message`, cet.`language_iso_code`, cet.`help` ";
|
23 |
"cet.extended_field_id, cet.`label`, cet.`description`, cet.`default_value`, cet.`error_message`, cet.`language_iso_code`, cet.`help` ";
|
24 |
|
24 |
|
Line 128... |
Line 128... |
128 |
$modif = Cel::db()->executer($requete);
|
128 |
$modif = Cel::db()->executer($requete);
|
129 |
return ($modif !== false);
|
129 |
return ($modif !== false);
|
130 |
}
|
130 |
}
|
Line 131... |
Line 131... |
131 |
|
131 |
|
- |
|
132 |
/**
|
- |
|
133 |
* Modifie un champ étendu associé à l'élément passé en paramètre
|
- |
|
134 |
*
|
- |
|
135 |
* @param ChampEtendu $champ_etendu
|
- |
|
136 |
* @return bool true si la modification a eu lieu
|
- |
|
137 |
*/
|
- |
|
138 |
public function modifierParProjet(Array $champs_etendus, $langue) {
|
- |
|
139 |
if (! $champs_etendus) return TRUE; // le tableau ... vide à été inséré
|
- |
|
140 |
// pour chaque champ étendu
|
- |
|
141 |
foreach ($champs_etendus['ce'] as $num_champ => $champ_etendu) {
|
- |
|
142 |
$modif_ce = "UPDATE {$this->table_champs_etendus} ce join {$this->table_champs_etendus_trad} cet";
|
- |
|
143 |
$modif_ce .= " on field_id = `extended_field_id` and ce.`project` = cet.`project` and ".
|
- |
|
144 |
"`language_iso_code` = ".Cel::db()->proteger($langue)." SET ";
|
- |
|
145 |
// pour chaque valeur de la table extended_field
|
- |
|
146 |
foreach ($champs_etendus['ce'][0] as $num_colonne => $colonne) {
|
- |
|
147 |
$modif_ce .= "ce.".$num_colonne." = ".Cel::db()->proteger($champ_etendu[$num_colonne]).", ";
|
- |
|
148 |
}
|
- |
|
149 |
// pour chaque valeur de la table extended_field_traduction
|
- |
|
150 |
foreach ($champs_etendus['cet'][0] as $num_colonne_t => $colonne_t) {
|
- |
|
151 |
$modif_ce .= "cet.".$num_colonne_t." = ".Cel::db()->proteger($champs_etendus['cet'][$num_champ][$num_colonne_t]).", ";
|
- |
|
152 |
}
|
- |
|
153 |
$modif_ce = rtrim($modif_ce, ", ");
|
- |
|
154 |
$modif_ce .= " WHERE ce.{$this->champ_id} = ".Cel::db()->proteger($champ_etendu['field_id']);
|
- |
|
155 |
$modif_ce .= " AND ce.project = ".Cel::db()->proteger($champ_etendu['project']).";";
|
- |
|
156 |
$modif = Cel::db()->executer($modif_ce);
|
- |
|
157 |
}
|
- |
|
158 |
return ($modif !== false);
|
- |
|
159 |
}
|
- |
|
160 |
|
- |
|
161 |
|
132 |
/**
|
162 |
/**
|
133 |
* Supprime le champ champ étendu associé à l'élément et au nom de clé passés en paramètre
|
163 |
* Supprime le champ champ étendu associé à l'élément et au nom de clé passés en paramètre
|
134 |
*
|
164 |
*
|
135 |
* @param int $id_element_lie
|
165 |
* @param int $id_element_lie
|
136 |
* @param string $cle
|
166 |
* @param string $cle
|