MDL-37009 function print_course_search() is moved to course renderer
[moodle.git] / course / index.php
1 <?php
3 // This file is part of Moodle - http://moodle.org/
4 //
5 // Moodle is free software: you can redistribute it and/or modify
6 // it under the terms of the GNU General Public License as published by
7 // the Free Software Foundation, either version 3 of the License, or
8 // (at your option) any later version.
9 //
10 // Moodle is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 // GNU General Public License for more details.
14 //
15 // You should have received a copy of the GNU General Public License
16 // along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
18 /**
19  * Lists the course categories
20  *
21  * @copyright 1999 Martin Dougiamas  http://dougiamas.com
22  * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
23  * @package course
24  */
26 require_once("../config.php");
27 require_once("lib.php");
29 $site = get_site();
31 $systemcontext = context_system::instance();
33 $PAGE->set_url('/course/index.php');
34 $PAGE->set_context($systemcontext);
35 $PAGE->set_pagelayout('admin');
36 $courserenderer = $PAGE->get_renderer('core', 'course');
38 if ($CFG->forcelogin) {
39     require_login();
40 }
42 $countcategories = $DB->count_records('course_categories');
43 if (can_edit_in_category()) {
44     $managebutton = $OUTPUT->single_button(new moodle_url('/course/manage.php'),
45                     get_string('managecourses'), 'get');
46 }
48 $showaddcoursebutton = true;
49 if ($countcategories > 1 || ($countcategories == 1 && $DB->count_records('course') > 200)) {
50     $strcategories = get_string('categories');
52     $PAGE->set_title("$site->shortname: $strcategories");
53     $PAGE->set_heading($COURSE->fullname);
54     if (isset($managebutton)) {
55         $PAGE->set_button($managebutton);
56     }
57     echo $OUTPUT->header();
58     echo $OUTPUT->heading($strcategories);
59     echo $OUTPUT->skip_link_target();
60     echo $OUTPUT->box_start('categorybox');
61     print_whole_category_list();
62     echo $OUTPUT->box_end();
63     echo $courserenderer->course_search_form();
64 } else {
65     $strfulllistofcourses = get_string('fulllistofcourses');
67     $PAGE->set_title("$site->shortname: $strfulllistofcourses");
68     $PAGE->set_heading($COURSE->fullname);
69     if (isset($managebutton)) {
70         $PAGE->set_button($managebutton);
71     }
72     echo $OUTPUT->header();
73     echo $OUTPUT->skip_link_target();
74     echo $OUTPUT->box_start('courseboxes');
75     $showaddcoursebutton = print_courses(0);
76     echo $OUTPUT->box_end();
77 }
79 echo $OUTPUT->container_start('buttons');
80 if (has_capability('moodle/course:create', $systemcontext) && $showaddcoursebutton) {
81     // Print link to create a new course, for the 1st available category.
82     $options = array('category' => $CFG->defaultrequestcategory, 'returnto' => 'topcat');
83     echo $OUTPUT->single_button(new moodle_url('edit.php', $options), get_string('addnewcourse'), 'get');
84 }
85 print_course_request_buttons($systemcontext);
86 echo $OUTPUT->container_end();
87 echo $OUTPUT->footer();