@@ -120,8 +120,7 @@ |
||
120 | 120 | if($this->isList()) |
121 | 121 | { |
122 | 122 | $command = $this->renderListCommand($searchTerm); |
123 | - } |
|
124 | - else |
|
123 | + } else |
|
125 | 124 | { |
126 | 125 | $command = $this->renderRegularCommand($searchTerm); |
127 | 126 | } |
@@ -225,27 +225,27 @@ |
||
225 | 225 | * @return array<string,string> |
226 | 226 | * @throws Mailcode_Exception |
227 | 227 | */ |
228 | - private function parseVarName() : array |
|
229 | - { |
|
230 | - $tokens = explode('.', undollarize($this->variable->getFullName())); |
|
231 | - |
|
232 | - if(count($tokens) === 2) |
|
233 | - { |
|
234 | - return array( |
|
235 | - 'path' => $tokens[0], |
|
236 | - 'name' => $tokens[1] |
|
237 | - ); |
|
238 | - } |
|
239 | - |
|
240 | - throw new Mailcode_Exception( |
|
241 | - 'Invalid variable name for a list property.', |
|
242 | - sprintf( |
|
243 | - 'Exactly 2 parts are required, variable [%s] has [%s].', |
|
244 | - $this->variable->getFullName(), |
|
245 | - count($tokens) |
|
246 | - ), |
|
247 | - self::ERROR_INVALID_LIST_VARIABLE_NAME |
|
248 | - ); |
|
249 | - } |
|
228 | + private function parseVarName() : array |
|
229 | + { |
|
230 | + $tokens = explode('.', undollarize($this->variable->getFullName())); |
|
231 | + |
|
232 | + if(count($tokens) === 2) |
|
233 | + { |
|
234 | + return array( |
|
235 | + 'path' => $tokens[0], |
|
236 | + 'name' => $tokens[1] |
|
237 | + ); |
|
238 | + } |
|
239 | + |
|
240 | + throw new Mailcode_Exception( |
|
241 | + 'Invalid variable name for a list property.', |
|
242 | + sprintf( |
|
243 | + 'Exactly 2 parts are required, variable [%s] has [%s].', |
|
244 | + $this->variable->getFullName(), |
|
245 | + count($tokens) |
|
246 | + ), |
|
247 | + self::ERROR_INVALID_LIST_VARIABLE_NAME |
|
248 | + ); |
|
249 | + } |
|
250 | 250 | } |
251 | 251 |
@@ -84,7 +84,7 @@ discard block |
||
84 | 84 | */ |
85 | 85 | public function getSign() : string |
86 | 86 | { |
87 | - if($this->isNotContains()) |
|
87 | + if ($this->isNotContains()) |
|
88 | 88 | { |
89 | 89 | return '!'; |
90 | 90 | } |
@@ -101,7 +101,7 @@ discard block |
||
101 | 101 | */ |
102 | 102 | public function getConnector() |
103 | 103 | { |
104 | - if($this->isNotContains()) |
|
104 | + if ($this->isNotContains()) |
|
105 | 105 | { |
106 | 106 | return '&&'; |
107 | 107 | } |
@@ -117,7 +117,7 @@ discard block |
||
117 | 117 | { |
118 | 118 | $parts = array(); |
119 | 119 | |
120 | - foreach($this->searchTerms as $token) |
|
120 | + foreach ($this->searchTerms as $token) |
|
121 | 121 | { |
122 | 122 | $parts[] = $this->renderCommand($token); |
123 | 123 | } |
@@ -132,7 +132,7 @@ discard block |
||
132 | 132 | */ |
133 | 133 | private function renderCommand(Mailcode_Parser_Statement_Tokenizer_Token_StringLiteral $searchTerm) : string |
134 | 134 | { |
135 | - if($this->isList()) |
|
135 | + if ($this->isList()) |
|
136 | 136 | { |
137 | 137 | $command = $this->renderListCommand($searchTerm); |
138 | 138 | } |
@@ -173,14 +173,14 @@ discard block |
||
173 | 173 | private function renderRegex(Mailcode_Parser_Statement_Tokenizer_Token_StringLiteral $searchTerm) : string |
174 | 174 | { |
175 | 175 | $opts = 's'; |
176 | - if($this->caseSensitive) |
|
176 | + if ($this->caseSensitive) |
|
177 | 177 | { |
178 | 178 | $opts = 'is'; |
179 | 179 | } |
180 | 180 | |
181 | 181 | $filtered = trim($searchTerm->getNormalized(), '"'); |
182 | 182 | |
183 | - if(!$this->regexEnabled) |
|
183 | + if (!$this->regexEnabled) |
|
184 | 184 | { |
185 | 185 | $filtered = $this->translator->filterRegexString($filtered); |
186 | 186 | $filtered = $this->addWildcards($filtered); |
@@ -203,17 +203,17 @@ discard block |
||
203 | 203 | */ |
204 | 204 | private function addWildcards(string $searchTerm) : string |
205 | 205 | { |
206 | - if($this->containsType === 'list-begins-with') |
|
206 | + if ($this->containsType === 'list-begins-with') |
|
207 | 207 | { |
208 | 208 | return $searchTerm.'.*'; |
209 | 209 | } |
210 | 210 | |
211 | - if($this->containsType === 'list-ends-with') |
|
211 | + if ($this->containsType === 'list-ends-with') |
|
212 | 212 | { |
213 | 213 | return '.*'.$searchTerm; |
214 | 214 | } |
215 | 215 | |
216 | - if($this->containsType === 'list-equals') |
|
216 | + if ($this->containsType === 'list-equals') |
|
217 | 217 | { |
218 | 218 | return '\A'.$searchTerm.'\Z'; |
219 | 219 | } |
@@ -229,7 +229,7 @@ discard block |
||
229 | 229 | { |
230 | 230 | $tokens = explode('.', undollarize($this->variable->getFullName())); |
231 | 231 | |
232 | - if(count($tokens) === 2) |
|
232 | + if (count($tokens) === 2) |
|
233 | 233 | { |
234 | 234 | return array( |
235 | 235 | 'path' => $tokens[0], |
@@ -51,8 +51,7 @@ |
||
51 | 51 | if(!empty($matches[3][$idx])) |
52 | 52 | { |
53 | 53 | $this->addSingle($matches[3][$idx], $matchedText, $sourceCommand); |
54 | - } |
|
55 | - else |
|
54 | + } else |
|
56 | 55 | { |
57 | 56 | $this->addPathed($matches[1][$idx], $matches[2][$idx], $matchedText, $sourceCommand); |
58 | 57 | } |
@@ -22,9 +22,9 @@ |
||
22 | 22 | { |
23 | 23 | public const REGEX_VARIABLE_NAME = '/\$\s*([A-Z0-9_]+)\s*\.\s*([A-Z0-9_]+)|\$\s*([A-Z0-9_]+)/six'; |
24 | 24 | |
25 | - /** |
|
26 | - * @var Mailcode_Variables_Collection_Regular |
|
27 | - */ |
|
25 | + /** |
|
26 | + * @var Mailcode_Variables_Collection_Regular |
|
27 | + */ |
|
28 | 28 | protected Mailcode_Variables_Collection_Regular $collection; |
29 | 29 | |
30 | 30 | /** |
@@ -34,21 +34,21 @@ discard block |
||
34 | 34 | * @param Mailcode_Commands_Command|null $sourceCommand |
35 | 35 | * @return Mailcode_Variables_Collection_Regular |
36 | 36 | */ |
37 | - public function parseString(string $subject, ?Mailcode_Commands_Command $sourceCommand=null) : Mailcode_Variables_Collection_Regular |
|
37 | + public function parseString(string $subject, ?Mailcode_Commands_Command $sourceCommand = null) : Mailcode_Variables_Collection_Regular |
|
38 | 38 | { |
39 | 39 | $this->collection = new Mailcode_Variables_Collection_Regular(); |
40 | 40 | |
41 | 41 | $matches = array(); |
42 | 42 | preg_match_all(self::REGEX_VARIABLE_NAME, $subject, $matches, PREG_PATTERN_ORDER); |
43 | 43 | |
44 | - if(empty($matches[0])) |
|
44 | + if (empty($matches[0])) |
|
45 | 45 | { |
46 | 46 | return $this->collection; |
47 | 47 | } |
48 | 48 | |
49 | - foreach($matches[0] as $idx => $matchedText) |
|
49 | + foreach ($matches[0] as $idx => $matchedText) |
|
50 | 50 | { |
51 | - if(!empty($matches[3][$idx])) |
|
51 | + if (!empty($matches[3][$idx])) |
|
52 | 52 | { |
53 | 53 | $this->addSingle($matches[3][$idx], $matchedText, $sourceCommand); |
54 | 54 | } |
@@ -61,10 +61,10 @@ discard block |
||
61 | 61 | return $this->collection; |
62 | 62 | } |
63 | 63 | |
64 | - protected function addSingle(string $name, string $matchedText, ?Mailcode_Commands_Command $sourceCommand=null) : void |
|
64 | + protected function addSingle(string $name, string $matchedText, ?Mailcode_Commands_Command $sourceCommand = null) : void |
|
65 | 65 | { |
66 | 66 | // ignore US style numbers like $451 |
67 | - if(is_numeric($name)) |
|
67 | + if (is_numeric($name)) |
|
68 | 68 | { |
69 | 69 | return; |
70 | 70 | } |
@@ -72,10 +72,10 @@ discard block |
||
72 | 72 | $this->collection->add(new Mailcode_Variables_Variable('', $name, $matchedText, $sourceCommand)); |
73 | 73 | } |
74 | 74 | |
75 | - protected function addPathed(string $path, string $name, string $matchedText, ?Mailcode_Commands_Command $sourceCommand=null) : void |
|
75 | + protected function addPathed(string $path, string $name, string $matchedText, ?Mailcode_Commands_Command $sourceCommand = null) : void |
|
76 | 76 | { |
77 | 77 | // ignore US style numbers like $45.12 |
78 | - if(is_numeric($path.'.'.$name)) |
|
78 | + if (is_numeric($path.'.'.$name)) |
|
79 | 79 | { |
80 | 80 | return; |
81 | 81 | } |
@@ -93,9 +93,9 @@ discard block |
||
93 | 93 | return ltrim($name, '$'); |
94 | 94 | } |
95 | 95 | |
96 | - public function createVariable(string $path, ?string $name='') : Mailcode_Variables_Variable |
|
96 | + public function createVariable(string $path, ?string $name = '') : Mailcode_Variables_Variable |
|
97 | 97 | { |
98 | - if(empty($name)) { |
|
98 | + if (empty($name)) { |
|
99 | 99 | $fullName = dollarize($path); |
100 | 100 | $name = $path; |
101 | 101 | $path = ''; |
@@ -110,7 +110,7 @@ discard block |
||
110 | 110 | { |
111 | 111 | $parts = explode('.', undollarize($name)); |
112 | 112 | |
113 | - if(count($parts) === 1) { |
|
113 | + if (count($parts) === 1) { |
|
114 | 114 | return $this->createVariable($parts[0]); |
115 | 115 | } |
116 | 116 |
@@ -46,7 +46,7 @@ |
||
46 | 46 | * @param mixed $subject |
47 | 47 | * @param Mailcode_Commands_Command|null $sourceCommand |
48 | 48 | */ |
49 | - public function __construct(string $tokenID, string $matchedText, $subject=null, ?Mailcode_Commands_Command $sourceCommand=null) |
|
49 | + public function __construct(string $tokenID, string $matchedText, $subject = null, ?Mailcode_Commands_Command $sourceCommand = null) |
|
50 | 50 | { |
51 | 51 | $this->tokenID = $tokenID; |
52 | 52 | $this->matchedText = $matchedText; |
@@ -24,9 +24,9 @@ discard block |
||
24 | 24 | protected string $matchedText; |
25 | 25 | private ?Mailcode_Commands_Command $sourceCommand; |
26 | 26 | |
27 | - /** |
|
28 | - * @var mixed |
|
29 | - */ |
|
27 | + /** |
|
28 | + * @var mixed |
|
29 | + */ |
|
30 | 30 | protected $subject; |
31 | 31 | |
32 | 32 | /** |
@@ -58,20 +58,20 @@ discard block |
||
58 | 58 | return $this->sourceCommand; |
59 | 59 | } |
60 | 60 | |
61 | - /** |
|
62 | - * The ID of the type. i.e. the class name ("Keyword", "StringLiteral"). |
|
63 | - * @return string |
|
64 | - */ |
|
61 | + /** |
|
62 | + * The ID of the type. i.e. the class name ("Keyword", "StringLiteral"). |
|
63 | + * @return string |
|
64 | + */ |
|
65 | 65 | public function getTypeID() : string |
66 | 66 | { |
67 | 67 | $parts = explode('_', get_class($this)); |
68 | 68 | return array_pop($parts); |
69 | 69 | } |
70 | 70 | |
71 | - /** |
|
72 | - * Retrieves a unique ID of the token. |
|
73 | - * @return string |
|
74 | - */ |
|
71 | + /** |
|
72 | + * Retrieves a unique ID of the token. |
|
73 | + * @return string |
|
74 | + */ |
|
75 | 75 | public function getID() : string |
76 | 76 | { |
77 | 77 | return $this->tokenID; |
@@ -23,25 +23,25 @@ discard block |
||
23 | 23 | */ |
24 | 24 | trait Mailcode_Traits_Formatting_HTMLHighlighting |
25 | 25 | { |
26 | - /** |
|
27 | - * Stored this way so we can use isset() instead |
|
28 | - * of using in_array, which is some magnitudes slower. |
|
29 | - * The boolean value is not used otherwise. |
|
30 | - * |
|
31 | - * @var array<string,bool> |
|
32 | - */ |
|
26 | + /** |
|
27 | + * Stored this way so we can use isset() instead |
|
28 | + * of using in_array, which is some magnitudes slower. |
|
29 | + * The boolean value is not used otherwise. |
|
30 | + * |
|
31 | + * @var array<string,bool> |
|
32 | + */ |
|
33 | 33 | private $excludeTags = array( |
34 | 34 | 'style' => true, // NOTE: style tags are excluded natively on the parser level. |
35 | 35 | 'script' => true |
36 | 36 | ); |
37 | 37 | |
38 | - /** |
|
39 | - * Adds an HTML tag name to the list of tags within which |
|
40 | - * commands may not be highlighted. |
|
41 | - * |
|
42 | - * @param string $tagName Case insensitive. |
|
43 | - * @return $this |
|
44 | - */ |
|
38 | + /** |
|
39 | + * Adds an HTML tag name to the list of tags within which |
|
40 | + * commands may not be highlighted. |
|
41 | + * |
|
42 | + * @param string $tagName Case insensitive. |
|
43 | + * @return $this |
|
44 | + */ |
|
45 | 45 | public function excludeTag(string $tagName) |
46 | 46 | { |
47 | 47 | $tagName = strtolower($tagName); |
@@ -51,12 +51,12 @@ discard block |
||
51 | 51 | return $this; |
52 | 52 | } |
53 | 53 | |
54 | - /** |
|
55 | - * Adds several exluded tag names at once. |
|
56 | - * |
|
57 | - * @param string[] $tagNames |
|
58 | - * @return $this |
|
59 | - */ |
|
54 | + /** |
|
55 | + * Adds several exluded tag names at once. |
|
56 | + * |
|
57 | + * @param string[] $tagNames |
|
58 | + * @return $this |
|
59 | + */ |
|
60 | 60 | public function excludeTags(array $tagNames) |
61 | 61 | { |
62 | 62 | foreach($tagNames as $tagName) |
@@ -67,12 +67,12 @@ discard block |
||
67 | 67 | return $this; |
68 | 68 | } |
69 | 69 | |
70 | - /** |
|
71 | - * Whether the specified tag name is in the exlusion list. |
|
72 | - * |
|
73 | - * @param string $tagName |
|
74 | - * @return bool |
|
75 | - */ |
|
70 | + /** |
|
71 | + * Whether the specified tag name is in the exlusion list. |
|
72 | + * |
|
73 | + * @param string $tagName |
|
74 | + * @return bool |
|
75 | + */ |
|
76 | 76 | public function isTagExcluded(string $tagName) : bool |
77 | 77 | { |
78 | 78 | $tagName = strtolower($tagName); |
@@ -59,7 +59,7 @@ |
||
59 | 59 | */ |
60 | 60 | public function excludeTags(array $tagNames) |
61 | 61 | { |
62 | - foreach($tagNames as $tagName) |
|
62 | + foreach ($tagNames as $tagName) |
|
63 | 63 | { |
64 | 64 | $this->excludeTag((string)$tagName); |
65 | 65 | } |
@@ -26,14 +26,14 @@ |
||
26 | 26 | */ |
27 | 27 | trait Mailcode_Traits_Commands_Validation_CaseSensitive |
28 | 28 | { |
29 | - /** |
|
30 | - * @var boolean |
|
31 | - */ |
|
29 | + /** |
|
30 | + * @var boolean |
|
31 | + */ |
|
32 | 32 | protected $caseInsensitive = false; |
33 | 33 | |
34 | - /** |
|
35 | - * @var Mailcode_Parser_Statement_Tokenizer_Token_Keyword|NULL |
|
36 | - */ |
|
34 | + /** |
|
35 | + * @var Mailcode_Parser_Statement_Tokenizer_Token_Keyword|NULL |
|
36 | + */ |
|
37 | 37 | protected $regexToken; |
38 | 38 | |
39 | 39 | protected function validateSyntax_case_sensitive() : void |
@@ -42,7 +42,7 @@ discard block |
||
42 | 42 | |
43 | 43 | $this->caseInsensitive = $val->isValid(); |
44 | 44 | |
45 | - if($val->isValid()) |
|
45 | + if ($val->isValid()) |
|
46 | 46 | { |
47 | 47 | $this->regexToken = $val->getToken(); |
48 | 48 | } |
@@ -55,7 +55,7 @@ discard block |
||
55 | 55 | |
56 | 56 | public function getCaseToken() : ?Mailcode_Parser_Statement_Tokenizer_Token_Keyword |
57 | 57 | { |
58 | - if($this->regexToken instanceof Mailcode_Parser_Statement_Tokenizer_Token_Keyword) |
|
58 | + if ($this->regexToken instanceof Mailcode_Parser_Statement_Tokenizer_Token_Keyword) |
|
59 | 59 | { |
60 | 60 | return $this->regexToken; |
61 | 61 | } |
@@ -42,7 +42,7 @@ discard block |
||
42 | 42 | |
43 | 43 | $this->regexEnabled = $val->isValid(); |
44 | 44 | |
45 | - if($val->isValid()) |
|
45 | + if ($val->isValid()) |
|
46 | 46 | { |
47 | 47 | $this->regexToken = $val->getToken(); |
48 | 48 | } |
@@ -55,7 +55,7 @@ discard block |
||
55 | 55 | |
56 | 56 | public function getRegexToken() : ?Mailcode_Parser_Statement_Tokenizer_Token_Keyword |
57 | 57 | { |
58 | - if($this->regexToken instanceof Mailcode_Parser_Statement_Tokenizer_Token_Keyword) |
|
58 | + if ($this->regexToken instanceof Mailcode_Parser_Statement_Tokenizer_Token_Keyword) |
|
59 | 59 | { |
60 | 60 | return $this->regexToken; |
61 | 61 | } |
@@ -28,9 +28,9 @@ discard block |
||
28 | 28 | */ |
29 | 29 | class Mailcode_Parser_Statement_Validator |
30 | 30 | { |
31 | - /** |
|
32 | - * @var Mailcode_Parser_Statement |
|
33 | - */ |
|
31 | + /** |
|
32 | + * @var Mailcode_Parser_Statement |
|
33 | + */ |
|
34 | 34 | private $statement; |
35 | 35 | |
36 | 36 | public function __construct(Mailcode_Parser_Statement $statement) |
@@ -38,24 +38,24 @@ discard block |
||
38 | 38 | $this->statement = $statement; |
39 | 39 | } |
40 | 40 | |
41 | - /** |
|
42 | - * Creates a variable validator: checks whether a single |
|
43 | - * variable token is present in the parameters. |
|
44 | - * |
|
45 | - * @return Mailcode_Parser_Statement_Validator_Type_Variable |
|
46 | - */ |
|
41 | + /** |
|
42 | + * Creates a variable validator: checks whether a single |
|
43 | + * variable token is present in the parameters. |
|
44 | + * |
|
45 | + * @return Mailcode_Parser_Statement_Validator_Type_Variable |
|
46 | + */ |
|
47 | 47 | public function createVariable() : Mailcode_Parser_Statement_Validator_Type_Variable |
48 | 48 | { |
49 | 49 | return new Mailcode_Parser_Statement_Validator_Type_Variable($this->statement); |
50 | 50 | } |
51 | 51 | |
52 | - /** |
|
53 | - * Creates a keyword validator: checks whether a single |
|
54 | - * keyword token is present in the parameters. |
|
55 | - * |
|
56 | - * @param string $keywordName |
|
57 | - * @return Mailcode_Parser_Statement_Validator_Type_Keyword |
|
58 | - */ |
|
52 | + /** |
|
53 | + * Creates a keyword validator: checks whether a single |
|
54 | + * keyword token is present in the parameters. |
|
55 | + * |
|
56 | + * @param string $keywordName |
|
57 | + * @return Mailcode_Parser_Statement_Validator_Type_Keyword |
|
58 | + */ |
|
59 | 59 | public function createKeyword(string $keywordName) : Mailcode_Parser_Statement_Validator_Type_Keyword |
60 | 60 | { |
61 | 61 | return new Mailcode_Parser_Statement_Validator_Type_Keyword( |
@@ -74,11 +74,11 @@ |
||
74 | 74 | return new Mailcode_Parser_Statement_Validator_Type_Value($this->statement); |
75 | 75 | } |
76 | 76 | |
77 | - public function createOperand(string $sign='') : Mailcode_Parser_Statement_Validator_Type_Operand |
|
77 | + public function createOperand(string $sign = '') : Mailcode_Parser_Statement_Validator_Type_Operand |
|
78 | 78 | { |
79 | 79 | $validate = new Mailcode_Parser_Statement_Validator_Type_Operand($this->statement); |
80 | 80 | |
81 | - if(!empty($sign)) |
|
81 | + if (!empty($sign)) |
|
82 | 82 | { |
83 | 83 | $validate->setOperandSign($sign); |
84 | 84 | } |
@@ -26,14 +26,14 @@ |
||
26 | 26 | */ |
27 | 27 | trait Mailcode_Traits_Commands_Validation_Multiline |
28 | 28 | { |
29 | - /** |
|
30 | - * @var boolean |
|
31 | - */ |
|
29 | + /** |
|
30 | + * @var boolean |
|
31 | + */ |
|
32 | 32 | protected $multiline = false; |
33 | 33 | |
34 | - /** |
|
35 | - * @var Mailcode_Parser_Statement_Tokenizer_Token_Keyword|NULL |
|
36 | - */ |
|
34 | + /** |
|
35 | + * @var Mailcode_Parser_Statement_Tokenizer_Token_Keyword|NULL |
|
36 | + */ |
|
37 | 37 | protected $multilineToken; |
38 | 38 | |
39 | 39 | protected function validateSyntax_multiline() : void |
@@ -42,7 +42,7 @@ discard block |
||
42 | 42 | |
43 | 43 | $this->multiline = $val->isValid(); |
44 | 44 | |
45 | - if($val->isValid()) |
|
45 | + if ($val->isValid()) |
|
46 | 46 | { |
47 | 47 | $this->multilineToken = $val->getToken(); |
48 | 48 | } |
@@ -55,7 +55,7 @@ discard block |
||
55 | 55 | |
56 | 56 | public function getMultilineToken() : ?Mailcode_Parser_Statement_Tokenizer_Token_Keyword |
57 | 57 | { |
58 | - if($this->multilineToken instanceof Mailcode_Parser_Statement_Tokenizer_Token_Keyword) |
|
58 | + if ($this->multilineToken instanceof Mailcode_Parser_Statement_Tokenizer_Token_Keyword) |
|
59 | 59 | { |
60 | 60 | return $this->multilineToken; |
61 | 61 | } |
@@ -41,7 +41,7 @@ |
||
41 | 41 | $this |
42 | 42 | ); |
43 | 43 | |
44 | - if(!$this->params->isValid() && $this->requiresParameters()) |
|
44 | + if (!$this->params->isValid() && $this->requiresParameters()) |
|
45 | 45 | { |
46 | 46 | $error = $this->params->getValidationResult(); |
47 | 47 |