Browse Source

Fixing session special page see BT#8700

Julio Montoya 10 years ago
parent
commit
f168c7253a
3 changed files with 19 additions and 26 deletions
  1. 17 22
      main/inc/ajax/course_home.ajax.php
  2. 2 0
      main/inc/lib/main_api.lib.php
  3. 0 4
      main/inc/lib/tracking.lib.php

+ 17 - 22
main/inc/ajax/course_home.ajax.php

@@ -5,7 +5,6 @@
  * Responses to AJAX calls
 */
 $action = $_GET['a'];
-$now = time();
 
 switch ($action) {
 	case 'set_visibility':
@@ -108,10 +107,11 @@ switch ($action) {
 
         require_once '../global.inc.php';
         require_once api_get_path(SYS_CODE_PATH).'newscorm/learnpathList.class.php';
-
+        $now = time();
         $page  = intval($_REQUEST['page']);     //page
         $limit = intval($_REQUEST['rows']);     // quantity of rows
-        $sidx  = $_REQUEST['sidx'];    //index to filter
+        //index to filter
+        $sidx  = isset($_REQUEST['sidx']) && !empty($_REQUEST['sidx']) ? $_REQUEST['sidx'] : 'id';
         $sord  = $_REQUEST['sord'];    //asc or desc
         if (!in_array($sord, array('asc','desc'))) {
         	$sord = 'desc';
@@ -133,9 +133,6 @@ switch ($action) {
             }
         }
 
-        if (!$sidx) {
-            $sidx = 1;
-        }
         $start = $limit*$page - $limit;
         $course_list = SessionManager::get_course_list_by_session_id($session_id);
         $count = 0;
@@ -232,16 +229,16 @@ switch ($action) {
         $response->records = $count;
         echo json_encode($response);
         break;
-
     case 'session_courses_lp_by_week':
-
         require_once '../global.inc.php';
         require_once api_get_path(SYS_CODE_PATH).'newscorm/learnpathList.class.php';
+        $now = time();
 
         $page  = intval($_REQUEST['page']);     //page
         $limit = intval($_REQUEST['rows']);     // quantity of rows
-        $sidx  = $_REQUEST['sidx'];    //index to filter
-        if (empty($sidx)) $sidx = 'course';
+        $sidx  = isset($_REQUEST['sidx']) && !empty($_REQUEST['sidx']) ? $_REQUEST['sidx'] : 'course';
+        $sidx = str_replace(array('week desc,', ' '), '', $sidx);
+
         $sord  = $_REQUEST['sord'];    //asc or desc
         if (!in_array($sord, array('asc','desc'))) {
             $sord = 'desc';
@@ -280,7 +277,7 @@ switch ($action) {
             $lps[$item['code']] = $flat_list;
             $item['title'] = Display::url($item['title'],api_get_path(WEB_COURSE_PATH).$item['directory'].'/?id_session='.$session_id,array('target'=>SESSION_LINK_TARGET));
 
-            foreach($flat_list as $lp_id => $lp_item) {
+            foreach ($flat_list as $lp_id => $lp_item) {
                 $temp[$count]['id']= $lp_id;
                 $lp_url = api_get_path(WEB_CODE_PATH).'newscorm/lp_controller.php?cidReq='.$item['code'].'&id_session='.$session_id.'&lp_id='.$lp_id.'&action=view';
 
@@ -327,8 +324,9 @@ switch ($action) {
                 $count++;
             }
         }
-
-        $temp = msort($temp, $sidx, $sord);
+        if (!empty($sidx)) {
+            $temp = msort($temp, $sidx, $sord);
+        }
 
         $response = new stdClass();
         $i =0;
@@ -360,10 +358,12 @@ switch ($action) {
     case 'session_courses_lp_by_course':
         require_once '../global.inc.php';
         require_once api_get_path(SYS_CODE_PATH).'newscorm/learnpathList.class.php';
-
+        $now = time();
         $page  = intval($_REQUEST['page']);     //page
         $limit = intval($_REQUEST['rows']);     // quantity of rows
-        $sidx  = $_REQUEST['sidx'];    //index to filter
+        $sidx = isset($_REQUEST['sidx']) && !empty($_REQUEST['sidx']) ? $_REQUEST['sidx'] : 'id';
+        $sidx = str_replace(array('course asc,', ' '), '', $sidx);
+
         $sord  = $_REQUEST['sord'];    //asc or desc
         if (!in_array($sord, array('asc','desc'))) {
             $sord = 'desc';
@@ -384,13 +384,8 @@ switch ($action) {
             }
         }
 
-        if (!$sidx) {
-            $sidx = 1;
-        }
-
         $start = $limit*$page - $limit;
         $course_list = SessionManager::get_course_list_by_session_id($session_id);
-
         $count = 0;
 
         foreach ($course_list as $item) {
@@ -457,12 +452,12 @@ switch ($action) {
 
         $response = new stdClass();
         $i =0;
-        foreach($temp as $key=>$row) {
+        foreach ($temp as $key=>$row) {
             $row = $row['cell'];
             if (!empty($row)) {
                 if ($key >= $start  && $key < ($start + $limit)) {
                     $response->rows[$i]['id']= $key;
-                    $response->rows[$i]['cell']=array($row[0], $row[1], $row[2],$row[3]);
+                    $response->rows[$i]['cell']=array($row[0], $row[1], $row[2]);
                     $i++;
                 }
             }

+ 2 - 0
main/inc/lib/main_api.lib.php

@@ -69,6 +69,8 @@ define('SESSION_VISIBLE', 2);
 define('SESSION_INVISIBLE', 3); // not available
 define('SESSION_AVAILABLE', 4);
 
+define('SESSION_LINK_TARGET','_self');
+
 define('SUBSCRIBE_ALLOWED', 1);
 define('SUBSCRIBE_NOT_ALLOWED', 0);
 define('UNSUBSCRIBE_ALLOWED', 1);

+ 0 - 4
main/inc/lib/tracking.lib.php

@@ -7,10 +7,6 @@
  *    @package chamilo.library
  *    @author Julio Montoya <gugli100@gmail.com> (Score average fixes)
  */
-/**
- * Code
- */
-define('SESSION_LINK_TARGET','_self');
 
 require_once api_get_path(SYS_CODE_PATH).'exercice/exercise.lib.php';
 require_once api_get_path(SYS_CODE_PATH).'newscorm/learnpathList.class.php';