mirror of
https://github.com/getgrav/grav-plugin-admin.git
synced 2025-11-03 11:55:52 +01:00
Fixed another case of bad profile link
This commit is contained in:
@@ -23,6 +23,7 @@ use Grav\Common\Session;
|
||||
use Grav\Common\Themes;
|
||||
use Grav\Common\Uri;
|
||||
use Grav\Common\User\Interfaces\UserCollectionInterface;
|
||||
use Grav\Common\User\Interfaces\UserInterface;
|
||||
use Grav\Common\User\User;
|
||||
use Grav\Common\Utils;
|
||||
use Grav\Framework\Acl\Action;
|
||||
@@ -134,7 +135,20 @@ class Admin
|
||||
$this->route = $route;
|
||||
$this->uri = $grav['uri'];
|
||||
$this->session = $grav['session'];
|
||||
$this->user = $grav['user'];
|
||||
|
||||
/** @var Flex|null $flex */
|
||||
$flex = $grav['flex_objects'] ?? null;
|
||||
|
||||
/** @var UserInterface $user */
|
||||
$user = $grav['user'];
|
||||
|
||||
if ($flex && !$user instanceof FlexObjectInterface) {
|
||||
$directory = $flex->getDirectory('grav-accounts');
|
||||
if ($directory) {
|
||||
$user = $directory->getObject($user->username) ?? $user;
|
||||
}
|
||||
}
|
||||
$this->user = $user;
|
||||
|
||||
/** @var Language $language */
|
||||
$language = $grav['language'];
|
||||
|
||||
@@ -3,12 +3,9 @@
|
||||
</div>
|
||||
{% set flex = grav['flex_objects'] ?? null %}
|
||||
{% set user = admin.user %}
|
||||
{% if flex and not user.hasFlexFeature('user') %}
|
||||
{% set directory = flex.directory('grav-accounts') %}
|
||||
{% set test = directory.object(user.username) %}
|
||||
{% endif %}
|
||||
{% set route = test ? flex.adminRoute(test) : '' %}
|
||||
{% if route == '' %}
|
||||
{% if flex and user.hasFlexFeature('user') %}
|
||||
{% set route = flex.adminRoute(user) %}
|
||||
{% else %}
|
||||
{% set route = '/user/' ~ user.username %}
|
||||
{% endif %}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user