true, 'id' => false ]; // Si on veut que ce champ virtuel soit exporté systématiquement dans l'entité //protected $_virtual = ['status_from_dates']; // Ajoute le champ VIRTUEL (calculé) "status_from_dates" à l'entité Emprunt protected function _getStatusFromDates() { //return $this->_properties['lieu'] . ' ' . $this->_properties['last_name']; //return "un"; $today = new \DateTime('now'); //echo $today->format('d/m/y'); $date_emprunt = new \DateTime(strtr($this->_properties['date_emprunt'],'/','-')) ; //->format('d/m/y'); // on ajoute 23h59m59s à date_retour pour autoriser le retour jqa la fin de la journée $date_retour = new \DateTime(strtr($this->_properties['date_retour_emprunt'],'/','-')); $date_retour->add(new \DateInterval('PT23H59M59S')); //->format('d/m/y'); $delay = $today->diff($date_emprunt)->days; if ($today < $date_emprunt) { $status = "A VENIR"; $delay = "dans " . ($delay==0?1:$delay); } else { if ($today <= $date_retour) { $status = "EN COURS"; } else { $status = "TERMINÉ"; $delay = $today->diff($date_retour)->days; } $delay = "depuis " . ($delay==0?1:$delay); } return [$status, $delay]; } }