PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / trunk
GiveWP – Donation Plugin and Fundraising Platform vtrunk
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 1 year ago Query.php 5 months 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