public function handlePresentationsWithComments(SS_HTTPRequest $r) { // Gets a list of presentations that have chair comments $data = array(); $summitID = Summit::get_active()->ID; // Get a collection of chair-visible presentations with comments $comments = SummitPresentationComment::get()->leftJoin("Presentation", "SummitPresentationComment.PresentationID = Presentation.ID")->leftJoin("PresentationCategory", "PresentationCategory.ID = Presentation.CategoryID")->leftJoin("SummitEvent", "SummitEvent.ID = Presentation.ID")->where("\n\t\t\t\tSummitEvent.SummitID = {$summitID}\n\t\t\t\tAND PresentationCategory.ChairVisible = 1\n\t\t\t\tAND Presentation.Status = 'Received'\n\t\t\t\t")->sort('Created', 'DESC'); foreach ($comments as $c) { $system = strpos($c->Body, "suggested that this presentation be moved") || strpos($c->Body, "presentaiton was moved into the category"); $data['results'][] = array('id' => $c->ID, 'body' => $c->Body, 'presentaiton_title' => $c->Presentation()->Title, 'presentaiton_id' => $c->Presentation()->ID, 'commenter' => $c->Commenter()->FirstName . ' ' . $c->Commenter()->Surname, 'system_comment' => $system); } return (new SS_HTTPResponse(Convert::array2json($data), 200))->addHeader('Content-Type', 'application/json'); }