PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 3.19.4
GiveWP – Donation Plugin and Fundraising Platform v3.19.4
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 years ago Pipeline 1 year ago Repositories 3 years ago Routes 2 years ago Tabs 1 year ago resources 1 year ago App.php 1 year ago Block.php 2 years ago Helpers.php 1 year ago Profile.php 1 year ago RequestHandler.php 4 years 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 . '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