浏览代码

Fix returnCourses function in user_portal.php that doesn't show the welcome message if isn't subscribe in a course

José Loguercio 8 年之前
父节点
当前提交
5ed3899c98
共有 2 个文件被更改,包括 15 次插入11 次删除
  1. 11 9
      main/inc/lib/course.lib.php
  2. 4 2
      main/inc/lib/userportal.lib.php

+ 11 - 9
main/inc/lib/course.lib.php

@@ -3466,29 +3466,30 @@ class CourseManager
                 ORDER BY sort ASC";
         $result = Database::query($sql);
         $courseCount = 0;
-        $listItems = array();
+        $listItems = [];
         while ($row = Database::fetch_array($result)) {
             // We simply display the title of the category.
             $courseInCategory = self:: returnCoursesCategories(
                 $row['id'],
                 $load_dirs
             );
-            if (empty($courseInCategory)) {
-                $courseInCategory = null;
-            }
-            $params = array(
+
+            $params = [
                 'id_category' => $row ['id'],
                 'title_category' => $row['title'],
                 'courses' => $courseInCategory
-            );
+            ];
             $courseCount ++;
             $listItems['in_category'][$courseCount] = $params;
         }
+
         // Step 2: We display the course without a user category.
-        $courseInCategory = self::returnCoursesWithoutCategories(0, $load_dirs);
-        $listItems['not_category'] = $courseInCategory;
+        $coursesNotCategory = self::returnCoursesWithoutCategories(0, $load_dirs);
+        if ($coursesNotCategory) {
+            $listItems['not_category'] = $coursesNotCategory;
+        }
 
-        return $listItems;       
+        return $listItems;
     }
     
     /**
@@ -3627,6 +3628,7 @@ class CourseManager
         $TABLECOURSUSER = Database:: get_main_table(TABLE_MAIN_COURSE_USER);
         $TABLE_ACCESS_URL_REL_COURSE = Database:: get_main_table(TABLE_MAIN_ACCESS_URL_REL_COURSE);
         $current_url_id = api_get_current_access_url_id();
+        $courseList = [];
 
         // Get course list auto-register
         $special_course_list = self::get_special_course_list();

+ 4 - 2
main/inc/lib/userportal.lib.php

@@ -1056,12 +1056,14 @@ class IndexManager
                 $user_id,
                 $this->load_directories_preview
             );
+
             $this->tpl->assign('special_courses', $specialCourses);
             $this->tpl->assign('courses', $courses);
-            if (isset($_configuration['view_grid_courses']) && $_configuration['view_grid_courses']) {
+            $listCourse = '';
+            if (api_get_configuration_value('view_grid_courses') && ($courses || $specialCourses)) {
                 $listCourse = $this->tpl->fetch(
                 $this->tpl->get_template('/user_portal/grid_courses.tpl'));
-            } else {
+            } else if ($courses || $specialCourses) {
                 $listCourse = $this->tpl->fetch(
                 $this->tpl->get_template('/user_portal/classic_courses.tpl'));
             }