Skip to content

Commit

Permalink
Case Activity: use select2 for Medium field
Browse files Browse the repository at this point in the history
  • Loading branch information
mlutfy committed Oct 22, 2023
1 parent 672ea15 commit afb2a79
Showing 1 changed file with 7 additions and 15 deletions.
22 changes: 7 additions & 15 deletions CRM/Case/Form/Activity.php
Original file line number Diff line number Diff line change
Expand Up @@ -203,10 +203,11 @@ public function setDefaultValues() {
}
$this->assign('targetContactValues', empty($targetContactValues) ? FALSE : $targetContactValues);

if (isset($this->_encounterMedium)) {
$this->_defaults['medium_id'] = $this->_encounterMedium;
if ($this->_activityId) {
$this->_defaults['medium_id'] = CRM_Core_DAO::getFieldValue('CRM_Activity_DAO_Activity', $this->_activityId, 'medium_id');
}
elseif (empty($this->_defaults['medium_id'])) {

if (empty($this->_defaults['medium_id'])) {
// set default encounter medium CRM-4816
$medium = CRM_Core_OptionGroup::values('encounter_medium', FALSE, FALSE, FALSE, 'AND is_default = 1');
if (count($medium) == 1) {
Expand Down Expand Up @@ -266,22 +267,13 @@ public function buildQuickForm() {

$this->assign('urlPath', 'civicrm/case/activity');

$encounterMediums = CRM_Case_PseudoConstant::encounterMedium();

if ($this->_activityTypeFile == 'OpenCase' && $this->_action == CRM_Core_Action::UPDATE) {
$this->getElement('activity_date_time')->freeze();

if ($this->_activityId) {
// Fixme: what's the justification for this? It seems like it is just re-adding an option in case it is the default and disabled.
// Is that really a big problem?
$this->_encounterMedium = CRM_Core_DAO::getFieldValue('CRM_Activity_DAO_Activity', $this->_activityId, 'medium_id');
if (!array_key_exists($this->_encounterMedium, $encounterMediums)) {
$encounterMediums[$this->_encounterMedium] = CRM_Core_PseudoConstant::getLabel('CRM_Activity_BAO_Activity', 'medium_id', $this->_encounterMedium);
}
}
}

$this->add('select', 'medium_id', ts('Medium'), $encounterMediums, TRUE);
$this->addSelect('medium_id');

// Related contacts
$i = 0;
foreach ($this->_caseId as $key => $val) {
$this->_relatedContacts[] = $rgc = CRM_Case_BAO_Case::getRelatedAndGlobalContacts($val);
Expand Down

0 comments on commit afb2a79

Please sign in to comment.