Merge pull request #4424 from appwrite/master

sync: 1.1.x <- master
This commit is contained in:
Torsten Dittmann
2022-10-11 16:03:43 +02:00
committed by GitHub
3 changed files with 14 additions and 2 deletions
+8 -2
View File
@@ -49,11 +49,17 @@ class URL extends Validator
*/
public function isValid($value): bool
{
if (\filter_var($value, FILTER_VALIDATE_URL) === false) {
$sanitizedURL = '';
foreach (str_split($value) as $character) {
$sanitizedURL .= (ord($character) > 127) ? rawurlencode($character) : $character;
}
if (\filter_var($sanitizedURL, FILTER_VALIDATE_URL) === false) {
return false;
}
if (!empty($this->allowedSchemes) && !\in_array(\parse_url($value, PHP_URL_SCHEME), $this->allowedSchemes)) {
if (!empty($this->allowedSchemes) && !\in_array(\parse_url($sanitizedURL, PHP_URL_SCHEME), $this->allowedSchemes)) {
return false;
}