use Wallabag\CoreBundle\Form\Type\EditEntryType;
use Wallabag\CoreBundle\Form\Type\NewEntryType;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Cache;
+use Wallabag\CoreBundle\Event\EntrySavedEvent;
+use Wallabag\CoreBundle\Event\EntryDeletedEvent;
class EntryController extends Controller
{
$em->persist($entry);
$em->flush();
+ // entry saved, dispatch event about it!
+ $this->get('event_dispatcher')->dispatch(EntrySavedEvent::NAME, new EntrySavedEvent($entry));
+
return $this->redirect($this->generateUrl('homepage'));
}
$em = $this->getDoctrine()->getManager();
$em->persist($entry);
$em->flush();
+
+ // entry saved, dispatch event about it!
+ $this->get('event_dispatcher')->dispatch(EntrySavedEvent::NAME, new EntrySavedEvent($entry));
}
return $this->redirect($this->generateUrl('homepage'));
$this->updateEntry($entry, 'entry_reloaded');
+ // if refreshing entry failed, don't save it
+ if ($this->getParameter('wallabag_core.fetching_error_message') === $entry->getContent()) {
+ $bag = $this->get('session')->getFlashBag();
+ $bag->clear();
+ $bag->add('notice', 'flashes.entry.notice.entry_reloaded_failed');
+
+ return $this->redirect($this->generateUrl('view', ['id' => $entry->getId()]));
+ }
+
$em = $this->getDoctrine()->getManager();
$em->persist($entry);
$em->flush();
+ // entry saved, dispatch event about it!
+ $this->get('event_dispatcher')->dispatch(EntrySavedEvent::NAME, new EntrySavedEvent($entry));
+
return $this->redirect($this->generateUrl('view', ['id' => $entry->getId()]));
}
UrlGeneratorInterface::ABSOLUTE_PATH
);
+ // entry deleted, dispatch event about it!
+ $this->get('event_dispatcher')->dispatch(EntryDeletedEvent::NAME, new EntryDeletedEvent($entry));
+
$em = $this->getDoctrine()->getManager();
$em->remove($entry);
$em->flush();