Completed
Branch master (16095c)
by
unknown
09:17 queued 04:49
created
core/services/commands/CommandFactoryInterface.php 1 patch
Indentation   +9 added lines, -9 removed lines patch added patch discarded remove patch
@@ -9,13 +9,13 @@
 block discarded – undo
9 9
 interface CommandFactoryInterface
10 10
 {
11 11
 
12
-    /**
13
-     * @param string $command_fqcn
14
-     * @param array  $arguments
15
-     * @return mixed
16
-     * @throws InvalidArgumentException
17
-     * @throws InvalidDataTypeException
18
-     * @throws InvalidInterfaceException
19
-     */
20
-    public function getNew($command_fqcn, $arguments = array());
12
+	/**
13
+	 * @param string $command_fqcn
14
+	 * @param array  $arguments
15
+	 * @return mixed
16
+	 * @throws InvalidArgumentException
17
+	 * @throws InvalidDataTypeException
18
+	 * @throws InvalidInterfaceException
19
+	 */
20
+	public function getNew($command_fqcn, $arguments = array());
21 21
 }
Please login to merge, or discard this patch.
core/services/loaders/LoaderDecoratorInterface.php 1 patch
Indentation   +11 added lines, -11 removed lines patch added patch discarded remove patch
@@ -5,18 +5,18 @@
 block discarded – undo
5 5
 interface LoaderDecoratorInterface
6 6
 {
7 7
 
8
-    /**
9
-     * @param string $fqcn
10
-     * @param array  $arguments
11
-     * @param bool   $shared
12
-     * @return mixed
13
-     */
14
-    public function load($fqcn, $arguments = array(), $shared = true);
8
+	/**
9
+	 * @param string $fqcn
10
+	 * @param array  $arguments
11
+	 * @param bool   $shared
12
+	 * @return mixed
13
+	 */
14
+	public function load($fqcn, $arguments = array(), $shared = true);
15 15
 
16 16
 
17 17
 
18
-    /**
19
-     * calls reset() on loader if method exists
20
-     */
21
-    public function reset();
18
+	/**
19
+	 * calls reset() on loader if method exists
20
+	 */
21
+	public function reset();
22 22
 }
Please login to merge, or discard this patch.
core/services/helpers/datetime/PhpCompatLessFiveSixHelper.php 2 patches
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -59,7 +59,7 @@
 block discarded – undo
59 59
         // although we don't know the TZ abbreviation, we know the UTC offset
60 60
         $timezone_string = timezone_name_from_abbr(null, $gmt_offset);
61 61
         // only use this timezone_string IF it's current offset matches the given offset
