public function disableAction()
 {
     $dest = HTTPHelper::getReferer() ? HTTPHelper::getReferer() : HTTPHelper::Link();
     $id = $this->_getParam('ubgid', -1);
     if ($id > 0) {
         // Getting the userbook gift item
         $userbookGift = UserBookGiftDao::getInstance()->get($id);
         if ($userbookGift) {
             // Checking if the connected user is the offerer
             $globalContext = new \Sb\Context\Model\Context();
             $connectedUser = $globalContext->getConnectedUser();
             if ($userbookGift->getOfferer()->getId() == $connectedUser->getId()) {
                 $userbookGift->setIs_active(false);
                 $userbookGift->setLast_modification_date(new \DateTime());
                 if (UserBookGiftDao::getInstance()->update($userbookGift)) {
                     Flash::addItem(__("L'option d'achat a été annulée correctement.", "s1b"));
                     $this->_redirect($dest);
                     exit;
                 }
             }
         }
     }
     Flash::addItem(__("une erreur s'est produite lors de l'anulation de l'option d'achat.", "s1b"));
     $this->_redirect($dest);
     exit;
 }
 public function setAsOfferedAction()
 {
     $dest = HTTPHelper::getReferer() ? HTTPHelper::getReferer() : HTTPHelper::Link();
     $id = $this->_getParam('ubid', -1);
     // Checking if passed id is > 0
     if ($id > 0) {
         $userBook = UserBookDao::getInstance()->get($id);
         // Checking if id passed matches a user book
         if ($userBook) {
             // Checking if user book not set as offered already
             if (!$userBook->getActiveGiftRelated()) {
                 $userBookGift = new UserBookGift();
                 $userBookGift->setUserbook($userBook);
                 $globalContext = new \Sb\Context\Model\Context();
                 $connectedUser = $globalContext->getConnectedUser();
                 $userBookGift->setOfferer($connectedUser);
                 $userBookGift->setIs_active(true);
                 if (UserBookGiftDao::getInstance()->add($userBookGift)) {
                     Flash::addItem(__("Le livre a correctement été marqué 'déjà acheté'.", "s1b"));
                     $this->_redirect($dest);
                     exit;
                 }
             }
         }
     }
     Flash::addItem(__("une erreur s'est produite et le livre n'a pas pu être marqué 'déjà acheté'.", "s1b"));
     $this->_redirect($dest);
     exit;
 }
예제 #3
0
 public function get()
 {
     $referer = HTTPHelper::getReferer();
     $tpl = new \Sb\Templates\Template("book/buttonsBar");
     $tpl->setVariables(array("buttonText" => $this->buttonText, "addButton" => $this->addButton, "referer" => $referer));
     return $tpl->output();
 }
예제 #4
0
 public function displayAddingChoiceAction()
 {
     try {
         $globalContext = new \Sb\Context\Model\Context();
         if ($globalContext->getIsShowingFriendLibrary()) {
             Flash::addItem(__("Vous ne pouvez pas ajouter un livre à la bibliothèque d'un ami.", "s1b"));
         }
         // Récupération du Book depuis le cache
         $book = ZendFileCache::getInstance()->load(Constants::BOOK_TO_ADD_PREFIX . session_id());
         // If id is known, getting the book from db to have all associated members and userbooks to show the potential reviews
         $booksAlsoLiked = null;
         $booksWithSameTags = null;
         $reviewdUserBooks = null;
         if ($book->getId()) {
             $book = BookDao::getInstance()->get($book->getId());
             $bookPage = BookPageSvc::getInstance()->get($book->getId());
             $booksAlsoLiked = $bookPage->getBooksAlsoLiked();
             $booksWithSameTags = $bookPage->getBooksWithSameTags();
             $reviewdUserBooks = $bookPage->getReviewedUserBooks();
         }
         $bookView = new BookView($book, true, true, true, $booksAlsoLiked, $booksWithSameTags, $reviewdUserBooks);
         $this->view->book = $bookView->get();
         $buttonsBar = new ButtonsBar(false);
         $this->view->buttonsBar = $buttonsBar->get();
         $this->view->referer = HTTPHelper::getReferer();
     } catch (\Exception $e) {
         Trace::addItem(sprintf("Une erreur s'est produite dans \"%s->%s\", TRACE : %s\"", get_class(), __FUNCTION__, $e->getTraceAsString()));
         $this->forward("error", "error", "default");
     }
 }