AutorÃa | Ultima modificación | Ver Log |
<?php// This file is part of Moodle - http://moodle.org///// Moodle is free software: you can redistribute it and/or modify// it under the terms of the GNU General Public License as published by// the Free Software Foundation, either version 3 of the License, or// (at your option) any later version.//// Moodle is distributed in the hope that it will be useful,// but WITHOUT ANY WARRANTY; without even the implied warranty of// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the// GNU General Public License for more details.//// You should have received a copy of the GNU General Public License// along with Moodle. If not, see <http://www.gnu.org/licenses/>.namespace mod_bigbluebuttonbn\output;use mod_bigbluebuttonbn\instance;use mod_bigbluebuttonbn\local\bigbluebutton\recordings\recording_data;use mod_bigbluebuttonbn\local\proxy\bigbluebutton_proxy;use mod_bigbluebuttonbn\recording;use renderable;use renderer_base;use stdClass;use templatable;/*** Renderer for recording_row_preview column** @package mod_bigbluebuttonbn* @copyright 2010 onwards, Blindside Networks Inc* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later* @author Laurent David (laurent.david [at] call-learning [dt] fr)*/class recording_row_preview implements renderable, templatable {/*** @var $recording*/protected $recording;/*** recording_row_playback constructor.** @param recording $rec*/public function __construct(recording $rec) {$this->recording = $rec;}/*** Export for template** @param renderer_base $output* @return stdClass*/public function export_for_template(renderer_base $output): stdClass {global $CFG;$context = (object) ['id' => 'preview-' . $this->recording->get('id'),'hidden' => !$this->recording->get('published'),'recordingpreviews' => [],];$playbacks = $this->recording->get('playbacks');foreach ($playbacks as $playback) {$thumbnails = [];if (isset($playback['preview'])) {foreach ($playback['preview'] as $image) {$url = trim($image['url']);$validated = bigbluebutton_proxy::is_remote_resource_valid($url);if ($validated) {$thumbnails[] = $url . '?' . time();}}if (!empty($thumbnails)) {$context->recordingpreviews[] = (object) ['thumbnails' => $thumbnails,];}}}return $context;}}