/**
  * Creates a new instance of bookmark manager for given configuration builder
  *
  * @param Tx_PtExtlist_Domain_Configuration_ConfigurationBuilder $configurationBuilder
  * @return Tx_PtExtlist_Domain_Model_Bookmark_BookmarkManager
  */
 protected function createNewInstanceByConfigurationBuilder(Tx_PtExtlist_Domain_Configuration_ConfigurationBuilder $configurationBuilder)
 {
     $bookmarksConfiguration = $configurationBuilder->buildBookmarkConfiguration();
     $this->bookmarkRepository->setBookmarkStoragePid($bookmarksConfiguration->getBookmarkPid());
     $bookmarkManager = $this->objectManager->get('Tx_PtExtlist_Domain_Model_Bookmark_BookmarkManager', $configurationBuilder->getListIdentifier());
     /* @var $bookmarkManager Tx_PtExtlist_Domain_Model_Bookmark_BookmarkManager */
     $bookmarkManager->_injectConfigurationBuilder($configurationBuilder);
     $bookmarkManager->_injectSessionPersistenceManager($this->sessionPersistenceManagerBuilder->getInstance());
     $bookmarkManager->buildBookmarkConfig();
     $bookmarkManager->initFeUser();
     return $bookmarkManager;
 }
 /**
  * Action for deleting a bookmark
  *
  * @param Tx_PtExtlist_Domain_Model_Bookmark_Bookmark $bookmark Bookmark to be deleted
  */
 public function deleteAction(Tx_PtExtlist_Domain_Model_Bookmark_Bookmark $bookmark)
 {
     if ($bookmark->getFeUser()->getUid() == $this->feUser->getUid() || $this->bookmarkConfiguration->getUserCanDeleteAll()) {
         $this->bookmarkRepository->remove($bookmark);
         $this->persistenceManager->persistAll();
     } else {
         $this->flashMessageContainer->add('You are not allowed to delete this bookmark.');
     }
     $this->forward('show');
 }
 public function removeBookmark(Tx_PtExtlist_Domain_Model_Bookmark_Bookmark $bookmark)
 {
     $this->bookmarkRepository->remove($bookmark);
 }