/** * Display a list of cron jobs that have ran. * @return int */ public function log() { // As of 3.0.0, this has been merged into Core. \Core\redirect('admin/log?filter[type]=security'); $view = $this->getView(); $request = $this->getPageRequest(); if (!\Core\user()->checkAccess('p:/security/viewlog')) { return View::ERROR_ACCESSDENIED; } $filters = new FilterForm(); $filters->setName('security-log'); $filters->hassort = true; $filters->haspagination = true; /*$filters->addElement( 'select', array( 'title' => 'Cron', 'name' => 'cron', 'options' => array( '' => '-- All --', 'hourly' => 'hourly', 'daily' => 'daily', 'weekly' => 'weekly', 'monthly' => 'monthly' ), 'link' => FilterForm::LINK_TYPE_STANDARD, ) ); $filters->addElement( 'select', array( 'title' => 'Status', 'name' => 'status', 'options' => array( '' => '-- All --', 'pass' => 'pass', 'fail' => 'fail' ), 'link' => FilterForm::LINK_TYPE_STANDARD, ) );*/ $filters->addElement('hidden', array('title' => 'Session', 'name' => 'session_id', 'link' => FilterForm::LINK_TYPE_STANDARD)); $filters->addElement('hidden', array('title' => 'Affected User', 'name' => 'affected_user_id', 'link' => FilterForm::LINK_TYPE_STANDARD)); $filters->setSortkeys(array('datetime', 'session_id', 'user_id', 'useragent', 'action', 'affected_user_id', 'status')); $filters->load($request); $factory = new ModelFactory('SecurityLogModel'); $filters->applyToFactory($factory); $listings = $factory->get(); foreach ($listings as $k => $entry) { /** @var $entry SecurityLogModel */ // Look up the user agent //$ua = new \Core\UserAgent($entry->get('useragent')); //var_dump($ua); die(); if ($entry->get('user_id')) { $userobject = UserModel::Construct($entry->get('user_id')); $entry->set('user', $userobject->getDisplayName()); } if ($entry->get('affected_user_id')) { $userobject = UserModel::Construct($entry->get('affected_user_id')); if ($userobject) { $entry->set('affected_user', $userobject->getDisplayName()); } else { $entry->set('affected_user', '[DELETED USER]'); } } } $view->title = 'Security Log'; $view->assign('filters', $filters); $view->assign('listings', $listings); $view->assign('sortkey', $filters->getSortKey()); $view->assign('sortdir', $filters->getSortDirection()); //var_dump($listings); die(); }
/** * Admin listing of all the users * * @return null|int */ public function admin(){ $view = $this->getView(); $request = $this->getPageRequest(); if(!\Core\user()->checkAccess('p:/user/users/manage')){ return View::ERROR_ACCESSDENIED; } $filters = new FilterForm(); $filters->setName('user-admin'); $filters->haspagination = true; $filters->hassort = true; $filters->setSortkeys(array('email', 'active', 'created','last_login')); $filters->addElement( 'text', array( 'title' => 'Email', 'name' => 'email', 'link' => FilterForm::LINK_TYPE_CONTAINS ) ); $filters->addElement( 'select', array( 'title' => 'Active', 'name' => 'active', 'options' => array('' => '-- All --', '0' => 'Inactive', '1' => 'Active'), 'link' => FilterForm::LINK_TYPE_STANDARD, ) ); $filters->addElement( 'select', array( 'title' => 'Ever logged in?', 'name' => 'last_login', 'options' => array('' => 'Both', '1' => 'No', '2' => 'Yes'), ) ); $filters->load($request); $factory = new ModelFactory('UserModel'); if($filters->get('last_login') == 1) { $factory->where('last_login = 0'); } elseif($filters->get('last_login') == 2) { $factory->where('last_login > 0'); } $filters->applyToFactory($factory); $users = $factory->get(); $view->title = 'User Administration'; $view->assign('enableavatar', (\ConfigHandler::Get('/user/enableavatar'))); $view->assign('users', $users); $view->assign('filters', $filters); $view->addControl('Add User', '/user/register', 'add'); $view->addControl('Import Users', '/user/import', 'upload-alt'); return null; }