Minor - format code.

1.9.x
Julio Montoya 12 years ago
parent e875077906
commit c0e4a054ec
  1. 148
      main/gradebook/gradebook_flatview.php
  2. 59
      main/gradebook/lib/fe/flatviewtable.class.php
  3. 194
      main/gradebook/lib/flatview_data_generator.class.php

@ -4,9 +4,6 @@
* Script
* @package chamilo.gradebook
*/
/**
* Init
*/
$language_file = 'gradebook';
require_once '../inc/global.inc.php';
@ -14,7 +11,7 @@ $current_course_tool = TOOL_GRADEBOOK;
api_protect_course_script();
require_once 'lib/be.inc.php';
require_once 'lib/be.inc.php';
require_once 'lib/fe/dataform.class.php';
require_once 'lib/fe/userform.class.php';
require_once 'lib/flatview_data_generator.class.php';
@ -84,10 +81,10 @@ if ($simple_search_form->validate() && (empty($keyword))) {
if (!empty($keyword)) {
$users = find_students($keyword);
} else {
if (isset($alleval) && isset($alllinks)) {
$users = get_all_users($alleval, $alllinks);
$users = get_all_users($alleval, $alllinks);
} else {
$users = null;
}
@ -97,36 +94,42 @@ $offset = isset($_GET['offset']) ? $_GET['offset'] : '0';
$flatviewtable = new FlatViewTable($cat[0], $users, $alleval, $alllinks, true, $offset, $addparams);
$parameters=array('selectcat'=>intval($_GET['selectcat']));
$parameters = array('selectcat' => intval($_GET['selectcat']));
$flatviewtable->set_additional_parameters($parameters);
if (isset($_GET['export_pdf']) && $_GET['export_pdf'] == 'category') {
$params = array();
$params = array();
if (isset($_GET['export_pdf']) && $_GET['export_pdf'] == 'category') {
$params['only_total_category'] = true;
$params['join_firstname_lastname'] = true;
$params['show_official_code'] = true;
$params['export_pdf'] = true;
$params['export_pdf'] = true;
if ($cat[0]->is_locked() == true || api_is_platform_admin()) {
Display :: set_header(null, false, false);
export_pdf_flatview($cat, $users, $alleval, $alllinks, $params);
}
}
if (isset($_GET['exportpdf'])) {
$interbreadcrumb[] = array (
'url' => api_get_self().'?selectcat=' . Security::remove_XSS($_GET['selectcat']),
'name' => get_lang('FlatView')
);
$export_pdf_form = new DataForm(DataForm::TYPE_EXPORT_PDF, 'export_pdf_form', null, api_get_self().'?exportpdf=&offset='.intval($_GET['offset']).'&selectcat='.intval($_GET['selectcat']), '_blank', '');
if ($export_pdf_form->validate()) {
$params = array();
$export_pdf_form = new DataForm(
DataForm::TYPE_EXPORT_PDF,
'export_pdf_form',
null,
api_get_self() . '?exportpdf=&offset=' . intval($_GET['offset']) . '&selectcat=' . intval($_GET['selectcat']),
'_blank',
''
);
if ($export_pdf_form->validate()) {
$params = $export_pdf_form->exportValues();
Display :: set_header(null, false, false);
$params['join_firstname_lastname'] = true;
$params['join_firstname_lastname'] = true;
$params['show_official_code'] = true;
$params['export_pdf'] = true;
$params['export_pdf'] = true;
$params['only_total_category'] = false;
export_pdf_flatview($cat, $users, $alleval, $alllinks, $params);
} else {
@ -135,78 +138,77 @@ if (isset($_GET['exportpdf'])) {
}
if (isset ($_GET['print'])) {
$printable_data = get_printable_data($cat[0], $users, $alleval, $alllinks);
$printable_data = get_printable_data($cat[0], $users, $alleval, $alllinks, $params);
echo print_table($printable_data[1],$printable_data[0], get_lang('FlatView'), $cat[0]->get_name());
exit;
}
if (!empty($_GET['export_report']) && $_GET['export_report'] == 'export_report') {
if (api_is_platform_admin() || api_is_course_admin() || api_is_course_coach()) {
$user_id = null;
if (empty($_SESSION['export_user_fields'])) {
$_SESSION['export_user_fields'] = false;
}
if (!api_is_allowed_to_edit(false, false) and !api_is_course_tutor()) {
$user_id = api_get_user_id();
}
require_once 'gradebook_result.class.php';
$printable_data = get_printable_data($cat[0], $users, $alleval, $alllinks);
switch($_GET['export_format']) {
case 'xls':
$export = new GradeBookResult();
$export->exportCompleteReportXLS($printable_data);
break;
case 'doc':
$export = new GradeBookResult();
$export->exportCompleteReportDOC($printable_data);
}
if (!empty($_GET['export_report']) && $_GET['export_report'] == 'export_report') {
if (api_is_platform_admin() || api_is_course_admin() || api_is_course_coach()) {
$user_id = null;
if (empty($_SESSION['export_user_fields'])) {
$_SESSION['export_user_fields'] = false;
}
if (!api_is_allowed_to_edit(false, false) and !api_is_course_tutor()) {
$user_id = api_get_user_id();
}
require_once 'gradebook_result.class.php';
$printable_data = get_printable_data($cat[0], $users, $alleval, $alllinks, $params);
switch ($_GET['export_format']) {
case 'xls':
$export = new GradeBookResult();
$export->exportCompleteReportXLS($printable_data);
break;
case 'doc':
$export = new GradeBookResult();
$export->exportCompleteReportDOC($printable_data);
exit;
break;
case 'csv':
default:
$export = new GradeBookResult();
$export->exportCompleteReportCSV($printable_data);
exit;
break;
}
} else {
api_not_allowed(true);
}
break;
case 'csv':
default:
$export = new GradeBookResult();
$export->exportCompleteReportCSV($printable_data);
exit;
break;
}
} else {
api_not_allowed(true);
}
}
$addparams = array ('selectcat' => $cat[0]->get_id());
if (isset($_GET['search'])) {
$addparams['search'] = $keyword;
$addparams['search'] = $keyword;
}
$this_section = SECTION_COURSES;
if (isset($_GET['exportpdf'])) {
$export_pdf_form->display();
if (isset($_GET['exportpdf'])) {
$export_pdf_form->display();
} else {
Display :: display_header(get_lang('FlatView'));
Display :: display_header(get_lang('FlatView'));
}
if (isset($_GET['isStudentView']) && $_GET['isStudentView'] == 'false') {
DisplayGradebook :: display_header_reduce_flatview($cat[0], $showeval, $showlink, $simple_search_form);
$flatviewtable->display();
DisplayGradebook :: display_header_reduce_flatview($cat[0], $showeval, $showlink, $simple_search_form);
$flatviewtable->display();
} elseif (isset($_GET['selectcat']) && ($_SESSION['studentview'] == 'teacherview')) {
DisplayGradebook :: display_header_reduce_flatview($cat[0], $showeval, $showlink, $simple_search_form);
// main graph
$flatviewtable->display();
// @todo this needs a fix
//$image_file = $flatviewtable->display_graph();
//@todo load images with jquery
echo '<div id="contentArea" style="text-align: center;" >';
if (!empty($image_file)) {
echo '<img src="'.$image_file.'">';
}
$flatviewtable->display_graph_by_resource();
echo '</div>';
DisplayGradebook :: display_header_reduce_flatview($cat[0], $showeval, $showlink, $simple_search_form);
// main graph
$flatviewtable->display();
// @todo this needs a fix
//$image_file = $flatviewtable->display_graph();
//@todo load images with jquery
echo '<div id="contentArea" style="text-align: center;" >';
if (!empty($image_file)) {
echo '<img src="'.$image_file.'">';
}
$flatviewtable->display_graph_by_resource();
echo '</div>';
}
Display :: display_footer();

@ -1,18 +1,12 @@
<?php
/* For licensing terms, see /license.txt */
/**
* Script
* @package chamilo.gradebook
*/
/**
* Init
*/
require_once dirname(__FILE__) . '/../../../inc/global.inc.php';
require_once dirname(__FILE__) . '/../be.inc.php';
set_time_limit(0);
/**
* Class FlatViewTable
* Table to display flat view (all evaluations and links for all students)
* @author Stijn Konings
* @author Bert Steppé - (refactored, optimised)
@ -21,7 +15,6 @@ set_time_limit(0);
*/
class FlatViewTable extends SortableTable
{
private $selectcat;
public $datagen;
private $limit_enabled;
@ -30,8 +23,15 @@ class FlatViewTable extends SortableTable
/**
* Constructor
*/
function FlatViewTable($selectcat, $users = array(), $evals = array(), $links = array(), $limit_enabled = false, $offset = 0, $addparams = null)
{
public function FlatViewTable(
$selectcat,
$users = array(),
$evals = array(),
$links = array(),
$limit_enabled = false,
$offset = 0,
$addparams = null
) {
parent :: __construct('flatviewlist', null, null, (api_is_western_name_order() xor api_sort_by_first_name()) ? 1 : 0);
$this->selectcat = $selectcat;
$this->datagen = new FlatViewDataGenerator($users, $evals, $links, array('only_subcat' => $this->selectcat->get_id()));
@ -47,9 +47,9 @@ class FlatViewTable extends SortableTable
}
/**
* Display the graph of the total results of all students
* */
function display_graph()
* Display the graph of the total results of all students
* */
public function display_graph()
{
include_once api_get_path(LIBRARY_PATH) . 'pchart/pData.class.php';
include_once api_get_path(LIBRARY_PATH) . 'pchart/pChart.class.php';
@ -163,7 +163,10 @@ class FlatViewTable extends SortableTable
return api_get_path(WEB_ARCHIVE_PATH) . $img_file;
}
function display_graph_by_resource()
/**
*
*/
public function display_graph_by_resource()
{
require_once api_get_path(LIBRARY_PATH) . 'pchart/pData.class.php';
require_once api_get_path(LIBRARY_PATH) . 'pchart/pChart.class.php';
@ -186,7 +189,7 @@ class FlatViewTable extends SortableTable
$user_results = $this->datagen->get_data_to_graph2(false);
$pre_result = $new_result = array();
$DataSet = new pData();
$DataSet = new pData();
//filling the Dataset
foreach ($user_results as $result) {
//print_r($result);
@ -225,7 +228,7 @@ class FlatViewTable extends SortableTable
}
}
//fixing $resource_list
//fixing $resource_list
$max = 0;
$new_list = array();
foreach ($resource_list as $key => $value) {
@ -266,7 +269,7 @@ class FlatViewTable extends SortableTable
// the graph id
$gradebook_id = intval($_GET['selectcat']);
$graph_id = api_get_user_id() . 'ByResource' . $gradebook_id . api_get_course_id() . api_get_session_id();
if ($show_draw) {
//if ($Cache->IsInCache($graph_id, $DataSet->GetData())) {
if (0) {
@ -283,12 +286,12 @@ class FlatViewTable extends SortableTable
// Adding the color schemma
$Test->loadColorPalette(api_get_path(LIBRARY_PATH) . "pchart/palette/pastel.txt");
// set font of the axes
$Test->setFontProperties(api_get_path(LIBRARY_PATH) . "pchart/fonts/tahoma.ttf", 8);
$area_graph_w = $chart_size_w - 130;
$Test->setGraphArea(50, 30, $area_graph_w, $chart_size_h - 50);
$Test->drawFilledRoundedRectangle(5, 5, $chart_size_w - 1, $chart_size_h - 20, 5, 240, 240, 240);
//$Test->drawRoundedRectangle(5,5,790,330,5,230,230,230);
//background color area & stripe or not
@ -302,7 +305,7 @@ class FlatViewTable extends SortableTable
$Test->setFixedScale(0, $max);
}
}
$Test->drawScale($DataSet->GetData(), $DataSet->GetDataDescription(), SCALE_ADDALLSTART0, 150, 150, 150, TRUE, 0, 1, FALSE);
//background grid
@ -411,7 +414,7 @@ class FlatViewTable extends SortableTable
/**
* Function used by SortableTable to get total number of items in the table
*/
function get_total_number_of_items()
public function get_total_number_of_items()
{
return $this->datagen->get_total_users_count();
}
@ -419,7 +422,7 @@ class FlatViewTable extends SortableTable
/**
* Function used by SortableTable to generate the data to display
*/
function get_table_data($from = 1, $per_page = null, $column = null, $direction = null, $sort = null)
public function get_table_data($from = 1, $per_page = null, $column = null, $direction = null, $sort = null)
{
$is_western_name_order = api_is_western_name_order();
@ -430,8 +433,8 @@ class FlatViewTable extends SortableTable
} else {
$selectlimit = $totalitems;
}
$header = null;
if ($this->limit_enabled && $totalitems > LIMIT) {
$calcprevious = LIMIT;
$header .= '<table style="width: 100%; text-align: right; margin-left: auto; margin-right: auto;" border="0" cellpadding="2">'
. '<tbody>'
. '<tr>';
@ -522,11 +525,13 @@ class FlatViewTable extends SortableTable
return $table_data;
}
// Other functions
/**
* @param $user_id
* @param $name
* @return string
*/
private function build_name_link($user_id, $name)
{
return '<a href="user_stats.php?userid=' . $user_id . '&selectcat=' . $this->selectcat->get_id() . '">' . $name . '</a>';
}
}

@ -1,13 +1,12 @@
<?php
/* For licensing terms, see /license.txt */
/**
* Class FlatViewDataGenerator
* Class to select, sort and transform object data into array data,
* used for the teacher's flat view
* @author Bert Steppé
* @package chamilo.gradebook
*/
/**
* Class
*
* @package chamilo.gradebook
*/
class FlatViewDataGenerator
@ -21,14 +20,15 @@ class FlatViewDataGenerator
private $users;
private $evals;
private $links;
private $evals_links;
private $evals_links;
public $params;
public $category = array();
/**
* Constructor
*/
public function FlatViewDataGenerator ($users = array(), $evals = array(), $links = array(), $params = array()) {
public function FlatViewDataGenerator ($users = array(), $evals = array(), $links = array(), $params = array())
{
$this->users = (isset($users) ? $users : array());
$this->evals = (isset($evals) ? $evals : array());
$this->links = (isset($links) ? $links : array());
@ -39,51 +39,55 @@ class FlatViewDataGenerator
/**
* Get total number of users (rows)
*/
public function get_total_users_count() {
public function get_total_users_count()
{
return count($this->users);
}
/**
* Get total number of evaluations/links (columns) (the 2 users columns not included)
*/
public function get_total_items_count() {
public function get_total_items_count()
{
return count($this->evals_links);
}
/**
* Get array containing column header names (incl user columns)
* @param int Start item offset
* @param int Number of items to get
* @param bool whether to show the details or not
* @return array List of headers
* @param int $items_start Start item offset
* @param int $items_count Number of items to get
* @param bool $show_detail whether to show the details or not
* @return array List of headers
*/
public function get_header_names($items_start = 0, $items_count = null , $show_detail = false) {
$headers = array();
public function get_header_names($items_start = 0, $items_count = null, $show_detail = false)
{
$headers = array();
if (isset($this->params['show_official_code']) && $this->params['show_official_code']) {
$headers[] = get_lang('OfficialCode');
}
}
if (isset($this->params['join_firstname_lastname']) && $this->params['join_firstname_lastname']) {
if (api_is_western_name_order()) {
$headers[] = get_lang('FirstnameAndLastname');
$headers[] = get_lang('FirstnameAndLastname');
} else {
$headers[] = get_lang('LastnameAndFirstname');
$headers[] = get_lang('LastnameAndFirstname');
}
} else {
if (api_is_western_name_order()) {
$headers[] = get_lang('FirstName');
$headers[] = get_lang('LastName');
$headers[] = get_lang('LastName');
} else {
$headers[] = get_lang('LastName');
$headers[] = get_lang('FirstName');
$headers[] = get_lang('FirstName');
}
}
if (!isset($items_count)) {
$items_count = count($this->evals_links) - $items_start;
}
$parent_id = $this->category->get_parent_id();
if ($parent_id == 0 or $this->params['only_subcat'] == $this->category->get_id()) {
$main_weight = $this->category->get_weight();
$grade_model_id = $this->category->get_grade_model_id();
@ -91,73 +95,81 @@ class FlatViewDataGenerator
$main_cat = Category::load($parent_id, null, null);
$main_weight = $main_cat[0]->get_weight();
$grade_model_id = $main_cat[0]->get_grade_model_id();
}
}
$use_grade_model = true;
if (empty($grade_model_id) || $grade_model_id == -1) {
$use_grade_model = false;
$use_grade_model = false;
}
//@todo move these in a function
$sum_categories_weight_array = array();
$mainCategoryId = null;
if (isset($this->category) && !empty($this->category)) {
$categories = Category::load(null, null, null, $this->category->get_id());
$mainCategoryId = $this->category->get_id();
$categories = Category::load(null, null, null, $this->category->get_id());
if (!empty($categories)) {
foreach ($categories as $category) {
foreach ($categories as $category) {
$sum_categories_weight_array[$category->get_id()] = $category->get_weight();
}
} else {
$sum_categories_weight_array[$this->category->get_id()] = $this->category->get_weight();
$sum_categories_weight_array[$this->category->get_id()] = $this->category->get_weight();
}
}
//No category was added
$course_code = api_get_course_id();
$session_id = api_get_session_id();
// No category was added
$course_code = api_get_course_id();
$session_id = api_get_session_id();
$allcat = $this->category->get_subcategories(null, $course_code, $session_id, 'ORDER BY id');
if ($parent_id == 0 && !empty($allcat)) {
//Means there are any subcategory
if ($parent_id == 0 && !empty($allcat)) {
// Means there are any subcategory
foreach ($allcat as $sub_cat) {
$sub_cat_weight = round(100*$sub_cat->get_weight()/$main_weight,1);
$add_weight = " $sub_cat_weight %";
if (isset($this->params['export_pdf']) && $this->params['export_pdf']) {
$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 {
if (!isset($this->params['only_total_category']) || (isset($this->params['only_total_category']) && $this->params['only_total_category'] == false)) {
if (!isset($this->params['only_total_category']) ||
(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++) {
$item = $this->evals_links[$count + $items_start];
$item = $this->evals_links[$count + $items_start];
var_dump($item);
$weight = round(100*$item->get_weight()/$main_weight,1);
$headers[] = $item->get_name().' '.$weight.' % ';
$headers[] = $item->get_name().' '.$weight.' % ';
}
}
}
}
$headers[] = api_strtoupper(get_lang('GradebookQualificationTotal'));
return $headers;
}
function get_max_result_by_link($id) {
public function get_max_result_by_link($id)
{
$max = 0;
foreach ($this->users as $user) {
$item = $this->evals_links [$id];
$score = $item->calc_score($user[0]);
$item = $this->evals_links [$id];
$score = $item->calc_score($user[0]);
if ($score[0] > $max) {
$max = $score[0];
}
}
}
}
return $max ;
}
/**
* Get array containing evaluation items
*/
public function get_evaluation_items($items_start = 0, $items_count = null) {
public function get_evaluation_items($items_start = 0, $items_count = null)
{
$headers = array();
if (!isset($items_count)) {
$items_count = count($this->evals_links) - $items_start;
@ -167,7 +179,7 @@ class FlatViewDataGenerator
$headers[] = $item->get_name();
}
return $headers;
}
}
/**
* Get actual array data
@ -177,10 +189,15 @@ class FlatViewDataGenerator
* 2: user firstname
* 3+: evaluation/link scores
*/
public function get_data ($users_sorting = 0, $users_start = 0, $users_count = null,
$items_start = 0, $items_count = null,
$ignore_score_color = false, $show_all = false) {
public function get_data(
$users_sorting = 0,
$users_start = 0,
$users_count = null,
$items_start = 0,
$items_count = null,
$ignore_score_color = false,
$show_all = false
) {
// do some checks on users/items counts, redefine if invalid values
if (!isset($users_count)) {
$users_count = count ($this->users) - $users_start;
@ -286,7 +303,7 @@ class FlatViewDataGenerator
if ($export_to_pdf) {
if (api_is_western_name_order()) {
$row['firstname'] = $user[3];
$row['lastname'] = $user[2];
$row['lastname'] = $user[2];
} else {
$row['lastname'] = $user[2];
$row['firstname'] = $user[3];
@ -363,7 +380,7 @@ class FlatViewDataGenerator
$score = $item->calc_score($user_id);
$real_score = $score;
$divide = ( ($score[1])==0 ) ? 1 : $score[1];
//sub cat weight
$sub_cat_percentage = $sum_categories_weight_array[$item->get_category_id()];
@ -378,8 +395,8 @@ class FlatViewDataGenerator
$item_total += $item->get_weight();
/*
$complete_score = $scoredisplay->display_score($score, SCORE_DIV_PERCENT, SCORE_ONLY_SCORE);
$temp_score = $scoredisplay->display_score(array($item_value, null), SCORE_DIV_SIMPLE_WITH_CUSTOM);
$complete_score = $scoredisplay->display_score($score, SCORE_DIV_PERCENT, SCORE_ONLY_SCORE);
$temp_score = $scoredisplay->display_score(array($item_value, null), SCORE_DIV_SIMPLE_WITH_CUSTOM);
$temp_score = Display::tip($temp_score, $complete_score);*/
//if (true)
@ -394,14 +411,14 @@ class FlatViewDataGenerator
if (!isset($this->params['only_total_category']) || (isset($this->params['only_total_category']) && $this->params['only_total_category'] == false)) {
if (!$show_all) {
if (in_array($item->get_type() , array(LINK_EXERCISE, LINK_DROPBOX, LINK_STUDENTPUBLICATION,
if (in_array($item->get_type() , array(LINK_EXERCISE, LINK_DROPBOX, LINK_STUDENTPUBLICATION,
LINK_LEARNPATH, LINK_FORUM_THREAD, LINK_ATTENDANCE, LINK_SURVEY, LINK_HOTPOTATOES))) {
if (!empty($score[0])) {
$row[] = $temp_score.' ';
} else {
$row[] = '';
}
} else {
} else {
$row[] = $temp_score.' ';
}
} else {
@ -437,9 +454,9 @@ class FlatViewDataGenerator
/**
* Get actual array data evaluation/link scores
*/
public function get_evaluation_sumary_results ($session_id = null) {
$usertable = array ();
public function get_evaluation_sumary_results ($session_id = null)
{
$usertable = array();
foreach ($this->users as $user) { $usertable[] = $user; }
$selected_users = $usertable;
@ -450,7 +467,7 @@ class FlatViewDataGenerator
$row = array ();
for ($count=0;$count < count($this->evals_links); $count++) {
$item = $this->evals_links [$count];
$score = $item->calc_score($user[0]);
$score = $item->calc_score($user[0]);
$porcent_score = isset($score[1]) && $score[1] > 0 ? ($score[0]*100)/$score[1] :0;
$row[$item->get_name()] = $porcent_score;
}
@ -484,7 +501,11 @@ class FlatViewDataGenerator
return $result;
}
public function get_data_to_graph () {
/**
* @return array
*/
public function get_data_to_graph()
{
// do some checks on users/items counts, redefine if invalid values
$usertable = array ();
foreach ($this->users as $user) {
@ -494,7 +515,7 @@ class FlatViewDataGenerator
usort($usertable, array ('FlatViewDataGenerator','sort_by_first_name'));
$data = array ();
$selected_users = $usertable;
foreach ($selected_users as $user) {
$row = array ();
@ -505,19 +526,19 @@ class FlatViewDataGenerator
for ($count=0;$count < count($this->evals_links); $count++) {
$item = $this->evals_links[$count];
$score = $item->calc_score($user[0]);
$divide =( ($score[1])==0 ) ? 1 : $score[1];
$item_value += $score[0]/$divide*$item->get_weight();
$item_total += $item->get_weight();
$score_denom = ($score[1]==0) ? 1 : $score[1];
$score_final = ($score[0] / $score_denom) * 100;
$row[] = $score_final;
}
$total_score = array($item_value, $item_total);
$score_final = ($item_value / $item_total) * 100;
$row[] = $score_final;
$data[] = $row;
}
@ -526,10 +547,11 @@ class FlatViewDataGenerator
/**
* This is a function to show the generated data
* @param type $displayWarning
* @param bool $displayWarning
* @return array
*/
public function get_data_to_graph2 ($displayWarning = true) {
public function get_data_to_graph2($displayWarning = true)
{
// do some checks on users/items counts, redefine if invalid values
$usertable = array ();
foreach ($this->users as $user) {
@ -549,16 +571,13 @@ class FlatViewDataGenerator
$item_value = 0;
$item_total = 0;
$final_score = 0;
$item_value_total = 0;
$convert_using_the_global_weight = true;
$course_code = api_get_course_id();
$session_id = api_get_session_id();
$allcat = $this->category->get_subcategories(null, $course_code, $session_id, 'ORDER BY id');
if ($parent_id == 0 && !empty($allcat)) {
foreach ($allcat as $sub_cat) {
@ -570,21 +589,16 @@ class FlatViewDataGenerator
$sub_cat_percentage = $sum_categories_weight_array[$sub_cat->get_id()];
$item_value = $score[0]/$divide*$main_weight;
$item_total += $sub_cat->get_weight();
$row[] = array ($item_value, trim($scoredisplay->display_score($real_score, SCORE_CUSTOM,null, true)));
$row[] = array ($item_value, trim($scoredisplay->display_score($real_score, SCORE_CUSTOM,null, true)));
$item_value_total += $item_value;
$final_score += $score[0];
//$final_score = ($final_score / $item_total) * 100;
}
$total_score = array($final_score, $item_total);
$row[] = array ($final_score, trim($scoredisplay->display_score($total_score, SCORE_CUSTOM, null, true)));
} else {
for ($count=0;$count < count($this->evals_links); $count++) {
$item = $this->evals_links [$count];
$score = $item->calc_score($user[0]);
@ -594,7 +608,7 @@ class FlatViewDataGenerator
$score_denom=($score[1]==0) ? 1 : $score[1];
$score_final = ($score[0] / $score_denom) * 100;
$row[] = array ($score_final, trim($scoredisplay->display_score($score, SCORE_CUSTOM,null, true)));
}
$total_score=array($item_value,$item_total);
$score_final = ($item_value / $item_total) * 100;
@ -602,20 +616,20 @@ class FlatViewDataGenerator
Display::display_warning_message( Display::display_warning_message($total_score[1]));
}
$row[] =array ($score_final, trim($scoredisplay->display_score($total_score, SCORE_CUSTOM, null, true)));
}
$data[] = $row;
}
return $data;
}
// Sort functions - used internally
function sort_by_last_name($item1, $item2) {
public function sort_by_last_name($item1, $item2)
{
return api_strcmp($item1[2], $item2[2]);
}
function sort_by_first_name($item1, $item2) {
public function sort_by_first_name($item1, $item2)
{
return api_strcmp($item1[3], $item2[3]);
}
}

Loading…
Cancel
Save