Completed
Branch FET/datetime-and-event-status (270044)
by
unknown
04:26 queued 14s
created
core/libraries/line_item_filters/EE_Line_Item_Filter_Collection.class.php 1 patch
Indentation   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -18,11 +18,11 @@
 block discarded – undo
18 18
 {
19 19
 
20 20
 
21
-    /**
22
-     * EE_Line_Item_Filter_Collection constructor.
23
-     */
24
-    public function __construct()
25
-    {
26
-        $this->interface = 'EEI_Line_Item_Filter';
27
-    }
21
+	/**
22
+	 * EE_Line_Item_Filter_Collection constructor.
23
+	 */
24
+	public function __construct()
25
+	{
26
+		$this->interface = 'EEI_Line_Item_Filter';
27
+	}
28 28
 }
Please login to merge, or discard this patch.
core/libraries/line_item_filters/EE_Line_Item_Filter_Base.class.php 1 patch
Indentation   +10 added lines, -10 removed lines patch added patch discarded remove patch
@@ -16,14 +16,14 @@
 block discarded – undo
16 16
 {
17 17
 
18 18
 
19
-    /**
20
-     * process
21
-     *
22
-     * @param \EEI_Line_Item $line_item
23
-     * @return \EEI_Line_Item
24
-     */
25
-    public function process(EEI_Line_Item $line_item)
26
-    {
27
-        return $line_item;
28
-    }
19
+	/**
20
+	 * process
21
+	 *
22
+	 * @param \EEI_Line_Item $line_item
23
+	 * @return \EEI_Line_Item
24
+	 */
25
+	public function process(EEI_Line_Item $line_item)
26
+	{
27
+		return $line_item;
28
+	}
29 29
 }
Please login to merge, or discard this patch.
line_item_filters/EE_Single_Registration_Line_Item_Filter.class.php 1 patch
Indentation   +8 added lines, -8 removed lines patch added patch discarded remove patch
@@ -16,12 +16,12 @@
 block discarded – undo
16 16
 class EE_Single_Registration_Line_Item_Filter extends EE_Specific_Registrations_Line_Item_Filter
17 17
 {
18 18
 
19
-    /**
20
-     *
21
-     * @param EE_Registration $registration
22
-     */
23
-    public function __construct($registration)
24
-    {
25
-        parent::__construct(array($registration));
26
-    }
19
+	/**
20
+	 *
21
+	 * @param EE_Registration $registration
22
+	 */
23
+	public function __construct($registration)
24
+	{
25
+		parent::__construct(array($registration));
26
+	}
27 27
 }
Please login to merge, or discard this patch.
core/libraries/template_parts/EE_Template_Part_Manager.class.php 2 patches
Indentation   +191 added lines, -191 removed lines patch added patch discarded remove patch
@@ -14,195 +14,195 @@
 block discarded – undo
14 14
 class EE_Template_Part_Manager
