public function update(){ if(RequestUtils::isPost()){ parent::updateNotForward(); $ticket = DAO::getOne("Ticket",$_POST['idTicket']); $messages = DAO::getAll("Message", 'idTicket = '.$_POST['idTicket']); $users = array(); foreach ($messages as $message) { $user = $message->getUser()->getId(); if (!in_array($user, $users) && $user != Auth::getUser()->getId() ) { array_push($users, $message->getUser()->getId()); } $message->setUser(DAO::getAll("User", "id=".$message->getUser()->getId())[0]); } $message = DAO::getOne("Message", "idUser="******" ORDER BY date DESC"); foreach ($users as $user) { if (DAO::getOne("Notification", 'idUser = '******' AND idTicket = '.$ticket->getId()) == null) { $user = DAO::getOne("User", $user); $notif = new Notification(); $notif->setUser($user); $notif->setTicket($ticket); $notif->setMessage($message); DAO::insert($notif); } } $this->loadView("ticket/vMessage",array("messages"=>$messages, "ticket" => $ticket)); Jquery::execute("CKEDITOR.replace('contenu');"); Jquery::executeOn('.submitMessage', "click", " for ( instance in CKEDITOR.instances ) CKEDITOR.instances[instance].updateElement(); "); Jquery::postFormOn("click",".submitMessage","messages/update","frm",".contentMessages"); echo Jquery::compile(); } }
public function frm($id=NULL){ $ticket=$this->getInstance($id); if ($ticket->getTitre() != "") { $notif = DAO::getOne("Notification", 'idUser = '******' AND idTicket = '.$ticket->getId()); if ($notif != null) { DAO::delete($notif); } } //recuperer les message associé au ticket DAO::getOneToMany($ticket,"messages"); $messages=$ticket->getMessages(); foreach ($messages as $message){ $message->setUser(DAO::getAll("User", "id=".$message->getUser()->getId())[0]); } //recuperer la ou les catégorie(s) du ticket $categories=DAO::getAll("Categorie"); if($ticket->getCategorie()==null){ $cat=-1; }else{ $cat=$ticket->getCategorie()->getId(); } //permet la séléction d'une catégorie $listCat=Gui::select($categories,$cat,"Sélectionner une catégorie ..."); $listType=Gui::select(array("demande","incident"),$ticket->getType(),"Sélectionner un type ..."); //affiche la vue vAdd du ticket $this->loadView("ticket/vAdd",array("ticket"=>$ticket,"listCat"=>$listCat,"listType"=>$listType)); //affiche la vue permettant l'affichage des information du ticket $this->loadView("ticket/vInfoTicket",array("ticket"=>$ticket,"listCat"=>$listCat,"listType"=>$listType)); //div contenant les messages echo "<div class='container contentMessages'>"; //charge les messages et les affiches $this->loadView("ticket/vMessage",array("messages"=>$messages, "ticket" => $ticket)); //instancie CKEditor echo Jquery::executeOn('.submitMessage', "click", " for ( instance in CKEDITOR.instances ) CKEDITOR.instances[instance].updateElement(); "); //lors du clic sur le bouton submitMessage, éxécute l'update du message et l'affiche echo Jquery::postFormOn("click",".submitMessage","Messages/update","frm",".contentMessages"); if($ticket->getTitre() != "") echo Jquery::execute("$('.panel-body.infoTicket').hide();"); echo "</div>"; echo Jquery::executeOn(".montreInfoTicket","click", "$('.montreInfoTicket').toggleClass('glyphicon-chevron-up'); $('.montreInfoTicket').toggleClass('glyphicon-chevron-down'); $('.panel-body.infoTicket').slideToggle('slow');"); }