From 9940a8409cca471a71431a85d06cc3610a5436d2 Mon Sep 17 00:00:00 2001 From: Jibon Costa Date: Fri, 24 Apr 2020 21:04:16 +0600 Subject: [PATCH 1/7] added maxParticipants feature --- .gitignore | 1 + admin/class-bigbluebutton-admin-api.php | 1 + admin/class-bigbluebutton-admin.php | 4 --- ...ss-bigbluebutton-register-custom-types.php | 26 ++++++++++++++++++ ...utton-max-participants-metabox-display.php | 6 ++++ includes/class-bigbluebutton-api.php | 4 +++ includes/class-bigbluebutton.php | 1 + languages/bigbluebutton-en_CA.mo | Bin 6047 -> 6149 bytes languages/bigbluebutton-en_CA.po | 6 ++++ languages/bigbluebutton-en_US.mo | Bin 6047 -> 6149 bytes languages/bigbluebutton-en_US.po | 6 ++++ languages/bigbluebutton.pot | 6 ++++ 12 files changed, 57 insertions(+), 4 deletions(-) create mode 100644 admin/partials/bigbluebutton-max-participants-metabox-display.php diff --git a/.gitignore b/.gitignore index b748979..fc0e2e8 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,4 @@ stylelint.config.js composer.json package.json phpcs.xml.dist +.DS_Store diff --git a/admin/class-bigbluebutton-admin-api.php b/admin/class-bigbluebutton-admin-api.php index c290b09..1755425 100644 --- a/admin/class-bigbluebutton-admin-api.php +++ b/admin/class-bigbluebutton-admin-api.php @@ -57,6 +57,7 @@ public function save_room( $post_id ) { // Add room codes to postmeta data. update_post_meta( $post_id, 'bbb-room-moderator-code', $moderator_code ); update_post_meta( $post_id, 'bbb-room-viewer-code', $viewer_code ); + update_post_meta( $post_id, 'bbb-room-maxParticipants', $_POST['bbb-maxParticipants'] ); if ( ! get_post_meta( $post_id, 'bbb-room-meeting-id', true ) ) { update_post_meta( $post_id, 'bbb-room-meeting-id', sha1( home_url() . Bigbluebutton_Admin_Helper::generate_random_code( 12 ) ) ); diff --git a/admin/class-bigbluebutton-admin.php b/admin/class-bigbluebutton-admin.php index 90dd709..cd0eb8d 100644 --- a/admin/class-bigbluebutton-admin.php +++ b/admin/class-bigbluebutton-admin.php @@ -292,10 +292,6 @@ private function room_server_settings_change() { return 3; } - if ( substr_compare( $bbb_url, 'bigbluebutton/', strlen( $bbb_url ) - 14 ) !== 0 ) { - return 2; - } - update_option( 'bigbluebutton_url', $bbb_url ); update_option( 'bigbluebutton_salt', $bbb_salt ); diff --git a/admin/class-bigbluebutton-register-custom-types.php b/admin/class-bigbluebutton-register-custom-types.php index a5b5885..f3340dc 100644 --- a/admin/class-bigbluebutton-register-custom-types.php +++ b/admin/class-bigbluebutton-register-custom-types.php @@ -103,6 +103,15 @@ public function register_room_code_metaboxes() { add_meta_box( 'bbb-viewer-code', __( 'Viewer Code', 'bigbluebutton' ), array( $this, 'display_viewer_code_metabox' ), 'bbb-room' ); } + /** + * Create Max Participants metaboxes on room creation and edit. + * + * @since 3.0.0 + */ + public function register_room_maxParticipants_metaboxes() { + add_meta_box( 'bbb-maxParticipants', __( 'Max Participants', 'bigbluebutton' ), array( $this, 'display_maxParticipants_metabox' ), 'bbb-room' ); + } + /** * Show recordable option in room creation to users who have the corresponding capability. * @@ -139,6 +148,23 @@ public function display_moderator_code_metabox( $object ) { require 'partials/bigbluebutton-room-code-metabox-display.php'; } + /** + * Display Max Participants metabox. + * + * @since 3.0.0 + * + * @param Object $object The object that has the room ID. + */ + public function display_maxParticipants_metabox( $object ) { + $default_max_participants = "-1"; + $entry_max_participants_label = __( 'Max Participants', 'bigbluebutton' ); + $defaultMsg = "-1 = unlimited"; + $entry_max_participants_name = 'bbb-maxParticipants'; + $existing_value = get_post_meta( $object->ID, 'bbb-room-maxParticipants', true ); + wp_nonce_field( 'bbb-room-maxParticipants-nonce', 'bbb-room-maxParticipants-nonce' ); + require 'partials/bigbluebutton-max-participants-metabox-display.php'; + } + /** * Display viewer code metabox. * diff --git a/admin/partials/bigbluebutton-max-participants-metabox-display.php b/admin/partials/bigbluebutton-max-participants-metabox-display.php new file mode 100644 index 0000000..e7dd860 --- /dev/null +++ b/admin/partials/bigbluebutton-max-participants-metabox-display.php @@ -0,0 +1,6 @@ + + + () + + () + diff --git a/includes/class-bigbluebutton-api.php b/includes/class-bigbluebutton-api.php index f44670e..9bb563c 100644 --- a/includes/class-bigbluebutton-api.php +++ b/includes/class-bigbluebutton-api.php @@ -43,6 +43,7 @@ public static function create_meeting( $room_id, $logout_url ) { $viewer_code = get_post_meta( $rid, 'bbb-room-viewer-code', true ); $recordable = get_post_meta( $rid, 'bbb-room-recordable', true ); $meeting_id = get_post_meta( $rid, 'bbb-room-meeting-id', true ); + $maxParticipants= get_post_meta( $rid, 'bbb-room-maxParticipants', true ); $arr_params = array( 'name' => esc_attr( $name ), 'meetingID' => rawurlencode( $meeting_id ), @@ -51,6 +52,9 @@ public static function create_meeting( $room_id, $logout_url ) { 'logoutURL' => esc_url( $logout_url ), 'record' => $recordable, ); + if($maxParticipants && $maxParticipants > 0){ + $arr_params['maxParticipants'] = $maxParticipants; + } $url = self::build_url( 'create', $arr_params ); diff --git a/includes/class-bigbluebutton.php b/includes/class-bigbluebutton.php index 9426093..5eb4f7c 100644 --- a/includes/class-bigbluebutton.php +++ b/includes/class-bigbluebutton.php @@ -267,6 +267,7 @@ private function define_admin_hooks() { // Add room metadata hooks. $this->loader->add_action( 'add_meta_boxes', $plugin_admin_register_custom_types, 'register_room_code_metaboxes' ); $this->loader->add_action( 'add_meta_boxes', $plugin_admin_register_custom_types, 'register_record_room_metabox' ); + $this->loader->add_action( 'add_meta_boxes', $plugin_admin_register_custom_types, 'register_room_maxParticipants_metaboxes' ); $this->loader->add_action( 'add_meta_boxes', $plugin_admin_register_custom_types, 'register_wait_for_moderator_metabox' ); $this->loader->add_action( 'save_post', $plugin_admin_api, 'save_room' ); diff --git a/languages/bigbluebutton-en_CA.mo b/languages/bigbluebutton-en_CA.mo index 0c29fbd3d9f8235f505bf0c5a4410a362578a14a..ff08efe5be60d914d3475acd8aacd83fe6a2788e 100644 GIT binary patch delta 1670 zcmZA1O-R&17{~EhT{TVfB`eL+wKOv`UstnS+pJV9p)JIVK})N(RA#Bvp;!>gh=?pA z=tb!gL{fwy6htC<=n`oMJD4CHf-cpeOC|LE?G6zRKKq%Oo&SH{o^`n7VrghD&3VgE znus+-dz3MLyyxVD;)*q9Ddu7v7Gom1F&^u&8Ta9Gyp3*rjCnYZ8W+pMOE3lXo=iSc zjR~1tD%o^YL^{j?OragXcI-o~Wg2;xnX%u`VLI(^$e(fY_GOrenkdV*^KcdI3arDu zxDBshBJ-O`Dq7(*Cg7}Xf3fW!m_+{{YXXBcQ3hsU0j@-^?QgSoqE4z0W3V6f{>!)m zZ(=p`n@3cNa31q9iBWp60<~i=Y5|SNpK0a8i-%E1{Qz}kGZ?@c?#qKi=)zg7!Ubz3 zFW1!^$50uS>r{L=fs8Tf%%&B(P%E!O)@EvvIZOj;oDb9R5H?{qYWxe-mA%H(4rAV+ z##bdruBslH$}}f){(5m69nI)RCD91J$8pq32T2Hx8$)ivjHB-SEs{iL3Y9~jZ99ri zswN$kL;0u$^`lO7zB99n9YT;*5Cv*X|fB|G&$lRd9rp*v4iJqYz_=UPN9S=G5uV@!41rbaw zmJ>RyV%w+psIZstH8tWoLi6ZU@`*^{{&mlqFpF4AY$f&(x)#&RVedy zw55cuVha&PsF0`OyxJXZkw3VJ*gz;x3b*s2vXdwz_{D{bo6lULgjh{@Mi*ix9C`k8 zuKoTqy}={FZhu#Ak7-%d;cDqQI{GT^YJB#hFHCWn%j4?nIuSe>?Cl6J=9pvjY1((^ EUr{TP1ONa4 delta 1570 zcmYk+OGs2v9LMqhn3|*6G@4Fn)@a&8r+hyu%gJmItw^W{5+br8kf6sx66r3gl|cmQ zB9UlYiy$EhA}GQL!XoHFkkO`1SVACVE&Beh$MDeqe$G8}?>YZ_&fl(9-LCYea#Dwk zmLS#;`%=tK;6N%DwRE#A2;fr8#$}j?K`g-zjA1VJVLc9FDLzF#_YE^}1~t!b44Zit z;BGAgxyXRk;0kQRZaj?2D`fdFr7f)JND7NEBF80v^_U=RMnop_XUisCRf;JEV#>L|)sq#8T0 z3kT5SH=CrR3_qbVpFwi4S!8ZM8$FjrRyi2Kb}UCde*tww7x7%c>=Nqv8McK}u)oMu zmKvI$H;f(J7lzn>6-|HZOGy^J{K2*_MM-|N^D)S(pt%UMXI}&yG74E(s`Dlwf z51{7lM%7F&s%EaZ@e$`;kB%02gxbmp)B>+iNAdxaIE`^U#CFx<5bC{`s4skvO5ii< z{qGpZSyat5uAHx#GuXrZYgEm6b*yrV&UsYPd~}9LS4WY+YV5@>97Ub&PvlYigGxNi z_GyPAs04~p&&813tqD~#ov7z;B1h!eEjrZ9|E8}{E1SnZhAR5n&I&iSfd0d3BK8td zLJMhE7B`)<7Fg@{Vr9CMFbmSo84F)t|zp$TZu{{Mx+pG)TeQj)~Xv? yIkAb*(dpQ>5o#^OMuI;uztwVGM+CQUQHAapD@uPB7`q=%2F7}Wr5W^&r2hjtmUch@ diff --git a/languages/bigbluebutton-en_CA.po b/languages/bigbluebutton-en_CA.po index 0cac83e..cc485dc 100644 --- a/languages/bigbluebutton-en_CA.po +++ b/languages/bigbluebutton-en_CA.po @@ -126,6 +126,12 @@ msgstr "Moderator Code" msgid "Viewer Code" msgstr "Viewer Code" +msgid "Max Participants" +msgstr "Max Participants" + +msgid "Max Participants Msg" +msgstr "-1 = unlimited" + msgid "Recordable" msgstr "Recordable" diff --git a/languages/bigbluebutton-en_US.mo b/languages/bigbluebutton-en_US.mo index 5c7d32c29785419d8d4c007e689ea9f6aec9808b..2fd77f734d2660bcb74dd8396de33c48e9606d12 100644 GIT binary patch delta 1670 zcmZA1O-R&17{~EhT{TVfB`eL+wKOv`UstnS+pJV9p)JIVK})N(RA#Bvp;!>gh=?pA z=tb!gL{fwy6htC<=n`oMJD4CHf-cpeOC|LE?G6zRKKq%Oo&SH{o^`n7VrghD&3VgE znus+-dz3MLyyxVD;)*q9Ddu7v7Gom1F&^u&8Ta9Gyp3*rjCnYZ8W+pMOE3lXo=iSc zjR~1tD%o^YL^{j?OragXcI-o~Wg2;xnX%u`VLI(^$e(fY_GOrenkdV*^KcdI3arDu zxDBshBJ-O`Dq7(*Cg7}Xf3fW!m_+{{YXXBcQ3hsU0j@-^?QgSoqE4z0W3V6f{>!)m zZ(=p`n@3cNa31q9iBWp60<~i=Y5|SNpK0a8i-%E1{Qz}kGZ?@c?#qKi=)zg7!Ubz3 zFW1!^$50uS>r{L=fs8Tf%%&B(P%E!O)@EvvIZOj;oDb9R5H?{qYWxe-mA%H(4rAV+ z##bdruBslH$}}f){(5m69nI)RCD91J$8pq32T2Hx8$)ivjHB-SEs{iL3Y9~jZ99ri zswN$kL;0u$^`lO7zB99n9YT;*5Cv*X|fB|G&$lRd9rp*v4iJqYz_=UPN9S=G5uV@!41rbaw zmJ>RyV%w+psIZstH8tWoLi6ZU@`*^{{&mlqFpF4AY$f&(x)#&RVedy zw55cuVha&PsF0`OyxJXZkw3VJ*gz;x3b*s2vXdwz_{D{bo6lULgjh{@Mi*ix9C`k8 zuKoTqy}={FZhu#Ak7-%d;cDqQI{GT^YJB#hFHCWn%j4?nIuSe>?Cl6J=9pvjY1((^ EUr{TP1ONa4 delta 1570 zcmYk+OGs2v9LMqhn3|*6G@4Fn)@a&8r+hyu%gJmItw^W{5+br8kf6sx66r3gl|cmQ zB9UlYiy$EhA}GQL!XoHFkkO`1SVACVE&Beh$MDeqe$G8}?>YZ_&fl(9-LCYea#Dwk zmLS#;`%=tK;6N%DwRE#A2;fr8#$}j?K`g-zjA1VJVLc9FDLzF#_YE^}1~t!b44Zit z;BGAgxyXRk;0kQRZaj?2D`fdFr7f)JND7NEBF80v^_U=RMnop_XUisCRf;JEV#>L|)sq#8T0 z3kT5SH=CrR3_qbVpFwi4S!8ZM8$FjrRyi2Kb}UCde*tww7x7%c>=Nqv8McK}u)oMu zmKvI$H;f(J7lzn>6-|HZOGy^J{K2*_MM-|N^D)S(pt%UMXI}&yG74E(s`Dlwf z51{7lM%7F&s%EaZ@e$`;kB%02gxbmp)B>+iNAdxaIE`^U#CFx<5bC{`s4skvO5ii< z{qGpZSyat5uAHx#GuXrZYgEm6b*yrV&UsYPd~}9LS4WY+YV5@>97Ub&PvlYigGxNi z_GyPAs04~p&&813tqD~#ov7z;B1h!eEjrZ9|E8}{E1SnZhAR5n&I&iSfd0d3BK8td zLJMhE7B`)<7Fg@{Vr9CMFbmSo84F)t|zp$TZu{{Mx+pG)TeQj)~Xv? yIkAb*(dpQ>5o#^OMuI;uztwVGM+CQUQHAapD@uPB7`q=%2F7}Wr5W^&r2hjtmUch@ diff --git a/languages/bigbluebutton-en_US.po b/languages/bigbluebutton-en_US.po index fe7af01..a45a9e6 100644 --- a/languages/bigbluebutton-en_US.po +++ b/languages/bigbluebutton-en_US.po @@ -126,6 +126,12 @@ msgstr "Moderator Code" msgid "Viewer Code" msgstr "Viewer Code" +msgid "Max Participants" +msgstr "Max Participants" + +msgid "Max Participants Msg" +msgstr "-1 = unlimited" + msgid "Recordable" msgstr "Recordable" diff --git a/languages/bigbluebutton.pot b/languages/bigbluebutton.pot index e757c01..23d0328 100644 --- a/languages/bigbluebutton.pot +++ b/languages/bigbluebutton.pot @@ -120,6 +120,12 @@ msgstr "" msgid "Viewer Code" msgstr "" +msgid "Max Participants" +msgstr "" + +msgid "Max Participants Msg" +msgstr "" + msgid "Recordable" msgstr "" From 783082b9013492147a5a6b4473c6bfe0e338f877 Mon Sep 17 00:00:00 2001 From: Jibon Costa Date: Fri, 24 Apr 2020 21:12:14 +0600 Subject: [PATCH 2/7] missed to add --- admin/class-bigbluebutton-register-custom-types.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/admin/class-bigbluebutton-register-custom-types.php b/admin/class-bigbluebutton-register-custom-types.php index f3340dc..9ae0c04 100644 --- a/admin/class-bigbluebutton-register-custom-types.php +++ b/admin/class-bigbluebutton-register-custom-types.php @@ -158,7 +158,7 @@ public function display_moderator_code_metabox( $object ) { public function display_maxParticipants_metabox( $object ) { $default_max_participants = "-1"; $entry_max_participants_label = __( 'Max Participants', 'bigbluebutton' ); - $defaultMsg = "-1 = unlimited"; + $defaultMsg = __( 'Max Participants Msg', 'bigbluebutton' ); $entry_max_participants_name = 'bbb-maxParticipants'; $existing_value = get_post_meta( $object->ID, 'bbb-room-maxParticipants', true ); wp_nonce_field( 'bbb-room-maxParticipants-nonce', 'bbb-room-maxParticipants-nonce' ); From 17995e19f77119ad25189df8b8e454d186423b52 Mon Sep 17 00:00:00 2001 From: Jibon Costa Date: Sat, 25 Apr 2020 15:18:38 +0600 Subject: [PATCH 3/7] Pre-upload presentation feature --- admin/class-bigbluebutton-admin-api.php | 4 ++ ...ss-bigbluebutton-register-custom-types.php | 25 ++++++++++ ...re-upload-presentation-metabox-display.php | 6 +++ includes/class-bigbluebutton-api.php | 46 ++++++++++++++++-- includes/class-bigbluebutton.php | 1 + languages/bigbluebutton-en_CA.mo | Bin 6149 -> 6364 bytes languages/bigbluebutton-en_CA.po | 9 ++++ languages/bigbluebutton-en_US.mo | Bin 6149 -> 6364 bytes languages/bigbluebutton-en_US.po | 9 ++++ languages/bigbluebutton.pot | 9 ++++ 10 files changed, 105 insertions(+), 4 deletions(-) create mode 100644 admin/partials/bigbluebutton-pre-upload-presentation-metabox-display.php diff --git a/admin/class-bigbluebutton-admin-api.php b/admin/class-bigbluebutton-admin-api.php index 1755425..ac61fe4 100644 --- a/admin/class-bigbluebutton-admin-api.php +++ b/admin/class-bigbluebutton-admin-api.php @@ -67,6 +67,10 @@ public function save_room( $post_id ) { update_post_meta( $post_id, 'bbb-room-recordable', ( $recordable ? 'true' : 'false' ) ); update_post_meta( $post_id, 'bbb-room-wait-for-moderator', ( $wait_for_mod ? 'true' : 'false' ) ); + if($_POST['bbb-pre-upload-presentation'] !== ""){ + update_post_meta( $post_id, 'bbb-room-pre-upload-presentation', $_POST['bbb-pre-upload-presentation'] ); + } + } else { return $post_id; } diff --git a/admin/class-bigbluebutton-register-custom-types.php b/admin/class-bigbluebutton-register-custom-types.php index 9ae0c04..4b15577 100644 --- a/admin/class-bigbluebutton-register-custom-types.php +++ b/admin/class-bigbluebutton-register-custom-types.php @@ -132,6 +132,15 @@ public function register_wait_for_moderator_metabox() { add_meta_box( 'bbb-room-wait-for-moderator', __( 'Wait for Moderator', 'bigbluebutton' ), array( $this, 'display_wait_for_mod_metabox' ), 'bbb-room' ); } + /** + * Show Pre-upload presentation metabox. + * + * @since 3.0.0 + */ + public function register_pre_upload_presentation_metabox() { + add_meta_box( 'bbb-room-pre-upload-presentation', __( 'Pre-upload presentation', 'bigbluebutton' ), array( $this, 'display_pre_upload_presentation' ), 'bbb-room' ); + } + /** * Display moderator code metabox. * @@ -207,4 +216,20 @@ public function display_allow_record_metabox( $object ) { wp_nonce_field( 'bbb-room-recordable-nonce', 'bbb-room-recordable-nonce' ); require 'partials/bigbluebutton-recordable-metabox-display.php'; } + + /** + * Display Pre-upload presentation metabox. + * + * @since 3.0.0 + * + * @param Object $object The object that has the room ID. + */ + public function display_pre_upload_presentation($object){ + $entry_pre_upload_presentation_label = __( 'Presentation Link', 'bigbluebutton' ); + $defaultMsg = __( 'Presentation Link Msg ', 'bigbluebutton' ); + $entry_pre_upload_presentation_name = 'bbb-pre-upload-presentation'; + $existing_value = get_post_meta( $object->ID, 'bbb-room-pre-upload-presentation', true ); + wp_nonce_field( 'bbb-room-pre-upload-presentation-nonce', 'bbb-room-pre-upload-presentation-nonce' ); + require 'partials/bigbluebutton-pre-upload-presentation-metabox-display.php'; + } } diff --git a/admin/partials/bigbluebutton-pre-upload-presentation-metabox-display.php b/admin/partials/bigbluebutton-pre-upload-presentation-metabox-display.php new file mode 100644 index 0000000..83a8ffc --- /dev/null +++ b/admin/partials/bigbluebutton-pre-upload-presentation-metabox-display.php @@ -0,0 +1,6 @@ + + + () + + () + diff --git a/includes/class-bigbluebutton-api.php b/includes/class-bigbluebutton-api.php index 9bb563c..b14dfc8 100644 --- a/includes/class-bigbluebutton-api.php +++ b/includes/class-bigbluebutton-api.php @@ -44,6 +44,7 @@ public static function create_meeting( $room_id, $logout_url ) { $recordable = get_post_meta( $rid, 'bbb-room-recordable', true ); $meeting_id = get_post_meta( $rid, 'bbb-room-meeting-id', true ); $maxParticipants= get_post_meta( $rid, 'bbb-room-maxParticipants', true ); + $preUplaodPresentation = get_post_meta( $rid, 'bbb-room-pre-upload-presentation', true ); $arr_params = array( 'name' => esc_attr( $name ), 'meetingID' => rawurlencode( $meeting_id ), @@ -57,8 +58,11 @@ public static function create_meeting( $room_id, $logout_url ) { } $url = self::build_url( 'create', $arr_params ); - - $full_response = self::get_response( $url ); + if($preUplaodPresentation !== ""){ + $full_response = self::get_response( $url, "post", $preUplaodPresentation); + }else{ + $full_response = self::get_response( $url ); + } if ( is_wp_error( $full_response ) ) { return 404; @@ -365,11 +369,45 @@ public static function test_bigbluebutton_server( $url, $salt ) { * @param String $url URL to get response from. * @return Array|WP_Error $response Server response in array format. */ - private static function get_response( $url ) { - $result = wp_remote_get( esc_url_raw( $url ) ); + private static function get_response( $url, $method = "get", $preUploadFileLink = null ) { + if($method == "post"){ + if($preUploadFileLink !== null){ + $payload = self::getPresentationsAsXML($preUploadFileLink); + $headers = array( + 'Content-type' => 'application/xml', + 'Content-length' => mb_strlen($payload) + ); + $result = wp_remote_post($url, array( + 'method' => 'POST', + 'headers' => $headers, + 'body' => $payload + )); + } + }else{ + $result = wp_remote_get( esc_url_raw( $url ) ); + } return $result; } + /** + * format pre upload file. + * + * @since 3.0.0 + * + * @param String $url URL + * @return String xml xml format. + */ + private function getPresentationsAsXML($url){ + $xml = new SimpleXMLElement(''); + $module = $xml->addChild('module'); + $module->addAttribute('name', 'presentation'); + $presentation = $module->addChild('document'); + $presentation->addAttribute('url', $url); + return $xml->asXML(); + } + + + /** * Convert website response to XML Object. * diff --git a/includes/class-bigbluebutton.php b/includes/class-bigbluebutton.php index 5eb4f7c..fe4935c 100644 --- a/includes/class-bigbluebutton.php +++ b/includes/class-bigbluebutton.php @@ -269,6 +269,7 @@ private function define_admin_hooks() { $this->loader->add_action( 'add_meta_boxes', $plugin_admin_register_custom_types, 'register_record_room_metabox' ); $this->loader->add_action( 'add_meta_boxes', $plugin_admin_register_custom_types, 'register_room_maxParticipants_metaboxes' ); $this->loader->add_action( 'add_meta_boxes', $plugin_admin_register_custom_types, 'register_wait_for_moderator_metabox' ); + $this->loader->add_action( 'add_meta_boxes', $plugin_admin_register_custom_types, 'register_pre_upload_presentation_metabox' ); $this->loader->add_action( 'save_post', $plugin_admin_api, 'save_room' ); // Show custom fields in rooms table. diff --git a/languages/bigbluebutton-en_CA.mo b/languages/bigbluebutton-en_CA.mo index ff08efe5be60d914d3475acd8aacd83fe6a2788e..cbf877a5b200f792032cd21271aecabe0ae7c0d6 100644 GIT binary patch delta 1836 zcmbW%OKeP09LMp$(I-`XdX%6<*s%8f&72Ag8z=L>pL5Qfd+xdC{AW%qcvlnuke71N zD6PbFBIYp*;foY5ls#!?<1v8g*o9fxkC}K3TktgI;|SK_SDb}q+@x{qFatNE=Gnm| z*DP)UDkXG8lO1*rb7)`34!n?|th?8kYaRm-w zBMv3{<7TNWPj6I=tjH>`5SJkz+rniWcDVLF*Y3p$^dE7aLM`ADPQjZv2_L)u5$9*r z^L}6|&o>XV>j4>D^x%A4jPr0l2Cy8@pl%#Q?Zji$0-hrud(FjM>I|lI~ zF2@ok@nQ$Y>!}>2BJZKj>?_t_4zsu8D&$_ffLh>HOvMMtOV}gS0-mA94Pzd@#|`)$ zHNJuE(NQ*G?--6OoAcKV4<;th@G0_a8$wMyf-U$7m0Xn^{7dws7Mja>X zzn~uY6Sd`I`H5)$Ow`d8;9jgiKgQ2esipD?bz>T%v=jNL1r(tsn2Ua_#X5|klIu1G zF^knGxq2~#cd;G|*&f-3I# zKPtISqQ(!Sj&cOat;EClFH0Pk#;MFDW)f40B}5+2PrM~{TScrRrV-le`GiV!lHb>{ z)YcNplhMMujnL)#OE6xW=`W`Py0) zW$hwDxk7H)9AYUkTFR)*CgzQHV5_V1>$Qf#;_9(ELee>#+dWVi~4j5PjH$ZFmB+@D2uX5({w^H7|*q*I_#9Ik|jf zm_@CC&UP*Y;uq{BrZeuwP8>w-Wf6InExGSkFq`ogqb4sa*f%OlGnc%E25g#!VP<*E^iOsFNDRH8_NN{x#f) zqgc!O_J~d?u3{0UGD|lGP;VSUZJ-7Dvvxj0cp7!o6R4CeVK>&1uLc}PKQ3bp{&rUL zaHZxfMl0#uq!Y$DWR7LCns(?%?Ysuro7E$0STkx~7&Ea8Tk#xf{xej{Uf}rzvzMs( zHEHowH6cq`TN>xD2X}Cx4I`)`n!-0Yi`wZ31)+H}NEU1smGf6f5!nK&hCaBlhl_MA z8&yL^s0|IFPITCPens?*Zs3LlgDx&YGBC6)~^(OtO4PHW> z&{a1capSwlA=pFbQ`9MR2jM~63GB0Yk=z={ah=ODs(-xP#C-I+Y?K-pIf5tOfIkZNz@!7@@SVhuB-_P1Oz&esx@{#zbN# z!HLIOv-5xS#;P0DnEuPEsX)E@{p+~Y>WC1rn^4Zwnuyw1kKAECkxP`iYf6PGUq@R( zC>8q%51~e##_H;5Y()Lw9%2`vIw?8GhuUGHgy0t!Ye7B>h;m{J(JZKbq};od5s; diff --git a/languages/bigbluebutton-en_CA.po b/languages/bigbluebutton-en_CA.po index cc485dc..b8313ab 100644 --- a/languages/bigbluebutton-en_CA.po +++ b/languages/bigbluebutton-en_CA.po @@ -132,6 +132,15 @@ msgstr "Max Participants" msgid "Max Participants Msg" msgstr "-1 = unlimited" +msgid "Pre-upload presentation" +msgstr "Pre-upload presentation" + +msgid "Presentation Link" +msgstr "Presentation Link" + +msgid "Presentation Link Msg" +msgstr "example: https://mysite.com/presentation.pdf" + msgid "Recordable" msgstr "Recordable" diff --git a/languages/bigbluebutton-en_US.mo b/languages/bigbluebutton-en_US.mo index 2fd77f734d2660bcb74dd8396de33c48e9606d12..e0fe9815dc5eb31612a51e91fb28b054782853db 100644 GIT binary patch delta 1836 zcmbW%OKeP09LMp$(I-`XdX%6<*s%8f&72Ag8z=L>pL5Qfd+xdC{AW%qcvlnuke71N zD6PbFBIYp*;foY5ls#!?<1v8g*o9fxkC}K3TktgI;|SK_SDb}q+@x{qFatNE=Gnm| z*DP)UDkXG8lO1*rb7)`34!n?|th?8kYaRm-w zBMv3{<7TNWPj6I=tjH>`5SJkz+rniWcDVLF*Y3p$^dE7aLM`ADPQjZv2_L)u5$9*r z^L}6|&o>XV>j4>D^x%A4jPr0l2Cy8@pl%#Q?Zji$0-hrud(FjM>I|lI~ zF2@ok@nQ$Y>!}>2BJZKj>?_t_4zsu8D&$_ffLh>HOvMMtOV}gS0-mA94Pzd@#|`)$ zHNJuE(NQ*G?--6OoAcKV4<;th@G0_a8$wMyf-U$7m0Xn^{7dws7Mja>X zzn~uY6Sd`I`H5)$Ow`d8;9jgiKgQ2esipD?bz>T%v=jNL1r(tsn2Ua_#X5|klIu1G zF^knGxq2~#cd;G|*&f-3I# zKPtISqQ(!Sj&cOat;EClFH0Pk#;MFDW)f40B}5+2PrM~{TScrRrV-le`GiV!lHb>{ z)YcNplhMMujnL)#OE6xW=`W`Py0) zW$hwDxk7H)9AYUkTFR)*CgzQHV5_V1>$Qf#;_9(ELee>#+dWVi~4j5PjH$ZFmB+@D2uX5({w^H7|*q*I_#9Ik|jf zm_@CC&UP*Y;uq{BrZeuwP8>w-Wf6InExGSkFq`ogqb4sa*f%OlGnc%E25g#!VP<*E^iOsFNDRH8_NN{x#f) zqgc!O_J~d?u3{0UGD|lGP;VSUZJ-7Dvvxj0cp7!o6R4CeVK>&1uLc}PKQ3bp{&rUL zaHZxfMl0#uq!Y$DWR7LCns(?%?Ysuro7E$0STkx~7&Ea8Tk#xf{xej{Uf}rzvzMs( zHEHowH6cq`TN>xD2X}Cx4I`)`n!-0Yi`wZ31)+H}NEU1smGf6f5!nK&hCaBlhl_MA z8&yL^s0|IFPITCPens?*Zs3LlgDx&YGBC6)~^(OtO4PHW> z&{a1capSwlA=pFbQ`9MR2jM~63GB0Yk=z={ah=ODs(-xP#C-I+Y?K-pIf5tOfIkZNz@!7@@SVhuB-_P1Oz&esx@{#zbN# z!HLIOv-5xS#;P0DnEuPEsX)E@{p+~Y>WC1rn^4Zwnuyw1kKAECkxP`iYf6PGUq@R( zC>8q%51~e##_H;5Y()Lw9%2`vIw?8GhuUGHgy0t!Ye7B>h;m{J(JZKbq};od5s; diff --git a/languages/bigbluebutton-en_US.po b/languages/bigbluebutton-en_US.po index a45a9e6..5dabe0a 100644 --- a/languages/bigbluebutton-en_US.po +++ b/languages/bigbluebutton-en_US.po @@ -132,6 +132,15 @@ msgstr "Max Participants" msgid "Max Participants Msg" msgstr "-1 = unlimited" +msgid "Pre-upload presentation" +msgstr "Pre-upload presentation" + +msgid "Presentation Link" +msgstr "Presentation Link" + +msgid "Presentation Link Msg" +msgstr "example: https://mysite.com/presentation.pdf" + msgid "Recordable" msgstr "Recordable" diff --git a/languages/bigbluebutton.pot b/languages/bigbluebutton.pot index 23d0328..a63a3e9 100644 --- a/languages/bigbluebutton.pot +++ b/languages/bigbluebutton.pot @@ -126,6 +126,15 @@ msgstr "" msgid "Max Participants Msg" msgstr "" +msgid "Pre-upload presentation" +msgstr "" + +msgid "Presentation Link" +msgstr "" + +msgid "Presentation Link Msg" +msgstr "" + msgid "Recordable" msgstr "" From 0bdd3f9da555983506d6a1167ce9da2190cc21a6 Mon Sep 17 00:00:00 2001 From: "Jibon L. Costa" Date: Thu, 7 May 2020 23:21:04 +0600 Subject: [PATCH 4/7] removed extra comma (,) at the end It was adding extra comma at the end of $meeting_ids & $state. This should fixed it. --- includes/class-bigbluebutton-api.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/includes/class-bigbluebutton-api.php b/includes/class-bigbluebutton-api.php index b14dfc8..e752fae 100644 --- a/includes/class-bigbluebutton-api.php +++ b/includes/class-bigbluebutton-api.php @@ -180,8 +180,8 @@ public static function get_recordings( $room_ids, $recording_state = 'published' substr_replace( $meeting_ids, '', -1 ); $arr_params = array( - 'meetingID' => $meeting_ids, - 'state' => $state, + 'meetingID' => rtrim($meeting_ids, ","), + 'state' => rtrim($state, ","), ); $url = self::build_url( 'getRecordings', $arr_params ); From 65093cbfe38a9e5687fcce056bacfae5c25397c4 Mon Sep 17 00:00:00 2001 From: Jibon Costa Date: Fri, 8 May 2020 15:28:46 +0600 Subject: [PATCH 5/7] added Duration & Guest Policy --- admin/class-bigbluebutton-admin-api.php | 2 + ...ss-bigbluebutton-register-custom-types.php | 37 ++++++++++++++++++ admin/css/bigbluebutton-admin.css | 4 ++ ...uebutton-extra-options-metabox-display.php | 10 +++++ includes/class-bigbluebutton-api.php | 10 ++++- includes/class-bigbluebutton.php | 1 + languages/bigbluebutton-en_CA.mo | Bin 6364 -> 6563 bytes languages/bigbluebutton-en_CA.po | 12 ++++++ languages/bigbluebutton-en_US.mo | Bin 6364 -> 6563 bytes languages/bigbluebutton-en_US.po | 12 ++++++ languages/bigbluebutton.pot | 12 ++++++ 11 files changed, 99 insertions(+), 1 deletion(-) create mode 100644 admin/partials/bigbluebutton-extra-options-metabox-display.php diff --git a/admin/class-bigbluebutton-admin-api.php b/admin/class-bigbluebutton-admin-api.php index ac61fe4..21a4564 100644 --- a/admin/class-bigbluebutton-admin-api.php +++ b/admin/class-bigbluebutton-admin-api.php @@ -70,6 +70,8 @@ public function save_room( $post_id ) { if($_POST['bbb-pre-upload-presentation'] !== ""){ update_post_meta( $post_id, 'bbb-room-pre-upload-presentation', $_POST['bbb-pre-upload-presentation'] ); } + update_post_meta( $post_id, 'bbb-room-duration', $_POST['bbb-room-duration'] ); + update_post_meta( $post_id, 'bbb-room-guestPolicy', $_POST['bbb-room-guestPolicy'] ); } else { return $post_id; diff --git a/admin/class-bigbluebutton-register-custom-types.php b/admin/class-bigbluebutton-register-custom-types.php index 4b15577..2edfe5e 100644 --- a/admin/class-bigbluebutton-register-custom-types.php +++ b/admin/class-bigbluebutton-register-custom-types.php @@ -141,6 +141,15 @@ public function register_pre_upload_presentation_metabox() { add_meta_box( 'bbb-room-pre-upload-presentation', __( 'Pre-upload presentation', 'bigbluebutton' ), array( $this, 'display_pre_upload_presentation' ), 'bbb-room' ); } + /** + * Show Pre-upload presentation metabox. + * + * @since 3.0.0 + */ + public function register_extra_options_metabox() { + add_meta_box( 'bbb-room-extra-options', __( 'Extra Options', 'bigbluebutton' ), array( $this, 'display_extra_options' ), 'bbb-room' ); + } + /** * Display moderator code metabox. * @@ -232,4 +241,32 @@ public function display_pre_upload_presentation($object){ wp_nonce_field( 'bbb-room-pre-upload-presentation-nonce', 'bbb-room-pre-upload-presentation-nonce' ); require 'partials/bigbluebutton-pre-upload-presentation-metabox-display.php'; } + + public function display_extra_options($object){ + $duration_label = __( 'Duration', 'bigbluebutton' ); + $duration_value = get_post_meta( $object->ID, 'bbb-room-duration', true ); + + $guestPolicy_label = __( 'Guest Policy', 'bigbluebutton'); + $guestPolicy_value = get_post_meta( $object->ID, 'bbb-room-guestPolicy', true ); + $guestPolicy_select = $this->formatGuestPolicy($guestPolicy_value); + + wp_nonce_field( 'bbb-room-extra-options-nonce', 'bbb-room-extra-options-nonce' ); + require 'partials/bigbluebutton-extra-options-metabox-display.php'; + } + + private function formatGuestPolicy($value = "ALWAYS_ACCEPT"){ + $policies = array("ALWAYS_ACCEPT", "ASK_MODERATOR", "ALWAYS_DENY"); + + $html = '"; + + return $html; + } } diff --git a/admin/css/bigbluebutton-admin.css b/admin/css/bigbluebutton-admin.css index 69a1357..efb4928 100644 --- a/admin/css/bigbluebutton-admin.css +++ b/admin/css/bigbluebutton-admin.css @@ -55,3 +55,7 @@ margin-top: 2em; margin-bottom: 2em; } + +#bbb-room-extra-options .extra-options-item{ + margin: 10px 0px; +} \ No newline at end of file diff --git a/admin/partials/bigbluebutton-extra-options-metabox-display.php b/admin/partials/bigbluebutton-extra-options-metabox-display.php new file mode 100644 index 0000000..e02b0d3 --- /dev/null +++ b/admin/partials/bigbluebutton-extra-options-metabox-display.php @@ -0,0 +1,10 @@ +
+ + () +
+ +
+ + +
+ diff --git a/includes/class-bigbluebutton-api.php b/includes/class-bigbluebutton-api.php index e752fae..c0a7274 100644 --- a/includes/class-bigbluebutton-api.php +++ b/includes/class-bigbluebutton-api.php @@ -45,6 +45,8 @@ public static function create_meeting( $room_id, $logout_url ) { $meeting_id = get_post_meta( $rid, 'bbb-room-meeting-id', true ); $maxParticipants= get_post_meta( $rid, 'bbb-room-maxParticipants', true ); $preUplaodPresentation = get_post_meta( $rid, 'bbb-room-pre-upload-presentation', true ); + $duration= get_post_meta( $rid, 'bbb-room-duration', true ); + $guestPolicy= get_post_meta( $rid, 'bbb-room-guestPolicy', true ); $arr_params = array( 'name' => esc_attr( $name ), 'meetingID' => rawurlencode( $meeting_id ), @@ -56,6 +58,12 @@ public static function create_meeting( $room_id, $logout_url ) { if($maxParticipants && $maxParticipants > 0){ $arr_params['maxParticipants'] = $maxParticipants; } + if($duration > 0){ + $arr_params['duration'] = $duration; + } + if($guestPolicy){ + $arr_params['guestPolicy'] = $guestPolicy; + } $url = self::build_url( 'create', $arr_params ); if($preUplaodPresentation !== ""){ @@ -181,7 +189,7 @@ public static function get_recordings( $room_ids, $recording_state = 'published' $arr_params = array( 'meetingID' => rtrim($meeting_ids, ","), - 'state' => rtrim($state, ","), + 'state' => rtrim($state, ",") ); $url = self::build_url( 'getRecordings', $arr_params ); diff --git a/includes/class-bigbluebutton.php b/includes/class-bigbluebutton.php index fe4935c..0df2691 100644 --- a/includes/class-bigbluebutton.php +++ b/includes/class-bigbluebutton.php @@ -270,6 +270,7 @@ private function define_admin_hooks() { $this->loader->add_action( 'add_meta_boxes', $plugin_admin_register_custom_types, 'register_room_maxParticipants_metaboxes' ); $this->loader->add_action( 'add_meta_boxes', $plugin_admin_register_custom_types, 'register_wait_for_moderator_metabox' ); $this->loader->add_action( 'add_meta_boxes', $plugin_admin_register_custom_types, 'register_pre_upload_presentation_metabox' ); + $this->loader->add_action( 'add_meta_boxes', $plugin_admin_register_custom_types, 'register_extra_options_metabox' ); $this->loader->add_action( 'save_post', $plugin_admin_api, 'save_room' ); // Show custom fields in rooms table. diff --git a/languages/bigbluebutton-en_CA.mo b/languages/bigbluebutton-en_CA.mo index cbf877a5b200f792032cd21271aecabe0ae7c0d6..5f706de23c20898aab88e55421764db4d5f74b41 100644 GIT binary patch delta 1874 zcma*oS!_&E9LMp$r5(#CRjsvLw6@YkQOi`TS~a!Q@*=jh(UPG$s#DQO+*gT2B12+J z5s4-qJlIkXNF-uQk%$)+L68uFh!-Jzf73%eI+_3doO|w^<(~hU_F2K1LjU>T-iM7+ zO^hNA^)%at!6Yt}j%2g`cohS93xn8+eeo$);cHC8Jias&7h)E+VjpZn^=n7^7HFe24?^C62~Vu04fOG=PVLa2l@1`PdteBWtiz?s+>7;l2YI!a6YppCBK5 zow)bSK2jM*CT6-?;nF?*2RKMUr?Z(@+Z- zi^DJ++ikfgQDhvCOj~(QqiBDh=UcelDkJ*?(p42ad+KDh~;uXkOY$KLp z1eKz5=+{ztL8T7M=v|EM=;0fjg~^N}i%~g^VF4b+m3SW+!ZLY1EpRew;U&l>SOsbU z)u`{S#lg5a#e7>#rIiMCxQWW;9c=1B&QKjnNVsyi1oeiiQ3Kat6>dcxzRUOs@1hoZ zjC_$*yMe>;4yxZP*Zv`u{nx%~X%!Y=6j$PD z)EW7TjBUSA3r{EE+L4i{1!SYXmycw@Lb#aut(uBD96{x>4LN%@o|sOkj3t!Ea@|mt zb(6R%T`JQErIPt=5uvhx$Rn2MhN7MFRG~~EChGUEvXIc~`0JY}%eiVX;|LwZIfM?5 zN@X{Hual{1=X5aHM9U;N9*N!HU2G&#MkxOwBAZZZ^yl8M;4+W+w~*RI$#?1}s>4^} z?uBxgLnuYsX8r$|L{t&VzenMdmUu-VH(0SdwzJl&-l3=Qra)n^vZcN` z=B%vV`XzRCxZ6-20!q&=V(rtXpf+eFqP$DnpW zMbf5)CIki6qCi??5Jpr~3tPCbO|AR>X3lh&|NWeEJonsl&-q^;RDG!oeDlTJF-j+~ zjTntG8^U)nTqtMa%o1<_J$M-taSY>e0z2>~rs6VI<0|gNJZ{psHuU0A)I6uSq?iS4 zfJ!zUBjFC4!erVHu@9f2*5c!C=Clmd-?K3dE07`9f=Sqg{H)it2Qh>82p+^q+=q*y z{(xC5%hMZWAuFj``#m)E_H{pWoUv{pbp7#f1 zdA>z4yB^@>q6ep9Ef!%34q!gsLftrv+KC0!0^TA&`^d$Q-%&@9$GHvQNgTxIcmT7R zBp3TIP(x*$ikw58*(z3IGPCz!6LPOjqZW7{V{smN344KBz#G)KCG_D}Jc7Sbro2(uN6hHTy3cbH6RIfmN}>i%U!z$^`KVQ?nWh7KPtJ#P{}pt z`qxk|vtU&T>A>LYc}qjL@nqZD!FD*$@R+he{%jpJ@7AT z%cJ>3G=Dtm=+f{U7NZ{nx2aT7`GC4Hj#1i)RMY}8Q4tPZvEZqyc?KrP@jYTQL+S8WWHT-Q$Q3!crbY~*zD;I{!A$gu6ZhF%e+(Zkw&o0J2|`Jdl~l+ D(F1_x diff --git a/languages/bigbluebutton-en_CA.po b/languages/bigbluebutton-en_CA.po index b8313ab..7b2d8ea 100644 --- a/languages/bigbluebutton-en_CA.po +++ b/languages/bigbluebutton-en_CA.po @@ -141,6 +141,18 @@ msgstr "Presentation Link" msgid "Presentation Link Msg" msgstr "example: https://mysite.com/presentation.pdf" +msgid "Extra Options" +msgstr "Extra Options" + +msgid "Duration" +msgstr "Duration" + +msgid "Duration Msg" +msgstr "In minutes. 0 = unlimited" + +msgid "Guest Policy" +msgstr "Guest Policy" + msgid "Recordable" msgstr "Recordable" diff --git a/languages/bigbluebutton-en_US.mo b/languages/bigbluebutton-en_US.mo index e0fe9815dc5eb31612a51e91fb28b054782853db..4b29ccda60ea889af25e086ca266a5cdb26babf2 100644 GIT binary patch delta 1874 zcma*oS!_&E9LMp$r5(#CRjsvLw6@YkQOi`TS~a!Q@*=jh(UPG$s#DQO+*gT2B12+J z5s4-qJlIkXNF-uQk%$)+L68uFh!-Jzf73%eI+_3doO|w^<(~hU_F2K1LjU>T-iM7+ zO^hNA^)%at!6Yt}j%2g`cohS93xn8+eeo$);cHC8Jias&7h)E+VjpZn^=n7^7HFe24?^C62~Vu04fOG=PVLa2l@1`PdteBWtiz?s+>7;l2YI!a6YppCBK5 zow)bSK2jM*CT6-?;nF?*2RKMUr?Z(@+Z- zi^DJ++ikfgQDhvCOj~(QqiBDh=UcelDkJ*?(p42ad+KDh~;uXkOY$KLp z1eKz5=+{ztL8T7M=v|EM=;0fjg~^N}i%~g^VF4b+m3SW+!ZLY1EpRew;U&l>SOsbU z)u`{S#lg5a#e7>#rIiMCxQWW;9c=1B&QKjnNVsyi1oeiiQ3Kat6>dcxzRUOs@1hoZ zjC_$*yMe>;4yxZP*Zv`u{nx%~X%!Y=6j$PD z)EW7TjBUSA3r{EE+L4i{1!SYXmycw@Lb#aut(uBD96{x>4LN%@o|sOkj3t!Ea@|mt zb(6R%T`JQErIPt=5uvhx$Rn2MhN7MFRG~~EChGUEvXIc~`0JY}%eiVX;|LwZIfM?5 zN@X{Hual{1=X5aHM9U;N9*N!HU2G&#MkxOwBAZZZ^yl8M;4+W+w~*RI$#?1}s>4^} z?uBxgLnuYsX8r$|L{t&VzenMdmUu-VH(0SdwzJl&-l3=Qra)n^vZcN` z=B%vV`XzRCxZ6-20!q&=V(rtXpf+eFqP$DnpW zMbf5)CIki6qCi??5Jpr~3tPCbO|AR>X3lh&|NWeEJonsl&-q^;RDG!oeDlTJF-j+~ zjTntG8^U)nTqtMa%o1<_J$M-taSY>e0z2>~rs6VI<0|gNJZ{psHuU0A)I6uSq?iS4 zfJ!zUBjFC4!erVHu@9f2*5c!C=Clmd-?K3dE07`9f=Sqg{H)it2Qh>82p+^q+=q*y z{(xC5%hMZWAuFj``#m)E_H{pWoUv{pbp7#f1 zdA>z4yB^@>q6ep9Ef!%34q!gsLftrv+KC0!0^TA&`^d$Q-%&@9$GHvQNgTxIcmT7R zBp3TIP(x*$ikw58*(z3IGPCz!6LPOjqZW7{V{smN344KBz#G)KCG_D}Jc7Sbro2(uN6hHTy3cbH6RIfmN}>i%U!z$^`KVQ?nWh7KPtJ#P{}pt z`qxk|vtU&T>A>LYc}qjL@nqZD!FD*$@R+he{%jpJ@7AT z%cJ>3G=Dtm=+f{U7NZ{nx2aT7`GC4Hj#1i)RMY}8Q4tPZvEZqyc?KrP@jYTQL+S8WWHT-Q$Q3!crbY~*zD;I{!A$gu6ZhF%e+(Zkw&o0J2|`Jdl~l+ D(F1_x diff --git a/languages/bigbluebutton-en_US.po b/languages/bigbluebutton-en_US.po index 5dabe0a..00d532d 100644 --- a/languages/bigbluebutton-en_US.po +++ b/languages/bigbluebutton-en_US.po @@ -141,6 +141,18 @@ msgstr "Presentation Link" msgid "Presentation Link Msg" msgstr "example: https://mysite.com/presentation.pdf" +msgid "Extra Options" +msgstr "Extra Options" + +msgid "Duration" +msgstr "Duration" + +msgid "Duration Msg" +msgstr "In minutes. 0 = unlimited" + +msgid "Guest Policy" +msgstr "Guest Policy" + msgid "Recordable" msgstr "Recordable" diff --git a/languages/bigbluebutton.pot b/languages/bigbluebutton.pot index a63a3e9..0e3778c 100644 --- a/languages/bigbluebutton.pot +++ b/languages/bigbluebutton.pot @@ -135,6 +135,18 @@ msgstr "" msgid "Presentation Link Msg" msgstr "" +msgid "Extra Options" +msgstr "" + +msgid "Duration" +msgstr "" + +msgid "Duration Msg" +msgstr "" + +msgid "Guest Policy" +msgstr "" + msgid "Recordable" msgstr "" From d4545bd4012ed42e37a84694ccd6071e96833b3a Mon Sep 17 00:00:00 2001 From: Jibon Costa Date: Fri, 8 May 2020 15:31:56 +0600 Subject: [PATCH 6/7] typo --- admin/class-bigbluebutton-register-custom-types.php | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/admin/class-bigbluebutton-register-custom-types.php b/admin/class-bigbluebutton-register-custom-types.php index 2edfe5e..b7635b4 100644 --- a/admin/class-bigbluebutton-register-custom-types.php +++ b/admin/class-bigbluebutton-register-custom-types.php @@ -142,7 +142,7 @@ public function register_pre_upload_presentation_metabox() { } /** - * Show Pre-upload presentation metabox. + * Show Extra Options metabox. * * @since 3.0.0 */ @@ -242,6 +242,13 @@ public function display_pre_upload_presentation($object){ require 'partials/bigbluebutton-pre-upload-presentation-metabox-display.php'; } + /** + * Display Extra options metabox. + * + * @since 3.0.0 + * + * @param Object $object The object that has the room ID. + */ public function display_extra_options($object){ $duration_label = __( 'Duration', 'bigbluebutton' ); $duration_value = get_post_meta( $object->ID, 'bbb-room-duration', true ); @@ -254,6 +261,10 @@ public function display_extra_options($object){ require 'partials/bigbluebutton-extra-options-metabox-display.php'; } + /** + * Format Guest Policy options + * + */ private function formatGuestPolicy($value = "ALWAYS_ACCEPT"){ $policies = array("ALWAYS_ACCEPT", "ASK_MODERATOR", "ALWAYS_DENY"); From 2056d773b3698ffd7f796f1abad5dab40bd10911 Mon Sep 17 00:00:00 2001 From: "Jibon L. Costa" Date: Wed, 24 Mar 2021 13:46:12 +0600 Subject: [PATCH 7/7] increase timeout to 30 seconds --- includes/class-bigbluebutton-api.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/includes/class-bigbluebutton-api.php b/includes/class-bigbluebutton-api.php index c0a7274..3233952 100644 --- a/includes/class-bigbluebutton-api.php +++ b/includes/class-bigbluebutton-api.php @@ -386,13 +386,16 @@ private static function get_response( $url, $method = "get", $preUploadFileLink 'Content-length' => mb_strlen($payload) ); $result = wp_remote_post($url, array( + 'timeout' => 30, 'method' => 'POST', 'headers' => $headers, 'body' => $payload )); } }else{ - $result = wp_remote_get( esc_url_raw( $url ) ); + $result = wp_remote_get(esc_url_raw($url), array( + 'timeout' => 30, + )); } return $result; }