From 81d6af69f26fa919b083c1302c0bffd6774c9ac9 Mon Sep 17 00:00:00 2001 From: Julio Montoya Date: Mon, 7 Mar 2011 17:54:32 +0100 Subject: [PATCH] Adding get_langs for the notify user extra fields --- main/admin/user_add.php | 16 +++++++++++++--- main/admin/user_edit.php | 21 ++++++++++++++++----- main/auth/inscription.php | 11 ++++++++++- 3 files changed, 39 insertions(+), 9 deletions(-) diff --git a/main/admin/user_add.php b/main/admin/user_add.php index 8cd04ff189..c6e18e08b6 100755 --- a/main/admin/user_add.php +++ b/main/admin/user_add.php @@ -1,9 +1,7 @@ addElement('radio', 'active', get_lang('ActiveAccount'), get_lang('Active $form->addElement('radio', 'active', '', get_lang('Inactive'), 0); // EXTRA FIELDS +//@todo MOVE this code in a useful class, this code is repete MANY times in Chamilo: user_edit.php, main/auth/inscription.php, etc, etc $extra = UserManager::get_extra_fields(0, 50, 5, 'ASC'); $extra_data = UserManager::get_extra_user_data(0, true); @@ -221,11 +220,21 @@ foreach($extra as $id => $field_details) { $form->addGroup($group, 'extra_'.$field_details[1], $field_details[3], ''); break; case USER_FIELD_TYPE_SELECT: + $get_lang_variables = false; + if (in_array($field_details[1], array('mail_notify_message','mail_notify_invitation', 'mail_notify_group_message'))) { + $get_lang_variables = true; + } $options = array(); foreach($field_details[9] as $option_id => $option_details) { + if ($get_lang_variables) { + $option_details[2] = get_lang($option_details[2]); + } $options[$option_details[1]] = $option_details[2]; } - $form->addElement('select','extra_'.$field_details[1],$field_details[3],$options,''); + if ($get_lang_variables) { + $field_details[3] = get_lang($field_details[3]); + } + $form->addElement('select','extra_'.$field_details[1],$field_details[3], $options,''); break; case USER_FIELD_TYPE_SELECT_MULTIPLE: $options = array(); @@ -270,6 +279,7 @@ foreach($extra as $id => $field_details) { $extra_data['extra_'.$field_details[1]] = array(); // looping through the selected values and assigning the selected values to either the first or second select form + foreach ($selected_values as $key => $selected_value) { if (key_exists($selected_value, $values[0])) { $extra_data['extra_'.$field_details[1]]['extra_'.$field_details[1]] = $selected_value; diff --git a/main/admin/user_edit.php b/main/admin/user_edit.php index 1ed1d3b708..97b66d9c03 100755 --- a/main/admin/user_edit.php +++ b/main/admin/user_edit.php @@ -239,6 +239,7 @@ if (!$user_data['platform_admin']) { // EXTRA FIELDS + $extra = UserManager::get_extra_fields(0, 50, 5, 'ASC'); foreach ($extra as $id => $field_details) { if ($field_details[6] == 0) { @@ -265,11 +266,21 @@ foreach ($extra as $id => $field_details) { $form->addGroup($group, 'extra_'.$field_details[1], $field_details[3], ''); break; case USER_FIELD_TYPE_SELECT: - $options = array(); - foreach ($field_details[9] as $option_id => $option_details) { - $options[$option_details[1]] = $option_details[2]; - } - $form->addElement('select', 'extra_'.$field_details[1], $field_details[3], $options, ''); + $get_lang_variables = false; + if (in_array($field_details[1], array('mail_notify_message','mail_notify_invitation', 'mail_notify_group_message'))) { + $get_lang_variables = true; + } + $options = array(); + foreach($field_details[9] as $option_id => $option_details) { + if ($get_lang_variables) { + $option_details[2] = get_lang($option_details[2]); + } + $options[$option_details[1]] = $option_details[2]; + } + if ($get_lang_variables) { + $field_details[3] = get_lang($field_details[3]); + } + $form->addElement('select', 'extra_'.$field_details[1], $field_details[3], $options, ''); break; case USER_FIELD_TYPE_SELECT_MULTIPLE: $options = array(); diff --git a/main/auth/inscription.php b/main/auth/inscription.php index ef99d189e6..a1f194d492 100755 --- a/main/auth/inscription.php +++ b/main/auth/inscription.php @@ -234,12 +234,21 @@ if ($display_all_form) { if ($field_details[7] == 0) $form->freeze('extra_'.$field_details[1]); break; case USER_FIELD_TYPE_SELECT: + $get_lang_variables = false; + if (in_array($field_details[1], array('mail_notify_message','mail_notify_invitation', 'mail_notify_group_message'))) { + $get_lang_variables = true; + } $options = array(); foreach($field_details[9] as $option_id => $option_details) { + if ($get_lang_variables) { + $option_details[2] = get_lang($option_details[2]); + } $options[$option_details[1]] = $option_details[2]; } + if ($get_lang_variables) { + $field_details[3] = get_lang($field_details[3]); + } $form->addElement('select', 'extra_'.$field_details[1], $field_details[3], $options, ''); - if ($field_details[7] == 0) $form->freeze('extra_'.$field_details[1]); break; case USER_FIELD_TYPE_SELECT_MULTIPLE: $options = array();