. declare(strict_types=1); namespace core\external; use core\output\dynamic_tabs\base; use renderer_base; use stdClass; /** * Dynamic tab class fixture * * @package core * @copyright 2021 David Matamoros * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ class testeable_dynamic_tab extends base { /** * Export this for use in a mustache template context. * * @param renderer_base $output * @return stdClass */ public function export_for_template(renderer_base $output): stdClass { $content = (object)[]; $content->content = get_string('content'); return $content; } /** * The label to be displayed on the tab * * @return string */ public function get_tab_label(): string { return get_string('myhome'); } /** * Check permission of the current user to access this tab * * @return bool */ public function is_available(): bool { // Define the correct permissions here. return true; } /** * Template to use to display tab contents * * @return string */ public function get_template(): string { return 'templates/tabs/mytab'; } }