62
-        if (! empty($timezone_string)) {
62
+        if ( ! empty($timezone_string)) {
63 63
             $offset = null;
64 64
             try {
65 65
                 $offset = $this->getTimezoneOffset(new DateTimeZone($timezone_string));
Please login to merge, or discard this patch.
Indentation   +212 added lines, -212 removed lines patch added patch discarded remove patch
@@ -18,221 +18,221 @@
 block discarded – undo
18 18
  */
19 19
 class PhpCompatLessFiveSixHelper extends AbstractHelper
20 20
 {
21
-    /**
22
-     * PhpCompatLessFiveSixHelper constructor.
23
-     *
24
-     * @throws DomainException
25
-     */
26
-    public function __construct()
27
-    {
28
-        if (PHP_VERSION_ID >= 50600) {
29
-            throw new DomainException(
30
-                sprintf(
31
-                    esc_html__(
32
-                        'The %1$s is only usable on php versions less than 5.6.  You\'ll want to use %2$s instead.',
33
-                        'event_espresso'
34
-                    ),
35
-                    __CLASS__,
36
-                    'EventEspresso\core\services\helpers\datetime\PhpCompatGreaterFiveSixHelper'
37
-                )
38
-            );
39
-        }
40
-    }
21
+	/**
22
+	 * PhpCompatLessFiveSixHelper constructor.
23
+	 *
24
+	 * @throws DomainException
25
+	 */
26
+	public function __construct()
27
+	{
28
+		if (PHP_VERSION_ID >= 50600) {
29
+			throw new DomainException(
30
+				sprintf(
31
+					esc_html__(
32
+						'The %1$s is only usable on php versions less than 5.6.  You\'ll want to use %2$s instead.',
33
+						'event_espresso'
34
+					),
35
+					__CLASS__,
36
+					'EventEspresso\core\services\helpers\datetime\PhpCompatGreaterFiveSixHelper'
37
+				)
38
+			);
39
+		}
40
+	}
41 41
 
42
-    /**
43
-     * Returns a timezone string for the provided gmt_offset.
44
-     *
45
-     * @param float|string $gmt_offset
46
-     * @return string
47
-     * @throws EE_Error
48
-     */
49
-    public function getTimezoneStringFromGmtOffset($gmt_offset = '')
50
-    {
51
-        $gmt_offset_or_timezone_string = $this->sanitizeInitialIncomingGmtOffsetForGettingTimezoneString($gmt_offset);
52
-        if (is_string($gmt_offset_or_timezone_string)) {
53
-            return $gmt_offset_or_timezone_string;
54
-        }
55
-        // well we know its a float, so let's roll with it.
56
-        $gmt_offset = $gmt_offset_or_timezone_string;
57
-        // convert GMT offset to seconds
58
-        $gmt_offset *= HOUR_IN_SECONDS;
59
-        // although we don't know the TZ abbreviation, we know the UTC offset
60
-        $timezone_string = timezone_name_from_abbr(null, $gmt_offset);
61
-        // only use this timezone_string IF it's current offset matches the given offset
62
-        if (! empty($timezone_string)) {
63
-            $offset = null;
64
-            try {
65
-                $offset = $this->getTimezoneOffset(new DateTimeZone($timezone_string));
66
-                if ($offset !== $gmt_offset) {
67
-                    $timezone_string = false;
68
-                }
69
-            } catch (Exception $e) {
70
-                $timezone_string = false;
71
-            }
72
-        }
73
-        // better have a valid timezone string by now, but if not, sigh... loop thru  the timezone_abbreviations_list()
74
-        // ...
75
-        $timezone_string = $timezone_string !== false
76
-            ? $timezone_string
77
-            : $this->getTimezoneStringFromAbbreviationsList($gmt_offset);
78
-        return $timezone_string;
79
-    }
42
+	/**
43
+	 * Returns a timezone string for the provided gmt_offset.
44
+	 *
45
+	 * @param float|string $gmt_offset
46
+	 * @return string
47
+	 * @throws EE_Error
48
+	 */
49
+	public function getTimezoneStringFromGmtOffset($gmt_offset = '')
50
+	{
51
+		$gmt_offset_or_timezone_string = $this->sanitizeInitialIncomingGmtOffsetForGettingTimezoneString($gmt_offset);
52
+		if (is_string($gmt_offset_or_timezone_string)) {
53
+			return $gmt_offset_or_timezone_string;
54
+		}
55
+		// well we know its a float, so let's roll with it.
56
+		$gmt_offset = $gmt_offset_or_timezone_string;
57
+		// convert GMT offset to seconds
58
+		$gmt_offset *= HOUR_IN_SECONDS;
59
+		// although we don't know the TZ abbreviation, we know the UTC offset
60
+		$timezone_string = timezone_name_from_abbr(null, $gmt_offset);
61
+		// only use this timezone_string IF it's current offset matches the given offset
62
+		if (! empty($timezone_string)) {
63
+			$offset = null;
64
+			try {
65
+				$offset = $this->getTimezoneOffset(new DateTimeZone($timezone_string));
66
+				if ($offset !== $gmt_offset) {
67
+					$timezone_string = false;
68
+				}
69
+			} catch (Exception $e) {
70
+				$timezone_string = false;
71
+			}
72
+		}
73
+		// better have a valid timezone string by now, but if not, sigh... loop thru  the timezone_abbreviations_list()
74
+		// ...
75
+		$timezone_string = $timezone_string !== false
76
+			? $timezone_string
77
+			: $this->getTimezoneStringFromAbbreviationsList($gmt_offset);
78
+		return $timezone_string;
79
+	}
80 80
 
81 81
 
82
-    /**
83
-     * @param int  $gmt_offset
84
-     * @param bool $coerce If true, we attempt to coerce with our adjustment table
85
-     * @see self::adjustInvalidGmtOffset
86
-     * @return string
87
-     * @throws EE_Error
88
-     */
89
-    protected function getTimezoneStringFromAbbreviationsList($gmt_offset = 0, $coerce = true)
90
-    {
91
-        $gmt_offset = (int) $gmt_offset;
92
-        /** @var array[] $abbreviations */
93
-        $abbreviations = DateTimeZone::listAbbreviations();
94
-        foreach ($abbreviations as $abbreviation) {
95
-            foreach ($abbreviation as $timezone) {
96
-                if ((int) $timezone['offset'] === $gmt_offset && (bool) $timezone['dst'] === false) {
97
-                    try {
98
-                        $offset = $this->getTimezoneOffset(new DateTimeZone($timezone['timezone_id']));
99
-                        if ($offset !== $gmt_offset) {
100
-                            continue;
101
-                        }
102
-                        return $timezone['timezone_id'];
103
-                    } catch (Exception $e) {
104
-                        continue;
105
-                    }
106
-                }
107
-            }
108
-        }
109
-        // if $coerce is true, let's see if we can get a timezone string after the offset is adjusted
110
-        if ($coerce === true) {
111
-            $timezone_string = $this->getTimezoneStringFromAbbreviationsList(
112
-                $this->adjustInvalidGmtOffsets($gmt_offset),
113
-                false
114
-            );
115
-            if ($timezone_string) {
116
-                return $timezone_string;
117
-            }
118
-        }
119
-        throw new EE_Error(
120
-            sprintf(
121
-                esc_html__(
122
-                    'The provided GMT offset (%1$s), is invalid, please check with %2$sthis list%3$s for what valid timezones can be used',
123
-                    'event_espresso'
124
-                ),
125
-                $gmt_offset / HOUR_IN_SECONDS,
126
-                '<a href="http://www.php.net/manual/en/timezones.php">',
127
-                '</a>'
128
-            )
129
-        );
130
-    }
82
+	/**
83
+	 * @param int  $gmt_offset
84
+	 * @param bool $coerce If true, we attempt to coerce with our adjustment table
85
+	 * @see self::adjustInvalidGmtOffset
86
+	 * @return string
87
+	 * @throws EE_Error
88
+	 */
89
+	protected function getTimezoneStringFromAbbreviationsList($gmt_offset = 0, $coerce = true)
90
+	{
91
+		$gmt_offset = (int) $gmt_offset;
92
+		/** @var array[] $abbreviations */
93
+		$abbreviations = DateTimeZone::listAbbreviations();
94
+		foreach ($abbreviations as $abbreviation) {
95
+			foreach ($abbreviation as $timezone) {
96
+				if ((int) $timezone['offset'] === $gmt_offset && (bool) $timezone['dst'] === false) {
97
+					try {
98
+						$offset = $this->getTimezoneOffset(new DateTimeZone($timezone['timezone_id']));
99
+						if ($offset !== $gmt_offset) {
100
+							continue;
101
+						}
102
+						return $timezone['timezone_id'];
103
+					} catch (Exception $e) {
104
+						continue;
105
+					}
106
+				}
107
+			}
108
+		}
109
+		// if $coerce is true, let's see if we can get a timezone string after the offset is adjusted
110
+		if ($coerce === true) {
111
+			$timezone_string = $this->getTimezoneStringFromAbbreviationsList(
112
+				$this->adjustInvalidGmtOffsets($gmt_offset),
113
+				false
114
+			);
115
+			if ($timezone_string) {
116
+				return $timezone_string;
117
+			}
118
+		}
119
+		throw new EE_Error(
120
+			sprintf(
121
+				esc_html__(
122
+					'The provided GMT offset (%1$s), is invalid, please check with %2$sthis list%3$s for what valid timezones can be used',
123
+					'event_espresso'
124
+				),
125
+				$gmt_offset / HOUR_IN_SECONDS,
126
+				'<a href="http://www.php.net/manual/en/timezones.php">',
127
+				'</a>'
128
+			)
129
+		);
130
+	}
131 131
 
132 132
 
133
-    /**
134
-     * Depending on PHP version,
135
-     * there might not be valid current timezone strings to match these gmt_offsets in its timezone tables.
136
-     * To get around that, for these fringe timezones we bump them to a known valid offset.
137
-     * This method should ONLY be called after first verifying an timezone_string cannot be retrieved for the offset.
138
-     *
139
-     * @param int $gmt_offset
140
-     * @return int
141
-     */
142
-    public function adjustInvalidGmtOffsets($gmt_offset = 0)
143
-    {
144
-        // make sure $gmt_offset is int
145
-        $gmt_offset = (int) $gmt_offset;
146
-        switch ($gmt_offset) {
147
-            // -12
148
-            case -43200:
149
-                $gmt_offset = -39600;
150
-                break;
151
-            // -11.5
152
-            case -41400:
153
-                $gmt_offset = -39600;
154
-                break;
155
-            // -10.5
156
-            case -37800:
157
-                $gmt_offset = -39600;
158
-                break;
159
-            // -8.5
160
-            case -30600:
161
-                $gmt_offset = -28800;
162
-                break;
163
-            // -7.5
164
-            case -27000:
165
-                $gmt_offset = -25200;
166
-                break;
167
-            // -6.5
168
-            case -23400:
169
-                $gmt_offset = -21600;
170
-                break;
171
-            // -5.5
172
-            case -19800:
173
-                $gmt_offset = -18000;
174
-                break;
175
-            // -4.5
176
-            case -16200:
177
-                $gmt_offset = -14400;
178
-                break;
179
-            // -3.5
180
-            case -12600:
181
-                $gmt_offset = -10800;
182
-                break;
183
-            // -2.5
184
-            case -9000:
185
-                $gmt_offset = -7200;
186
-                break;
187
-            // -1.5
188
-            case -5400:
189
-                $gmt_offset = -3600;
190
-                break;
191
-            // -0.5
192
-            case -1800:
193
-                $gmt_offset = 0;
194
-                break;
195
-            // .5
196
-            case 1800:
197
-                $gmt_offset = 3600;
198
-                break;
199
-            // 1.5
200
-            case 5400:
201
-                $gmt_offset = 7200;
202
-                break;
203
-            // 2.5
204
-            case 9000:
205
-                $gmt_offset = 10800;
206
-                break;
207
-            // 3.5
208
-            case 12600:
209
-                $gmt_offset = 14400;
210
-                break;
211
-            // 7.5
212
-            case 27000:
213
-                $gmt_offset = 28800;
214
-                break;
215
-            // 8.5
216
-            case 30600:
217
-                $gmt_offset = 31500;
218
-                break;
219
-            // 10.5
220
-            case 37800:
221
-                $gmt_offset = 39600;
222
-                break;
223
-            // 11.5
224
-            case 41400:
225
-                $gmt_offset = 43200;
226
-                break;
227
-            // 12.75
228
-            case 45900:
229
-                $gmt_offset = 46800;
230
-                break;
231
-            // 13.75
232
-            case 49500:
233
-                $gmt_offset = 50400;
234
-                break;
235
-        }
236
-        return $gmt_offset;
237
-    }
133
+	/**
134
+	 * Depending on PHP version,
135
+	 * there might not be valid current timezone strings to match these gmt_offsets in its timezone tables.
136
+	 * To get around that, for these fringe timezones we bump them to a known valid offset.
137
+	 * This method should ONLY be called after first verifying an timezone_string cannot be retrieved for the offset.
138
+	 *
139
+	 * @param int $gmt_offset
140
+	 * @return int
141
+	 */
142
+	public function adjustInvalidGmtOffsets($gmt_offset = 0)
143
+	{
144
+		// make sure $gmt_offset is int
145
+		$gmt_offset = (int) $gmt_offset;
146
+		switch ($gmt_offset) {
147
+			// -12
148
+			case -43200:
149
+				$gmt_offset = -39600;
150
+				break;
151
+			// -11.5
152
+			case -41400:
153
+				$gmt_offset = -39600;
154
+				break;
155
+			// -10.5
156
+			case -37800:
157
+				$gmt_offset = -39600;
158
+				break;
159
+			// -8.5
160
+			case -30600:
161
+				$gmt_offset = -28800;
162
+				break;
163
+			// -7.5
164
+			case -27000:
165
+				$gmt_offset = -25200;
166
+				break;
167
+			// -6.5
168
+			case -23400:
169
+				$gmt_offset = -21600;
170
+				break;
171
+			// -5.5
172
+			case -19800:
173
+				$gmt_offset = -18000;
174
+				break;
175
+			// -4.5
176
+			case -16200:
177
+				$gmt_offset = -14400;
178
+				break;
179
+			// -3.5
180
+			case -12600:
181
+				$gmt_offset = -10800;
182
+				break;
183
+			// -2.5
184
+			case -9000:
185
+				$gmt_offset = -7200;
186
+				break;
187
+			// -1.5
188
+			case -5400:
189
+				$gmt_offset = -3600;
190
+				break;
191
+			// -0.5
192
+			case -1800:
193
+				$gmt_offset = 0;
194
+				break;
195
+			// .5
196
+			case 1800:
197
+				$gmt_offset = 3600;
198
+				break;
199
+			// 1.5
200
+			case 5400:
201
+				$gmt_offset = 7200;
202
+				break;
203
+			// 2.5
204
+			case 9000:
205
+				$gmt_offset = 10800;
206
+				break;
207
+			// 3.5
208
+			case 12600:
209
+				$gmt_offset = 14400;
210
+				break;
211
+			// 7.5
212
+			case 27000:
213
+				$gmt_offset = 28800;
214
+				break;
215
+			// 8.5
216
+			case 30600:
217
+				$gmt_offset = 31500;
218
+				break;
219
+			// 10.5
220
+			case 37800:
221
+				$gmt_offset = 39600;
222
+				break;
223
+			// 11.5
224
+			case 41400:
225
+				$gmt_offset = 43200;
226
+				break;
227
+			// 12.75
228
+			case 45900:
229
+				$gmt_offset = 46800;
230
+				break;
231
+			// 13.75
232
+			case 49500:
233
+				$gmt_offset = 50400;
234
+				break;
235
+		}
236
+		return $gmt_offset;
237
+	}
238 238
 }
Please login to merge, or discard this patch.
core/services/helpers/datetime/PhpCompatGreaterFiveSixHelper.php 2 patches
Indentation   +79 added lines, -79 removed lines patch added patch discarded remove patch
@@ -8,91 +8,91 @@
 block discarded – undo
8 8
 
9 9
 class PhpCompatGreaterFiveSixHelper extends AbstractHelper
10 10
 {
11
-    /**
12
-     * PhpCompatLessFiveSixHelper constructor.
13
-     *
14
-     * @throws DomainException
15
-     */
16
-    public function __construct()
17
-    {
18
-        if (PHP_VERSION_ID < 50600) {
19
-            throw new DomainException(
20
-                sprintf(
21
-                    esc_html__(
22
-                        'The %1$s is only usable on php versions greater than 5.6.  You\'ll want to use %2$s instead.',
23
-                        'event_espresso'
24
-                    ),
25
-                    __CLASS__,
26
-                    'EventEspresso\core\services\helpers\datetime\PhpCompatLessFiveSixHelper'
27
-                )
28
-            );
29
-        }
30
-    }
11
+	/**
12
+	 * PhpCompatLessFiveSixHelper constructor.
13
+	 *
14
+	 * @throws DomainException
15
+	 */
16
+	public function __construct()
17
+	{
18
+		if (PHP_VERSION_ID < 50600) {
19
+			throw new DomainException(
20
+				sprintf(
21
+					esc_html__(
22
+						'The %1$s is only usable on php versions greater than 5.6.  You\'ll want to use %2$s instead.',
23
+						'event_espresso'
24
+					),
25
+					__CLASS__,
26
+					'EventEspresso\core\services\helpers\datetime\PhpCompatLessFiveSixHelper'
27
+				)
28
+			);
29
+		}
30
+	}
31 31
 
32
-    /**
33
-     * Returns a timezone string for the provided gmt_offset.
34
-     * This is a valid timezone string that can be sent into DateTimeZone
35
-     *
36
-     * @param float|string $gmt_offset
37
-     * @return string
38
-     */
39
-    public function getTimezoneStringFromGmtOffset($gmt_offset = '')
40
-    {
41
-        $gmt_offset_or_timezone_string = $this->sanitizeInitialIncomingGmtOffsetForGettingTimezoneString($gmt_offset);
42
-        return is_float($gmt_offset_or_timezone_string)
43
-            ? $this->convertWpGmtOffsetForDateTimeZone($gmt_offset_or_timezone_string)
44
-            : $gmt_offset_or_timezone_string;
45
-    }
32
+	/**
33
+	 * Returns a timezone string for the provided gmt_offset.
34
+	 * This is a valid timezone string that can be sent into DateTimeZone
35
+	 *
36
+	 * @param float|string $gmt_offset
37
+	 * @return string
38
+	 */
39
+	public function getTimezoneStringFromGmtOffset($gmt_offset = '')
40
+	{
41
+		$gmt_offset_or_timezone_string = $this->sanitizeInitialIncomingGmtOffsetForGettingTimezoneString($gmt_offset);
42
+		return is_float($gmt_offset_or_timezone_string)
43
+			? $this->convertWpGmtOffsetForDateTimeZone($gmt_offset_or_timezone_string)
44
+			: $gmt_offset_or_timezone_string;
45
+	}
46 46
 
47 47
 
48 48
 
49
-    /**
50
-     * Returns a formatted offset for use as an argument for constructing DateTimeZone
51
-     * @param float $gmt_offset This should be a float representing the gmt_offset.
52
-     * @return string
53
-     */
54
-    protected function convertWpGmtOffsetForDateTimeZone($gmt_offset)
55
-    {
56
-        $gmt_offset = (float) $gmt_offset;
57
-        $is_negative = $gmt_offset < 0;
58
-        $gmt_offset *= 100;
59
-        $gmt_offset = absint($gmt_offset);
60
-        // negative and need zero padding?
61
-        if (strlen($gmt_offset) < 4) {
62
-            $gmt_offset = str_pad($gmt_offset, 4, '0', STR_PAD_LEFT);
63
-        }
64
-        $gmt_offset = $this->convertToTimeFraction($gmt_offset);
65
-        // return something like -1300, -0200 or +1300, +0200
66
-        return $is_negative ? '-' . $gmt_offset : '+' . $gmt_offset;
67
-    }
49
+	/**
50
+	 * Returns a formatted offset for use as an argument for constructing DateTimeZone
51
+	 * @param float $gmt_offset This should be a float representing the gmt_offset.
52
+	 * @return string
53
+	 */
54
+	protected function convertWpGmtOffsetForDateTimeZone($gmt_offset)
55
+	{
56
+		$gmt_offset = (float) $gmt_offset;
57
+		$is_negative = $gmt_offset < 0;
58
+		$gmt_offset *= 100;
59
+		$gmt_offset = absint($gmt_offset);
60
+		// negative and need zero padding?
61
+		if (strlen($gmt_offset) < 4) {
62
+			$gmt_offset = str_pad($gmt_offset, 4, '0', STR_PAD_LEFT);
63
+		}
64
+		$gmt_offset = $this->convertToTimeFraction($gmt_offset);
65
+		// return something like -1300, -0200 or +1300, +0200
66
+		return $is_negative ? '-' . $gmt_offset : '+' . $gmt_offset;
67
+	}
68 68
 
69 69
 
70
-    /**
71
-     * Converts something like `1550` to `1530` or `0275` to `0245`
72
-     * Incoming offset should be a positive value, this will mutate negative values. Be aware!
73
-     * @param int $offset
74
-     * @return mixed
75
-     */
76
-    protected function convertToTimeFraction($offset)
77
-    {
78
-        $first_part = substr($offset, 0, 2);
79
-        $second_part = substr($offset, 2, 2);
80
-        $second_part = str_replace(array('25', '50', '75'), array('15', '30', '45'), $second_part);
81
-        return $first_part . $second_part;
82
-    }
70
+	/**
71
+	 * Converts something like `1550` to `1530` or `0275` to `0245`
72
+	 * Incoming offset should be a positive value, this will mutate negative values. Be aware!
73
+	 * @param int $offset
74
+	 * @return mixed
75
+	 */
76
+	protected function convertToTimeFraction($offset)
77
+	{
78
+		$first_part = substr($offset, 0, 2);
79
+		$second_part = substr($offset, 2, 2);
80
+		$second_part = str_replace(array('25', '50', '75'), array('15', '30', '45'), $second_part);
81
+		return $first_part . $second_part;
82
+	}
83 83
 
84 84
 
85
-    /**
86
-     * Get Timezone offset for given timezone object
87
-     *
88
-     * @param DateTimeZone $date_time_zone
89
-     * @param null|int     $time
90
-     * @return int
91
-     */
92
-    public function getTimezoneOffset(DateTimezone $date_time_zone, $time = null)
93
-    {
94
-        $time = is_int($time) || $time === null ? $time : (int) strtotime($time);
95
-        $time = preg_match(EE_Datetime_Field::unix_timestamp_regex, $time) ? $time : time();
96
-        return $date_time_zone->getOffset(new DateTime('@' . $time));
97
-    }
85
+	/**
86
+	 * Get Timezone offset for given timezone object
87
+	 *
88
+	 * @param DateTimeZone $date_time_zone
89
+	 * @param null|int     $time
90
+	 * @return int
91
+	 */
92
+	public function getTimezoneOffset(DateTimezone $date_time_zone, $time = null)
93
+	{
94
+		$time = is_int($time) || $time === null ? $time : (int) strtotime($time);
95
+		$time = preg_match(EE_Datetime_Field::unix_timestamp_regex, $time) ? $time : time();
96
+		return $date_time_zone->getOffset(new DateTime('@' . $time));
97
+	}
98 98
 }
Please login to merge, or discard this patch.
Spacing   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -63,7 +63,7 @@  discard block
 block discarded – undo
63 63
         }
64 64
         $gmt_offset = $this->convertToTimeFraction($gmt_offset);
65 65
         // return something like -1300, -0200 or +1300, +0200
66
-        return $is_negative ? '-' . $gmt_offset : '+' . $gmt_offset;
66
+        return $is_negative ? '-'.$gmt_offset : '+'.$gmt_offset;
67 67
     }
68 68
 
69 69
 
@@ -78,7 +78,7 @@  discard block
 block discarded – undo
78 78
         $first_part = substr($offset, 0, 2);
79 79
         $second_part = substr($offset, 2, 2);
80 80
         $second_part = str_replace(array('25', '50', '75'), array('15', '30', '45'), $second_part);
81
-        return $first_part . $second_part;
81
+        return $first_part.$second_part;
82 82
     }
