diff --git a/main/admin/user_edit.php b/main/admin/user_edit.php index 5bc20462b8..f393de0b73 100644 --- a/main/admin/user_edit.php +++ b/main/admin/user_edit.php @@ -1,4 +1,4 @@ - 'width: 60%; float: '.($text_dir=='rtl'?'right;':'left;'))); $form->addElement('hidden','user_id',$user_id); @@ -207,6 +209,71 @@ if(! $user_data['platform_admin'] ) $form->addElement('radio','active',get_lang('ActiveAccount'),get_lang('Active'),1); $form->addElement('radio','active','',get_lang('Inactive'),0); } + + +// EXTRA FIELDS +$extra = UserManager::get_extra_fields(0,50,5,'ASC'); +foreach($extra as $id => $field_details) +{ + if($field_details[6] == 0) + { + continue; + } + switch($field_details[2]) + { + case USER_FIELD_TYPE_TEXT: + $form->addElement('text', 'extra_'.$field_details[1], $field_details[3], array('size' => 40)); + $form->applyFilter('extra_'.$field_details[1], 'stripslashes'); + $form->applyFilter('extra_'.$field_details[1], 'trim'); + if ($field_details[7] == 0) $form->freeze('extra_'.$field_details[1]); + break; + case USER_FIELD_TYPE_TEXTAREA: + $form->add_html_editor('extra_'.$field_details[1], $field_details[3], false); + //$form->addElement('textarea', 'extra_'.$field_details[1], $field_details[3], array('size' => 80)); + $form->applyFilter('extra_'.$field_details[1], 'stripslashes'); + $form->applyFilter('extra_'.$field_details[1], 'trim'); + if ($field_details[7] == 0) $form->freeze('extra_'.$field_details[1]); + break; + case USER_FIELD_TYPE_RADIO: + $group = array(); + foreach($field_details[8] as $option_id => $option_details) + { + $options[$option_details[1]] = $option_details[2]; + $group[] =& HTML_QuickForm::createElement('radio', 'extra_'.$field_details[1], $option_details[1],$option_details[2].'
',$option_details[1]); + } + $form->addGroup($group, 'extra_'.$field_details[1], $field_details[3], ''); + break; + case USER_FIELD_TYPE_SELECT: + $options = array(); + foreach($field_details[8] as $option_id => $option_details) + { + $options[$option_details[1]] = $option_details[2]; + } + $form->addElement('select','extra_'.$field_details[1],$field_details[3],$options,''); + break; + case USER_FIELD_TYPE_SELECT_MULTIPLE: + $options = array(); + foreach($field_details[8] as $option_id => $option_details) + { + $options[$option_details[1]] = $option_details[2]; + } + $form->addElement('select','extra_'.$field_details[1],$field_details[3],$options,array('multiple' => 'multiple')); + break; + case USER_FIELD_TYPE_DATE: + $form->addElement('datepickerdate', 'extra_'.$field_details[1], $field_details[3]); + $form->_elements[$form->_elementIndex['extra_'.$field_details[1]]]->setLocalOption('minYear',1900); + if ($field_details[7] == 0) $form->freeze('extra_'.$field_details[1]); + $form->applyFilter('theme', 'trim'); + break; + case USER_FIELD_TYPE_DATETIME: + $form->addElement('datepicker', 'extra_'.$field_details[1], $field_details[3]); + if ($field_details[7] == 0) $form->freeze('extra_'.$field_details[1]); + $form->applyFilter('theme', 'trim'); + break; + } +} + + // Submit button $form->addElement('submit', 'submit', 'OK'); @@ -314,6 +381,16 @@ if( $form->validate()) api_sql_query($sql,__FILE__,__LINE__); } } + + $extras = array(); + foreach($user as $key => $value) + { + if(substr($key,0,6)=='extra_') //an extra field + { + $myres = UserManager::update_extra_field_value($user_id,substr($key,6),$value); + } + } + if (!empty ($email) && $send_mail) { $emailto = '"'.$firstname.' '.$lastname.'" <'.$email.'>';