@@ -32,46 +32,46 @@ discard block |
||
32 | 32 | const TYPE_ERROR = 'error'; |
33 | 33 | const TYPE_SUCCESS = 'success'; |
34 | 34 | |
35 | - /** |
|
36 | - * @var string |
|
37 | - */ |
|
35 | + /** |
|
36 | + * @var string |
|
37 | + */ |
|
38 | 38 | protected $message = ''; |
39 | 39 | |
40 | - /** |
|
41 | - * @var bool |
|
42 | - */ |
|
40 | + /** |
|
41 | + * @var bool |
|
42 | + */ |
|
43 | 43 | protected $valid = true; |
44 | 44 | |
45 | - /** |
|
46 | - * @var object |
|
47 | - */ |
|
45 | + /** |
|
46 | + * @var object |
|
47 | + */ |
|
48 | 48 | protected $subject; |
49 | 49 | |
50 | - /** |
|
51 | - * @var integer |
|
52 | - */ |
|
50 | + /** |
|
51 | + * @var integer |
|
52 | + */ |
|
53 | 53 | protected $code = 0; |
54 | 54 | |
55 | - /** |
|
56 | - * @var string |
|
57 | - */ |
|
55 | + /** |
|
56 | + * @var string |
|
57 | + */ |
|
58 | 58 | protected $type = ''; |
59 | 59 | |
60 | - /** |
|
61 | - * @var integer |
|
62 | - */ |
|
60 | + /** |
|
61 | + * @var integer |
|
62 | + */ |
|
63 | 63 | private static $counter = 0; |
64 | 64 | |
65 | - /** |
|
66 | - * @var int |
|
67 | - */ |
|
65 | + /** |
|
66 | + * @var int |
|
67 | + */ |
|
68 | 68 | private $id; |
69 | 69 | |
70 | - /** |
|
71 | - * The subject being validated. |
|
72 | - * |
|
73 | - * @param object $subject |
|
74 | - */ |
|
70 | + /** |
|
71 | + * The subject being validated. |
|
72 | + * |
|
73 | + * @param object $subject |
|
74 | + */ |
|
75 | 75 | public function __construct(object $subject) |
76 | 76 | { |
77 | 77 | $this->subject = $subject; |
@@ -81,21 +81,21 @@ discard block |
||
81 | 81 | $this->id = self::$counter; |
82 | 82 | } |
83 | 83 | |
84 | - /** |
|
85 | - * Retrieves the ID of the result, which is unique within a request. |
|
86 | - * |
|
87 | - * @return int |
|
88 | - */ |
|
84 | + /** |
|
85 | + * Retrieves the ID of the result, which is unique within a request. |
|
86 | + * |
|
87 | + * @return int |
|
88 | + */ |
|
89 | 89 | public function getID() : int |
90 | 90 | { |
91 | 91 | return $this->id; |
92 | 92 | } |
93 | 93 | |
94 | - /** |
|
95 | - * Whether the validation was successful. |
|
96 | - * |
|
97 | - * @return bool |
|
98 | - */ |
|
94 | + /** |
|
95 | + * Whether the validation was successful. |
|
96 | + * |
|
97 | + * @return bool |
|
98 | + */ |
|
99 | 99 | public function isValid() : bool |
100 | 100 | { |
101 | 101 | return $this->valid; |
@@ -126,33 +126,33 @@ discard block |
||
126 | 126 | return $this->type === $type; |
127 | 127 | } |
128 | 128 | |
129 | - /** |
|
130 | - * Retrieves the subject that was validated. |
|
131 | - * |
|
132 | - * @return object |
|
133 | - */ |
|
129 | + /** |
|
130 | + * Retrieves the subject that was validated. |
|
131 | + * |
|
132 | + * @return object |
|
133 | + */ |
|
134 | 134 | public function getSubject() : object |
135 | 135 | { |
136 | 136 | return $this->subject; |
137 | 137 | } |
138 | 138 | |
139 | - /** |
|
140 | - * Makes the result a succes, with the specified message. |
|
141 | - * |
|
142 | - * @param string $message Should not contain a date, just the system specific info. |
|
143 | - * @return OperationResult |
|
144 | - */ |
|
139 | + /** |
|
140 | + * Makes the result a succes, with the specified message. |
|
141 | + * |
|
142 | + * @param string $message Should not contain a date, just the system specific info. |
|
143 | + * @return OperationResult |
|
144 | + */ |
|
145 | 145 | public function makeSuccess(string $message, int $code=0) : OperationResult |
146 | 146 | { |
147 | 147 | return $this->setMessage(self::TYPE_SUCCESS, $message, $code, true); |
148 | 148 | } |
149 | 149 | |
150 | - /** |
|
151 | - * Sets the result as an error. |
|
152 | - * |
|
153 | - * @param string $message Should be as detailed as possible. |
|
154 | - * @return OperationResult |
|
155 | - */ |
|
150 | + /** |
|
151 | + * Sets the result as an error. |
|
152 | + * |
|
153 | + * @param string $message Should be as detailed as possible. |
|
154 | + * @return OperationResult |
|
155 | + */ |
|
156 | 156 | public function makeError(string $message, int $code=0) : OperationResult |
157 | 157 | { |
158 | 158 | return $this->setMessage(self::TYPE_ERROR, $message, $code, false); |
@@ -183,21 +183,21 @@ discard block |
||
183 | 183 | return $this->type; |
184 | 184 | } |
185 | 185 | |
186 | - /** |
|
187 | - * Retrieves the error message, if an error occurred. |
|
188 | - * |
|
189 | - * @return string The error message, or an empty string if no error occurred. |
|
190 | - */ |
|
186 | + /** |
|
187 | + * Retrieves the error message, if an error occurred. |
|
188 | + * |
|
189 | + * @return string The error message, or an empty string if no error occurred. |
|
190 | + */ |
|
191 | 191 | public function getErrorMessage() : string |
192 | 192 | { |
193 | 193 | return $this->getMessage(self::TYPE_ERROR); |
194 | 194 | } |
195 | 195 | |
196 | - /** |
|
197 | - * Retrieves the success message, if one has been provided. |
|
198 | - * |
|
199 | - * @return string |
|
200 | - */ |
|
196 | + /** |
|
197 | + * Retrieves the success message, if one has been provided. |
|
198 | + * |
|
199 | + * @return string |
|
200 | + */ |
|
201 | 201 | public function getSuccessMessage() : string |
202 | 202 | { |
203 | 203 | return $this->getMessage(self::TYPE_SUCCESS); |
@@ -213,21 +213,21 @@ discard block |
||
213 | 213 | return $this->getMessage(self::TYPE_WARNING); |
214 | 214 | } |
215 | 215 | |
216 | - /** |
|
217 | - * Whether a specific error/success code has been specified. |
|
218 | - * |
|
219 | - * @return bool |
|
220 | - */ |
|
216 | + /** |
|
217 | + * Whether a specific error/success code has been specified. |
|
218 | + * |
|
219 | + * @return bool |
|
220 | + */ |
|
221 | 221 | public function hasCode() : bool |
222 | 222 | { |
223 | 223 | return $this->code > 0; |
224 | 224 | } |
225 | 225 | |
226 | - /** |
|
227 | - * Retrieves the error/success code, if any. |
|
228 | - * |
|
229 | - * @return int The error code, or 0 if none. |
|
230 | - */ |
|
226 | + /** |
|
227 | + * Retrieves the error/success code, if any. |
|
228 | + * |
|
229 | + * @return int The error code, or 0 if none. |
|
230 | + */ |
|
231 | 231 | public function getCode() : int |
232 | 232 | { |
233 | 233 | return $this->code; |
@@ -26,9 +26,9 @@ discard block |
||
26 | 26 | */ |
27 | 27 | class OperationResult_Collection extends OperationResult |
28 | 28 | { |
29 | - /** |
|
30 | - * @var OperationResult[] |
|
31 | - */ |
|
29 | + /** |
|
30 | + * @var OperationResult[] |
|
31 | + */ |
|
32 | 32 | protected $results = array(); |
33 | 33 | |
34 | 34 | public function makeError(string $message, int $code=0) : OperationResult |
@@ -106,9 +106,9 @@ discard block |
||
106 | 106 | return $this; |
107 | 107 | } |
108 | 108 | |
109 | - /** |
|
110 | - * @return OperationResult[] |
|
111 | - */ |
|
109 | + /** |
|
110 | + * @return OperationResult[] |
|
111 | + */ |
|
112 | 112 | public function getResults() : array |
113 | 113 | { |
114 | 114 | return $this->results; |
@@ -25,9 +25,9 @@ discard block |
||
25 | 25 | */ |
26 | 26 | trait Traits_Classable |
27 | 27 | { |
28 | - /** |
|
29 | - * @var string[] |
|
30 | - */ |
|
28 | + /** |
|
29 | + * @var string[] |
|
30 | + */ |
|
31 | 31 | protected $classes = array(); |
32 | 32 | |
33 | 33 | public function addClass(string $name) |
@@ -65,30 +65,30 @@ discard block |
||
65 | 65 | return $this; |
66 | 66 | } |
67 | 67 | |
68 | - /** |
|
69 | - * Retrieves a list of all classes, if any. |
|
70 | - * |
|
71 | - * @return string[] |
|
72 | - */ |
|
68 | + /** |
|
69 | + * Retrieves a list of all classes, if any. |
|
70 | + * |
|
71 | + * @return string[] |
|
72 | + */ |
|
73 | 73 | public function getClasses() : array |
74 | 74 | { |
75 | 75 | return $this->classes; |
76 | 76 | } |
77 | 77 | |
78 | - /** |
|
79 | - * Renders the class names list as space-separated string for use in an HTML tag. |
|
80 | - * |
|
81 | - * @return string |
|
82 | - */ |
|
78 | + /** |
|
79 | + * Renders the class names list as space-separated string for use in an HTML tag. |
|
80 | + * |
|
81 | + * @return string |
|
82 | + */ |
|
83 | 83 | public function classesToString() : string |
84 | 84 | { |
85 | 85 | return implode(' ', $this->classes); |
86 | 86 | } |
87 | 87 | |
88 | - /** |
|
89 | - * Renders the "class" attribute string for inserting into an HTML tag. |
|
90 | - * @return string |
|
91 | - */ |
|
88 | + /** |
|
89 | + * Renders the "class" attribute string for inserting into an HTML tag. |
|
90 | + * @return string |
|
91 | + */ |
|
92 | 92 | public function classesToAttribute() : string |
93 | 93 | { |
94 | 94 | if(!empty($this->classes)) |
@@ -117,42 +117,42 @@ discard block |
||
117 | 117 | */ |
118 | 118 | interface Interface_Classable |
119 | 119 | { |
120 | - /** |
|
121 | - * @param string $name |
|
122 | - * @return $this |
|
123 | - */ |
|
120 | + /** |
|
121 | + * @param string $name |
|
122 | + * @return $this |
|
123 | + */ |
|
124 | 124 | public function addClass(string $name); |
125 | 125 | |
126 | - /** |
|
127 | - * @param array $names |
|
128 | - * @return $this |
|
129 | - */ |
|
126 | + /** |
|
127 | + * @param array $names |
|
128 | + * @return $this |
|
129 | + */ |
|
130 | 130 | public function addClasses(array $names); |
131 | 131 | |
132 | - /** |
|
133 | - * @param string $name |
|
134 | - * @return bool |
|
135 | - */ |
|
132 | + /** |
|
133 | + * @param string $name |
|
134 | + * @return bool |
|
135 | + */ |
|
136 | 136 | public function hasClass(string $name) : bool; |
137 | 137 | |
138 | - /** |
|
139 | - * @param string $name |
|
140 | - * @return $this |
|
141 | - */ |
|
138 | + /** |
|
139 | + * @param string $name |
|
140 | + * @return $this |
|
141 | + */ |
|
142 | 142 | public function removeClass(string $name); |
143 | 143 | |
144 | - /** |
|
145 | - * @return array |
|
146 | - */ |
|
144 | + /** |
|
145 | + * @return array |
|
146 | + */ |
|
147 | 147 | public function getClasses() : array; |
148 | 148 | |
149 | - /** |
|
150 | - * @return string |
|
151 | - */ |
|
149 | + /** |
|
150 | + * @return string |
|
151 | + */ |
|
152 | 152 | public function classesToString() : string; |
153 | 153 | |
154 | - /** |
|
155 | - * @return string |
|
156 | - */ |
|
154 | + /** |
|
155 | + * @return string |
|
156 | + */ |
|
157 | 157 | public function classesToAttribute() : string; |
158 | 158 | } |
@@ -24,19 +24,19 @@ discard block |
||
24 | 24 | { |
25 | 25 | use Traits_Optionable; |
26 | 26 | |
27 | - /** |
|
28 | - * @see https://gist.github.com/gruber/249502 |
|
29 | - */ |
|
27 | + /** |
|
28 | + * @see https://gist.github.com/gruber/249502 |
|
29 | + */ |
|
30 | 30 | const REGEX_URL = '#(?i)\b((?:[a-z][\w-]+:(?:/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}/)(?:[^\s()<>]+|\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+(?:\(([^\s()<>]+|(\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:\'".,<>?«»“”‘’]))#i'; |
31 | 31 | |
32 | - /** |
|
33 | - * @var string |
|
34 | - */ |
|
32 | + /** |
|
33 | + * @var string |
|
34 | + */ |
|
35 | 35 | protected $subject; |
36 | 36 | |
37 | - /** |
|
38 | - * @var string[] |
|
39 | - */ |
|
37 | + /** |
|
38 | + * @var string[] |
|
39 | + */ |
|
40 | 40 | protected $schemes = array( |
41 | 41 | 'http', |
42 | 42 | 'https', |
@@ -62,49 +62,49 @@ discard block |
||
62 | 62 | ); |
63 | 63 | } |
64 | 64 | |
65 | - /** |
|
66 | - * Whether to enable sorting the URLs alphabetically (disabled by default). |
|
67 | - * |
|
68 | - * @param bool $enabled |
|
69 | - * @return ConvertHelper_URLFinder |
|
70 | - */ |
|
65 | + /** |
|
66 | + * Whether to enable sorting the URLs alphabetically (disabled by default). |
|
67 | + * |
|
68 | + * @param bool $enabled |
|
69 | + * @return ConvertHelper_URLFinder |
|
70 | + */ |
|
71 | 71 | public function enableSorting(bool $enabled=true) : ConvertHelper_URLFinder |
72 | 72 | { |
73 | 73 | $this->setOption('sorting', $enabled); |
74 | 74 | return $this; |
75 | 75 | } |
76 | 76 | |
77 | - /** |
|
78 | - * Whether to include email addresses in the search. |
|
79 | - * This is only relevant when using the getURLs() |
|
80 | - * method. |
|
81 | - * |
|
82 | - * @param bool $include |
|
83 | - * @return ConvertHelper_URLFinder |
|
84 | - */ |
|
77 | + /** |
|
78 | + * Whether to include email addresses in the search. |
|
79 | + * This is only relevant when using the getURLs() |
|
80 | + * method. |
|
81 | + * |
|
82 | + * @param bool $include |
|
83 | + * @return ConvertHelper_URLFinder |
|
84 | + */ |
|
85 | 85 | public function includeEmails(bool $include=true) : ConvertHelper_URLFinder |
86 | 86 | { |
87 | 87 | $this->setOption('include-emails', $include); |
88 | 88 | return $this; |
89 | 89 | } |
90 | 90 | |
91 | - /** |
|
92 | - * Whether to omit the mailto: that is automatically added to all email addresses. |
|
93 | - * |
|
94 | - * @param bool $omit |
|
95 | - * @return ConvertHelper_URLFinder |
|
96 | - */ |
|
91 | + /** |
|
92 | + * Whether to omit the mailto: that is automatically added to all email addresses. |
|
93 | + * |
|
94 | + * @param bool $omit |
|
95 | + * @return ConvertHelper_URLFinder |
|
96 | + */ |
|
97 | 97 | public function omitMailto(bool $omit=true) : ConvertHelper_URLFinder |
98 | 98 | { |
99 | 99 | $this->setOption('omit-mailto', $omit); |
100 | 100 | return $this; |
101 | 101 | } |
102 | 102 | |
103 | - /** |
|
104 | - * Prepares the subject string by adding a newline before all URL schemes, |
|
105 | - * to make it possible to parse even lists of links separated by commas or |
|
106 | - * the like (http://domain.com,http://domain2.com). |
|
107 | - */ |
|
103 | + /** |
|
104 | + * Prepares the subject string by adding a newline before all URL schemes, |
|
105 | + * to make it possible to parse even lists of links separated by commas or |
|
106 | + * the like (http://domain.com,http://domain2.com). |
|
107 | + */ |
|
108 | 108 | private function prepareSubject() : void |
109 | 109 | { |
110 | 110 | $replaces = array(); |
@@ -117,11 +117,11 @@ discard block |
||
117 | 117 | $this->subject = str_replace(array_keys($replaces), array_values($replaces), $this->subject); |
118 | 118 | } |
119 | 119 | |
120 | - /** |
|
121 | - * Fetches all URLs that can be found in the subject string. |
|
122 | - * |
|
123 | - * @return string[] |
|
124 | - */ |
|
120 | + /** |
|
121 | + * Fetches all URLs that can be found in the subject string. |
|
122 | + * |
|
123 | + * @return string[] |
|
124 | + */ |
|
125 | 125 | public function getURLs() : array |
126 | 126 | { |
127 | 127 | $this->prepareSubject(); |
@@ -154,13 +154,13 @@ discard block |
||
154 | 154 | return $result; |
155 | 155 | } |
156 | 156 | |
157 | - /** |
|
158 | - * Retrieves all email addresses from the subject string. |
|
159 | - * |
|
160 | - * @return string[] |
|
161 | - * |
|
162 | - * @see omitMailto() |
|
163 | - */ |
|
157 | + /** |
|
158 | + * Retrieves all email addresses from the subject string. |
|
159 | + * |
|
160 | + * @return string[] |
|
161 | + * |
|
162 | + * @see omitMailto() |
|
163 | + */ |
|
164 | 164 | public function getEmails() : array |
165 | 165 | { |
166 | 166 | $matches = array(); |
@@ -194,11 +194,11 @@ discard block |
||
194 | 194 | return 'mailto:'; |
195 | 195 | } |
196 | 196 | |
197 | - /** |
|
198 | - * Retrieves all URLs as URLInfo instances. |
|
199 | - * |
|
200 | - * @return URLInfo[] |
|
201 | - */ |
|
197 | + /** |
|
198 | + * Retrieves all URLs as URLInfo instances. |
|
199 | + * |
|
200 | + * @return URLInfo[] |
|
201 | + */ |
|
202 | 202 | public function getInfos() |
203 | 203 | { |
204 | 204 | $urls = $this->getURLs(); |
@@ -39,9 +39,9 @@ discard block |
||
39 | 39 | */ |
40 | 40 | protected static $instance; |
41 | 41 | |
42 | - /** |
|
43 | - * @var string |
|
44 | - */ |
|
42 | + /** |
|
43 | + * @var string |
|
44 | + */ |
|
45 | 45 | protected $baseURL = ''; |
46 | 46 | |
47 | 47 | public function __construct() |
@@ -51,10 +51,10 @@ discard block |
||
51 | 51 | $this->init(); |
52 | 52 | } |
53 | 53 | |
54 | - /** |
|
55 | - * Can be extended in a subclass, to avoid |
|
56 | - * redefining the constructor. |
|
57 | - */ |
|
54 | + /** |
|
55 | + * Can be extended in a subclass, to avoid |
|
56 | + * redefining the constructor. |
|
57 | + */ |
|
58 | 58 | protected function init() |
59 | 59 | { |
60 | 60 | |
@@ -126,30 +126,30 @@ discard block |
||
126 | 126 | return $this->buildURL($params, $dispatcher); |
127 | 127 | } |
128 | 128 | |
129 | - /** |
|
130 | - * Retrieves the name of the current dispatcher script / page. |
|
131 | - * This is made to be extended and implemented in a subclass. |
|
132 | - * |
|
133 | - * @return string |
|
134 | - */ |
|
129 | + /** |
|
130 | + * Retrieves the name of the current dispatcher script / page. |
|
131 | + * This is made to be extended and implemented in a subclass. |
|
132 | + * |
|
133 | + * @return string |
|
134 | + */ |
|
135 | 135 | public function getDispatcher() : string |
136 | 136 | { |
137 | 137 | return ''; |
138 | 138 | } |
139 | 139 | |
140 | - /** |
|
141 | - * Filters and retrieves the current request variables |
|
142 | - * to be used to build an URL to refresh the current page. |
|
143 | - * |
|
144 | - * For further customization options, use the |
|
145 | - * {@see Request::createRefreshParams()} method. |
|
146 | - * |
|
147 | - * @param array<string,mixed> $params Key => value pairs of parameters to always include in the result. |
|
148 | - * @param string[] $exclude Names of parameters to exclude from the result. |
|
149 | - * @return array<string,mixed> |
|
150 | - * |
|
151 | - * @see Request::createRefreshParams() |
|
152 | - */ |
|
140 | + /** |
|
141 | + * Filters and retrieves the current request variables |
|
142 | + * to be used to build an URL to refresh the current page. |
|
143 | + * |
|
144 | + * For further customization options, use the |
|
145 | + * {@see Request::createRefreshParams()} method. |
|
146 | + * |
|
147 | + * @param array<string,mixed> $params Key => value pairs of parameters to always include in the result. |
|
148 | + * @param string[] $exclude Names of parameters to exclude from the result. |
|
149 | + * @return array<string,mixed> |
|
150 | + * |
|
151 | + * @see Request::createRefreshParams() |
|
152 | + */ |
|
153 | 153 | public function getRefreshParams(array $params = array(), array $exclude = array()) |
154 | 154 | { |
155 | 155 | return $this->createRefreshParams() |
@@ -158,13 +158,13 @@ discard block |
||
158 | 158 | ->getParams(); |
159 | 159 | } |
160 | 160 | |
161 | - /** |
|
162 | - * Creates an instance of the helper that can be used to |
|
163 | - * retrieve the request's parameters collection, with the |
|
164 | - * possiblity to exlude and override some by rules. |
|
165 | - * |
|
166 | - * @return Request_RefreshParams |
|
167 | - */ |
|
161 | + /** |
|
162 | + * Creates an instance of the helper that can be used to |
|
163 | + * retrieve the request's parameters collection, with the |
|
164 | + * possiblity to exlude and override some by rules. |
|
165 | + * |
|
166 | + * @return Request_RefreshParams |
|
167 | + */ |
|
168 | 168 | public function createRefreshParams() : Request_RefreshParams |
169 | 169 | { |
170 | 170 | return new Request_RefreshParams(); |
@@ -197,10 +197,10 @@ discard block |
||
197 | 197 | return $url; |
198 | 198 | } |
199 | 199 | |
200 | - /** |
|
201 | - * Retrieves the base URL of the application. |
|
202 | - * @return string |
|
203 | - */ |
|
200 | + /** |
|
201 | + * Retrieves the base URL of the application. |
|
202 | + * @return string |
|
203 | + */ |
|
204 | 204 | public function getBaseURL() : string |
205 | 205 | { |
206 | 206 | return $this->baseURL; |
@@ -230,13 +230,13 @@ discard block |
||
230 | 230 | return $this->knownParams[$name]; |
231 | 231 | } |
232 | 232 | |
233 | - /** |
|
234 | - * Retrieves a previously registered parameter instance. |
|
235 | - * |
|
236 | - * @param string $name |
|
237 | - * @throws Request_Exception |
|
238 | - * @return Request_Param |
|
239 | - */ |
|
233 | + /** |
|
234 | + * Retrieves a previously registered parameter instance. |
|
235 | + * |
|
236 | + * @param string $name |
|
237 | + * @throws Request_Exception |
|
238 | + * @return Request_Param |
|
239 | + */ |
|
240 | 240 | public function getRegisteredParam(string $name) : Request_Param |
241 | 241 | { |
242 | 242 | if(isset($this->knownParams[$name])) { |
@@ -253,48 +253,48 @@ discard block |
||
253 | 253 | ); |
254 | 254 | } |
255 | 255 | |
256 | - /** |
|
257 | - * Checks whether a parameter with the specified name |
|
258 | - * has been registered. |
|
259 | - * |
|
260 | - * @param string $name |
|
261 | - * @return bool |
|
262 | - */ |
|
256 | + /** |
|
257 | + * Checks whether a parameter with the specified name |
|
258 | + * has been registered. |
|
259 | + * |
|
260 | + * @param string $name |
|
261 | + * @return bool |
|
262 | + */ |
|
263 | 263 | public function hasRegisteredParam(string $name) : bool |
264 | 264 | { |
265 | 265 | return isset($this->knownParams[$name]); |
266 | 266 | } |
267 | 267 | |
268 | - /** |
|
269 | - * Retrieves an indexed array with accept mime types |
|
270 | - * that the client sent, in the order of preference |
|
271 | - * the client specified. |
|
272 | - * |
|
273 | - * Example: |
|
274 | - * |
|
275 | - * array( |
|
276 | - * 'text/html', |
|
277 | - * 'application/xhtml+xml', |
|
278 | - * 'image/webp' |
|
279 | - * ... |
|
280 | - * ) |
|
281 | - * |
|
282 | - * @return array |
|
283 | - * @see Request::parseAcceptHeaders() |
|
284 | - */ |
|
268 | + /** |
|
269 | + * Retrieves an indexed array with accept mime types |
|
270 | + * that the client sent, in the order of preference |
|
271 | + * the client specified. |
|
272 | + * |
|
273 | + * Example: |
|
274 | + * |
|
275 | + * array( |
|
276 | + * 'text/html', |
|
277 | + * 'application/xhtml+xml', |
|
278 | + * 'image/webp' |
|
279 | + * ... |
|
280 | + * ) |
|
281 | + * |
|
282 | + * @return array |
|
283 | + * @see Request::parseAcceptHeaders() |
|
284 | + */ |
|
285 | 285 | public static function getAcceptHeaders() : array |
286 | 286 | { |
287 | 287 | return self::parseAcceptHeaders()->getMimeStrings(); |
288 | 288 | } |
289 | 289 | |
290 | - /** |
|
291 | - * Returns an instance of the accept headers parser, |
|
292 | - * to access information on the browser's accepted |
|
293 | - * mime types. |
|
294 | - * |
|
295 | - * @return Request_AcceptHeaders |
|
296 | - * @see Request::getAcceptHeaders() |
|
297 | - */ |
|
290 | + /** |
|
291 | + * Returns an instance of the accept headers parser, |
|
292 | + * to access information on the browser's accepted |
|
293 | + * mime types. |
|
294 | + * |
|
295 | + * @return Request_AcceptHeaders |
|
296 | + * @see Request::getAcceptHeaders() |
|
297 | + */ |
|
298 | 298 | public static function parseAcceptHeaders() : Request_AcceptHeaders |
299 | 299 | { |
300 | 300 | static $accept; |
@@ -342,14 +342,14 @@ discard block |
||
342 | 342 | return false; |
343 | 343 | } |
344 | 344 | |
345 | - /** |
|
346 | - * Removes a single parameter from the request. |
|
347 | - * If the parameter has been registered, also |
|
348 | - * removes the registration info. |
|
349 | - * |
|
350 | - * @param string $name |
|
351 | - * @return Request |
|
352 | - */ |
|
345 | + /** |
|
346 | + * Removes a single parameter from the request. |
|
347 | + * If the parameter has been registered, also |
|
348 | + * removes the registration info. |
|
349 | + * |
|
350 | + * @param string $name |
|
351 | + * @return Request |
|
352 | + */ |
|
353 | 353 | public function removeParam(string $name) : Request |
354 | 354 | { |
355 | 355 | if(isset($_REQUEST[$name])) { |
@@ -363,12 +363,12 @@ discard block |
||
363 | 363 | return $this; |
364 | 364 | } |
365 | 365 | |
366 | - /** |
|
367 | - * Removes several parameters from the request. |
|
368 | - * |
|
369 | - * @param string[] $names |
|
370 | - * @return Request |
|
371 | - */ |
|
366 | + /** |
|
367 | + * Removes several parameters from the request. |
|
368 | + * |
|
369 | + * @param string[] $names |
|
370 | + * @return Request |
|
371 | + */ |
|
372 | 372 | public function removeParams(array $names) : Request |
373 | 373 | { |
374 | 374 | foreach($names as $name) { |
@@ -435,18 +435,18 @@ discard block |
||
435 | 435 | return $val; |
436 | 436 | } |
437 | 437 | |
438 | - /** |
|
439 | - * Treats the request parameter as a JSON string, and |
|
440 | - * if it exists and contains valid JSON, returns the |
|
441 | - * decoded JSON value as an array (default). |
|
442 | - * |
|
443 | - * @param string $name |
|
444 | - * @param bool $assoc |
|
445 | - * @return array|object |
|
446 | - * |
|
447 | - * @see Request::getJSONAssoc() |
|
448 | - * @see Request::getJSONObject() |
|
449 | - */ |
|
438 | + /** |
|
439 | + * Treats the request parameter as a JSON string, and |
|
440 | + * if it exists and contains valid JSON, returns the |
|
441 | + * decoded JSON value as an array (default). |
|
442 | + * |
|
443 | + * @param string $name |
|
444 | + * @param bool $assoc |
|
445 | + * @return array|object |
|
446 | + * |
|
447 | + * @see Request::getJSONAssoc() |
|
448 | + * @see Request::getJSONObject() |
|
449 | + */ |
|
450 | 450 | public function getJSON(string $name, bool $assoc=true) |
451 | 451 | { |
452 | 452 | $value = $this->getParam($name); |
@@ -471,13 +471,13 @@ discard block |
||
471 | 471 | return new \stdClass(); |
472 | 472 | } |
473 | 473 | |
474 | - /** |
|
475 | - * Like {@link Request::getJSON()}, but omitting the second |
|
476 | - * parameter. Use this for more readable code. |
|
477 | - * |
|
478 | - * @param string $name |
|
479 | - * @return array |
|
480 | - */ |
|
474 | + /** |
|
475 | + * Like {@link Request::getJSON()}, but omitting the second |
|
476 | + * parameter. Use this for more readable code. |
|
477 | + * |
|
478 | + * @param string $name |
|
479 | + * @return array |
|
480 | + */ |
|
481 | 481 | public function getJSONAssoc(string $name) : array |
482 | 482 | { |
483 | 483 | $result = $this->getJSON($name); |
@@ -488,13 +488,13 @@ discard block |
||
488 | 488 | return array(); |
489 | 489 | } |
490 | 490 | |
491 | - /** |
|
492 | - * Like {@link Request::getJSON()}, but omitting the second |
|
493 | - * parameter. Use this for more readable code. |
|
494 | - * |
|
495 | - * @param string $name |
|
496 | - * @return object |
|
497 | - */ |
|
491 | + /** |
|
492 | + * Like {@link Request::getJSON()}, but omitting the second |
|
493 | + * parameter. Use this for more readable code. |
|
494 | + * |
|
495 | + * @param string $name |
|
496 | + * @return object |
|
497 | + */ |
|
498 | 498 | public function getJSONObject(string $name) : object |
499 | 499 | { |
500 | 500 | $result = $this->getJSON($name, false); |
@@ -505,12 +505,12 @@ discard block |
||
505 | 505 | return new \stdClass(); |
506 | 506 | } |
507 | 507 | |
508 | - /** |
|
509 | - * Sends a JSON response with the correct headers. |
|
510 | - * |
|
511 | - * @param array|string $data |
|
512 | - * @param bool $exit Whether to exit the script afterwards. |
|
513 | - */ |
|
508 | + /** |
|
509 | + * Sends a JSON response with the correct headers. |
|
510 | + * |
|
511 | + * @param array|string $data |
|
512 | + * @param bool $exit Whether to exit the script afterwards. |
|
513 | + */ |
|
514 | 514 | public static function sendJSON($data, bool $exit=true) |
515 | 515 | { |
516 | 516 | $payload = $data; |
@@ -530,12 +530,12 @@ discard block |
||
530 | 530 | } |
531 | 531 | } |
532 | 532 | |
533 | - /** |
|
534 | - * Sends HTML to the browser with the correct headers. |
|
535 | - * |
|
536 | - * @param string $html |
|
537 | - * @param bool $exit Whether to exit the script afterwards. |
|
538 | - */ |
|
533 | + /** |
|
534 | + * Sends HTML to the browser with the correct headers. |
|
535 | + * |
|
536 | + * @param string $html |
|
537 | + * @param bool $exit Whether to exit the script afterwards. |
|
538 | + */ |
|
539 | 539 | public static function sendHTML(string $html, bool $exit=true) |
540 | 540 | { |
541 | 541 | header('Cache-Control: no-cache, must-revalidate'); |
@@ -550,16 +550,16 @@ discard block |
||
550 | 550 | } |
551 | 551 | } |
552 | 552 | |
553 | - /** |
|
554 | - * Creates a new instance of the URL comparer, which can check |
|
555 | - * whether the specified URLs match, regardless of the order in |
|
556 | - * which the query parameters are, if any. |
|
557 | - * |
|
558 | - * @param string $sourceURL |
|
559 | - * @param string $targetURL |
|
560 | - * @param array $limitParams Whether to limit the comparison to these specific parameter names (if present) |
|
561 | - * @return Request_URLComparer |
|
562 | - */ |
|
553 | + /** |
|
554 | + * Creates a new instance of the URL comparer, which can check |
|
555 | + * whether the specified URLs match, regardless of the order in |
|
556 | + * which the query parameters are, if any. |
|
557 | + * |
|
558 | + * @param string $sourceURL |
|
559 | + * @param string $targetURL |
|
560 | + * @param array $limitParams Whether to limit the comparison to these specific parameter names (if present) |
|
561 | + * @return Request_URLComparer |
|
562 | + */ |
|
563 | 563 | public function createURLComparer(string $sourceURL, string $targetURL, array $limitParams=array()) : Request_URLComparer |
564 | 564 | { |
565 | 565 | $comparer = new Request_URLComparer($this, $sourceURL, $targetURL); |
@@ -568,10 +568,10 @@ discard block |
||
568 | 568 | return $comparer; |
569 | 569 | } |
570 | 570 | |
571 | - /** |
|
572 | - * Retrieves the full URL that was used to access the current page. |
|
573 | - * @return string |
|
574 | - */ |
|
571 | + /** |
|
572 | + * Retrieves the full URL that was used to access the current page. |
|
573 | + * @return string |
|
574 | + */ |
|
575 | 575 | public function getCurrentURL() : string |
576 | 576 | { |
577 | 577 | return $_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; |
@@ -19,9 +19,9 @@ |
||
19 | 19 | */ |
20 | 20 | class Request_RefreshParams_Exclude_Name extends Request_RefreshParams_Exclude |
21 | 21 | { |
22 | - /** |
|
23 | - * @var string |
|
24 | - */ |
|
22 | + /** |
|
23 | + * @var string |
|
24 | + */ |
|
25 | 25 | private $name; |
26 | 26 | |
27 | 27 | public function __construct(string $paramName) |
@@ -22,9 +22,9 @@ |
||
22 | 22 | { |
23 | 23 | const ERROR_INVALID_CALLBACK = 62101; |
24 | 24 | |
25 | - /** |
|
26 | - * @var callable |
|
27 | - */ |
|
25 | + /** |
|
26 | + * @var callable |
|
27 | + */ |
|
28 | 28 | private $callback; |
29 | 29 | |
30 | 30 | public function __construct($callback) |
@@ -23,14 +23,14 @@ discard block |
||
23 | 23 | { |
24 | 24 | use Traits_Optionable; |
25 | 25 | |
26 | - /** |
|
27 | - * @var array<string,mixed> |
|
28 | - */ |
|
26 | + /** |
|
27 | + * @var array<string,mixed> |
|
28 | + */ |
|
29 | 29 | private $overrides = array(); |
30 | 30 | |
31 | - /** |
|
32 | - * @var Request_RefreshParams_Exclude[] |
|
33 | - */ |
|
31 | + /** |
|
32 | + * @var Request_RefreshParams_Exclude[] |
|
33 | + */ |
|
34 | 34 | private $excludes = array(); |
35 | 35 | |
36 | 36 | public function getDefaultOptions() : array |
@@ -41,27 +41,27 @@ discard block |
||
41 | 41 | ); |
42 | 42 | } |
43 | 43 | |
44 | - /** |
|
45 | - * Whether to automatically exclude the session variable |
|
46 | - * from the parameters. |
|
47 | - * |
|
48 | - * @param bool $exclude |
|
49 | - * @return Request_RefreshParams |
|
50 | - */ |
|
44 | + /** |
|
45 | + * Whether to automatically exclude the session variable |
|
46 | + * from the parameters. |
|
47 | + * |
|
48 | + * @param bool $exclude |
|
49 | + * @return Request_RefreshParams |
|
50 | + */ |
|
51 | 51 | public function setExcludeSessionName(bool $exclude=true) : Request_RefreshParams |
52 | 52 | { |
53 | 53 | $this->setOption('exclude-session-name', $exclude); |
54 | 54 | return $this; |
55 | 55 | } |
56 | 56 | |
57 | - /** |
|
58 | - * Whether to automatically exclude the HTML_QuickForm2 |
|
59 | - * request variable used to track whether a form has been |
|
60 | - * submitted. |
|
61 | - * |
|
62 | - * @param bool $exclude |
|
63 | - * @return Request_RefreshParams |
|
64 | - */ |
|
57 | + /** |
|
58 | + * Whether to automatically exclude the HTML_QuickForm2 |
|
59 | + * request variable used to track whether a form has been |
|
60 | + * submitted. |
|
61 | + * |
|
62 | + * @param bool $exclude |
|
63 | + * @return Request_RefreshParams |
|
64 | + */ |
|
65 | 65 | public function setExcludeQuickform(bool $exclude) : Request_RefreshParams |
66 | 66 | { |
67 | 67 | $this->setOption('exclude-quickform-submitter', $exclude); |
@@ -78,20 +78,20 @@ discard block |
||
78 | 78 | return $this; |
79 | 79 | } |
80 | 80 | |
81 | - /** |
|
82 | - * Exclude a request using a callback function. |
|
83 | - * |
|
84 | - * The function gets two parameters: |
|
85 | - * |
|
86 | - * - The name of the request parameter |
|
87 | - * - The value of the request parameter |
|
88 | - * |
|
89 | - * If the callback returns a boolean true, the |
|
90 | - * parameter will be excluded. |
|
91 | - * |
|
92 | - * @param callable $callback |
|
93 | - * @return Request_RefreshParams |
|
94 | - */ |
|
81 | + /** |
|
82 | + * Exclude a request using a callback function. |
|
83 | + * |
|
84 | + * The function gets two parameters: |
|
85 | + * |
|
86 | + * - The name of the request parameter |
|
87 | + * - The value of the request parameter |
|
88 | + * |
|
89 | + * If the callback returns a boolean true, the |
|
90 | + * parameter will be excluded. |
|
91 | + * |
|
92 | + * @param callable $callback |
|
93 | + * @return Request_RefreshParams |
|
94 | + */ |
|
95 | 95 | public function excludeParamByCallback($callback) : Request_RefreshParams |
96 | 96 | { |
97 | 97 | $this->excludes[] = new Request_RefreshParams_Exclude_Callback($callback); |
@@ -99,12 +99,12 @@ discard block |
||
99 | 99 | return $this; |
100 | 100 | } |
101 | 101 | |
102 | - /** |
|
103 | - * Excludes a request parameter by name. |
|
104 | - * |
|
105 | - * @param array $paramNames |
|
106 | - * @return Request_RefreshParams |
|
107 | - */ |
|
102 | + /** |
|
103 | + * Excludes a request parameter by name. |
|
104 | + * |
|
105 | + * @param array $paramNames |
|
106 | + * @return Request_RefreshParams |
|
107 | + */ |
|
108 | 108 | public function excludeParamsByName(array $paramNames) : Request_RefreshParams |
109 | 109 | { |
110 | 110 | foreach($paramNames as $name) |
@@ -115,15 +115,15 @@ discard block |
||
115 | 115 | return $this; |
116 | 116 | } |
117 | 117 | |
118 | - /** |
|
119 | - * Overrides a parameter: even if it exists, this |
|
120 | - * value will be used instead - even if it is on |
|
121 | - * the list of excluded parameters. |
|
122 | - * |
|
123 | - * @param string $paramName |
|
124 | - * @param mixed $paramValue |
|
125 | - * @return Request_RefreshParams |
|
126 | - */ |
|
118 | + /** |
|
119 | + * Overrides a parameter: even if it exists, this |
|
120 | + * value will be used instead - even if it is on |
|
121 | + * the list of excluded parameters. |
|
122 | + * |
|
123 | + * @param string $paramName |
|
124 | + * @param mixed $paramValue |
|
125 | + * @return Request_RefreshParams |
|
126 | + */ |
|
127 | 127 | public function overrideParam(string $paramName, $paramValue) : Request_RefreshParams |
128 | 128 | { |
129 | 129 | $this->overrides[$paramName] = $paramValue; |
@@ -131,12 +131,12 @@ discard block |
||
131 | 131 | return $this; |
132 | 132 | } |
133 | 133 | |
134 | - /** |
|
135 | - * Overrides an array of parameters. |
|
136 | - * |
|
137 | - * @param array $params |
|
138 | - * @return Request_RefreshParams |
|
139 | - */ |
|
134 | + /** |
|
135 | + * Overrides an array of parameters. |
|
136 | + * |
|
137 | + * @param array $params |
|
138 | + * @return Request_RefreshParams |
|
139 | + */ |
|
140 | 140 | public function overrideParams(array $params) : Request_RefreshParams |
141 | 141 | { |
142 | 142 | foreach($params as $name => $value) |
@@ -147,14 +147,14 @@ discard block |
||
147 | 147 | return $this; |
148 | 148 | } |
149 | 149 | |
150 | - /** |
|
151 | - * Resolves all the parameter exclusions that should |
|
152 | - * be applied to the list of parameters. This includes |
|
153 | - * the manually added exclusions and the dynamic exclusions |
|
154 | - * like the session name. |
|
155 | - * |
|
156 | - * @return Request_RefreshParams_Exclude[] |
|
157 | - */ |
|
150 | + /** |
|
151 | + * Resolves all the parameter exclusions that should |
|
152 | + * be applied to the list of parameters. This includes |
|
153 | + * the manually added exclusions and the dynamic exclusions |
|
154 | + * like the session name. |
|
155 | + * |
|
156 | + * @return Request_RefreshParams_Exclude[] |
|
157 | + */ |
|
158 | 158 | private function resolveExcludes() : array |
159 | 159 | { |
160 | 160 | $excludes = $this->excludes; |
@@ -165,12 +165,12 @@ discard block |
||
165 | 165 | return $excludes; |
166 | 166 | } |
167 | 167 | |
168 | - /** |
|
169 | - * Automatically excludes the session name from the |
|
170 | - * parameters, if present. |
|
171 | - * |
|
172 | - * @param Request_RefreshParams_Exclude[] $excludes |
|
173 | - */ |
|
168 | + /** |
|
169 | + * Automatically excludes the session name from the |
|
170 | + * parameters, if present. |
|
171 | + * |
|
172 | + * @param Request_RefreshParams_Exclude[] $excludes |
|
173 | + */ |
|
174 | 174 | private function autoExcludeSessionName(array &$excludes) : void |
175 | 175 | { |
176 | 176 | if($this->getBoolOption('exclude-session-name')) |
@@ -179,12 +179,12 @@ discard block |
||
179 | 179 | } |
180 | 180 | } |
181 | 181 | |
182 | - /** |
|
183 | - * Automatically excludes the HTML_QuickForm2 submit |
|
184 | - * tracking variable, when enabled. |
|
185 | - * |
|
186 | - * @param Request_RefreshParams_Exclude[] $excludes |
|
187 | - */ |
|
182 | + /** |
|
183 | + * Automatically excludes the HTML_QuickForm2 submit |
|
184 | + * tracking variable, when enabled. |
|
185 | + * |
|
186 | + * @param Request_RefreshParams_Exclude[] $excludes |
|
187 | + */ |
|
188 | 188 | private function autoExcludeQuickform(array &$excludes) : void |
189 | 189 | { |
190 | 190 | if($this->getBoolOption('exclude-quickform-submitter')) |
@@ -196,12 +196,12 @@ discard block |
||
196 | 196 | } |
197 | 197 | } |
198 | 198 | |
199 | - /** |
|
200 | - * Retrieves the list of parameters matching the |
|
201 | - * current settings. |
|
202 | - * |
|
203 | - * @return array<string,mixed> |
|
204 | - */ |
|
199 | + /** |
|
200 | + * Retrieves the list of parameters matching the |
|
201 | + * current settings. |
|
202 | + * |
|
203 | + * @return array<string,mixed> |
|
204 | + */ |
|
205 | 205 | public function getParams() : array |
206 | 206 | { |
207 | 207 | $params = $this->removeExcluded($_REQUEST); |
@@ -217,12 +217,12 @@ discard block |
||
217 | 217 | return $params; |
218 | 218 | } |
219 | 219 | |
220 | - /** |
|
221 | - * Removes all excluded parameters from the array. |
|
222 | - * |
|
223 | - * @param array<string,mixed> $params |
|
224 | - * @return array<string,mixed> |
|
225 | - */ |
|
220 | + /** |
|
221 | + * Removes all excluded parameters from the array. |
|
222 | + * |
|
223 | + * @param array<string,mixed> $params |
|
224 | + * @return array<string,mixed> |
|
225 | + */ |
|
226 | 226 | private function removeExcluded(array $params) : array |
227 | 227 | { |
228 | 228 | $result = array(); |
@@ -240,14 +240,14 @@ discard block |
||
240 | 240 | return $result; |
241 | 241 | } |
242 | 242 | |
243 | - /** |
|
244 | - * Checks all configured exclusions to see if the |
|
245 | - * parameter should be excluded or not. |
|
246 | - * |
|
247 | - * @param string $paramName |
|
248 | - * @param mixed $paramValue |
|
249 | - * @return bool |
|
250 | - */ |
|
243 | + /** |
|
244 | + * Checks all configured exclusions to see if the |
|
245 | + * parameter should be excluded or not. |
|
246 | + * |
|
247 | + * @param string $paramName |
|
248 | + * @param mixed $paramValue |
|
249 | + * @return bool |
|
250 | + */ |
|
251 | 251 | public function isExcluded(string $paramName, $paramValue) : bool |
252 | 252 | { |
253 | 253 | $excludes = $this->resolveExcludes(); |
@@ -34,42 +34,42 @@ discard block |
||
34 | 34 | const TYPE_PHONE = 'phone'; |
35 | 35 | const TYPE_URL = 'url'; |
36 | 36 | |
37 | - /** |
|
38 | - * The original URL that was passed to the constructor. |
|
39 | - * @var string |
|
40 | - */ |
|
37 | + /** |
|
38 | + * The original URL that was passed to the constructor. |
|
39 | + * @var string |
|
40 | + */ |
|
41 | 41 | protected $rawURL; |
42 | 42 | |
43 | - /** |
|
44 | - * @var array |
|
45 | - */ |
|
43 | + /** |
|
44 | + * @var array |
|
45 | + */ |
|
46 | 46 | protected $info; |
47 | 47 | |
48 | - /** |
|
49 | - * @var string[] |
|
50 | - */ |
|
48 | + /** |
|
49 | + * @var string[] |
|
50 | + */ |
|
51 | 51 | protected $excludedParams = array(); |
52 | 52 | |
53 | - /** |
|
54 | - * @var bool |
|
55 | - * @see URLInfo::setParamExclusion() |
|
56 | - */ |
|
53 | + /** |
|
54 | + * @var bool |
|
55 | + * @see URLInfo::setParamExclusion() |
|
56 | + */ |
|
57 | 57 | protected $paramExclusion = false; |
58 | 58 | |
59 | - /** |
|
60 | - * @var array |
|
61 | - * @see URLInfo::getTypeLabel() |
|
62 | - */ |
|
59 | + /** |
|
60 | + * @var array |
|
61 | + * @see URLInfo::getTypeLabel() |
|
62 | + */ |
|
63 | 63 | protected static $typeLabels; |
64 | 64 | |
65 | - /** |
|
66 | - * @var bool |
|
67 | - */ |
|
65 | + /** |
|
66 | + * @var bool |
|
67 | + */ |
|
68 | 68 | protected $highlightExcluded = false; |
69 | 69 | |
70 | - /** |
|
71 | - * @var array |
|
72 | - */ |
|
70 | + /** |
|
71 | + * @var array |
|
72 | + */ |
|
73 | 73 | protected $infoKeys = array( |
74 | 74 | 'scheme', |
75 | 75 | 'host', |
@@ -81,24 +81,24 @@ discard block |
||
81 | 81 | 'fragment' |
82 | 82 | ); |
83 | 83 | |
84 | - /** |
|
85 | - * @var string |
|
86 | - */ |
|
84 | + /** |
|
85 | + * @var string |
|
86 | + */ |
|
87 | 87 | protected $url; |
88 | 88 | |
89 | - /** |
|
90 | - * @var URLInfo_Parser |
|
91 | - */ |
|
89 | + /** |
|
90 | + * @var URLInfo_Parser |
|
91 | + */ |
|
92 | 92 | protected $parser; |
93 | 93 | |
94 | - /** |
|
95 | - * @var URLInfo_Normalizer |
|
96 | - */ |
|
94 | + /** |
|
95 | + * @var URLInfo_Normalizer |
|
96 | + */ |
|
97 | 97 | protected $normalizer; |
98 | 98 | |
99 | - /** |
|
100 | - * @var bool |
|
101 | - */ |
|
99 | + /** |
|
100 | + * @var bool |
|
101 | + */ |
|
102 | 102 | protected $encodeUTFChars = false; |
103 | 103 | |
104 | 104 | public function __construct(string $url) |
@@ -115,14 +115,14 @@ discard block |
||
115 | 115 | $this->info = $this->parser->getInfo(); |
116 | 116 | } |
117 | 117 | |
118 | - /** |
|
119 | - * Whether to URL encode any non-encoded UTF8 characters in the URL. |
|
120 | - * Default is to leave them as-is for better readability, since |
|
121 | - * browsers handle this well. |
|
122 | - * |
|
123 | - * @param bool $enabled |
|
124 | - * @return URLInfo |
|
125 | - */ |
|
118 | + /** |
|
119 | + * Whether to URL encode any non-encoded UTF8 characters in the URL. |
|
120 | + * Default is to leave them as-is for better readability, since |
|
121 | + * browsers handle this well. |
|
122 | + * |
|
123 | + * @param bool $enabled |
|
124 | + * @return URLInfo |
|
125 | + */ |
|
126 | 126 | public function setUTFEncoding(bool $enabled=true) : URLInfo |
127 | 127 | { |
128 | 128 | if($this->encodeUTFChars !== $enabled) |
@@ -139,13 +139,13 @@ discard block |
||
139 | 139 | return $this->encodeUTFChars; |
140 | 140 | } |
141 | 141 | |
142 | - /** |
|
143 | - * Filters an URL: removes control characters and the |
|
144 | - * like to have a clean URL to work with. |
|
145 | - * |
|
146 | - * @param string $url |
|
147 | - * @return string |
|
148 | - */ |
|
142 | + /** |
|
143 | + * Filters an URL: removes control characters and the |
|
144 | + * like to have a clean URL to work with. |
|
145 | + * |
|
146 | + * @param string $url |
|
147 | + * @return string |
|
148 | + */ |
|
149 | 149 | public static function filterURL(string $url) |
150 | 150 | { |
151 | 151 | return URLInfo_Filter::filter($url); |
@@ -175,12 +175,12 @@ discard block |
||
175 | 175 | return $this->info['type'] === self::TYPE_PHONE; |
176 | 176 | } |
177 | 177 | |
178 | - /** |
|
179 | - * Whether the URL is a regular URL, not one of the |
|
180 | - * other types like a phone number or email address. |
|
181 | - * |
|
182 | - * @return bool |
|
183 | - */ |
|
178 | + /** |
|
179 | + * Whether the URL is a regular URL, not one of the |
|
180 | + * other types like a phone number or email address. |
|
181 | + * |
|
182 | + * @return bool |
|
183 | + */ |
|
184 | 184 | public function isURL() : bool |
185 | 185 | { |
186 | 186 | $host = $this->getHost(); |
@@ -192,20 +192,20 @@ discard block |
||
192 | 192 | return $this->parser->isValid(); |
193 | 193 | } |
194 | 194 | |
195 | - /** |
|
196 | - * Retrieves the host name, or an empty string if none is present. |
|
197 | - * |
|
198 | - * @return string |
|
199 | - */ |
|
195 | + /** |
|
196 | + * Retrieves the host name, or an empty string if none is present. |
|
197 | + * |
|
198 | + * @return string |
|
199 | + */ |
|
200 | 200 | public function getHost() : string |
201 | 201 | { |
202 | 202 | return $this->getInfoKey('host'); |
203 | 203 | } |
204 | 204 | |
205 | - /** |
|
206 | - * Retrieves the path, or an empty string if none is present. |
|
207 | - * @return string |
|
208 | - */ |
|
205 | + /** |
|
206 | + * Retrieves the path, or an empty string if none is present. |
|
207 | + * @return string |
|
208 | + */ |
|
209 | 209 | public function getPath() : string |
210 | 210 | { |
211 | 211 | return $this->getInfoKey('path'); |
@@ -221,10 +221,10 @@ discard block |
||
221 | 221 | return $this->getInfoKey('scheme'); |
222 | 222 | } |
223 | 223 | |
224 | - /** |
|
225 | - * Retrieves the port specified in the URL, or -1 if none is preseent. |
|
226 | - * @return int |
|
227 | - */ |
|
224 | + /** |
|
225 | + * Retrieves the port specified in the URL, or -1 if none is preseent. |
|
226 | + * @return int |
|
227 | + */ |
|
228 | 228 | public function getPort() : int |
229 | 229 | { |
230 | 230 | $port = $this->getInfoKey('port'); |
@@ -236,13 +236,13 @@ discard block |
||
236 | 236 | return -1; |
237 | 237 | } |
238 | 238 | |
239 | - /** |
|
240 | - * Retrieves the raw query string, or an empty string if none is present. |
|
241 | - * |
|
242 | - * @return string |
|
243 | - * |
|
244 | - * @see URLInfo::getParams() |
|
245 | - */ |
|
239 | + /** |
|
240 | + * Retrieves the raw query string, or an empty string if none is present. |
|
241 | + * |
|
242 | + * @return string |
|
243 | + * |
|
244 | + * @see URLInfo::getParams() |
|
245 | + */ |
|
246 | 246 | public function getQuery() : string |
247 | 247 | { |
248 | 248 | return $this->getInfoKey('query'); |
@@ -258,20 +258,20 @@ discard block |
||
258 | 258 | return $this->getInfoKey('pass'); |
259 | 259 | } |
260 | 260 | |
261 | - /** |
|
262 | - * Whether the URL contains a port number. |
|
263 | - * @return bool |
|
264 | - */ |
|
261 | + /** |
|
262 | + * Whether the URL contains a port number. |
|
263 | + * @return bool |
|
264 | + */ |
|
265 | 265 | public function hasPort() : bool |
266 | 266 | { |
267 | 267 | return $this->getPort() !== -1; |
268 | 268 | } |
269 | 269 | |
270 | - /** |
|
271 | - * Alias for the hasParams() method. |
|
272 | - * @return bool |
|
273 | - * @see URLInfo::hasParams() |
|
274 | - */ |
|
270 | + /** |
|
271 | + * Alias for the hasParams() method. |
|
272 | + * @return bool |
|
273 | + * @see URLInfo::hasParams() |
|
274 | + */ |
|
275 | 275 | public function hasQuery() : bool |
276 | 276 | { |
277 | 277 | return $this->hasParams(); |
@@ -316,23 +316,23 @@ discard block |
||
316 | 316 | return ''; |
317 | 317 | } |
318 | 318 | |
319 | - /** |
|
320 | - * Retrieves a normalized URL: this ensures that all parameters |
|
321 | - * in the URL are always in the same order. |
|
322 | - * |
|
323 | - * @return string |
|
324 | - */ |
|
319 | + /** |
|
320 | + * Retrieves a normalized URL: this ensures that all parameters |
|
321 | + * in the URL are always in the same order. |
|
322 | + * |
|
323 | + * @return string |
|
324 | + */ |
|
325 | 325 | public function getNormalized() : string |
326 | 326 | { |
327 | 327 | return $this->normalize(true); |
328 | 328 | } |
329 | 329 | |
330 | - /** |
|
331 | - * Like getNormalized(), but if a username and password are present |
|
332 | - * in the URL, returns the URL without them. |
|
333 | - * |
|
334 | - * @return string |
|
335 | - */ |
|
330 | + /** |
|
331 | + * Like getNormalized(), but if a username and password are present |
|
332 | + * in the URL, returns the URL without them. |
|
333 | + * |
|
334 | + * @return string |
|
335 | + */ |
|
336 | 336 | public function getNormalizedWithoutAuth() : string |
337 | 337 | { |
338 | 338 | return $this->normalize(false); |
@@ -353,25 +353,25 @@ discard block |
||
353 | 353 | return $this->normalizer->normalize(); |
354 | 354 | } |
355 | 355 | |
356 | - /** |
|
357 | - * Creates a hash of the URL, which can be used for comparisons. |
|
358 | - * Since any parameters in the URL's query are sorted alphabetically, |
|
359 | - * the same links with a different parameter order will have the |
|
360 | - * same hash. |
|
361 | - * |
|
362 | - * @return string |
|
363 | - */ |
|
356 | + /** |
|
357 | + * Creates a hash of the URL, which can be used for comparisons. |
|
358 | + * Since any parameters in the URL's query are sorted alphabetically, |
|
359 | + * the same links with a different parameter order will have the |
|
360 | + * same hash. |
|
361 | + * |
|
362 | + * @return string |
|
363 | + */ |
|
364 | 364 | public function getHash() |
365 | 365 | { |
366 | 366 | return \AppUtils\ConvertHelper::string2shortHash($this->getNormalized()); |
367 | 367 | } |
368 | 368 | |
369 | - /** |
|
370 | - * Highlights the URL using HTML tags with specific highlighting |
|
371 | - * class names. |
|
372 | - * |
|
373 | - * @return string Will return an empty string if the URL is not valid. |
|
374 | - */ |
|
369 | + /** |
|
370 | + * Highlights the URL using HTML tags with specific highlighting |
|
371 | + * class names. |
|
372 | + * |
|
373 | + * @return string Will return an empty string if the URL is not valid. |
|
374 | + */ |
|
375 | 375 | public function getHighlighted() : string |
376 | 376 | { |
377 | 377 | if(!$this->isValid()) { |
@@ -405,15 +405,15 @@ discard block |
||
405 | 405 | return count($params); |
406 | 406 | } |
407 | 407 | |
408 | - /** |
|
409 | - * Retrieves all parameters specified in the url, |
|
410 | - * if any, as an associative array. |
|
411 | - * |
|
412 | - * NOTE: Ignores parameters that have been added |
|
413 | - * to the excluded parameters list. |
|
414 | - * |
|
415 | - * @return array |
|
416 | - */ |
|
408 | + /** |
|
409 | + * Retrieves all parameters specified in the url, |
|
410 | + * if any, as an associative array. |
|
411 | + * |
|
412 | + * NOTE: Ignores parameters that have been added |
|
413 | + * to the excluded parameters list. |
|
414 | + * |
|
415 | + * @return array |
|
416 | + */ |
|
417 | 417 | public function getParams() : array |
418 | 418 | { |
419 | 419 | if(!$this->paramExclusion || empty($this->excludedParams)) { |
@@ -431,22 +431,22 @@ discard block |
||
431 | 431 | return $keep; |
432 | 432 | } |
433 | 433 | |
434 | - /** |
|
435 | - * Retrieves the names of all parameters present in the URL, if any. |
|
436 | - * @return string[] |
|
437 | - */ |
|
434 | + /** |
|
435 | + * Retrieves the names of all parameters present in the URL, if any. |
|
436 | + * @return string[] |
|
437 | + */ |
|
438 | 438 | public function getParamNames() : array |
439 | 439 | { |
440 | 440 | $params = $this->getParams(); |
441 | 441 | return array_keys($params); |
442 | 442 | } |
443 | 443 | |
444 | - /** |
|
445 | - * Retrieves a specific parameter value from the URL. |
|
446 | - * |
|
447 | - * @param string $name |
|
448 | - * @return string The parameter value, or an empty string if it does not exist. |
|
449 | - */ |
|
444 | + /** |
|
445 | + * Retrieves a specific parameter value from the URL. |
|
446 | + * |
|
447 | + * @param string $name |
|
448 | + * @return string The parameter value, or an empty string if it does not exist. |
|
449 | + */ |
|
450 | 450 | public function getParam(string $name) : string |
451 | 451 | { |
452 | 452 | if(isset($this->info['params'][$name])) { |
@@ -456,16 +456,16 @@ discard block |
||
456 | 456 | return ''; |
457 | 457 | } |
458 | 458 | |
459 | - /** |
|
460 | - * Excludes an URL parameter entirely if present: |
|
461 | - * the parser will act as if the parameter was not |
|
462 | - * even present in the source URL, effectively |
|
463 | - * stripping it. |
|
464 | - * |
|
465 | - * @param string $name |
|
466 | - * @param string $reason A human readable explanation why this is excluded - used when highlighting links. |
|
467 | - * @return URLInfo |
|
468 | - */ |
|
459 | + /** |
|
460 | + * Excludes an URL parameter entirely if present: |
|
461 | + * the parser will act as if the parameter was not |
|
462 | + * even present in the source URL, effectively |
|
463 | + * stripping it. |
|
464 | + * |
|
465 | + * @param string $name |
|
466 | + * @param string $reason A human readable explanation why this is excluded - used when highlighting links. |
|
467 | + * @return URLInfo |
|
468 | + */ |
|
469 | 469 | public function excludeParam(string $name, string $reason) : URLInfo |
470 | 470 | { |
471 | 471 | if(!isset($this->excludedParams[$name])) |
@@ -518,25 +518,25 @@ discard block |
||
518 | 518 | return self::$typeLabels[$this->getType()]; |
519 | 519 | } |
520 | 520 | |
521 | - /** |
|
522 | - * Whether excluded parameters should be highlighted in |
|
523 | - * a different color in the URL when using the |
|
524 | - * {@link URLInfo::getHighlighted()} method. |
|
525 | - * |
|
526 | - * @param bool $highlight |
|
527 | - * @return URLInfo |
|
528 | - */ |
|
521 | + /** |
|
522 | + * Whether excluded parameters should be highlighted in |
|
523 | + * a different color in the URL when using the |
|
524 | + * {@link URLInfo::getHighlighted()} method. |
|
525 | + * |
|
526 | + * @param bool $highlight |
|
527 | + * @return URLInfo |
|
528 | + */ |
|
529 | 529 | public function setHighlightExcluded(bool $highlight=true) : URLInfo |
530 | 530 | { |
531 | 531 | $this->highlightExcluded = $highlight; |
532 | 532 | return $this; |
533 | 533 | } |
534 | 534 | |
535 | - /** |
|
536 | - * Returns an array with all relevant URL information. |
|
537 | - * |
|
538 | - * @return array |
|
539 | - */ |
|
535 | + /** |
|
536 | + * Returns an array with all relevant URL information. |
|
537 | + * |
|
538 | + * @return array |
|
539 | + */ |
|
540 | 540 | public function toArray() : array |
541 | 541 | { |
542 | 542 | return array( |
@@ -580,24 +580,24 @@ discard block |
||
580 | 580 | return $this; |
581 | 581 | } |
582 | 582 | |
583 | - /** |
|
584 | - * Whether the parameter exclusion mode is enabled: |
|
585 | - * In this case, if any parameters have been added to the |
|
586 | - * exclusion list, all relevant methods will exclude these. |
|
587 | - * |
|
588 | - * @return bool |
|
589 | - */ |
|
583 | + /** |
|
584 | + * Whether the parameter exclusion mode is enabled: |
|
585 | + * In this case, if any parameters have been added to the |
|
586 | + * exclusion list, all relevant methods will exclude these. |
|
587 | + * |
|
588 | + * @return bool |
|
589 | + */ |
|
590 | 590 | public function isParamExclusionEnabled() : bool |
591 | 591 | { |
592 | 592 | return $this->paramExclusion; |
593 | 593 | } |
594 | 594 | |
595 | - /** |
|
596 | - * Checks whether the link contains any parameters that |
|
597 | - * are on the list of excluded parameters. |
|
598 | - * |
|
599 | - * @return bool |
|
600 | - */ |
|
595 | + /** |
|
596 | + * Checks whether the link contains any parameters that |
|
597 | + * are on the list of excluded parameters. |
|
598 | + * |
|
599 | + * @return bool |
|
600 | + */ |
|
601 | 601 | public function containsExcludedParams() : bool |
602 | 602 | { |
603 | 603 | if(empty($this->excludedParams)) { |
@@ -665,16 +665,16 @@ discard block |
||
665 | 665 | return $this->highlightExcluded; |
666 | 666 | } |
667 | 667 | |
668 | - /** |
|
669 | - * Checks if the URL exists, i.e. can be connected to. Will return |
|
670 | - * true if the returned HTTP status code is `200` or `302`. |
|
671 | - * |
|
672 | - * NOTE: If the target URL requires HTTP authentication, the username |
|
673 | - * and password should be integrated into the URL. |
|
674 | - * |
|
675 | - * @return bool |
|
676 | - * @throws BaseException |
|
677 | - */ |
|
668 | + /** |
|
669 | + * Checks if the URL exists, i.e. can be connected to. Will return |
|
670 | + * true if the returned HTTP status code is `200` or `302`. |
|
671 | + * |
|
672 | + * NOTE: If the target URL requires HTTP authentication, the username |
|
673 | + * and password should be integrated into the URL. |
|
674 | + * |
|
675 | + * @return bool |
|
676 | + * @throws BaseException |
|
677 | + */ |
|
678 | 678 | public function tryConnect(bool $verifySSL=true) : bool |
679 | 679 | { |
680 | 680 | return $this->createConnectionTester() |
@@ -682,26 +682,26 @@ discard block |
||
682 | 682 | ->canConnect(); |
683 | 683 | } |
684 | 684 | |
685 | - /** |
|
686 | - * Creates the connection tester instance that is used |
|
687 | - * to check if a URL can be connected to, and which is |
|
688 | - * used in the {@see URLInfo::tryConnect()} method. It |
|
689 | - * allows more settings to be used. |
|
690 | - * |
|
691 | - * @return URLInfo_ConnectionTester |
|
692 | - */ |
|
685 | + /** |
|
686 | + * Creates the connection tester instance that is used |
|
687 | + * to check if a URL can be connected to, and which is |
|
688 | + * used in the {@see URLInfo::tryConnect()} method. It |
|
689 | + * allows more settings to be used. |
|
690 | + * |
|
691 | + * @return URLInfo_ConnectionTester |
|
692 | + */ |
|
693 | 693 | public function createConnectionTester() : URLInfo_ConnectionTester |
694 | 694 | { |
695 | 695 | return new URLInfo_ConnectionTester($this); |
696 | 696 | } |
697 | 697 | |
698 | - /** |
|
699 | - * Adds/overwrites an URL parameter. |
|
700 | - * |
|
701 | - * @param string $name |
|
702 | - * @param string $val |
|
703 | - * @return URLInfo |
|
704 | - */ |
|
698 | + /** |
|
699 | + * Adds/overwrites an URL parameter. |
|
700 | + * |
|
701 | + * @param string $name |
|
702 | + * @param string $val |
|
703 | + * @return URLInfo |
|
704 | + */ |
|
705 | 705 | public function setParam(string $name, string $val) : URLInfo |
706 | 706 | { |
707 | 707 | $this->info['params'][$name] = $val; |
@@ -709,13 +709,13 @@ discard block |
||
709 | 709 | return $this; |
710 | 710 | } |
711 | 711 | |
712 | - /** |
|
713 | - * Removes an URL parameter. Has no effect if the |
|
714 | - * parameter is not present to begin with. |
|
715 | - * |
|
716 | - * @param string $param |
|
717 | - * @return URLInfo |
|
718 | - */ |
|
712 | + /** |
|
713 | + * Removes an URL parameter. Has no effect if the |
|
714 | + * parameter is not present to begin with. |
|
715 | + * |
|
716 | + * @param string $param |
|
717 | + * @return URLInfo |
|
718 | + */ |
|
719 | 719 | public function removeParam(string $param) : URLInfo |
720 | 720 | { |
721 | 721 | if(isset($this->info['params'][$param])) |