83 83
 
84 84
 
@@ -93,6 +93,6 @@  discard block
 block discarded – undo
93 93
     {
94 94
         $time = is_int($time) || $time === null ? $time : (int) strtotime($time);
95 95
         $time = preg_match(EE_Datetime_Field::unix_timestamp_regex, $time) ? $time : time();
96
-        return $date_time_zone->getOffset(new DateTime('@' . $time));
96
+        return $date_time_zone->getOffset(new DateTime('@'.$time));
97 97
     }
98 98
 }
Please login to merge, or discard this patch.
data_migration_scripts/4_6_0_stages/EE_DMS_4_6_0_billing_info.dmsstage.php 2 patches
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -25,9 +25,9 @@  discard block
 block discarded – undo
25 25
         $old_billing_info = maybe_unserialize($old_row['meta_value']);
26 26
         $gateway_name = str_replace("billing_info_", '', $old_row['meta_key']);
27 27
         $repetitive_prefix = '_reg-page-billing-';
28
-        $repetitive_suffix = "-" . $gateway_name;
28
+        $repetitive_suffix = "-".$gateway_name;
29 29
         foreach ($old_billing_info as $old_input_name => $input_value) {
30
-            $old_input_name_important_part = str_replace(array( $repetitive_prefix, $repetitive_suffix ), array( '', ''), $old_input_name);
30
+            $old_input_name_important_part = str_replace(array($repetitive_prefix, $repetitive_suffix), array('', ''), $old_input_name);
31 31
 
32 32
             switch ($old_input_name_important_part) {
33 33
                 case 'fname':
@@ -61,7 +61,7 @@  discard block
 block discarded – undo
61 61
                 default:
62 62
                     $new_input_name = $old_input_name_important_part;
63 63
             }
64
-            $new_billing_info[ $new_input_name ] = $input_value;
64
+            $new_billing_info[$new_input_name] = $input_value;
65 65
         }
66 66
         update_post_meta($old_row['post_id'], $old_row['meta_key'], $new_billing_info);
67 67
     }
@@ -74,6 +74,6 @@  discard block
 block discarded – undo
74 74
     protected function _get_state_name_by_ID($id)
75 75
     {
76 76
         global $wpdb;
77
-        return $wpdb->get_var($wpdb->prepare("SELECT STA_name FROM " . $wpdb->prefix . "esp_state WHERE STA_ID = %d", $id));
77
+        return $wpdb->get_var($wpdb->prepare("SELECT STA_name FROM ".$wpdb->prefix."esp_state WHERE STA_ID = %d", $id));
78 78
     }
79 79
 }
Please login to merge, or discard this patch.
Indentation   +64 added lines, -64 removed lines patch added patch discarded remove patch
@@ -11,69 +11,69 @@
 block discarded – undo
11 11
  */
12 12
 class EE_DMS_4_6_0_billing_info extends EE_Data_Migration_Script_Stage_Table
