summaryrefslogtreecommitdiff
path: root/src/Model
diff options
context:
space:
mode:
authorFbenas <philbeansburton@gmail.com>2018-05-07 15:02:39 +0100
committerFbenas <philbeansburton@gmail.com>2018-05-07 15:02:39 +0100
commit8350b6bd36d3a4bb3a99dfbf67e746f4f815927c (patch)
treed7cf04d2343ca031a8f241f204e4227eb6b48016 /src/Model
parent33f00442f1667d57f94433834e0da4985670025b (diff)
Add some simple exception handling for bad inputs
Diffstat (limited to 'src/Model')
-rw-r--r--src/Model/Collection.php14
1 files changed, 6 insertions, 8 deletions
diff --git a/src/Model/Collection.php b/src/Model/Collection.php
index 803e777..62bbf98 100644
--- a/src/Model/Collection.php
+++ b/src/Model/Collection.php
@@ -8,7 +8,6 @@ use Exception;
use Iterator;
use App\Script\Input;
use DateTime;
-use DateTimeZone;
use Countable;
/**
@@ -192,19 +191,18 @@ class Collection implements ArrayAccess, Iterator, Countable
if ($covers = (int) $input->getOption('c')) {
$this->filterByCovers($covers);
}
-
-
- // day - delivery day (dd/mm/yy)
- // time - delivery time in 24h format (hh:mm)
- // location - delivery location (postcode without spaces, e.g. NW43QB)
- // covers - number of people to feed
}
public function filterByDateTime(string $date, string $time)
{
$dateTime = DateTime::createFromFormat('d/m/y G:i', $date . ' ' . $time);
- $dateTime->setTImezone(new DateTImeZone('Europe/London'));
+ if (!$dateTime) {
+ throw new Exception(
+ 'Unable to parse datetime. Required time format: `G:i` (e.g. 05:30). '
+ . 'Required date format: `d/m/y` (e.g. 22/06/18)'
+ );
+ }
$out = [];
foreach ($this->models as $model) {
if ($model->checkDate($dateTime)) {