if ($action & (CRM_Core_Action::UPDATE + CRM_Core_Action::ADD)) {
return 'create';
}
- if ($action & (CRM_Core_Action::BROWSE + CRM_Core_Action::BASIC + CRM_Core_Action::ADVANCED + CRM_Core_Action::PREVIEW)) {
+ if ($action & (CRM_Core_Action::VIEW + CRM_Core_Action::BROWSE + CRM_Core_Action::BASIC + CRM_Core_Action::ADVANCED + CRM_Core_Action::PREVIEW)) {
return 'get';
}
// If you get this exception try adding more cases above.
* @param bool $required
* @param string $defaultCurrency
* @param bool $freezeCurrency
+ * @param bool $setDefaultCurrency
*/
public function addCurrency(
$name = 'currency',
$label = NULL,
$required = TRUE,
$defaultCurrency = NULL,
- $freezeCurrency = FALSE
+ $freezeCurrency = FALSE,
+ $setDefaultCurrency = TRUE
) {
$currencies = CRM_Core_OptionGroup::values('currencies_enabled');
$options = array('class' => 'crm-select2 eight');
$config = CRM_Core_Config::singleton();
$defaultCurrency = $config->defaultCurrency;
}
- $this->setDefaults(array($name => $defaultCurrency));
+ // In some case, setting currency field by default might override the default value
+ // as encountered in CRM-20527 for batch data entry
+ if ($setDefaultCurrency) {
+ $this->setDefaults(array($name => $defaultCurrency));
+ }
}
/**