Proyectos de Subversion Moodle

Rev

Rev 1453 | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 1453 Rev 1482
Línea 3... Línea 3...
3
 
3
 
Línea 4... Línea 4...
4
use core_completion\progress;
4
use core_completion\progress;
5
 
5
 
-
 
6
global $CFG;
-
 
7
require_once $CFG->libdir . '/externallib.php';
6
global $CFG;
8
require_once $CFG->libdir . '/weblib.php';
7
require_once $CFG->libdir . '/externallib.php';
9
require_once $CFG->libdir . '/accesslib.php';
8
require_once $CFG->dirroot . '/course/classes/category.php';
10
require_once $CFG->dirroot . '/course/classes/category.php';
Línea 9... Línea 11...
9
require_once $CFG->dirroot . '/blocks/moodleblock.class.php';
11
require_once $CFG->dirroot . '/blocks/moodleblock.class.php';
Línea 107... Línea 109...
107
 
109
 
108
    public static function get_cursos_catalogo_parameters()
110
    public static function get_cursos_catalogo_parameters()
109
    {
111
    {
110
        return new \external_function_parameters([
112
        return new \external_function_parameters([
-
 
113
            'category_id' => new \external_value(PARAM_INT, 'Categoría de los Cursos', VALUE_DEFAULT, 0),
111
            'category_id' => new \external_value(PARAM_INT, 'Categoría de los Cursos', VALUE_DEFAULT, 0),
114
            // Permitir espacios y signos de puntuación básicos en la búsqueda
112
            'search_text' => new \external_value(PARAM_ALPHANUM, 'Palabra de busqueda', VALUE_DEFAULT, ' '),
115
            'search_text' => new \external_value(PARAM_TEXT, 'Palabra de busqueda', VALUE_DEFAULT, ''),
113
            'page' => new \external_value(PARAM_INT, 'Número de página', VALUE_DEFAULT, 1),
116
            'page' => new \external_value(PARAM_INT, 'Número de página', VALUE_DEFAULT, 1),
114
            'perpage' => new \external_value(PARAM_INT, 'Cursos por página', VALUE_DEFAULT, 10)
117
            'perpage' => new \external_value(PARAM_INT, 'Cursos por página', VALUE_DEFAULT, 10)
115
        ]);
118
        ]);
Línea 119... Línea 122...
119
    {
122
    {
120
        global $USER, $DB, $CFG, $OUTPUT, $PAGE;
123
        global $USER, $DB, $CFG, $OUTPUT, $PAGE;
Línea 121... Línea 124...
121
 
124
 
Línea 122... Línea 125...
122
        $params = self::validate_parameters(self::get_cursos_catalogo_parameters(), compact('category_id', 'search_text', 'page', 'perpage'));
125
        $params = self::validate_parameters(self::get_cursos_catalogo_parameters(), compact('category_id', 'search_text', 'page', 'perpage'));
123
 
126
 
Línea 124... Línea 127...
124
        $page = max(1, $params['page']);
127
        $page = max(1, (int) $params['page']);
125
        $perpage = max(10, $params['perpage']);
128
        $perpage = max(1, (int) $params['perpage']);
Línea 126... Línea 129...
126
 
129
 
Línea 171... Línea 174...
171
                    ]);
174
                    ]);
172
                    foreach ($recordsLevel2 as $recordLevel2) {
175
                    foreach ($recordsLevel2 as $recordLevel2) {
173
                        array_push($categories_ids, $recordLevel2->id);
176
                        array_push($categories_ids, $recordLevel2->id);
Línea 174... Línea 177...
174
 
177
 
175
                        $recordsLevel3 = $DB->get_records('course_categories', [
178
                        $recordsLevel3 = $DB->get_records('course_categories', [
176
                            'visible' => 2,
179
                            'visible' => 1,
177
                            'parent' => $recordLevel2->id
180
                            'parent' => $recordLevel2->id
178
                        ]);
181
                        ]);
179
                        foreach ($recordsLevel3 as $recordLevel3) {
182
                        foreach ($recordsLevel3 as $recordLevel3) {
180
                            array_push($categories_ids, $recordLevel3->id);
183
                            array_push($categories_ids, $recordLevel3->id);
Línea 236... Línea 239...
236
        /*
239
        /*
237
         * $searchterms = array();
240
         * $searchterms = array();
238
         * $sort = "c.sortorder DESC";
241
         * $sort = "c.sortorder DESC";
239
         */
242
         */
Línea 240... Línea 243...
240
 
243
 
241
        $total_courses = count($mycourses);
244
        $total_courses = is_array($mycourses) ? count($mycourses) : 0;
242
        $total_pages = ceil($total_courses / $perpage);
245
        $total_pages = ceil($total_courses / $perpage);
243
        if ($total_pages * $perpage < $total_courses) {
246
        if ($total_pages * $perpage < $total_courses) {
244
            $total_pages++;
247
            $total_pages++;
Línea 334... Línea 337...
334
                    'forceview' => 1
337
                    'forceview' => 1
335
                ));
338
                ));
336
                break;
339
                break;
337
            }
340
            }
Línea -... Línea 341...
-
 
341
 
-
 
342
            if (empty($viewurl)) {
-
 
343
                $viewurl = new moodle_url('/course/view.php', array('id' => $course->id));
-
 
344
            }
338
 
345
 
Línea 339... Línea 346...
339
            $summary = trim(strip_tags($course->summary));
346
            $summary = trim(strip_tags($course->summary));
340
 
347
 
341
            if (empty($summary)) {
348
            if (empty($summary)) {