13 13
 {
14
-    public function __construct()
15
-    {
16
-        global $wpdb;
17
-        $this->_old_table = $wpdb->postmeta;
18
-        $this->_pretty_name = esc_html__('Billing Info', 'event_espresso');
19
-        $this->_extra_where_sql = "WHERE meta_key LIKE 'billing_info_%'";
20
-        parent::__construct();
21
-    }
22
-    protected function _migrate_old_row($old_row)
23
-    {
24
-        $new_billing_info = array();
25
-        $old_billing_info = maybe_unserialize($old_row['meta_value']);
26
-        $gateway_name = str_replace("billing_info_", '', $old_row['meta_key']);
27
-        $repetitive_prefix = '_reg-page-billing-';
28
-        $repetitive_suffix = "-" . $gateway_name;
29
-        foreach ($old_billing_info as $old_input_name => $input_value) {
30
-            $old_input_name_important_part = str_replace(array( $repetitive_prefix, $repetitive_suffix ), array( '', ''), $old_input_name);
14
+	public function __construct()
15
+	{
16
+		global $wpdb;
17
+		$this->_old_table = $wpdb->postmeta;
18
+		$this->_pretty_name = esc_html__('Billing Info', 'event_espresso');
19
+		$this->_extra_where_sql = "WHERE meta_key LIKE 'billing_info_%'";
20
+		parent::__construct();
21
+	}
22
+	protected function _migrate_old_row($old_row)
23
+	{
24
+		$new_billing_info = array();
25
+		$old_billing_info = maybe_unserialize($old_row['meta_value']);
26
+		$gateway_name = str_replace("billing_info_", '', $old_row['meta_key']);
27
+		$repetitive_prefix = '_reg-page-billing-';
28
+		$repetitive_suffix = "-" . $gateway_name;
29
+		foreach ($old_billing_info as $old_input_name => $input_value) {
30
+			$old_input_name_important_part = str_replace(array( $repetitive_prefix, $repetitive_suffix ), array( '', ''), $old_input_name);
31 31
 
32
-            switch ($old_input_name_important_part) {
33
-                case 'fname':
34
-                    $new_input_name = 'first_name';
35
-                    break;
36
-                case 'lname':
37
-                    $new_input_name = 'last_name';
38
-                    break;
39
-                case 'state':
40
-                    // we used to store the state's id ,but now we just store the name
41
-                    $new_input_name = $old_input_name_important_part;
42
-                    $input_value = $this->_get_state_name_by_ID($input_value);
43
-                    break;
44
-                case 'card-nmbr':
45
-                    $new_input_name = 'credit_card';
46
-                    break;
47
-                case 'card-type':// paypal pro only
48
-                    $new_input_name = 'credit_card_type';
49
-                    break;
50
-                case 'card-exp-date-mnth':
51
-                    $new_input_name = 'exp_month';
52
-                    $input_value = '';
53
-                    break;
54
-                case 'card-exp-date-year':
55
-                    $new_input_name = 'exp_year';
56
-                    $input_value = 0;
57
-                    break;
58
-                case 'ccv-code':
59
-                    $new_input_name = 'cvv';
60
-                    break;
61
-                default:
62
-                    $new_input_name = $old_input_name_important_part;
63
-            }
64
-            $new_billing_info[ $new_input_name ] = $input_value;
65
-        }
66
-        update_post_meta($old_row['post_id'], $old_row['meta_key'], $new_billing_info);
67
-    }
68
-    /**
69
-     *
70
-     * @global type $wpdb
71
-     * @param int $id
72
-     * @return string
73
-     */
74
-    protected function _get_state_name_by_ID($id)
75
-    {
76
-        global $wpdb;
77
-        return $wpdb->get_var($wpdb->prepare("SELECT STA_name FROM " . $wpdb->prefix . "esp_state WHERE STA_ID = %d", $id));
78
-    }
32
+			switch ($old_input_name_important_part) {
33
+				case 'fname':
34
+					$new_input_name = 'first_name';
35
+					break;
36
+				case 'lname':
37
+					$new_input_name = 'last_name';
38
+					break;
39
+				case 'state':
40
+					// we used to store the state's id ,but now we just store the name
41
+					$new_input_name = $old_input_name_important_part;
42
+					$input_value = $this->_get_state_name_by_ID($input_value);
43
+					break;
44
+				case 'card-nmbr':
45
+					$new_input_name = 'credit_card';
46
+					break;
47
+				case 'card-type':// paypal pro only
48
+					$new_input_name = 'credit_card_type';
49
+					break;
50
+				case 'card-exp-date-mnth':
51
+					$new_input_name = 'exp_month';
52
+					$input_value = '';
53
+					break;
54
+				case 'card-exp-date-year':
55
+					$new_input_name = 'exp_year';
56
+					$input_value = 0;
57
+					break;
58
+				case 'ccv-code':
59
+					$new_input_name = 'cvv';
60
+					break;
61
+				default:
62
+					$new_input_name = $old_input_name_important_part;
63
+			}
64
+			$new_billing_info[ $new_input_name ] = $input_value;
65
+		}
66
+		update_post_meta($old_row['post_id'], $old_row['meta_key'], $new_billing_info);
67
+	}
68
+	/**
69
+	 *
70
+	 * @global type $wpdb
71
+	 * @param int $id
72
+	 * @return string
73
+	 */
74
+	protected function _get_state_name_by_ID($id)
75
+	{
76
+		global $wpdb;
77
+		return $wpdb->get_var($wpdb->prepare("SELECT STA_name FROM " . $wpdb->prefix . "esp_state WHERE STA_ID = %d", $id));
78
+	}
79 79
 }
Please login to merge, or discard this patch.
4_9_0_stages/EE_DMS_4_9_0_Answers_With_No_Registration.dmsstage.php 2 patches
Spacing   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -48,9 +48,9 @@
 block discarded – undo
