public function findAction() { if ($value_id = $this->getRequest()->getParam('value_id')) { $event_id = $this->getRequest()->getParam('event_id'); if (is_null($event_id)) { return $this; } try { $option = $this->getCurrentOptionValue(); $start_at = new Zend_Date(); $end_at = new Zend_Date(); $format = 'y-MM-dd HH:mm:ss'; $events = $option->getObject()->getEvents(null, true); if (!empty($events[$event_id])) { $event = $events[$event_id]; $data = array('event' => array()); $start_at->set($event->getStartAt(), $format); $end_at->set($event->getEndAt(), $format); $formatted_start_at = $start_at->toString($this->_("MM.dd.y")); $formatted_end_at = $end_at->toString($this->_("MM.dd.y 'at' HH:mm a")); $in_app_page_path = null; if (is_numeric($event->getInAppValueId())) { $option = new Application_Model_Option_Value(); $option->find($event->getInAppValueId()); if ($option->getId() and $option->isActive() and $option->getAppId() == $this->getApplication()->getId()) { $in_app_page_path = $option->getPath("index"); } } $data['event'] = array("id" => $event_id, "title" => $event->getName(), "description" => $event->getDescription(), "address" => $event->getAddress(), "weekday_name" => $start_at->toString(Zend_Date::WEEKDAY_NAME), "start_at" => $formatted_start_at, "end_at" => $formatted_end_at, "ticket_shop_url" => $event->getTicketShopUrl(), "rsvp" => $event->getRsvp(), "websites" => $event->getWebsites(), "in_app_page_path" => $in_app_page_path, "social_sharing_active" => $option->getSocialSharingIsActive()); $data["cover"] = array("title" => $event->getName(), "subtitle" => $event->getSubtitle(), "title2" => "{$start_at->toString(Zend_Date::WEEKDAY_NAME)} {$formatted_start_at}", "subtitle2" => array("time" => $event->getStartTimeAt(), "location" => array("label" => $event->getLocationLabel(), "url" => $event->getLocationUrl())), "title3" => "{$end_at->toString(Zend_Date::WEEKDAY_NAME)} {$formatted_end_at}", "picture" => $event->getPicture()); $data['page_title'] = $event->getName(); } else { throw new Exception("Unable to find this event."); } } catch (Exception $e) { $data = array('error' => 1, 'message' => $e->getMessage()); } $this->_sendHtml($data); } }