PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.9.2
GiveWP – Donation Plugin and Fundraising Platform v2.9.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 / MultiFormGoal / Model.php
give / src / MultiFormGoals / MultiFormGoal Last commit date
Block.php 5 years ago Model.php 5 years ago Shortcode.php 5 years ago
Model.php
116 lines
1 <?php
2
3 namespace Give\MultiFormGoals\MultiFormGoal;
4
5 use Give\MultiFormGoals\ProgressBar\Model as ProgressBar;
6
7 class Model {
8
9 // Settings for shortcode context
10 protected $ids;
11 protected $tags;
12 protected $categories;
13 protected $goal;
14 protected $enddate;
15 protected $color;
16 protected $heading;
17 protected $summary;
18 protected $imageSrc;
19
20 // Settings for block context
21 protected $innerBlocks;
22
23 /**
24 * Constructs and sets up setting variables for a new Multi Form Goal model
25 *
26 * @param array $args Arguments for new Multi Form Goal, including 'ids'
27 * @since 2.9.0
28 **/
29 public function __construct( array $args ) {
30 isset( $args['ids'] ) ? $this->ids = $args['ids'] : $this->ids = [];
31 isset( $args['tags'] ) ? $this->tags = $args['tags'] : $this->tags = [];
32 isset( $args['categories'] ) ? $this->categories = $args['categories'] : $this->categories = [];
33 isset( $args['goal'] ) ? $this->goal = $args['goal'] : $this->goal = '1000';
34 isset( $args['enddate'] ) ? $this->enddate = $args['enddate'] : $this->enddate = '';
35 isset( $args['color'] ) ? $this->color = $args['color'] : $this->color = '#28c77b';
36 isset( $args['heading'] ) ? $this->heading = $args['heading'] : $this->heading = 'Example Heading';
37 isset( $args['summary'] ) ? $this->summary = $args['summary'] : $this->summary = 'This is a summary.';
38 isset( $args['imageSrc'] ) ? $this->imageSrc = $args['imageSrc'] : $this->imageSrc = GIVE_PLUGIN_URL . 'assets/dist/images/onboarding-preview-form-image.min.jpg';
39 isset( $args['innerBlocks'] ) ? $this->innerBlocks = $args['innerBlocks'] : $this->innerBlocks = false;
40 }
41
42 /**
43 * Get output markup for Multi-Form Goal
44 *
45 * @return string
46 * @since 2.9.0
47 **/
48 public function getOutput() {
49 ob_start();
50 $output = '';
51 require $this->getTemplatePath();
52 $output = ob_get_contents();
53 ob_end_clean();
54 return $output;
55 }
56
57 /**
58 * Get image source for MultiFormGoal
59 *
60 * @return string
61 * @since 2.9.0
62 **/
63 public function getImageSrc() {
64 return $this->imageSrc;
65 }
66
67 /**
68 * Get heading for MultiFormGoal
69 *
70 * @return string
71 * @since 2.9.0
72 **/
73 public function getHeading() {
74 return $this->heading;
75 }
76
77 /**
78 * Get summary for MultiFormGoal
79 *
80 * @return string
81 * @since 2.9.0
82 **/
83 public function getSummary() {
84 return $this->summary;
85 }
86
87 /**
88 * Get Progress Bar output
89 *
90 * @return string
91 * @since 2.9.0
92 **/
93 protected function getProgressBarOutput() {
94 $progressBar = new ProgressBar(
95 [
96 'ids' => $this->ids,
97 'tags' => $this->tags,
98 'categories' => $this->categories,
99 'goal' => $this->goal,
100 'enddate' => $this->enddate,
101 'color' => $this->color,
102 ]
103 );
104 return $progressBar->getOutput();
105 }
106
107 /**
108 * Get template path for Multi-Form Goal component template
109 * @since 2.9.0
110 **/
111 public function getTemplatePath() {
112 return GIVE_PLUGIN_DIR . '/src/MultiFormGoals/resources/views/multiformgoal.php';
113 }
114
115 }
116