X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=CRM%2FCase%2FForm%2FCaseView.php;h=e4336207f19fb6cdad00c18e4aba60b758f9125d;hb=941539e78a89e3f62386a0aa68d8677681b81ea1;hp=afee03c000856f49735dfba9e68e0a29c51b4758;hpb=2a06342cebcb3263833256f521538ef4a90f94aa;p=civicrm-core.git diff --git a/CRM/Case/Form/CaseView.php b/CRM/Case/Form/CaseView.php index afee03c000..e4336207f1 100644 --- a/CRM/Case/Form/CaseView.php +++ b/CRM/Case/Form/CaseView.php @@ -1,9 +1,9 @@ add('select', 'add_activity_type_id', '', $activityLinks, FALSE, array('class' => 'crm-select2 crm-action-menu twenty')); + $this->add('select', 'add_activity_type_id', '', $activityLinks, FALSE, array('class' => 'crm-select2 crm-action-menu action-icon-plus twenty')); if ($this->_hasAccessToAllCases) { $this->add('select', 'report_id', '', array('' => ts('Run QA Audit / Redact')) + $reports, FALSE, - array('class' => 'crm-select2 crm-action-menu') + array('class' => 'crm-select2 crm-action-menu action-icon-clipboard') ); $this->add('select', 'timeline_id', '', array('' => ts('Add Timeline')) + $reports, FALSE, - array('class' => 'crm-select2 crm-action-menu') + array('class' => 'crm-select2 crm-action-menu action-icon-play') ); } $this->addElement('submit', $this->getButtonName('next'), ' ', array('class' => 'hiddenElement')); @@ -328,16 +328,8 @@ class CRM_Case_Form_CaseView extends CRM_Core_Form { } } - $activityStatus = CRM_Core_PseudoConstant::activityStatus(); - $this->add('select', 'status_id', ts('Status'), array("" => ts(' - any status - ')) + $activityStatus); - - // activity dates - $this->addDate('activity_date_low', ts('Activity Dates - From'), FALSE, array('formatType' => 'searchDate')); - $this->addDate('activity_date_high', ts('To'), FALSE, array('formatType' => 'searchDate')); - - if (CRM_Core_Permission::check('administer CiviCRM')) { - $this->add('checkbox', 'activity_deleted', ts('Deleted Activities')); - } + //call activity form + self::activityForm($this); //get case related relationships (Case Role) $caseRelationships = CRM_Case_BAO_Case::getCaseRoles($this->_contactID, $this->_caseID); @@ -345,11 +337,7 @@ class CRM_Case_Form_CaseView extends CRM_Core_Form { //save special label because we unset it in the loop $managerLabel = empty($managerRoleId) ? '' : $caseRoles[$managerRoleId]; - //build reporter select - $reporters = array("" => ts(' - any reporter - ')); foreach ($caseRelationships as $key => & $value) { - $reporters[$value['cid']] = $value['name'] . " ( {$value['relation']} )"; - if (!empty($managerRoleId)) { if ($managerRoleId == $value['relation_type']) { $value['relation'] = $managerLabel; @@ -362,18 +350,6 @@ class CRM_Case_Form_CaseView extends CRM_Core_Form { } } - // take all case activity types for search filter, CRM-7187 - $aTypesFilter = array(); - $allCaseActTypes = CRM_Case_PseudoConstant::caseActivityType(); - foreach ($allCaseActTypes as $typeDetails) { - if (!in_array($typeDetails['name'], array( - 'Open Case'))) { - $aTypesFilter[$typeDetails['id']] = CRM_Utils_Array::value('label', $typeDetails); - } - } - asort($aTypesFilter); - $this->add('select', 'activity_type_filter_id', ts('Activity Type'), array('' => ts('- select activity type -')) + $aTypesFilter); - $this->assign('caseRelationships', $caseRelationships); //also add client as role. CRM-4438 @@ -381,8 +357,6 @@ class CRM_Case_Form_CaseView extends CRM_Core_Form { $this->assign('caseRoles', $caseRoles); - $this->add('select', 'reporter_id', ts('Reporter/Role'), $reporters); - // Retrieve ALL client relationships $relClient = CRM_Contact_BAO_Relationship::getRelationship($this->_contactID, CRM_Contact_BAO_Relationship::CURRENT, @@ -401,8 +375,7 @@ class CRM_Case_Form_CaseView extends CRM_Core_Form { // Now global contact list that appears on all cases. $globalGroupInfo = array(); - $relGlobal = CRM_Case_BAO_Case::getGlobalContacts($globalGroupInfo); - $this->assign('globalRelationships', $relGlobal); + CRM_Case_BAO_Case::getGlobalContacts($globalGroupInfo); $this->assign('globalGroupInfo', $globalGroupInfo); // List of relationship types @@ -412,7 +385,7 @@ class CRM_Case_Form_CaseView extends CRM_Core_Form { foreach ($relType as $k => $v) { $roleTypes[substr($k, 0, strpos($k, '_'))] = $v; } - $this->add('select', 'role_type', ts('Relationship Type'), array('' => ts('- select type -')) + $roleTypes); + $this->add('select', 'role_type', ts('Relationship Type'), array('' => ts('- select type -')) + $roleTypes, FALSE, array('class' => 'crm-select2 twenty')); $hookCaseSummary = CRM_Utils_Hook::caseSummary($this->_caseID); if (is_array($hookCaseSummary)) { @@ -525,5 +498,41 @@ class CRM_Case_Form_CaseView extends CRM_Core_Form { $session->pushUserContext($url); } } + + /** + * Build the activity selector/datatable + * @param CRM_Core_Form $form + */ + static function activityForm($form) { + $caseRelationships = CRM_Case_BAO_Case::getCaseRoles($form->_contactID, $form->_caseID); + //build reporter select + $reporters = array("" => ts(' - any reporter - ')); + foreach ($caseRelationships as $key => & $value) { + $reporters[$value['cid']] = $value['name'] . " ( {$value['relation']} )"; + } + $form->add('select', 'reporter_id', ts('Reporter/Role'), $reporters); + + // take all case activity types for search filter, CRM-7187 + $aTypesFilter = array(); + $allCaseActTypes = CRM_Case_PseudoConstant::caseActivityType(); + foreach ($allCaseActTypes as $typeDetails) { + if (!in_array($typeDetails['name'], array('Open Case'))) { + $aTypesFilter[$typeDetails['id']] = CRM_Utils_Array::value('label', $typeDetails); + } + } + asort($aTypesFilter); + $form->add('select', 'activity_type_filter_id', ts('Activity Type'), array('' => ts('- select activity type -')) + $aTypesFilter); + + $activityStatus = CRM_Core_PseudoConstant::activityStatus(); + $form->add('select', 'status_id', ts('Status'), array("" => ts(' - any status - ')) + $activityStatus); + + // activity dates + $form->addDate('activity_date_low', ts('Activity Dates - From'), FALSE, array('formatType' => 'searchDate')); + $form->addDate('activity_date_high', ts('To'), FALSE, array('formatType' => 'searchDate')); + + if (CRM_Core_Permission::check('administer CiviCRM')) { + $form->add('checkbox', 'activity_deleted', ts('Deleted Activities')); + } + } }