/** * Returns if the current player is enabled. * * @deprecated since Moodle 3.2 * @return bool True if player is enabled */ public function is_enabled() { debugging('Function core_media_player::is_enabled() is deprecated without replacement', DEBUG_DEVELOPER); $enabled = \core\plugininfo\media::get_enabled_plugins(); if ($enabled && preg_match('/^media_(.*)_plugin$/', get_class($this), $matches)) { return array_key_exists($matches[1], $enabled); } return false; }
/** * Obtains the list of core_media_player objects currently in use to render * items. * * The list is in rank order (highest first) and does not include players * which are disabled. * * @return core_media_player[] Array of core_media_player objects in rank order */ protected function get_players() { // Save time by only building the list once. if (!$this->players) { // Get raw list of players. $allplayers = $this->get_players_raw(); $sortorder = \core\plugininfo\media::get_enabled_plugins(); $this->players = []; foreach ($sortorder as $key) { if (array_key_exists($key, $allplayers)) { $this->players[] = $allplayers[$key]; } } } return $this->players; }
/** * Test that plugin is returned as enabled media plugin. */ public function test_is_installed() { $sortorder = \core\plugininfo\media::get_enabled_plugins(); $this->assertEquals(['videojs' => 'videojs'], $sortorder); }
* @package filter_mediaplugin */ require __DIR__ . '/../../../config.php'; require_once $CFG->dirroot . '/filter/mediaplugin/filter.php'; // Only available to site admins. require_login(); if (!is_siteadmin()) { print_error('nopermissions', 'error', '', 'perftest'); } // Set up page. $PAGE->set_context(context_system::instance()); $PAGE->set_url(new moodle_url('/filter/mediaplugin/dev/perftest.php')); $PAGE->set_heading($SITE->fullname); print $OUTPUT->header(); // Enable all players. $enabledmediaplugins = \core\plugininfo\media::get_enabled_plugins(); \core\plugininfo\media::set_enabled_plugins('vimeo,youtube,videojs,html5audio,html5video,swf'); // Create plugin. $filterplugin = new filter_mediaplugin(null, array()); // Note: As this is a developer test page, language strings are not used: all // text is English-only. /** * Starts time counter. */ function filter_mediaplugin_perf_start() { global $filter_mediaplugin_starttime; $filter_mediaplugin_starttime = microtime(true); } /** * Ends and displays time counter.
/** * Verifies sloppy swf embedding - this should have been removed long ago!! * @param bool $detailed * @return object result */ function report_security_check_mediafilterswf($detailed=false) { global $CFG; $result = new stdClass(); $result->issue = 'report_security_check_mediafilterswf'; $result->name = get_string('check_mediafilterswf_name', 'report_security'); $result->info = null; $result->details = null; $result->status = null; $result->link = "<a href=\"$CFG->wwwroot/$CFG->admin/settings.php?section=managemediaplayers\">" . get_string('managemediaplayers', 'media') . '</a>'; $activefilters = filter_get_globally_enabled(); $enabledmediaplayers = \core\plugininfo\media::get_enabled_plugins(); if (array_search('mediaplugin', $activefilters) !== false and array_key_exists('swf', $enabledmediaplayers)) { $result->status = REPORT_SECURITY_CRITICAL; $result->info = get_string('check_mediafilterswf_error', 'report_security'); } else { $result->status = REPORT_SECURITY_OK; $result->info = get_string('check_mediafilterswf_ok', 'report_security'); } if ($detailed) { $result->details = get_string('check_mediafilterswf_details', 'report_security'); } return $result; }
/** * Obtains the list of core_media_player objects currently in use to render * items. * * The list is in rank order (highest first) and does not include players * which are disabled. * * @return core_media_player[] Array of core_media_player objects in rank order */ protected function get_players() { // Save time by only building the list once. if (!$this->players) { $sortorder = \core\plugininfo\media::get_enabled_plugins(); $this->players = []; foreach ($sortorder as $name) { $classname = "media_" . $name . "_plugin"; if (class_exists($classname)) { $this->players[] = new $classname(); } } } return $this->players; }
* @copyright 2016 Marina Glancy * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ define('NO_OUTPUT_BUFFERING', true); require_once '../config.php'; require_once $CFG->libdir . '/adminlib.php'; $action = required_param('action', PARAM_ALPHANUMEXT); $media = required_param('media', PARAM_PLUGIN); $confirm = optional_param('confirm', 0, PARAM_BOOL); $PAGE->set_url('/admin/media.php'); $PAGE->set_context(context_system::instance()); require_login(); require_capability('moodle/site:config', context_system::instance()); require_sesskey(); $plugins = core_plugin_manager::instance()->get_plugins_of_type('media'); $sortorder = array_values(\core\plugininfo\media::get_enabled_plugins()); $return = new moodle_url('/admin/settings.php', array('section' => 'managemediaplayers')); if (!array_key_exists($media, $plugins)) { redirect($return); } switch ($action) { case 'disable': $plugins[$media]->set_enabled(false); break; case 'enable': $plugins[$media]->set_enabled(true); break; case 'up': if (($pos = array_search($media, $sortorder)) > 0) { $tmp = $sortorder[$pos - 1]; $sortorder[$pos - 1] = $sortorder[$pos];