public function reportCommentAction() { $request = $this->getRequest(); $comment_id = $request->getRequest('comment_id'); $comment_info = Model_Events::getComment($comment_id); if (!$comment_info) { $this->forward('error', 'error404'); } $this->view->reportcategories = Model_Events::getEventReportCategories(); $this->view->url_form = WM_Router::create($request->getBaseUrl() . '?controller=events&action=reportComment&comment_id=' . $comment_id); $this->view->comment_id = $comment_id; $this->view->event_href = WM_Router::create($request->getBaseUrl() . '?controller=events&event_id=' . $comment_info['event_id']); if ($request->issetPost('report_category')) { $this->view->report_category = $request->getPost('report_category'); } else { if ($this->view->reportcategories) { list($firstKey) = array_keys($this->view->reportcategories); $this->view->report_category = $firstKey; } else { $this->view->report_category = 0; } } $this->view->comment_is = true; $this->view->events_details = $this->view->render('report', 'events'); if ($request->isPost()) { $this->view->is_posted = true; if (Model_Events::commentIsReported($comment_id)) { $this->view->error = $this->translate('¡Ya has denunciado este comentario!'); $this->view->events_details = $this->view->render('report', 'events'); } else { $result = Model_Events::reportComment($comment_id, $request->getPost('report_category'), $request->getPost('report_message')); if (!$result) { $this->view->error = $this->translate('Error reporting experience. Try again!'); $this->view->events_details = $this->view->render('report', 'events'); } else { if (JO_Registry::get('not_rc')) { Model_Email::send(JO_Registry::get('report_mail'), JO_Registry::get('noreply_mail'), $this->translate('New reported comment'), $this->translate('Hello, there is new reported comment in ') . ' ' . JO_Registry::get('site_name')); } $terms = Model_Pages::getPage(JO_Registry::get('page_terms')); if ($terms) { $this->view->terms = $terms['title']; } $this->view->pin_oppener = $request->getRequest('pin_oppener'); $this->view->terms_href = WM_Router::create($request->getBaseUrl() . '?controller=about&action=terms'); $this->view->events_details = $this->view->render('message_report', 'events'); } } } $this->setViewChange('index'); if ($request->isXmlHttpRequest()) { $this->view->popup = true; echo $this->view->events_details; $this->noViewRenderer(true); } else { $this->view->children = array('header_part' => 'layout/header_part', 'footer_part' => 'layout/footer_part', 'left_part' => 'layout/left_part'); } }