48 48
     {
49 49
         global $wpdb;
50 50
         $wpdb->delete(
51
-            $wpdb->prefix . 'esp_answer',
52
-            array( 'REG_ID' => 0 ),
53
-            array( '%d' )
51
+            $wpdb->prefix.'esp_answer',
52
+            array('REG_ID' => 0),
53
+            array('%d')
54 54
         );
55 55
         $this->set_completed();
56 56
         return 1;
Please login to merge, or discard this patch.
Indentation   +38 added lines, -38 removed lines patch added patch discarded remove patch
@@ -12,44 +12,44 @@
 block discarded – undo
12 12
  */
13 13
 class EE_DMS_4_9_0_Answers_With_No_Registration extends EE_Data_Migration_Script_Stage
14 14
 {
15
-    /**
16
-     * Just initializes the status of the migration
17
-     *
18
-     * @return EE_DMS_4_9_0_Answers_With_No_Registration
19
-     */
20
-    public function __construct()
21
-    {
22
-        $this->_pretty_name = esc_html__('Answer Cleanup', 'event_espresso');
23
-        parent::__construct();
24
-    }
15
+	/**
16
+	 * Just initializes the status of the migration
17
+	 *
18
+	 * @return EE_DMS_4_9_0_Answers_With_No_Registration
19
+	 */
20
+	public function __construct()
21
+	{
22
+		$this->_pretty_name = esc_html__('Answer Cleanup', 'event_espresso');
23
+		parent::__construct();
24
+	}
25 25
 
26
-    /**
27
-     * Counts the records to migrate; the public version may cache it
28
-     * @return int
29
-     */
30
-    protected function _count_records_to_migrate()
31
-    {
32
-        return 1;
33
-    }
26
+	/**
27
+	 * Counts the records to migrate; the public version may cache it
28
+	 * @return int
29
+	 */
30
+	protected function _count_records_to_migrate()
31
+	{
32
+		return 1;
33
+	}
34 34
 
35
-    /**
36
-     * IMPORTANT: if an error is encountered, or everything is finished, this stage should update its status property accordingly.
37
-     * Note: it should not alter the count of items migrated. That is done in the public function that calls this.
38
-     * IMPORTANT: The count of items migrated should ONLY be less than $num_items_to_migrate when it's the last migration step, otherwise it
39
-     * should always return $num_items_to_migrate. (Eg, if we're migrating attendees rows from the database, and $num_items_to_migrate is set to 50,
40
-     * then we SHOULD actually migrate 50 rows,but at very least we MUST report/return 50 items migrated)
41
-     * @param int $num_items_to_migrate
42
-     * @return int number of items ACTUALLY migrated
43
-     */
44
-    protected function _migration_step($num_items_to_migrate = 50)
45
-    {
46
-        global $wpdb;
47
-        $wpdb->delete(
48
-            $wpdb->prefix . 'esp_answer',
49
-            array( 'REG_ID' => 0 ),
50
-            array( '%d' )
51
-        );
52
-        $this->set_completed();
53
-        return 1;
54
-    }
35
+	/**
36
+	 * IMPORTANT: if an error is encountered, or everything is finished, this stage should update its status property accordingly.
37
+	 * Note: it should not alter the count of items migrated. That is done in the public function that calls this.
38
+	 * IMPORTANT: The count of items migrated should ONLY be less than $num_items_to_migrate when it's the last migration step, otherwise it
39
+	 * should always return $num_items_to_migrate. (Eg, if we're migrating attendees rows from the database, and $num_items_to_migrate is set to 50,
40
+	 * then we SHOULD actually migrate 50 rows,but at very least we MUST report/return 50 items migrated)
41
+	 * @param int $num_items_to_migrate
42
+	 * @return int number of items ACTUALLY migrated
43
+	 */
44
+	protected function _migration_step($num_items_to_migrate = 50)
45
+	{
46
+		global $wpdb;
47
+		$wpdb->delete(
48
+			$wpdb->prefix . 'esp_answer',
49
+			array( 'REG_ID' => 0 ),
50
+			array( '%d' )
51
+		);
52
+		$this->set_completed();
53
+		return 1;
54
+	}
55 55
 }
Please login to merge, or discard this patch.
core/data_migration_scripts/EE_Data_Migration_Script_Stage.core.php 1 patch
Indentation   +90 added lines, -90 removed lines patch added patch discarded remove patch
@@ -37,103 +37,103 @@
 block discarded – undo
37 37
  */
38 38
 abstract class EE_Data_Migration_Script_Stage extends EE_Data_Migration_Class_Base
39 39
 {
40
-    /**
41
-     * The migration script this is a stage of
42
-     *
43
-     * @var EE_Data_Migration_Script_Base
44
-     */
45
-    protected $_migration_script;
40
+	/**
41
+	 * The migration script this is a stage of
42
+	 *
43
+	 * @var EE_Data_Migration_Script_Base
44
+	 */
45
+	protected $_migration_script;
46 46
 
47
-    /**
48
-     * This should eb called to essentially 'finalize' construction of the stage.
49
-     * This isn't done on the main constructor in order to avoid repetitive code. Instead, this is
50
-     * called by EE_Data_Migration_Script_Base's __construct() method so children don't have to
51
-     *
52
-     * @param EE_Data_Migration_Script_Base $migration_script
53
-     */
54
-    public function _construct_finalize($migration_script)
55
-    {
56
-        $this->_migration_script = $migration_script;
57
-    }
47
+	/**
48
+	 * This should eb called to essentially 'finalize' construction of the stage.
49
+	 * This isn't done on the main constructor in order to avoid repetitive code. Instead, this is
50
+	 * called by EE_Data_Migration_Script_Base's __construct() method so children don't have to
51
+	 *
52
+	 * @param EE_Data_Migration_Script_Base $migration_script
53
+	 */
54
+	public function _construct_finalize($migration_script)
55
+	{
56
+		$this->_migration_script = $migration_script;
57
+	}
58 58
 
59
-    /**
60
-     * Migrates X old records to the new format. If a fatal error is encountered it is NOT caught here,
61
-     * but is propagated upwards for catching. So basically, the _migration_step() function implemented by children
62
-     * needs to catch exceptions and decide what's a fatal error and what isn't.
63
-     *
64
-     * @param int $num_items_to_migrate
65
-     * @return int
66
-     */
67
-    public function migration_step($num_items_to_migrate = 50)
68
-    {
69
-        // before we run the migration step, we want ot take note of warnings that get outputted
70
-        ob_start();
71
-        $items_migrated = $this->_migration_step($num_items_to_migrate);
72
-        $output = ob_get_contents();
73
-        ob_end_clean();
74
-        if ($output) {
75
-            $this->add_error($output);
76
-        }
77
-        $this->_records_migrated += $items_migrated;
78
-        return $items_migrated;
79
-    }
59
+	/**
60
+	 * Migrates X old records to the new format. If a fatal error is encountered it is NOT caught here,
61
+	 * but is propagated upwards for catching. So basically, the _migration_step() function implemented by children
62
+	 * needs to catch exceptions and decide what's a fatal error and what isn't.
63
+	 *
64
+	 * @param int $num_items_to_migrate
65
+	 * @return int
66
+	 */
67
+	public function migration_step($num_items_to_migrate = 50)
68
+	{
69
+		// before we run the migration step, we want ot take note of warnings that get outputted
70
+		ob_start();
71
+		$items_migrated = $this->_migration_step($num_items_to_migrate);
72
+		$output = ob_get_contents();
73
+		ob_end_clean();
74
+		if ($output) {
75
+			$this->add_error($output);
76
+		}
77
+		$this->_records_migrated += $items_migrated;
78
+		return $items_migrated;
79
+	}
80 80
 
81 81
 
82
-    /**
83
-     * IMPORTANT: if an error is encountered, or everything is finished, this stage should update its status property
84
-     * accordingly. Note: it should not alter the count of items migrated. That is done in the public function that
85
-     * calls this. IMPORTANT: The count of items migrated should ONLY be less than $num_items_to_migrate when it's the
86
-     * last migration step, otherwise it should always return $num_items_to_migrate. (Eg, if we're migrating attendees
87
-     * rows from the database, and $num_items_to_migrate is set to 50, then we SHOULD actually migrate 50 rows,but at
88
-     * very least we MUST report/return 50 items migrated)
89
-     *
90
-     * @param int $num_items_to_migrate
91
-     * @return int number of items ACTUALLY migrated
92
-     */
93
-    abstract protected function _migration_step($num_items_to_migrate = 50);
82
+	/**
83
+	 * IMPORTANT: if an error is encountered, or everything is finished, this stage should update its status property
84
+	 * accordingly. Note: it should not alter the count of items migrated. That is done in the public function that
85
+	 * calls this. IMPORTANT: The count of items migrated should ONLY be less than $num_items_to_migrate when it's the
86
+	 * last migration step, otherwise it should always return $num_items_to_migrate. (Eg, if we're migrating attendees
87
+	 * rows from the database, and $num_items_to_migrate is set to 50, then we SHOULD actually migrate 50 rows,but at
88
+	 * very least we MUST report/return 50 items migrated)
89
+	 *
90
+	 * @param int $num_items_to_migrate
91
+	 * @return int number of items ACTUALLY migrated
92
+	 */
93
+	abstract protected function _migration_step($num_items_to_migrate = 50);
94 94
 
95
-    /**
96
-     * Counts the records that have been migrated so far
97
-     *
98
-     * @return int
99
-     */
100
-    public function count_records_migrated()
101
-    {
102
-        return $this->_records_migrated;
103
-    }
95
+	/**
96
+	 * Counts the records that have been migrated so far
97
+	 *
98
+	 * @return int
99
+	 */
100
+	public function count_records_migrated()
101
+	{
102
+		return $this->_records_migrated;
103
+	}
104 104
 
105
-    /**
106
-     * returns an array of strings describing errors
107
-     *
108
-     * @return array
109
-     */
110
-    public function get_errors()
111
-    {
112
-        return $this->_errors;
113
-    }
105
+	/**
106
+	 * returns an array of strings describing errors
107
+	 *
108
+	 * @return array
109
+	 */
110
+	public function get_errors()
111
+	{
112
+		return $this->_errors;
113
+	}
114 114
 
115 115
 
116
-    /**
117
-     * Sets all of the properties of this script stage to match what's in the array, which is assumed
118
-     * to have been made from the properties_as_array() function.
119
-     *
120
-     * @param array $array_of_properties like what's produced from properties_as_array() method
121
-     */
122
-    public function instantiate_from_array_of_properties($array_of_properties)
123
-    {
124
-        unset($array_of_properties['class']);
125
-        foreach ($array_of_properties as $property_name => $property_value) {
126
-            $this->{$property_name} = $property_value;
127
-        }
128
-    }
116
+	/**
117
+	 * Sets all of the properties of this script stage to match what's in the array, which is assumed
118
+	 * to have been made from the properties_as_array() function.
119
+	 *
120
+	 * @param array $array_of_properties like what's produced from properties_as_array() method
121
+	 */
122
+	public function instantiate_from_array_of_properties($array_of_properties)
123
+	{
124
+		unset($array_of_properties['class']);
125
+		foreach ($array_of_properties as $property_name => $property_value) {
126
+			$this->{$property_name} = $property_value;
127
+		}
128
+	}
129 129
 
130
-    /**
131
-     * Gets the script this is a stage of
132
-     *
133
-     * @return EE_Data_Migration_Script_Base
134
-     */
135
-    protected function get_migration_script()
136
-    {
137
-        return $this->_migration_script;
138
-    }
130
+	/**
131
+	 * Gets the script this is a stage of
132
+	 *
133
+	 * @return EE_Data_Migration_Script_Base
134
+	 */
135
+	protected function get_migration_script()
136
+	{
137
+		return $this->_migration_script;
138
+	}
139 139
 }
Please login to merge, or discard this patch.
core/admin/EE_Help_Tour.core.php 2 patches
Spacing   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -256,8 +256,8 @@  discard block
 block discarded – undo
256 256
     public function get_stops()
257 257
     {
258 258
         foreach ($this->_stops as $ind => $stop) {
259
-            if (! isset($stop['button_text'])) {
260
-                $this->_stops[ $ind ]['button_text'] = $this->_options['button_text'];
259
+            if ( ! isset($stop['button_text'])) {
260
+                $this->_stops[$ind]['button_text'] = $this->_options['button_text'];
261 261
             }
262 262
         }
263 263
         return $this->_stops;
@@ -277,6 +277,6 @@  discard block
 block discarded – undo
277 277
                 $this->_options['pauseAfter'][] = $ind;
278 278
             }
279 279
         }
280
-        return apply_filters('FHEE__' . get_class($this) . '__get_options', $this->_options, $this);
280
+        return apply_filters('FHEE__'.get_class($this).'__get_options', $this->_options, $this);
281 281
     }
282 282
 }
Please login to merge, or discard this patch.
Indentation   +267 added lines, -267 removed lines patch added patch discarded remove patch
@@ -17,271 +17,271 @@
 block discarded – undo
17 17
  */
18 18
 abstract class EE_Help_Tour extends EE_Base
