summaryrefslogtreecommitdiff
path: root/src/Middleware
diff options
context:
space:
mode:
Diffstat (limited to 'src/Middleware')
-rw-r--r--src/Middleware/ErrorHandler.php25
-rw-r--r--src/Middleware/LegacyMiddleware.php20
2 files changed, 19 insertions, 26 deletions
diff --git a/src/Middleware/ErrorHandler.php b/src/Middleware/ErrorHandler.php
index 46e6e5a8..85f315d4 100644
--- a/src/Middleware/ErrorHandler.php
+++ b/src/Middleware/ErrorHandler.php
@@ -63,17 +63,11 @@ class ErrorHandler implements MiddlewareInterface
} catch (HttpException $e) {
$response = $this->createResponse($e->getMessage(), $e->getStatusCode(), $e->getHeaders());
} catch (ValidationException $e) {
- $response = $this->createResponse('', 302, ['Location' => $this->getPreviousUrl($request)]);
+ $response = $this->redirectBack();
+ $response->with('errors', ['validation' => $e->getValidator()->getErrors()]);
if ($request instanceof Request) {
- $session = $request->getSession();
- $errors = array_merge_recursive(
- $session->get('errors', []),
- ['validation' => $e->getValidator()->getErrors()]
- );
- $session->set('errors', $errors);
-
- $session->set('form-data', Arr::except($request->request->all(), $this->formIgnore));
+ $response->withInput(Arr::except($request->request->all(), $this->formIgnore));
}
}
@@ -140,15 +134,12 @@ class ErrorHandler implements MiddlewareInterface
}
/**
- * @param ServerRequestInterface $request
- * @return string
+ * Create a redirect back response
+ *
+ * @return Response
*/
- protected function getPreviousUrl(ServerRequestInterface $request)
+ protected function redirectBack()
{
- if ($header = $request->getHeader('referer')) {
- return array_pop($header);
- }
-
- return '/';
+ return back();
}
}
diff --git a/src/Middleware/LegacyMiddleware.php b/src/Middleware/LegacyMiddleware.php
index 8a0ff002..5e08858d 100644
--- a/src/Middleware/LegacyMiddleware.php
+++ b/src/Middleware/LegacyMiddleware.php
@@ -205,10 +205,6 @@ class LegacyMiddleware implements MiddlewareInterface
$title = admin_groups_title();
$content = admin_groups();
return [$title, $content];
- case 'admin_import':
- $title = admin_import_title();
- $content = admin_import();
- return [$title, $content];
case 'admin_shifts':
$title = admin_shifts_title();
$content = admin_shifts();
@@ -219,7 +215,7 @@ class LegacyMiddleware implements MiddlewareInterface
return [$title, $content];
}
- redirect(page_link_to('login'));
+ throw_redirect(page_link_to('login'));
return [];
}
@@ -239,9 +235,15 @@ class LegacyMiddleware implements MiddlewareInterface
return response($content, (int)$page);
}
- return response(view('layouts/app', [
- 'title' => $title,
- 'content' => msg() . $content,
- ]), 200);
+ return response(
+ view(
+ 'layouts/app',
+ [
+ 'title' => $title,
+ 'content' => msg() . $content,
+ ]
+ ),
+ 200
+ );
}
}