Example #1
0
 protected function modify(Menu $menu)
 {
     $requete = $this->dao->prepare('UPDATE menus SET name = :name, slug = :slug WHERE id = :id');
     $requete->bindValue(':name', ucFirst($menu->name()), \PDO::PARAM_STR);
     $requete->bindValue(':slug', strtolower(trim(preg_replace('~[^0-9a-z]+~i', '-', html_entity_decode(preg_replace('~&([a-z]{1,2})(?:acute|cedil|circ|grave|lig|orn|ring|slash|copy|th|tilde|uml);~i', '$1', htmlentities($menu->name(), ENT_QUOTES, 'UTF-8')), ENT_QUOTES, 'UTF-8')), '-')), \PDO::PARAM_STR);
     $requete->bindValue(':id', $menu->id(), \PDO::PARAM_INT);
     $requete->execute();
 }
Example #2
0
 public function executeCreate(HTTPRequest $request)
 {
     $manager = $this->getManagerOf($this->module(), 'Menus');
     $menu = new Menu();
     $menu->setName($request->postData('name'));
     $id = $manager->save($menu);
     echo json_encode($id);
     exit;
 }
Example #3
0
 /**
  * Méthode permettant d'enregistrer une menu.
  * @param $Menu Menu la menu à enregistrer
  * @see self::add()
  * @see self::modify()
  * @return void
  */
 public function save(Menu $Menu)
 {
     if ($Menu->isValid()) {
         if ($Menu->isNew()) {
             return $this->add($Menu);
         }
         $this->modify($Menu);
     } else {
         throw new \RuntimeException('Le menu doit être valide pour être enregistré');
     }
 }