15 15
 {
16 16
 
17
-    /**
18
-     * @param EE_Template_Part_PriorityQueue $template_parts
19
-     */
20
-    protected $template_parts;
21
-
22
-    /**
23
-     * @param array $priorities
24
-     */
25
-    protected $priorities = array();
26
-
27
-    /**
28
-     * @param int $event_desc_priority
29
-     */
30
-    protected $event_desc_priority;
31
-
32
-    /**
33
-     * @param string $before_event_content
34
-     */
35
-    protected $before_event_content;
36
-
37
-    /**
38
-     * @param string $event_content
39
-     */
40
-    protected $event_content;
41
-
42
-    /**
43
-     * @param string $after_event_content
44
-     */
45
-    protected $after_event_content;
46
-
47
-
48
-    /**
49
-     *    class constructor
50
-     */
51
-    public function __construct()
52
-    {
53
-        $this->template_parts = new EE_Template_Part_PriorityQueue();
54
-    }
55
-
56
-
57
-    /**
58
-     *    add_template_part
59
-     *
60
-     *    used for setting the details about a particular template part
61
-     *
62
-     * @param string $name     - just a simple string identifier - do NOT use 'event'
63
-     * @param string $label    - template part label displayed in admin
64
-     * @param string $template - name or path of template to be used by EEH_Template::locate_template()
65
-     * @param int    $priority - order in which template parts should be applied
66
-     */
67
-    public function add_template_part($name, $label, $template, $priority)
68
-    {
69
-        // SplPriorityQueue doesn't play nice with multiple items having the same priority
70
-        // so if the incoming priority is already occupied, then let's increment it by one,
71
-        // and then pass everything back into this method and try again with the new priority
72
-        if (isset($this->priorities[ $priority ])) {
73
-            $priority++;
74
-            $this->add_template_part($name, $label, $template, $priority);
75
-            return;
76
-        }
77
-        // kk now we can mark this priority as being occupied
78
-        $this->priorities[ $priority ] = true;
79
-        // create the template part and add to the queue
80
-        $this->template_parts->insert(
81
-            new EE_Template_Part($name, $label, $template, $priority),
82
-            $priority
83
-        );
84
-        if ($name === 'event') {
85
-            $this->event_desc_priority = $priority;
86
-        }
87
-    }
88
-
89
-
90
-    /**
91
-     *    apply_template_part_filters
92
-     *
93
-     *    adds template parts to the supplied content
94
-     *    according to the details set when the template parts were added
95
-     *
96
-     * @access public
97
-     * @param string $content
98
-     * @return string
99
-     */
100
-    public function apply_template_part_filters($content = '')
101
-    {
102
-        $this->template_parts->rewind();
103
-        // loop through template parts and position content
104
-        while ($this->template_parts->valid()) {
105
-            $this->_position_template_part(
106
-                $content,
107
-                $this->template_parts->current()->template(),
108
-                $this->template_parts->current()->priority()
109
-            );
110
-            $this->template_parts->next();
111
-        }
112
-        // now simply add our three strings of content together
113
-        return $this->before_event_content . $this->event_content . $this->after_event_content;
114
-    }
115
-
116
-
117
-    /**
118
-     *    position_template_part
119
-     *
120
-     * based on the priority of the incoming template part
121
-     * relative to the known event description template part priority,
122
-     * this method will assign template parts to one of the following:
123
-     *        $this->before_event_content
124
-     *        $this->event_content
125
-     *        $this->after_event_content
126
-     *
127
-     * @access protected
128
-     * @param string $content
129
-     * @param string $template
130
-     * @param int    $priority
131
-     * @return void
132
-     */
133
-    protected function _position_template_part($content, $template, $priority)
134
-    {
135
-        // Event Description content is the actual incoming content itself
136
-        if ($priority === $this->event_desc_priority) {
137
-            $this->event_content = $content;
138
-        } elseif ($priority < $this->event_desc_priority) {
139
-            // everything BEFORE the Event Description
140
-            $this->before_event_content .= EEH_Template::locate_template($template);
141
-        } elseif ($priority > $this->event_desc_priority) {
142
-            // everything AFTER the Event Description
143
-            $this->after_event_content .= EEH_Template::locate_template($template);
144
-        }
145
-    }
146
-
147
-
148
-    /**
149
-     *    generate_sortable_list_of_template_parts
150
-     *
151
-     *    creates an HTML list (<ul>) with list items (<li>) for each template part,
152
-     *    in a format that can be used as a sortable list in the admin
153
-     *
154
-     * @access public
155
-     * @param string $list_css_id
156
-     * @param string $list_css_class
157
-     * @param string $list_item_css_class
158
-     * @param string $list_item_css_id_prefix
159
-     * @return string
160
-     */
161
-    public function generate_sortable_list_of_template_parts(
162
-        $list_css_id = '',
163
-        $list_css_class = '',
164
-        $list_item_css_class = '',
165
-        $list_item_css_id_prefix = ''
166
-    ) {
167
-        $event_archive_display_order = EEH_HTML::ul($list_css_id, $list_css_class);
168
-        $this->template_parts->rewind();
169
-        // loop through template parts and add template content
170
-        while ($this->template_parts->valid()) {
171
-            $event_archive_display_order .= EEH_HTML::li(
172
-                EEH_HTML::span('', '', 'dashicons dashicons-arrow-up-alt2') .
173
-                EEH_HTML::span('', '', 'dashicons dashicons-arrow-down-alt2') .
174
-                $this->template_parts->current()->label(),
175
-                $list_item_css_id_prefix . $this->template_parts->current()->name(),
176
-                $list_item_css_class
177
-            );
178
-            $this->template_parts->next();
179
-        }
180
-        $event_archive_display_order .= EEH_HTML::ulx();
181
-        return $event_archive_display_order;
182
-    }
183
-
184
-
185
-    /**
186
-     *    display_template_parts
187
-     *
188
-     * just for debugging purposes
189
-     *
190
-     * @access    public
191
-     * @return void
192
-     */
193
-    public function display_template_parts()
194
-    {
195
-        if (WP_DEBUG) {
196
-            $this->template_parts->rewind();
197
-            while ($this->template_parts->valid()) {
198
-                EEH_Debug_Tools::printr(
199
-                    $this->template_parts->current(),
200
-                    'template_part',
201
-                    __FILE__,
202
-                    __LINE__
203
-                );
204
-                $this->template_parts->next();
205
-            }
206
-        }
207
-    }
17
+	/**
18
+	 * @param EE_Template_Part_PriorityQueue $template_parts
19
+	 */
20
+	protected $template_parts;
21
+
22
+	/**
23
+	 * @param array $priorities
24
+	 */
25
+	protected $priorities = array();
26
+
27
+	/**
28
+	 * @param int $event_desc_priority
29
+	 */
30
+	protected $event_desc_priority;
31
+
32
+	/**
33
+	 * @param string $before_event_content
34
+	 */
35
+	protected $before_event_content;
36
+
37
+	/**
38
+	 * @param string $event_content
39
+	 */
40
+	protected $event_content;
41
+
42
+	/**
43
+	 * @param string $after_event_content
44
+	 */
45
+	protected $after_event_content;
46
+
47
+
48
+	/**
49
+	 *    class constructor
50
+	 */
51
+	public function __construct()
52
+	{
53
+		$this->template_parts = new EE_Template_Part_PriorityQueue();
54
+	}
55
+
56
+
57
+	/**
58
+	 *    add_template_part
59
+	 *
60
+	 *    used for setting the details about a particular template part
61
+	 *
62
+	 * @param string $name     - just a simple string identifier - do NOT use 'event'
63
+	 * @param string $label    - template part label displayed in admin
64
+	 * @param string $template - name or path of template to be used by EEH_Template::locate_template()
65
+	 * @param int    $priority - order in which template parts should be applied
66
+	 */
67
+	public function add_template_part($name, $label, $template, $priority)
68
+	{
69
+		// SplPriorityQueue doesn't play nice with multiple items having the same priority
70
+		// so if the incoming priority is already occupied, then let's increment it by one,
71
+		// and then pass everything back into this method and try again with the new priority
72
+		if (isset($this->priorities[ $priority ])) {
73
+			$priority++;
74
+			$this->add_template_part($name, $label, $template, $priority);
75
+			return;
76
+		}
77
+		// kk now we can mark this priority as being occupied
78
+		$this->priorities[ $priority ] = true;
79
+		// create the template part and add to the queue
80
+		$this->template_parts->insert(
81
+			new EE_Template_Part($name, $label, $template, $priority),
82
+			$priority
83
+		);
84
+		if ($name === 'event') {
85
+			$this->event_desc_priority = $priority;
86
+		}
87
+	}
88
+
89
+
90
+	/**
91
+	 *    apply_template_part_filters
92
+	 *
93
+	 *    adds template parts to the supplied content
94
+	 *    according to the details set when the template parts were added
95
+	 *
96
+	 * @access public
97
+	 * @param string $content
98
+	 * @return string
99
+	 */
100
+	public function apply_template_part_filters($content = '')
101
+	{
102
+		$this->template_parts->rewind();
103
+		// loop through template parts and position content
104
+		while ($this->template_parts->valid()) {
105
+			$this->_position_template_part(
106
+				$content,
107
+				$this->template_parts->current()->template(),
108
+				$this->template_parts->current()->priority()
109
+			);
110
+			$this->template_parts->next();
111
+		}
112
+		// now simply add our three strings of content together
113
+		return $this->before_event_content . $this->event_content . $this->after_event_content;
114
+	}
115
+
116
+
117
+	/**
118
+	 *    position_template_part
119
+	 *
120
+	 * based on the priority of the incoming template part
121
+	 * relative to the known event description template part priority,
122
+	 * this method will assign template parts to one of the following:
123
+	 *        $this->before_event_content
124
+	 *        $this->event_content
125
+	 *        $this->after_event_content
126
+	 *
127
+	 * @access protected
128
+	 * @param string $content
129
+	 * @param string $template
130
+	 * @param int    $priority
131
+	 * @return void
132
+	 */
133
+	protected function _position_template_part($content, $template, $priority)
134
+	{
135
+		// Event Description content is the actual incoming content itself
136
+		if ($priority === $this->event_desc_priority) {
137
+			$this->event_content = $content;
138
+		} elseif ($priority < $this->event_desc_priority) {
139
+			// everything BEFORE the Event Description
140
+			$this->before_event_content .= EEH_Template::locate_template($template);
141
+		} elseif ($priority > $this->event_desc_priority) {
142
+			// everything AFTER the Event Description
143
+			$this->after_event_content .= EEH_Template::locate_template($template);
144
+		}
145
+	}
146
+
147
+
148
+	/**
149
+	 *    generate_sortable_list_of_template_parts
150
+	 *
151
+	 *    creates an HTML list (<ul>) with list items (<li>) for each template part,
152
+	 *    in a format that can be used as a sortable list in the admin
153
+	 *
154
+	 * @access public
155
+	 * @param string $list_css_id
156
+	 * @param string $list_css_class
157
+	 * @param string $list_item_css_class
158
+	 * @param string $list_item_css_id_prefix
159
+	 * @return string
160
+	 */
161
+	public function generate_sortable_list_of_template_parts(
162
+		$list_css_id = '',
163
+		$list_css_class = '',
164
+		$list_item_css_class = '',
165
+		$list_item_css_id_prefix = ''
166
+	) {
167
+		$event_archive_display_order = EEH_HTML::ul($list_css_id, $list_css_class);
168
+		$this->template_parts->rewind();
169
+		// loop through template parts and add template content
170
+		while ($this->template_parts->valid()) {
171
+			$event_archive_display_order .= EEH_HTML::li(
172
+				EEH_HTML::span('', '', 'dashicons dashicons-arrow-up-alt2') .
173
+				EEH_HTML::span('', '', 'dashicons dashicons-arrow-down-alt2') .
174
+				$this->template_parts->current()->label(),
175
+				$list_item_css_id_prefix . $this->template_parts->current()->name(),
176
+				$list_item_css_class
177
+			);
178
+			$this->template_parts->next();
179
+		}
180
+		$event_archive_display_order .= EEH_HTML::ulx();
181
+		return $event_archive_display_order;
182
+	}
183
+
184
+
185
+	/**
186
+	 *    display_template_parts
187
+	 *
188
+	 * just for debugging purposes
189
+	 *
190
+	 * @access    public
191
+	 * @return void
192
+	 */
193
+	public function display_template_parts()
194
+	{
195
+		if (WP_DEBUG) {
196
+			$this->template_parts->rewind();
197
+			while ($this->template_parts->valid()) {
198
+				EEH_Debug_Tools::printr(
199
+					$this->template_parts->current(),
200
+					'template_part',
201
+					__FILE__,
202
+					__LINE__
203
+				);
204
+				$this->template_parts->next();
205
+			}
206
+		}
207
+	}
208 208
 }
Please login to merge, or discard this patch.
Spacing   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -69,13 +69,13 @@  discard block
 block discarded – undo
69 69
         // SplPriorityQueue doesn't play nice with multiple items having the same priority
70 70
         // so if the incoming priority is already occupied, then let's increment it by one,
71 71
         // and then pass everything back into this method and try again with the new priority
72
-        if (isset($this->priorities[ $priority ])) {
72
+        if (isset($this->priorities[$priority])) {
73 73
             $priority++;
74 74
             $this->add_template_part($name, $label, $template, $priority);
75 75
             return;
76 76
         }
77 77
         // kk now we can mark this priority as being occupied
78
-        $this->priorities[ $priority ] = true;
78
+        $this->priorities[$priority] = true;
79 79
         // create the template part and add to the queue
80 80
         $this->template_parts->insert(
81 81
             new EE_Template_Part($name, $label, $template, $priority),
@@ -110,7 +110,7 @@  discard block
 block discarded – undo
110 110
             $this->template_parts->next();
111 111
         }
112 112
         // now simply add our three strings of content together
113
-        return $this->before_event_content . $this->event_content . $this->after_event_content;
113
+        return $this->before_event_content.$this->event_content.$this->after_event_content;
114 114
     }
115 115
 
116 116
 
@@ -169,10 +169,10 @@  discard block
 block discarded – undo
169 169
         // loop through template parts and add template content
