BBB plugin: Add setting big_blue_button_students_start_conference_in_groups

BT#18099
ofaj
Julio Montoya 5 years ago
parent 6ca08de759
commit 92eeef4245
  1. 2
      plugin/bbb/lang/english.php
  2. 2
      plugin/bbb/lang/french.php
  3. 4
      plugin/bbb/lang/spanish.php
  4. 24
      plugin/bbb/lib/bbb.lib.php
  5. 6
      plugin/bbb/lib/bbb_plugin.class.php
  6. 56
      plugin/bbb/listing.php
  7. BIN
      plugin/bbb/resources/img/128/bigbluebutton.png
  8. BIN
      plugin/bbb/resources/img/128/bigbluebutton_na.png
  9. BIN
      plugin/bbb/resources/img/22/bigbluebutton.png
  10. BIN
      plugin/bbb/resources/img/22/bigbluebutton_na.png
  11. BIN
      plugin/bbb/resources/img/32/bigbluebutton.png
  12. BIN
      plugin/bbb/resources/img/32/bigbluebutton_na.png
  13. BIN
      plugin/bbb/resources/img/64/bigbluebutton.png
  14. BIN
      plugin/bbb/resources/img/64/bigbluebutton_na.png
  15. 284
      plugin/bbb/resources/img/svg/bigbluebutton.svg
  16. 336
      plugin/bbb/resources/img/svg/bigbluebutton_na.svg
  17. 2
      plugin/bbb/start.php
  18. 2
      plugin/bbb/view/listing.tpl

@ -80,3 +80,5 @@ $strings['ThisWillUpdateAllSettingsInAllCourses'] = 'This will update at once al
$strings['ThereIsNoVideoConferenceActive'] = 'There is no videoconference currently active';
$strings['RoomClosed'] = 'Room closed';
$strings['RoomClosedComment'] = ' ';
$strings['meeting_duration'] = 'Meeting duration (in minutes)';
$strings['big_blue_button_students_start_conference_in_groups'] = 'Allow students to start conference in their groups.';

@ -75,3 +75,5 @@ $strings['SetByTeacher'] = 'Choisi par le professeur';
$strings['SetByStudent'] = 'Choisi par l\'apprenant';
$strings['bbb_force_record_generation'] = 'Forcer la génération de l\'enregistrement à la fin de la session';
$strings['ThereIsNoVideoConferenceActive'] = "Il n'y a aucune vidéoconférence actuellement active";
$strings['meeting_duration'] = 'Durée de la conférence (en minutes)';
$strings['big_blue_button_students_start_conference_in_groups'] = 'Permettre aux apprenants de démarrer les vidéoconferénces de leurs groupes';

@ -44,7 +44,7 @@ $strings['big_blue_button_welcome_message'] = 'Mensaje de bienvenida de BigBlueB
$strings['enable_global_conference'] = 'Activar la conferencia global';
$strings['enable_global_conference_per_user'] = 'Activar la conferencia global por usuario';
$strings['enable_conference_in_course_groups'] = 'Activar las conferencias en grupos';
$strings['enable_global_conference_link'] = 'Actvivar el enlace hacia la conferencia global desde la página principal';
$strings['enable_global_conference_link'] = 'Activar el enlace hacia la conferencia global desde la página principal';
$strings['big_blue_button_record_and_store'] = 'Grabar las sesiones de videoconferencia.';
$strings['bbb_enable_conference_in_groups'] = 'Activar la creación de videoconferencia en los grupos.';
@ -74,3 +74,5 @@ $strings['SetByDefault'] = 'Lanzamiento con la interfaz por defecto';
$strings['SetByTeacher'] = 'Elegido por el profesor';
$strings['SetByStudent'] = 'Elegido por el alumno';
$strings['ThereIsNoVideoConferenceActive'] = "No hay una videoconferencia actualmente activa";
$strings['meeting_duration'] = 'Duración de la reunión (en minutos)';
$strings['big_blue_button_students_start_conference_in_groups'] = 'Permitir a los estudiantes iniciar una videoconferencia en sus grupos.';