19 19
 {
20
-    /**
21
-     * This is the label for the tour. It is used when regenerating restart buttons for the tour. Set this in the
22
-     * constructor of the child class.
23
-     *
24
-     * @access protected
25
-     * @var string
26
-     */
27
-    protected $_label = '';
28
-
29
-
30
-    /**
31
-     * This is the slug for the tour.  It should be unique from all tours and is used for starting a tour and setting
32
-     * cookies for the tour. Set this in the constructor of the child class.
33
-     *
34
-     * @access protected
35
-     * @var string
36
-     */
37
-    protected $_slug = '';
38
-
39
-
40
-    /**
41
-     * This will contain the formatted array for the stops that gets used by EE_Admin_Page->_add_help_tour() for
42
-     * setting up a tour on a given page. format for array is: array(
43
-     *        0 => array(
44
-     *            'id' => 'id_element', //if attached to an css id for an element then use this param. id's will take
45
-     *            precendence even if you also set class.
46
-     *            'class' => 'class_element', //if attached to a css class for an element anchoring the stop then use
47
-     *            this param. The first element for that class is the anchor. If the class or the id are empty then the
48
-     *            stop will be a modal on the page anchored to the main body.
49
-     *            'custom_class' => 'some_custom_class', //optional custom class to add for this stop.
50
-     *            'button_text' => 'custom text for button', //optional
51
-     *            'content' => 'The content for the stop', //required
52
-     *            'pause_after' => false, //indicate if you want the tour to pause after this stop and it will get
53
-     *            added to the pauseAfter global option array setup for the joyride instance. This is only applicable
54
-     *            when this tour has been set to run on timer.
55
-     *            'options' => array(
56
-     *                //override any of the global options set via the help_tour "option_callback" for the joyride
57
-     *                instance on this specific stop.
58
-     *                )
59
-     *            )
60
-     *        );
61
-     *
62
-     * @access protected
63
-     * @var array
64
-     */
65
-    protected $_stops = array();
66
-
67
-
68
-    /**
69
-     * This contains any stop specific options for the tour.
70
-     * defaults are set but child classes can override.
71
-     *
72
-     * @access protected
73
-     * @var array
74
-     */
75
-    protected $_options = array();
76
-
77
-
78
-    /**
79
-     * holds anything found in the request object (however we override any _gets with _post data).
80
-     *
81
-     * @access protected
82
-     * @var array
83
-     */
84
-    protected $_req_data = array();
85
-
86
-
87
-    /**
88
-     * a flag that is set on init for whether this help_tour is happening on a caf install or not.
89
-     *
90
-     * @var boolean
91
-     */
92
-    protected $_is_caf = false;
93
-
94
-
95
-    /**
96
-     * _constructor
97
-     * initialized the tour object and sets up important properties required to setup the tour.
98
-     *
99
-     * @access public
100
-     * @param boolean $caf used to indicate if this tour is happening on caf install or not.
101
-     * @return void
102
-     */
103
-    public function __construct($caf = false)
104
-    {
105
-        $this->_is_caf = $caf;
106
-        /** @var RequestInterface $request */
107
-        $request = LoaderFactory::getLoader()->getShared(RequestInterface::class);
108
-        $this->_req_data = $request->requestParams();
109
-        $this->_set_tour_properties();
110
-        $this->_set_tour_stops();
111
-        $this->_set_tour_options();
112
-
113
-        // make sure the last tour stop has "end tour" for its button
114
-        $end = array_pop($this->_stops);
115
-        $end['button_text'] = esc_html__('End Tour', 'event_espresso');
116
-        // add back to stops
117
-        $this->_stops[] = $end;
118
-    }
119
-
120
-
121
-    /**
122
-     * required method that has the sole purpose of setting up the tour $_label and $_slug properties
123
-     *
124
-     * @abstract
125
-     * @access protected
126
-     * @return void
127
-     */
128
-    abstract protected function _set_tour_properties();
129
-
130
-
131
-    /**
132
-     * required method that's sole purpose is to setup the $_stops property
133
-     *
134
-     * @abstract
135
-     * @access protected
136
-     * @return void
137
-     */
138
-    abstract protected function _set_tour_stops();
139
-
140
-
141
-    /**
142
-     * The method can optionally be overridden by child classes to set the _options array if there are any default
143
-     * options the child wishes to override for a this tour. See property definition for more info
144
-     *
145
-     * @access protected
146
-     * @return void
147
-     */
148
-    protected function _set_tour_options($options = array())
149
-    {
150
-        $defaults = array(
151
-            'tipLocation'           => 'bottom',
152
-            // 'top', 'bottom', 'right', 'left' in relation to parent
153
-            'nubPosition'           => 'auto',
154
-            // override on a per tooltip bases. can be "auto", "right", "top", "bottom", "left"
155
-            'tipAdjustmentY'        => 0,
156
-            // allow for adjustment of tip
157
-            'tipAdjustmentX'        => 0,
158
-            // allow for adjustment of tip
159
-            'scroll'                => true,
160
-            // whether to scrollTo the next step or not
161
-            'scrollSpeed'           => 300,
162
-            // Page scrolling speed in ms
163
-            'timer'                 => 0,
164
-            // 0 = off, all other numbers = time(ms)
165
-            'autoStart'             => true,
166
-            // true or false - false tour starts when restart called
167
-            'startTimerOnClick'     => true,
168
-            // true/false to start timer on first click
169
-            'nextButton'            => true,
170
-            // true/false for next button visibility
171
-            'button_text'           => esc_html__('Next', 'event_espresso'),
172
-            'tipAnimation'          => 'fade',
173
-            // 'pop' or 'fade' in each tip
174
-            'pauseAfter'            => array(),
175
-            // array of indexes where to pause the tour after
176
-            'tipAnimationFadeSpeed' => 300,
177
-            // if 'fade'- speed in ms of transition
178
-            'cookieMonster'         => true,
179
-            // true/false for whether cookies are used
180
-            'cookieName'            => $this->get_slug(),
181
-            // choose your own cookie name (setup will add the prefix for the specific page joyride)
182
-            // set to false or yoursite.com
183
-            'cookieDomain'          => false,
184
-            // Where the tip be attached if not inline
185
-            // 'tipContainer' => 'body',
186
-            'modal'                 => false,
187
-            // Whether to cover page with modal during the tour
188
-            'expose'                => false,
189
-            // Whether to expose the elements at each step in the tour (requires modal:true),
190
-            'postExposeCallback'    => 'EEHelpTour.postExposeCallback',
191
-            // A method to call after an element has been exposed
192
-            'preRideCallback'       => 'EEHelpTour_preRideCallback',
193
-            // A method to call before the tour starts (passed index, tip, and cloned exposed element)
194
-            'postRideCallback'      => 'EEHelpTour_postRideCallback',
195
-            // a method to call once the tour closes.  This will correspond to the name of a js method that will have to be defined in loaded js.
196
-            'preStepCallback'       => 'EEHelpTour_preStepCallback',
197
-            // A method to call before each step
198
-            'postStepCallback'      => 'EEHelpTour_postStepCallback',
199
-            // A method to call after each step (remember this will correspond with a js method that you will have to define in a js file BEFORE ee-help-tour.js loads, if the default methods do not exist, then ee-help-tour.js just substitues empty functions $.noop)/**/
200
-        );
201
-
202
-        $options = ! empty($options) && is_array($options) ? array_merge($defaults, $options) : $defaults;
203
-        $this->_options = $options;
204
-    }
205
-
206
-
207
-    /**
208
-     * getter functions to return all the properties for the tour.
209
-     */
210
-
211
-
212
-    /**
213
-     * get_slug
214
-     *
215
-     * @return string slug for the tour
216
-     */
217
-    public function get_slug()
218
-    {
219
-        if (empty($this->_slug)) {
220
-            throw new EE_Error(
221
-                sprintf(
222
-                    esc_html__(
223
-                        'There is no slug set for the help tour class (%s). Make sure that the $_slug property is set in the class constructor',
224
-                        'event_espresso'
225
-                    ),
226
-                    get_class($this)
227
-                )
228
-            );
229
-        }
230
-        return $this->_slug;
231
-    }
232
-
233
-
234
-    /**
235
-     * get_label
236
-     *
237
-     * @return string
238
-     */
239
-    public function get_label()
240
-    {
241
-        if (empty($this->_label)) {
242
-            throw new EE_Error(
243
-                sprintf(
244
-                    esc_html__(
245
-                        'There is no label set for the help tour class (%s). Make sure that the $_label property is set in the class constructor',
246
-                        'event_espresso'
247
-                    ),
248
-                    get_class($this)
249
-                )
250
-            );
251
-        }
252
-        return $this->_label;
253
-    }
254
-
255
-
256
-    /**
257
-     * get_stops
258
-     *
259
-     * @return array
260
-     */
261
-    public function get_stops()
262
-    {
263
-        foreach ($this->_stops as $ind => $stop) {
264
-            if (! isset($stop['button_text'])) {
265
-                $this->_stops[ $ind ]['button_text'] = $this->_options['button_text'];
266
-            }
267
-        }
268
-        return $this->_stops;
269
-    }
270
-
271
-
272
-    /**
273
-     * get options
274
-     *
275
-     * @return array
276
-     */
277
-    public function get_options()
278
-    {
279
-        // let's make sure there are not pauses set
280
-        foreach ($this->_stops as $ind => $stop) {
281
-            if (isset($stop['pause_after']) && $stop['pause_after']) {
282
-                $this->_options['pauseAfter'][] = $ind;
283
-            }
284
-        }
285
-        return apply_filters('FHEE__' . get_class($this) . '__get_options', $this->_options, $this);
286
-    }
20
+	/**
21
+	 * This is the label for the tour. It is used when regenerating restart buttons for the tour. Set this in the
22
+	 * constructor of the child class.
23
+	 *
24
+	 * @access protected
25
+	 * @var string
26
+	 */
27
+	protected $_label = '';
28
+
29
+
30
+	/**
31
+	 * This is the slug for the tour.  It should be unique from all tours and is used for starting a tour and setting
32
+	 * cookies for the tour. Set this in the constructor of the child class.
33
+	 *
34
+	 * @access protected
35
+	 * @var string
36
+	 */
37
+	protected $_slug = '';
38
+
39
+
40
+	/**
41
+	 * This will contain the formatted array for the stops that gets used by EE_Admin_Page->_add_help_tour() for
42
+	 * setting up a tour on a given page. format for array is: array(
43
+	 *        0 => array(
44
+	 *            'id' => 'id_element', //if attached to an css id for an element then use this param. id's will take
45
+	 *            precendence even if you also set class.
46
+	 *            'class' => 'class_element', //if attached to a css class for an element anchoring the stop then use
47
+	 *            this param. The first element for that class is the anchor. If the class or the id are empty then the
48
+	 *            stop will be a modal on the page anchored to the main body.
49
+	 *            'custom_class' => 'some_custom_class', //optional custom class to add for this stop.
50
+	 *            'button_text' => 'custom text for button', //optional
51
+	 *            'content' => 'The content for the stop', //required
52
+	 *            'pause_after' => false, //indicate if you want the tour to pause after this stop and it will get
53
+	 *            added to the pauseAfter global option array setup for the joyride instance. This is only applicable
54
+	 *            when this tour has been set to run on timer.
55
+	 *            'options' => array(
56
+	 *                //override any of the global options set via the help_tour "option_callback" for the joyride
57
+	 *                instance on this specific stop.
58
+	 *                )
59
+	 *            )
60
+	 *        );
61
+	 *
62
+	 * @access protected
63
+	 * @var array
64
+	 */
65
+	protected $_stops = array();
66
+
67
+
68
+	/**
69
+	 * This contains any stop specific options for the tour.
70
+	 * defaults are set but child classes can override.
71
+	 *
72
+	 * @access protected
73
+	 * @var array
74
+	 */
75
+	protected $_options = array();
76
+
77
+
78
+	/**
79
+	 * holds anything found in the request object (however we override any _gets with _post data).
80
+	 *
81
+	 * @access protected
82
+	 * @var array
83
+	 */
84
+	protected $_req_data = array();
85
+
86
+
87
+	/**
88
+	 * a flag that is set on init for whether this help_tour is happening on a caf install or not.
89
+	 *
90
+	 * @var boolean
91
+	 */
92
+	protected $_is_caf = false;
93
+
94
+
95
+	/**
96
+	 * _constructor
97
+	 * initialized the tour object and sets up important properties required to setup the tour.
98
+	 *
99
+	 * @access public
100
+	 * @param boolean $caf used to indicate if this tour is happening on caf install or not.
101
+	 * @return void
102
+	 */
103
+	public function __construct($caf = false)
104
+	{
105
+		$this->_is_caf = $caf;
106
+		/** @var RequestInterface $request */
107
+		$request = LoaderFactory::getLoader()->getShared(RequestInterface::class);
108
+		$this->_req_data = $request->requestParams();
109
+		$this->_set_tour_properties();
110
+		$this->_set_tour_stops();
111
+		$this->_set_tour_options();
112
+
113
+		// make sure the last tour stop has "end tour" for its button
114
+		$end = array_pop($this->_stops);
115
+		$end['button_text'] = esc_html__('End Tour', 'event_espresso');
116
+		// add back to stops
117
+		$this->_stops[] = $end;
118
+	}
119
+
120
+
121
+	/**
122
+	 * required method that has the sole purpose of setting up the tour $_label and $_slug properties
123
+	 *
124
+	 * @abstract
125
+	 * @access protected
126
+	 * @return void
127
+	 */
128
+	abstract protected function _set_tour_properties();
129
+
130
+
131
+	/**
132
+	 * required method that's sole purpose is to setup the $_stops property
133
+	 *
134
+	 * @abstract
135
+	 * @access protected
136
+	 * @return void
137
+	 */
138
+	abstract protected function _set_tour_stops();
139
+
140
+
141
+	/**
142
+	 * The method can optionally be overridden by child classes to set the _options array if there are any default
143
+	 * options the child wishes to override for a this tour. See property definition for more info
144
+	 *
145
+	 * @access protected
146
+	 * @return void
147
+	 */
148
+	protected function _set_tour_options($options = array())
149
+	{
150
+		$defaults = array(
151
+			'tipLocation'           => 'bottom',
152
+			// 'top', 'bottom', 'right', 'left' in relation to parent
153
+			'nubPosition'           => 'auto',
154
+			// override on a per tooltip bases. can be "auto", "right", "top", "bottom", "left"
155
+			'tipAdjustmentY'        => 0,
156
+			// allow for adjustment of tip
157
+			'tipAdjustmentX'        => 0,
158
+			// allow for adjustment of tip
159
+			'scroll'                => true,
160
+			// whether to scrollTo the next step or not
161
+			'scrollSpeed'           => 300,
162
+			// Page scrolling speed in ms
163
+			'timer'                 => 0,
164
+			// 0 = off, all other numbers = time(ms)
165
+			'autoStart'             => true,
166
+			// true or false - false tour starts when restart called
167
+			'startTimerOnClick'     => true,
168
+			// true/false to start timer on first click
169
+			'nextButton'            => true,
170
+			// true/false for next button visibility
171
+			'button_text'           => esc_html__('Next', 'event_espresso'),
172
+			'tipAnimation'          => 'fade',
173
+			// 'pop' or 'fade' in each tip
174
+			'pauseAfter'            => array(),
175
+			// array of indexes where to pause the tour after
176
+			'tipAnimationFadeSpeed' => 300,
177
+			// if 'fade'- speed in ms of transition
178
+			'cookieMonster'         => true,
179
+			// true/false for whether cookies are used
180
+			'cookieName'            => $this->get_slug(),
181
+			// choose your own cookie name (setup will add the prefix for the specific page joyride)
182
+			// set to false or yoursite.com
183
+			'cookieDomain'          => false,
184
+			// Where the tip be attached if not inline
185
+			// 'tipContainer' => 'body',
186
+			'modal'                 => false,
187
+			// Whether to cover page with modal during the tour
188
+			'expose'                => false,
189
+			// Whether to expose the elements at each step in the tour (requires modal:true),
190
+			'postExposeCallback'    => 'EEHelpTour.postExposeCallback',
191
+			// A method to call after an element has been exposed
192
+			'preRideCallback'       => 'EEHelpTour_preRideCallback',
193
+			// A method to call before the tour starts (passed index, tip, and cloned exposed element)
194
+			'postRideCallback'      => 'EEHelpTour_postRideCallback',
195
+			// a method to call once the tour closes.  This will correspond to the name of a js method that will have to be defined in loaded js.
196
+			'preStepCallback'       => 'EEHelpTour_preStepCallback',
197
+			// A method to call before each step
198
+			'postStepCallback'      => 'EEHelpTour_postStepCallback',
199
+			// A method to call after each step (remember this will correspond with a js method that you will have to define in a js file BEFORE ee-help-tour.js loads, if the default methods do not exist, then ee-help-tour.js just substitues empty functions $.noop)/**/
200
+		);
201
+
202
+		$options = ! empty($options) && is_array($options) ? array_merge($defaults, $options) : $defaults;
203
+		$this->_options = $options;
204
+	}
205
+
206
+
207
+	/**
208
+	 * getter functions to return all the properties for the tour.
209
+	 */
210
+
211
+
212
+	/**
213
+	 * get_slug
214
+	 *
215
+	 * @return string slug for the tour
216
+	 */
217
+	public function get_slug()
218
+	{
219
+		if (empty($this->_slug)) {
220
+			throw new EE_Error(
221
+				sprintf(
222
+					esc_html__(
223
+						'There is no slug set for the help tour class (%s). Make sure that the $_slug property is set in the class constructor',
224
+						'event_espresso'
225
+					),
226
+					get_class($this)
227
+				)
228
+			);
229
+		}
230
+		return $this->_slug;
231
+	}
232
+
233
+
234
+	/**
235
+	 * get_label
236
+	 *
237
+	 * @return string
238
+	 */
239
+	public function get_label()
240
+	{
241
+		if (empty($this->_label)) {
242
+			throw new EE_Error(
243
+				sprintf(
244
+					esc_html__(
245
+						'There is no label set for the help tour class (%s). Make sure that the $_label property is set in the class constructor',
246
+						'event_espresso'
247
+					),
248
+					get_class($this)
249
+				)
250
+			);
251
+		}
252
+		return $this->_label;
253
+	}
254
+
255
+
256
+	/**
257
+	 * get_stops
258
+	 *
259
+	 * @return array
260
+	 */
261
+	public function get_stops()
262
+	{
263
+		foreach ($this->_stops as $ind => $stop) {
264
+			if (! isset($stop['button_text'])) {
265
+				$this->_stops[ $ind ]['button_text'] = $this->_options['button_text'];
266
+			}
267
+		}
268
+		return $this->_stops;
269
+	}
270
+
271
+
272
+	/**
273
+	 * get options
274
+	 *
275
+	 * @return array
276
+	 */
277
+	public function get_options()
278
+	{
279
+		// let's make sure there are not pauses set
280
+		foreach ($this->_stops as $ind => $stop) {
281
+			if (isset($stop['pause_after']) && $stop['pause_after']) {
282
+				$this->_options['pauseAfter'][] = $ind;
283
+			}
284
+		}
285
+		return apply_filters('FHEE__' . get_class($this) . '__get_options', $this->_options, $this);
286
+	}
287 287
 }