170 170
         while ($this->template_parts->valid()) {
171 171
             $event_archive_display_order .= EEH_HTML::li(
172
-                EEH_HTML::span('', '', 'dashicons dashicons-arrow-up-alt2') .
173
-                EEH_HTML::span('', '', 'dashicons dashicons-arrow-down-alt2') .
172
+                EEH_HTML::span('', '', 'dashicons dashicons-arrow-up-alt2').
173
+                EEH_HTML::span('', '', 'dashicons dashicons-arrow-down-alt2').
174 174
                 $this->template_parts->current()->label(),
175
-                $list_item_css_id_prefix . $this->template_parts->current()->name(),
175
+                $list_item_css_id_prefix.$this->template_parts->current()->name(),
176 176
                 $list_item_css_class
177 177
             );
178 178
             $this->template_parts->next();
Please login to merge, or discard this patch.
core/libraries/template_parts/EE_Template_Part.class.php 1 patch
Indentation   +108 added lines, -108 removed lines patch added patch discarded remove patch
@@ -16,112 +16,112 @@
 block discarded – undo
16 16
 {
17 17
 
18 18
 
19
-    /**
20
-     * @type string $name
21
-     */
22
-    protected $name;
23
-
24
-    /**
25
-     * @type string $label
26
-     */
27
-    protected $label;
28
-
29
-    /**
30
-     * @type string $template
31
-     */
32
-    protected $template;
33
-
34
-    /**
35
-     * @type int $priority
36
-     */
37
-    protected $priority;
38
-
39
-
40
-    /**
41
-     *    class constructor
42
-     *
43
-     * @param string $name
44
-     * @param string $label
45
-     * @param string $template
46
-     * @param int    $priority
47
-     */
48
-    public function __construct($name, $label, $template, $priority = 100)
49
-    {
50
-        $this->set_name($name);
51
-        $this->set_label($label);
52
-        $this->set_template($template);
53
-        $this->set_priority($priority);
54
-    }
55
-
56
-
57
-    /**
58
-     * @return mixed
59
-     */
60
-    public function name()
61
-    {
62
-        return $this->name;
63
-    }
64
-
65
-
66
-    /**
67
-     * @param mixed $name
68
-     */
69
-    public function set_name($name)
70
-    {
71
-        $this->name = $name;
72
-    }
73
-
74
-
75
-    /**
76
-     * @return string
77
-     */
78
-    public function label()
79
-    {
80
-        return $this->label;
81
-    }
82
-
83
-
84
-    /**
85
-     * @param string $label
86
-     */
87
-    public function set_label($label)
88
-    {
89
-        $this->label = $label;
90
-    }
91
-
92
-
93
-    /**
94
-     * @return array
95
-     */
96
-    public function template()
97
-    {
98
-        return $this->template;
99
-    }
100
-
101
-
102
-    /**
103
-     * @param string $template
104
-     */
105
-    public function set_template($template)
106
-    {
107
-        $this->template = $template;
108
-    }
109
-
110
-
111
-    /**
112
-     * @return int
113
-     */
114
-    public function priority()
115
-    {
116
-        return $this->priority;
117
-    }
118
-
119
-
120
-    /**
121
-     * @param int $priority
122
-     */
123
-    public function set_priority($priority)
124
-    {
125
-        $this->priority = intval($priority);
126
-    }
19
+	/**
20
+	 * @type string $name
21
+	 */
22
+	protected $name;
23
+
24
+	/**
25
+	 * @type string $label
26
+	 */
27
+	protected $label;
28
+
29
+	/**
30
+	 * @type string $template
31
+	 */
32
+	protected $template;
33
+
34
+	/**
35
+	 * @type int $priority
36
+	 */
37
+	protected $priority;
38
+
39
+
40
+	/**
41
+	 *    class constructor
42
+	 *
43
+	 * @param string $name
44
+	 * @param string $label
45
+	 * @param string $template
46
+	 * @param int    $priority
47
+	 */
48
+	public function __construct($name, $label, $template, $priority = 100)
49
+	{
50
+		$this->set_name($name);
51
+		$this->set_label($label);
52
+		$this->set_template($template);
53
+		$this->set_priority($priority);
54
+	}
55
+
56
+
57
+	/**
58
+	 * @return mixed
59
+	 */
60
+	public function name()
61
+	{
62
+		return $this->name;
63
+	}
64
+
65
+
66
+	/**
67
+	 * @param mixed $name
68
+	 */
69
+	public function set_name($name)
70
+	{
71
+		$this->name = $name;
72
+	}
73
+
74
+
75
+	/**
76
+	 * @return string
77
+	 */
78
+	public function label()
79
+	{
80
+		return $this->label;
81
+	}
82
+
83
+
84
+	/**
85
+	 * @param string $label
86
+	 */
87
+	public function set_label($label)
88
+	{
89
+		$this->label = $label;
90
+	}
91
+
92
+
93
+	/**
94
+	 * @return array
95
+	 */
96
+	public function template()
97
+	{
98
+		return $this->template;
99
+	}
100
+
101
+
102
+	/**
103
+	 * @param string $template
104
+	 */
105
+	public function set_template($template)
106
+	{
107
+		$this->template = $template;
108
+	}
109
+
110
+
111
+	/**
112
+	 * @return int
113
+	 */
114
+	public function priority()
115
+	{
116
+		return $this->priority;
117
+	}
118
+
119
+
120
+	/**
121
+	 * @param int $priority
122
+	 */
123
+	public function set_priority($priority)
124
+	{
125
+		$this->priority = intval($priority);
126
+	}
127 127
 }
Please login to merge, or discard this patch.
core/libraries/template_parts/EE_Template_Part_PriorityQueue.class.php 1 patch
Indentation   +37 added lines, -37 removed lines patch added patch discarded remove patch
@@ -17,43 +17,43 @@
 block discarded – undo
17 17
 {
18 18
 
19 19
 
20
-    /**
21
-     * add
22
-     *
23
-     * attaches aTemplate_Part to the Collection
24
-     * and sets any supplied data associated with the current iterator entry
25
-     *
26
-     * @access public
27
-     * @param EE_Template_Part $object
28
-     * @param int              $priority
29
-     * @return bool
30
-     */
31
-    public function insert($object, $priority = 100)
32
-    {
33
-        if ($object instanceof EE_Template_Part) {
34
-            parent::insert($object, $priority);
35
-            return true;
36
-        } else {
37
-            return false;
38
-        }
39
-    }
20
+	/**
21
+	 * add
22
+	 *
23
+	 * attaches aTemplate_Part to the Collection
24
+	 * and sets any supplied data associated with the current iterator entry
25
+	 *
26
+	 * @access public
27
+	 * @param EE_Template_Part $object
28
+	 * @param int              $priority
29
+	 * @return bool
30
+	 */
31
+	public function insert($object, $priority = 100)
32
+	{
33
+		if ($object instanceof EE_Template_Part) {
34
+			parent::insert($object, $priority);
35
+			return true;
36
+		} else {
37
+			return false;
38
+		}
39
+	}
40 40
 
41 41
 
42
-    /**
43
-     * compare
44
-     *
45
-     * sorts EE_Template_Part in ascending order based on set priority
46
-     *
47
-     * @access public
48
-     * @param int $priority1
49
-     * @param int $priority2
50
-     * @return bool
51
-     */
52
-    public function compare($priority1, $priority2)
53
-    {
54
-        if ($priority1 === $priority2) {
55
-            return 0;
56
-        }
57
-        return $priority1 > $priority2 ? -1 : 1;
58
-    }
42
+	/**
43
+	 * compare
44
+	 *
45
+	 * sorts EE_Template_Part in ascending order based on set priority
46
+	 *
47
+	 * @access public
48
+	 * @param int $priority1
49
+	 * @param int $priority2
50
+	 * @return bool
51
+	 */
52
+	public function compare($priority1, $priority2)
53
+	{
54
+		if ($priority1 === $priority2) {
55
+			return 0;
56
+		}
57
+		return $priority1 > $priority2 ? -1 : 1;
58
+	}
59 59
 }
Please login to merge, or discard this patch.
core/business/EE_Processor_Base.class.php 2 patches
Indentation   +60 added lines, -60 removed lines patch added patch discarded remove patch
@@ -14,71 +14,71 @@
 block discarded – undo
14 14
 class EE_Processor_Base
15 15
 {
16 16
 
17
-    /**
18
-     * Used to indicate whether current request is for an IPN or not.
19
-     *
20
-     * @var bool
21
-     */
22
-    protected static $IPN = false;
17
+	/**
18
+	 * Used to indicate whether current request is for an IPN or not.
19
+	 *
20
+	 * @var bool
21
+	 */
22
+	protected static $IPN = false;
23 23
 
24
-    /**
25
-     * Used to indicate whether SPCO is being revisited by registrant or not.
26
-     *
27
-     * @var bool
28
-     */
29
-    protected $_revisit = false;
24
+	/**
25
+	 * Used to indicate whether SPCO is being revisited by registrant or not.
26
+	 *
27
+	 * @var bool
28
+	 */
29
+	protected $_revisit = false;
30 30
 
31 31
 
32
-    /**
33
-     * @param boolean $IPN
34
-     */
35
-    public static function set_IPN($IPN)
36
-    {
37
-        self::$IPN = filter_var($IPN, FILTER_VALIDATE_BOOLEAN);
38
-    }
32
+	/**
33
+	 * @param boolean $IPN
34
+	 */
35
+	public static function set_IPN($IPN)
36
+	{
37
+		self::$IPN = filter_var($IPN, FILTER_VALIDATE_BOOLEAN);
38
+	}
39 39
 
40 40
 
41
-    /**
42
-     * Allows external class (usually checkout) to set whether SPCO is being revisited by registrant or not.
43
-     *
44
-     * @param bool $revisit
45
-     * @return void
46
-     */
47
-    public function set_revisit($revisit = false)
48
-    {
49
-        $this->_revisit = filter_var($revisit, FILTER_VALIDATE_BOOLEAN);
50
-    }
41
+	/**
42
+	 * Allows external class (usually checkout) to set whether SPCO is being revisited by registrant or not.
43
+	 *
44
+	 * @param bool $revisit
45
+	 * @return void
46
+	 */
47
+	public function set_revisit($revisit = false)
48
+	{
49
+		$this->_revisit = filter_var($revisit, FILTER_VALIDATE_BOOLEAN);
50
+	}
51 51
 
52 52
 
53
-    /**
54
-     * debug
55
-     *
56
-     * @param string          $class
57
-     * @param string          $func
58
-     * @param string          $line
59
-     * @param \EE_Transaction $transaction
60
-     * @param array           $info
61
-     * @param bool            $display_request
62
-     */
63
-    protected function log(
64
-        $class = '',
65
-        $func = '',
66
-        $line = '',
67
-        EE_Transaction $transaction,
68
-        $info = array(),
69
-        $display_request = false
70
-    ) {
71
-        if (WP_DEBUG && false) {
72
-            if ($transaction instanceof EE_Transaction) {
73
-                // don't serialize objects
74
-                $info = EEH_Debug_Tools::strip_objects($info);
75
-                if ($transaction->ID()) {
76
-                    $info['TXN_status'] = $transaction->status_ID();
77
-                    $info['TXN_reg_steps'] = $transaction->reg_steps();
78
-                    $index = 'EE_Transaction: ' . $transaction->ID();
79
-                    EEH_Debug_Tools::log($class, $func, $line, $info, $display_request, $index);
80
-                }
81
-            }
82
-        }
83
-    }
53
+	/**
54
+	 * debug
55
+	 *
56
+	 * @param string          $class
57
+	 * @param string          $func
58
+	 * @param string          $line
59
+	 * @param \EE_Transaction $transaction
60
+	 * @param array           $info
61
+	 * @param bool            $display_request
62
+	 */
63
+	protected function log(
64
+		$class = '',
65
+		$func = '',
66
+		$line = '',
67
+		EE_Transaction $transaction,
68
+		$info = array(),
69
+		$display_request = false
70
+	) {
71
+		if (WP_DEBUG && false) {
72
+			if ($transaction instanceof EE_Transaction) {
73
+				// don't serialize objects
74
+				$info = EEH_Debug_Tools::strip_objects($info);
75
+				if ($transaction->ID()) {
76
+					$info['TXN_status'] = $transaction->status_ID();
77
+					$info['TXN_reg_steps'] = $transaction->reg_steps();
78
+					$index = 'EE_Transaction: ' . $transaction->ID();
79
+					EEH_Debug_Tools::log($class, $func, $line, $info, $display_request, $index);
80
+				}
81
+			}
82
+		}
83
+	}
84 84
 }
Please login to merge, or discard this patch.
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -75,7 +75,7 @@
 block discarded – undo
75 75
                 if ($transaction->ID()) {
76 76
                     $info['TXN_status'] = $transaction->status_ID();
77 77
                     $info['TXN_reg_steps'] = $transaction->reg_steps();
78
-                    $index = 'EE_Transaction: ' . $transaction->ID();
78
+                    $index = 'EE_Transaction: '.$transaction->ID();
79 79
                     EEH_Debug_Tools::log($class, $func, $line, $info, $display_request, $index);
80 80
                 }
81 81
             }
