fix timezone problems in timesheet forms (#555)
This commit is contained in:
@@ -16,9 +16,6 @@ use KevinPapst\AdminLTEBundle\Model\UserModel;
|
||||
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
|
||||
use Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInterface;
|
||||
|
||||
/**
|
||||
* Class NavbarShowUserSubscriber
|
||||
*/
|
||||
class NavbarShowUserSubscriber implements EventSubscriberInterface
|
||||
{
|
||||
/**
|
||||
@@ -27,7 +24,6 @@ class NavbarShowUserSubscriber implements EventSubscriberInterface
|
||||
protected $storage;
|
||||
|
||||
/**
|
||||
* NavbarShowUserListener constructor.
|
||||
* @param TokenStorageInterface $tokenStorage
|
||||
*/
|
||||
public function __construct(TokenStorageInterface $tokenStorage)
|
||||
@@ -64,7 +60,7 @@ class NavbarShowUserSubscriber implements EventSubscriberInterface
|
||||
->setIsOnline(true)
|
||||
->setTitle($myUser->getTitle())
|
||||
->setAvatar($myUser->getAvatar())
|
||||
->setMemberSince(new \DateTime());
|
||||
->setMemberSince($myUser->getRegisteredAt());
|
||||
|
||||
$event->setUser($user);
|
||||
}
|
||||
|
||||
@@ -46,7 +46,7 @@ class TimezoneSubscriber implements EventSubscriberInterface
|
||||
*/
|
||||
public function setTimezone(GetResponseEvent $event)
|
||||
{
|
||||
if (null === $this->storage->getToken()) {
|
||||
if (!$this->canHandleEvent()) {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -55,4 +55,24 @@ class TimezoneSubscriber implements EventSubscriberInterface
|
||||
$timezone = $user->getPreferenceValue('timezone', date_default_timezone_get());
|
||||
date_default_timezone_set($timezone);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
*/
|
||||
protected function canHandleEvent(): bool
|
||||
{
|
||||
if (null === $this->storage->getToken()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
/* @var $user User */
|
||||
$user = $this->storage->getToken()->getUser();
|
||||
|
||||
if (null === $user) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return ($user instanceof User);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user