From 3185aba8b439675538d696b6614aa32b5f6b9b56 Mon Sep 17 00:00:00 2001 From: Ivan Tcholakov Date: Sat, 5 Sep 2009 15:20:09 +0300 Subject: [PATCH] Bug #3646 and Issue #306 - Assesments (gradebook) tool, part 2: Fixing person name order and sorting to be dependable on the internationalization settings. --- main/gradebook/gradebook.php | 2 +- main/gradebook/gradebook_result.class.php | 5 +- main/gradebook/gradebook_view_result.php | 55 ++++++++++++++----- main/gradebook/lib/fe/displaygradebook.php | 16 +++--- main/gradebook/lib/fe/evalform.class.php | 20 ++++--- main/gradebook/lib/fe/flatviewtable.class.php | 40 +++++++++----- main/gradebook/lib/fe/resulttable.class.php | 31 +++++++++-- .../lib/fe/scoredisplayform.class.php | 2 +- main/gradebook/lib/fe/userform.class.php | 9 ++- .../lib/gradebook_functions_users.inc.php | 3 +- main/gradebook/user_info.php | 2 +- main/gradebook/user_stats.php | 2 +- 12 files changed, 128 insertions(+), 59 deletions(-) diff --git a/main/gradebook/gradebook.php b/main/gradebook/gradebook.php index c79096a368..006c068c6f 100644 --- a/main/gradebook/gradebook.php +++ b/main/gradebook/gradebook.php @@ -292,7 +292,7 @@ if ($course_to_crsind && !isset($_GET['confirm'])) { : '&moveeval=' . Security::remove_XSS($_GET['moveeval']) ) .'&selectcat=' . Security::remove_XSS($_GET['selectcat']) .'&targetcat=' . Security::remove_XSS($_GET['targetcat']).'"> - + '; $warning_message = get_lang('MoveWarning').'

