$params['reset_default_for'] = array('filter' => "0, " . $params['filter']);
}
- //make sure we should has to have space, CRM-6977
+ //make sure we only have a single space, CRM-6977 and dev/mail/15
if ($this->_gName == 'from_email_address') {
- $params['label'] = str_replace('"<', '" <', $params['label']);
+ $params['label'] = $this->sanitizeFromEmailAddress($params['label']);
}
}
$optionValue = CRM_Core_OptionValue::addOptionValue($params, $this->_gName, $this->_action, $this->_id);
- // CRM-11516
- if (!empty($params['financial_account_id'])) {
- $relationTypeId = key(CRM_Core_PseudoConstant::accountOptionValues('account_relationship', NULL, " AND v.name LIKE 'Asset Account is' "));
- $params = array(
- 'entity_table' => 'civicrm_option_value',
- 'entity_id' => $optionValue->id,
- 'account_relationship' => $relationTypeId,
- 'financial_account_id' => $params['financial_account_id'],
- );
- CRM_Financial_BAO_FinancialTypeAccount::add($params);
- }
-
CRM_Core_Session::setStatus(ts('The %1 \'%2\' has been saved.', array(
1 => $this->_gLabel,
2 => $optionValue->label,
}
}
+ public function sanitizeFromEmailAddress($email) {
+ preg_match("/^\"(.*)\" *<([^@>]*@[^@>]*)>$/", $email, $parts);
+ return "\"{$parts[1]}\" <$parts[2]>";
+ }
+
}