PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 4.13.1
GiveWP – Donation Plugin and Fundraising Platform v4.13.1
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 / Campaigns / Actions / RegisterCampaignBlocks.php
give / src / Campaigns / Actions Last commit date
AddCampaignFormFromRequest.php 1 year ago AddNewBadgeToAdminMenuItem.php 1 year ago ArchiveCampaignFormsAsDraftStatus.php 1 year ago ArchiveCampaignPagesAsDraftStatus.php 1 year ago AssignDuplicatedFormToCampaign.php 1 year ago AssociateCampaignPageWithCampaign.php 1 year ago CacheCampaignData.php 7 months ago ConvertQueryDataToCampaign.php 1 year ago CreateCampaignPage.php 1 year ago CreateDefaultCampaignForm.php 1 year ago CreateDefaultLayoutForCampaignPage.php 1 year ago DuplicateCampaign.php 7 months ago EnqueueCampaignPageEditorAssets.php 1 year ago FormInheritsCampaignGoal.php 1 year ago LoadCampaignAdminOptions.php 11 months ago LoadCampaignDetailsAssets.php 1 year ago LoadCampaignPublicOptions.php 11 months ago LoadCampaignsListTableAssets.php 11 months ago PreventDeleteDefaultForm.php 1 year ago RedirectLegacyCreateFormToCreateCampaign.php 1 year ago RegisterCampaignBlocks.php 11 months ago RegisterCampaignIdRestField.php 1 year ago RegisterCampaignShortcodes.php 10 months ago RenderDonateButton.php 9 months ago ReplaceGiveFormsCptLabels.php 1 year ago UnarchiveCampaignFormAsPublishStatus.php 1 year ago
RegisterCampaignBlocks.php
115 lines
1 <?php
2
3 namespace Give\Campaigns\Actions;
4
5 use Give\Framework\Support\Facades\Scripts\ScriptAsset;
6 use Give\Helpers\Language;
7 use WP_Block_Type;
8
9 /**
10 * @since 4.0.0
11 */
12 class RegisterCampaignBlocks
13 {
14 private $campaignBlocks = [];
15
16 /**
17 * @since 4.6.1 Load campaign public options on frontend
18 * @since 4.0.0
19 */
20 public function __invoke()
21 {
22 $blockPaths = glob(dirname(__DIR__) . '/Blocks/*', GLOB_ONLYDIR);
23
24 $this->campaignBlocks = array_filter(
25 array_map('register_block_type', $blockPaths),
26 function ($block) {
27 return $block instanceof WP_Block_Type;
28 }
29 );
30
31 $this->registerSharedStyles();
32 $this->loadCampaignPublicOptions();
33 }
34
35 /**
36 * @since 4.6.1 Load campaign admin options on block editor
37 * @since 4.3.0 set script translations
38 * @since 4.0.0
39 */
40 public function loadBlockEditorAssets(): void
41 {
42 give(LoadCampaignAdminOptions::class)();
43
44 $handleName = 'givewp-campaign-blocks';
45 $scriptAsset = ScriptAsset::get(GIVE_PLUGIN_DIR . 'build/campaignBlocks.asset.php');
46
47 wp_register_script(
48 $handleName,
49 GIVE_PLUGIN_URL . 'build/campaignBlocks.js',
50 $scriptAsset['dependencies'],
51 $scriptAsset['version'],
52 true
53 );
54 wp_enqueue_script($handleName);
55
56 Language::setScriptTranslations($handleName);
57
58 wp_enqueue_style(
59 $handleName,
60 GIVE_PLUGIN_URL . 'build/campaignBlocks.css',
61 ['wp-components'],
62 $scriptAsset['version']
63 );
64
65 $handleName = 'givewp-campaign-landing-page-blocks';
66 $scriptAsset = ScriptAsset::get(GIVE_PLUGIN_DIR . 'build/campaignBlocksLandingPage.asset.php');
67
68 wp_register_script(
69 $handleName,
70 GIVE_PLUGIN_URL . 'build/campaignBlocksLandingPage.js',
71 $scriptAsset['dependencies'],
72 $scriptAsset['version'],
73 true
74 );
75 wp_enqueue_script($handleName);
76
77 Language::setScriptTranslations($handleName);
78
79 wp_enqueue_style(
80 $handleName,
81 GIVE_PLUGIN_URL . 'build/campaignBlocksLandingPage.css',
82 ['wp-components'],
83 $scriptAsset['version']
84 );
85
86 }
87
88 /**
89 * @since 4.0.0
90 */
91 private function registerSharedStyles(): void
92 {
93 wp_enqueue_style('givewp-design-system-foundation');
94 wp_enqueue_style(
95 'givewp-campaign-blocks-fonts',
96 'https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap'
97 );
98 }
99
100 /**
101 * @since 4.6.1
102 */
103 private function loadCampaignPublicOptions(): void
104 {
105 add_action('wp_enqueue_scripts', function () {
106 foreach ($this->campaignBlocks as $block) {
107 if (has_block($block->name)) {
108 give(LoadCampaignPublicOptions::class)();
109 break;
110 }
111 }
112 });
113 }
114 }
115