assign('notConfigured', !$configured['configured']); $this->assign('allowToAddNewCase', $configured['allowToAddNewCase']); if (!$configured['configured']) { return; } $session = CRM_Core_Session::singleton(); $allCases = CRM_Utils_Request::retrieve('all', 'Positive', $this); CRM_Utils_System::setTitle(ts('CiviCase Dashboard')); $userID = $session->get('userID'); //validate access for all cases. if ($allCases && !CRM_Core_Permission::check('access all cases and activities')) { $allCases = 0; CRM_Core_Session::setStatus(ts('You are not authorized to access all cases and activities.'), ts('Sorry'), 'error'); } $this->assign('all', $allCases); if (!$allCases) { $this->assign('myCases', TRUE); } else { $this->assign('myCases', FALSE); } $this->assign('newClient', FALSE); if (CRM_Core_Permission::check('add contacts') && CRM_Core_Permission::check('access all cases and activities') ) { $this->assign('newClient', TRUE); } $summary = CRM_Case_BAO_Case::getCasesSummary($allCases); $upcoming = CRM_Case_BAO_Case::getCases($allCases, array(), 'dashboard', TRUE); $recent = CRM_Case_BAO_Case::getCases($allCases, array('type' => 'recent'), 'dashboard', TRUE); $this->assign('casesSummary', $summary); if (!empty($upcoming)) { $this->assign('upcomingCases', TRUE); } if (!empty($recent)) { $this->assign('recentCases', TRUE); } $controller = new CRM_Core_Controller_Simple('CRM_Case_Form_Search', ts('Case'), CRM_Core_Action::BROWSE, NULL, FALSE, FALSE, TRUE ); $controller->set('context', 'dashboard'); $controller->setEmbedded(TRUE); $controller->process(); $controller->run(); } /** * the main function that is called when the page loads, * it decides the which action has to be taken for the page. * * @return null */ public function run() { $this->preProcess(); return parent::run(); } }