Completed
Branch dev (97838e)
by
unknown
18:15 queued 10:24
created
core/services/locators/FileLocator.php 2 patches
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -34,7 +34,7 @@  discard block
 block discarded – undo
34 34
      */
35 35
     public function setFileMask($file_mask)
36 36
     {
37
-        if (! is_string($file_mask)) {
37
+        if ( ! is_string($file_mask)) {
38 38
             throw new InvalidDataTypeException('$file_mask', $file_mask, 'string');
39 39
         }
40 40
         $this->file_mask = $file_mask;
@@ -72,12 +72,12 @@  discard block
 block discarded – undo
72 72
      */
73 73
     public function locate($directory_paths)
74 74
     {
75
-        if (! (is_string($directory_paths) || is_array($directory_paths))) {
75
+        if ( ! (is_string($directory_paths) || is_array($directory_paths))) {
76 76
             throw new InvalidDataTypeException('$directory_paths', $directory_paths, 'string or array');
77 77
         }
78 78
         foreach ((array) $directory_paths as $directory_path) {
79 79
             foreach ($this->findFilesByPath($directory_path) as $key => $file) {
80
-                $this->filepaths[ $key ] = \EEH_File::standardise_directory_separators($file);
80
+                $this->filepaths[$key] = \EEH_File::standardise_directory_separators($file);
81 81
             }
82 82
         }
83 83
         return $this->filepaths;
@@ -94,7 +94,7 @@  discard block
 block discarded – undo
94 94
     protected function findFilesByPath($directory_path = '')
95 95
     {
96 96
         $iterator = new GlobIterator(
97
-            \EEH_File::end_with_directory_separator($directory_path) . $this->file_mask
97
+            \EEH_File::end_with_directory_separator($directory_path).$this->file_mask
98 98
         );
99 99
         foreach ($this->flags as $flag) {
100 100
             $iterator->setFlags($flag);
Please login to merge, or discard this patch.
Indentation   +73 added lines, -73 removed lines patch added patch discarded remove patch
@@ -16,88 +16,88 @@
 block discarded – undo
16 16
  */
17 17
 class FileLocator extends Locator
18 18
 {
19
-    /**
20
-     * @var string $file_mask
21
-     */
22
-    protected $file_mask = '*.php';
19
+	/**
20
+	 * @var string $file_mask
21
+	 */
22
+	protected $file_mask = '*.php';
23 23
 
24
-    /**
25
-     * @var array $filepaths
26
-     */
27
-    protected $filepaths = array();
24
+	/**
25
+	 * @var array $filepaths
26
+	 */
27
+	protected $filepaths = array();
28 28
 
29 29
 
30
-    /**
31
-     * @param string $file_mask
32
-     * @throws \EventEspresso\core\exceptions\InvalidDataTypeException
33
-     */
34
-    public function setFileMask($file_mask)
35
-    {
36
-        if (! is_string($file_mask)) {
37
-            throw new InvalidDataTypeException('$file_mask', $file_mask, 'string');
38
-        }
39
-        $this->file_mask = $file_mask;
40
-    }
30
+	/**
31
+	 * @param string $file_mask
32
+	 * @throws \EventEspresso\core\exceptions\InvalidDataTypeException
33
+	 */
34
+	public function setFileMask($file_mask)
35
+	{
36
+		if (! is_string($file_mask)) {
37
+			throw new InvalidDataTypeException('$file_mask', $file_mask, 'string');
38
+		}
39
+		$this->file_mask = $file_mask;
40
+	}
41 41
 
42 42
 
43
-    /**
44
-     * @access public
45
-     * @return array
46
-     */
47
-    public function getFilePaths()
48
-    {
49
-        return $this->filepaths;
50
-    }
43
+	/**
44
+	 * @access public
45
+	 * @return array
46
+	 */
47
+	public function getFilePaths()
48
+	{
49
+		return $this->filepaths;
50
+	}
51 51
 
52 52
 
53
-    /**
54
-     * @access public
55
-     * @return int
56
-     */
57
-    public function count()
58
-    {
59
-        return count($this->filepaths);
60
-    }
53
+	/**
54
+	 * @access public
55
+	 * @return int
56
+	 */
57
+	public function count()
58
+	{
59
+		return count($this->filepaths);
60
+	}
61 61
 
62 62
 
63
-    /**
64
-     * given a path to a valid directory, or an array of valid paths,
65
-     * will find all files that match the provided mask
66
-     *
67
-     * @access public
68
-     * @param array|string $directory_paths
69
-     * @return \FilesystemIterator
70
-     * @throws \EventEspresso\core\exceptions\InvalidDataTypeException
71
-     */
72
-    public function locate($directory_paths)
73
-    {
74
-        if (! (is_string($directory_paths) || is_array($directory_paths))) {
75
-            throw new InvalidDataTypeException('$directory_paths', $directory_paths, 'string or array');
76
-        }
77
-        foreach ((array) $directory_paths as $directory_path) {
78
-            foreach ($this->findFilesByPath($directory_path) as $key => $file) {
79
-                $this->filepaths[ $key ] = \EEH_File::standardise_directory_separators($file);
80
-            }
81
-        }
82
-        return $this->filepaths;
83
-    }
63
+	/**
64
+	 * given a path to a valid directory, or an array of valid paths,
65
+	 * will find all files that match the provided mask
66
+	 *
67
+	 * @access public
68
+	 * @param array|string $directory_paths
69
+	 * @return \FilesystemIterator
70
+	 * @throws \EventEspresso\core\exceptions\InvalidDataTypeException
71
+	 */
72
+	public function locate($directory_paths)
73
+	{
74
+		if (! (is_string($directory_paths) || is_array($directory_paths))) {
75
+			throw new InvalidDataTypeException('$directory_paths', $directory_paths, 'string or array');
76
+		}
77
+		foreach ((array) $directory_paths as $directory_path) {
78
+			foreach ($this->findFilesByPath($directory_path) as $key => $file) {
79
+				$this->filepaths[ $key ] = \EEH_File::standardise_directory_separators($file);
80
+			}
81
+		}
82
+		return $this->filepaths;
83
+	}
84 84
 
85 85
 
86
-    /**
87
-     * given a path to a valid directory, will find all files that match the provided mask
88
-     *
89
-     * @access protected
90
-     * @param string $directory_path
91
-     * @return \FilesystemIterator
92
-     */
93
-    protected function findFilesByPath($directory_path = '')
94
-    {
95
-        $iterator = new GlobIterator(
96
-            \EEH_File::end_with_directory_separator($directory_path) . $this->file_mask
97
-        );
98
-        foreach ($this->flags as $flag) {
99
-            $iterator->setFlags($flag);
100
-        }
101
-        return $iterator;
102
-    }
86
+	/**
87
+	 * given a path to a valid directory, will find all files that match the provided mask
88
+	 *
89
+	 * @access protected
90
+	 * @param string $directory_path
91
+	 * @return \FilesystemIterator
92
+	 */
93
+	protected function findFilesByPath($directory_path = '')
94
+	{
95
+		$iterator = new GlobIterator(
96
+			\EEH_File::end_with_directory_separator($directory_path) . $this->file_mask
97
+		);
98
+		foreach ($this->flags as $flag) {
99
+			$iterator->setFlags($flag);
100
+		}
101
+		return $iterator;
102
+	}
103 103
 }
Please login to merge, or discard this patch.
core/services/database/TableManager.php 2 patches
Spacing   +8 added lines, -8 removed lines patch added patch discarded remove patch
@@ -65,7 +65,7 @@  discard block
 block discarded – undo
65 65
         global $wpdb;
66 66
         $full_table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name);
67 67
         $columns = $this->getTableColumns($table_name);
68
-        if (! in_array($column_name, $columns)) {
68
+        if ( ! in_array($column_name, $columns)) {
69 69
             $alter_query = "ALTER TABLE {$full_table_name} ADD {$column_name} {$column_info}";
70 70
             return $wpdb->query($alter_query);
71 71
         }
@@ -86,7 +86,7 @@  discard block
 block discarded – undo
86 86
         global $wpdb;
87 87
         $table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name);
88 88
         $field_array = array();
89
-        if (! empty($table_name)) {
89
+        if ( ! empty($table_name)) {
90 90
             $columns = $wpdb->get_results("SHOW COLUMNS FROM {$table_name} ");
91 91
             if ($columns !== false) {
92 92
                 foreach ($columns as $column) {
@@ -132,14 +132,14 @@  discard block
 block discarded – undo
132 132
         foreach ($table_names as $table_name) {
133 133
             $table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name);
134 134
             if ($this->getTableAnalysis()->tableExists($table_name)) {
135
-                $tables_to_delete[ $table_name ] = $table_name;
135
+                $tables_to_delete[$table_name] = $table_name;
136 136
             }
137 137
         }
138
-        if (! empty($tables_to_delete)) {
138
+        if ( ! empty($tables_to_delete)) {
139 139
             global $wpdb;
140 140
             // make sure we only have a unique strings in the array.
141 141
             $tables_to_delete = array_unique($tables_to_delete);
142
-            $wpdb->query('DROP TABLE ' . implode(', ', $tables_to_delete));
142
+            $wpdb->query('DROP TABLE '.implode(', ', $tables_to_delete));
143 143
         }
144 144
         return $tables_to_delete;
145 145
     }
@@ -189,7 +189,7 @@  discard block
 block discarded – undo
189 189
             $table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name);
190 190
             /** @var \wpdb $wpdb */
191 191
             global $wpdb;
192
-            $SQL = "CREATE TABLE {$table_name} ( {$create_sql} ) ENGINE={$engine} " . $wpdb->get_charset_collate();
192
+            $SQL = "CREATE TABLE {$table_name} ( {$create_sql} ) ENGINE={$engine} ".$wpdb->get_charset_collate();
193 193
 
194 194
             // get $wpdb to echo errors, but buffer them. This way at least WE know an error
195 195
             // happened. And then we can choose to tell the end user
@@ -201,7 +201,7 @@  discard block
 block discarded – undo
201 201
             ob_end_clean();
202 202
             $wpdb->show_errors($old_show_errors_policy);
203 203
             $wpdb->suppress_errors($old_error_suppression_policy);
204
-            if (! empty($output)) {
204
+            if ( ! empty($output)) {
205 205
                 throw new \EE_Error($output);
206 206
             }
207 207
         } else {
@@ -242,7 +242,7 @@  discard block
 block discarded – undo
242 242
         if ($column_name === null) {
243 243
             $column_name = $index_name;
244 244
         }
245
-        if (! $this->getTableAnalysis()->tableExists($table_name)) {
245
+        if ( ! $this->getTableAnalysis()->tableExists($table_name)) {
246 246
             return false;
247 247
         }
248 248
         $index_entries = $this->getTableAnalysis()->showIndexes($table_name, $index_name);
Please login to merge, or discard this patch.
Indentation   +234 added lines, -234 removed lines patch added patch discarded remove patch
@@ -12,257 +12,257 @@
 block discarded – undo
12 12
  */
13 13
 class TableManager extends \EE_Base
14 14
 {
15
-    /**
16
-     * @var TableAnalysis $table_analysis
17
-     */
18
-    private $table_analysis;
15
+	/**
16
+	 * @var TableAnalysis $table_analysis
17
+	 */
18
+	private $table_analysis;
19 19
 
20 20
 
21
-    /**
22
-     * TableManager constructor.
23
-     *
24
-     * @param TableAnalysis $TableAnalysis
25
-     */
26
-    public function __construct(TableAnalysis $TableAnalysis)
27
-    {
28
-        $this->table_analysis = $TableAnalysis;
29
-    }
21
+	/**
22
+	 * TableManager constructor.
23
+	 *
24
+	 * @param TableAnalysis $TableAnalysis
25
+	 */
26
+	public function __construct(TableAnalysis $TableAnalysis)
27
+	{
28
+		$this->table_analysis = $TableAnalysis;
29
+	}
30 30
 
31 31
 
32
-    /**
33
-     * Gets the injected table analyzer, or throws an exception
34
-     *
35
-     * @return TableAnalysis
36
-     * @throws \EE_Error
37
-     */
38
-    protected function getTableAnalysis()
39
-    {
40
-        if ($this->table_analysis instanceof TableAnalysis) {
41
-            return $this->table_analysis;
42
-        } else {
43
-            throw new \EE_Error(
44
-                sprintf(
45
-                    esc_html__('Table analysis class on class %1$s is not set properly.', 'event_espresso'),
46
-                    get_class($this)
47
-                )
48
-            );
49
-        }
50
-    }
32
+	/**
33
+	 * Gets the injected table analyzer, or throws an exception
34
+	 *
35
+	 * @return TableAnalysis
36
+	 * @throws \EE_Error
37
+	 */
38
+	protected function getTableAnalysis()
39
+	{
40
+		if ($this->table_analysis instanceof TableAnalysis) {
41
+			return $this->table_analysis;
42
+		} else {
43
+			throw new \EE_Error(
44
+				sprintf(
45
+					esc_html__('Table analysis class on class %1$s is not set properly.', 'event_espresso'),
46
+					get_class($this)
47
+				)
48
+			);
49
+		}
50
+	}
51 51
 
52 52
 
53
-    /**
54
-     * @param string $table_name which can optionally start with $wpdb->prefix or not
55
-     * @param string $column_name
56
-     * @param string $column_info
57
-     * @return bool|false|int
58
-     */
59
-    public function addColumn($table_name, $column_name, $column_info = 'INT UNSIGNED NOT NULL')
60
-    {
61
-        if (apply_filters('FHEE__EEH_Activation__add_column_if_it_doesnt_exist__short_circuit', false)) {
62
-            return false;
63
-        }
64
-        global $wpdb;
65
-        $full_table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name);
66
-        $columns = $this->getTableColumns($table_name);
67
-        if (! in_array($column_name, $columns)) {
68
-            $alter_query = "ALTER TABLE {$full_table_name} ADD {$column_name} {$column_info}";
69
-            return $wpdb->query($alter_query);
70
-        }
71
-        return true;
72
-    }
53
+	/**
54
+	 * @param string $table_name which can optionally start with $wpdb->prefix or not
55
+	 * @param string $column_name
56
+	 * @param string $column_info
57
+	 * @return bool|false|int
58
+	 */
59
+	public function addColumn($table_name, $column_name, $column_info = 'INT UNSIGNED NOT NULL')
60
+	{
61
+		if (apply_filters('FHEE__EEH_Activation__add_column_if_it_doesnt_exist__short_circuit', false)) {
62
+			return false;
63
+		}
64
+		global $wpdb;
65
+		$full_table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name);
66
+		$columns = $this->getTableColumns($table_name);
67
+		if (! in_array($column_name, $columns)) {
68
+			$alter_query = "ALTER TABLE {$full_table_name} ADD {$column_name} {$column_info}";
69
+			return $wpdb->query($alter_query);
70
+		}
71
+		return true;
72
+	}
73 73
 
74 74
 
75
-    /**
76
-     * Gets the name of all columns on the  table. $table_name can
77
-     * optionally start with $wpdb->prefix or not
78
-     *
79
-     * @global \wpdb $wpdb
80
-     * @param string $table_name
81
-     * @return array
82
-     */
83
-    public function getTableColumns($table_name)
84
-    {
85
-        global $wpdb;
86
-        $table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name);
87
-        $field_array = array();
88
-        if (! empty($table_name)) {
89
-            $columns = $wpdb->get_results("SHOW COLUMNS FROM {$table_name} ");
90
-            if ($columns !== false) {
91
-                foreach ($columns as $column) {
92
-                    $field_array[] = $column->Field;
93
-                }
94
-            }
95
-        }
96
-        return $field_array;
97
-    }
75
+	/**
76
+	 * Gets the name of all columns on the  table. $table_name can
77
+	 * optionally start with $wpdb->prefix or not
78
+	 *
79
+	 * @global \wpdb $wpdb
80
+	 * @param string $table_name
81
+	 * @return array
82
+	 */
83
+	public function getTableColumns($table_name)
84
+	{
85
+		global $wpdb;
86
+		$table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name);
87
+		$field_array = array();
88
+		if (! empty($table_name)) {
89
+			$columns = $wpdb->get_results("SHOW COLUMNS FROM {$table_name} ");
90
+			if ($columns !== false) {
91
+				foreach ($columns as $column) {
92
+					$field_array[] = $column->Field;
93
+				}
94
+			}
95
+		}
96
+		return $field_array;
97
+	}
98 98
 
99 99
 
100
-    /**
101
-     * Drops the specified table from the database. $table_name can
102
-     * optionally start with $wpdb->prefix or not
103
-     *
104
-     * @global \wpdb $wpdb
105
-     * @param string $table_name
106
-     * @return int
107
-     */
108
-    public function dropTable($table_name)
109
-    {
110
-        global $wpdb;
111
-        if ($this->getTableAnalysis()->tableExists($table_name)) {
112
-            $table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name);
113
-            return $wpdb->query("DROP TABLE IF EXISTS {$table_name}");
114
-        }
115
-        return 0;
116
-    }
100
+	/**
101
+	 * Drops the specified table from the database. $table_name can
102
+	 * optionally start with $wpdb->prefix or not
103
+	 *
104
+	 * @global \wpdb $wpdb
105
+	 * @param string $table_name
106
+	 * @return int
107
+	 */
108
+	public function dropTable($table_name)
109
+	{
110
+		global $wpdb;
111
+		if ($this->getTableAnalysis()->tableExists($table_name)) {
112
+			$table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name);
113
+			return $wpdb->query("DROP TABLE IF EXISTS {$table_name}");
114
+		}
115
+		return 0;
116
+	}
117 117
 
118 118
 
119
-    /**
120
-     * Drops all the tables mentioned in a single MYSQL query. Double-checks
121
-     * each table name provided has a wpdb prefix attached, and that it exists.
122
-     * Returns the list actually deleted
123
-     *
124
-     * @global WPDB $wpdb
125
-     * @param array $table_names
126
-     * @return array of table names which we deleted
127
-     */
128
-    public function dropTables($table_names)
129
-    {
130
-        $tables_to_delete = array();
131
-        foreach ($table_names as $table_name) {
132
-            $table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name);
133
-            if ($this->getTableAnalysis()->tableExists($table_name)) {
134
-                $tables_to_delete[ $table_name ] = $table_name;
135
-            }
136
-        }
137
-        if (! empty($tables_to_delete)) {
138
-            global $wpdb;
139
-            // make sure we only have a unique strings in the array.
140
-            $tables_to_delete = array_unique($tables_to_delete);
141
-            $wpdb->query('DROP TABLE ' . implode(', ', $tables_to_delete));
142
-        }
143
-        return $tables_to_delete;
144
-    }
119
+	/**
120
+	 * Drops all the tables mentioned in a single MYSQL query. Double-checks
121
+	 * each table name provided has a wpdb prefix attached, and that it exists.
122
+	 * Returns the list actually deleted
123
+	 *
124
+	 * @global WPDB $wpdb
125
+	 * @param array $table_names
126
+	 * @return array of table names which we deleted
127
+	 */
128
+	public function dropTables($table_names)
129
+	{
130
+		$tables_to_delete = array();
131
+		foreach ($table_names as $table_name) {
132
+			$table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name);
133
+			if ($this->getTableAnalysis()->tableExists($table_name)) {
134
+				$tables_to_delete[ $table_name ] = $table_name;
135
+			}
136
+		}
137
+		if (! empty($tables_to_delete)) {
138
+			global $wpdb;
139
+			// make sure we only have a unique strings in the array.
140
+			$tables_to_delete = array_unique($tables_to_delete);
141
+			$wpdb->query('DROP TABLE ' . implode(', ', $tables_to_delete));
142
+		}
143
+		return $tables_to_delete;
144
+	}
145 145
 
146 146
 
147
-    /**
148
-     * Drops the specified index from the specified table. $table_name can
149
-     * optionally start with $wpdb->prefix or not
150
-     *
151
-     * @global \wpdb $wpdb
152
-     * @param string $table_name
153
-     * @param string $index_name
154
-     * @return int the number of indexes dropped. False if there was a datbase error
155
-     */
156
-    public function dropIndex($table_name, $index_name)
157
-    {
158
-        if (apply_filters('FHEE__EEH_Activation__drop_index__short_circuit', false)) {
159
-            return 0;
160
-        }
161
-        global $wpdb;
162
-        $table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name);
163
-        $index_exists_query = "SHOW INDEX FROM {$table_name} WHERE key_name = '{$index_name}'";
164
-        if (
165
-            $this->getTableAnalysis()->tableExists($table_name)
166
-            && $wpdb->get_var($index_exists_query)
167
-               === $table_name // using get_var with the $index_exists_query returns the table's name
168
-        ) {
169
-            return $wpdb->query("ALTER TABLE {$table_name} DROP INDEX {$index_name}");
170
-        }
171
-        return 0;
172
-    }
147
+	/**
148
+	 * Drops the specified index from the specified table. $table_name can
149
+	 * optionally start with $wpdb->prefix or not
150
+	 *
151
+	 * @global \wpdb $wpdb
152
+	 * @param string $table_name
153
+	 * @param string $index_name
154
+	 * @return int the number of indexes dropped. False if there was a datbase error
155
+	 */
156
+	public function dropIndex($table_name, $index_name)
157
+	{
158
+		if (apply_filters('FHEE__EEH_Activation__drop_index__short_circuit', false)) {
159
+			return 0;
160
+		}
161
+		global $wpdb;
162
+		$table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name);
163
+		$index_exists_query = "SHOW INDEX FROM {$table_name} WHERE key_name = '{$index_name}'";
164
+		if (
165
+			$this->getTableAnalysis()->tableExists($table_name)
166
+			&& $wpdb->get_var($index_exists_query)
167
+			   === $table_name // using get_var with the $index_exists_query returns the table's name
168
+		) {
169
+			return $wpdb->query("ALTER TABLE {$table_name} DROP INDEX {$index_name}");
170
+		}
171
+		return 0;
172
+	}
173 173
 