@ -404,8 +404,7 @@ class bbb
api_get_session_id()
);
$meetingName = isset($params['meeting_name']) ? $params['meeting_name'] : $this->getCurrentVideoConferenceName(
);
$meetingName = isset($params['meeting_name']) ? $params['meeting_name'] : $this->getCurrentVideoConferenceName();
$welcomeMessage = isset($params['welcome_msg']) ? $params['welcome_msg'] : null;
$record = isset($params['record']) && $params['record'] ? 'true' : 'false';
//$duration = isset($params['duration']) ? intval($params['duration']) : 0;
@ -664,6 +663,27 @@ class bbb
}
$courseInfo = api_get_course_info();
$groupId = api_get_group_id();
if (!empty($groupId) && !empty($courseInfo)) {
$groupEnabled = api_get_course_plugin_setting('bbb', 'bbb_enable_conference_in_groups') === '1';
if ($groupEnabled) {
$studentCanStartConference = api_get_course_plugin_setting(
'bbb',
'big_blue_button_students_start_conference_in_groups'
) === '1';
if ($studentCanStartConference) {
$isSubscribed = GroupManager::is_user_in_group(
api_get_user_id(),
GroupManager::get_group_properties($groupId)
);
if ($isSubscribed) {
return true;
}
}
}
}
if (!empty($courseInfo)) {
return api_is_course_admin();

@ -37,6 +37,10 @@ class BBBPlugin extends Plugin
'name' => 'bbb_force_record_generation',
'type' => 'checkbox',
],
[
'name' => 'big_blue_button_students_start_conference_in_groups',
'type' => 'checkbox',
],
];
/**
@ -70,8 +74,8 @@ class BBBPlugin extends Plugin
'interface' => [
'type' => 'select',
'options' => [
self::INTERFACE_FLASH => 'Flash',
self::INTERFACE_HTML5 => 'HTML5',
self::INTERFACE_FLASH => 'Flash',
],
],
'launch_type' => [

@ -7,7 +7,7 @@
*/
$course_plugin = 'bbb'; //needed in order to load the plugin lang variables
$isGlobal = isset($_GET['global']) ? true : false;
$isGlobal = isset($_GET['global']);
$isGlobalPerUser = isset($_GET['user_id']) ? (int) $_GET['user_id'] : false;
// If global setting is used then we delete the course sessions (cidReq/id_session)
@ -25,6 +25,8 @@ $htmlHeadXtra[] = api_get_js_simple(api_get_path(WEB_PLUGIN_PATH).'bbb/resources
$action = isset($_GET['action']) ? $_GET['action'] : '';
$userId = api_get_user_id();
$groupId = api_get_group_id();
$courseInfo = api_get_course_info();
$bbb = new bbb('', '', $isGlobal, $isGlobalPerUser);
@ -35,11 +37,35 @@ if ($bbb->isGlobalConference()) {
api_protect_course_script(true);
}
$courseInfo = api_get_course_info();
$courseCode = isset($courseInfo['code']) ? $courseInfo['code'] : '';
$allowStudentAsConferenceManager = false;
if (!empty($courseInfo) && !empty($groupId) && !api_is_allowed_to_edit()) {
$groupEnabled = api_get_course_plugin_setting(
'bbb',
'bbb_enable_conference_in_groups',
$courseInfo
) === '1';
if ($groupEnabled) {
$isSubscribed = GroupManager::is_user_in_group(api_get_user_id(), GroupManager::get_group_properties($groupId));
if ($isSubscribed) {
$allowStudentAsConferenceManager = api_get_course_plugin_setting(
'bbb',
'big_blue_button_students_start_conference_in_groups',
$courseInfo
) === '1';
}
}
}
$allowToEdit = $conferenceManager;
// Disable students edit permissions.
if ($allowStudentAsConferenceManager) {
$allowToEdit = false;
}
$courseCode = $courseInfo['code'] ?? '';
$message = '';
if ($conferenceManager) {
if ($conferenceManager && $allowToEdit) {
switch ($action) {
case 'add_to_calendar':
if ($bbb->isGlobalConference()) {
@ -271,7 +297,7 @@ if ($conferenceManager) {
break;
}
} else {
if ($action == 'logout') {
if ($action === 'logout') {
// Update out_at field of user
$remoteId = Database::escape_string($_GET['remote_id']);
$meetingData = Database::select(
@ -320,7 +346,7 @@ if ($conferenceManager) {
$meetings = $bbb->getMeetings(
api_get_course_int_id(),
api_get_session_id(),
api_get_group_id()
$groupId
);
if (!empty($meetings)) {
$meetings = array_reverse($meetings);
@ -352,7 +378,7 @@ if ($bbb->isGlobalConference() === false &&
) {
$url = api_get_self().'?'.api_get_cidreq(true, false).'&gidReq=';
$htmlHeadXtra[] = '<script>
$(document).ready(function() {
$(function() {
$("#group_select").on("change", function() {
var groupId = $(this).find("option:selected").val();
var url = "'.$url.'";
@ -362,10 +388,18 @@ if ($bbb->isGlobalConference() === false &&
</script>';
$form = new FormValidator(api_get_self().'?'.api_get_cidreq());
$groupId = api_get_group_id();
if ($conferenceManager) {
if ($conferenceManager && false === $allowStudentAsConferenceManager) {
$groups = GroupManager::get_groups();
} else {
if (!empty($groupId)) {
$groupInfo = GroupManager::get_group_properties($groupId);
if ($groupInfo) {
$isSubscribed = GroupManager::is_user_in_group(api_get_user_id(), $groupInfo);
if (false === $isSubscribed) {
api_not_allowed(true);
}
}
}
$groups = GroupManager::getAllGroupPerUserSubscription(
api_get_user_id(),
api_get_course_int_id(),
@ -443,7 +477,7 @@ switch ($type) {
break;
}
$tpl = new Template($tool_name);
$tpl->assign('allow_to_edit', $conferenceManager);
$tpl->assign('allow_to_edit', $allowToEdit);
$tpl->assign('meetings', $meetings);
$tpl->assign('conference_url', $conferenceUrl);
$tpl->assign('users_online', $usersOnline);
@ -454,7 +488,7 @@ $tpl->assign('show_join_button', $showJoinButton);
$tpl->assign('message', $message);
$tpl->assign('form', $formToString);
$tpl->assign('enter_conference_links', $urlList);
$tpl->assign('warning_inteface_msg', $warningInterfaceMessage);
$tpl->assign('warning_interface_msg', $warningInterfaceMessage);
$tpl->assign('show_client_options', $showClientOptions);
$content = $tpl->fetch('bbb/view/listing.tpl');

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 740 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 774 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 977 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

@ -0,0 +1,284 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="124"
height="124"
viewBox="0 0 124 124"
version="1.1"
preserveAspectRatio="xMidYMid"
id="svg68"
sodipodi:docname="bigbluebutton.svg"
inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)">
<metadata
id="metadata72">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1860"
inkscape:window-height="1016"
id="namedview70"
showgrid="false"
inkscape:zoom="2.4986848"
inkscape:cx="61.749408"
inkscape:cy="127.97701"
inkscape:window-x="60"
inkscape:window-y="1107"
inkscape:window-maximized="1"
inkscape:current-layer="g916" />
<defs
id="defs37">
<linearGradient
inkscape:collect="always"
id="linearGradient950">
<stop
style="stop-color:#007266;stop-opacity:1;"
offset="0"
id="stop946" />
<stop
style="stop-color:#007266;stop-opacity:0;"
offset="1"
id="stop948" />
</linearGradient>
<linearGradient
x1="71.77459"
y1="187.32983"
x2="206.34541"
y2="53.078278"
id="linearGradient-1"
gradientTransform="matrix(0.35264551,0,0,0.40800991,10.373845,5.6478575)"
gradientUnits="userSpaceOnUse">
<stop
stop-color="#058B7E"
offset="0%"
id="stop2" />
<stop
stop-color="#058D80"
offset="0%"
id="stop4" />
<stop
stop-color="#058D7F"
offset="100%"
id="stop6" />
</linearGradient>
<path
d="M 127.68269,0 C 57.165748,0 0,55.790933 0,124.61227 0,193.43392 57.165748,249.22453 127.68269,249.22453 l 0.27148,46.91374 c 65.60585,-37.27075 128,-87.01882 128,-171.526 C 255.95417,55.790933 198.19994,0 127.68269,0 Z"
id="path-2"
inkscape:connector-curvature="0" />
<filter
x="-0.0040000002"
y="-0.003"
width="1.008"
height="1.007"
filterUnits="objectBoundingBox"
id="filter-3">
<feOffset
dx="0"
dy="2"
in="SourceAlpha"
result="shadowOffsetInner1"
id="feOffset10" />
<feComposite
in="shadowOffsetInner1"
in2="SourceAlpha"
operator="arithmetic"
k2="-1"
k3="1"
result="shadowInnerInner1"
id="feComposite12"
k1="0"
k4="0" />
<feColorMatrix
values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.2 0"
type="matrix"
in="shadowInnerInner1"
id="feColorMatrix14" />
</filter>
<path
d="M 127.68269,0 C 57.165748,0 0,55.790933 0,124.61227 0,193.43392 57.165748,249.22453 127.68269,249.22453 l 0.27148,46.91374 c 65.60585,-37.27075 128,-87.01882 128,-171.526 C 255.95417,55.790933 198.19994,0 127.68269,0 Z"
id="path-4"
inkscape:connector-curvature="0" />
<filter
x="-0.0040000002"
y="-0.003"
width="1.008"
height="1.007"
filterUnits="objectBoundingBox"
id="filter-5">
<feOffset
dx="0"
dy="-2"
in="SourceAlpha"
result="shadowOffsetInner1"
id="feOffset18" />
<feComposite
in="shadowOffsetInner1"
in2="SourceAlpha"
operator="arithmetic"
k2="-1"
k3="1"
result="shadowInnerInner1"
id="feComposite20"
k1="0"
k4="0" />
<feColorMatrix
values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0"
type="matrix"
in="shadowInnerInner1"
id="feColorMatrix22" />
</filter>
<path
d="M 127.68269,0 C 57.165748,0 0,55.790933 0,124.61227 0,193.43392 57.165748,249.22453 127.68269,249.22453 l 0.27148,46.91374 c 65.60585,-37.27075 128,-87.01882 128,-171.526 C 255.95417,55.790933 198.19994,0 127.68269,0 Z"
id="path-6"
inkscape:connector-curvature="0" />
<linearGradient
x1="119.3371"
y1="153.50986"
x2="236.07732"
y2="282.50131"
id="linearGradient-8"
gradientTransform="scale(1.1271732,0.88717512)"
gradientUnits="userSpaceOnUse">
<stop
stop-color="#000000"
offset="0%"
id="stop26" />
<stop
stop-color="#D8D8D8"
stop-opacity="0"
offset="100%"
id="stop28" />
</linearGradient>
<path
d="m 55.580192,128.1054 v 34.23858 c 0,9.03901 7.395555,16.43457 16.434567,16.43457 h 85.016021 c 9.03901,0 16.43457,-7.39556 16.43457,-16.43457 v -21.62283 l 33.65926,33.65925 v -46.275 z"
id="path-9"
inkscape:connector-curvature="0" />
<filter
x="-0.0099999998"
y="-0.029999999"
width="1.026"
height="1.118"
filterUnits="objectBoundingBox"
id="filter-10">
<feOffset
dx="1"
dy="3"
in="SourceAlpha"
result="shadowOffsetOuter1"
id="feOffset32" />
<feColorMatrix
values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0"
type="matrix"
in="shadowOffsetOuter1"
id="feColorMatrix34" />
</filter>
<mask
id="mask-7"
fill="white">
<use
xlink:href="#path-6"
id="use49"
x="0"
y="0"
width="100%"
height="100%" />
</mask>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient950"
id="linearGradient952"
x1="80.086624"
y1="68.221016"
x2="96.365685"
y2="82.936577"
gradientUnits="userSpaceOnUse" />
</defs>
<g
id="g1001"
inkscape:export-filename="/var/www/chamilo11/plugin/google_meet/resources/img/64/meet.png"
inkscape:export-xdpi="49.548386"
inkscape:export-ydpi="49.548386">
<rect
y="8"
x="4"
height="124"
width="124"
id="rect967"
style="opacity:0;fill:#008072;fill-opacity:1;stroke:none;stroke-width:1.63019824;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.63019823, 3.26039649;stroke-dashoffset:0;stroke-opacity:1;paint-order:stroke fill markers" />
<g
id="g965">
<g
style="fill:#000000;fill-opacity:1"
id="g43"
transform="matrix(0.37931894,0,0,0.37931894,14.373845,13.647858)">
<use
height="100%"
width="100%"
y="0"
x="0"
style="filter:url(#filter-3)"
id="use41"
xlink:href="#path-2" />
</g>
<path
style="fill:#283375;stroke-width:0.37931895;fill-opacity:1"
inkscape:connector-curvature="0"
id="path39"
d="m 62.806308,13.647858 c -26.748411,0 -48.432463,21.162557 -48.432463,47.267794 0,26.105355 21.684052,47.267788 48.432463,47.267788 v 0 c 26.086173,-0.13013 48.655802,-15.212614 48.655802,-47.267788 0,-26.105237 -21.907273,-47.267794 -48.655802,-47.267794 z"
sodipodi:nodetypes="ssccss" />
<g
id="g916"
transform="matrix(0.96698632,0,0,0.96698632,6.218741,11.135255)">
<g
transform="matrix(0.39226919,0,0,0.39226919,10.501808,-9.8113047)"
id="g62">
<use
xlink:href="#path-9"
id="use58"
style="fill:#000000;fill-opacity:1;filter:url(#filter-10)"
x="0"
y="0"
width="100%"
height="100%" />
</g>
<path
d="M 89.682129,50.417748 V 32.213918 L 76.478638,45.389265 V 36.98701 c 0,-3.54585 -2.90105,-6.446774 -6.446775,-6.446774 H 36.682698 c -3.894966,0.343564 -6.344512,3.012167 -6.44679,6.446726 V 50.4177 Z"
id="path64"
inkscape:connector-curvature="0"
style="fill:#e2e2e2;stroke-width:0.39226919"
sodipodi:nodetypes="cccsscccc" />
<use
transform="matrix(0.39226919,0,0,0.39226919,8.4335144,0.16594801)"
xlink:href="#path-9"
id="use60"
style="fill:#f6f6f6;fill-rule:evenodd"
x="0"
y="0"
width="100%"
height="100%" />
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 8.8 KiB

@ -0,0 +1,336 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="124"
height="124"
viewBox="0 0 124 124"
version="1.1"
preserveAspectRatio="xMidYMid"
id="svg68"
sodipodi:docname="bigbluebutton_na.svg"
inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)"
inkscape:export-filename="/var/www/chamilo111x/plugin/bbb/resources/img/128/bigbluebutton.png"
inkscape:export-xdpi="99.099998"
inkscape:export-ydpi="99.099998">
<metadata
id="metadata72">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1860"
inkscape:window-height="1016"
id="namedview70"
showgrid="false"
inkscape:zoom="2.4986848"
inkscape:cx="61.749408"
inkscape:cy="93.250306"
inkscape:window-x="60"
inkscape:window-y="1107"
inkscape:window-maximized="1"
inkscape:current-layer="g965" />
<defs
id="defs37">
<linearGradient
inkscape:collect="always"
id="linearGradient950">
<stop
style="stop-color:#007266;stop-opacity:1;"
offset="0"
id="stop946" />
<stop
style="stop-color:#007266;stop-opacity:0;"
offset="1"
id="stop948" />
</linearGradient>
<linearGradient
x1="71.77459"
y1="187.32983"
x2="206.34541"
y2="53.078278"
id="linearGradient-1"
gradientTransform="matrix(0.35264551,0,0,0.40800991,10.373845,5.6478575)"
gradientUnits="userSpaceOnUse">
<stop
stop-color="#058B7E"
offset="0%"
id="stop2" />
<stop
stop-color="#058D80"
offset="0%"
id="stop4" />
<stop
stop-color="#058D7F"
offset="100%"
id="stop6" />
</linearGradient>
<path
d="M 127.68269,0 C 57.165748,0 0,55.790933 0,124.61227 0,193.43392 57.165748,249.22453 127.68269,249.22453 l 0.27148,46.91374 c 65.60585,-37.27075 128,-87.01882 128,-171.526 C 255.95417,55.790933 198.19994,0 127.68269,0 Z"
id="path-2"
inkscape:connector-curvature="0" />
<filter
x="-0.0040000002"
y="-0.003"
width="1.008"
height="1.007"
filterUnits="objectBoundingBox"
id="filter-3">
<feOffset
dx="0"
dy="2"
in="SourceAlpha"
result="shadowOffsetInner1"
id="feOffset10" />
<feComposite
in="shadowOffsetInner1"
in2="SourceAlpha"
operator="arithmetic"
k2="-1"
k3="1"
result="shadowInnerInner1"
id="feComposite12"
k1="0"
k4="0" />
<feColorMatrix
values="0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.2 0"
type="matrix"
in="shadowInnerInner1"
id="feColorMatrix14" />
</filter>
<path
d="M 127.68269,0 C 57.165748,0 0,55.790933 0,124.61227 0,193.43392 57.165748,249.22453 127.68269,249.22453 l 0.27148,46.91374 c 65.60585,-37.27075 128,-87.01882 128,-171.526 C 255.95417,55.790933 198.19994,0 127.68269,0 Z"
id="path-4"
inkscape:connector-curvature="0" />
<filter
x="-0.0040000002"
y="-0.003"
width="1.008"
height="1.007"
filterUnits="objectBoundingBox"
id="filter-5">
<feOffset
dx="0"
dy="-2"
in="SourceAlpha"
result="shadowOffsetInner1"
id="feOffset18" />
<feComposite
in="shadowOffsetInner1"
in2="SourceAlpha"
operator="arithmetic"
k2="-1"
k3="1"
result="shadowInnerInner1"
id="feComposite20"
k1="0"
k4="0" />
<feColorMatrix
values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0"
type="matrix"
in="shadowInnerInner1"
id="feColorMatrix22" />
</filter>
<path
d="M 127.68269,0 C 57.165748,0 0,55.790933 0,124.61227 0,193.43392 57.165748,249.22453 127.68269,249.22453 l 0.27148,46.91374 c 65.60585,-37.27075 128,-87.01882 128,-171.526 C 255.95417,55.790933 198.19994,0 127.68269,0 Z"
id="path-6"
inkscape:connector-curvature="0" />
<linearGradient
x1="119.3371"
y1="153.50986"
x2="236.07732"
y2="282.50131"
id="linearGradient-8"
gradientTransform="scale(1.1271732,0.88717512)"
gradientUnits="userSpaceOnUse">
<stop
stop-color="#000000"
offset="0%"
id="stop26" />
<stop
stop-color="#D8D8D8"
stop-opacity="0"
offset="100%"
id="stop28" />
</linearGradient>
<path
d="m 55.580192,128.1054 v 34.23858 c 0,9.03901 7.395555,16.43457 16.434567,16.43457 h 85.016021 c 9.03901,0 16.43457,-7.39556 16.43457,-16.43457 v -21.62283 l 33.65926,33.65925 v -46.275 z"
id="path-9"
inkscape:connector-curvature="0" />
<filter
x="-0.0099999998"
y="-0.029999999"
width="1.026"
height="1.118"
filterUnits="objectBoundingBox"
id="filter-10">
<feOffset
dx="1"
dy="3"
in="SourceAlpha"
result="shadowOffsetOuter1"
id="feOffset32" />
<feColorMatrix
values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1 0"
type="matrix"
in="shadowOffsetOuter1"
id="feColorMatrix34" />
</filter>
<mask
id="mask-7"
fill="white">
<use
xlink:href="#path-6"
id="use49"
x="0"
y="0"
width="100%"
height="100%" />
</mask>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient950"
id="linearGradient952"
x1="80.086624"
y1="68.221016"
x2="96.365685"
y2="82.936577"
gradientUnits="userSpaceOnUse" />
<filter
style="color-interpolation-filters:sRGB;"
inkscape:label="Greyscale"
id="filter50475">
<feColorMatrix
values="0.21 0.72 0.072 0 0 0.21 0.72 0.072 0 0 0.21 0.72 0.072 0 0 0 0 0 1 0 "
id="feColorMatrix50473" />
</filter>
<filter
style="color-interpolation-filters:sRGB;"
inkscape:label="Greyscale"
id="filter50479">
<feColorMatrix
values="0.21 0.72 0.072 0 0 0.21 0.72 0.072 0 0 0.21 0.72 0.072 0 0 0 0 0 1 0 "
id="feColorMatrix50477" />
</filter>
<filter
style="color-interpolation-filters:sRGB;"
inkscape:label="Greyscale"
id="filter50483">
<feColorMatrix
values="0.21 0.72 0.072 0 0 0.21 0.72 0.072 0 0 0.21 0.72 0.072 0 0 0 0 0 1 0 "
id="feColorMatrix50481" />
</filter>
<filter
style="color-interpolation-filters:sRGB;"
inkscape:label="Greyscale"
id="filter50487">
<feColorMatrix
values="0.21 0.72 0.072 0 0 0.21 0.72 0.072 0 0 0.21 0.72 0.072 0 0 0 0 0 1 0 "
id="feColorMatrix50485" />
</filter>
<filter
style="color-interpolation-filters:sRGB;"
inkscape:label="Greyscale"
id="filter50491">
<feColorMatrix
values="0.21 0.72 0.072 0 0 0.21 0.72 0.072 0 0 0.21 0.72 0.072 0 0 0 0 0 1 0 "
id="feColorMatrix50489" />
</filter>
<filter
style="color-interpolation-filters:sRGB;"
inkscape:label="Greyscale"
id="filter50495">
<feColorMatrix
values="0.21 0.72 0.072 0 0 0.21 0.72 0.072 0 0 0.21 0.72 0.072 0 0 0 0 0 1 0 "
id="feColorMatrix50493" />
</filter>
</defs>
<g
id="g1001"
inkscape:export-filename="/var/www/chamilo11/plugin/google_meet/resources/img/64/meet.png"
inkscape:export-xdpi="49.548386"
inkscape:export-ydpi="49.548386">
<rect
y="8"
x="4"
height="124"
width="124"
id="rect967"
style="opacity:0;fill:#008072;fill-opacity:1;stroke:none;stroke-width:1.63019824;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.63019823, 3.26039649000000020;stroke-dashoffset:0;stroke-opacity:1;paint-order:stroke fill markers;filter:url(#filter50495)" />
<g
id="g965">
<g
style="fill:#000000;fill-opacity:1;filter:url(#filter50491)"
id="g43"
transform="matrix(0.37931894,0,0,0.37931894,14.373845,13.647858)">
<use
height="100%"
width="100%"
y="0"
x="0"
style="filter:url(#filter-3)"
id="use41"
xlink:href="#path-2" />
</g>
<path
style="fill:#283375;stroke-width:0.37931895;fill-opacity:1;filter:url(#filter50487);opacity:0.584"
inkscape:connector-curvature="0"
id="path39"
d="m 62.806308,13.647858 c -26.748411,0 -48.432463,21.162557 -48.432463,47.267794 0,26.105355 21.684052,47.267788 48.432463,47.267788 v 0 c 26.086173,-0.13013 48.655802,-15.212614 48.655802,-47.267788 0,-26.105237 -21.907273,-47.267794 -48.655802,-47.267794 z"
sodipodi:nodetypes="ssccss" />
<g
id="g916"
transform="matrix(0.96698632,0,0,0.96698632,6.218741,11.135255)">
<g
transform="matrix(0.39226919,0,0,0.39226919,10.501808,-9.8113047)"
id="g62"
style="filter:url(#filter50483)">
<use
xlink:href="#path-9"
id="use58"
style="fill:#000000;fill-opacity:1;filter:url(#filter-10)"
x="0"
y="0"
width="100%"
height="100%" />
</g>
<path
d="M 89.682129,50.417748 V 32.213918 L 76.478638,45.389265 V 36.98701 c 0,-3.54585 -2.90105,-6.446774 -6.446775,-6.446774 H 36.682698 c -3.894966,0.343564 -6.344512,3.012167 -6.44679,6.446726 V 50.4177 Z"
id="path64"
inkscape:connector-curvature="0"
style="fill:#e2e2e2;stroke-width:0.39226919;filter:url(#filter50479)"
sodipodi:nodetypes="cccsscccc" />
<use
transform="matrix(0.39226919,0,0,0.39226919,8.4335144,0.16594801)"
xlink:href="#path-9"
id="use60"
style="fill:#f6f6f6;fill-rule:evenodd;filter:url(#filter50475)"
x="0"
y="0"
width="100%"
height="100%" />
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 11 KiB

@ -8,7 +8,7 @@ require_once __DIR__.'/../../vendor/autoload.php';
$course_plugin = 'bbb'; //needed in order to load the plugin lang variables
$isGlobal = isset($_GET['global']) ? true : false;
$isGlobal = isset($_GET['global']);
$isGlobalPerUser = isset($_GET['user_id']) ? (int) $_GET['user_id'] : false;
// If global setting is used then we delete the course sessions (cidReq/id_session)

@ -92,7 +92,7 @@
{{ 'XUsersOnLine'| get_plugin_lang('BBBPlugin') | format(users_online) }}
</span>
</p>
{{ warning_inteface_msg }}
{{ warning_interface_msg }}
{% if max_users_limit > 0 %}
{% if conference_manager == true %}
<p>{{ 'MaxXUsersWarning' | get_plugin_lang('BBBPlugin') | format(max_users_limit) }}</p>

Loading…
Cancel
Save