PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 3.4.2
GiveWP – Donation Plugin and Fundraising Platform v3.4.2
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 / MultiFormGoals / ProgressBar / Block.php
give / src / MultiFormGoals / ProgressBar Last commit date
Block.php 2 years ago Model.php 2 years ago Query.php 3 years ago
Block.php
122 lines
1 <?php
2
3 namespace Give\MultiFormGoals\ProgressBar;
4
5 use Give\MultiFormGoals\ProgressBar\Model as ProgressBar;
6
7 class Block
8 {
9
10 /**
11 * Registers Multi-Form Goals block
12 *
13 * @since 2.9.0
14 **/
15 public function addBlock()
16 {
17 register_block_type(
18 'give/progress-bar',
19 [
20 'render_callback' => [$this, 'renderCallback'],
21 'attributes' => [
22 'ids' => [
23 'type' => 'array',
24 'default' => [],
25 ],
26 'categories' => [
27 'type' => 'array',
28 'default' => [],
29 ],
30 'tags' => [
31 'type' => 'array',
32 'default' => [],
33 ],
34 'goal' => [
35 'type' => 'string',
36 'default' => '1000',
37 ],
38 'enddate' => [
39 'type' => 'string',
40 'default' => '',
41 ],
42 'color' => [
43 'type' => 'string',
44 'default' => '#28c77b',
45 ],
46 ],
47
48 ]
49 );
50 }
51
52 /**
53 * Returns Progress Bar block markup
54 *
55 * @since 3.1.0 Use static function on array_map callback to pass the id as reference for _give_redirect_form_id to prevent warnings on PHP 8.0.1 or plus
56 * @since 2.9.0
57 **/
58 public function renderCallback($attributes)
59 {
60 $progressBar = new ProgressBar(
61 [
62 'ids' => array_map(
63 static function ($id) {
64 _give_redirect_form_id($id);
65
66 return $id;
67 },
68 $attributes['ids']
69 ),
70 'tags' => $attributes['tags'],
71 'categories' => $attributes['categories'],
72 'goal' => $attributes['goal'],
73 'enddate' => $attributes['enddate'],
74 'color' => $attributes['color'],
75 ]
76 );
77
78 return $progressBar->getOutput();
79 }
80
81 public function localizeAssets()
82 {
83 $defaultColorPalette = [
84 [
85 'name' => __('Red', 'give'),
86 'color' => '#dd3333',
87 ],
88 [
89 'name' => __('Orange', 'give'),
90 'color' => '#dd9933',
91 ],
92 [
93 'name' => __('Green', 'give'),
94 'color' => '#28C77B',
95 ],
96 [
97 'name' => __('Blue', 'give'),
98 'color' => '#1e73be',
99 ],
100 [
101 'name' => __('Purple', 'give'),
102 'color' => '#8224e3',
103 ],
104 [
105 'name' => __('Grey', 'give'),
106 'color' => '#777777',
107 ],
108 ];
109 $editorColorPalette = get_theme_support('editor-color-palette'); // Return value is in a nested array.
110
111 wp_localize_script(
112 'give-blocks-js',
113 'giveProgressBarThemeSupport',
114 [
115 'editorColorPalette' => is_array($editorColorPalette) ? array_shift(
116 $editorColorPalette
117 ) : $defaultColorPalette,
118 ]
119 );
120 }
121 }
122