174 174
 
175
-    /**
176
-     * Just creates the requested table. $table_name can
177
-     * optionally start with $wpdb->prefix or not
178
-     *
179
-     * @param string $table_name
180
-     * @param string $create_sql defining the table's columns and indexes
181
-     * @param string $engine     (no need to specify "ENGINE=", that's implied)
182
-     * @return void
183
-     * @throws \EE_Error
184
-     */
185
-    public function createTable($table_name, $create_sql, $engine = 'MyISAM')
186
-    {
187
-        $engine = apply_filters(
188
-            'FHEE__EventEspresso_core_services_database_TableManager__createTable__engine',
189
-            $engine,
190
-            $table_name,
191
-            $create_sql
192
-        );
193
-        // does $sql contain valid column information? ( LPT: https://regex101.com/ is great for working out regex patterns )
194
-        if (preg_match('((((.*?))(,\s))+)', $create_sql, $valid_column_data)) {
195
-            $table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name);
196
-            /** @var \wpdb $wpdb */
197
-            global $wpdb;
198
-            $SQL = "CREATE TABLE {$table_name} ( {$create_sql} ) ENGINE={$engine} " . $wpdb->get_charset_collate();
175
+	/**
176
+	 * Just creates the requested table. $table_name can
177
+	 * optionally start with $wpdb->prefix or not
178
+	 *
179
+	 * @param string $table_name
180
+	 * @param string $create_sql defining the table's columns and indexes
181
+	 * @param string $engine     (no need to specify "ENGINE=", that's implied)
182
+	 * @return void
183
+	 * @throws \EE_Error
184
+	 */
185
+	public function createTable($table_name, $create_sql, $engine = 'MyISAM')
186
+	{
187
+		$engine = apply_filters(
188
+			'FHEE__EventEspresso_core_services_database_TableManager__createTable__engine',
189
+			$engine,
190
+			$table_name,
191
+			$create_sql
192
+		);
193
+		// does $sql contain valid column information? ( LPT: https://regex101.com/ is great for working out regex patterns )
194
+		if (preg_match('((((.*?))(,\s))+)', $create_sql, $valid_column_data)) {
195
+			$table_name = $this->getTableAnalysis()->ensureTableNameHasPrefix($table_name);
196
+			/** @var \wpdb $wpdb */
197
+			global $wpdb;
198
+			$SQL = "CREATE TABLE {$table_name} ( {$create_sql} ) ENGINE={$engine} " . $wpdb->get_charset_collate();
199 199
 
200
-            // get $wpdb to echo errors, but buffer them. This way at least WE know an error
201
-            // happened. And then we can choose to tell the end user
202
-            $old_show_errors_policy = $wpdb->show_errors(true);
203
-            $old_error_suppression_policy = $wpdb->suppress_errors(false);
204
-            ob_start();
205
-            dbDelta($SQL);
206
-            $output = ob_get_contents();
207
-            ob_end_clean();
208
-            $wpdb->show_errors($old_show_errors_policy);
209
-            $wpdb->suppress_errors($old_error_suppression_policy);
210
-            if (! empty($output)) {
211
-                throw new \EE_Error($output);
212
-            }
213
-        } else {
214
-            throw new \EE_Error(
215
-                sprintf(
216
-                    esc_html__(
217
-                        'The following table creation SQL does not contain valid information about the table columns: %1$s %2$s',
218
-                        'event_espresso'
219
-                    ),
220
-                    '<br />',
221
-                    $create_sql
222
-                )
223
-            );
224
-        }
225
-    }
200
+			// get $wpdb to echo errors, but buffer them. This way at least WE know an error
201
+			// happened. And then we can choose to tell the end user
202
+			$old_show_errors_policy = $wpdb->show_errors(true);
203
+			$old_error_suppression_policy = $wpdb->suppress_errors(false);
204
+			ob_start();
205
+			dbDelta($SQL);
206
+			$output = ob_get_contents();
207
+			ob_end_clean();
208
+			$wpdb->show_errors($old_show_errors_policy);
209
+			$wpdb->suppress_errors($old_error_suppression_policy);
210
+			if (! empty($output)) {
211
+				throw new \EE_Error($output);
212
+			}
213
+		} else {
214
+			throw new \EE_Error(
215
+				sprintf(
216
+					esc_html__(
217
+						'The following table creation SQL does not contain valid information about the table columns: %1$s %2$s',
218
+						'event_espresso'
219
+					),
220
+					'<br />',
221
+					$create_sql
222
+				)
223
+			);
224
+		}
225
+	}
226 226
 
227 227
 
