Skip to content
Snippets Groups Projects
Select Git revision
  • f293503b6aab3dcd829cd4cc0b9ca2b114880edc
  • develop default protected
  • main
3 results

CoursewareExcalidrawBlockPlugin.php

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    CoursewareExcalidrawBlockPlugin.php 1.86 KiB
    <?php
    
    use Courseware\CoursewarePlugin;
    
    class CoursewareExcalidrawBlockPlugin extends StudIPPlugin implements \SystemPlugin, CoursewarePlugin
    {
        public function __construct()
        {
            parent::__construct();
    
            require_once __DIR__ . '/vendor/autoload.php';
            \PageLayout::addScript($this->getPluginUrl() . '/dist/courseware-excalidraw-block.umd.min.js');
            \PageLayout::addStylesheet($this->getPluginURL() . '/dist/courseware-excalidraw-block.css');
    
            // Render a script tag which sets global javascript variables needed for the plugin to function
            $factory = new Flexi_TemplateFactory(dirname(__FILE__) . '/views');
            $template = $factory->open('coursewareblock/set_global_variables');
            $template->set_attribute('plugin', $this);
            $script = $template->render();
            \PageLayout::addBodyElements($script);
        }
    
        /**
         * Implement this method to register more block types.
         *
         * You get the current list of block types and must return an updated list
         * containing your own block types.
         *
         * @param array $otherBlockTypes the current list of block types
         *
         * @return array the updated list of block types
         */
        public function registerBlockTypes(array $otherBlockTypes): array
        {
            $otherBlockTypes[] = \CoursewareExcalidrawBlock\ExcalidrawBlock::class;
    
            return $otherBlockTypes;
        }
    
        /**
         * Implement this method to register more container types.
         *
         * You get the current list of container types and must return an updated list
         * containing your own container types.
         *
         * @param array $otherContainerTypes the current list of container types
         *
         * @return array the updated list of container types
         */
        public function registerContainerTypes(array $otherContainerTypes): array
        {
            return $otherContainerTypes;
        }
    
    
    }