Fixing user list to PDF export (adding coaches) see BT#2741

skala
Julio Montoya 14 years ago
parent 51bf3e888b
commit 814a14b1a5
  1. 25
      main/inc/lib/course.lib.php
  2. 8
      main/inc/lib/pdf.lib.php
  3. 2
      main/inc/lib/sessionmanager.lib.php
  4. 20
      main/inc/lib/template.lib.php
  5. 11
      main/user/user.php

@ -1368,6 +1368,22 @@ class CourseManager {
}
return $teacher_string;
}
function get_coach_list_from_course_code_to_string($course_code, $session_id) {
$tutor_data = '';
if ($session_id != 0) {
$coaches = self::get_email_of_tutor_to_session($session_id, $course_code);
$coach_list = array();
foreach ($coaches as $coach) {
$coach_list[] = $coach['complete_name'];
}
if (!empty($coach_list)) {
$tutor_data = implode (', ', $coach_list);
}
}
return $tutor_data;
}
/**
* Return user info array of all users registered in the specified course
@ -2160,7 +2176,7 @@ class CourseManager {
* @return array array(email => name_tutor) by coach
* @author Carlos Vargas <carlos.vargas@dokeos.com>
*/
public static function get_email_of_tutor_to_session($session_id,$course_code) {
public static function get_email_of_tutor_to_session($session_id, $course_code) {
$tbl_session_course_user = Database::get_main_table(TABLE_MAIN_SESSION_COURSE_USER);
$tbl_user = Database::get_main_table(TABLE_MAIN_USER);
@ -2179,16 +2195,15 @@ class CourseManager {
$user_ids[] = $row['id_user'];
}
$sql = "SELECT firstname,lastname,email FROM $tbl_user WHERE user_id IN (".implode(",",$user_ids).")";
$sql = "SELECT firstname, lastname, email FROM $tbl_user WHERE user_id IN (".implode(",",$user_ids).")";
$rs_user = Database::query($sql);
while ($row_emails = Database::fetch_array($rs_user)) {
$name_tutor = api_get_person_name($row_emails['firstname'], $row_emails['lastname'], null, PERSON_NAME_EMAIL_ADDRESS);
$mail_tutor = array($row_emails['email'] => $name_tutor);
//$name_tutor = api_get_person_name($row_emails['firstname'], $row_emails['lastname'], null, PERSON_NAME_EMAIL_ADDRESS);
$mail_tutor = array('email' => $row_emails['email'], 'complete_name' => api_get_person_name($row_emails['firstname'], $row_emails['lastname']));
$coachs_emails[] = $mail_tutor;
}
}
return $coachs_emails;
}

@ -33,10 +33,10 @@ class PDF {
//$this->pdf = $pdf = new mPDF('UTF-8', $page_format, '', '', 30, 20, 27, 25, 16, 13, $orientation);
//left, right, top, bottom, margin_header, margin footer
$params['left'] = isset($params['left']) ? $params['left'] : 15;
$params['right'] = isset($params['right']) ? $params['right'] :15;
$params['top'] = isset($params['top']) ? $params['top'] : 20;
$params['bottom'] = isset($params['bottom']) ? $params['bottom'] : 15;
$params['left'] = isset($params['left']) ? $params['left'] : 15;
$params['right'] = isset($params['right']) ? $params['right'] : 15;
$params['top'] = isset($params['top']) ? $params['top'] : 20;
$params['bottom'] = isset($params['bottom']) ? $params['bottom'] : 15;
$this->pdf = $pdf = new mPDF('UTF-8', $page_format, '', '', $params['left'], $params['right'], $params['top'], $params['bottom'], 8, 8, $orientation);
}

@ -1755,5 +1755,5 @@ class SessionManager {
return true;
}
return false;
}
}
}

@ -481,22 +481,20 @@ class Template extends Smarty {
if ($id_session != 0) {
$coachs_email = CourseManager::get_email_of_tutor_to_session($id_session, $id_course);
$email_link = array();
foreach ($coachs_email as $coach_email) {
foreach ($coach_email as $email => $username) {
$email_link[] = Display::encrypted_mailto_link($email, $username);
}
foreach ($coachs_email as $coach) {
$email_link[] = Display::encrypted_mailto_link($coach['email'], $coach['complete_name']);
}
if (count($coachs_email) > 1) {
$tutor_data .= get_lang('Coachs').' : <ul>';
$tutor_data .= '<li>'.implode("<li>", $email_link);
$tutor_data .= '</ul>';
$tutor_data .= get_lang('Coachs').' : <ul>';
$tutor_data .= '<li>'.implode("<li>", $email_link);
$tutor_data .= '</ul>';
} elseif (count($coachs_email) == 1) {
$tutor_data .= get_lang('Coach').' : ';
$tutor_data .= implode("&nbps;", $email_link);
$tutor_data .= get_lang('Coach').' : ';
$tutor_data .= implode(" ", $email_link);
} elseif (count($coachs_email) == 0) {
$tutor_data .= '';
$tutor_data .= '';
}
}
}
$this->assign('session_teachers', $tutor_data);
}
}

@ -241,14 +241,19 @@ if (api_is_allowed_to_edit(null, true)) {
$description .= '<tr><td>'.get_lang('Session').': </td><td class="highlight">'.api_get_session_name(api_get_session_id()).'</td>';
}
$description .= '<tr><td>'.get_lang('Course').': </td><td class="highlight">'.$course_info['name'].'</td>';
$teachers = CourseManager::get_teacher_list_from_course_code_to_string($course_info['code']);
$coaches = CourseManager::get_coach_list_from_course_code_to_string($course_info['code'], $session_id);
if (!empty($teachers)) {
$description .= '<tr><td>'.get_lang('Teachers').': </td><td class="highlight">'.$teachers.'</td>';
$description .= '<tr><td>'.get_lang('Teachers').': </td><td class="highlight">'.$teachers.' </td>';
}
if (!empty($coaches)) {
$description .= '<tr><td>'.get_lang('Coachs').': </td><td class="highlight">'.$coaches.' </td>';
}
$description .= '<tr><td>'.get_lang('Date').': </td><td class="highlight">'.api_convert_and_format_date(time(), DATE_TIME_FORMAT_LONG).'</td>';
$description .= '</table>';
$params = array();
//$params = array('top'=>'50');
$params = array();
Export::export_table_pdf($a_users, get_lang('UserList'), $header, $description, $params);
exit;
}

Loading…
Cancel
Save