Subversion Repositories eFlore/Applications.cel

Compare Revisions

Regard whitespace Rev 3894 → Rev 3895

/branches/v3.01-serpe/jrest/services/CelWidgetManager.php
62,7 → 62,8
"key" => "field_id",
"element" => "data_type",
"mandatory" => "is_mandatory",
"unit" => "unit"
"unit" => "unit",
"is_visible" => "is_visible"
);
private $correspondance_champs_etendus_trad = array(
114,6 → 115,12
public function updateElement($uid,$params) {
$retour = "";
if (isset($params['projet']) && isset($params['langue'])) {
if (isset($params['champs-supp'])) {
$gestionchamps = new GestionChampsEtendus2($this->config);
$champs = $this->traiterCorrespondanceChampsEtendusInterfaceBD($params); //var_dump($champs);exit;
$liste = $gestionchamps->modifierParProjet($champs, $params['langue']);
unset($params['champs-supp']);
}
$manager = new GestionWidget($this->config);
$params['est_type'] = (isset($params['est_type']) && $params['est_type']== "on") ? 1 : 0;
$requeteDonnees = $this->traiterCorresponceConfigWidgetInterfaceBD($params);
175,7 → 182,7
$parametres_traites = array();
$corresp = $this->correspondance_config_widget;
foreach($parametres as $cle => $valeur) {
if(is_string($valeur) && !trim($valeur)) $valeur=NULL;
if(is_string($valeur) && !trim($valeur) && $valeur !== '0') $valeur=NULL;
if(isset($corresp[$cle])) {
$parametres_traites[$corresp[$cle]] = $valeur;
}
195,7 → 202,7
if (isset($champ[$ci]) && $champ[$ci] != "") {
$champsrequete['ce'][$i][$ce] = $champ[$ci];
} else {
if ($ci == "mandatory") {
if ($ci == "mandatory" || $ci == "is_visible") {
$champsrequete['ce'][$i][$ce] = "0";
} else {
$champsrequete['ce'][$i][$ce] = "";
202,7 → 209,7
}
}
}
$champsrequete['ce'][$i]["is_visible"] = "1";
//$champsrequete['ce'][$i]["is_visible"] = "1";
// pour la table extended fiels trad champs interface => champs bd
foreach ($this->correspondance_champs_etendus_trad as $cit => $cr) {
if (isset($champ[$cit]) && is_array($champ[$cit])) {
244,4 → 251,4
 
 
}
?>
?>
/branches/v3.01-serpe/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.`project_id`, 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`, ce.`is_visible`, ".
"cet.extended_field_id, cet.`label`, cet.`description`, cet.`default_value`, cet.`error_message`, cet.`language_iso_code`, cet.`help` ";
 
130,6 → 130,36
}
 
/**
* Modifie un champ étendu associé à l'élément passé en paramètre
*
* @param ChampEtendu $champ_etendu
* @return bool true si la modification a eu lieu
*/
public function modifierParProjet(Array $champs_etendus, $langue) {
if (! $champs_etendus) return TRUE; // le tableau ... vide à été inséré
// pour chaque champ étendu
foreach ($champs_etendus['ce'] as $num_champ => $champ_etendu) {
$modif_ce = "UPDATE {$this->table_champs_etendus} ce join {$this->table_champs_etendus_trad} cet";
$modif_ce .= " on field_id = `extended_field_id` and ce.`project` = cet.`project` and ".
"`language_iso_code` = ".Cel::db()->proteger($langue)." SET ";
// pour chaque valeur de la table extended_field
foreach ($champs_etendus['ce'][0] as $num_colonne => $colonne) {
$modif_ce .= "ce.".$num_colonne." = ".Cel::db()->proteger($champ_etendu[$num_colonne]).", ";
}
// pour chaque valeur de la table extended_field_traduction
foreach ($champs_etendus['cet'][0] as $num_colonne_t => $colonne_t) {
$modif_ce .= "cet.".$num_colonne_t." = ".Cel::db()->proteger($champs_etendus['cet'][$num_champ][$num_colonne_t]).", ";
}
$modif_ce = rtrim($modif_ce, ", ");
$modif_ce .= " WHERE ce.{$this->champ_id} = ".Cel::db()->proteger($champ_etendu['field_id']);
$modif_ce .= " AND ce.project = ".Cel::db()->proteger($champ_etendu['project']).";";
$modif = Cel::db()->executer($modif_ce);
}
return ($modif !== false);
}
 
/**
* Supprime le champ champ étendu associé à l'élément et au nom de clé passés en paramètre
*
* @param int $id_element_lie