18,25 → 18,16 |
|
$ids = array_filter(array_map(create_function('$v','return intval($v);'), |
explode(',', $uid[1]))); |
if(!$ids) return FALSE; |
|
$resultat_transmission = Cel::db()->executer( |
sprintf('UPDATE cel_obs SET'. |
// mise à jour de la valeur de transmission (peut-être ?) |
' transmission = %1$d,'. |
$date = ($transmission == 1) ? 'now()' : 'NULL'; |
//TODO: modification pour passer ceci dans la classe gestion observation |
$requete_transmission = 'UPDATE cel_obs '. |
'SET transmission = '.$pairs['transmission'].', '. |
'date_modification = now(), date_transmission = '.$date.' '. |
'WHERE ce_utilisateur = '.Cel::db()->proteger($uid[0]).' AND ordre in ('.implode(',', $ids).')'; |
|
// date_transmission n'est réactualisé que si nécessaire, c'est à dire si le statut de "transmission" actuel n'est |
// pas à 1 et que le nouveau statut est à 1. Autrement il est mis (ou reste) à NULL |
' date_transmission = IF(transmission != 1 AND %1$s = 1, now(), NULL),'. |
$resultat_transmission = Cel::db()->executer($requete_transmission); |
|
// idem pour date_modification qui n'est mise à now() que si l'on passe une observation |
// de non-transmise à tranmise ou de transmise à non-transmise |
' date_modification = IF(transmission != %1$d, now(), date_modification)'. |
|
' WHERE ce_utilisateur = %2$s AND ordre in (%3$s)', |
$transmission, |
Cel::db()->proteger($uid[0]), |
implode(',', $ids))); |
return ($resultat_transmission != 0); |
} |
} |