PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 4.16.0
GiveWP – Donation Plugin and Fundraising Platform v4.16.0
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 AllowGiveRolesToEditCampaignPages.php 1 month 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 4 months 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 4 months ago RegisterCampaignBlocks.php 6 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
119 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 if (!is_admin()) {
43 return;
44 }
45
46 give(LoadCampaignAdminOptions::class)();
47
48 $handleName = 'givewp-campaign-blocks';
49 $scriptAsset = ScriptAsset::get(GIVE_PLUGIN_DIR . 'build/campaignBlocks.asset.php');
50
51 wp_register_script(
52 $handleName,
53 GIVE_PLUGIN_URL . 'build/campaignBlocks.js',
54 $scriptAsset['dependencies'],
55 $scriptAsset['version'],
56 true
57 );
58 wp_enqueue_script($handleName);
59
60 Language::setScriptTranslations($handleName);
61
62 wp_enqueue_style(
63 $handleName,
64 GIVE_PLUGIN_URL . 'build/campaignBlocks.css',
65 ['wp-components'],
66 $scriptAsset['version']
67 );
68
69 $handleName = 'givewp-campaign-landing-page-blocks';
70 $scriptAsset = ScriptAsset::get(GIVE_PLUGIN_DIR . 'build/campaignBlocksLandingPage.asset.php');
71
72 wp_register_script(
73 $handleName,
74 GIVE_PLUGIN_URL . 'build/campaignBlocksLandingPage.js',
75 $scriptAsset['dependencies'],
76 $scriptAsset['version'],
77 true
78 );
79 wp_enqueue_script($handleName);
80
81 Language::setScriptTranslations($handleName);
82
83 wp_enqueue_style(
84 $handleName,
85 GIVE_PLUGIN_URL . 'build/campaignBlocksLandingPage.css',
86 ['wp-components'],
87 $scriptAsset['version']
88 );
89
90 }
91
92 /**
93 * @since 4.0.0
94 */
95 private function registerSharedStyles(): void
96 {
97 wp_enqueue_style('givewp-design-system-foundation');
98 wp_enqueue_style(
99 'givewp-campaign-blocks-fonts',
100 'https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap'
101 );
102 }
103
104 /**
105 * @since 4.6.1
106 */
107 private function loadCampaignPublicOptions(): void
108 {
109 add_action('wp_enqueue_scripts', function () {
110 foreach ($this->campaignBlocks as $block) {
111 if (has_block($block->name)) {
112 give(LoadCampaignPublicOptions::class)();
113 break;
114 }
115 }
116 });
117 }
118 }
119