PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 3.1.2
GiveWP – Donation Plugin and Fundraising Platform v3.1.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 / DonationForms / Shortcodes / GiveFormShortcode.php
give / src / DonationForms / Shortcodes Last commit date
GiveFormShortcode.php 2 years ago
GiveFormShortcode.php
59 lines
1 <?php
2
3 namespace Give\DonationForms\Shortcodes;
4
5 use Give\DonationForms\Actions\GenerateDonationFormViewRouteUrl;
6 use Give\DonationForms\Blocks\DonationFormBlock\Controllers\BlockRenderController;
7
8 class GiveFormShortcode
9 {
10 /**
11 * @var int $instance
12 */
13 public static $instance = 0;
14
15 /**
16 * @unreleased include v3 block attributes for shortcode.
17 * @since 3.1.1 use static instance ID to simulate blockId attribute
18 * @since 3.0.0
19 */
20 public function __invoke(string $output, array $atts): string
21 {
22 self::$instance++;
23
24 $formId = absint($atts['id']);
25 $isV3Form = (bool)give()->form_meta->get_meta($formId, 'formBuilderSettings', true);
26
27 if (!$formId || !$isV3Form) {
28 return $output;
29 }
30
31 $formFormat = $atts['display_style'];
32 $openFormButton = $atts['continue_button_title'];
33
34 $controller = new BlockRenderController();
35 $blockAttributes = [
36 'formId' => $formId,
37 'blockId' => 'give-form-shortcode-' . self::$instance,
38 'formFormat' => $formFormat,
39 'openFormButton' => $openFormButton
40 ];
41
42 $output = $controller->render($blockAttributes);
43
44 if (!$output) {
45 $viewUrl = (new GenerateDonationFormViewRouteUrl())($formId);
46 $output = sprintf(
47 "<iframe
48 src='%s'
49 style='width: 1px;min-width: 100%%;border: 0;transition: height 0.25s;'
50 onload='if( \"undefined\" !== typeof Give ) { Give.initializeIframeResize(this) }'
51 ></iframe>",
52 esc_url($viewUrl)
53 );
54 }
55
56 return $output;
57 }
58 }
59