PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 4.14.2
GiveWP – Donation Plugin and Fundraising Platform v4.14.2
4.16.3 4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / src / DonorDashboards / Block.php
give / src / DonorDashboards Last commit date
Admin 4 years ago Exceptions 4 years ago Factories 4 years ago Helpers 4 months ago Pipeline 1 year ago Repositories 3 years ago Routes 2 years ago Tabs 9 months ago resources 4 months ago App.php 1 year ago Block.php 1 year ago Helpers.php 1 year ago Profile.php 1 year ago RequestHandler.php 5 months ago ServiceProvider.php 2 years ago Shortcode.php 2 years ago
Block.php
96 lines
1 <?php
2
3 namespace Give\DonorDashboards;
4
5 use Give\DonorDashboards\App as DonorDashboard;
6
7 class Block
8 {
9
10 protected $donorDashboard;
11
12 public function __construct()
13 {
14 $this->donorDashboard = give(DonorDashboard::class);
15 }
16
17 /**
18 * Registers Donor Dashboard block
19 *
20 * @since 2.10.0
21 **/
22 public function addBlock()
23 {
24 register_block_type(
25 'give/donor-dashboard',
26 [
27 'render_callback' => [$this, 'renderCallback'],
28 'attributes' => [
29 'align' => [
30 'type' => 'string',
31 'default' => 'wide',
32 ],
33 'accent_color' => [
34 'type' => 'string',
35 'default' => '#68bb6c',
36 ],
37 ],
38 ]
39 );
40 }
41
42 /**
43 * Returns Donor Profile block markup
44 *
45 * @since 2.22.1 Add script for iframe onload event to activate gutenberg edit mode.
46 * Gutenberg block edit mode activates when focus set to block container.
47 * @since 2.10.0
48 **/
49 public function renderCallback($attributes)
50 {
51 $output = $this->donorDashboard->getOutput($attributes);
52
53 if( defined( 'REST_REQUEST' ) && REST_REQUEST ) {
54 $output = str_replace(
55 'onload="',
56 sprintf(
57 'onload="%s;',
58 'const iframe = this;this.contentWindow.document.addEventListener(\'click\', function(){iframe.closest(\'[data-block]\').focus({preventScroll: true});})'
59 ),
60 $output
61 );
62 }
63
64 return $output;
65 }
66
67 /**
68 * Load Donor Profile frontend assets
69 *
70 * @since 2.10.0
71 **/
72 public function loadFrontendAssets()
73 {
74 if (has_block('give/donor-dashboard')) {
75 return $this->donorDashboard->loadAssets();
76 }
77 }
78
79 /**
80 * Load Donor Profile block editor assets
81 *
82 * @since 2.10.0
83 **/
84 public function loadEditorAssets()
85 {
86 wp_enqueue_script(
87 'give-donor-dashboards-block',
88 GIVE_PLUGIN_URL . 'build/assets/dist/js/donor-dashboards-block.js',
89 [],
90 GIVE_VERSION,
91 true
92 );
93 wp_set_script_translations( 'give-donor-dashboards-block', 'give' );
94 }
95 }
96