MDL-38788 behat: Generic form elements interaction compatibile with JS disabled
[moodle.git] / blocks / course_summary / block_course_summary.php
1 <?php
3 class block_course_summary extends block_base {
4     function init() {
5         $this->title = get_string('pluginname', 'block_course_summary');
6     }
8     function applicable_formats() {
9         return array('all' => true, 'mod' => false, 'tag' => false, 'my' => false);
10     }
12     function specialization() {
13         if($this->page->pagetype == PAGE_COURSE_VIEW && $this->page->course->id != SITEID) {
14             $this->title = get_string('coursesummary', 'block_course_summary');
15         }
16     }
18     function get_content() {
19         global $CFG, $OUTPUT;
21         require_once($CFG->libdir . '/filelib.php');
23         if($this->content !== NULL) {
24             return $this->content;
25         }
27         if (empty($this->instance)) {
28             return '';
29         }
31         $this->content = new stdClass();
32         $options = new stdClass();
33         $options->noclean = true;    // Don't clean Javascripts etc
34         $options->overflowdiv = true;
35         $context = context_course::instance($this->page->course->id);
36         $this->page->course->summary = file_rewrite_pluginfile_urls($this->page->course->summary, 'pluginfile.php', $context->id, 'course', 'summary', NULL);
37         $this->content->text = format_text($this->page->course->summary, $this->page->course->summaryformat, $options);
38         if ($this->page->user_is_editing()) {
39             if($this->page->course->id == SITEID) {
40                 $editpage = $CFG->wwwroot.'/'.$CFG->admin.'/settings.php?section=frontpagesettings';
41             } else {
42                 $editpage = $CFG->wwwroot.'/course/edit.php?id='.$this->page->course->id;
43             }
44             $this->content->text .= "<div class=\"editbutton\"><a href=\"$editpage\"><img src=\"" . $OUTPUT->pix_url('t/edit') . "\" alt=\"".get_string('edit')."\" /></a></div>";
45         }
46         $this->content->footer = '';
48         return $this->content;
49     }
51     function hide_header() {
52         return true;
53     }
55     function preferred_width() {
56         return 210;
57     }
59 }