mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-09-04 11:48:05 +00:00
Add extra validation.
This commit is contained in:
@@ -147,18 +147,24 @@ class ReportFormRequest extends FormRequest
|
|||||||
$range = $this->get('daterange');
|
$range = $this->get('daterange');
|
||||||
$parts = explode(' - ', (string)$range);
|
$parts = explode(' - ', (string)$range);
|
||||||
if (2 === count($parts)) {
|
if (2 === count($parts)) {
|
||||||
try {
|
$string = $parts[1];
|
||||||
$date = new Carbon($parts[1]);
|
// validate as date
|
||||||
|
// if regex for YYYY-MM-DD:
|
||||||
} catch (Exception $e) {
|
$pattern = '/^(19|20)\d\d-(0[1-9]|1[012])-(0[1-9]|[12][\d]|3[01])$/';
|
||||||
$error = sprintf('"%s" is not a valid date range: %s', $range, $e->getMessage());
|
if (preg_match($pattern, $string)) {
|
||||||
Log::error($error);
|
try {
|
||||||
throw new FireflyException($error, 0, $e);
|
$date = new Carbon($parts[1]);
|
||||||
|
} catch (Exception $e) {
|
||||||
|
$error = sprintf('"%s" is not a valid date range: %s', $range, $e->getMessage());
|
||||||
|
Log::error($error);
|
||||||
|
throw new FireflyException($error, 0, $e);
|
||||||
|
}
|
||||||
|
return $date;
|
||||||
}
|
}
|
||||||
|
$error = sprintf('"%s" is not a valid date range: %s', $range, 'invalid format :(');
|
||||||
|
Log::error($error);
|
||||||
|
throw new FireflyException($error, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
return $date;
|
return $date;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -175,15 +181,23 @@ class ReportFormRequest extends FormRequest
|
|||||||
$range = $this->get('daterange');
|
$range = $this->get('daterange');
|
||||||
$parts = explode(' - ', (string)$range);
|
$parts = explode(' - ', (string)$range);
|
||||||
if (2 === count($parts)) {
|
if (2 === count($parts)) {
|
||||||
try {
|
$string = $parts[0];
|
||||||
$date = new Carbon($parts[0]);
|
// validate as date
|
||||||
|
// if regex for YYYY-MM-DD:
|
||||||
} catch (Exception $e) {
|
$pattern = '/^(19|20)\d\d-(0[1-9]|1[012])-(0[1-9]|[12][\d]|3[01])$/';
|
||||||
$error = sprintf('"%s" is not a valid date range: %s', $range, $e->getMessage());
|
if (preg_match($pattern, $string)) {
|
||||||
Log::error($error);
|
try {
|
||||||
throw new FireflyException($error, 0, $e);
|
$date = new Carbon($parts[1]);
|
||||||
|
} catch (Exception $e) {
|
||||||
|
$error = sprintf('"%s" is not a valid date range: %s', $range, $e->getMessage());
|
||||||
|
Log::error($error);
|
||||||
|
throw new FireflyException($error, 0, $e);
|
||||||
|
}
|
||||||
|
return $date;
|
||||||
}
|
}
|
||||||
|
$error = sprintf('"%s" is not a valid date range: %s', $range, 'invalid format :(');
|
||||||
|
Log::error($error);
|
||||||
|
throw new FireflyException($error, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
return $date;
|
return $date;
|
||||||
|
Reference in New Issue
Block a user