From ee971bdf03b9dbdbff19bd99846ec41f1b158dcf Mon Sep 17 00:00:00 2001 From: Julio Montoya Date: Wed, 12 Sep 2012 11:22:30 +0200 Subject: [PATCH] Minor UI changes --- main/admin/session_add.php | 5 ++-- main/admin/session_course_edit.php | 24 +++++++-------- main/inc/lib/sortable_table.class.php | 43 ++++++++++++++++++++++++--- main/inc/lib/usermanager.lib.php | 23 +++++++++----- main/mySpace/index.php | 25 ++++++++-------- main/mySpace/myspace.lib.php | 3 +- 6 files changed, 82 insertions(+), 41 deletions(-) diff --git a/main/admin/session_add.php b/main/admin/session_add.php index a8ff0c3483..adcf9b748b 100644 --- a/main/admin/session_add.php +++ b/main/admin/session_add.php @@ -220,8 +220,6 @@ if (!empty($categories)) { } } -//Categories -$form->addElement('select', 'session_category_id', get_lang('SessionCategory'), $select_categories, array('id' => 'session_category_id', 'class' => 'chzn-select')); //Coaches //$coaches = SessionManager::get_user_list(); @@ -251,6 +249,9 @@ $form->addElement('text', 'coach_access_start_date', array(get_lang('SessionCoac $form->addElement('text', 'coach_access_end_date', array(get_lang('SessionCoachEndDate'), get_lang('SessionCoachEndDateComment')), array('id' => 'coach_access_end_date')); $form->addRule(array('coach_access_start_date', 'coach_access_end_date'), get_lang('StartDateMustBeBeforeTheEndDate'), 'compare_datetime_text', '< allow_empty'); +//Session categories +$form->addElement('select', 'session_category_id', get_lang('SessionCategory'), $select_categories, array('id' => 'session_category_id_name', 'class' => null)); + $session_field = new SessionField(); $session_field->add_elements($form, $id); diff --git a/main/admin/session_course_edit.php b/main/admin/session_course_edit.php index b8ccf4c2a7..cf97c1fba3 100644 --- a/main/admin/session_course_edit.php +++ b/main/admin/session_course_edit.php @@ -13,10 +13,10 @@ require_once '../inc/global.inc.php'; $id_session = intval($_GET['id_session']); SessionManager::protect_session_edit($id_session); -$course_code=trim(stripslashes($_GET['course_code'])); +$course_code = Database::escape_string($_GET['course_code']); -$formSent=0; -$errorMsg=''; +$formSent = 0; +$errorMsg = ''; // Database Table Definitions $tbl_user = Database::get_main_table(TABLE_MAIN_USER); @@ -26,14 +26,15 @@ $tbl_session_course = Database::get_main_table(TABLE_MAIN_SESSION_COURSE); $tbl_session_rel_course_rel_user = Database::get_main_table(TABLE_MAIN_SESSION_COURSE_USER); $course_info=api_get_course_info($_REQUEST['course_code']); -$tool_name=$course_info['name']; +$tool_name = $course_info['name']; $interbreadcrumb[]=array('url' => 'index.php',"name" => get_lang('PlatformAdmin')); $interbreadcrumb[]=array('url' => "session_list.php","name" => get_lang("SessionList")); $interbreadcrumb[]=array('url' => "resume_session.php?id_session=".$id_session,"name" => get_lang('SessionOverview')); $interbreadcrumb[]=array('url' => "session_course_list.php?id_session=$id_session","name" =>api_htmlentities($session_name,ENT_QUOTES,$charset)); -$result = Database::query("SELECT s.name, c.title FROM $tbl_session_course sc,$tbl_session s,$tbl_course c WHERE sc.id_session=s.id AND sc.course_code=c.code AND sc.id_session='$id_session' AND sc.course_code='".addslashes($course_code)."'"); +$result = Database::query("SELECT s.name, c.title FROM $tbl_session_course sc,$tbl_session s,$tbl_course c + WHERE sc.id_session=s.id AND sc.course_code=c.code AND sc.id_session='$id_session' AND sc.course_code='".$course_code."'"); if (!list($session_name,$course_title)=Database::fetch_row($result)) { header('Location: session_course_list.php?id_session='.$id_session); @@ -68,7 +69,7 @@ if ($_POST['formSent']) { $array_intersect = array_diff($coachs_course_session,$id_coachs); foreach ($array_intersect as $nocoach_user_id) { - $rs2 = SessionManager::set_coach_to_course_session($nocoach_user_id, $id_session, $course_code,true); + $rs2 = SessionManager::set_coach_to_course_session($nocoach_user_id, $id_session, $course_code, true); } header('Location: '.Security::remove_XSS($_GET['page']).'?id_session='.$id_session); @@ -96,19 +97,18 @@ if ($_configuration['multiple_access_urls']) { $sql="SELECT user_id,lastname,firstname,username FROM $tbl_user WHERE status='1'".$order_clause; } -$result=Database::query($sql); +$result = Database::query($sql); -$coaches=Database::store_result($result); +$coaches = Database::store_result($result); Display::display_header($tool_name); -$tool_name=get_lang('ModifySessionCourse'); -api_display_tool_title($tool_name); +$tool_name = get_lang('ModifySessionCourse'); +echo Display::page_header($tool_name); ?>
- - +
'data_table')); + public function __construct($table_name = 'table', $get_total_number_function = null, $get_data_function = null, $default_column = 1, $default_items_per_page = 20, $default_order_direction = 'ASC', $table_id = null) { + if (empty($table_id)) { + $table_id = $table_name.uniqid(); + } + $this->table_id = $table_id; + parent :: __construct (array('class' => 'data_table', 'id' => $table_id)); $this->table_name = $table_name; $this->additional_parameters = array (); $this->param_prefix = $table_name.'_'; @@ -125,7 +135,6 @@ class SortableTable extends HTML_Table { //$this->direction = isset ($_SESSION[$this->param_prefix.'direction']) ? $_SESSION[$this->param_prefix.'direction'] : $default_order_direction; - if (isset($_SESSION[$this->param_prefix.'direction'])) { $my_session_direction = $_SESSION[$this->param_prefix.'direction']; if (!in_array($my_session_direction, array('ASC', 'DESC'))) { @@ -208,6 +217,8 @@ class SortableTable extends HTML_Table { } return $this->pager; } + + public function display() { echo $this->return_table(); @@ -249,9 +260,32 @@ class SortableTable extends HTML_Table { $html .= ''; $html .= '
'; } + $col = array(); + $colModel = array(); + foreach($this->headers as $key => $value) { + $col[] = $value; + $colModel[] = array('name' => "$key", 'index' => "$key"); + } + $col = json_encode($col); + $colModel = json_encode($colModel); + $colModel = str_replace('"name"', 'name', $colModel); + $colModel = str_replace('"index"', 'index', $colModel); + + if ($this->use_jqgrid) { + $html .= ''; + } if (count($this->form_actions) > 0) { - $html .= ''; if (!$export_csv) { Display :: display_header($nameTools); @@ -396,9 +400,7 @@ if ((api_is_allowed_to_create_course() || api_is_drh()) && in_array($view, array //Courses if ($count_courses) { - echo Display::page_subheader($title); - $table = new SortableTable('courses_my_space', 'get_number_of_courses', array('MySpace','get_course_data')); $parameters['view'] = 'teacher'; $parameters['class'] = 'data_table'; @@ -431,7 +433,7 @@ if ((api_is_allowed_to_create_course() || api_is_drh()) && in_array($view, array echo Display::page_subheader(' '.get_lang('Sessions').' ('.$count_sessions.')'); - $table = new SortableTable('tracking_sessions_myspace', 'count_sessions_coached'); + $table = new SortableTable('tracking_sessions_myspace', 'count_sessions_coached', null, 1, 20, 'ASC', 'tracking_sessions_myspace'); $table->set_header(0, get_lang('Title'), false); $table->set_header(1, get_lang('SessionDisplayStartDate'), false); $table->set_header(2, get_lang('SessionDisplayEndDate'), false); @@ -459,8 +461,10 @@ if ((api_is_allowed_to_create_course() || api_is_drh()) && in_array($view, array $all_data[] = $row; } + $table->use_jqgrid = true; + $tracking_column = 1; - usort($all_data, 'sort_sessions'); + usort($all_data, 'sort_sessions'); /* if (isset($_GET['tracking_direction']) && $_GET['tracking_direction'] == 'DESC') { usort($all_data, 'rsort_sessions'); @@ -473,7 +477,7 @@ if ((api_is_allowed_to_create_course() || api_is_drh()) && in_array($view, array } */ foreach ($all_data as $row) { - $table -> addRow($row); + $table->addRow($row); } /* Start session over view stats */ @@ -509,12 +513,6 @@ if ((api_is_allowed_to_create_course() || api_is_drh()) && in_array($view, array $csv_content[] = array(get_lang('NbStudentPerSession', '').';'.$nb_students_per_session); $csv_content[] = array(); } else { - // html part - - /* - '.get_lang('NbFutureSessions').' - '.$nb_sessions_future.' - */ echo '
@@ -529,8 +527,9 @@ if ((api_is_allowed_to_create_course() || api_is_drh()) && in_array($view, array
'; } - /* End session overview */ - $table -> display(); + $table->display(); + + /* End session overview */ } } diff --git a/main/mySpace/myspace.lib.php b/main/mySpace/myspace.lib.php index f898cae119..d3fa363513 100644 --- a/main/mySpace/myspace.lib.php +++ b/main/mySpace/myspace.lib.php @@ -1219,7 +1219,7 @@ class MySpace { * Get data for courses list in sortable with pagination * @return array */ - function get_course_data($from, $number_of_items, $column, $direction) { + static function get_course_data($from, $number_of_items, $column, $direction) { global $courses, $csv_content, $charset, $session_id; // definition database tables @@ -1227,7 +1227,6 @@ class MySpace { $tbl_course_user = Database :: get_main_table(TABLE_MAIN_COURSE_USER); $tbl_session_course_user = Database :: get_main_table(TABLE_MAIN_SESSION_COURSE_USER); - $a_course_students = array(); $course_data = array(); $courses_code = array_keys($courses);