* @return array
*/
public static function getDefaultLanguageOptions() {
- return [
+ $availableOptions = [
'*default*' => ts('Use default site language'),
'undefined' => ts('Leave undefined'),
'current_site_language' => ts('Use language in use at the time'),
];
+ $availableLanguages = array_merge($availableOptions, CRM_Admin_Form_Setting_Localization::getDefaultLocaleOptions());
+ return $availableLanguages;
}
}
// CRM-7119: set preferred_language to default if unset
if (empty($defaults['preferred_language'])) {
- $config = CRM_Core_Config::singleton();
- $defaults['preferred_language'] = $config->lcMessages;
+ if ($form->_action == CRM_Core_Action::ADD) {
+ if (($defContactLanguage = CRM_Core_I18n::getContactDefaultLanguage()) != FALSE) {
+ $defaults['preferred_language'] = $defContactLanguage;
+ }
+ }
}
if (empty($defaults['communication_style_id'])) {
// CRM-7119: set preferred_language to default if unset
if (empty($defaults['preferred_language'])) {
- $config = CRM_Core_Config::singleton();
- $defaults['preferred_language'] = $config->lcMessages;
+ if ($form->_action == CRM_Core_Action::ADD) {
+ if (($defContactLanguage = CRM_Core_I18n::getContactDefaultLanguage()) != FALSE) {
+ $defaults['preferred_language'] = $defContactLanguage;
+ }
+ }
}
// CRM-19135: where CRM_Core_BAO_Contact::getValues() set label as a default value instead of reserved 'value',