'.$button; diff --git a/main/gradebook/gradebook_result.class.php b/main/gradebook/gradebook_result.class.php index 2e82a4d53c..8eb04d3663 100644 --- a/main/gradebook/gradebook_result.class.php +++ b/main/gradebook/gradebook_result.class.php @@ -116,13 +116,13 @@ class GradeBookResult if (empty($user_id)) { //get all results (ourself and the others) as an admin should see them //AND exe_user_id <> $_user['user_id'] clause has been removed - $sql="SELECT CONCAT(lastname,' ',firstname),ce.title, te.exe_result , + $sql="SELECT ".(api_is_western_name_order() ? "CONCAT(firstname,' ',lastname)" : "CONCAT(lastname,' ',firstname)").", ce.title, te.exe_result , te.exe_weighting, UNIX_TIMESTAMP(te.exe_date),te.exe_id, user.email, user.user_id FROM $TBL_EXERCISES ce , $TBL_TRACK_EXERCISES te, $TBL_USER user WHERE te.exe_exo_id = ce.id AND user_id=te.exe_user_id AND te.exe_cours_id='$cid' ORDER BY te.exe_cours_id ASC, ce.title ASC, te.exe_date ASC"; - $hpsql="SELECT CONCAT(tu.lastname,' ',tu.firstname), tth.exe_name, + $hpsql="SELECT ".(api_is_western_name_order() ? "CONCAT(tu.firstname,' ',tu.lastname)" : "CONCAT(tu.lastname,' ',tu.firstname)").", tth.exe_name, tth.exe_result , tth.exe_weighting, UNIX_TIMESTAMP(tth.exe_date), tu.email, tu.user_id FROM $TBL_TRACK_HOTPOTATOES tth, $TBL_USER tu WHERE tu.user_id=tth.exe_user_id AND tth.exe_cours_id = '".$cid."' @@ -139,7 +139,6 @@ class GradeBookResult FROM $TBL_TRACK_HOTPOTATOES WHERE exe_user_id = '".$user_id."' AND exe_cours_id = '".$cid."' ORDER BY exe_cours_id ASC, exe_date ASC"; - } $results=getManyResultsXCol($sql,8); diff --git a/main/gradebook/gradebook_view_result.php b/main/gradebook/gradebook_view_result.php index d24a6b8aa8..2af7b2891e 100644 --- a/main/gradebook/gradebook_view_result.php +++ b/main/gradebook/gradebook_view_result.php @@ -305,12 +305,22 @@ if ($export_result_form->validate()) { )); $datagen = new ResultsDataGenerator ($eval[0],$allresults); - $data_array = $datagen->get_data(ResultsDataGenerator :: RDG_SORT_LASTNAME,0,null,true); + if (api_sort_by_first_name()) { + $data_array = $datagen->get_data(ResultsDataGenerator :: RDG_SORT_FIRSTNAME, 0, null, true); + } else { + $data_array = $datagen->get_data(ResultsDataGenerator :: RDG_SORT_LASTNAME,0,null,true); + } $newarray = array(); + $is_western_name_order = api_is_western_name_order(); foreach ($data_array as $data) { $newitem = array(); - $newitem[] = $data['lastname']; - $newitem[] = $data['firstname']; + if ($is_western_name_order) { + $newitem[] = $data['firstname']; + $newitem[] = $data['lastname']; + } else { + $newitem[] = $data['lastname']; + $newitem[] = $data['firstname']; + } $newitem[] = $data['score']; if ($displayscore->is_custom()) $newitem[] = $data['display']; @@ -318,10 +328,18 @@ if ($export_result_form->validate()) { } $pdf->ezSetY(650); if ($displayscore->is_custom()) { - $header_names = array(get_lang('LastName'),get_lang('FirstName'),get_lang('Score'),get_lang('Display')); - }else { - $header_names = array(get_lang('LastName'),get_lang('FirstName'),get_lang('Score')); - } + if ($is_western_name_order) { + $header_names = array(get_lang('FirstName'),get_lang('LastName'),get_lang('Score'),get_lang('Display')); + } else { + $header_names = array(get_lang('LastName'),get_lang('FirstName'),get_lang('Score'),get_lang('Display')); + } + } else { + if ($is_western_name_order) { + $header_names = array(get_lang('FirstName'),get_lang('LastName'),get_lang('Score')); + } else { + $header_names = array(get_lang('LastName'),get_lang('FirstName'),get_lang('Score')); + } + } $pdf->ezTable($newarray,$header_names,'',array('showHeadings'=>1,'shaded'=>1,'showLines'=>1,'rowGap'=>3,'width'=> 500)); $pdf->ezStream(); @@ -372,16 +390,27 @@ if (isset ($_POST['action'])) { } } } // TODO - what if selecteval not set ? -$addparams= array ( -'selecteval' => $eval[0]->get_id()); +$addparams = array ('selecteval' => $eval[0]->get_id()); if (isset ($_GET['print'])) { $datagen = new ResultsDataGenerator ($eval[0],$allresults); - $data_array = $datagen->get_data(ResultsDataGenerator :: RDG_SORT_LASTNAME,0,null,true); - if ($displayscore->is_custom()) { + if (api_sort_by_first_name()) { + $data_array = $datagen->get_data(ResultsDataGenerator :: RDG_SORT_FIRSTNAME, 0, null, true); + } else { + $data_array = $datagen->get_data(ResultsDataGenerator :: RDG_SORT_LASTNAME,0,null,true); + } + if ($displayscore->is_custom()) { + if (api_is_western_name_order()) { + $header_names = array(get_lang('FirstName'),get_lang('LastName'),get_lang('Score'),get_lang('Display')); + } else { $header_names = array(get_lang('LastName'),get_lang('FirstName'),get_lang('Score'),get_lang('Display')); + } + } else { + if (api_is_western_name_order()) { + $header_names = array(get_lang('FirstName'),get_lang('LastName'),get_lang('Score')); }else { $header_names = array(get_lang('LastName'),get_lang('FirstName'),get_lang('Score')); } + } $newarray = array(); foreach ($data_array as $data) { $newarray[] = array_slice($data, 2); @@ -479,7 +508,7 @@ if (isset ($_GET['importoverwritescore'])) { if (isset ($_GET['import_user_error'])) { $userinfo= get_user_info_from_id($_GET['import_user_error']); - Display :: display_warning_message(get_lang('UserInfoDoesNotMatch') . ' ' . $userinfo['lastname'] . ' ' . $userinfo['firstname']); + Display :: display_warning_message(get_lang('UserInfoDoesNotMatch') . ' ' . api_get_person_name($userinfo['firstname'], $userinfo['lastname'])); } if (isset ($_GET['allresdeleted'])) { Display :: display_confirmation_message(get_lang('AllResultDeleted')); @@ -487,7 +516,7 @@ if (isset ($_GET['allresdeleted'])) { if (isset ($_GET['import_score_error'])) { $userinfo= get_user_info_from_id($_GET['import_score_error']); - Display :: display_warning_message(get_lang('ScoreDoesNotMatch') . ' ' . $userinfo['lastname'] . ' ' . $userinfo['firstname']); + Display :: display_warning_message(get_lang('ScoreDoesNotMatch') . ' ' . api_get_person_name($userinfo['firstname'], $userinfo['lastname'])); } if ($file_type == null) { //show the result header if (isset ($export_result_form) && !(isset ($edit_res_form))) { diff --git a/main/gradebook/lib/fe/displaygradebook.php b/main/gradebook/lib/fe/displaygradebook.php index 6f7732d1d0..92493bd338 100644 --- a/main/gradebook/lib/fe/displaygradebook.php +++ b/main/gradebook/lib/fe/displaygradebook.php @@ -135,7 +135,7 @@ class DisplayGradebook */ function display_header_reduce_flatview($catobj, $showeval, $showlink,$simple_search_form) { $header = '
'; - $header .= ''.Display::return_icon('excel.gif', get_lang('ExportAsXLS')).' '.get_lang('ExportAsXLS').''; + $header .= ''.Display::return_icon('excel.gif', get_lang('ExportAsXLS')).' '.get_lang('ExportAsXLS').''; $header .= ''. Display::return_icon('folder_document.gif',get_lang('FolderView')) . get_lang('FolderView') . ''; // $header .= ' . get_lang( ' . get_lang('ExportPDF') . ''; @@ -158,7 +158,7 @@ class DisplayGradebook echo ''; echo ''; - //$header .= ''.Display::return_icon('csv.gif', get_lang('ExportAsCSV')).' '.get_lang('ExportAsCSV').''; + //$header .= ''.Display::return_icon('csv.gif', get_lang('ExportAsCSV')).' '.get_lang('ExportAsCSV').''; $header .= ''.Display::return_icon('printmgr.gif', get_lang('Print')).' ' . get_lang('Print') . ''; $header .= ''.Display::return_icon('file_pdf.gif', get_lang('ExportAsPDF')).' ' . get_lang('ExportToPDF') . ''; //exportpdf @@ -224,9 +224,7 @@ class DisplayGradebook $cattotal = Category :: load(0); $scoretotal= $cattotal[0]->calc_score(api_get_user_id()); $scoretotal_display = (isset($scoretotal) ? $scoredisplay->display_score($scoretotal,SCORE_PERCENT) : get_lang('NoResultsAvailable')); - $scoreinfo = get_lang('StatsStudent') . ' : '.$user['lastname'].' '.$user['firstname'].'
'; - - + $scoreinfo = get_lang('StatsStudent') . ' : '.api_get_person_name($user['firstname'], $user['lastname']).'
'; if ((!$catobj->get_id() == '0') && (!isset ($_GET['studentoverview'])) && (!isset ($_GET['search']))) { $scoreinfo.= '
'.get_lang('Total') . ' : ' . $scorecourse_display . ''; } @@ -347,7 +345,7 @@ class DisplayGradebook $cattotal = Category :: load(0); $scoretotal= $cattotal[0]->calc_score(api_get_user_id()); $scoretotal_display = (isset($scoretotal) ? $scoredisplay->display_score($scoretotal,SCORE_PERCENT) : get_lang('NoResultsAvailable')); - $scoreinfo = get_lang('StatsStudent') . ' : '.$user['lastname'].' '.$user['firstname'].'
'; + $scoreinfo = get_lang('StatsStudent') . ' : '.api_get_person_name($user['firstname'], $user['lastname']).'
'; if ((!$catobj->get_id() == '0') && (!isset ($_GET['studentoverview'])) && (!isset ($_GET['search']))) $scoreinfo.= '
'.get_lang('TotalForThisCategory') . ' : ' . $scorecourse_display . ''; $scoreinfo.= '
'.get_lang('Total') . ' : ' . $scoretotal_display . ''; @@ -409,13 +407,13 @@ class DisplayGradebook //Web path $image_path = UserManager::get_user_picture_path_by_id($userid,'web',false,true); $image_file = $image_path['dir'].$image_path['file']; - $img_attributes= 'src="' . $image_file . '?rand=' . time() . '" ' . 'alt="' . $user['lastname'] . ' ' . $user['firstname'] . '" '; + $img_attributes= 'src="' . $image_file . '?rand=' . time() . '" ' . 'alt="' . api_get_person_name($user['firstname'], $user['lastname']) . '" '; if ($image_size[0] > 200) { //limit display width to 200px $img_attributes .= 'width="200" '; } $info = '
'; - $info.= get_lang('Name') . ' : ' . $user['lastname'] . ' ' . $user['firstname'] . ' ( ' . get_lang('MoreInfo') . '... )
'; + $info.= get_lang('Name') . ' : ' . api_get_person_name($user['firstname'], $user['lastname']) . ' ( ' . get_lang('MoreInfo') . '... )
'; $info.= get_lang('Email') . ' : ' . $user['email'] . '

'; $info.= get_lang('TotalUser') . ' : ' . $scorecourse_display . '
'; $info.= '
'; @@ -423,7 +421,7 @@ class DisplayGradebook //-------------- - //$scoreinfo = get_lang('StatsStudent') . ' : '.$user['lastname'].' '.$user['firstname'].'
'; + //$scoreinfo = get_lang('StatsStudent') . ' : '.api_get_person_name($user['lastname'], $user['firstname']).'
'; //$scoreinfo.= '
'.get_lang('Total') . ' : ' . $scorecourse_display . ''; //$scoreinfo.= '
'.get_lang('Total') . ' : ' . $scoretotal_display . ''; diff --git a/main/gradebook/lib/fe/evalform.class.php b/main/gradebook/lib/fe/evalform.class.php index 96e6edd85f..e44c025f98 100644 --- a/main/gradebook/lib/fe/evalform.class.php +++ b/main/gradebook/lib/fe/evalform.class.php @@ -245,7 +245,7 @@ class EvalForm extends FormValidator $userinfo= api_get_user_info($this->result_object->get_user_id()); $renderer =& $this->defaultRenderer(); $renderer->setElementTemplate('{element} '); - $this->addElement('static', null, null,$userinfo['lastName'] . ' ' . $userinfo['firstName']); + $this->addElement('static', null, null, api_get_person_name($userinfo['lastName'], $userinfo['firstName'])); $this->add_textfield('score', get_lang('Result'), false, array ( 'size' => '4', 'maxlength' => '4' @@ -361,27 +361,31 @@ class EvalForm extends FormValidator private function build_stud_label ($id, $lastname, $firstname) { $opendocurl_start = ''; $opendocurl_end = ''; - // evaluation's origin is a link if ($this->evaluation_object->get_category_id() < 0) { $link = LinkFactory :: get_evaluation_link ($this->evaluation_object->get_id()); - $doc_url = $link->get_view_url($id); if ($doc_url != null) { $opendocurl_start .= ''; $opendocurl_end = ''; } } - - return $opendocurl_start . $lastname . ' ' . $firstname . $opendocurl_end; + return $opendocurl_start . api_get_person_name($firstname, $lastname) . $opendocurl_end; } function sort_by_user ($item1, $item2) { $user1 = $item1['user']; $user2 = $item2['user']; - $result = api_strcmp($user1['lastname'], $user2['lastname']); - if ($result == 0) { - return api_strcmp($user1['firstname'], $user2['firstname']); + if (api_sort_by_first_name()) { + $result = api_strcmp($user1['firstname'], $user2['firstname']); + if ($result == 0) { + return api_strcmp($user1['lastname'], $user2['lastname']); + } + } else { + $result = api_strcmp($user1['lastname'], $user2['lastname']); + if ($result == 0) { + return api_strcmp($user1['firstname'], $user2['firstname']); + } } return $result; } diff --git a/main/gradebook/lib/fe/flatviewtable.class.php b/main/gradebook/lib/fe/flatviewtable.class.php index a2b168cd8b..cf71051f50 100644 --- a/main/gradebook/lib/fe/flatviewtable.class.php +++ b/main/gradebook/lib/fe/flatviewtable.class.php @@ -409,6 +409,8 @@ class FlatViewTable extends SortableTable */ function get_table_data ($from = 1) { + $is_western_name_order = api_is_western_name_order(); + // create page navigation if needed $totalitems = $this->datagen->get_total_items_count(); @@ -463,8 +465,11 @@ class FlatViewTable extends SortableTable // retrieve sorting type - $users_sorting = ($this->column == 0 ? FlatViewDataGenerator :: FVDG_SORT_LASTNAME - : FlatViewDataGenerator :: FVDG_SORT_FIRSTNAME); + if ($is_western_name_order) { + $users_sorting = ($this->column == 0 ? FlatViewDataGenerator :: FVDG_SORT_FIRSTNAME : FlatViewDataGenerator :: FVDG_SORT_LASTNAME); + } else { + $users_sorting = ($this->column == 0 ? FlatViewDataGenerator :: FVDG_SORT_LASTNAME : FlatViewDataGenerator :: FVDG_SORT_FIRSTNAME); + } if ($this->direction == 'DESC') { $users_sorting |= FlatViewDataGenerator :: FVDG_SORT_DESC; } else { @@ -475,8 +480,13 @@ class FlatViewTable extends SortableTable $header_names = $this->datagen->get_header_names($this->offset, $selectlimit); $column = 0; - $this->set_header($column++, $header_names[0]); - $this->set_header($column++, $header_names[1]); + if ($is_western_name_order) { + $this->set_header($column++, $header_names[1]); + $this->set_header($column++, $header_names[0]); + } else { + $this->set_header($column++, $header_names[0]); + $this->set_header($column++, $header_names[1]); + } while ($column < count($header_names)) { $this->set_header($column, $header_names[$column], false); @@ -487,16 +497,22 @@ class FlatViewTable extends SortableTable // step 2: generate rows: students - $data_array = $this->datagen->get_data($users_sorting, - $from, $this->per_page, - $this->offset, $selectlimit); + $data_array = $this->datagen->get_data($users_sorting, $from, $this->per_page, $this->offset, $selectlimit); $table_data = array(); foreach ($data_array as $user_row) { $table_row = array (); $count = 0; - $table_row[]= $this->build_name_link($user_row[$count++], $user_row[$count++]); - $table_row[]= $user_row[$count++]; + $user_id = $user_row[$count++]; + $lastname = $user_row[$count++]; + $firstname = $user_row[$count++]; + if ($is_western_name_order) { + $table_row[] = $this->build_name_link($user_id, $firstname); + $table_row[] = $this->build_name_link($user_id, $lastname); + } else { + $table_row[] = $this->build_name_link($user_id, $lastname); + $table_row[] = $this->build_name_link($user_id, $firstname); + } while ($count < count($user_row)) { $table_row[] = $user_row[$count++]; } @@ -506,11 +522,9 @@ class FlatViewTable extends SortableTable } - - // Other functions - private function build_name_link ($user_id, $lastname) { - return ''.$lastname.''; + private function build_name_link ($user_id, $name) { + return ''.$name.''; } } \ No newline at end of file diff --git a/main/gradebook/lib/fe/resulttable.class.php b/main/gradebook/lib/fe/resulttable.class.php index 83565e7370..285ba0db75 100644 --- a/main/gradebook/lib/fe/resulttable.class.php +++ b/main/gradebook/lib/fe/resulttable.class.php @@ -62,8 +62,13 @@ class ResultTable extends SortableTable 'delete' => get_lang('Delete') )); } - $this->set_header($column++, get_lang('LastName')); - $this->set_header($column++, get_lang('FirstName')); + if (api_is_western_name_order()) { + $this->set_header($column++, get_lang('FirstName')); + $this->set_header($column++, get_lang('LastName')); + } else { + $this->set_header($column++, get_lang('LastName')); + $this->set_header($column++, get_lang('FirstName')); + } $this->set_header($column++, get_lang('Score')); if ($scoredisplay->is_custom()) { $this->set_header($column++, get_lang('Display')); @@ -87,6 +92,7 @@ class ResultTable extends SortableTable */ function get_table_data ($from = 1) { + $is_western_name_order = api_is_western_name_order(); $scoredisplay = ScoreDisplay :: instance(); // determine sorting type @@ -94,10 +100,18 @@ class ResultTable extends SortableTable switch ($this->column) { // Type case (0 + $col_adjust): - $sorting = ResultsDataGenerator :: RDG_SORT_LASTNAME; + if ($is_western_name_order) { + $sorting = ResultsDataGenerator :: RDG_SORT_FIRSTNAME; + } else { + $sorting = ResultsDataGenerator :: RDG_SORT_LASTNAME; + } break; case (1 + $col_adjust): - $sorting = ResultsDataGenerator :: RDG_SORT_FIRSTNAME; + if ($is_western_name_order) { + $sorting = ResultsDataGenerator :: RDG_SORT_LASTNAME; + } else { + $sorting = ResultsDataGenerator :: RDG_SORT_FIRSTNAME; + } break; case (2 + $col_adjust): $sorting = ResultsDataGenerator :: RDG_SORT_SCORE; @@ -122,8 +136,13 @@ class ResultTable extends SortableTable if ($this->iscourse == '1') { $row[] = $item['result_id']; } - $row[] = $item['lastname']; - $row[] = $item['firstname']; + if ($is_western_name_order) { + $row[] = $item['firstname']; + $row[] = $item['lastname']; + } else { + $row[] = $item['lastname']; + $row[] = $item['firstname']; + } $row[] = $item['score']; if ($scoredisplay->is_custom()) { $row[] = $item['display']; diff --git a/main/gradebook/lib/fe/scoredisplayform.class.php b/main/gradebook/lib/fe/scoredisplayform.class.php index 566bb78b6a..7751f1cd70 100644 --- a/main/gradebook/lib/fe/scoredisplayform.class.php +++ b/main/gradebook/lib/fe/scoredisplayform.class.php @@ -92,7 +92,7 @@ class ScoreDisplayForm extends FormValidator if ($displayscore->is_custom()) { $this->addElement('checkbox', 'includeupperlimit', null, get_lang('IncludeUpperLimit'), null); - $this->addElement('static', null, null, '' . get_lang('ScoreInfo') . ''); + $this->addElement('static', null, null, get_lang('ScoreInfo')); $scorenull[]= & $this->CreateElement('static', null, null, get_lang('Between')); $this->setDefaults(array ( 'beginscore' => '0' diff --git a/main/gradebook/lib/fe/userform.class.php b/main/gradebook/lib/fe/userform.class.php index aa1bf56ef2..0802668bd8 100644 --- a/main/gradebook/lib/fe/userform.class.php +++ b/main/gradebook/lib/fe/userform.class.php @@ -75,8 +75,13 @@ class UserForm extends FormValidator } protected function build_user_info_form() { - $this->addElement('static', 'fname', get_lang('FirstName'), $this->user_info['firstname']); - $this->addElement('static', 'lname', get_lang('LastName'), $this->user_info['lastname']); + if (api_is_western_name_order()) { + $this->addElement('static', 'fname', get_lang('FirstName'), $this->user_info['firstname']); + $this->addElement('static', 'lname', get_lang('LastName'), $this->user_info['lastname']); + } else { + $this->addElement('static', 'lname', get_lang('LastName'), $this->user_info['lastname']); + $this->addElement('static', 'fname', get_lang('FirstName'), $this->user_info['firstname']); + } $this->addElement('static', 'uname', get_lang('UserName'), $this->user_info['username']); $this->addElement('static', 'email', get_lang('Email'), '' . $this->user_info['email'] . ''); $this->addElement('static', 'ofcode', get_lang('OfficialCode'), $this->user_info['official_code']); diff --git a/main/gradebook/lib/gradebook_functions_users.inc.php b/main/gradebook/lib/gradebook_functions_users.inc.php index 2166ec1480..37fe018cd8 100644 --- a/main/gradebook/lib/gradebook_functions_users.inc.php +++ b/main/gradebook/lib/gradebook_functions_users.inc.php @@ -34,12 +34,13 @@ function get_users_in_course($course_id) { $tbl_course_user = Database :: get_main_table(TABLE_MAIN_COURSE_USER); $tbl_user = Database :: get_main_table(TABLE_MAIN_USER); + $order_clause = api_sort_by_first_name() ? ' ORDER BY firstname, lastname ASC' : ' ORDER BY lastname, firstname ASC'; $sql = 'SELECT user.user_id,lastname,firstname' .' FROM '.$tbl_course_user.' as course_rel_user, '.$tbl_user.' as user' .' WHERE course_rel_user.user_id=user.user_id' .' AND course_rel_user.status='.STUDENT ." AND course_rel_user.course_code='".$course_id."'" - .' ORDER BY lastname ASC'; + .$order_clause; $result = api_sql_query($sql, __FILE__, __LINE__); return get_user_array_from_sql_result($result); } diff --git a/main/gradebook/user_info.php b/main/gradebook/user_info.php index cdf59268d6..8be047212e 100644 --- a/main/gradebook/user_info.php +++ b/main/gradebook/user_info.php @@ -66,7 +66,7 @@ $image_path = UserManager::get_user_picture_path_by_id($user_id,'web',false,true $image_file = $image_path['dir'].$image_path['file']; $img_attributes = 'src="'.$image_file.'?rand='.time().'" ' - .'alt="'.$user_data['lastname'].' '.$user_data['firstname'].'" ' + .'alt="'.api_get_person_name($user_data['firstname'], $user_data['lastname']).'" ' .'style="float:left; padding:5px;" '; if ($image_size[0] > 300) { diff --git a/main/gradebook/user_stats.php b/main/gradebook/user_stats.php index 2440037354..63f894f616 100644 --- a/main/gradebook/user_stats.php +++ b/main/gradebook/user_stats.php @@ -73,7 +73,7 @@ if (isset ($_GET['exportpdf'])) { $pdf->ezSetY(810); $userinfo = get_user_info_from_id($my_user_id); - $pdf->ezText(get_lang('Results').' : '.$userinfo['lastname']. ' '. $userinfo['firstname'].' ('. date('j/n/Y g:i') .')',12,array('justification'=>'center')); + $pdf->ezText(get_lang('Results').' : '.api_get_person_name($userinfo['firstname'], $userinfo['lastname']).' ('. date('j/n/Y g:i') .')', 12, array('justification'=>'center')); $pdf->line(50,790,550,790); $pdf->line(50,40,550,40);