Please login to merge, or discard this patch.
core/libraries/messages/EE_Message_Factory.lib.php 2 patches
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -51,7 +51,7 @@  discard block
 block discarded – undo
51 51
     public static function instance(EE_Message_Resource_Manager $Message_Resource_Manager)
52 52
     {
53 53
         // check if class object is instantiated, and instantiated properly
54
-        if (! self::$_instance instanceof EE_Message_Factory) {
54
+        if ( ! self::$_instance instanceof EE_Message_Factory) {
55 55
             self::$_instance = new EE_Message_Factory($Message_Resource_Manager);
56 56
         }
57 57
         return self::$_instance;
@@ -127,7 +127,7 @@  discard block
 block discarded – undo
127 127
     protected function _create($props_n_values = array())
128 128
     {
129 129
         $new_instance = false;
130
-        if (! empty($props_n_values['MSG_ID'])) {
130
+        if ( ! empty($props_n_values['MSG_ID'])) {
131 131
             $message = EE_Message::new_instance_from_db($props_n_values);
132 132
         } else {
133 133
             $message = EE_Message::new_instance($props_n_values);
Please login to merge, or discard this patch.
Indentation   +171 added lines, -171 removed lines patch added patch discarded remove patch
@@ -13,175 +13,175 @@
 block discarded – undo
13 13
  */
14 14
 class EE_Message_Factory
15 15
 {
16
-    /**
17
-     * @type EE_Message_Factory $_instance
18
-     */
19
-    protected static $_instance = null;
20
-
21
-
22
-    /**
23
-     * @type EE_Message_Resource_Manager $_message_resource_manager
24
-     */
25
-    protected $_message_resource_manager;
26
-
27
-
28
-
29
-    /**
30
-     * EE_Message_Factory constructor.
31
-     *
32
-     * @access protected
33
-     * @param \EE_Message_Resource_Manager $Message_Resource_Manager
34
-     */
35
-    protected function __construct(
36
-        EE_Message_Resource_Manager $Message_Resource_Manager
37
-    ) {
38
-        $this->_message_resource_manager = $Message_Resource_Manager;
39
-    }
40
-
41
-
42
-
43
-    /**
44
-     * @singleton method used to instantiate class object
45
-     * @access    public
46
-     * @param \EE_Message_Resource_Manager $Message_Resource_Manager
47
-     * @return \EE_Message_Factory instance
48
-     */
49
-    public static function instance(EE_Message_Resource_Manager $Message_Resource_Manager)
50
-    {
51
-        // check if class object is instantiated, and instantiated properly
52
-        if (! self::$_instance instanceof EE_Message_Factory) {
53
-            self::$_instance = new EE_Message_Factory($Message_Resource_Manager);
54
-        }
55
-        return self::$_instance;
56
-    }
57
-
58
-
59
-
60
-    /**
61
-     * @access public
62
-     * @param  array $props_n_values
63
-     * @return EE_Message
64
-     */
65
-    public static function create($props_n_values = array())
66
-    {
67
-        /** @type EE_Message_Factory $Message_Factory */
68
-        $Message_Factory = EE_Registry::instance()->load_lib('Message_Factory');
69
-        return $Message_Factory->_create($props_n_values);
70
-    }
71
-
72
-
73
-
74
-    /**
75
-     * @access public
76
-     * @param  \EE_Message $message
77
-     * @return \EE_Message
78
-     * @throws \EE_Error
79
-     */
80
-    public static function set_messenger_and_message_type(EE_Message $message)
81
-    {
82
-        /** @type EE_Message_Factory $Message_Factory */
83
-        $Message_Factory = EE_Registry::instance()->load_lib('Message_Factory');
84
-        return $Message_Factory->_set_messenger_and_message_type($message);
85
-    }
86
-
87
-
88
-
89
-    /**
90
-     * @access public
91
-     * @param  \EE_Message $message
92
-     * @return \EE_Message
93
-     * @throws \EE_Error
94
-     */
95
-    public static function set_messenger(EE_Message $message)
96
-    {
97
-        /** @type EE_Message_Factory $Message_Factory */
98
-        $Message_Factory = EE_Registry::instance()->load_lib('Message_Factory');
99
-        return $Message_Factory->_set_messenger($message);
100
-    }
101
-
102
-
103
-
104
-    /**
105
-     * @access public
106
-     * @param  \EE_Message $message
107
-     * @return \EE_Message
108
-     * @throws \EE_Error
109
-     */
110
-    public static function set_message_type(EE_Message $message)
111
-    {
112
-        /** @type EE_Message_Factory $Message_Factory */
113
-        $Message_Factory = EE_Registry::instance()->load_lib('Message_Factory');
114
-        return $Message_Factory->_set_message_type($message);
115
-    }
116
-
117
-
118
-
119
-    /**
120
-     * @access protected
121
-     * @param  array $props_n_values
122
-     * @return \EE_Message
123
-     * @throws \EE_Error
124
-     */
125
-    protected function _create($props_n_values = array())
126
-    {
127
-        $new_instance = false;
128
-        if (! empty($props_n_values['MSG_ID'])) {
129
-            $message = EE_Message::new_instance_from_db($props_n_values);
130
-        } else {
131
-            $message = EE_Message::new_instance($props_n_values);
132
-            $new_instance = true;
133
-        }
134
-        return $this->_set_messenger_and_message_type($message, $new_instance);
135
-    }
136
-
137
-
138
-
139
-    /**
140
-     * @access public
141
-     * @param  \EE_Message $message
142
-     * @param  bool        $new_instance Whether the message type was setup from the database (false) or not (true)
143
-     * @return \EE_Message
144
-     * @throws \EE_Error
145
-     */
146
-    protected function _set_messenger_and_message_type(EE_Message $message, $new_instance = false)
147
-    {
148
-        $message = $this->_set_messenger($message);
149
-        $message = $this->_set_message_type($message, $new_instance);
150
-        return $message;
151
-    }
152
-
153
-
154
-
155
-    /**
156
-     * @access protected
157
-     * @param  \EE_Message $message
158
-     * @return \EE_Message
159
-     * @throws \EE_Error
160
-     */
161
-    protected function _set_messenger(EE_Message $message)
162
-    {
163
-        $messenger = $this->_message_resource_manager->get_messenger($message->messenger());
164
-        if ($messenger instanceof EE_messenger) {
165
-            $message->set_messenger_object($messenger);
166
-        }
167
-        return $message;
168
-    }
169
-
170
-
171
-
172
-    /**
173
-     * @access protected
174
-     * @param  \EE_Message $message
175
-     * @param  bool        $new_instance Whether the message type was setup from the database (false) or not (true)
176
-     * @return \EE_Message
177
-     * @throws \EE_Error
178
-     */
179
-    protected function _set_message_type(EE_Message $message, $new_instance = false)
180
-    {
181
-        $message_type = $this->_message_resource_manager->get_message_type($message->message_type());
182
-        if ($message_type instanceof EE_message_type) {
183
-            $message->set_message_type_object($message_type, $new_instance);
184
-        }
185
-        return $message;
186
-    }
16
+	/**
17
+	 * @type EE_Message_Factory $_instance
18
+	 */
19
+	protected static $_instance = null;
20
+
21
+
22
+	/**
23
+	 * @type EE_Message_Resource_Manager $_message_resource_manager
24
+	 */
25
+	protected $_message_resource_manager;
26
+
27
+
28
+
29
+	/**
30
+	 * EE_Message_Factory constructor.
31
+	 *
32
+	 * @access protected
33
+	 * @param \EE_Message_Resource_Manager $Message_Resource_Manager
34
+	 */
35
+	protected function __construct(
36
+		EE_Message_Resource_Manager $Message_Resource_Manager
37
+	) {
38
+		$this->_message_resource_manager = $Message_Resource_Manager;
39
+	}
40
+
41
+
42
+
43
+	/**
44
+	 * @singleton method used to instantiate class object
45
+	 * @access    public
46
+	 * @param \EE_Message_Resource_Manager $Message_Resource_Manager
47
+	 * @return \EE_Message_Factory instance
48
+	 */
49
+	public static function instance(EE_Message_Resource_Manager $Message_Resource_Manager)
50
+	{
51
+		// check if class object is instantiated, and instantiated properly
52
+		if (! self::$_instance instanceof EE_Message_Factory) {
53
+			self::$_instance = new EE_Message_Factory($Message_Resource_Manager);
54
+		}
55
+		return self::$_instance;
56
+	}
57
+
58
+
59
+
60
+	/**
61
+	 * @access public
62
+	 * @param  array $props_n_values
63
+	 * @return EE_Message
64
+	 */
65
+	public static function create($props_n_values = array())
66
+	{
67
+		/** @type EE_Message_Factory $Message_Factory */
68
+		$Message_Factory = EE_Registry::instance()->load_lib('Message_Factory');
69
+		return $Message_Factory->_create($props_n_values);
70
+	}
71
+
72
+
73
+
74
+	/**
75
+	 * @access public
76
+	 * @param  \EE_Message $message
77
+	 * @return \EE_Message
78
+	 * @throws \EE_Error
79
+	 */
80
+	public static function set_messenger_and_message_type(EE_Message $message)
81
+	{
82
+		/** @type EE_Message_Factory $Message_Factory */
83
+		$Message_Factory = EE_Registry::instance()->load_lib('Message_Factory');
84
+		return $Message_Factory->_set_messenger_and_message_type($message);
85
+	}
86
+
87
+
88
+
89
+	/**
90
+	 * @access public
91
+	 * @param  \EE_Message $message
92
+	 * @return \EE_Message
93
+	 * @throws \EE_Error
94
+	 */
95
+	public static function set_messenger(EE_Message $message)
96
+	{
97
+		/** @type EE_Message_Factory $Message_Factory */
98
+		$Message_Factory = EE_Registry::instance()->load_lib('Message_Factory');
99
+		return $Message_Factory->_set_messenger($message);
100
+	}
101
+
102
+
103
+
104
+	/**
105
+	 * @access public
106
+	 * @param  \EE_Message $message
107
+	 * @return \EE_Message
108
+	 * @throws \EE_Error
109
+	 */
110
+	public static function set_message_type(EE_Message $message)
111
+	{
112
+		/** @type EE_Message_Factory $Message_Factory */
113
+		$Message_Factory = EE_Registry::instance()->load_lib('Message_Factory');
114
+		return $Message_Factory->_set_message_type($message);
115
+	}
116
+
117
+
118
+
119
+	/**
120
+	 * @access protected
121
+	 * @param  array $props_n_values
122
+	 * @return \EE_Message
123
+	 * @throws \EE_Error
124
+	 */
125
+	protected function _create($props_n_values = array())
126
+	{
127
+		$new_instance = false;
128
+		if (! empty($props_n_values['MSG_ID'])) {
129
+			$message = EE_Message::new_instance_from_db($props_n_values);
130
+		} else {
131
+			$message = EE_Message::new_instance($props_n_values);
132
+			$new_instance = true;
133
+		}
134
+		return $this->_set_messenger_and_message_type($message, $new_instance);
135
+	}
136
+
137
+
138
+
139
+	/**
140
+	 * @access public
141
+	 * @param  \EE_Message $message
142
+	 * @param  bool        $new_instance Whether the message type was setup from the database (false) or not (true)
143
+	 * @return \EE_Message
144
+	 * @throws \EE_Error
145
+	 */
146
+	protected function _set_messenger_and_message_type(EE_Message $message, $new_instance = false)
147
+	{
148
+		$message = $this->_set_messenger($message);
149
+		$message = $this->_set_message_type($message, $new_instance);
150
+		return $message;
151
+	}
152
+
153
+
154
+
155
+	/**
156
+	 * @access protected
157
+	 * @param  \EE_Message $message
158
+	 * @return \EE_Message
159
+	 * @throws \EE_Error
160
+	 */
161
+	protected function _set_messenger(EE_Message $message)
162
+	{
163
+		$messenger = $this->_message_resource_manager->get_messenger($message->messenger());
164
+		if ($messenger instanceof EE_messenger) {
165
+			$message->set_messenger_object($messenger);
166
+		}
167
+		return $message;
168
+	}
169
+
170
+
171
+
172
+	/**
173
+	 * @access protected
174
+	 * @param  \EE_Message $message
175
+	 * @param  bool        $new_instance Whether the message type was setup from the database (false) or not (true)
176
+	 * @return \EE_Message
177
+	 * @throws \EE_Error
178
+	 */
179
+	protected function _set_message_type(EE_Message $message, $new_instance = false)
180
+	{
181
+		$message_type = $this->_message_resource_manager->get_message_type($message->message_type());
182
+		if ($message_type instanceof EE_message_type) {
183
+			$message->set_message_type_object($message_type, $new_instance);
184
+		}
185
+		return $message;
186
+	}
187 187
 }
Please login to merge, or discard this patch.