228
-    /**
229
-     * Drops the specified index if it's size differs from $desired_index_size.
230
-     * WordPress' dbdelta method doesn't automatically change index sizes, so this
231
-     * method can be used to only drop the index if needed, and afterwards dbdelta can be used as normal.
232
-     * If the table doesn't exist, or it exists but the index does not, or returns false
233
-     *
234
-     * @param string     $table_name
235
-     * @param string     $index_name
236
-     * @param string     $column_name        if none is provided, we assume the column name matches the index (often
237
-     *                                       true in EE)
238
-     * @param string|int $desired_index_size defaults to TableAnalysis::index_col_size, the max for utf8mb4.
239
-     * @return bool whether an index was dropped or not
240
-     * @throws /EE_Error if table analysis object isn't defined
241
-     */
242
-    public function dropIndexIfSizeNot(
243
-        $table_name,
244
-        $index_name,
245
-        $column_name = null,
246
-        $desired_index_size = TableAnalysis::INDEX_COLUMN_SIZE
247
-    ) {
248
-        if ($column_name === null) {
249
-            $column_name = $index_name;
250
-        }
251
-        if (! $this->getTableAnalysis()->tableExists($table_name)) {
252
-            return false;
253
-        }
254
-        $index_entries = $this->getTableAnalysis()->showIndexes($table_name, $index_name);
255
-        if (empty($index_entries)) {
256
-            return false;
257
-        }
258
-        foreach ($index_entries as $index_entry) {
259
-            if (
260
-                $column_name === $index_entry->Column_name
261
-                && (string) $desired_index_size !== $index_entry->Sub_part
262
-            ) {
263
-                return $this->dropIndex($table_name, $index_name);
264
-            }
265
-        }
266
-        return false;
267
-    }
228
+	/**
229
+	 * Drops the specified index if it's size differs from $desired_index_size.
230
+	 * WordPress' dbdelta method doesn't automatically change index sizes, so this
231
+	 * method can be used to only drop the index if needed, and afterwards dbdelta can be used as normal.
232
+	 * If the table doesn't exist, or it exists but the index does not, or returns false
233
+	 *
234
+	 * @param string     $table_name
235
+	 * @param string     $index_name
236
+	 * @param string     $column_name        if none is provided, we assume the column name matches the index (often
237
+	 *                                       true in EE)
238
+	 * @param string|int $desired_index_size defaults to TableAnalysis::index_col_size, the max for utf8mb4.
239
+	 * @return bool whether an index was dropped or not
240
+	 * @throws /EE_Error if table analysis object isn't defined
241
+	 */
242
+	public function dropIndexIfSizeNot(
243
+		$table_name,
244
+		$index_name,
245
+		$column_name = null,
246
+		$desired_index_size = TableAnalysis::INDEX_COLUMN_SIZE
247
+	) {
248
+		if ($column_name === null) {
249
+			$column_name = $index_name;
250
+		}
251
+		if (! $this->getTableAnalysis()->tableExists($table_name)) {
252
+			return false;
253
+		}
254
+		$index_entries = $this->getTableAnalysis()->showIndexes($table_name, $index_name);
255
+		if (empty($index_entries)) {
256
+			return false;
257
+		}
258
+		foreach ($index_entries as $index_entry) {
259
+			if (
260
+				$column_name === $index_entry->Column_name
261
+				&& (string) $desired_index_size !== $index_entry->Sub_part
262
+			) {
263
+				return $this->dropIndex($table_name, $index_name);
264
+			}
265
+		}
266
+		return false;
267
+	}
268 268
 }
Please login to merge, or discard this patch.
core/services/commands/CommandHandlerManager.php 2 patches
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -74,7 +74,7 @@  discard block
 block discarded – undo
74 74
         if (empty($command)) {
75 75
             throw new InvalidCommandHandlerException($command);
76 76
         }
77
-        $this->command_handlers[ $command ] = $command_handler;
77
+        $this->command_handlers[$command] = $command_handler;
78 78
     }
79 79
 
80 80
 
@@ -96,14 +96,14 @@  discard block
 block discarded – undo
96 96
         $handler = null;
97 97
         // has a command handler already been set for this class ?
98 98
         // if not, can we find one via the FQCN ?
