/**
  * 
  * @param Comment $comment_
  * @param array $arrayFilter
  * @throws InvalidArgumentException
  */
 public function insertComment(Comment $comment_, array $arrayFilter = array())
 {
     try {
         if (is_null($this->table)) {
             throw new InvalidArgumentException('Attribute "table" can\'t be NULL !');
         }
         $userMapper = new UserMapper();
         $announcementMapper = new AnnouncementMapper();
         $userMapper->setId($comment_->getIdUser());
         $user = $userMapper->selectUser();
         $announcementMapper->setId($comment_->getIdAnnouncement());
         $announcement = $announcementMapper->selectAnnouncement();
         if (!is_null($user->getId()) && !is_null($announcement->getId())) {
             return parent::insert($this->table, $comment_, $arrayFilter);
         } elseif (is_null($user->getId())) {
             throw new Exception('User is inexistant !');
         } elseif (is_null($announcement->getId())) {
             throw new Exception('Announcement is inexistant !');
         }
     } catch (InvalidArgumentException $e) {
         print $e->getMessage();
         exit;
     } catch (Exception $e) {
         print $e->getMessage();
         exit;
     }
 }
 public function testDelete()
 {
     $announcementMapper = new AnnouncementMapper();
     $announcementMapper->setId(1);
     $announcementMapper->deleteAnnouncement();
     $this->assertEquals(new Announcement(), $announcementMapper->selectAnnouncement());
 }
 public function goAssociate(stdClass $object_)
 {
     try {
         if (isset($object_) && !emptyObject($object_)) {
             $announcementMapper = new AnnouncementMapper();
             $announcementMapper->setId($object_->id_announcement);
             $announcement = $announcementMapper->selectAnnouncement();
             $tagMapper = new TagMapper();
             $tagMapper->setId($object_->id_tag);
             $tag = $tagMapper->selectTag();
             if (!is_null($announcement->getId()) && !is_null($tag->getId())) {
                 if (is_null($user->getId())) {
                     return parent::insert('TO_ASSOCIATE', $object_);
                 } else {
                     throw new Exception('The user is already followed by this user !');
                 }
                 return parent::insert($this->table, $message_, $arrayFilter);
             } elseif (is_null($announcement->getId())) {
                 throw new Exception('Announcement is inexistant !');
             } elseif (is_null($tag->getId())) {
                 throw new Exception('Tag is inexistant !');
             }
         } elseif (empty($id_announcement_)) {
             throw new Exception('Id announcement is required !');
         } elseif (empty($id_tag_)) {
             throw new Exception('Id tag is required !');
         }
     } catch (Exception $e) {
         print $e->getMessage();
         exit;
     }
 }