Пример #1
0
 public function getAction($request, $db)
 {
     $event_id = $this->getItemId($request);
     // verbosity
     $verbose = $this->getVerbosity($request);
     // pagination settings
     $start = $this->getStart($request);
     $resultsperpage = $this->getResultsPerPage($request);
     if (isset($request->url_elements[4])) {
         switch ($request->url_elements[4]) {
             case 'talks':
                 $list = TalkModel::getTalksByEventId($db, $event_id, $resultsperpage, $start, $verbose);
                 $list = TalkModel::addHypermedia($list, $request);
                 break;
             case 'comments':
                 $list = EventCommentModel::getEventCommentsByEventId($db, $event_id, $resultsperpage, $start, $verbose);
                 break;
             default:
                 throw new InvalidArgumentException('Unknown Subrequest', 404);
                 break;
         }
     } else {
         if ($event_id) {
             $list = EventModel::getEventById($db, $event_id, $verbose);
         } else {
             $list = EventModel::getEventList($db, $resultsperpage, $start, $verbose);
         }
         // add links
         $list = EventModel::addHypermedia($list, $request);
     }
     return $list;
 }
 public function sendEmail()
 {
     $this->setSubject("New feedback on " . $this->talk->talk_title);
     $byLine = '';
     if (isset($this->comment['user_display_name'])) {
         $byLine = ' by ' . $this->comment['user_display_name'];
     }
     if (empty($byLine) && isset($this->comment['username'])) {
         $byLine = ' by' . $this->comment['username'];
     }
     $replacements = array("title" => $this->talk->talk_title, "rating" => $this->comment['rating'], "comment" => $this->comment['comment'], "url" => $this->talk->getWebsiteUrl($this->config['website_url']), "byline" => $byLine);
     $messageBody = $this->parseEmail("commentTalk.md", $replacements);
     $messageHTML = $this->markdownToHtml($messageBody);
     $this->setBody($this->htmlToPlainText($messageHTML));
     $this->setHtmlBody($messageHTML);
     $this->dispatchEmail();
 }
Пример #3
0
 public function getAction($request, $db)
 {
     $event_id = $this->getItemId($request);
     // verbosity
     $verbose = $this->getVerbosity($request);
     // pagination settings
     $start = $this->getStart($request);
     $resultsperpage = $this->getResultsPerPage($request);
     if (isset($request->url_elements[4])) {
         switch ($request->url_elements[4]) {
             case 'talks':
                 $list = TalkModel::getTalksByEventId($db, $event_id, $resultsperpage, $start, $verbose);
                 $list = TalkModel::addHypermedia($list, $request);
                 break;
             case 'comments':
                 $list = EventCommentModel::getEventCommentsByEventId($db, $event_id, $resultsperpage, $start, $verbose);
                 break;
             default:
                 throw new InvalidArgumentException('Unknown Subrequest', 404);
                 break;
         }
     } else {
         if ($event_id) {
             $list = EventModel::getEventById($db, $event_id, $verbose);
         } else {
             // check if we're filtering
             if (isset($request->parameters['filter'])) {
                 switch ($request->parameters['filter']) {
                     case "hot":
                         $list = EventModel::getHotEventList($db, $resultsperpage, $start, $verbose);
                         break;
                     case "upcoming":
                         $list = EventModel::getUpcomingEventList($db, $resultsperpage, $start, $verbose);
                         break;
                     case "past":
                         $list = EventModel::getPastEventList($db, $resultsperpage, $start, $verbose);
                         break;
                     case "cfp":
                         $list = EventModel::getOpenCfPEventList($db, $resultsperpage, $start, $verbose);
                         break;
                     default:
                         throw new InvalidArgumentException('Unknown event filter', 404);
                         break;
                 }
             } else {
                 $list = EventModel::getEventList($db, $resultsperpage, $start, $verbose);
             }
         }
         // add links
         $list = EventModel::addHypermedia($list, $request);
     }
     return $list;
 }
Пример #4
0
 public function getAction($request, $db)
 {
     $talk_id = $this->getItemId($request);
     // verbosity
     $verbose = $this->getVerbosity($request);
     /*
     // pagination settings
     $start = $this->getStart($request);
     $resultsperpage = $this->getResultsPerPage($request);
     */
     if (isset($request->url_elements[4])) {
         // sub elements
     } else {
         if ($talk_id) {
             $list = TalkModel::getTalkById($db, $talk_id, $verbose);
         } else {
             // listing makes no sense
             return false;
         }
         // add links
         $list = TalkModel::addHypermedia($list, $request);
     }
     return $list;
 }