We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 710710c commit 04df91eCopy full SHA for 04df91e
1 file changed
app/Middleware/TzMiddleware.php
@@ -2,19 +2,25 @@
2
3
namespace App\Middleware;
4
5
+use App\Response\JsonResponse;
6
use Closure;
7
use Core\Auth\Auth;
8
use Core\Http\Request;
9
use Core\Middleware\MiddlewareInterface;
10
use Core\Support\Env;
11
use Core\Support\Time;
12
+use DateTimeZone;
13
14
final class TzMiddleware implements MiddlewareInterface
15
{
16
public function handle(Request $request, Closure $next)
17
- // override default timezone from env.
- Env::set('TIMEZONE', Auth::user()->tz);
18
+ $tz = Auth::user()->getTimezone();
19
+ if (!in_array($tz, DateTimeZone::listIdentifiers(), true)) {
20
+ return (new JsonResponse)->errorBadRequest(['Invalid time zone']);
21
+ }
22
+
23
+ Env::set('TIMEZONE', $tz);
24
Time::setTimezoneDefault();
25
26
return $next($request);
0 commit comments