<?php
/*
+--------------------------------------------------------------------+
- | CiviCRM version 4.7 |
+ | CiviCRM version 5 |
+--------------------------------------------------------------------+
- | Copyright CiviCRM LLC (c) 2004-2017 |
+ | Copyright CiviCRM LLC (c) 2004-2018 |
+--------------------------------------------------------------------+
| This file is a part of CiviCRM. |
| |
/**
*
* @package CRM
- * @copyright CiviCRM LLC (c) 2004-2017
+ * @copyright CiviCRM LLC (c) 2004-2018
*/
class CRM_Core_OptionValue {
*/
public static function getRows($groupParams, $links, $orderBy = 'weight', $skipEmptyComponents = TRUE) {
$optionValue = array();
-
$optionGroupID = NULL;
+ $isGroupLocked = FALSE;
+
if (!isset($groupParams['id']) || !$groupParams['id']) {
if ($groupParams['name']) {
- $config = CRM_Core_Config::singleton();
-
$optionGroup = CRM_Core_BAO_OptionGroup::retrieve($groupParams, $dnc);
$optionGroupID = $optionGroup->id;
+ $isGroupLocked = (bool) $optionGroup->is_locked;
}
}
else {
}
}
+ // disallow deletion of option values for locked groups
+ if (($action & CRM_Core_Action::DELETE) && $isGroupLocked) {
+ $action -= CRM_Core_Action::DELETE;
+ }
+
$optionValue[$dao->id]['label'] = htmlspecialchars($optionValue[$dao->id]['label']);
$optionValue[$dao->id]['order'] = $optionValue[$dao->id]['weight'];
$optionValue[$dao->id]['icon'] = CRM_Utils_Array::value('icon', $optionValue[$dao->id], '');