Minor - format code.

1.9.x
Julio Montoya 11 years ago
parent 8fc2e8d100
commit 566fcd416a
  1. 4
      main/gradebook/gradebook_flatview.php
  2. 22
      main/gradebook/lib/fe/flatviewtable.class.php
  3. 69
      main/gradebook/lib/flatview_data_generator.class.php
  4. 25
      main/gradebook/lib/gradebook_functions.inc.php

@ -124,7 +124,7 @@ if (isset($_GET['export_pdf']) && $_GET['export_pdf'] == 'category') {
$params['export_pdf'] = true; $params['export_pdf'] = true;
if ($cat[0]->is_locked() == true || api_is_platform_admin()) { if ($cat[0]->is_locked() == true || api_is_platform_admin()) {
Display :: set_header(null, false, false); Display :: set_header(null, false, false);
export_pdf_flatview($cat, $users, $alleval, $alllinks, $params, $mainCourseCategory[0]); export_pdf_flatview($flatviewtable, $cat, $users, $alleval, $alllinks, $params, $mainCourseCategory[0]);
} }
} }
@ -150,7 +150,7 @@ if (isset($_GET['exportpdf'])) {
$params['show_official_code'] = true; $params['show_official_code'] = true;
$params['export_pdf'] = true; $params['export_pdf'] = true;
$params['only_total_category'] = false; $params['only_total_category'] = false;
export_pdf_flatview($cat, $users, $alleval, $alllinks, $params, $mainCourseCategory[0]); export_pdf_flatview($flatviewtable, $cat, $users, $alleval, $alllinks, $params, $mainCourseCategory[0]);
} else { } else {
Display :: display_header(get_lang('ExportPDF')); Display :: display_header(get_lang('ExportPDF'));

@ -11,18 +11,26 @@ set_time_limit(0);
* @author Stijn Konings * @author Stijn Konings
* @author Bert Steppé - (refactored, optimised) * @author Bert Steppé - (refactored, optimised)
* @author Julio Montoya Armas - Gradebook Graphics * @author Julio Montoya Armas - Gradebook Graphics
*
* @package chamilo.gradebook * @package chamilo.gradebook
*/ */
class FlatViewTable extends SortableTable class FlatViewTable extends SortableTable
{ {
private $selectcat;
public $datagen; public $datagen;
private $selectcat;
private $limit_enabled; private $limit_enabled;
private $offset; private $offset;
private $mainCourseCategory; private $mainCourseCategory;
/** /**
* Constructor * @param Category $selectcat
* @param array $users
* @param array $evals
* @param array $links
* @param bool $limit_enabled
* @param int $offset
* @param null $addparams
* @param Category $mainCourseCategory
*/ */
public function FlatViewTable( public function FlatViewTable(
$selectcat, $selectcat,
@ -56,6 +64,14 @@ class FlatViewTable extends SortableTable
$this->mainCourseCategory = $mainCourseCategory; $this->mainCourseCategory = $mainCourseCategory;
} }
/**
* @param bool $value
*/
public function setLimitEnabled($value)
{
$this->limit_enabled = (bool) $value;
}
/** /**
* @return Category * @return Category
*/ */
@ -447,11 +463,13 @@ class FlatViewTable extends SortableTable
// create page navigation if needed // create page navigation if needed
$totalitems = $this->datagen->get_total_items_count(); $totalitems = $this->datagen->get_total_items_count();
if ($this->limit_enabled && $totalitems > LIMIT) { if ($this->limit_enabled && $totalitems > LIMIT) {
$selectlimit = LIMIT; $selectlimit = LIMIT;
} else { } else {
$selectlimit = $totalitems; $selectlimit = $totalitems;
} }
$header = null; $header = null;
if ($this->limit_enabled && $totalitems > LIMIT) { if ($this->limit_enabled && $totalitems > LIMIT) {
$header .= '<table style="width: 100%; text-align: right; margin-left: auto; margin-right: auto;" border="0" cellpadding="2">' $header .= '<table style="width: 100%; text-align: right; margin-left: auto; margin-right: auto;" border="0" cellpadding="2">'

@ -102,7 +102,9 @@ class FlatViewDataGenerator
$parent_id = $this->category->get_parent_id(); $parent_id = $this->category->get_parent_id();
if ($parent_id == 0 or $this->params['only_subcat'] == $this->category->get_id()) { if ($parent_id == 0 or
$this->params['only_subcat'] == $this->category->get_id()
) {
$main_weight = $this->category->get_weight(); $main_weight = $this->category->get_weight();
$grade_model_id = $this->category->get_grade_model_id(); $grade_model_id = $this->category->get_grade_model_id();
} else { } else {
@ -142,26 +144,35 @@ class FlatViewDataGenerator
$course_code = api_get_course_id(); $course_code = api_get_course_id();
$session_id = api_get_session_id(); $session_id = api_get_session_id();
$allcat = $this->category->get_subcategories(null, $course_code, $session_id, 'ORDER BY id'); $allcat = $this->category->get_subcategories(
null,
$course_code,
$session_id,
'ORDER BY id'
);
$evaluationsAdded = array(); $evaluationsAdded = array();
if ($parent_id == 0 && !empty($allcat)) { if ($parent_id == 0 && !empty($allcat)) {
// Means there are any subcategory // Means there are any subcategory
foreach ($allcat as $sub_cat) { foreach ($allcat as $sub_cat) {
$sub_cat_weight = round(100*$sub_cat->get_weight()/$main_weight,1); $sub_cat_weight = round(100 * $sub_cat->get_weight() / $main_weight, 1);
$add_weight = " $sub_cat_weight %"; $add_weight = " $sub_cat_weight %";
if (isset($this->params['export_pdf']) && $this->params['export_pdf']) { if (isset($this->params['export_pdf']) && $this->params['export_pdf']) {
$add_weight = null; $add_weight = null;
} }
$headers[] = Display::url($sub_cat->get_name(), api_get_self().'?selectcat='.$sub_cat->get_id()).$add_weight; $headers[] = Display::url(
$sub_cat->get_name(),
api_get_self().'?selectcat='.$sub_cat->get_id()
).$add_weight;
} }
} else { } else {
if (!isset($this->params['only_total_category']) || if (!isset($this->params['only_total_category']) ||
(isset($this->params['only_total_category']) && $this->params['only_total_category'] == false) (isset($this->params['only_total_category']) &&
$this->params['only_total_category'] == false)
) { ) {
for ($count=0; ($count < $items_count ) && ($items_start + $count < count($this->evals_links)); $count++) { for ($count=0; ($count < $items_count ) && ($items_start + $count < count($this->evals_links)); $count++) {
/** @var AbstractLink $item */ /** @var AbstractLink $item */
$item = $this->evals_links[$count + $items_start]; $item = $this->evals_links[$count + $items_start];
$weight = round(100*$item->get_weight()/$main_weight,1); $weight = round(100 * $item->get_weight() / $main_weight, 1);
$headers[] = $item->get_name().' '.$weight.' % '; $headers[] = $item->get_name().' '.$weight.' % ';
$evaluationsAdded[] = $item->get_id(); $evaluationsAdded[] = $item->get_id();
} }
@ -249,31 +260,29 @@ class FlatViewDataGenerator
$items_count = 0; $items_count = 0;
} }
// copy users to a new array that we will sort $userTable = array();
// TODO - needed ?
$usertable = array ();
foreach ($this->users as $user) { foreach ($this->users as $user) {
$usertable[] = $user; $userTable[] = $user;
} }
// sort users array // sort users array
if ($users_sorting & self :: FVDG_SORT_LASTNAME) { if ($users_sorting & self :: FVDG_SORT_LASTNAME) {
usort($usertable, array ('FlatViewDataGenerator','sort_by_last_name')); usort($userTable, array ('FlatViewDataGenerator','sort_by_last_name'));
} elseif ($users_sorting & self :: FVDG_SORT_FIRSTNAME) { } elseif ($users_sorting & self :: FVDG_SORT_FIRSTNAME) {
usort($usertable, array ('FlatViewDataGenerator','sort_by_first_name')); usort($userTable, array ('FlatViewDataGenerator','sort_by_first_name'));
} }
if ($users_sorting & self :: FVDG_SORT_DESC) { if ($users_sorting & self :: FVDG_SORT_DESC) {
$usertable = array_reverse($usertable); $userTable = array_reverse($userTable);
} }
// select the requested users // Select the requested users
$selected_users = array_slice($usertable, $users_start, $users_count); $selected_users = array_slice($userTable, $users_start, $users_count);
// Generate actual data array // Generate actual data array
$scoredisplay = ScoreDisplay :: instance(); $scoredisplay = ScoreDisplay::instance();
$data = array (); $data = array();
$displaytype = SCORE_DIV; $displaytype = SCORE_DIV;
if ($ignore_score_color) { if ($ignore_score_color) {
$displaytype |= SCORE_IGNORE_SPLIT; $displaytype |= SCORE_IGNORE_SPLIT;
@ -321,25 +330,28 @@ class FlatViewDataGenerator
foreach ($selected_users as $user) { foreach ($selected_users as $user) {
$row = array(); $row = array();
// User id
if ($export_to_pdf) { if ($export_to_pdf) {
$row['user_id'] = $user_id = $user[0]; //user id $row['user_id'] = $user_id = $user[0];
} else { } else {
$row[] = $user_id = $user[0]; //user id $row[] = $user_id = $user[0];
} }
// Official code
if (isset($this->params['show_official_code']) && $this->params['show_official_code']) { if (isset($this->params['show_official_code']) && $this->params['show_official_code']) {
if ($export_to_pdf) { if ($export_to_pdf) {
$row['official_code'] = $user[4]; //official code $row['official_code'] = $user[4];
} else { } else {
$row[] = $user[4]; //official code $row[] = $user[4];
} }
} }
// Last name
if (isset($this->params['join_firstname_lastname']) && $this->params['join_firstname_lastname']) { if (isset($this->params['join_firstname_lastname']) && $this->params['join_firstname_lastname']) {
if ($export_to_pdf) { if ($export_to_pdf) {
$row['name'] = api_get_person_name($user[3], $user[2]); //last name $row['name'] = api_get_person_name($user[3], $user[2]);
} else { } else {
$row[] = api_get_person_name($user[3], $user[2]); //last name $row[] = api_get_person_name($user[3], $user[2]);
} }
} else { } else {
if ($export_to_pdf) { if ($export_to_pdf) {
@ -352,11 +364,11 @@ class FlatViewDataGenerator
} }
} else { } else {
if (api_is_western_name_order()) { if (api_is_western_name_order()) {
$row[] = $user[3]; //first name $row[] = $user[3]; //first name
$row[] = $user[2]; //last name $row[] = $user[2]; //last name
} else { } else {
$row[] = $user[2]; //last name $row[] = $user[2]; //last name
$row[] = $user[3]; //first name $row[] = $user[3]; //first name
} }
} }
} }
@ -407,7 +419,8 @@ class FlatViewDataGenerator
} }
if (!isset($this->params['only_total_category']) || if (!isset($this->params['only_total_category']) ||
(isset($this->params['only_total_category']) && $this->params['only_total_category'] == false) (isset($this->params['only_total_category']) &&
$this->params['only_total_category'] == false)
) { ) {
if (!$show_all) { if (!$show_all) {
$row[] = $temp_score.' '; $row[] = $temp_score.' ';

@ -473,14 +473,20 @@ function get_printable_data($cat, $users, $alleval, $alllinks, $params, $mainCou
$count = (($offset + 10) > $datagen->get_total_items_count()) ? ($datagen->get_total_items_count() - $offset) : LIMIT; $count = (($offset + 10) > $datagen->get_total_items_count()) ? ($datagen->get_total_items_count() - $offset) : LIMIT;
$header_names = $datagen->get_header_names($offset, $count, true); $header_names = $datagen->get_header_names($offset, $count, true);
$data_array = $datagen->get_data( $data_array = $datagen->get_data(
FlatViewDataGenerator :: FVDG_SORT_LASTNAME, 0, null, $offset, $count, true, true FlatViewDataGenerator :: FVDG_SORT_LASTNAME,
0,
null,
$offset,
$count,
true,
true
); );
$newarray = array(); $result = array();
foreach ($data_array as $data) { foreach ($data_array as $data) {
$newarray[] = array_slice($data, 1); $result[] = array_slice($data, 1);
} }
$return = array($header_names, $newarray); $return = array($header_names, $result);
return $return; return $return;
} }
@ -771,11 +777,16 @@ function load_gradebook_select_in_tool($form)
} }
/** /**
* PDF report creation * @param FlatViewTable $flatviewtable
* @param Category $cat
* @param $users
* @param $alleval
* @param $alllinks
* @param array $params
* @param null $mainCourseCategory
*/ */
function export_pdf_flatview($cat, $users, $alleval, $alllinks, $params = array(), $mainCourseCategory = null) function export_pdf_flatview($flatviewtable, $cat, $users, $alleval, $alllinks, $params = array(), $mainCourseCategory = null)
{ {
global $flatviewtable;
// Getting data // Getting data
$printable_data = get_printable_data($cat[0], $users, $alleval, $alllinks, $params, $mainCourseCategory); $printable_data = get_printable_data($cat[0], $users, $alleval, $alllinks, $params, $mainCourseCategory);

Loading…
Cancel
Save