public function build() { foreach ($this->eventRepositoryBuilder->fetchAll() as $event) { $eventMedias = null; if ($this->includeEventMedias) { $mrb = new MediaRepositoryBuilder(); $mrb->setEvent($event); $mrb->setIncludeDeleted(false); $eventMedias = $mrb->fetchAll(); } $this->addEvent($event, null, $event->getVenue(), $event->getArea(), $event->getCountry(), $eventMedias); } }
function jsonp($slug, Request $request, Application $app) { if (!$this->build($slug, $request, $app)) { $app->abort(404, "Event does not exist."); } $eventMedias = array(); $ourRequest = new \Request($request); if ($ourRequest->getGetOrPostBoolean("includeMedias", false)) { $mrb = new MediaRepositoryBuilder(); $mrb->setEvent($this->parameters['event']); $mrb->setIncludeDeleted(false); $eventMedias = $mrb->fetchAll(); } $jsonp = new EventListJSONPBuilder($app['currentSite'], $app['currentTimeZone']); $jsonp->addEvent($this->parameters['event'], $this->parameters['groups'], $this->parameters['venue'], $this->parameters['area'], $this->parameters['country'], $eventMedias); if (isset($_GET['callback'])) { $jsonp->setCallBackFunction($_GET['callback']); } return $jsonp->getResponse(); }
function editMedia($slug, Request $request, Application $app) { if (!$this->build($slug, $request, $app)) { $app->abort(404, "Event does not exist."); } if ($app['currentUserPermissions']->hasPermission("org.openacalendar", "CALENDAR_CHANGE")) { $form = $app['form.factory']->create(new UploadNewMediaForm($this->parameters['event']->getSummaryDisplay())); if ('POST' == $request->getMethod()) { $form->bind($request); if ($form->isValid() && $form['media']->getData()) { $mediaRepository = new MediaRepository(); $media = $mediaRepository->createFromFile($form['media']->getData(), $app['currentSite'], $app['currentUser'], $form['title']->getData(), $form['source_text']->getData(), $form['source_url']->getData()); if ($media) { $mediaInEventRepo = new MediaInEventRepository(); $mediaInEventRepo->add($media, $this->parameters['event'], $app['currentUser']); $app['flashmessages']->addMessage('Picture added!'); return $app->redirect("/event/" . $this->parameters['event']->getSlugForURL()); } } } $this->parameters['uploadNewMediaForm'] = $form->createView(); } $mrb = new MediaRepositoryBuilder(); $mrb->setIncludeDeleted(false); $mrb->setSite($app['currentSite']); $mrb->setEvent($this->parameters['event']); $this->parameters['medias'] = $mrb->fetchAll(); return $app['twig']->render('site/event/edit.media.html.twig', $this->parameters); }