PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.24.0
GiveWP – Donation Plugin and Fundraising Platform v2.24.0
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 / DonationSummary / SummaryView.php
give / src / DonationSummary Last commit date
resources 3 years ago Assets.php 4 years ago ServiceProvider.php 4 years ago SummaryView.php 4 years ago
SummaryView.php
142 lines
1 <?php
2
3 namespace Give\DonationSummary;
4
5 use Give\Helpers\Form\Template;
6
7 /**
8 * @since 2.17.0
9 */
10 class SummaryView
11 {
12
13 /**
14 * @since 2.17.0
15 * @var int
16 */
17 protected $formID;
18
19 /**
20 * @since 2.18.0
21 * @var string
22 */
23 protected $template;
24
25 /**
26 * @since 2.17.0
27 * @var array
28 */
29 protected $templateOptions;
30
31 /**
32 * @since 2.17.0
33 *
34 * @param int $formID
35 */
36 public function __invoke($formID)
37 {
38 $this->formID = $formID;
39 $this->template = Template::getActiveID($formID);
40 $this->templateOptions = Template::getOptions($formID);
41
42 /**
43 * @hook give_donation_form_user_info
44 * @hook give_donation_form_before_submit
45 */
46 add_action($this->getFormTemplateLocation(), [$this, 'maybeRender']);
47 }
48
49 public function maybeRender()
50 {
51 if ($this->isDonationSummaryEnabled()) {
52 if (in_array(Template::getActiveID($this->formID), [ 'sequoia', 'classic'])) {
53 $this->render();
54 }
55 }
56 }
57
58 /**
59 * @since 2.17.0
60 */
61 public function render()
62 {
63 do_action( 'give_donation_summary_top' );
64 include 'resources/views/summary.php';
65 do_action( 'give_donation_summary_bottom' );
66 }
67
68 public function getPrimaryColor()
69 {
70 return $this->templateOptions['visual_appearance']['primary_color'];
71 }
72
73 /**
74 * @since 2.17.0
75 * @return string
76 */
77 public function getFormTemplateLocation()
78 {
79 if (isset($this->templateOptions['payment_information']) && isset($this->templateOptions['payment_information']['donation_summary_location'])) {
80 return $this->templateOptions['payment_information']['donation_summary_location'];
81 }
82
83 return 'give_donation_form_before_submit'; // Default location.
84 }
85
86 /**
87 * @since 2.17.0
88 * @return string
89 */
90 public function getSummaryHeading()
91 {
92 if (isset($this->templateOptions['payment_information']) && isset($this->templateOptions['payment_information']['donation_summary_heading'])) {
93 return $this->templateOptions['payment_information']['donation_summary_heading'];
94 }
95
96 return '';
97 }
98
99 /**
100 * @since 2.17.0
101 * @return bool
102 */
103 public function isDonationSummaryEnabled()
104 {
105 return isset($this->templateOptions['payment_information'])
106 && isset($this->templateOptions['payment_information']['donation_summary_enabled'])
107 && give_is_setting_enabled($this->templateOptions['payment_information']['donation_summary_enabled']);
108 }
109
110 /**
111 * @since 2.17.0
112 * @return bool
113 */
114 protected function isFeeRecoveryEnabled()
115 {
116 if (class_exists('\GiveFeeRecovery\Helpers\Form\Form')) {
117 return \GiveFeeRecovery\Helpers\Form\Form::canRecoverFee($this->formID);
118 }
119
120 return false;
121 }
122
123 /**
124 * @since 2.19.0 - remove check for Give_Recurring
125 * @return bool
126 * @since 2.17.0
127 */
128 protected function isRecurringEnabled()
129 {
130 return give_recurring_is_recurring($this->formID);
131 }
132
133 /**
134 * @since 2.18.0
135 * @return bool
136 */
137 protected function isMultiStep()
138 {
139 return $this->template === 'sequoia';
140 }
141 }
142