Rev 1840 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
<?php/** @author Raphaël Droz <raphael@tela-botanica.org>* @author David Delon <david.delon@clapas.net>* @copyright 2010, 2013 Tela-Botanica* @license GPL v3 <http://www.gnu.org/licenses/gpl.txt>* @license CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>*/class InventoryTransmit extends Cel {function updateElement($uid, $pairs) {// Controle detournement utilisateur$this->controleUtilisateur($uid[0]);if (!isset($uid[1])) return false;$transmission = intval($pairs['transmission']);if($transmission != 0 && $transmission != 1) return false;$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 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),'.// 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);}}