. */ /** * Diet Service. This class provides functionality to * handle diets */ require_once(FILESYSTEMROOTPATH."events/include/dao/DietDao.php"); class DietService { private $dietDao; /** * Default constructor * * @param DietDao */ public function __construct(DietDao $dietDao) { $this->dietDao = $dietDao; } /** * Load a diet by id * * @param string id of the diet to be loaded * @return Diet containing the data of the requested diet, or NULL in case diet does not exist */ public function load($id) { $diet = $this->dietDao->load($id); $ret = array ("id" => $diet->getId(), "name" => $diet->getName(), "active" => $diet->getActive(), "description" => $diet->getDescription()); return $ret; } /** * Load all Diets * * @return array of Diet */ public function loadAll() { $ret = array(); $diets = $this->dietDao->loadAll(); foreach( $diets as $diet ) { $ret[ $diet->getId() ] = array ("id" => $diet->getId(), "name" => $diet->getName(), "active" => $diet->getActive(), "description" => $diet->getDescription()); } return $ret; } /** * Load all Active Diets * * @return array of Diet */ public function loadActive() { $ret = array(); $diets = $this->dietDao->loadActive(); foreach( $diets as $diet ) { $ret[ $diet->getId() ] = array ("id" => $diet->getId(), "name" => $diet->getName(), "active" => $diet->getActive(), "description" => $diet->getDescription()); } return $ret; } /** * Save or update a diet * * @param Diet object with the diet data * @return boolean true in case of success, false otherwise */ public function saveOrUpdate(IModel $diet) { return $this->dietDao->saveOrUpdate($diet); } }