PluginProbe ʕ •ᴥ•ʔ
Presto Player / 4.3.1
Presto Player v4.3.1
4.3.1 4.3.0 4.2.4 4.2.3 4.2.2 4.2.0 4.2.1 trunk 1.10.0 1.10.1 1.10.2 1.11.0 1.12.0 1.13.0 1.14.0 1.14.1 1.5.10 1.5.11 1.5.12 1.5.13 1.5.14 1.5.15 1.5.5 1.5.6 1.5.7 1.5.8 1.5.9 1.6.0 1.6.1 1.6.10 1.6.11 1.6.12 1.6.13 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.7 1.6.8 1.6.9 1.7.0 1.7.1 1.7.2 1.8.0 1.8.1 1.8.2 1.8.3 1.8.4 1.8.5 1.8.6 1.9.0 1.9.1 1.9.10 1.9.11 1.9.12 1.9.13 1.9.14 1.9.2 1.9.3 1.9.4 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.0.0 2.0.1 2.0.10 2.0.11 2.0.12 2.0.13 2.0.14 2.0.15 2.0.16 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.0.8 2.0.9 2.1.0 2.2.0 2.2.1 2.2.2 2.2.3 2.2.3-beta1 2.3.0 2.3.1 2.3.2 2.3.3 3.0.0 3.0.0-beta1 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.8 3.1.0 3.1.1 3.1.2 3.1.3 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.0.5 4.0.6 4.0.7 4.0.8 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4
presto-player / inc / Blocks / ReusableVideoBlock.php
presto-player / inc / Blocks Last commit date
AudioBlock.php 9 months ago MediaHubBlock.php 9 months ago PopupBlock.php 10 months ago PopupMediaBlock.php 7 months ago PopupTriggerBlock.php 10 months ago ReusableEditBlock.php 9 months ago ReusableVideoBlock.php 2 weeks ago SelfHostedBlock.php 9 months ago VimeoBlock.php 9 months ago YouTubeBlock.php 9 months ago
ReusableVideoBlock.php
66 lines
1 <?php
2 /**
3 * Reusable Video Block Class
4 *
5 * @package PrestoPlayer\Blocks
6 */
7
8 namespace PrestoPlayer\Blocks;
9
10 use PrestoPlayer\Models\ReusableVideo;
11
12 /**
13 * Reusable Video Block
14 */
15 class ReusableVideoBlock {
16 /**
17 * Block name
18 *
19 * @var string
20 */
21 protected $name = 'reusable-display';
22
23 /**
24 * Register Block
25 *
26 * @return void
27 */
28 public function register() {
29 add_action( 'init', array( $this, 'registerBlockType' ) );
30 }
31
32 /**
33 * Register the block type
34 *
35 * @return void
36 */
37 public function registerBlockType() {
38 register_block_type(
39 "presto-player/$this->name",
40 // @phpstan-ignore-next-line -- WP stubs follow core's docblock typing api_version as string, but WP_Block_Type::$api_version is int.
41 array(
42 'api_version' => 3,
43 'render_callback' => array( $this, 'html' ),
44 )
45 );
46 }
47
48 /**
49 * Dynamic block output
50 *
51 * @param array $attributes Block attributes.
52 *
53 * @return string
54 */
55 public function html( $attributes ) {
56 // create reusable video block instance.
57 $block = new ReusableVideo( $attributes['id'] ?? '' );
58
59 // avoid override here, so that inner block id is not replaced.
60 unset( $attributes['id'] );
61
62 // render block.
63 return $block->renderBlock( $attributes );
64 }
65 }
66