Example #1
0
/**
 * Add the default blocks to a course.
 *
 * @param object $course a course object.
 */
function blocks_add_default_course_blocks($course)
{
    global $CFG;
    if (!empty($CFG->defaultblocks_override)) {
        $blocknames = blocks_parse_default_blocks_list($CFG->defaultblocks_override);
    } else {
        if ($course->id == SITEID) {
            $blocknames = blocks_get_default_site_course_blocks();
        } else {
            if (!empty($CFG->{'defaultblocks_' . $course->format})) {
                $blocknames = blocks_parse_default_blocks_list($CFG->{'defaultblocks_' . $course->format});
            } else {
                $blocknames = course_get_format($course)->get_default_blocks();
            }
        }
    }
    if ($course->id == SITEID) {
        $pagetypepattern = 'site-index';
    } else {
        $pagetypepattern = 'course-view-*';
    }
    $page = new moodle_page();
    $page->set_course($course);
    $page->blocks->add_blocks($blocknames, $pagetypepattern);
}
Example #2
0
 /**
  * Returns the list of blocks to be automatically added on the site frontpage when moodle is installed
  *
  * @return array of default blocks, must contain two keys BLOCK_POS_LEFT and BLOCK_POS_RIGHT
  *     each of values is an array of block names (for left and right side columns)
  */
 public function get_default_blocks()
 {
     return blocks_get_default_site_course_blocks();
 }
Example #3
0
/**
 * Add the default blocks to a course.
 *
 * @param object $course a course object.
 */
function blocks_add_default_course_blocks($course)
{
    global $CFG;
    if (!empty($CFG->defaultblocks_override)) {
        $blocknames = blocks_parse_default_blocks_list($CFG->defaultblocks_override);
    } else {
        if ($course->id == SITEID) {
            $blocknames = blocks_get_default_site_course_blocks();
        } else {
            $defaultblocks = 'defaultblocks_' . $course->format;
            if (!empty($CFG->{$defaultblocks})) {
                $blocknames = blocks_parse_default_blocks_list($CFG->{$defaultblocks});
            } else {
                $formatconfig = $CFG->dirroot . '/course/format/' . $course->format . '/config.php';
                $format = array();
                // initialize array in external file
                if (is_readable($formatconfig)) {
                    include $formatconfig;
                }
                if (!empty($format['defaultblocks'])) {
                    $blocknames = blocks_parse_default_blocks_list($format['defaultblocks']);
                } else {
                    if (!empty($CFG->defaultblocks)) {
                        $blocknames = blocks_parse_default_blocks_list($CFG->defaultblocks);
                    } else {
                        $blocknames = array(BLOCK_POS_LEFT => array(), BLOCK_POS_RIGHT => array('search_forums', 'news_items', 'calendar_upcoming', 'recent_activity'));
                    }
                }
            }
        }
    }
    if ($course->id == SITEID) {
        $pagetypepattern = 'site-index';
    } else {
        $pagetypepattern = 'course-view-*';
    }
    $page = new moodle_page();
    $page->set_course($course);
    $page->blocks->add_blocks($blocknames, $pagetypepattern);
}