public function testDelete() { $announcementMapper = new AnnouncementMapper(); $announcementMapper->setId(1); $announcementMapper->deleteAnnouncement(); $this->assertEquals(new Announcement(), $announcementMapper->selectAnnouncement()); }
/** * * @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; } }
<?php /** * Get the HTTP method and differents data. */ $http = Rest::initProcess(); switch ($http->getMethod()) { case 'get': $announcementMapper = new \AnnouncementMapper(); $announcementObject = $announcementMapper->selectAnnouncement(); $announcementArray = extractData($announcementObject); if (!empty($announcementArray)) { if ($http->getHttpAccept() == 'json') { Rest::sendResponse(200, json_encode($announcementArray), 'application/json'); } else { if ($http->getHttpAccept() == 'xml') { $options = array('indent' => ' ', 'addDecl' => false, "defaultTagName" => "announcement", XML_SERIALIZER_OPTION_RETURN_RESULT => true); $serializer = new XML_Serializer($options); Rest::sendResponse(200, $serializer->serialize($announcementArray), 'application/xml'); } } } else { Rest::sendResponse(204); } break; case 'delete': $announcementMapper = new \AnnouncementMapper(); if ($announcementMapper->deleteAnnouncement()) { Rest::sendResponse(200); } break;
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; } }
<?php /** * Get the HTTP method and differents data. */ $http = Rest::initProcess(); switch ($http->getMethod()) { case 'get': $announcementMapper = new \AnnouncementMapper(); $announcementsObject = $announcementMapper->selectAnnouncement(true); $result = true; if (is_array($announcementsObject) && !is_null($announcementsObject)) { foreach ($announcementsObject as $announcementObject) { $result = emptyObject($announcementObject); } } if (!$result) { foreach ($announcementsObject as $announcementObject) { $announcementsArray[] = extractData($announcementObject); } if ($http->getHttpAccept() == 'json') { Rest::sendResponse(200, json_encode($announcementsArray), 'application/json'); } else { if ($http->getHttpAccept() == 'xml') { $options = array('indent' => ' ', 'addDecl' => false, XML_SERIALIZER_OPTION_RETURN_RESULT => true, "defaultTagName" => "announcement"); $serializer = new XML_Serializer($options); Rest::sendResponse(200, $serializer->serialize($announcementsArray), 'application/xml'); } } } else { Rest::sendResponse(204);