From e1a35e19d32b71af088aac2ab78eb8a31f84be68 Mon Sep 17 00:00:00 2001 From: lameze Date: Tue, 16 Oct 2018 08:23:26 +0200 Subject: [PATCH] MDL-63064 block_starredcourses: create block structure --- .../starredcourses/block_starredcourses.php | 71 +++++++++++++++++++ blocks/starredcourses/db/access.php | 48 +++++++++++++ .../lang/en/block_starredcourses.php | 27 +++++++ blocks/starredcourses/version.php | 28 ++++++++ 4 files changed, 174 insertions(+) create mode 100644 blocks/starredcourses/block_starredcourses.php create mode 100644 blocks/starredcourses/db/access.php create mode 100644 blocks/starredcourses/lang/en/block_starredcourses.php create mode 100644 blocks/starredcourses/version.php diff --git a/blocks/starredcourses/block_starredcourses.php b/blocks/starredcourses/block_starredcourses.php new file mode 100644 index 00000000000..45c0b8f6d0b --- /dev/null +++ b/blocks/starredcourses/block_starredcourses.php @@ -0,0 +1,71 @@ +. + +/** + * Starred courses block. + * + * @package block_starredcourses + * @copyright 2018 Simey Lameze + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + +/** + * Starred courses block definition class. + * + * @package block_starredcourses + * @copyright 2018 Simey Lameze + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class block_starredcourses extends block_base { + + /** + * Initialises the block. + * + * @return void + */ + public function init() { + $this->title = get_string('pluginname', 'block_starredcourses'); + } + + /** + * Gets the block contents. + * + * @return string The block HTML. + */ + public function get_content() { + + if ($this->content !== null) { + return $this->content; + } + + $this->content = new stdClass(); + $this->content->footer = ''; + $this->content->text = ''; + + return $this->content; + } + + /** + * Locations where block can be displayed. + * + * @return array + */ + public function applicable_formats() { + return array('my' => true); + } +} diff --git a/blocks/starredcourses/db/access.php b/blocks/starredcourses/db/access.php new file mode 100644 index 00000000000..2f5e3653ce2 --- /dev/null +++ b/blocks/starredcourses/db/access.php @@ -0,0 +1,48 @@ +. + +/** + * Starred courses block capabilities. + * + * @package block_starredcourses + * @copyright 2018 Simey Lameze + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined('MOODLE_INTERNAL') || die(); + +$capabilities = array( + + 'block/starredcourses:myaddinstance' => array( + 'captype' => 'write', + 'contextlevel' => CONTEXT_SYSTEM, + 'archetypes' => array( + 'user' => CAP_ALLOW + ), + + 'clonepermissionsfrom' => 'moodle/my:manageblocks' + ), + + 'block/starredcourses:addinstance' => array( + 'captype' => 'write', + 'contextlevel' => CONTEXT_BLOCK, + 'archetypes' => array( + 'manager' => CAP_ALLOW + ), + + 'clonepermissionsfrom' => 'moodle/site:manageblocks' + ), +); diff --git a/blocks/starredcourses/lang/en/block_starredcourses.php b/blocks/starredcourses/lang/en/block_starredcourses.php new file mode 100644 index 00000000000..1e7bd6d7540 --- /dev/null +++ b/blocks/starredcourses/lang/en/block_starredcourses.php @@ -0,0 +1,27 @@ +. + +/** + * Starred courses block language strings. + * + * @package block_starredcourses + * @copyright 2018 Simey Lameze + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +$string['starredcourses:addinstance'] = 'Add a new instance of starred courses block'; +$string['starredcourses:myaddinstance'] = 'Add a new instance of starred block to Dashboard'; +$string['pluginname'] = 'Starred courses'; diff --git a/blocks/starredcourses/version.php b/blocks/starredcourses/version.php new file mode 100644 index 00000000000..81cb2351faa --- /dev/null +++ b/blocks/starredcourses/version.php @@ -0,0 +1,28 @@ +. + +/** + * Starred courses block version details. + * + * @package block_starredcourses + * @copyright 2018 Simey Lameze + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +defined('MOODLE_INTERNAL') || die; + +$plugin->version = 2018051400; +$plugin->requires = 2018050800; +$plugin->component = 'block_starredcourses'; \ No newline at end of file