X7ROOT File Manager
Current Path:
/home/cbholdings/pasukulu/mod/bigbluebuttonbn/classes/output
home
/
cbholdings
/
pasukulu
/
mod
/
bigbluebuttonbn
/
classes
/
output
/
📁
..
📄
import_view.php
(5.15 KB)
📄
index.php
(7.19 KB)
📄
instance_updated_message.php
(2.43 KB)
📄
mobile.php
(8.15 KB)
📄
recording_description_editable.php
(2 KB)
📄
recording_editable.php
(4.14 KB)
📄
recording_name_editable.php
(1.94 KB)
📄
recording_row_actionbar.php
(6.38 KB)
📄
recording_row_playback.php
(4.48 KB)
📄
recording_row_preview.php
(2.71 KB)
📄
recordings_session.php
(2.36 KB)
📄
renderer.php
(3.36 KB)
📄
view_page.php
(5.85 KB)
Editing: recording_row_playback.php
<?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\config; use mod_bigbluebuttonbn\local\helpers\roles; use mod_bigbluebuttonbn\recording; use renderable; use renderer_base; use stdClass; use templatable; /** * Renderer for recording row playback 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_playback implements renderable, templatable { /** * @var $instance */ protected $instance; /** * @var $recording */ protected $recording; /** * recording_row_playback constructor. * * @param recording $rec * @param instance|null $instance $instance */ public function __construct(recording $rec, ?instance $instance) { $this->instance = $instance ?? null; $this->recording = $rec; } /** * Export for template * * @param renderer_base $output * @return stdClass */ public function export_for_template(renderer_base $output): stdClass { $ispublished = $this->recording->get('published'); $recordingid = $this->recording->get('id'); $context = (object) [ 'dataimported' => $this->recording->get('imported'), 'id' => 'playbacks-' . $this->recording->get('id'), 'recordingid' => $recordingid, 'additionaloptions' => '', 'playbacks' => [], ]; $playbacks = $this->recording->get('playbacks'); if ($ispublished && $playbacks) { foreach ($playbacks as $playback) { if ($this->should_be_included($playback)) { $linkattributes = [ 'id' => "recording-play-{$playback['type']}-{$recordingid}", 'class' => 'btn btn-sm btn-default', 'data-action' => 'play', 'data-target' => $playback['type'], ]; $actionlink = new \action_link( $playback['url'], recording_data::type_text($playback['type']), null, $linkattributes ); $context->playbacks[] = $actionlink->export_for_template($output); } } } return $context; } /** * Helper function renders the link used for recording type in row for the data used by the recording table. * * @param array $playback * @return bool */ protected function should_be_included(array $playback): bool { // All types that are not restricted are included. if (array_key_exists('restricted', $playback) && strtolower($playback['restricted']) == 'false') { return true; } // Exclude imported recordings. if ($this->recording->get('imported')) { return false; } $canmanagerecordings = roles::has_capability_in_course( $this->recording->get('courseid'), 'mod/bigbluebuttonbn:managerecordings'); $canviewallformats = roles::has_capability_in_course( $this->recording->get('courseid'), 'mod/bigbluebuttonbn:viewallrecordingformats'); $issafeformat = false; // Now check the list of safe formats. if ($safeformats = config::get('recording_safe_formats')) { $safeformatarray = str_getcsv($safeformats); $issafeformat = in_array($playback['type'], $safeformatarray); } return ($canmanagerecordings && $canviewallformats) || $issafeformat; } }
Upload File
Create Folder