Please login to merge, or discard this patch.
core/business/EE_Transaction_Payments.class.php 2 patches
Spacing   +12 added lines, -12 removed lines patch added patch discarded remove patch
@@ -43,7 +43,7 @@  discard block
 block discarded – undo
43 43
     public static function instance()
44 44
     {
45 45
         // check if class object is instantiated
46
-        if (! self::$_instance instanceof EE_Transaction_Payments) {
46
+        if ( ! self::$_instance instanceof EE_Transaction_Payments) {
47 47
             self::$_instance = new self();
48 48
         }
49 49
         return self::$_instance;
@@ -62,7 +62,7 @@  discard block
 block discarded – undo
62 62
     public function recalculate_transaction_total(EE_Transaction $transaction, $update_txn = true)
63 63
     {
64 64
         $total_line_item = $transaction->total_line_item();
65
-        if (! $total_line_item instanceof EE_Line_Item) {
65
+        if ( ! $total_line_item instanceof EE_Line_Item) {
66 66
             EE_Error::add_error(
67 67
                 sprintf(
68 68
                     __('The Total Line Item for Transaction %1$d\'s was not found or is invalid.', 'event_espresso'),
@@ -101,7 +101,7 @@  discard block
 block discarded – undo
101 101
     public function calculate_total_payments_and_update_status(EE_Transaction $transaction, $update_txn = true)
102 102
     {
103 103
         // verify transaction
104
-        if (! $transaction instanceof EE_Transaction) {
104
+        if ( ! $transaction instanceof EE_Transaction) {
105 105
             EE_Error::add_error(
106 106
                 __('Please provide a valid EE_Transaction object.', 'event_espresso'),
107 107
                 __FILE__,
@@ -116,7 +116,7 @@  discard block
 block discarded – undo
116 116
         if ($total_paid !== false && (float) $total_paid !== $transaction->paid()) {
117 117
             $transaction->set_paid($total_paid);
118 118
             // maybe update status, and make sure to save transaction if not done already
119
-            if (! $transaction->update_status_based_on_total_paid($update_txn)) {
119
+            if ( ! $transaction->update_status_based_on_total_paid($update_txn)) {
120 120
                 if ($update_txn) {
121 121
                     return $transaction->save() ? true : false;
122 122
                 }
@@ -145,7 +145,7 @@  discard block
 block discarded – undo
145 145
         $payment_status = EEM_Payment::status_id_approved
146 146
     ) {
147 147
         // verify transaction
148
-        if (! $transaction instanceof EE_Transaction) {
148
+        if ( ! $transaction instanceof EE_Transaction) {
149 149
             EE_Error::add_error(
150 150
                 __('Please provide a valid EE_Transaction object.', 'event_espresso'),
151 151
                 __FILE__,
@@ -178,7 +178,7 @@  discard block
 block discarded – undo
178 178
     public function delete_payment_and_update_transaction(EE_Payment $payment)
179 179
     {
180 180
         // verify payment
181
-        if (! $payment instanceof EE_Payment) {
181
+        if ( ! $payment instanceof EE_Payment) {
182 182
             EE_Error::add_error(
183 183
                 __('A valid Payment object was not received.', 'event_espresso'),
184 184
                 __FILE__,
@@ -187,10 +187,10 @@  discard block
 block discarded – undo
187 187
             );
188 188
             return false;
189 189
         }
190
-        if (! $this->delete_registration_payments_and_update_registrations($payment)) {
190
+        if ( ! $this->delete_registration_payments_and_update_registrations($payment)) {
191 191
             return false;
192 192
         }
193
-        if (! $payment->delete()) {
193
+        if ( ! $payment->delete()) {
194 194
             EE_Error::add_error(
195 195
                 __('The payment could not be deleted.', 'event_espresso'),
196 196
                 __FILE__,
@@ -213,7 +213,7 @@  discard block
 block discarded – undo
213 213
 
214 214
         // if this fails, that just means that the transaction didn't get its status changed and/or updated.
215 215
         // however the payment was still deleted.
216
-        if (! $this->calculate_total_payments_and_update_status($transaction)) {
216
+        if ( ! $this->calculate_total_payments_and_update_status($transaction)) {
217 217
             EE_Error::add_attention(
218 218
                 __(
219 219
                     'It appears that the Payment was deleted but no change was recorded for the Transaction for an unknown reason. Please verify that all data for this Transaction looks correct..',
@@ -255,7 +255,7 @@  discard block
 block discarded – undo
255 255
         $reg_payment_query_params = ! empty($reg_payment_query_params) ? $reg_payment_query_params
256 256
             : array(array('PAY_ID' => $payment->ID()));
257 257
         $registration_payments = EEM_Registration_Payment::instance()->get_all($reg_payment_query_params);
258
-        if (! empty($registration_payments)) {
258
+        if ( ! empty($registration_payments)) {
259 259
             foreach ($registration_payments as $registration_payment) {
260 260
                 if ($registration_payment instanceof EE_Registration_Payment) {
261 261
                     $amount_paid = $registration_payment->amount();
@@ -321,7 +321,7 @@  discard block
 block discarded – undo
321 321
     public function update_transaction_status_based_on_total_paid(EE_Transaction $transaction, $update_txn = true)
322 322
     {
323 323
         EE_Error::doing_it_wrong(
324
-            __CLASS__ . '::' . __FUNCTION__,
324
+            __CLASS__.'::'.__FUNCTION__,
325 325
             sprintf(
326 326
                 __('This method is deprecated. Please use "%s" instead', 'event_espresso'),
327 327
                 'EE_Transaction::update_status_based_on_total_paid()'
@@ -330,7 +330,7 @@  discard block
 block discarded – undo
330 330
             '5.0.0'
331 331
         );
332 332
         // verify transaction
333
-        if (! $transaction instanceof EE_Transaction) {
333
+        if ( ! $transaction instanceof EE_Transaction) {
334 334
             EE_Error::add_error(
335 335
                 __('Please provide a valid EE_Transaction object.', 'event_espresso'),
336 336
                 __FILE__,
Please login to merge, or discard this patch.
Indentation   +420 added lines, -420 removed lines patch added patch discarded remove patch
@@ -15,424 +15,424 @@
 block discarded – undo
15 15
 class EE_Transaction_Payments
16 16
 {
17 17
 
18
-    /**
19
-     * @var EE_Transaction_Payments $_instance
20
-     * @access    private
21
-     */
22
-    private static $_instance;
23
-
24
-    /**
25
-     * @deprecated
26
-     * @var string
27
-     */
28
-    protected $_old_txn_status;
29
-
30
-    /**
31
-     * @deprecated
32
-     * @var string
33
-     */
34
-    protected $_new_txn_status;
35
-
36
-
37
-    /**
38
-     * @singleton method used to instantiate class object
39
-     * @access    public
40
-     * @return EE_Transaction_Payments instance
41
-     */
42
-    public static function instance()
43
-    {
44
-        // check if class object is instantiated
45
-        if (! self::$_instance instanceof EE_Transaction_Payments) {
46
-            self::$_instance = new self();
47
-        }
48
-        return self::$_instance;
49
-    }
50
-
51
-
52
-    /**
53
-     * recalculate_transaction_total
54
-     *
55
-     * @access private
56
-     * @param EE_Transaction $transaction
57
-     * @param bool           $update_txn
58
-     * @return bool true if TXN total was updated, false if not
59
-     * @throws \EE_Error
60
-     */
61
-    public function recalculate_transaction_total(EE_Transaction $transaction, $update_txn = true)
62
-    {
63
-        $total_line_item = $transaction->total_line_item();
64
-        if (! $total_line_item instanceof EE_Line_Item) {
65
-            EE_Error::add_error(
66
-                sprintf(
67
-                    __('The Total Line Item for Transaction %1$d\'s was not found or is invalid.', 'event_espresso'),
68
-                    $transaction->ID()
69
-                ),
70
-                __FILE__,
71
-                __FUNCTION__,
72
-                __LINE__
73
-            );
74
-            return false;
75
-        }
76
-        $new_total = $total_line_item->recalculate_total_including_taxes();
77
-        $transaction->set_total($new_total);
78
-        if ($update_txn) {
79
-            return $transaction->save() ? true : false;
80
-        }
81
-        return false;
82
-    }
83
-
84
-
85
-    /**
86
-     * Updates the provided EE_Transaction with all the applicable payments
87
-     * returns a boolean for whether the TXN was saved to the db
88
-     * (meaning a status change occurred)
89
-     * or not saved (which could **still** mean that
90
-     * the TXN status changed, but just was not yet saved).
91
-     * So if passing a value of false for the $update_txn param,
92
-     * then client code needs to take responsibility for saving the TXN
93
-     * regardless of what happens within EE_Transaction_Payments;
94
-     *
95
-     * @param            EE_Transaction /int $transaction_obj_or_id EE_Transaction or its ID
96
-     * @param    boolean $update_txn whether to save the TXN
97
-     * @return    boolean        whether the TXN was saved
98
-     * @throws \EE_Error
99
-     */
100
-    public function calculate_total_payments_and_update_status(EE_Transaction $transaction, $update_txn = true)
101
-    {
102
-        // verify transaction
103
-        if (! $transaction instanceof EE_Transaction) {
104
-            EE_Error::add_error(
105
-                __('Please provide a valid EE_Transaction object.', 'event_espresso'),
106
-                __FILE__,
107
-                __FUNCTION__,
108
-                __LINE__
109
-            );
110
-            return false;
111
-        }
112
-        // calculate total paid
113
-        $total_paid = $this->recalculate_total_payments_for_transaction($transaction);
114
-        // if total paid has changed
115
-        if ($total_paid !== false && (float) $total_paid !== $transaction->paid()) {
116
-            $transaction->set_paid($total_paid);
117
-            // maybe update status, and make sure to save transaction if not done already
118
-            if (! $transaction->update_status_based_on_total_paid($update_txn)) {
119
-                if ($update_txn) {
120
-                    return $transaction->save() ? true : false;
121
-                }
122
-            } else {
123
-                // the status got updated and was saved by
124
-                // update_transaction_status_based_on_total_paid()
125
-                return true;
126
-            }
127
-        }
128
-        return false;
129
-    }
130
-
131
-
132
-    /**
133
-     * recalculate_total_payments_for_transaction
134
-     *
135
-     * @access public
136
-     * @param EE_Transaction $transaction
137
-     * @param string         $payment_status One of EEM_Payment's statuses, like 'PAP' (Approved).
138
-     *                                       By default, searches for approved payments
139
-     * @return float|false   float on success, false on fail
140
-     * @throws \EE_Error
141
-     */
142
-    public function recalculate_total_payments_for_transaction(
143
-        EE_Transaction $transaction,
144
-        $payment_status = EEM_Payment::status_id_approved
145
-    ) {
146
-        // verify transaction
147
-        if (! $transaction instanceof EE_Transaction) {
148
-            EE_Error::add_error(
149
-                __('Please provide a valid EE_Transaction object.', 'event_espresso'),
150
-                __FILE__,
151
-                __FUNCTION__,
152
-                __LINE__
153
-            );
154
-            return false;
155
-        }
156
-        // ensure Payment model is loaded
157
-        EE_Registry::instance()->load_model('Payment');
158
-        // calls EEM_Base::sum()
159
-        return EEM_Payment::instance()->sum(
160
-            // query params
161
-            array(array('TXN_ID' => $transaction->ID(), 'STS_ID' => $payment_status)),
162
-            // field to sum
163
-            'PAY_amount'
164
-        );
165
-    }
166
-
167
-
168
-    /**
169
-     * delete_payment_and_update_transaction
170
-     * Before deleting the selected payment, we fetch it's transaction,
171
-     * then delete the payment, and update the transactions' amount paid.
172
-     *
173
-     * @param EE_Payment $payment
174
-     * @return boolean
175
-     * @throws \EE_Error
176
-     */
177
-    public function delete_payment_and_update_transaction(EE_Payment $payment)
178
-    {
179
-        // verify payment
180
-        if (! $payment instanceof EE_Payment) {
181
-            EE_Error::add_error(
182
-                __('A valid Payment object was not received.', 'event_espresso'),
183
-                __FILE__,
184
-                __FUNCTION__,
185
-                __LINE__
186
-            );
187
-            return false;
188
-        }
189
-        if (! $this->delete_registration_payments_and_update_registrations($payment)) {
190
-            return false;
191
-        }
192
-        if (! $payment->delete()) {
193
-            EE_Error::add_error(
194
-                __('The payment could not be deleted.', 'event_espresso'),
195
-                __FILE__,
196
-                __FUNCTION__,
197
-                __LINE__
198
-            );
199
-            return false;
200
-        }
201
-
202
-        $transaction = $payment->transaction();
203
-        $TXN_status = $transaction->status_ID();
204
-        if (
205
-            $TXN_status === EEM_Transaction::abandoned_status_code
206
-            || $TXN_status === EEM_Transaction::failed_status_code
207
-            || $payment->amount() === 0
208
-        ) {
209
-            EE_Error::add_success(__('The Payment was successfully deleted.', 'event_espresso'));
210
-            return true;
211
-        }
212
-
213
-
214
-        // if this fails, that just means that the transaction didn't get its status changed and/or updated.
215
-        // however the payment was still deleted.
216
-        if (! $this->calculate_total_payments_and_update_status($transaction)) {
217
-            EE_Error::add_attention(
218
-                __(
219
-                    'It appears that the Payment was deleted but no change was recorded for the Transaction for an unknown reason. Please verify that all data for this Transaction looks correct..',
220
-                    'event_espresso'
221
-                ),
222
-                __FILE__,
223
-                __FUNCTION__,
224
-                __LINE__
225
-            );
226
-            return true;
227
-        }
228
-
229
-        EE_Error::add_success(
230
-            __(
231
-                'The Payment was successfully deleted, and the Transaction has been updated accordingly.',
232
-                'event_espresso'
233
-            )
234
-        );
235
-        return true;
236
-    }
237
-
238
-
239
-    /**
240
-     * delete_registration_payments_and_update_registrations
241
-     *
242
-     * removes all registration payment records associated with a payment
243
-     * and subtracts their amounts from the corresponding registrations REG_paid field
244
-     *
245
-     * @param EE_Payment $payment
246
-     * @param array      $reg_payment_query_params
247
-     * @return bool
248
-     * @throws \EE_Error
249
-     */
250
-    public function delete_registration_payments_and_update_registrations(
251
-        EE_Payment $payment,
252
-        $reg_payment_query_params = array()
253
-    ) {
254
-        $save_payment = false;
255
-        $reg_payment_query_params = ! empty($reg_payment_query_params) ? $reg_payment_query_params
256
-            : array(array('PAY_ID' => $payment->ID()));
257
-        $registration_payments = EEM_Registration_Payment::instance()->get_all($reg_payment_query_params);
258
-        if (! empty($registration_payments)) {
259
-            foreach ($registration_payments as $registration_payment) {
260
-                if ($registration_payment instanceof EE_Registration_Payment) {
261
-                    $amount_paid = $registration_payment->amount();
262
-                    $registration = $registration_payment->registration();
263
-                    if ($registration instanceof EE_Registration) {
264
-                        $registration->set_paid($registration->paid() - $amount_paid);
265
-                        if ($registration->save() !== false) {
266
-                            $registration_payment->delete_permanently();
267
-                            $save_payment = true;
268
-                        }
269
-                    } else {
270
-                        EE_Error::add_error(
271
-                            sprintf(
272
-                                __(
273
-                                    'An invalid Registration object was associated with Registration Payment ID# %1$d.',
274
-                                    'event_espresso'
275
-                                ),
276
-                                $registration_payment->ID()
277
-                            ),
278
-                            __FILE__,
279
-                            __FUNCTION__,
280
-                            __LINE__
281
-                        );
282
-                        return false;
283
-                    }
284
-                } else {
285
-                    EE_Error::add_error(
286
-                        sprintf(
287
-                            __(
288
-                                'An invalid Registration Payment object was associated with payment ID# %1$d.',
289
-                                'event_espresso'
290
-                            ),
291
-                            $payment->ID()
292
-                        ),
293
-                        __FILE__,
294
-                        __FUNCTION__,
295
-                        __LINE__
296
-                    );
297
-                    return false;
298
-                }
299
-            }
300
-        }
301
-        if ($save_payment) {
302
-            $payment->save();
303
-        }
304
-        return true;
305
-    }
306
-
307
-
308
-
309
-    /********************************** DEPRECATED METHODS **********************************/
310
-
311
-
312
-    /**
313
-     * possibly toggles TXN status
314
-     *
315
-     * @deprecated 4.9.1
316
-     * @param EE_Transaction $transaction
317
-     * @param    boolean     $update_txn whether to save the TXN
318
-     * @return    boolean        whether the TXN was saved
319
-     * @throws \EE_Error
320
-     */
321
-    public function update_transaction_status_based_on_total_paid(EE_Transaction $transaction, $update_txn = true)
322
-    {
323
-        EE_Error::doing_it_wrong(
324
-            __CLASS__ . '::' . __FUNCTION__,
325
-            sprintf(
326
-                __('This method is deprecated. Please use "%s" instead', 'event_espresso'),
327
-                'EE_Transaction::update_status_based_on_total_paid()'
328
-            ),
329
-            '4.9.1',
330
-            '5.0.0'
331
-        );
332
-        // verify transaction
333
-        if (! $transaction instanceof EE_Transaction) {
334
-            EE_Error::add_error(
335
-                __('Please provide a valid EE_Transaction object.', 'event_espresso'),
336
-                __FILE__,
337
-                __FUNCTION__,
338
-                __LINE__
339
-            );
340
-            return false;
341
-        }
342
-        // set transaction status based on comparison of TXN_paid vs TXN_total
343
-        return $transaction->update_status_based_on_total_paid($update_txn);
344
-    }
345
-
346
-
347
-    /**
348
-     * @deprecated 4.9.12
349
-     * @return string
350
-     */
351
-    public function old_txn_status()
352
-    {
353
-        EE_Error::doing_it_wrong(
354
-            __METHOD__,
355
-            esc_html__(
356
-                'This logic has been moved into \EE_Transaction::old_txn_status(), please use that method instead.',
357
-                'event_espresso'
358
-            ),
359
-            '4.9.12'
360
-        );
361
-        return $this->_old_txn_status;
362
-    }
363
-
364
-
365
-    /**
366
-     * @deprecated 4.9.12
367
-     * @param string $old_txn_status
368
-     */
369
-    public function set_old_txn_status($old_txn_status)
370
-    {
371
-        EE_Error::doing_it_wrong(
372
-            __METHOD__,
373
-            esc_html__(
374
-                'This logic has been moved into \EE_Transaction::set_old_txn_status(), please use that method instead.',
375
-                'event_espresso'
376
-            ),
377
-            '4.9.12'
378
-        );
379
-        // only set the first time
380
-        if ($this->_old_txn_status === null) {
381
-            $this->_old_txn_status = $old_txn_status;
382
-        }
383
-    }
384
-
385
-
386
-    /**
387
-     * @deprecated 4.9.12
388
-     * @return string
389
-     */
390
-    public function new_txn_status()
391
-    {
392
-        EE_Error::doing_it_wrong(
393
-            __METHOD__,
394
-            esc_html__(
395
-                'This logic has been removed. Please just use \EE_Transaction::status_ID() instead.',
396
-                'event_espresso'
397
-            ),
398
-            '4.9.12'
399
-        );
400
-        return $this->_new_txn_status;
401
-    }
402
-
403
-
404
-    /**
405
-     * @deprecated 4.9.12
406
-     * @param string $new_txn_status
407
-     */
408
-    public function set_new_txn_status($new_txn_status)
409
-    {
410
-        EE_Error::doing_it_wrong(
411
-            __METHOD__,
412
-            esc_html__(
413
-                'This logic has been removed. Please just use \EE_Transaction::set_status() instead.',
414
-                'event_espresso'
415
-            ),
416
-            '4.9.12'
417
-        );
418
-        $this->_new_txn_status = $new_txn_status;
419
-    }
420
-
421
-
422
-    /**
423
-     * @deprecated 4.9.12
424
-     * @return bool
425
-     */
426
-    public function txn_status_updated()
427
-    {
428
-        EE_Error::doing_it_wrong(
429
-            __METHOD__,
430
-            esc_html__(
431
-                'This logic has been moved into \EE_Transaction::txn_status_updated(), please use that method instead.',
432
-                'event_espresso'
433
-            ),
434
-            '4.9.12'
435
-        );
436
-        return $this->_new_txn_status !== $this->_old_txn_status && $this->_old_txn_status !== null ? true : false;
437
-    }
18
+	/**
19
+	 * @var EE_Transaction_Payments $_instance
20
+	 * @access    private
21
+	 */
22
+	private static $_instance;
23
+
24
+	/**
25
+	 * @deprecated
26
+	 * @var string
27
+	 */
28
+	protected $_old_txn_status;
29
+
30
+	/**
31
+	 * @deprecated
32
+	 * @var string
33
+	 */
34
+	protected $_new_txn_status;
35
+
36
+
37
+	/**
38
+	 * @singleton method used to instantiate class object
39
+	 * @access    public
40
+	 * @return EE_Transaction_Payments instance
41
+	 */
42
+	public static function instance()
43
+	{
44
+		// check if class object is instantiated
45
+		if (! self::$_instance instanceof EE_Transaction_Payments) {
46
+			self::$_instance = new self();
47
+		}
48
+		return self::$_instance;
49
+	}
50
+
51
+
52
+	/**
53
+	 * recalculate_transaction_total
54
+	 *
55
+	 * @access private
56
+	 * @param EE_Transaction $transaction
57
+	 * @param bool           $update_txn
58
+	 * @return bool true if TXN total was updated, false if not
59
+	 * @throws \EE_Error
60
+	 */
61
+	public function recalculate_transaction_total(EE_Transaction $transaction, $update_txn = true)
62
+	{
63
+		$total_line_item = $transaction->total_line_item();
64
+		if (! $total_line_item instanceof EE_Line_Item) {
65
+			EE_Error::add_error(
66
+				sprintf(
67
+					__('The Total Line Item for Transaction %1$d\'s was not found or is invalid.', 'event_espresso'),
68
+					$transaction->ID()
69
+				),
70
+				__FILE__,
71
+				__FUNCTION__,
72
+				__LINE__
73
+			);
74
+			return false;
75
+		}
76
+		$new_total = $total_line_item->recalculate_total_including_taxes();
77
+		$transaction->set_total($new_total);
78
+		if ($update_txn) {
79
+			return $transaction->save() ? true : false;
80
+		}
81
+		return false;
82
+	}
83
+
84
+
85
+	/**
86
+	 * Updates the provided EE_Transaction with all the applicable payments
87
+	 * returns a boolean for whether the TXN was saved to the db
88
+	 * (meaning a status change occurred)
89
+	 * or not saved (which could **still** mean that
90
+	 * the TXN status changed, but just was not yet saved).
91
+	 * So if passing a value of false for the $update_txn param,
92
+	 * then client code needs to take responsibility for saving the TXN
93
+	 * regardless of what happens within EE_Transaction_Payments;
94
+	 *
95
+	 * @param            EE_Transaction /int $transaction_obj_or_id EE_Transaction or its ID
96
+	 * @param    boolean $update_txn whether to save the TXN
97
+	 * @return    boolean        whether the TXN was saved
98
+	 * @throws \EE_Error
99
+	 */
100
+	public function calculate_total_payments_and_update_status(EE_Transaction $transaction, $update_txn = true)
101
+	{
102
+		// verify transaction
103
+		if (! $transaction instanceof EE_Transaction) {
104
+			EE_Error::add_error(
105
+				__('Please provide a valid EE_Transaction object.', 'event_espresso'),
106
+				__FILE__,
107
+				__FUNCTION__,
108
+				__LINE__
109
+			);
110
+			return false;
111
+		}
112
+		// calculate total paid
113
+		$total_paid = $this->recalculate_total_payments_for_transaction($transaction);
114
+		// if total paid has changed
115
+		if ($total_paid !== false && (float) $total_paid !== $transaction->paid()) {
116
+			$transaction->set_paid($total_paid);
117
+			// maybe update status, and make sure to save transaction if not done already
118
+			if (! $transaction->update_status_based_on_total_paid($update_txn)) {
119
+				if ($update_txn) {
120
+					return $transaction->save() ? true : false;
121
+				}
122
+			} else {
123
+				// the status got updated and was saved by
124
+				// update_transaction_status_based_on_total_paid()
125
+				return true;
126
+			}
127
+		}
128
+		return false;
129
+	}
130
+
131
+
132
+	/**
133
+	 * recalculate_total_payments_for_transaction
134
+	 *
135
+	 * @access public
136
+	 * @param EE_Transaction $transaction
137
+	 * @param string         $payment_status One of EEM_Payment's statuses, like 'PAP' (Approved).
138
+	 *                                       By default, searches for approved payments
139
+	 * @return float|false   float on success, false on fail
140
+	 * @throws \EE_Error
141
+	 */
142
+	public function recalculate_total_payments_for_transaction(
143
+		EE_Transaction $transaction,
144
+		$payment_status = EEM_Payment::status_id_approved
145
+	) {
146
+		// verify transaction
147
+		if (! $transaction instanceof EE_Transaction) {
148
+			EE_Error::add_error(
149
+				__('Please provide a valid EE_Transaction object.', 'event_espresso'),
150
+				__FILE__,
151
+				__FUNCTION__,
152
+				__LINE__
153
+			);
154
+			return false;
155
+		}
156
+		// ensure Payment model is loaded
157
+		EE_Registry::instance()->load_model('Payment');
158
+		// calls EEM_Base::sum()
159
+		return EEM_Payment::instance()->sum(
160
+			// query params
161
+			array(array('TXN_ID' => $transaction->ID(), 'STS_ID' => $payment_status)),
162
+			// field to sum
163
+			'PAY_amount'
164
+		);
165
+	}
166
+
167
+
168
+	/**
169
+	 * delete_payment_and_update_transaction
170
+	 * Before deleting the selected payment, we fetch it's transaction,
171
+	 * then delete the payment, and update the transactions' amount paid.
172
+	 *
173
+	 * @param EE_Payment $payment
174
+	 * @return boolean
175
+	 * @throws \EE_Error
176
+	 */
177
+	public function delete_payment_and_update_transaction(EE_Payment $payment)
178
+	{
179
+		// verify payment
180
+		if (! $payment instanceof EE_Payment) {
181
+			EE_Error::add_error(
182
+				__('A valid Payment object was not received.', 'event_espresso'),
183
+				__FILE__,
184
+				__FUNCTION__,
185
+				__LINE__
186
+			);
187
+			return false;
188
+		}
189
+		if (! $this->delete_registration_payments_and_update_registrations($payment)) {
190
+			return false;
191
+		}
192
+		if (! $payment->delete()) {
193
+			EE_Error::add_error(
194
+				__('The payment could not be deleted.', 'event_espresso'),
195
+				__FILE__,
196
+				__FUNCTION__,
197
+				__LINE__
198
+			);
199
+			return false;
200
+		}
201
+
202
+		$transaction = $payment->transaction();
203
+		$TXN_status = $transaction->status_ID();
204
+		if (
205
+			$TXN_status === EEM_Transaction::abandoned_status_code
206
+			|| $TXN_status === EEM_Transaction::failed_status_code
207
+			|| $payment->amount() === 0
208
+		) {
209
+			EE_Error::add_success(__('The Payment was successfully deleted.', 'event_espresso'));
210
+			return true;
211
+		}
212
+
213
+
214
+		// if this fails, that just means that the transaction didn't get its status changed and/or updated.
215
+		// however the payment was still deleted.
216
+		if (! $this->calculate_total_payments_and_update_status($transaction)) {
217
+			EE_Error::add_attention(
218
+				__(
219
+					'It appears that the Payment was deleted but no change was recorded for the Transaction for an unknown reason. Please verify that all data for this Transaction looks correct..',
220
+					'event_espresso'
221
+				),
222
+				__FILE__,
223
+				__FUNCTION__,
224
+				__LINE__
225
+			);
226
+			return true;
227
+		}
228
+
229
+		EE_Error::add_success(
230
+			__(
231
+				'The Payment was successfully deleted, and the Transaction has been updated accordingly.',
232
+				'event_espresso'
233
+			)
234
+		);
235
+		return true;
236
+	}
237
+
238
+
239
+	/**
240
+	 * delete_registration_payments_and_update_registrations
241
+	 *
242
+	 * removes all registration payment records associated with a payment
243
+	 * and subtracts their amounts from the corresponding registrations REG_paid field
244
+	 *
245
+	 * @param EE_Payment $payment
246
+	 * @param array      $reg_payment_query_params
247
+	 * @return bool
248
+	 * @throws \EE_Error
249
+	 */
250
+	public function delete_registration_payments_and_update_registrations(
251
+		EE_Payment $payment,
252
+		$reg_payment_query_params = array()
253
+	) {
254
+		$save_payment = false;
255
+		$reg_payment_query_params = ! empty($reg_payment_query_params) ? $reg_payment_query_params
256
+			: array(array('PAY_ID' => $payment->ID()));
257
+		$registration_payments = EEM_Registration_Payment::instance()->get_all($reg_payment_query_params);
258
+		if (! empty($registration_payments)) {
259
+			foreach ($registration_payments as $registration_payment) {
260
+				if ($registration_payment instanceof EE_Registration_Payment) {
261
+					$amount_paid = $registration_payment->amount();
262
+					$registration = $registration_payment->registration();
263
+					if ($registration instanceof EE_Registration) {
264
+						$registration->set_paid($registration->paid() - $amount_paid);
265
+						if ($registration->save() !== false) {
266
+							$registration_payment->delete_permanently();
267
+							$save_payment = true;
268
+						}
269
+					} else {
270
+						EE_Error::add_error(
271
+							sprintf(
272
+								__(
273
+									'An invalid Registration object was associated with Registration Payment ID# %1$d.',
274
+									'event_espresso'
275
+								),
276
+								$registration_payment->ID()
277
+							),
278
+							__FILE__,
279
+							__FUNCTION__,
280
+							__LINE__
281
+						);
282
+						return false;
283
+					}
284
+				} else {
285
+					EE_Error::add_error(
286
+						sprintf(
287
+							__(
288
+								'An invalid Registration Payment object was associated with payment ID# %1$d.',
289
+								'event_espresso'
290
+							),
291
+							$payment->ID()
292
+						),
293
+						__FILE__,
294
+						__FUNCTION__,
295
+						__LINE__
296
+					);
297
+					return false;
298
+				}
299
+			}
300
+		}
301
+		if ($save_payment) {
302
+			$payment->save();
303
+		}
304
+		return true;
305
+	}
306
+
307
+
308
+
309
+	/********************************** DEPRECATED METHODS **********************************/
310
+
311
+
312
+	/**
313
+	 * possibly toggles TXN status
314
+	 *
315
+	 * @deprecated 4.9.1
316
+	 * @param EE_Transaction $transaction
317
+	 * @param    boolean     $update_txn whether to save the TXN
318
+	 * @return    boolean        whether the TXN was saved
319
+	 * @throws \EE_Error
320
+	 */
321
+	public function update_transaction_status_based_on_total_paid(EE_Transaction $transaction, $update_txn = true)
322
+	{
323
+		EE_Error::doing_it_wrong(
324
+			__CLASS__ . '::' . __FUNCTION__,
325
+			sprintf(
326
+				__('This method is deprecated. Please use "%s" instead', 'event_espresso'),
327
+				'EE_Transaction::update_status_based_on_total_paid()'
328
+			),
329
+			'4.9.1',
330
+			'5.0.0'
331
+		);
332
+		// verify transaction
333
+		if (! $transaction instanceof EE_Transaction) {
334
+			EE_Error::add_error(
335
+				__('Please provide a valid EE_Transaction object.', 'event_espresso'),
336
+				__FILE__,
337
+				__FUNCTION__,
338
+				__LINE__
339
+			);
340
+			return false;
341
+		}
342
+		// set transaction status based on comparison of TXN_paid vs TXN_total
343
+		return $transaction->update_status_based_on_total_paid($update_txn);
344
+	}
345
+
346
+
347
+	/**
348
+	 * @deprecated 4.9.12
349
+	 * @return string
350
+	 */
351
+	public function old_txn_status()
352
+	{
353
+		EE_Error::doing_it_wrong(
354
+			__METHOD__,
355
+			esc_html__(
356
+				'This logic has been moved into \EE_Transaction::old_txn_status(), please use that method instead.',
357
+				'event_espresso'
358
+			),
359
+			'4.9.12'
360
+		);
361
+		return $this->_old_txn_status;
362
+	}
363
+
364
+
365
+	/**
366
+	 * @deprecated 4.9.12
367
+	 * @param string $old_txn_status
368
+	 */
369
+	public function set_old_txn_status($old_txn_status)
370
+	{
371
+		EE_Error::doing_it_wrong(
372
+			__METHOD__,
373
+			esc_html__(
374
+				'This logic has been moved into \EE_Transaction::set_old_txn_status(), please use that method instead.',
375
+				'event_espresso'
376
+			),
377
+			'4.9.12'
378
+		);
379
+		// only set the first time
380
+		if ($this->_old_txn_status === null) {
381
+			$this->_old_txn_status = $old_txn_status;
382
+		}
383
+	}
384
+
385
+
386
+	/**
387
+	 * @deprecated 4.9.12
388
+	 * @return string
389
+	 */
390
+	public function new_txn_status()
391
+	{
392
+		EE_Error::doing_it_wrong(
393
+			__METHOD__,
394
+			esc_html__(
395
+				'This logic has been removed. Please just use \EE_Transaction::status_ID() instead.',
396
+				'event_espresso'
397
+			),
398
+			'4.9.12'
399
+		);
400
+		return $this->_new_txn_status;
401
+	}
402
+
403
+
404
+	/**
405
+	 * @deprecated 4.9.12
406
+	 * @param string $new_txn_status
407
+	 */
408
+	public function set_new_txn_status($new_txn_status)
409
+	{
410
+		EE_Error::doing_it_wrong(
411
+			__METHOD__,
412
+			esc_html__(
413
+				'This logic has been removed. Please just use \EE_Transaction::set_status() instead.',
414
+				'event_espresso'
415
+			),
416
+			'4.9.12'
417
+		);
418
+		$this->_new_txn_status = $new_txn_status;
419
+	}
420
+
421
+
422
+	/**
423
+	 * @deprecated 4.9.12
424
+	 * @return bool
425
+	 */
426
+	public function txn_status_updated()
427
+	{
428
+		EE_Error::doing_it_wrong(
429
+			__METHOD__,
430
+			esc_html__(
431
+				'This logic has been moved into \EE_Transaction::txn_status_updated(), please use that method instead.',
432
+				'event_espresso'
433
+			),
434
+			'4.9.12'
435
+		);
436
+		return $this->_new_txn_status !== $this->_old_txn_status && $this->_old_txn_status !== null ? true : false;
437
+	}
438 438
 }
Please login to merge, or discard this patch.
core/admin/EE_Help_Tour_final_stop.class.php 2 patches
Indentation   +43 added lines, -43 removed lines patch added patch discarded remove patch
@@ -15,51 +15,51 @@
 block discarded – undo
15 15
 class EE_Help_Tour_final_stop extends EE_Help_Tour
16 16
 {
17 17
 
18
-    protected function _set_tour_properties()
19
-    {
20
-        $this->_label = __('Final Stop Tour', 'event_espresso');
21
-        $this->_slug = 'final-stop-tour';
22
-    }
18
+	protected function _set_tour_properties()
19
+	{
20
+		$this->_label = __('Final Stop Tour', 'event_espresso');
21
+		$this->_slug = 'final-stop-tour';
22
+	}
23 23
 
24 24
 
25
-    protected function _set_tour_stops()
26
-    {
27
-        $this->_stops = array(
28
-            10 => array(
29
-                'id'          => 'contextual-help-link',
30
-                'content'     => $this->_end(),
31
-                'button_text' => __('Quit', 'event_espresso'),
32
-                'options'     => array(
33
-                    'tipLocation'    => 'left',
34
-                    'tipAdjustmentY' => -20,
35
-                    'tipAdjustmentX' => 10,
36
-                ),
37
-            ),
38
-        );
39
-    }
25
+	protected function _set_tour_stops()
26
+	{
27
+		$this->_stops = array(
28
+			10 => array(
29
+				'id'          => 'contextual-help-link',
30
+				'content'     => $this->_end(),
31
+				'button_text' => __('Quit', 'event_espresso'),
32
+				'options'     => array(
33
+					'tipLocation'    => 'left',
34
+					'tipAdjustmentY' => -20,
35
+					'tipAdjustmentX' => 10,
36
+				),
37
+			),
38
+		);
39
+	}
40 40
 
41 41
 
42
-    /**
43
-     * This is the default last stop for all tours that is displayed at the end of a tour OR when a tour is exited for
44
-     * the first time.
45
-     *
46
-     * @return string
47
-     */
48
-    protected function _end()
49
-    {
50
-        $query_args = array(
51
-            'action' => 'admin_option_settings',
52
-            'page'   => 'espresso_general_settings',
53
-        );
54
-        return '<p>'
55
-               . sprintf(
56
-                   __(
57
-                       'That\'s it for the tour!  At any time you can restart a tour by clicking on this help dropdown and then clicking one of the Tour buttons.  There are help tours available on all Event Espresso Admin pages.  If you want to turn off help tours for all pages, %sgo here%s. All the best with your events!',
58
-                       'event_espresso'
59
-                   ),
60
-                   '<a href="' . EE_Admin_Page::add_query_args_and_nonce($query_args, admin_url('admin.php')) . '">',
61
-                   '</a>'
62
-               )
63
-               . '</p>';
64
-    }
42
+	/**
43
+	 * This is the default last stop for all tours that is displayed at the end of a tour OR when a tour is exited for
44
+	 * the first time.
45
+	 *
46
+	 * @return string
47
+	 */
48
+	protected function _end()
49
+	{
50
+		$query_args = array(
51
+			'action' => 'admin_option_settings',
52
+			'page'   => 'espresso_general_settings',
53
+		);
54
+		return '<p>'
55
+			   . sprintf(
56
+				   __(
57
+					   'That\'s it for the tour!  At any time you can restart a tour by clicking on this help dropdown and then clicking one of the Tour buttons.  There are help tours available on all Event Espresso Admin pages.  If you want to turn off help tours for all pages, %sgo here%s. All the best with your events!',
58
+					   'event_espresso'
59
+				   ),
60
+				   '<a href="' . EE_Admin_Page::add_query_args_and_nonce($query_args, admin_url('admin.php')) . '">',
61
+				   '</a>'
62
+			   )
63
+			   . '</p>';
64
+	}
65 65
 }
Please login to merge, or discard this patch.
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -57,7 +57,7 @@
 block discarded – undo
57 57
                        'That\'s it for the tour!  At any time you can restart a tour by clicking on this help dropdown and then clicking one of the Tour buttons.  There are help tours available on all Event Espresso Admin pages.  If you want to turn off help tours for all pages, %sgo here%s. All the best with your events!',
58 58
                        'event_espresso'
59 59
                    ),
60
-                   '<a href="' . EE_Admin_Page::add_query_args_and_nonce($query_args, admin_url('admin.php')) . '">',
60
+                   '<a href="'.EE_Admin_Page::add_query_args_and_nonce($query_args, admin_url('admin.php')).'">',
61 61
                    '</a>'
62 62
                )
63 63
                . '</p>';
Please login to merge, or discard this patch.