/** * Show trashed messages * * @param object $database JDatabase * @param string $option Name of the component * @param object $member Current member * @return string */ public function trash($database, $option, $member) { $view = $this->view('trash', 'default'); $view->option = $option; $view->member = $member; // Filters for returning results $filters = array(); $filters['limit'] = Request::getState($option . '.plugin.messages.limit', 'limit', Config::get('list_limit'), 'int'); $filters['start'] = Request::getState($option . '.plugin.messages.limitstart', 'limitstart', 0, 'int'); $filters['state'] = 2; $view->filter = Request::getVar('filter', ''); $filters['filter'] = $view->filter ? 'com_' . $view->filter : ''; $recipient = new \Hubzero\Message\Recipient($database); $view->total = $recipient->getMessagesCount($member->get('uidNumber'), $filters); $view->rows = $recipient->getMessages($member->get('uidNumber'), $filters); $pageNav = new \Hubzero\Pagination\Paginator($view->total, $filters['start'], $filters['limit']); $xmc = new \Hubzero\Message\Component($database); $view->components = $xmc->getComponents(); $pageNav->setAdditionalUrlParam('id', $member->get('uidNumber')); $pageNav->setAdditionalUrlParam('active', 'messages'); $pageNav->setAdditionalUrlParam('task', 'trash'); $pageNav->setAdditionalUrlParam('action', ''); $view->pagenavhtml = $pageNav->render(); foreach ($this->getErrors() as $error) { $view->setError($error); } return $view->loadTemplate(); }