@@ -32,44 +32,44 @@ discard block |
||
32 | 32 | const VALIDATION_UNKNOWN_COMMAND_NAME = 48304; |
33 | 33 | const VALIDATION_INVALID_PARAMS_STATEMENT = 48305; |
34 | 34 | |
35 | - /** |
|
36 | - * @var string |
|
37 | - */ |
|
35 | + /** |
|
36 | + * @var string |
|
37 | + */ |
|
38 | 38 | protected $type = ''; |
39 | 39 | |
40 | - /** |
|
41 | - * @var string |
|
42 | - */ |
|
40 | + /** |
|
41 | + * @var string |
|
42 | + */ |
|
43 | 43 | protected $paramsString = ''; |
44 | 44 | |
45 | - /** |
|
46 | - * @var string |
|
47 | - */ |
|
45 | + /** |
|
46 | + * @var string |
|
47 | + */ |
|
48 | 48 | protected $matchedText = ''; |
49 | 49 | |
50 | - /** |
|
51 | - * @var string |
|
52 | - */ |
|
50 | + /** |
|
51 | + * @var string |
|
52 | + */ |
|
53 | 53 | protected $hash = ''; |
54 | 54 | |
55 | - /** |
|
56 | - * @var \AppUtils\OperationResult |
|
57 | - */ |
|
55 | + /** |
|
56 | + * @var \AppUtils\OperationResult |
|
57 | + */ |
|
58 | 58 | protected $validationResult = null; |
59 | 59 | |
60 | - /** |
|
61 | - * @var \Mailcode\Mailcode |
|
62 | - */ |
|
60 | + /** |
|
61 | + * @var \Mailcode\Mailcode |
|
62 | + */ |
|
63 | 63 | protected $mailcode; |
64 | 64 | |
65 | - /** |
|
66 | - * @var \Mailcode\Mailcode_Parser_Statement |
|
67 | - */ |
|
65 | + /** |
|
66 | + * @var \Mailcode\Mailcode_Parser_Statement |
|
67 | + */ |
|
68 | 68 | protected $params; |
69 | 69 | |
70 | - /** |
|
71 | - * @var string[] |
|
72 | - */ |
|
70 | + /** |
|
71 | + * @var string[] |
|
72 | + */ |
|
73 | 73 | protected $validations = array( |
74 | 74 | 'params_empty', |
75 | 75 | 'params_keywords', |
@@ -78,14 +78,14 @@ discard block |
||
78 | 78 | 'type_unsupported' |
79 | 79 | ); |
80 | 80 | |
81 | - /** |
|
82 | - * @var string |
|
83 | - */ |
|
81 | + /** |
|
82 | + * @var string |
|
83 | + */ |
|
84 | 84 | protected $comment = ''; |
85 | 85 | |
86 | - /** |
|
87 | - * @var Mailcode_Commands_LogicKeywords|NULL |
|
88 | - */ |
|
86 | + /** |
|
87 | + * @var Mailcode_Commands_LogicKeywords|NULL |
|
88 | + */ |
|
89 | 89 | protected $logicKeywords; |
90 | 90 | |
91 | 91 | public function __construct(string $type='', string $paramsString='', string $matchedText='') |
@@ -103,9 +103,9 @@ discard block |
||
103 | 103 | |
104 | 104 | } |
105 | 105 | |
106 | - /** |
|
107 | - * @return string The ID of the command = the name of the command class file. |
|
108 | - */ |
|
106 | + /** |
|
107 | + * @return string The ID of the command = the name of the command class file. |
|
108 | + */ |
|
109 | 109 | public function getID() : string |
110 | 110 | { |
111 | 111 | // account for commands with types: If_Variable should still return If. |
@@ -114,14 +114,14 @@ discard block |
||
114 | 114 | return array_shift($tokens); |
115 | 115 | } |
116 | 116 | |
117 | - /** |
|
118 | - * Sets an optional comment that is not used anywhere, but |
|
119 | - * can be used by the application to track why a command is |
|
120 | - * used somewhere. |
|
121 | - * |
|
122 | - * @param string $comment |
|
123 | - * @return Mailcode_Commands_Command |
|
124 | - */ |
|
117 | + /** |
|
118 | + * Sets an optional comment that is not used anywhere, but |
|
119 | + * can be used by the application to track why a command is |
|
120 | + * used somewhere. |
|
121 | + * |
|
122 | + * @param string $comment |
|
123 | + * @return Mailcode_Commands_Command |
|
124 | + */ |
|
125 | 125 | public function setComment(string $comment) : Mailcode_Commands_Command |
126 | 126 | { |
127 | 127 | $this->comment = $comment; |
@@ -129,34 +129,34 @@ discard block |
||
129 | 129 | return $this; |
130 | 130 | } |
131 | 131 | |
132 | - /** |
|
133 | - * Retrieves the previously set comment, if any. |
|
134 | - * |
|
135 | - * @return string |
|
136 | - */ |
|
132 | + /** |
|
133 | + * Retrieves the previously set comment, if any. |
|
134 | + * |
|
135 | + * @return string |
|
136 | + */ |
|
137 | 137 | public function getComment() : string |
138 | 138 | { |
139 | 139 | return $this->comment; |
140 | 140 | } |
141 | 141 | |
142 | - /** |
|
143 | - * Checks whether this is a dummy command, which is only |
|
144 | - * used to access information on the command type. It cannot |
|
145 | - * be used as an actual live command. |
|
146 | - * |
|
147 | - * @return bool |
|
148 | - */ |
|
142 | + /** |
|
143 | + * Checks whether this is a dummy command, which is only |
|
144 | + * used to access information on the command type. It cannot |
|
145 | + * be used as an actual live command. |
|
146 | + * |
|
147 | + * @return bool |
|
148 | + */ |
|
149 | 149 | public function isDummy() : bool |
150 | 150 | { |
151 | 151 | return $this->type === '__dummy'; |
152 | 152 | } |
153 | 153 | |
154 | - /** |
|
155 | - * Retrieves a hash of the actual matched command string, |
|
156 | - * which is used in collections to detect duplicate commands. |
|
157 | - * |
|
158 | - * @return string |
|
159 | - */ |
|
154 | + /** |
|
155 | + * Retrieves a hash of the actual matched command string, |
|
156 | + * which is used in collections to detect duplicate commands. |
|
157 | + * |
|
158 | + * @return string |
|
159 | + */ |
|
160 | 160 | public function getHash() : string |
161 | 161 | { |
162 | 162 | $this->requireNonDummy(); |
@@ -253,9 +253,9 @@ discard block |
||
253 | 253 | return $this->validationResult->isValid(); |
254 | 254 | } |
255 | 255 | |
256 | - /** |
|
257 | - * @return string[] |
|
258 | - */ |
|
256 | + /** |
|
257 | + * @return string[] |
|
258 | + */ |
|
259 | 259 | abstract protected function getValidations() : array; |
260 | 260 | |
261 | 261 | protected function validateSyntax_params_empty() : void |
@@ -410,12 +410,12 @@ discard block |
||
410 | 410 | |
411 | 411 | abstract public function supportsType() : bool; |
412 | 412 | |
413 | - /** |
|
414 | - * Whether the command allows using logic keywords like "and:" or "or:" |
|
415 | - * in the command parameters. |
|
416 | - * |
|
417 | - * @return bool |
|
418 | - */ |
|
413 | + /** |
|
414 | + * Whether the command allows using logic keywords like "and:" or "or:" |
|
415 | + * in the command parameters. |
|
416 | + * |
|
417 | + * @return bool |
|
418 | + */ |
|
419 | 419 | abstract public function supportsLogicKeywords() : bool; |
420 | 420 | |
421 | 421 | abstract public function generatesContent() : bool; |
@@ -461,22 +461,22 @@ discard block |
||
461 | 461 | return $normalizer->normalize(); |
462 | 462 | } |
463 | 463 | |
464 | - /** |
|
465 | - * Retrieves the names of all the command's supported types: the part |
|
466 | - * between the command name and the colon. Example: {command type: params}. |
|
467 | - * |
|
468 | - * @return string[] |
|
469 | - */ |
|
464 | + /** |
|
465 | + * Retrieves the names of all the command's supported types: the part |
|
466 | + * between the command name and the colon. Example: {command type: params}. |
|
467 | + * |
|
468 | + * @return string[] |
|
469 | + */ |
|
470 | 470 | public function getSupportedTypes() : array |
471 | 471 | { |
472 | 472 | return array(); |
473 | 473 | } |
474 | 474 | |
475 | - /** |
|
476 | - * Retrieves all variable names used in the command. |
|
477 | - * |
|
478 | - * @return Mailcode_Variables_Collection_Regular |
|
479 | - */ |
|
475 | + /** |
|
476 | + * Retrieves all variable names used in the command. |
|
477 | + * |
|
478 | + * @return Mailcode_Variables_Collection_Regular |
|
479 | + */ |
|
480 | 480 | public function getVariables() : Mailcode_Variables_Collection_Regular |
481 | 481 | { |
482 | 482 | return Mailcode::create()->findVariables($this->paramsString); |
@@ -26,39 +26,39 @@ discard block |
||
26 | 26 | const ERROR_CANNOT_GET_INVALID_COMMAND = 60601; |
27 | 27 | const ERROR_CANNOT_OVERWRITE_PARAMETERS = 60602; |
28 | 28 | |
29 | - /** |
|
30 | - * @var Mailcode_Commands_LogicKeywords |
|
31 | - */ |
|
29 | + /** |
|
30 | + * @var Mailcode_Commands_LogicKeywords |
|
31 | + */ |
|
32 | 32 | private $keywords; |
33 | 33 | |
34 | - /** |
|
35 | - * @var string |
|
36 | - */ |
|
34 | + /** |
|
35 | + * @var string |
|
36 | + */ |
|
37 | 37 | private $name; |
38 | 38 | |
39 | - /** |
|
40 | - * @var string |
|
41 | - */ |
|
39 | + /** |
|
40 | + * @var string |
|
41 | + */ |
|
42 | 42 | private $type; |
43 | 43 | |
44 | - /** |
|
45 | - * @var string |
|
46 | - */ |
|
44 | + /** |
|
45 | + * @var string |
|
46 | + */ |
|
47 | 47 | private $matchedString; |
48 | 48 | |
49 | - /** |
|
50 | - * @var string |
|
51 | - */ |
|
49 | + /** |
|
50 | + * @var string |
|
51 | + */ |
|
52 | 52 | private $params = ''; |
53 | 53 | |
54 | - /** |
|
55 | - * @var boolean |
|
56 | - */ |
|
54 | + /** |
|
55 | + * @var boolean |
|
56 | + */ |
|
57 | 57 | private $paramsSet = false; |
58 | 58 | |
59 | - /** |
|
60 | - * @var Mailcode_Collection |
|
61 | - */ |
|
59 | + /** |
|
60 | + * @var Mailcode_Collection |
|
61 | + */ |
|
62 | 62 | private $collection; |
63 | 63 | |
64 | 64 | public function __construct(Mailcode_Commands_LogicKeywords $keywords, string $name, string $matchedString, string $type) |
@@ -69,10 +69,10 @@ discard block |
||
69 | 69 | $this->matchedString = $matchedString; |
70 | 70 | } |
71 | 71 | |
72 | - /** |
|
73 | - * The keyword name, e.g. "and". Always lowercase. |
|
74 | - * @return string |
|
75 | - */ |
|
72 | + /** |
|
73 | + * The keyword name, e.g. "and". Always lowercase. |
|
74 | + * @return string |
|
75 | + */ |
|
76 | 76 | public function getName() : string |
77 | 77 | { |
78 | 78 | return $this->name; |
@@ -95,24 +95,24 @@ discard block |
||
95 | 95 | return $string; |
96 | 96 | } |
97 | 97 | |
98 | - /** |
|
99 | - * The full string that was matched in the command's parameters |
|
100 | - * string. Examples: "and:", "and variable:"... |
|
101 | - * |
|
102 | - * @return string |
|
103 | - */ |
|
98 | + /** |
|
99 | + * The full string that was matched in the command's parameters |
|
100 | + * string. Examples: "and:", "and variable:"... |
|
101 | + * |
|
102 | + * @return string |
|
103 | + */ |
|
104 | 104 | public function getMatchedString() : string |
105 | 105 | { |
106 | 106 | return $this->matchedString; |
107 | 107 | } |
108 | 108 | |
109 | - /** |
|
110 | - * Sets the parameters string matching this logic keyword, |
|
111 | - * which is used to build the actual sub-command. Set by |
|
112 | - * the LogicKeywords class instance. |
|
113 | - * |
|
114 | - * @param string $params |
|
115 | - */ |
|
109 | + /** |
|
110 | + * Sets the parameters string matching this logic keyword, |
|
111 | + * which is used to build the actual sub-command. Set by |
|
112 | + * the LogicKeywords class instance. |
|
113 | + * |
|
114 | + * @param string $params |
|
115 | + */ |
|
116 | 116 | public function setParamsString(string $params) : void |
117 | 117 | { |
118 | 118 | if($this->paramsSet) |
@@ -130,13 +130,13 @@ discard block |
||
130 | 130 | $this->createCommand(); |
131 | 131 | } |
132 | 132 | |
133 | - /** |
|
134 | - * Retrieves the full command string used to create |
|
135 | - * the actual command. For opening commands like IF, |
|
136 | - * this includes the closing {end} command. |
|
137 | - * |
|
138 | - * @return string |
|
139 | - */ |
|
133 | + /** |
|
134 | + * Retrieves the full command string used to create |
|
135 | + * the actual command. For opening commands like IF, |
|
136 | + * this includes the closing {end} command. |
|
137 | + * |
|
138 | + * @return string |
|
139 | + */ |
|
140 | 140 | public function getCommandString() : string |
141 | 141 | { |
142 | 142 | $command = $this->keywords->getCommand(); |
@@ -169,12 +169,12 @@ discard block |
||
169 | 169 | } |
170 | 170 | } |
171 | 171 | |
172 | - /** |
|
173 | - * Retrieves the command for the keyword. |
|
174 | - * |
|
175 | - * @throws Mailcode_Exception |
|
176 | - * @return Mailcode_Commands_Command |
|
177 | - */ |
|
172 | + /** |
|
173 | + * Retrieves the command for the keyword. |
|
174 | + * |
|
175 | + * @throws Mailcode_Exception |
|
176 | + * @return Mailcode_Commands_Command |
|
177 | + */ |
|
178 | 178 | public function getCommand() : Mailcode_Commands_Command |
179 | 179 | { |
180 | 180 | $command = $this->collection->getFirstCommand(); |
@@ -26,9 +26,9 @@ discard block |
||
26 | 26 | |
27 | 27 | const VALIDATION_VARIABLE_COUNT_MISMATCH = 48402; |
28 | 28 | |
29 | - /** |
|
30 | - * @var Mailcode_Variables_Variable|NULL |
|
31 | - */ |
|
29 | + /** |
|
30 | + * @var Mailcode_Variables_Variable|NULL |
|
31 | + */ |
|
32 | 32 | protected $variable; |
33 | 33 | |
34 | 34 | public function getName() : string |
@@ -61,15 +61,15 @@ discard block |
||
61 | 61 | return false; |
62 | 62 | } |
63 | 63 | |
64 | - /** |
|
65 | - * Retrieves the variable to show. |
|
66 | - * |
|
67 | - * NOTE: Only available once the command has been |
|
68 | - * validated. Always use isValid() first. |
|
69 | - * |
|
70 | - * @throws Mailcode_Exception |
|
71 | - * @return Mailcode_Variables_Variable |
|
72 | - */ |
|
64 | + /** |
|
65 | + * Retrieves the variable to show. |
|
66 | + * |
|
67 | + * NOTE: Only available once the command has been |
|
68 | + * validated. Always use isValid() first. |
|
69 | + * |
|
70 | + * @throws Mailcode_Exception |
|
71 | + * @return Mailcode_Variables_Variable |
|
72 | + */ |
|
73 | 73 | public function getVariable() : Mailcode_Variables_Variable |
74 | 74 | { |
75 | 75 | $this->validate(); |
@@ -86,15 +86,15 @@ discard block |
||
86 | 86 | ); |
87 | 87 | } |
88 | 88 | |
89 | - /** |
|
90 | - * Retrieves the full name of the variable to show. |
|
91 | - * |
|
92 | - * NOTE: Only available once the command has been |
|
93 | - * validated. Always use isValid() first. |
|
94 | - * |
|
95 | - * @throws Mailcode_Exception |
|
96 | - * @return string |
|
97 | - */ |
|
89 | + /** |
|
90 | + * Retrieves the full name of the variable to show. |
|
91 | + * |
|
92 | + * NOTE: Only available once the command has been |
|
93 | + * validated. Always use isValid() first. |
|
94 | + * |
|
95 | + * @throws Mailcode_Exception |
|
96 | + * @return string |
|
97 | + */ |
|
98 | 98 | public function getVariableName() : string |
99 | 99 | { |
100 | 100 | return $this->getVariable()->getFullName(); |
@@ -102,19 +102,19 @@ discard block |
||
102 | 102 | |
103 | 103 | protected function validateSyntax_require_variable() : void |
104 | 104 | { |
105 | - $vars = $this->getVariables()->getGroupedByName(); |
|
106 | - $amount = count($vars); |
|
105 | + $vars = $this->getVariables()->getGroupedByName(); |
|
106 | + $amount = count($vars); |
|
107 | 107 | |
108 | - if($amount === 1) |
|
109 | - { |
|
110 | - $this->variable = array_pop($vars); |
|
111 | - return; |
|
112 | - } |
|
108 | + if($amount === 1) |
|
109 | + { |
|
110 | + $this->variable = array_pop($vars); |
|
111 | + return; |
|
112 | + } |
|
113 | 113 | |
114 | - $this->validationResult->makeError( |
|
114 | + $this->validationResult->makeError( |
|
115 | 115 | t('Command has %1$s variables, %2$s expected.', $amount, 1), |
116 | 116 | self::VALIDATION_VARIABLE_COUNT_MISMATCH |
117 | - ); |
|
117 | + ); |
|
118 | 118 | } |
119 | 119 | |
120 | 120 | protected function getValidations() : array |
@@ -24,9 +24,9 @@ discard block |
||
24 | 24 | |
25 | 25 | const VALIDATION_VARIABLE_MISSING = 52001; |
26 | 26 | |
27 | - /** |
|
28 | - * @var Mailcode_Variables_Variable|NULL |
|
29 | - */ |
|
27 | + /** |
|
28 | + * @var Mailcode_Variables_Variable|NULL |
|
29 | + */ |
|
30 | 30 | protected $variable; |
31 | 31 | |
32 | 32 | public function getName() : string |
@@ -59,13 +59,13 @@ discard block |
||
59 | 59 | return false; |
60 | 60 | } |
61 | 61 | |
62 | - /** |
|
63 | - * Retrieves the variable to show, provided the command |
|
64 | - * is valid. |
|
65 | - * |
|
66 | - * @throws Mailcode_Exception |
|
67 | - * @return Mailcode_Variables_Variable |
|
68 | - */ |
|
62 | + /** |
|
63 | + * Retrieves the variable to show, provided the command |
|
64 | + * is valid. |
|
65 | + * |
|
66 | + * @throws Mailcode_Exception |
|
67 | + * @return Mailcode_Variables_Variable |
|
68 | + */ |
|
69 | 69 | public function getVariable() : Mailcode_Variables_Variable |
70 | 70 | { |
71 | 71 | $this->validate(); |
@@ -82,13 +82,13 @@ discard block |
||
82 | 82 | ); |
83 | 83 | } |
84 | 84 | |
85 | - /** |
|
86 | - * Retrieves the full name of the variable to show, |
|
87 | - * provided the command is valid. |
|
88 | - * |
|
89 | - * @throws Mailcode_Exception |
|
90 | - * @return string |
|
91 | - */ |
|
85 | + /** |
|
86 | + * Retrieves the full name of the variable to show, |
|
87 | + * provided the command is valid. |
|
88 | + * |
|
89 | + * @throws Mailcode_Exception |
|
90 | + * @return string |
|
91 | + */ |
|
92 | 92 | public function getVariableName() : string |
93 | 93 | { |
94 | 94 | return $this->getVariable()->getFullName(); |
@@ -30,27 +30,27 @@ discard block |
||
30 | 30 | const VALIDATION_CANNOT_MIX_LOGIC_KEYWORDS = 60701; |
31 | 31 | const VALIDATION_INVALID_SUB_COMMAND = 60702; |
32 | 32 | |
33 | - /** |
|
34 | - * @var string |
|
35 | - */ |
|
33 | + /** |
|
34 | + * @var string |
|
35 | + */ |
|
36 | 36 | private $paramsString; |
37 | 37 | |
38 | - /** |
|
39 | - * @var string[] |
|
40 | - */ |
|
38 | + /** |
|
39 | + * @var string[] |
|
40 | + */ |
|
41 | 41 | private $names = array( |
42 | 42 | 'and', |
43 | 43 | 'or' |
44 | 44 | ); |
45 | 45 | |
46 | - /** |
|
47 | - * @var Mailcode_Commands_LogicKeywords_Keyword[] |
|
48 | - */ |
|
46 | + /** |
|
47 | + * @var Mailcode_Commands_LogicKeywords_Keyword[] |
|
48 | + */ |
|
49 | 49 | private $keywords = array(); |
50 | 50 | |
51 | - /** |
|
52 | - * @var string |
|
53 | - */ |
|
51 | + /** |
|
52 | + * @var string |
|
53 | + */ |
|
54 | 54 | private $mainParams = ''; |
55 | 55 | |
56 | 56 | public function __construct(Mailcode_Commands_Command $command, string $paramsString) |
@@ -159,22 +159,22 @@ discard block |
||
159 | 159 | return $stack; |
160 | 160 | } |
161 | 161 | |
162 | - /** |
|
163 | - * Extracts the parameters string to use for the |
|
164 | - * original command itself, omitting all the logic |
|
165 | - * keywords for the sub-commands. |
|
166 | - * |
|
167 | - * @return string |
|
168 | - */ |
|
162 | + /** |
|
163 | + * Extracts the parameters string to use for the |
|
164 | + * original command itself, omitting all the logic |
|
165 | + * keywords for the sub-commands. |
|
166 | + * |
|
167 | + * @return string |
|
168 | + */ |
|
169 | 169 | public function getMainParamsString() : string |
170 | 170 | { |
171 | 171 | return $this->mainParams; |
172 | 172 | } |
173 | 173 | |
174 | - /** |
|
175 | - * Retrieves the detected keyword names. |
|
176 | - * @return string[] |
|
177 | - */ |
|
174 | + /** |
|
175 | + * Retrieves the detected keyword names. |
|
176 | + * @return string[] |
|
177 | + */ |
|
178 | 178 | public function getDetectedNames() : array |
179 | 179 | { |
180 | 180 | $names = array(); |
@@ -192,23 +192,23 @@ discard block |
||
192 | 192 | return $names; |
193 | 193 | } |
194 | 194 | |
195 | - /** |
|
196 | - * Retrieves all keywords that were detected in the |
|
197 | - * command's parameters string, if any. |
|
198 | - * |
|
199 | - * @return Mailcode_Commands_LogicKeywords_Keyword[] |
|
200 | - */ |
|
195 | + /** |
|
196 | + * Retrieves all keywords that were detected in the |
|
197 | + * command's parameters string, if any. |
|
198 | + * |
|
199 | + * @return Mailcode_Commands_LogicKeywords_Keyword[] |
|
200 | + */ |
|
201 | 201 | public function getKeywords() : array |
202 | 202 | { |
203 | 203 | return $this->keywords; |
204 | 204 | } |
205 | 205 | |
206 | - /** |
|
207 | - * Detects any keyword statements in the parameters by keyword name. |
|
208 | - * |
|
209 | - * @param string $name |
|
210 | - * @return Mailcode_Commands_LogicKeywords_Keyword[] |
|
211 | - */ |
|
206 | + /** |
|
207 | + * Detects any keyword statements in the parameters by keyword name. |
|
208 | + * |
|
209 | + * @param string $name |
|
210 | + * @return Mailcode_Commands_LogicKeywords_Keyword[] |
|
211 | + */ |
|
212 | 212 | private function detectKeywords(string $name) : array |
213 | 213 | { |
214 | 214 | $regex = sprintf('/%1$s\s+([a-z\-0-9]+):|%1$s:/x', $name); |