99
-        if (isset($this->command_handlers[ $command_name ])) {
100
-            $handler = $this->command_handlers[ $command_name ];
99
+        if (isset($this->command_handlers[$command_name])) {
100
+            $handler = $this->command_handlers[$command_name];
101 101
         } elseif (class_exists($command_handler)) {
102 102
             $handler = $this->loader->getShared($command_handler);
103 103
         }
104 104
         // if Handler requires an instance of the CommandBus, but that has not yet been set
105 105
         if ($handler instanceof CompositeCommandHandler && ! $handler->commandBus() instanceof CommandBusInterface) {
106
-            if (! $command_bus instanceof CommandBusInterface) {
106
+            if ( ! $command_bus instanceof CommandBusInterface) {
107 107
                 throw new DomainException(
108 108
                     esc_html__(
109 109
                         'CompositeCommandHandler classes require an instance of the CommandBus.',
Please login to merge, or discard this patch.
Indentation   +100 added lines, -100 removed lines patch added patch discarded remove patch
@@ -17,83 +17,83 @@  discard block
 block discarded – undo
17 17
  */
18 18
 class CommandHandlerManager implements CommandHandlerManagerInterface
19 19
 {
20
-    /**
21
-     * @var CommandHandlerInterface[] $command_handlers
22
-     */
23
-    protected $command_handlers;
20
+	/**
21
+	 * @var CommandHandlerInterface[] $command_handlers
22
+	 */
23
+	protected $command_handlers;
24 24
 
25
-    /**
26
-     * @type LoaderInterface $loader
27
-     */
28
-    private $loader;
25
+	/**
26
+	 * @type LoaderInterface $loader
27
+	 */
28
+	private $loader;
29 29
 
30 30
 
31
-    /**
32
-     * CommandHandlerManager constructor
33
-     *
34
-     * @param LoaderInterface $loader
35
-     */
36
-    public function __construct(LoaderInterface $loader)
37
-    {
38
-        $this->loader = $loader;
39
-    }
31
+	/**
32
+	 * CommandHandlerManager constructor
33
+	 *
34
+	 * @param LoaderInterface $loader
35
+	 */
36
+	public function __construct(LoaderInterface $loader)
37
+	{
38
+		$this->loader = $loader;
39
+	}
40 40
 
41 41
 
42
-    /**
43
-     * By default, Commands and CommandHandlers would normally
44
-     * reside in the same folder under the same namespace,
45
-     * and the names of the two classes would only differ in that
46
-     * one ends in "Command" and the other ends in "CommandHandler".
47
-     * However, if you wanted to utilize a CommandHandler from somewhere else,
48
-     * then this method allows you to add that CommandHandler and specify the FQCN
49
-     * (Fully Qualified ClassName) for the Command class that it should be used for.
50
-     * For example:
51
-     *      by default the "Vendor\some\namespace\DoSomethingCommand"
52
-     *      would resolve to using "Vendor\some\namespace\DoSomethingCommandHandler"
53
-     *      but if you wanted to instead process that commend using:
54
-     *      "Vendor\a\totally\different\namespace\for\DoSomethingCommandHandler"
55
-     *      then the following code:
56
-     *      $CommandHandlerManager = $this->loader->getShared( 'CommandHandlerManagerInterface' );
57
-     *      $CommandHandlerManager->addCommandHandler(
58
-     *          new Vendor\a\totally\different\namespace\for\DoSomethingCommandHandler(),
59
-     *          'Vendor\some\namespace\DoSomethingCommand'
60
-     *      );
61
-     *      would result in the alternate CommandHandler being used to process that Command
62
-     *
63
-     * !!! IMPORTANT !!!
64
-     * If overriding the default CommandHandler for a Command,
65
-     * be sure to also override CommandHandler::verify(),
66
-     * or else an Exception will be thrown when the CommandBus
67
-     * attempts to verify that the incoming Command matches the Handler
68
-     *
69
-     * @param CommandHandlerInterface $command_handler
70
-     * @param string                  $fqcn_for_command Fully Qualified ClassName for Command
71
-     * @return void
72
-     * @throws InvalidCommandHandlerException
73
-     */
74
-    public function addCommandHandler(CommandHandlerInterface $command_handler, $fqcn_for_command = '')
75
-    {
76
-        $command = ! empty($fqcn_for_command)
77
-            ? $fqcn_for_command
78
-            : str_replace('CommandHandler', 'Command', get_class($command_handler));
79
-        if (empty($command)) {
80
-            throw new InvalidCommandHandlerException($command);
81
-        }
82
-        $this->command_handlers[ $command ] = $command_handler;
83
-    }
42
+	/**
43
+	 * By default, Commands and CommandHandlers would normally
44
+	 * reside in the same folder under the same namespace,
45
+	 * and the names of the two classes would only differ in that
46
+	 * one ends in "Command" and the other ends in "CommandHandler".
47
+	 * However, if you wanted to utilize a CommandHandler from somewhere else,
48
+	 * then this method allows you to add that CommandHandler and specify the FQCN
49
+	 * (Fully Qualified ClassName) for the Command class that it should be used for.
50
+	 * For example:
51
+	 *      by default the "Vendor\some\namespace\DoSomethingCommand"
52
+	 *      would resolve to using "Vendor\some\namespace\DoSomethingCommandHandler"
53
+	 *      but if you wanted to instead process that commend using:
54
+	 *      "Vendor\a\totally\different\namespace\for\DoSomethingCommandHandler"
55
+	 *      then the following code:
56
+	 *      $CommandHandlerManager = $this->loader->getShared( 'CommandHandlerManagerInterface' );
57
+	 *      $CommandHandlerManager->addCommandHandler(
58
+	 *          new Vendor\a\totally\different\namespace\for\DoSomethingCommandHandler(),
59
+	 *          'Vendor\some\namespace\DoSomethingCommand'
60
+	 *      );
61
+	 *      would result in the alternate CommandHandler being used to process that Command
62
+	 *
63
+	 * !!! IMPORTANT !!!
64
+	 * If overriding the default CommandHandler for a Command,
65
+	 * be sure to also override CommandHandler::verify(),
66
+	 * or else an Exception will be thrown when the CommandBus
67
+	 * attempts to verify that the incoming Command matches the Handler
68
+	 *
69
+	 * @param CommandHandlerInterface $command_handler
70
+	 * @param string                  $fqcn_for_command Fully Qualified ClassName for Command
71
+	 * @return void
72
+	 * @throws InvalidCommandHandlerException
73
+	 */
74
+	public function addCommandHandler(CommandHandlerInterface $command_handler, $fqcn_for_command = '')
75
+	{
76
+		$command = ! empty($fqcn_for_command)
77
+			? $fqcn_for_command
78
+			: str_replace('CommandHandler', 'Command', get_class($command_handler));
79
+		if (empty($command)) {
80
+			throw new InvalidCommandHandlerException($command);
81
+		}
82
+		$this->command_handlers[ $command ] = $command_handler;
83
+	}
84 84
 
85 85
 
86
-    /**
87
-     * @param CommandInterface    $command
88
-     * @param CommandBusInterface $command_bus
89
-     * @return mixed
90
-     * @throws DomainException
91
-     * @throws CommandHandlerNotFoundException
92
-     */
93
-    public function getCommandHandler(CommandInterface $command, CommandBusInterface $command_bus = null)
94
-    {
95
-        $command_name = get_class($command);
96
-        /*
86
+	/**
87
+	 * @param CommandInterface    $command
88
+	 * @param CommandBusInterface $command_bus
89
+	 * @return mixed
90
+	 * @throws DomainException
91
+	 * @throws CommandHandlerNotFoundException
92
+	 */
93
+	public function getCommandHandler(CommandInterface $command, CommandBusInterface $command_bus = null)
94
+	{
95
+		$command_name = get_class($command);
96
+		/*
97 97
          * Filters the Fully Qualified Class Name for the Command Handler
98 98
          * that will be used to handle the incoming Command
99 99
          *
@@ -106,34 +106,34 @@  discard block
 block discarded – undo
106 106
          * @param string "CommandHandler::class" Fully Qualified Class Name for the Command Handler
107 107
          * @param CommandInterface $command the actual Command instance
108 108
          */
109
-        $command_handler = apply_filters(
110
-            'FHEE__EventEspresso_core_services_commands_CommandHandlerManager__getCommandHandler__command_handler',
111
-            str_replace('Command', 'CommandHandler', $command_name),
112
-            $command
113
-        );
114
-        $handler = null;
115
-        // has a command handler already been set for this class ?
116
-        // if not, can we find one via the FQCN ?
117
-        if (isset($this->command_handlers[ $command_name ])) {
118
-            $handler = $this->command_handlers[ $command_name ];
119
-        } elseif (class_exists($command_handler)) {
120
-            $handler = $this->loader->getShared($command_handler);
121
-        }
122
-        // if Handler requires an instance of the CommandBus, but that has not yet been set
123
-        if ($handler instanceof CompositeCommandHandler && ! $handler->commandBus() instanceof CommandBusInterface) {
124
-            if (! $command_bus instanceof CommandBusInterface) {
125
-                throw new DomainException(
126
-                    esc_html__(
127
-                        'CompositeCommandHandler classes require an instance of the CommandBus.',
128
-                        'event_espresso'
129
-                    )
130
-                );
131
-            }
132
-            $handler->setCommandBus($command_bus);
133
-        }
134
-        if ($handler instanceof CommandHandlerInterface) {
135
-            return $handler;
136
-        }
137
-        throw new CommandHandlerNotFoundException($command_handler);
138
-    }
109
+		$command_handler = apply_filters(
110
+			'FHEE__EventEspresso_core_services_commands_CommandHandlerManager__getCommandHandler__command_handler',
111
+			str_replace('Command', 'CommandHandler', $command_name),
112
+			$command
113
+		);
114
+		$handler = null;
115
+		// has a command handler already been set for this class ?
116
+		// if not, can we find one via the FQCN ?
117
+		if (isset($this->command_handlers[ $command_name ])) {
118
+			$handler = $this->command_handlers[ $command_name ];
119
+		} elseif (class_exists($command_handler)) {
120
+			$handler = $this->loader->getShared($command_handler);
121
+		}
122
+		// if Handler requires an instance of the CommandBus, but that has not yet been set
123
+		if ($handler instanceof CompositeCommandHandler && ! $handler->commandBus() instanceof CommandBusInterface) {
124
+			if (! $command_bus instanceof CommandBusInterface) {
125
+				throw new DomainException(
126
+					esc_html__(
127
+						'CompositeCommandHandler classes require an instance of the CommandBus.',
128
+						'event_espresso'
129
+					)
130
+				);
131
+			}
132
+			$handler->setCommandBus($command_bus);
133
+		}
134
+		if ($handler instanceof CommandHandlerInterface) {
135
+			return $handler;
136
+		}
137
+		throw new CommandHandlerNotFoundException($command_handler);
138
+	}
139 139
 }
Please login to merge, or discard this patch.
core/services/notices/Notice.php 2 patches
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -157,7 +157,7 @@
 block discarded – undo
157 157
      */
158 158
     private function setType($type)
159 159
     {
160
-        if (! in_array($type, $this->types(), true)) {
160
+        if ( ! in_array($type, $this->types(), true)) {
161 161
             throw new InvalidDataTypeException(
162 162
                 '$type',
163 163
                 $type,
Please login to merge, or discard this patch.
Indentation   +249 added lines, -249 removed lines patch added patch discarded remove patch
@@ -13,253 +13,253 @@
 block discarded – undo
13 13
  */
14 14
 class Notice implements NoticeInterface
15 15
 {
16
-    const ERROR = 'error';
17
-
18
-    const SUCCESS = 'success';
19
-
20
-    const ATTENTION = 'attention'; // alias for warning
21
-
22
-    const INFORMATION = 'information';
23
-
24
-    /**
25
-     * @var string $type
26
-     */
27
-    private $type;
28
-
29
-
30
-    /**
31
-     * @var string $message
32
-     */
33
-    private $message;
34
-
35
-
36
-    /**
37
-     * @var string $file
38
-     */
39
-    private $file;
40
-
41
-
42
-    /**
43
-     * @var string $func
44
-     */
45
-    private $func;
46
-
47
-
48
-    /**
49
-     * @var string $line
50
-     */
51
-    private $line;
52
-
53
-
54
-    /**
55
-     * @var boolean $dismissible
56
-     */
57
-    private $dismissible;
58
-
59
-
60
-    /**
61
-     * Notice constructor.
62
-     *
63
-     * @param string $type
64
-     * @param string $message
65
-     * @param bool   $dismissible
66
-     * @param string $file
67
-     * @param string $func
68
-     * @param string $line
69
-     * @throws InvalidDataTypeException
70
-     */
71
-    public function __construct($type, $message, $dismissible = true, $file = '', $func = '', $line = '')
72
-    {
73
-        $this->setType($type);
74
-        $this->setMessage($message);
75
-        $this->setDismissible($dismissible);
76
-        $this->setFile($file);
77
-        $this->setFunc($func);
78
-        $this->setLine($line);
79
-    }
80
-
81
-
82
-    /**
83
-     * @return array
84
-     */
85
-    private function types()
86
-    {
87
-        return (array) apply_filters(
88
-            'FHEE__EventEspresso_core_services_notices_Notice__types',
89
-            array(
90
-                Notice::ERROR,
91
-                Notice::SUCCESS,
92
-                Notice::ATTENTION,
93
-                Notice::INFORMATION,
94
-            )
95
-        );
96
-    }
97
-
98
-
99
-    /**
100
-     * @return string
101
-     */
102
-    public function type()
103
-    {
104
-        return $this->type;
105
-    }
106
-
107
-
108
-    /**
109
-     * @return string
110
-     */
111
-    public function message()
112
-    {
113
-        return $this->message;
114
-    }
115
-
116
-
117
-    /**
118
-     * @return string
119
-     */
120
-    public function file()
121
-    {
122
-        return $this->file;
123
-    }
124
-
125
-
126
-    /**
127
-     * @return string
128
-     */
129
-    public function func()
130
-    {
131
-        return $this->func;
132
-    }
133
-
134
-
135
-    /**
136
-     * @return string
137
-     */
138
-    public function line()
139
-    {
140
-        return $this->line;
141
-    }
142
-
143
-
144
-    /**
145
-     * @return bool
146
-     */
147
-    public function isDismissible()
148
-    {
149
-        return $this->dismissible;
150
-    }
151
-
152
-
153
-    /**
154
-     * @param string $type
155
-     * @throws InvalidDataTypeException
156
-     */
157
-    private function setType($type)
158
-    {
159
-        if (! in_array($type, $this->types(), true)) {
160
-            throw new InvalidDataTypeException(
161
-                '$type',
162
-                $type,
163
-                $this->invalidTypeMessage()
164
-            );
165
-        }
166
-        $this->type = $type;
167
-    }
168
-
169
-
170
-    /**
171
-     * gets the $invalid_type_message string
172
-     */
173
-    private function invalidTypeMessage()
174
-    {
175
-        return apply_filters(
176
-            'FHEE__EventEspresso_core_services_notices_Notice__invalidTypeMessage',
177
-            sprintf(
178
-                esc_html__(
179
-                    ' one of the following notice types was expected: %1$s %2$s',
180
-                    'event_espresso'
181
-                ),
182
-                '<br />',
183
-                var_export($this->types(), true)
184
-            )
185
-        );
186
-    }
187
-
188
-
189
-    /**
190
-     * @param string $message
191
-     * @throws InvalidDataTypeException
192
-     */
193
-    private function setMessage($message)
194
-    {
195
-        if (empty($message) || ! is_string($message)) {
196
-            throw new InvalidDataTypeException(
197
-                '$message',
198
-                $message,
199
-                esc_html__('non empty string', 'event_espresso')
200
-            );
201
-        }
202
-        $this->message = sanitize_text_field($message);
203
-    }
204
-
205
-
206
-    /**
207
-     * @param string $file
208
-     * @throws InvalidDataTypeException
209
-     */
210
-    private function setFile($file)
211
-    {
212
-        if ($this->type === Notice::ERROR && (empty($file) || ! is_string($file))) {
213
-            throw new InvalidDataTypeException(
214
-                '$file',
215
-                $file,
216
-                esc_html__('non empty string', 'event_espresso')
217
-            );
218
-        }
219
-        $this->file = sanitize_text_field($file);
220
-    }
221
-
222
-
223
-    /**
224
-     * @param string $func
225
-     * @throws InvalidDataTypeException
226
-     */
227
-    private function setFunc($func)
228
-    {
229
-        if ($this->type === Notice::ERROR && (empty($func) || ! is_string($func))) {
230
-            throw new InvalidDataTypeException(
231
-                '$func',
232
-                $func,
233
-                esc_html__('non empty string', 'event_espresso')
234
-            );
235
-        }
236
-        $this->func = sanitize_text_field($func);
237
-    }
238
-
239
-
240
-    /**
241
-     * @param int $line
242
-     * @throws InvalidDataTypeException
243
-     */
244
-    private function setLine($line)
245
-    {
246
-        $line = absint($line);
247
-        if ($this->type === Notice::ERROR && $line === 0) {
248
-            throw new InvalidDataTypeException(
249
-                '$line',
250
-                $line,
251
-                esc_html__('integer', 'event_espresso')
252
-            );
253
-        }
254
-        $this->line = sanitize_text_field($line);
255
-    }
256
-
257
-
258
-    /**
259
-     * @param boolean $dismissible
260
-     */
261
-    private function setDismissible($dismissible = true)
262
-    {
263
-        $this->dismissible = filter_var($dismissible, FILTER_VALIDATE_BOOLEAN);
264
-    }
16
+	const ERROR = 'error';
17
+
18
+	const SUCCESS = 'success';
19
+
20
+	const ATTENTION = 'attention'; // alias for warning
21
+
22
+	const INFORMATION = 'information';
23
+
24
+	/**
25
+	 * @var string $type
26
+	 */
27
+	private $type;
28
+
29
+
30
+	/**
31
+	 * @var string $message
32
+	 */
33
+	private $message;
34
+
35
+
36
+	/**
37
+	 * @var string $file
38
+	 */
39
+	private $file;
40
+
41
+
42
+	/**
43
+	 * @var string $func
44
+	 */
45
+	private $func;
46
+
47
+
48
+	/**
49
+	 * @var string $line
50
+	 */
51
+	private $line;
52
+
53
+
54
+	/**
55
+	 * @var boolean $dismissible
56
+	 */
57
+	private $dismissible;
58
+
59
+
60
+	/**
61
+	 * Notice constructor.
62
+	 *
63
+	 * @param string $type
64
+	 * @param string $message
65
+	 * @param bool   $dismissible
66
+	 * @param string $file
67
+	 * @param string $func
68
+	 * @param string $line
69
+	 * @throws InvalidDataTypeException
70
+	 */
71
+	public function __construct($type, $message, $dismissible = true, $file = '', $func = '', $line = '')
72
+	{
73
+		$this->setType($type);
74
+		$this->setMessage($message);
75
+		$this->setDismissible($dismissible);
76
+		$this->setFile($file);
77
+		$this->setFunc($func);
78
+		$this->setLine($line);
79
+	}
80
+
81
+
82
+	/**
83
+	 * @return array
84
+	 */
85
+	private function types()
86
+	{
87
+		return (array) apply_filters(
88
+			'FHEE__EventEspresso_core_services_notices_Notice__types',
89
+			array(
90
+				Notice::ERROR,
91
+				Notice::SUCCESS,
92
+				Notice::ATTENTION,
93
+				Notice::INFORMATION,
94
+			)
95
+		);
96
+	}
97
+
98
+
99
+	/**
100
+	 * @return string
101
+	 */
102
+	public function type()
103
+	{
104
+		return $this->type;
105
+	}
106
+
107
+
108
+	/**
109
+	 * @return string
110
+	 */
111
+	public function message()
112
+	{
113
+		return $this->message;
114
+	}
115
+
116
+
117
+	/**
118
+	 * @return string
119
+	 */
120
+	public function file()
121
+	{
122
+		return $this->file;
123
+	}
124
+
125
+
126
+	/**
127
+	 * @return string
128
+	 */
129
+	public function func()
130
+	{
131
+		return $this->func;
132
+	}
133
+
134
+
135
+	/**
136
+	 * @return string
137
+	 */
138
+	public function line()
139
+	{
140
+		return $this->line;
141
+	}
142
+
143
+
144
+	/**
145
+	 * @return bool
146
+	 */
147
+	public function isDismissible()
148
+	{
149
+		return $this->dismissible;
150
+	}
151
+
152
+
153
+	/**
154
+	 * @param string $type
155
+	 * @throws InvalidDataTypeException
156
+	 */
157
+	private function setType($type)
158
+	{
159
+		if (! in_array($type, $this->types(), true)) {
160
+			throw new InvalidDataTypeException(
161
+				'$type',
162
+				$type,
163
+				$this->invalidTypeMessage()
164
+			);
165
+		}
166
+		$this->type = $type;
167
+	}
168
+
169
+
170
+	/**
171
+	 * gets the $invalid_type_message string
172
+	 */
173
+	private function invalidTypeMessage()
174
+	{
175
+		return apply_filters(
176
+			'FHEE__EventEspresso_core_services_notices_Notice__invalidTypeMessage',
177
+			sprintf(
178
+				esc_html__(
179
+					' one of the following notice types was expected: %1$s %2$s',
180
+					'event_espresso'
181
+				),
182
+				'<br />',
183
+				var_export($this->types(), true)
184
+			)
185
+		);
186
+	}
187
+
188
+
189
+	/**
190
+	 * @param string $message
191
+	 * @throws InvalidDataTypeException
192
+	 */
193
+	private function setMessage($message)
194
+	{
195
+		if (empty($message) || ! is_string($message)) {
196
+			throw new InvalidDataTypeException(
197
+				'$message',
198
+				$message,
199
+				esc_html__('non empty string', 'event_espresso')
200
+			);
201
+		}
202
+		$this->message = sanitize_text_field($message);
203
+	}
204
+
205
+
206
+	/**
207
+	 * @param string $file
208
+	 * @throws InvalidDataTypeException
209
+	 */
210
+	private function setFile($file)
211
+	{
212
+		if ($this->type === Notice::ERROR && (empty($file) || ! is_string($file))) {
213
+			throw new InvalidDataTypeException(
214
+				'$file',
215
+				$file,
216
+				esc_html__('non empty string', 'event_espresso')
217
+			);
218
+		}
219
+		$this->file = sanitize_text_field($file);
220
+	}
221
+
222
+
223
+	/**
224
+	 * @param string $func
225
+	 * @throws InvalidDataTypeException
226
+	 */
227
+	private function setFunc($func)
228
+	{
229
+		if ($this->type === Notice::ERROR && (empty($func) || ! is_string($func))) {
230
+			throw new InvalidDataTypeException(
231
+				'$func',
232
+				$func,
233
+				esc_html__('non empty string', 'event_espresso')
234
+			);
235
+		}
236
+		$this->func = sanitize_text_field($func);
237
+	}
238
+
239
+
240
+	/**
241
+	 * @param int $line
242
+	 * @throws InvalidDataTypeException
243
+	 */
244
+	private function setLine($line)
245
+	{
246
+		$line = absint($line);
247
+		if ($this->type === Notice::ERROR && $line === 0) {
248
+			throw new InvalidDataTypeException(
249
+				'$line',
250
+				$line,
251
+				esc_html__('integer', 'event_espresso')
252
+			);
253
+		}
254
+		$this->line = sanitize_text_field($line);
255
+	}
256
+
257
+
258
+	/**
259
+	 * @param boolean $dismissible
260
+	 */
261
+	private function setDismissible($dismissible = true)
262
+	{
263
+		$this->dismissible = filter_var($dismissible, FILTER_VALIDATE_BOOLEAN);
264
+	}
265 265
 }
Please login to merge, or discard this patch.
core/libraries/rest_api/changes/ChangesIn40836.php 2 patches
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -119,9 +119,9 @@  discard block
 block discarded – undo
119 119
                 $headers,
120 120
                 array_flip(
121 121
                     array(
122
-                        Base::HEADER_PREFIX_FOR_WP . 'Total',
123
-                        Base::HEADER_PREFIX_FOR_WP . 'TotalPages',
124
-                        Base::HEADER_PREFIX_FOR_WP . 'PageSize',
122
+                        Base::HEADER_PREFIX_FOR_WP.'Total',
123
+                        Base::HEADER_PREFIX_FOR_WP.'TotalPages',
124
+                        Base::HEADER_PREFIX_FOR_WP.'PageSize',
125 125
                     )
126 126
                 )
127 127
             );
@@ -151,7 +151,7 @@  discard block
 block discarded – undo
151 151
             && $model instanceof \EEM_CPT_Base
152 152
         ) {
153 153
             $attachment = wp_get_attachment_image_src(
154
-                get_post_thumbnail_id($entity_response_array[ $model->primary_key_name() ]),
154
+                get_post_thumbnail_id($entity_response_array[$model->primary_key_name()]),
155 155
                 'full'
156 156
             );
157 157
             $entity_response_array['featured_image_url'] = ! empty($attachment) ? $attachment[0] : null;
Please login to merge, or discard this patch.
Indentation   +162 added lines, -162 removed lines patch added patch discarded remove patch
@@ -16,176 +16,176 @@
 block discarded – undo
16 16
 class ChangesIn40836 extends ChangesInBase
17 17
 {
18 18
 
19
-    /**
20
-     * Adds hooks so requests to 4.8.29 don't have the checkin endpoints
21
-     */
22
-    public function setHooks()
23
-    {
24
-        // set a hook to remove the "calculate" query param
25
-        add_filter(
26
-            'FHEE__EED_Core_Rest_Api___get_response_selection_query_params',
27
-            array($this, 'removeCalculateQueryParam'),
28
-            10,
29
-            3
30
-        );
31
-        // don't add the _calculated_fields either
32
-        add_filter(
33
-            'FHEE__Read__create_entity_from_wpdb_results__entity_before_inaccessible_field_removal',
34
-            array($this, 'removeCalculatedFieldsFromResponse'),
35
-            10,
36
-            5
37
-        );
38
-        // and also don't add the count headers
39
-        add_filter(
40
-            'FHEE__EventEspresso\core\libraries\rest_api\controllers\Base___get_response_headers',
41
-            array($this, 'removeHeadersNewInThisVersion'),
42
-            10,
43
-            3
44
-        );
45
-        // remove the old featured_image part of the response...
46
-        add_filter(
47
-            'FHEE__Read__create_entity_from_wpdb_results__entity_before_including_requested_models',
48
-            array($this, 'addOldFeaturedImagePartOfCptEntities'),
49
-            10,
50
-            5
51
-        );
52
-        // assuming ticket 9425's change gets pushed with 9406, we don't need to
53
-        // remove it from the calculated fields on older requests (because this will
54
-        // be the first version with calculated fields)
55
-        // before this, infinity was -1, now it's null
56
-        add_filter(
57
-            'FHEE__EventEspresso\core\libraries\rest_api\Model_Data_Translator__prepare_field_for_rest_api',
58
-            array($this, 'useNegativeOneForInfinityBeforeThisVersion'),
59
-            10,
60
-            4
61
-        );
62
-    }
19
+	/**
20
+	 * Adds hooks so requests to 4.8.29 don't have the checkin endpoints
21
+	 */
22
+	public function setHooks()
23
+	{
24
+		// set a hook to remove the "calculate" query param
25
+		add_filter(
26
+			'FHEE__EED_Core_Rest_Api___get_response_selection_query_params',
27
+			array($this, 'removeCalculateQueryParam'),
28
+			10,
29
+			3
30
+		);
31
+		// don't add the _calculated_fields either
32
+		add_filter(
33
+			'FHEE__Read__create_entity_from_wpdb_results__entity_before_inaccessible_field_removal',
34
+			array($this, 'removeCalculatedFieldsFromResponse'),
35
+			10,
36
+			5
37
+		);
38
+		// and also don't add the count headers
39
+		add_filter(
40
+			'FHEE__EventEspresso\core\libraries\rest_api\controllers\Base___get_response_headers',
41
+			array($this, 'removeHeadersNewInThisVersion'),
42
+			10,
43
+			3
44
+		);
45
+		// remove the old featured_image part of the response...
46
+		add_filter(
47
+			'FHEE__Read__create_entity_from_wpdb_results__entity_before_including_requested_models',
48
+			array($this, 'addOldFeaturedImagePartOfCptEntities'),
49
+			10,
50
+			5
51
+		);
52
+		// assuming ticket 9425's change gets pushed with 9406, we don't need to
53
+		// remove it from the calculated fields on older requests (because this will
54
+		// be the first version with calculated fields)
55
+		// before this, infinity was -1, now it's null
56
+		add_filter(
57
+			'FHEE__EventEspresso\core\libraries\rest_api\Model_Data_Translator__prepare_field_for_rest_api',
58
+			array($this, 'useNegativeOneForInfinityBeforeThisVersion'),
59
+			10,
60
+			4
61
+		);
62
+	}
63 63
 
64 64
 
65
-    /**
66
-     * Don't show "calculate" as an query param option in the index
67
-     *
68
-     * @param array    $query_params
69
-     * @param EEM_Base $model
70
-     * @param string   $version
71
-     * @return array
72
-     */
73
-    public function removeCalculateQueryParam($query_params, EEM_Base $model, $version)
74
-    {
75
-        if ($this->appliesToVersion($version)) {
76
-            unset($query_params['calculate']);
77
-        }
78
-        return $query_params;
79
-    }
65
+	/**
66
+	 * Don't show "calculate" as an query param option in the index
67
+	 *
68
+	 * @param array    $query_params
69
+	 * @param EEM_Base $model
70
+	 * @param string   $version
71
+	 * @return array
72
+	 */
73
+	public function removeCalculateQueryParam($query_params, EEM_Base $model, $version)
74
+	{
75
+		if ($this->appliesToVersion($version)) {
76
+			unset($query_params['calculate']);
77
+		}
78
+		return $query_params;
79
+	}
80 80
 
81 81
 
82
-    /**
83
-     * Removes the "_calculate_fields" part of entity responses before 4.8.36
84
-     *
85
-     * @param array           $entity_response_array
86
-     * @param EEM_Base        $model
87
-     * @param string          $request_context
88
-     * @param WP_REST_Request $request
89
-     * @param Read            $controller
90
-     * @return array
91
-     */
92
-    public function removeCalculatedFieldsFromResponse(
93
-        $entity_response_array,
94
-        EEM_Base $model,
95
-        $request_context,
96
-        WP_REST_Request $request,
97
-        Read $controller
98
-    ) {
99
-        if ($this->appliesToVersion($controller->getModelVersionInfo()->requestedVersion())) {
100
-            unset($entity_response_array['_calculated_fields']);
101
-        }
102
-        return $entity_response_array;
103
-    }
82
+	/**
83
+	 * Removes the "_calculate_fields" part of entity responses before 4.8.36
84
+	 *
85
+	 * @param array           $entity_response_array
86
+	 * @param EEM_Base        $model
87
+	 * @param string          $request_context
88
+	 * @param WP_REST_Request $request
89
+	 * @param Read            $controller
90
+	 * @return array
91
+	 */
92
+	public function removeCalculatedFieldsFromResponse(
93
+		$entity_response_array,
94
+		EEM_Base $model,
95
+		$request_context,
96
+		WP_REST_Request $request,
97
+		Read $controller
98
+	) {
99
+		if ($this->appliesToVersion($controller->getModelVersionInfo()->requestedVersion())) {
100
+			unset($entity_response_array['_calculated_fields']);
101
+		}
102
+		return $entity_response_array;
103
+	}
104 104
 
105 105
 
106
-    /**
107
-     * Removes the new headers for requests before 4.8.36
108
-     *
109
-     * @param array           $headers
110
-     * @param Controller_Base $controller
111
-     * @param string          $version
112
-     * @return array
113
-     */
114
-    public function removeHeadersNewInThisVersion(
115
-        $headers,
116
-        Controller_Base $controller,
117
-        $version
118
-    ) {
119
-        if ($this->appliesToVersion($version)) {
120
-            $headers = array_diff_key(
121
-                $headers,
122
-                array_flip(
123
-                    array(
124
-                        Base::HEADER_PREFIX_FOR_WP . 'Total',
125
-                        Base::HEADER_PREFIX_FOR_WP . 'TotalPages',
126
-                        Base::HEADER_PREFIX_FOR_WP . 'PageSize',
127
-                    )
128
-                )
129
-            );
130
-        }
131
-        return $headers;
132
-    }
106
+	/**
107
+	 * Removes the new headers for requests before 4.8.36
108
+	 *
109
+	 * @param array           $headers
110
+	 * @param Controller_Base $controller
111
+	 * @param string          $version
112
+	 * @return array
113
+	 */
114
+	public function removeHeadersNewInThisVersion(
115
+		$headers,
116
+		Controller_Base $controller,
117
+		$version
118
+	) {
119
+		if ($this->appliesToVersion($version)) {
120
+			$headers = array_diff_key(
121
+				$headers,
122
+				array_flip(
123
+					array(
124
+						Base::HEADER_PREFIX_FOR_WP . 'Total',
125
+						Base::HEADER_PREFIX_FOR_WP . 'TotalPages',
126
+						Base::HEADER_PREFIX_FOR_WP . 'PageSize',
127
+					)
128
+				)
129
+			);
130
+		}
131
+		return $headers;
132
+	}
133 133
 
134 134
 
135
-    /**
136
-     * Puts the 'featured_image_url' back in for responses before 4.8.36.
137
-     *
138
-     * @param array           $entity_response_array
139
-     * @param EEM_Base        $model
140
-     * @param string          $request_context
141
-     * @param WP_REST_Request $request
142
-     * @param Read            $controller
143
-     * @return array
144
-     */
145
-    public function addOldFeaturedImagePartOfCptEntities(
146
-        $entity_response_array,
147
-        EEM_Base $model,
148
-        $request_context,
149
-        WP_REST_Request $request,
150
-        Read $controller
151
-    ) {
152
-        if (
153
-            $this->appliesToVersion($controller->getModelVersionInfo()->requestedVersion())
154
-            && $model instanceof \EEM_CPT_Base
155
-        ) {
156
-            $attachment = wp_get_attachment_image_src(
157
-                get_post_thumbnail_id($entity_response_array[ $model->primary_key_name() ]),
158
-                'full'
159
-            );
160
-            $entity_response_array['featured_image_url'] = ! empty($attachment) ? $attachment[0] : null;
161
-        }
162
-        return $entity_response_array;
163
-    }
135
+	/**
136
+	 * Puts the 'featured_image_url' back in for responses before 4.8.36.
137
+	 *
138
+	 * @param array           $entity_response_array
139
+	 * @param EEM_Base        $model
140
+	 * @param string          $request_context
141
+	 * @param WP_REST_Request $request
142
+	 * @param Read            $controller
143
+	 * @return array
144
+	 */
145
+	public function addOldFeaturedImagePartOfCptEntities(
146
+		$entity_response_array,
147
+		EEM_Base $model,
148
+		$request_context,
149
+		WP_REST_Request $request,
150
+		Read $controller
151
+	) {
152
+		if (
153
+			$this->appliesToVersion($controller->getModelVersionInfo()->requestedVersion())
154
+			&& $model instanceof \EEM_CPT_Base
155
+		) {
156
+			$attachment = wp_get_attachment_image_src(
157
+				get_post_thumbnail_id($entity_response_array[ $model->primary_key_name() ]),
158
+				'full'
159
+			);
160
+			$entity_response_array['featured_image_url'] = ! empty($attachment) ? $attachment[0] : null;
161
+		}
162
+		return $entity_response_array;
163
+	}
164 164
 
165 165
 
166
-    /**
167
-     * If the value was infinity, we now use null in our JSON responses,
168
-     * but before this version we used -1.
169
-     *
170
-     * @param mixed                $new_value
171
-     * @param \EE_Model_Field_Base $field_obj
172
-     * @param mixed                $original_value
173
-     * @param string               $requested_value
174
-     * @return mixed
175
-     */
176
-    public function useNegativeOneForInfinityBeforeThisVersion(
177
-        $new_value,
178
-        $field_obj,
179
-        $original_value,
180
-        $requested_value
181
-    ) {
182
-        if (
183
-            $this->appliesToVersion($requested_value)
184
-            && $original_value === EE_INF
185
-        ) {
186
-            // return the old representation of infinity in the JSON
187
-            return -1;
188
-        }
189
-        return $new_value;
190
-    }
166
+	/**
167
+	 * If the value was infinity, we now use null in our JSON responses,
168
+	 * but before this version we used -1.
169
+	 *
170
+	 * @param mixed                $new_value
171
+	 * @param \EE_Model_Field_Base $field_obj
172
+	 * @param mixed                $original_value
173
+	 * @param string               $requested_value
174
+	 * @return mixed
175
+	 */
176
+	public function useNegativeOneForInfinityBeforeThisVersion(
177
+		$new_value,
178
+		$field_obj,
179
+		$original_value,
180
+		$requested_value
181
+	) {
182
+		if (
183
+			$this->appliesToVersion($requested_value)
184
+			&& $original_value === EE_INF
185
+		) {
186
+			// return the old representation of infinity in the JSON
187
+			return -1;
188
+		}
189
+		return $new_value;
190
+	}
191 191
 }
Please login to merge, or discard this patch.
core/domain/entities/RegUrlLink.php 2 patches
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -72,7 +72,7 @@  discard block
 block discarded – undo
72 72
         $base_code = '',
73 73
         $reg_url_link = ''
74 74
     ) {
75
-        if (! empty($reg_url_link) && is_string($reg_url_link)) {
75
+        if ( ! empty($reg_url_link) && is_string($reg_url_link)) {
76 76
             $this->reg_url_link = apply_filters(
77 77
                 'FHEE__\EventEspresso\core\domain\entities\RegUrlLink__construct__reg_url_link',
78 78
                 $reg_url_link,
@@ -94,7 +94,7 @@  discard block
 block discarded – undo
94 94
         }
95 95
         $this->reg_url_link = (string) apply_filters(
96 96
             'FHEE__\EventEspresso\core\domain\entities\RegUrlLink__construct__reg_url_link',
97
-            $reg_count . '-' . md5($base_code . microtime()),
97
+            $reg_count.'-'.md5($base_code.microtime()),
98 98
             $reg_count,
99 99
             $base_code,
100 100
             $reg_url_link
Please login to merge, or discard this patch.
Indentation   +83 added lines, -83 removed lines patch added patch discarded remove patch
@@ -17,97 +17,97 @@
 block discarded – undo
17 17
  */
18 18
 class RegUrlLink
19 19
 {
20
-    /*
20
+	/*
21 21
      * @var string $reg_url_link
22 22
      */
23
-    private $reg_url_link;
23
+	private $reg_url_link;
24 24
 
25 25
 
26
-    /**
27
-     * @param string $reg_url_link
28
-     * @return RegUrlLink
29
-     * @throws InvalidArgumentException
30
-     */
31
-    public static function fromRegUrlLinkString($reg_url_link)
32
-    {
33
-        if (empty($reg_url_link) || ! is_string($reg_url_link)) {
34
-            throw new InvalidArgumentException(
35
-                esc_html__(
36
-                    'You must supply a valid non-empty string to generate a reg_url_link.',
37
-                    'event_espresso'
38
-                )
39
-            );
40
-        }
41
-        return new RegUrlLink(1, '', $reg_url_link);
42
-    }
26
+	/**
27
+	 * @param string $reg_url_link
28
+	 * @return RegUrlLink
29
+	 * @throws InvalidArgumentException
30
+	 */
31
+	public static function fromRegUrlLinkString($reg_url_link)
32
+	{
33
+		if (empty($reg_url_link) || ! is_string($reg_url_link)) {
34
+			throw new InvalidArgumentException(
35
+				esc_html__(
36
+					'You must supply a valid non-empty string to generate a reg_url_link.',
37
+					'event_espresso'
38
+				)
39
+			);
40
+		}
41
+		return new RegUrlLink(1, '', $reg_url_link);
42
+	}
43 43
 
44 44
 
45
-    /**
46
-     * @param EE_Registration $registration
47
-     * @return RegUrlLink
48
-     * @throws EntityNotFoundException
49
-     * @throws EE_Error
50
-     * @throws InvalidArgumentException
51
-     */
52
-    public static function fromRegistration(EE_Registration $registration)
53
-    {
54
-        return new RegUrlLink(
55
-            $registration->count(),
56
-            $registration->ticket_line_item()
57
-        );
58
-    }
45
+	/**
46
+	 * @param EE_Registration $registration
47
+	 * @return RegUrlLink
48
+	 * @throws EntityNotFoundException
49
+	 * @throws EE_Error
50
+	 * @throws InvalidArgumentException
51
+	 */
52
+	public static function fromRegistration(EE_Registration $registration)
53
+	{
54
+		return new RegUrlLink(
55
+			$registration->count(),
56
+			$registration->ticket_line_item()
57
+		);
58
+	}
59 59
 
60 60
 
61
-    /**
62
-     * CreateRegUrlLinkCommand constructor.
63
-     *
64
-     * @param int    $reg_count
65
-     * @param mixed  $base_code
66
-     * @param string $reg_url_link
67
-     * @throws InvalidArgumentException
68
-     */
69
-    public function __construct(
70
-        $reg_count = 1,
71
-        $base_code = '',
72
-        $reg_url_link = ''
73
-    ) {
74
-        if (! empty($reg_url_link) && is_string($reg_url_link)) {
75
-            $this->reg_url_link = apply_filters(
76
-                'FHEE__\EventEspresso\core\domain\entities\RegUrlLink__construct__reg_url_link',
77
-                $reg_url_link,
78
-                $reg_count,
79
-                $base_code,
80
-                $reg_url_link
81
-            );
82
-            return;
83
-        }
84
-        $reg_count = max(1, absint($reg_count));
85
-        $base_code = $base_code instanceof \EE_Line_Item ? $base_code->code() : $base_code;
86
-        if (empty($base_code) || ! is_string($base_code)) {
87
-            throw new InvalidArgumentException(
88
-                esc_html__(
89
-                    'You must supply a valid EE_Line_Item or a non-empty string to generate a reg_url_link.',
90
-                    'event_espresso'
91
-                )
92
-            );
93
-        }
94
-        $this->reg_url_link = (string) apply_filters(
95
-            'FHEE__\EventEspresso\core\domain\entities\RegUrlLink__construct__reg_url_link',
96
-            $reg_count . '-' . md5($base_code . microtime()),
97
-            $reg_count,
98
-            $base_code,
99
-            $reg_url_link
100
-        );
101
-    }
61
+	/**
62
+	 * CreateRegUrlLinkCommand constructor.
63
+	 *
64
+	 * @param int    $reg_count
65
+	 * @param mixed  $base_code
66
+	 * @param string $reg_url_link
67
+	 * @throws InvalidArgumentException
68
+	 */
69
+	public function __construct(
70
+		$reg_count = 1,
71
+		$base_code = '',
72
+		$reg_url_link = ''
73
+	) {
74
+		if (! empty($reg_url_link) && is_string($reg_url_link)) {
75
+			$this->reg_url_link = apply_filters(
76
+				'FHEE__\EventEspresso\core\domain\entities\RegUrlLink__construct__reg_url_link',
77
+				$reg_url_link,
78
+				$reg_count,
79
+				$base_code,
80
+				$reg_url_link
81
+			);
82
+			return;
83
+		}
84
+		$reg_count = max(1, absint($reg_count));
85
+		$base_code = $base_code instanceof \EE_Line_Item ? $base_code->code() : $base_code;
86
+		if (empty($base_code) || ! is_string($base_code)) {
87
+			throw new InvalidArgumentException(
88
+				esc_html__(
89
+					'You must supply a valid EE_Line_Item or a non-empty string to generate a reg_url_link.',
90
+					'event_espresso'
91
+				)
92
+			);
93
+		}
94
+		$this->reg_url_link = (string) apply_filters(
95
+			'FHEE__\EventEspresso\core\domain\entities\RegUrlLink__construct__reg_url_link',
96
+			$reg_count . '-' . md5($base_code . microtime()),
97
+			$reg_count,
98
+			$base_code,
99
+			$reg_url_link
100
+		);
101
+	}
102 102
 
103 103
 
104
-    /**
105
-     * Return the object as a string
106
-     *
107
-     * @return string
108
-     */
109
-    public function __toString()
110
-    {
111
-        return $this->reg_url_link;
112
-    }
104
+	/**
105
+	 * Return the object as a string
106
+	 *
107
+	 * @return string
108
+	 */
109
+	public function __toString()
110
+	{
111
+		return $this->reg_url_link;
112
+	}
113 113
 }
Please login to merge, or discard this patch.
core/domain/entities/GenericAddress.php 1 patch
Indentation   +201 added lines, -201 removed lines patch added patch discarded remove patch
@@ -12,205 +12,205 @@
 block discarded – undo
12 12
  */
13 13
 class GenericAddress implements \EEI_Address
14 14
 {
15
-    // phpcs:disable PSR2.Classes.PropertyDeclaration.Underscore
16
-    private $_address = '';
17
-
18
-    private $_address2 = '';
19
-
20
-    private $_city = '';
21
-
22
-    private $_state_ID = '';
23
-
24
-    private $_state_obj = '';
25
-
26
-    private $_zip = '';
27
-
28
-    private $_country_ID = '';
29
-
30
-    private $_country_obj = '';
31
-    // phpcs:enable
32
-
33
-    // phpcs:disable PSR2.Methods.MethodDeclaration.Underscore
34
-    /**
35
-     * @param string               $address
36
-     * @param string               $address2
37
-     * @param string               $city
38
-     * @param \EE_State | string   $state
39
-     * @param string               $zip
40
-     * @param \EE_Country | string $country
41
-     * @return GenericAddress
42
-     */
43
-    public function __construct($address, $address2, $city, $state, $zip, $country)
44
-    {
45
-        $this->_address = $address;
46
-        $this->_address2 = $address2;
47
-        $this->_city = $city;
48
-        if ($state instanceof \EE_State) {
49
-            $this->_state_obj = $state;
50
-        } else {
51
-            $this->_state_ID = $state;
52
-            $this->_state_obj = $this->_get_state_obj();
53
-        }
54
-        $this->_zip = $zip;
55
-        if ($country instanceof \EE_Country) {
56
-            $this->_country_obj = $country;
57
-        } else {
58
-            $this->_country_ID = $country;
59
-            $this->_country_obj = $this->_get_country_obj();
60
-        }
61
-    }
62
-
63
-
64
-    /**
65
-     * @return string
66
-     */
67
-    public function address()
68
-    {
69
-        return $this->_address;
70
-    }
71
-
72
-
73
-    /**
74
-     * @return string
75
-     */
76
-    public function address2()
77
-    {
78
-        return $this->_address2;
79
-    }
80
-
81
-
82
-    /**
83
-     * @return string
84
-     */
85
-    public function city()
86
-    {
87
-        return $this->_city;
88
-    }
89
-
90
-    // phpcs:disable PSR1.Methods.CamelCapsMethodName.NotCamelCaps
91
-
92
-    /**
93
-     * @return \EE_State
94
-     */
95
-    private function _get_state_obj()
96
-    {
97
-        return $this->_state_obj instanceof \EE_State
98
-            ? $this->_state_obj
99
-            : \EE_Registry::instance()->load_model('State')->get_one_by_ID($this->_state_ID);
100
-    }
101
-
102
-
103
-    /**
104
-     * @return string
105
-     */
106
-    public function state_ID()
107
-    {
108
-        return $this->_state_ID;
109
-    }
110
-
111
-
112
-    /**
113
-     * @return string
114
-     */
115
-    public function state_abbrev()
116
-    {
117
-        return $this->state_obj() instanceof \EE_State
118
-            ? $this->state_obj()->abbrev()
119
-            : '';
120
-    }
121
-
122
-
123
-    /**
124
-     * @return string
125
-     */
126
-    public function state_name()
127
-    {
128
-        return $this->state_obj() instanceof \EE_State
129
-            ? $this->state_obj()->name()
130
-            : '';
131
-    }
132
-
133
-
134
-    /**
135
-     * @return \EE_State
136
-     */
137
-    public function state_obj()
138
-    {
139
-        return $this->_state_obj;
140
-    }
141
-
142
-
143
-    /**
144
-     * @return string
145
-     */
146
-    public function state()
147
-    {
148
-        if (apply_filters('FHEE__EEI_Address__state__use_abbreviation', true, $this->state_obj())) {
149
-            return $this->state_obj()->abbrev();
150
-        } else {
151
-            return $this->state_name();
152
-        }
153
-    }
154
-
155
-
156
-    /**
157
-     * @return \EE_Country
158
-     */
159
-    private function _get_country_obj()
160
-    {
161
-        return $this->_country_obj instanceof \EE_Country
162
-            ? $this->_country_obj
163
-            : \EE_Registry::instance()->load_model('Country')->get_one_by_ID($this->_country_ID);
164
-    }
165
-
166
-
167
-    /**
168
-     * @return string
169
-     */
170
-    public function country_ID()
171
-    {
172
-        return $this->_country_ID;
173
-    }
174
-
175
-
176
-    /**
177
-     * @return string
178
-     */
179
-    public function country_name()
180
-    {
181
-        return $this->country_obj() instanceof \EE_Country
182
-            ? $this->country_obj()->name()
183
-            : '';
184
-    }
185
-
186
-
187
-    /**
188
-     * @return \EE_Country
189
-     */
190
-    public function country_obj()
191
-    {
192
-        return $this->_country_obj;
193
-    }
194
-
195
-
196
-    /**
197
-     * @return string
198
-     */
199
-    public function country()
200
-    {
201
-        if (apply_filters('FHEE__EEI_Address__country__use_abbreviation', true, $this->country_obj())) {
202
-            return $this->country_ID();
203
-        } else {
204
-            return $this->country_name();
205
-        }
206
-    }
207
-
208
-
209
-    /**
210
-     * @return string
211
-     */
212
-    public function zip()
213
-    {
214
-        return $this->_zip;
215
-    }
15
+	// phpcs:disable PSR2.Classes.PropertyDeclaration.Underscore
16
+	private $_address = '';
17
+
18
+	private $_address2 = '';
19
+
20
+	private $_city = '';
21
+
22
+	private $_state_ID = '';
23
+
24
+	private $_state_obj = '';
25
+
26
+	private $_zip = '';
27
+
28
+	private $_country_ID = '';
29
+
30
+	private $_country_obj = '';
31
+	// phpcs:enable
32
+
33
+	// phpcs:disable PSR2.Methods.MethodDeclaration.Underscore
34
+	/**
35
+	 * @param string               $address
36
+	 * @param string               $address2
37
+	 * @param string               $city
38
+	 * @param \EE_State | string   $state
39
+	 * @param string               $zip
40
+	 * @param \EE_Country | string $country
41
+	 * @return GenericAddress
42
+	 */
43
+	public function __construct($address, $address2, $city, $state, $zip, $country)
44
+	{
45
+		$this->_address = $address;
46
+		$this->_address2 = $address2;
47
+		$this->_city = $city;
48
+		if ($state instanceof \EE_State) {
49
+			$this->_state_obj = $state;
50
+		} else {
51
+			$this->_state_ID = $state;
52
+			$this->_state_obj = $this->_get_state_obj();
53
+		}
54
+		$this->_zip = $zip;
55
+		if ($country instanceof \EE_Country) {
56
+			$this->_country_obj = $country;
57
+		} else {
58
+			$this->_country_ID = $country;
59
+			$this->_country_obj = $this->_get_country_obj();
60
+		}
61
+	}
62
+
63
+
64
+	/**
65
+	 * @return string
66
+	 */
67
+	public function address()
68
+	{
69
+		return $this->_address;
70
+	}
71
+
72
+
73
+	/**
74
+	 * @return string
75
+	 */
76
+	public function address2()
77
+	{
78
+		return $this->_address2;
79
+	}
80
+
81
+
82
+	/**
83
+	 * @return string
84
+	 */
85
+	public function city()
86
+	{
87
+		return $this->_city;
88
+	}
89
+
90
+	// phpcs:disable PSR1.Methods.CamelCapsMethodName.NotCamelCaps
91
+
92
+	/**
93
+	 * @return \EE_State
94
+	 */
95
+	private function _get_state_obj()
96
+	{
97
+		return $this->_state_obj instanceof \EE_State
98
+			? $this->_state_obj
99
+			: \EE_Registry::instance()->load_model('State')->get_one_by_ID($this->_state_ID);
100
+	}
101
+
102
+
103
+	/**
104
+	 * @return string
105
+	 */
106
+	public function state_ID()
107
+	{
108
+		return $this->_state_ID;
109
+	}
110
+
111
+
112
+	/**
113
+	 * @return string
114
+	 */
115
+	public function state_abbrev()
116
+	{
117
+		return $this->state_obj() instanceof \EE_State
118
+			? $this->state_obj()->abbrev()
119
+			: '';
120
+	}
121
+
122
+
123
+	/**
124
+	 * @return string
125
+	 */
126
+	public function state_name()
127
+	{
128
+		return $this->state_obj() instanceof \EE_State
129
+			? $this->state_obj()->name()
130
+			: '';
131
+	}
132
+
133
+
134
+	/**
135
+	 * @return \EE_State
136
+	 */
137
+	public function state_obj()
138
+	{
139
+		return $this->_state_obj;
140
+	}
141
+
142
+
143
+	/**
144
+	 * @return string
145
+	 */
146
+	public function state()
147
+	{
148
+		if (apply_filters('FHEE__EEI_Address__state__use_abbreviation', true, $this->state_obj())) {
149
+			return $this->state_obj()->abbrev();
150
+		} else {
151
+			return $this->state_name();
152
+		}
153
+	}
154
+
155
+
156
+	/**
157
+	 * @return \EE_Country
158
+	 */
159
+	private function _get_country_obj()
160
+	{
161
+		return $this->_country_obj instanceof \EE_Country
162
+			? $this->_country_obj
163
+			: \EE_Registry::instance()->load_model('Country')->get_one_by_ID($this->_country_ID);
164
+	}
165
+
166
+
167
+	/**
168
+	 * @return string
169
+	 */
170
+	public function country_ID()
171
+	{
172
+		return $this->_country_ID;
173
+	}
174
+
175
+
176
+	/**
177
+	 * @return string
178
+	 */
179
+	public function country_name()
180
+	{
181
+		return $this->country_obj() instanceof \EE_Country
182
+			? $this->country_obj()->name()
183
+			: '';
184
+	}
185
+
186
+
187
+	/**
188
+	 * @return \EE_Country
189
+	 */
190
+	public function country_obj()
191
+	{
192
+		return $this->_country_obj;
193
+	}
194
+
195
+
196
+	/**
197
+	 * @return string
198
+	 */
199
+	public function country()
200
+	{
201
+		if (apply_filters('FHEE__EEI_Address__country__use_abbreviation', true, $this->country_obj())) {
202
+			return $this->country_ID();
203
+		} else {
204
+			return $this->country_name();
205
+		}
206
+	}
207
+
208
+
209
+	/**
210
+	 * @return string
211
+	 */
212
+	public function zip()
213
+	{
214
+		return $this->_zip;
215
+	}
216 216
 }
Please login to merge, or discard this patch.
core/domain/services/wp_queries/EventListQuery.php 2 patches
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -91,7 +91,7 @@  discard block
 block discarded – undo
91 91
                 // set the property value
92 92
                 $this->{$property} = $value;
93 93
                 // then remove it from the array of args that will later be passed to WP_Query()
94
-                unset($args[ $property ]);
94
+                unset($args[$property]);
95 95
             }
96 96
         }
97 97
         return $args;
@@ -188,7 +188,7 @@  discard block
 block discarded – undo
188 188
      */
189 189
     public function event_list_title($event_list_title = '')
190 190
     {
191
-        if (! empty($this->title)) {
191
+        if ( ! empty($this->title)) {
192 192
             return $this->title;
193 193
         }
194 194
         return $event_list_title;
Please login to merge, or discard this patch.
Indentation   +194 added lines, -194 removed lines patch added patch discarded remove patch
@@ -15,198 +15,198 @@
 block discarded – undo
15 15
  */
16 16
 class EventListQuery extends WP_Query
17 17
 {
18
-    /**
19
-     * @var string $title
20
-     */
21
-    private $title;
22
-
23
-    /**
24
-     * @var integer $limit
25
-     */
26
-    private $limit = 10;
27
-
28
-    /**
29
-     * @var string $css_class
30
-     */
31
-    private $css_class;
32
-
33
-    /**
34
-     * @var boolean $show_expired
35
-     */
36
-    private $show_expired = false;
37
-
38
-    /**
39
-     * @var string $month
40
-     */
41
-    private $month;
42
-
43
-    /**
44
-     * @var string $category_slug
45
-     */
46
-    private $category_slug;
47
-
48
-    /**
49
-     * @var string $order_by
50
-     */
51
-    private $order_by;
52
-
53
-    /**
54
-     * @var string $sort
55
-     */
56
-    private $sort;
57
-
58
-    /**
59
-     * @var boolean $show_title
60
-     */
61
-    private $show_title = true;
62
-
63
-
64
-    /**
65
-     * EE_Event_List_Query Constructor     *
66
-     *
67
-     * @param array $args
68
-     */
69
-    public function __construct($args = array())
70
-    {
71
-        $args = $this->parseArgs((array) $args);
72
-        $this->setupEventQueryHelper();
73
-        $this->setupFilters();
74
-        $args = $this->getQueryArgs($args);
75
-        // run the query
76
-        parent::__construct($args);
77
-    }
78
-
79
-
80
-    /**
81
-     * @param array $args
82
-     * @return array
83
-     */
84
-    private function parseArgs(array $args)
85
-    {
86
-        // incoming args could be a mix of WP query args + EE shortcode args
87
-        foreach ($args as $property => $value) {
88
-            // if the arg is a property of this class, then it's an EE shortcode arg
89
-            if (property_exists($this, $property) && ! property_exists('WP_Query', $property)) {
90
-                // set the property value
91
-                $this->{$property} = $value;
92
-                // then remove it from the array of args that will later be passed to WP_Query()
93
-                unset($args[ $property ]);
94
-            }
95
-        }
96
-        return $args;
97
-    }
98
-
99
-
100
-    private function setupEventQueryHelper()
101
-    {
102
-        // add query filters
103
-        EEH_Event_Query::add_query_filters();
104
-        // set params that will get used by the filters
105
-        EEH_Event_Query::set_query_params(
106
-            $this->month,
107
-            $this->category_slug,
108
-            $this->show_expired,
109
-            $this->order_by,
110
-            $this->sort
111
-        );
112
-    }
113
-
114
-
115
-    private function setupFilters()
116
-    {
117
-        // first off, let's remove any filters from previous queries
118
-        remove_filter(
119
-            'FHEE__archive_espresso_events_template__show_header',
120
-            array($this, 'show_event_list_title')
121
-        );
122
-        remove_filter(
123
-            'FHEE__archive_espresso_events_template__upcoming_events_h1',
124
-            array($this, 'event_list_title')
125
-        );
126
-        remove_all_filters('FHEE__content_espresso_events__event_class');
127
-        // Event List Title ?
128
-        add_filter(
129
-            'FHEE__archive_espresso_events_template__show_header',
130
-            array($this, 'show_event_list_title')
131
-        );
132
-        add_filter(
133
-            'FHEE__archive_espresso_events_template__upcoming_events_h1',
134
-            array($this, 'event_list_title'),
135
-            10,
136
-            1
137
-        );
138
-        // add the css class
139
-        add_filter(
140
-            'FHEE__content_espresso_events__event_class',
141
-            array($this, 'event_list_css'),
142
-            10,
143
-            1
144
-        );
145
-    }
146
-
147
-
148
-    private function getQueryArgs(array $args)
149
-    {
150
-        // the current "page" we are viewing
151
-        $paged = max(1, get_query_var('paged'));
152
-        // Force these args
153
-        return array_merge(
154
-            $args,
155
-            array(
156
-                'post_type'              => 'espresso_events',
157
-                'posts_per_page'         => $this->limit,
158
-                'update_post_term_cache' => false,
159
-                'update_post_meta_cache' => false,
160
-                'paged'                  => $paged,
161
-                'offset'                 => ($paged - 1) * $this->limit,
162
-            )
163
-        );
164
-    }
165
-
166
-    // phpcs:disable PSR1.Methods.CamelCapsMethodName.NotCamelCaps
167
-
168
-    /**
169
-     * show_event_list_title
170
-     *
171
-     * @return boolean
172
-     */
173
-    public function show_event_list_title()
174
-    {
175
-        return filter_var(
176
-            $this->show_title,
177
-            FILTER_VALIDATE_BOOLEAN
178
-        );
179
-    }
180
-
181
-
182
-    /**
183
-     * callback for FHEE__archive_espresso_events_template__upcoming_events_h1 filter
184
-     *
185
-     * @param string $event_list_title
186
-     * @return    string
187
-     */
188
-    public function event_list_title($event_list_title = '')
189
-    {
190
-        if (! empty($this->title)) {
191
-            return $this->title;
192
-        }
193
-        return $event_list_title;
194
-    }
195
-
196
-
197
-    /**
198
-     * callback for FHEE__content_espresso_events__event_class filter
199
-     *
200
-     * @param string $event_list_css
201
-     * @return string
202
-     */
203
-    public function event_list_css($event_list_css = '')
204
-    {
205
-        $event_list_css .= ! empty($event_list_css) ? ' ' : '';
206
-        $event_list_css .= ! empty($this->css_class) ? $this->css_class : '';
207
-        $event_list_css .= ! empty($event_list_css) ? ' ' : '';
208
-        $event_list_css .= ! empty($this->category_slug) ? $this->category_slug : '';
209
-        return $event_list_css;
210
-    }
211
-    // phpcs:enable
18
+	/**
19
+	 * @var string $title
20
+	 */
21
+	private $title;
22
+
23
+	/**
24
+	 * @var integer $limit
25
+	 */
26
+	private $limit = 10;
27
+
28
+	/**
29
+	 * @var string $css_class
30
+	 */
31
+	private $css_class;
32
+
33
+	/**
34
+	 * @var boolean $show_expired
35
+	 */
36
+	private $show_expired = false;
37
+
38
+	/**
39
+	 * @var string $month
40
+	 */
41
+	private $month;
42
+
43
+	/**
44
+	 * @var string $category_slug
45
+	 */
46
+	private $category_slug;
47
+
48
+	/**
49
+	 * @var string $order_by
50
+	 */
51
+	private $order_by;
52
+
53
+	/**
54
+	 * @var string $sort
55
+	 */
56
+	private $sort;
57
+
58
+	/**
59
+	 * @var boolean $show_title
60
+	 */
61
+	private $show_title = true;
62
+
63
+
64
+	/**
65
+	 * EE_Event_List_Query Constructor     *
66
+	 *
67
+	 * @param array $args
68
+	 */
69
+	public function __construct($args = array())
70
+	{
71
+		$args = $this->parseArgs((array) $args);
72
+		$this->setupEventQueryHelper();
73
+		$this->setupFilters();
74
+		$args = $this->getQueryArgs($args);
75
+		// run the query
76
+		parent::__construct($args);
77
+	}
78
+
79
+
80
+	/**
81
+	 * @param array $args
82
+	 * @return array
83
+	 */
84
+	private function parseArgs(array $args)
85
+	{
86
+		// incoming args could be a mix of WP query args + EE shortcode args
87
+		foreach ($args as $property => $value) {
88
+			// if the arg is a property of this class, then it's an EE shortcode arg
89
+			if (property_exists($this, $property) && ! property_exists('WP_Query', $property)) {
90
+				// set the property value
91
+				$this->{$property} = $value;
92
+				// then remove it from the array of args that will later be passed to WP_Query()
93
+				unset($args[ $property ]);
94
+			}
95
+		}
96
+		return $args;
97
+	}
98
+
99
+
100
+	private function setupEventQueryHelper()
101
+	{
102
+		// add query filters
103
+		EEH_Event_Query::add_query_filters();
104
+		// set params that will get used by the filters
105
+		EEH_Event_Query::set_query_params(
106
+			$this->month,
107
+			$this->category_slug,
108
+			$this->show_expired,
109
+			$this->order_by,
110
+			$this->sort
111
+		);
112
+	}
113
+
114
+
115
+	private function setupFilters()
116
+	{
117
+		// first off, let's remove any filters from previous queries
118
+		remove_filter(
119
+			'FHEE__archive_espresso_events_template__show_header',
120
+			array($this, 'show_event_list_title')
121
+		);
122
+		remove_filter(
123
+			'FHEE__archive_espresso_events_template__upcoming_events_h1',
124
+			array($this, 'event_list_title')
125
+		);
126
+		remove_all_filters('FHEE__content_espresso_events__event_class');
127
+		// Event List Title ?
128
+		add_filter(
129
+			'FHEE__archive_espresso_events_template__show_header',
130
+			array($this, 'show_event_list_title')
131
+		);
132
+		add_filter(
133
+			'FHEE__archive_espresso_events_template__upcoming_events_h1',
134
+			array($this, 'event_list_title'),
135
+			10,
136
+			1
137
+		);
138
+		// add the css class
139
+		add_filter(
140
+			'FHEE__content_espresso_events__event_class',
141
+			array($this, 'event_list_css'),
142
+			10,
143
+			1
144
+		);
145
+	}
146
+
147
+
148
+	private function getQueryArgs(array $args)
149
+	{
150
+		// the current "page" we are viewing
151
+		$paged = max(1, get_query_var('paged'));
152
+		// Force these args
153
+		return array_merge(
154
+			$args,
155
+			array(
156
+				'post_type'              => 'espresso_events',
157
+				'posts_per_page'         => $this->limit,
158
+				'update_post_term_cache' => false,
159
+				'update_post_meta_cache' => false,
160
+				'paged'                  => $paged,
161
+				'offset'                 => ($paged - 1) * $this->limit,
162
+			)
163
+		);
164
+	}
165
+
166
+	// phpcs:disable PSR1.Methods.CamelCapsMethodName.NotCamelCaps
167
+
168
+	/**
169
+	 * show_event_list_title
170
+	 *
171
+	 * @return boolean
172
+	 */
173
+	public function show_event_list_title()
174
+	{
175
+		return filter_var(
176
+			$this->show_title,
177
+			FILTER_VALIDATE_BOOLEAN
178
+		);
179
+	}
180
+
181
+
182
+	/**
183
+	 * callback for FHEE__archive_espresso_events_template__upcoming_events_h1 filter
184
+	 *
185
+	 * @param string $event_list_title
186
+	 * @return    string
187
+	 */
188
+	public function event_list_title($event_list_title = '')
189
+	{
190
+		if (! empty($this->title)) {
191
+			return $this->title;
192
+		}
193
+		return $event_list_title;
194
+	}
195
+
196
+
197
+	/**
198
+	 * callback for FHEE__content_espresso_events__event_class filter
199
+	 *
200
+	 * @param string $event_list_css
201
+	 * @return string
202
+	 */
203
+	public function event_list_css($event_list_css = '')
204
+	{
205
+		$event_list_css .= ! empty($event_list_css) ? ' ' : '';
206
+		$event_list_css .= ! empty($this->css_class) ? $this->css_class : '';
207
+		$event_list_css .= ! empty($event_list_css) ? ' ' : '';
208
+		$event_list_css .= ! empty($this->category_slug) ? $this->category_slug : '';
209
+		return $event_list_css;
210
+	}
211
+	// phpcs:enable
212 212
 }
Please login to merge, or discard this patch.
core/domain/services/validation/email/strategies/Basic.php 2 patches
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -22,7 +22,7 @@  discard block
 block discarded – undo
22 22
      */
23 23
     public function validate($email_address)
24 24
     {
25
-        if (! preg_match('/^.+\@\S+$/', $email_address)) {
25
+        if ( ! preg_match('/^.+\@\S+$/', $email_address)) {
26 26
             // email not in correct {string}@{string} format
27 27
             throw new EmailValidationException(
28 28
                 esc_html__('Email does not have the required @ sign.', 'event_espresso')
@@ -49,7 +49,7 @@  discard block
 block discarded – undo
49 49
                 esc_html__('Email local-part (before the @) must not begin with a period.', 'event_espresso')
50 50
             );
51 51
         }
52
-        if ($local[ $localLen - 1 ] === '.') {
52
+        if ($local[$localLen - 1] === '.') {
53 53
             // local part starts or ends with '.'
54 54
             throw new EmailValidationException(
55 55
                 esc_html__('Email local-part (before the @) must not end with a period.', 'event_espresso')
Please login to merge, or discard this patch.
Indentation   +102 added lines, -102 removed lines patch added patch discarded remove patch
@@ -14,112 +14,112 @@
 block discarded – undo
14 14
  */
15 15
 class Basic implements EmailValidatorInterface
16 16
 {
17
-    /**
18
-     * @param string $email_address
19
-     * @return bool
20
-     * @throws EmailValidationException
21
-     */
22
-    public function validate($email_address)
23
-    {
24
-        if (! preg_match('/^.+\@\S+$/', $email_address)) {
25
-            // email not in correct {string}@{string} format
26
-            throw new EmailValidationException(
27
-                esc_html__('Email does not have the required @ sign.', 'event_espresso')
28
-            );
29
-        }
30
-        $atIndex = $this->getAtIndex($email_address);
31
-        $local = $this->getLocalPartOfEmail($email_address, $atIndex);
32
-        $localLen = strlen($local);
33
-        if ($localLen < 1) {
34
-            // no local part
35
-            throw new EmailValidationException(
36
-                esc_html__('Email local-part (before the @) is required.', 'event_espresso')
37
-            );
38
-        }
39
-        if ($localLen > 64) {
40
-            // local part length exceeded
41
-            throw new EmailValidationException(
42
-                esc_html__('Email local-part (before the @) is too long.', 'event_espresso')
43
-            );
44
-        }
45
-        if ($local[0] === '.') {
46
-            // local part starts with '.'
47
-            throw new EmailValidationException(
48
-                esc_html__('Email local-part (before the @) must not begin with a period.', 'event_espresso')
49
-            );
50
-        }
51
-        if ($local[ $localLen - 1 ] === '.') {
52
-            // local part starts or ends with '.'
53
-            throw new EmailValidationException(
54
-                esc_html__('Email local-part (before the @) must not end with a period.', 'event_espresso')
55
-            );
56
-        }
57
-        if (preg_match('/\\.\\./', $local)) {
58
-            // local part has two consecutive dots
59
-            throw new EmailValidationException(
60
-                esc_html__(
61
-                    'Email local-part (before the @) must not have two consecutive periods.',
62
-                    'event_espresso'
63
-                )
64
-            );
65
-        }
66
-        $domain = $this->getDomainPartOfEmail($email_address, $atIndex);
67
-        $domainLen = strlen($domain);
68
-        if ($domainLen < 1) {
69
-            throw new EmailValidationException(
70
-                esc_html__('Email domain (after the @) is required.', 'event_espresso')
71
-            );
72
-        }
73
-        if ($domainLen > 255) {
74
-            // domain part length exceeded
75
-            throw new EmailValidationException(
76
-                esc_html__('Email domain (after the @) is too long.', 'event_espresso')
77
-            );
78
-        }
79
-        if (preg_match('/\\.\\./', $domain)) {
80
-            // domain part has two consecutive dots
81
-            throw new EmailValidationException(
82
-                esc_html__('Email domain (after the @) must not have two consecutive periods.', 'event_espresso')
83
-            );
84
-        }
85
-        return true;
86
-    }
17
+	/**
18
+	 * @param string $email_address
19
+	 * @return bool
20
+	 * @throws EmailValidationException
21
+	 */
22
+	public function validate($email_address)
23
+	{
24
+		if (! preg_match('/^.+\@\S+$/', $email_address)) {
25
+			// email not in correct {string}@{string} format
26
+			throw new EmailValidationException(
27
+				esc_html__('Email does not have the required @ sign.', 'event_espresso')
28
+			);
29
+		}
30
+		$atIndex = $this->getAtIndex($email_address);
31
+		$local = $this->getLocalPartOfEmail($email_address, $atIndex);
32
+		$localLen = strlen($local);
33
+		if ($localLen < 1) {
34
+			// no local part
35
+			throw new EmailValidationException(
36
+				esc_html__('Email local-part (before the @) is required.', 'event_espresso')
37
+			);
38
+		}
39
+		if ($localLen > 64) {
40
+			// local part length exceeded
41
+			throw new EmailValidationException(
42
+				esc_html__('Email local-part (before the @) is too long.', 'event_espresso')
43
+			);
44
+		}
45
+		if ($local[0] === '.') {
46
+			// local part starts with '.'
47
+			throw new EmailValidationException(
48
+				esc_html__('Email local-part (before the @) must not begin with a period.', 'event_espresso')
49
+			);
50
+		}
51
+		if ($local[ $localLen - 1 ] === '.') {
52
+			// local part starts or ends with '.'
53
+			throw new EmailValidationException(
54
+				esc_html__('Email local-part (before the @) must not end with a period.', 'event_espresso')
55
+			);
56
+		}
57
+		if (preg_match('/\\.\\./', $local)) {
58
+			// local part has two consecutive dots
59
+			throw new EmailValidationException(
60
+				esc_html__(
61
+					'Email local-part (before the @) must not have two consecutive periods.',
62
+					'event_espresso'
63
+				)
64
+			);
65
+		}
66
+		$domain = $this->getDomainPartOfEmail($email_address, $atIndex);
67
+		$domainLen = strlen($domain);
68
+		if ($domainLen < 1) {
69
+			throw new EmailValidationException(
70
+				esc_html__('Email domain (after the @) is required.', 'event_espresso')
71
+			);
72
+		}
73
+		if ($domainLen > 255) {
74
+			// domain part length exceeded
75
+			throw new EmailValidationException(
76
+				esc_html__('Email domain (after the @) is too long.', 'event_espresso')
77
+			);
78
+		}
79
+		if (preg_match('/\\.\\./', $domain)) {
80
+			// domain part has two consecutive dots
81
+			throw new EmailValidationException(
82
+				esc_html__('Email domain (after the @) must not have two consecutive periods.', 'event_espresso')
83
+			);
84
+		}
85
+		return true;
86
+	}
87 87
 
88 88
 
89
-    /**
90
-     * returns the location of the @ symbol
91
-     *
92
-     * @param string $email_address
93
-     * @return bool|string
94
-     */
95
-    protected function getAtIndex($email_address)
96
-    {
97
-        return strrpos($email_address, '@');
98
-    }
89
+	/**
90
+	 * returns the location of the @ symbol
91
+	 *
92
+	 * @param string $email_address
93
+	 * @return bool|string
94
+	 */
95
+	protected function getAtIndex($email_address)
96
+	{
97
+		return strrpos($email_address, '@');
98
+	}
99 99
 
100 100
 
101
-    /**
102
-     * Gets the local part of the email
103
-     *
104
-     * @param string   $email_address
105
-     * @param bool|int $atIndex
106
-     * @return bool|string
107
-     */
108
-    protected function getLocalPartOfEmail($email_address, $atIndex)
109
-    {
110
-        return substr($email_address, 0, $atIndex);
111
-    }
101
+	/**
102
+	 * Gets the local part of the email
103
+	 *
104
+	 * @param string   $email_address
105
+	 * @param bool|int $atIndex
106
+	 * @return bool|string
107
+	 */
108
+	protected function getLocalPartOfEmail($email_address, $atIndex)
109
+	{
110
+		return substr($email_address, 0, $atIndex);
111
+	}
112 112
 
113 113
 
114
-    /**
115
-     * Gets the domain part of the email
116
-     *
117
-     * @param string   $email_address
118
-     * @param bool|int $atIndex
119
-     * @return bool|string
120
-     */
121
-    protected function getDomainPartOfEmail($email_address, $atIndex)
122
-    {
123
-        return substr($email_address, $atIndex + 1);
124
-    }
114
+	/**
115
+	 * Gets the domain part of the email
116
+	 *
117
+	 * @param string   $email_address
118
+	 * @param bool|int $atIndex
119
+	 * @return bool|string
120
+	 */
121
+	protected function getDomainPartOfEmail($email_address, $atIndex)
122
+	{
123
+		return substr($email_address, $atIndex + 1);
124
+	}
125 125
 }
Please login to merge, or discard this patch.