public function executeComments(HTTPRequest $request) { $this->run(); $id = $request->getData('id'); $manager = $this->managers->getManagerOf('Member'); // Récupéré l'id du membre que l'on veux voir, et avec récupérer le nom, puis appliquer ce que l'on souhaite dans membre $auteur = $manager->getusername($id); if ($auteur == false) { $id = $manager->getId($id); if ($id != false) { $auteur = $manager->getusername($id); } else { $id = $request->getData('id'); } } $this->page->addVar('auteur', $auteur); if ($auteur === false) { $auteur = $id; } $manager = $this->managers->getManagerOf('Comments'); $this->page->addVar('id', $id); $this->page->addVar('title', 'Mes commentaires'); $this->page->addVar('comments', $manager->getListOfMember($auteur)); $this->page->addVar('number', $manager->countCountMember($auteur)); }
public function executeIndex(HTTPRequest $request) { $this->run(); if ($request->method() == 'POST') { $member = new Member(['username' => $request->postData('username'), 'password' => $request->postData('password')]); } else { $member = new Member(); } $formBuilder = new AutorFormBuilder($member); $formBuilder->build($this->managers->getManagerOf('Member')); $form = $formBuilder->form(); $formHandler = new FormHandler($form, $this->managers->getManagerOf('Member'), $request); $entier = (int) $this->managers->getManagerOf('Member')->getId($member->username()); if ($formHandler->process()) { $this->app->user()->setMember(1); // on met 1 pour auteur, il faudrait le faire dynamiquement ? (récupérer $member->priority() ? $this->app->user()->setUsername($member->username()); $this->app->user()->setId($entier); //récupérer l'id du member $this->app->user()->setFlash('Tu es connecté'); $this->app->httpResponse()->redirect($this->app->router()->getBuiltRoute('News', 'index', [])); } $this->page->addVar('title', 'Connexion'); $this->page->addVar('Member', $member); $this->page->addVar('form', $form->createView()); }
public function executeDelete(HTTPRequest $request) { $MemberId = $request->getData('id'); $this->managers->getManagerOf('Member')->delete($MemberId); if ($this->app->user()->getAttribute('user')->id() == $MemberId) { $this->app->httpResponse()->redirect('/admin/deconnexion.html'); } $this->app->user()->setFlash('L\'utilisateur a bien été supprimé !'); $this->app->httpResponse()->redirect('/admin/members.html'); }
public function processForm(HTTPRequest $request) { if ($request->method() == 'POST') { $news = new News(['auteur' => $request->postData('auteur'), 'titre' => $request->postData('titre'), 'contenu' => $request->postData('contenu')]); if ($request->getExists('id')) { $news->setId($request->getData('id')); } } else { // L'identifiant de la news est transmis si on veut la modifier if ($request->getExists('id')) { $news = $this->managers->getManagerOf('News')->getUnique($request->getData('id')); } else { $news = new News(); } } $formBuilder = new NewsFormBuilder($news); $formBuilder->build(); $form = $formBuilder->form(); $formHandler = new FormHandler($form, $this->managers->getManagerOf('News'), $request); if ($formHandler->process()) { $this->app->user()->setFlash($news->isNew() ? 'La news a bien été ajoutée !' : 'La news a bien été modifiée !'); $this->app->httpResponse()->redirect('/admin/'); } $this->page->addVar('form', $form->createView()); }
public function executeShow(HTTPRequest $request) { $memberManager = $this->managers->getManagerOf('Members'); /** @var $member Member */ if (!($idMember = $memberManager->checkPseudoExist($request->getData('pseudo')))) { $this->app->httpResponse()->redirect404(); } $member = $memberManager->getUnique($idMember); $this->page->addVar('member', $member); $this->page->addVar('nbMessages', $this->managers->getManagerOf('Comments')->countByMember($idMember)); $this->page->addVar('nbNews', $this->managers->getManagerOf('News')->countByMember($idMember)); $this->run(); }
public function executeIndex(HTTPRequest $request) { $this->page->addVar('title', 'Connexion'); if ($request->postExists('login')) { $login = $request->postData('login'); $password = $request->postData('password'); if ($typeMember = $this->managers->getManagerOf('Members')->connect($login, $password)) { $this->app->user()->setAuthenticated(true); $this->app->httpResponse()->redirect('/'); } else { $this->app->user()->setFlash('Le pseudo ou le mot de passe est incorrect.'); } } }
public function executeIndex(HTTPRequest $request) { $this->page->addVar('title', 'Connexion'); if ($request->postExists('login')) { $login = $request->postData('login'); $password = $request->postData('password'); if ($login == $this->app->config()->get('login') && hash_equals($this->app->config()->get('pass'), crypt($password, $this->app->config()->get('pass')))) { $this->app->user()->setAuthenticated(true); $this->app->httpResponse()->redirect('.'); } else { $this->app->user()->setFlash('Le pseudo ou le mot de passe est incorrect.'); } } }
public function executeShowTag(HTTPRequest $request) { $this->run(); $managertag = $this->managers->getManagerOf('Tag'); // Si le numéro de tag exist : $idtag = $request->getData('id'); $tagname = $managertag->getname($idtag); if ($tagname != false) { $ListTag = $managertag->getListOfNews($idtag); $this->page->addVar('ListNewsTag', $ListTag); $this->page->addVar('nametag', $tagname); } else { $this->page->addVar('undefined', 1); } }
public function processForm(HTTPRequest $request) { if (!$this->app()->user()->isAuthenticated()) { $this->app->user()->setFlash('Connectez vous ou inscrivez vous pour accéder à cette section'); $this->app->httpResponse()->redirect('/'); } if ($request->method() == 'POST') { $news = new News(['auteur' => $this->app()->user()->member()->id(), 'titre' => $request->postData('titre'), 'contenu' => $request->postData('contenu'), 'tags' => $request->postData('tags')]); if ($request->getExists('id')) { $news->setId($request->getData('id')); } } else { // L'identifiant de la news est transmis si on veut la modifier if ($request->getExists('id')) { $news = $this->managers->getManagerOf('News')->getUnique($request->getData('id'), true); if ($news == NULL) { $this->app()->httpResponse()->redirect404(); } } else { $news = new News(); } } $formBuilder = new NewsFormBuilder($news); $formBuilder->build(); $form = $formBuilder->form(); $formHandler = new FormHandler($form, $this->managers->getManagerOf('News'), $request); if ($formHandler->process()) { $this->app->user()->setFlash($news->isNew() ? 'La news a bien été ajoutée !' : 'La news a bien été modifiée !'); $this->app->httpResponse()->redirect('/'); } $this->managers->getManagerOf('News')->saveTags($news); $this->page->addVar('form', $form->createView()); }
public function executeIndex(HTTPRequest $request) { $this->page->addVar('title', 'Connexion'); $this->run(); if ($request->postExists('login') && $request->postExists('password')) { /** @var MemberManager $MemberManager */ $MemberManager = $this->managers->getManagerOf('Member'); $Member = $MemberManager->getMemberUsingLoginAndPassword($request->postData('login'), $request->postData('password')); if ($Member && $Member->level() <= self::LEVEL_AUTHORISATION) { $this->app->user()->setAuthenticated(true); $this->app->user()->setAttribute('user', $Member); $this->app->httpResponse()->redirect('.'); } else { $this->app->user()->setFlash('Le pseudo ou le mot de passe est incorrect.'); } } }
public function executeIndex(HTTPRequest $request) { $this->run(); if ($request->method() == 'POST') { $member = new Member(['username' => $request->postData('username'), 'password' => $request->postData('password')]); } else { $member = new Member(); } $formBuilder = new MemberFormBuilder($member); $formBuilder->build($this->managers->getManagerOf('Member')); $form = $formBuilder->form(); $formHandler = new FormHandler($form, $this->managers->getManagerOf('Member'), $request); if ($formHandler->process()) { $this->app->user()->setAuthenticated(true); $this->app->httpResponse()->redirect($this->app->router()->getBuiltRoute('News', 'index', [])); } $this->page->addVar('title', 'Connexion'); $this->page->addVar('Member', $member); $this->page->addVar('form', $form->createView()); }
public function executeShow(HTTPRequest $Request) { $Member = $this->managers->getManagerOf('Member')->getUnique($Request->getData('member_id')); if ($Member->id() == 0) { $this->app->httpResponse()->redirect404(); } $this->run(); $CommentsManager = $this->managers->getManagerOf('Comments'); $Comments_a = $CommentsManager->getCommentsUsingMemberId($Request->getData('member_id')); $Member->commentscount = $CommentsManager->countUsingMemberId($Request->getData('member_id')); $NewsManager = $this->managers->getManagerOf('News'); $News_a = $NewsManager->getListUsingMemberId($Request->getData('member_id')); foreach ($News_a as $News) { $News->commentscount = $CommentsManager->countUsingNewsId($News->id()); } $Router = new Router(); $this->page->addVar('Member', $Member); $this->page->addVar('Comments_a', $Comments_a); $this->page->addVar('News_a', $News_a); $this->page->addVar('Router', $Router); }
public function executeUnsubscribe(HTTPRequest $Request) { $this->run(); $this->page->addVar('title', 'Désinscription'); if ($Request->method() == 'POST') { $unsubscribe_message = $Request->postData('unsubscribe_message'); if (!$unsubscribe_message) { $this->page->addVar('erreur', 'Votre message ne doit pas être vide.'); return; } $FORManager = $this->managers->getManagerOf('FOR'); $Characteristicc = $FORManager->getCharacteristiccUsingName('unsubscribe_message'); $FVC_id = $FORManager->addCharacteristicvaluec($Characteristicc->id(), $unsubscribe_message); $Alertc = new Alertc(array('FAC_fk_FAY' => 1, 'FAC_fk_FAE' => 1)); $FAC_id = $FORManager->addAlertc($Alertc); $Alertd = new Alertd(array('FAD_fk_FAC' => $FAC_id, 'FAD_fk_FHC' => $Characteristicc->id(), 'FAD_fk_FVC' => $FVC_id)); $FORManager->addAlertd($Alertd); $this->app->user()->setFlash('Votre demande a bien été enregistrée'); $this->app->httpResponse()->redirect('/mon-compte.html'); } }
/** * Méthode pour l'action InsertComment * Vérifie si le formulaire est envoyé en vérifiant si la variable POST pseudo existe * Ensuite la méthode vérifie les données * Si toutes les données sont valides => le commentaire est inséré en base * * @param HTTPRequest $request * @return void */ public function executeInsertComment(HTTPRequest $request) { // Si le formulaire a été envoyé => création du commentaire avec les valeurs du formulaire. if ($request->method() == 'POST') { $comment = new Comment(['news' => $request->getData('news'), 'auteur' => $request->postData('auteur'), 'contenu' => $request->postData('contenu')]); } else { $comment = new Comment(); } $formBuilder = new CommentFormBuilder($comment); $formBuilder->build(); $form = $formBuilder->form(); $formHandler = new FormHandler($form, $this->managers->getManagerOf('Comments'), $request); // Enregistrement du commentaire en DB if ($formHandler->process()) { $this->app->user()->setFlash('Le commentaire a bien été ajouté, merci !'); $this->app->httpResponse()->redirect('news-' . $request->getData('news') . '.html'); } $this->page->addVar('comment', $comment); $this->page->addVar('form', $form->createView()); // Passer le formulaire généré à la vue. $this->page->addVar('title', 'Ajout d\'un commentaire'); }
public function executeIndex(HTTPRequest $request) { $this->run(); if ($request->method() == 'POST') { $member = new Member(['username' => $request->postData('username'), 'password' => $request->postData('password'), 'confirmation' => $request->postData('confirmation'), 'description' => $request->postData('description'), 'mail' => $request->postData('mail')]); } else { $member = new Member(); // on garde cette entité member ? } $formBuilder = new RegisterFormBuilder($member); // même formbuilder ? $formBuilder->build($this->managers->getManagerOf('Member')); $form = $formBuilder->form(); $formHandler = new FormHandler($form, $this->managers->getManagerOf('Member'), $request); if ($formHandler->process()) { $this->app->user()->setFlash('vous êtes bien inscrit'); $this->app->httpResponse()->redirect('.'); } $this->page->addVar('title', 'Inscription'); $this->page->addVar('Member', $member); $this->page->addVar('form', $form->createView()); }
public function executeIndex(HTTPRequest $request) { if ($request->method() == 'POST') { $member = new Member(['pseudo' => $request->postData('pseudo'), 'password' => $request->postData('password')]); } else { $member = new Member(); } $formBuilder = new ConnexionFormBuilder($member); $formBuilder->build($this->managers->getManagerOf('Members')); $form = $formBuilder->form(); $formHandler = new FormHandler($form, $this->managers->getManagerOf('Members'), $request); /**@var $memberManager MembersManager */ $memberManager = $this->managers->getManagerOf('Members'); if ($formHandler->verify()) { $this->app->user()->setFlash('Vous etes désormais connecté'); $this->app->user()->setAuthenticated($memberManager->getUnique($memberManager->connect($request->postData('pseudo'), $request->postData('password')))); $this->app->httpResponse()->redirect('/'); } $this->page->addVar('member', $member); $this->page->addVar('form', $form->createView()); $this->page->addVar('title', 'Connexion'); }
public function executeInsertComment(HTTPRequest $request) { // Si le formulaire a été envoyé. if ($request->method() == 'POST') { $comment = new Comment(['news' => $request->getData('news'), 'auteur' => $request->postData('auteur'), 'contenu' => $request->postData('contenu')]); } else { $comment = new Comment(); } $formBuilder = new CommentFormBuilder($comment); $formBuilder->build(); $form = $formBuilder->form(); // On récupère le gestionnaire de formulaire (le paramètre de getManagerOf() est bien entendu à remplacer). $formHandler = new \OCFram\FormHandler($form, $this->managers->getManagerOf('Comments'), $request); if ($formHandler->process()) { // Ici ne résident plus que les opérations à effectuer une fois l'entité du formulaire enregistrée // (affichage d'un message informatif, redirection, etc.). $this->app->user()->setFlash('Le commentaire a bien été ajouté, merci !'); $this->app->httpResponse()->redirect('news-' . $request->getData('news') . '.html'); } $this->page->addVar('comment', $comment); $this->page->addVar('form', $form->createView()); $this->page->addVar('title', 'Ajout d\'un commentaire'); }
/** * Méthode pour l'action deleteComment * Le contrôleur se charge d'invoquer * la méthode du manager qui supprimera le commentaire (delete) * L'utilisateur est ensuite redirigé vers l'index admin * avec affichage d'un message au rechargement de la page * Cette action ne possède aucune vue * * @param HTTPRequest $request * @return void */ public function executeDeleteComment(HTTPRequest $request) { $this->managers->getManagerOf('Comments')->delete($request->getData('id')); $this->app->user()->setFlash('Le commentaire a bien été supprimé !'); $this->app->httpResponse()->redirect('.'); }
public function executeGetNewComments(HTTPRequest $request) { $this->processJSONComment($this->managers->getManagerOf('Comments')->getNewComments($request->postData('comment_last_id'), $request->postData('news_id'))); }
public function executeCommentStreamUpdatingUsingAjax(HTTPRequest $Request) { $CommentManager = $this->managers->getManagerOf('Comments'); $Comments_a = $CommentManager->getAfterId($Request->postData('news_id'), $Request->postData('last_insert_id')); $this->page->setTemplate('jsonLayout.php'); if (!$Comments_a) { $this->page->addVar('ajax', json_encode(array('success' => false, 'message' => 'aucun nouveau commentaire'))); return; } $comments_views_a = array(); $Router = new Router(); foreach ($Comments_a as $Comment) { $PageComment = new Page($this->app); $PageComment->setContentFile(__DIR__ . '/Views/comment.php'); $PageComment->addVar('comment', $Comment); $PageComment->addVar('router', $Router); $PageComment->setTemplate('jsonLayout.php'); $comments_views_a[$Comment->id()] = $PageComment->getGeneratedPage(); } $ajax = array('success' => true, 'comments' => $comments_views_a, 'validation_message' => 'Votre message a bien été ajouté.'); $this->page->addVar('ajax', json_encode($ajax)); }
public function executeTest(HTTPRequest $request) { $this->page->addVar('test', $request->getData('id')); echo 'test '; echo $request->getData('id'); }
public function executeDeleteCommentUsingAjax(HTTPRequest $Request) { $CommentManager = $this->managers->getManagerOf('Comments'); $Comment = $CommentManager->getUnique($Request->getData('comment_id')); $this->page->setTemplate('jsonLayout.php'); if (!$Comment) { $this->page->addVar('ajax', json_encode(array('success' => false, 'erreurs' => 'Le commentaire n\'existe pas !'))); return; } $Membre = $this->app->user()->getAttribute('user'); if ($Comment->auteurId() != $Membre->id() && $Membre->level() != MemberManager::ADMINISTRATOR) { $this->page->addVar('ajax', json_encode(array('success' => false, 'erreurs' => 'Droits insuffisants'))); return; } $CommentManager->delete($Request->getData('comment_id')); $this->page->addVar('ajax', json_encode(array('success' => true, 'validation_message' => 'Votre message a bien été supprimé'))); }