コード例 #1
0
function local_catalog_get_course_tiles($section_id)
{
    global $OUTPUT;
    global $CFG;
    global $USER;
    $courses = local_catalog_get_section_courses($section_id);
    $cols = 3;
    $ret = 4;
    if (count($courses) == 1) {
        $cols = 12;
        $ret = 1;
    }
    if (count($courses) % 3 == 0) {
        $cols = 4;
        $ret = 3;
    }
    if (count($courses) == 5) {
        $cols = 4;
        $ret = 3;
    }
    if (count($courses) == 2 || count($courses) == 4) {
        $cols = 6;
        $ret = 2;
    }
    $data = new stdClass();
    $i = 0;
    foreach ($courses as $c) {
        $cd = new stdClass();
        $cd->name = $c['name'];
        $cd->id = $c['id'];
        $cd->thumbnail = $c['thumbnail'];
        if (is_numeric($c['redirect_courseid']) && $c['redirect_courseid'] > 0) {
            $cd->redirect_courseid = $c['redirect_courseid'];
            if ($c['redirect_if_enrolled'] == 1) {
                $context = context_course::instance($cd->redirect_courseid);
                if (!is_enrolled($context, $USER->id, '', true)) {
                    unset($cd->redirect_courseid);
                }
            }
        }
        $cd->wwwroot = $CFG->wwwroot;
        $cd->section_id = $section_id;
        $data->courses[$i]['course'] = $OUTPUT->render_from_template('local_catalog/course_tile', $cd);
        if (($i + 1) % $ret == 0) {
            $data->courses[$i]['return'] = true;
        }
        $i++;
    }
    if (isset($data->courses[count($data->courses) - 1]['return'])) {
        unset($data->courses[count($data->courses) - 1]['return']);
    }
    $data->wwwroot = $CFG->wwwroot;
    $data->cols = $cols;
    return $OUTPUT->render_from_template('local_catalog/course_list', $data);
}
コード例 #2
0
if ($displayedit) {
    if (isset($section_id)) {
        $id = $section_id;
    } else {
        $id = required_param('id', PARAM_INT);
    }
    $record = $DB->get_record('local_catalog_sections', array('id' => $id), '*', MUST_EXIST);
    $editform = new local_catalog_section_edit(new moodle_url($returnurl, array('action' => 'editsection', 'id' => $id)), array('record' => $record));
    $courseform = new local_catalog_section_addcourse(new moodle_url($returnurl, array('action' => 'courseadd', 'section_id' => $id)));
    $data = new stdClass();
    $data->sesskey = sesskey();
    $data->deleteicon = html_writer::empty_tag('img', array('src' => $OUTPUT->pix_url('t/delete'), 'alt' => get_string('delete'), 'class' => 'iconsmall'));
    $data->editicon = html_writer::empty_tag('img', array('src' => $OUTPUT->pix_url('i/edit'), 'alt' => get_string('edit'), 'class' => 'iconsmall'));
    $data->upicon = html_writer::empty_tag('img', array('src' => $OUTPUT->pix_url('t/up'), 'alt' => get_string('up'), 'class' => 'iconsmall'));
    $data->downicon = html_writer::empty_tag('img', array('src' => $OUTPUT->pix_url('t/down'), 'alt' => get_string('down'), 'class' => 'iconsmall'));
    $PAGE->set_title($record->name);
    $PAGE->navbar->add($record->name, new moodle_url('/local/catalog/section_setup.php', array('id' => $id, 'action' => 'editsection')), global_navigation::TYPE_CUSTOM);
    $data->header = $OUTPUT->header();
    $data->heading = $OUTPUT->heading($record->name);
    $data->footer = $OUTPUT->footer();
    $data->editform = $editform->render();
    $data->courseform = $courseform->render();
    $data->courses = local_catalog_get_section_courses($id);
    if (count($data->courses) > 0) {
        $data->hascourses = true;
        $data->courses[0]['first'] = true;
        $data->courses[count($data->courses) - 1]['last'] = true;
    }
    $data->section_id = $id;
    echo $OUTPUT->render_from_template('local_catalog/section_edit', $data);
}