- A lot of small important bugfixes

This commit is contained in:
mcndave committed 2021-10-22 13:39:22 +00:00
1 parent f72115aab4
commit 8892edd19e
8 files changed
+90 -8

No files matched your search

+5 -1
View File
@@ -17,6 +17,8 @@ use Picea\Picea;
use TheBugs\Email\{ EmailConfiguration, MailerInterface, SwiftMailer };
use Taxus\Taxus;
return [
Entity\User::class => autowire(Entity\User::class),
@@ -24,7 +26,7 @@ return [
SecurityHandler::class => create(SecurityHandler::class)->constructor(function() {
return new RedirectResponse(getenv("URL_BASE")."/connexion");
}, get('authentication.unauthorize')),
}, get('authentication.unauthorize'), get(Taxus::class)),
'authentication.error' => function($c, Picea $picea) {
return function($message) use ($picea) {
@@ -59,4 +61,6 @@ return [
return $email;
},
PermissionGrantInterface::class => create(%NAMESPACE%\PrivilegeGrantAccess::class)->constructor(get(ServerRequestInterface::class), get(Session::class)),
];
+4 -2
View File
@@ -5,7 +5,9 @@ use Psr\Container\ContainerInterface;
use Ulmus\ConnectionAdapter,
Ulmus\Container\AdapterProxy;
use LdapRecord\Connection;
use Storage\Session;
use function DI\autowire, DI\create, DI\get;
return [
ConnectionAdapter::class => function($c) {
@@ -21,5 +23,5 @@ return [
return new AdapterProxy(
$c->get(ConnectionAdapter::class)
);
}
},
];
+1 -1
View File
@@ -7,7 +7,7 @@ use Ulmus\Entity\Field\Datetime;
use %NAMESPACE%\Lib;
/**
* # Table('name' => "user")
* @Table('name' => "user")
*/
class User extends \Ulmus\User\Entity\User implements \JsonSerializable
{
+1 -1
View File
@@ -27,7 +27,7 @@ trait ControllerTrait {
$this->picea = $picea;
$this->authenticate = $authenticate;
$this->session = $session;
$this->user = $authenticate->rememberMe( Entity\User::repository() ) ?: new User();
$this->user = $authenticate->rememberMe( Entity\User::repository() ) ?: new Entity\User();
}
}
+53
View File
@@ -0,0 +1,53 @@
<?php
namespace %NAMESPACE%;
use Psr\Http\Message\ServerRequestInterface;
use Notes\Security\Annotation\Taxus;
use Storage\Session;
use Taxus\PermissionGrantInterface;
Use Ulmus\User\Entity\User;
class PrivilegeGrantAccess implements PermissionGrantInterface {
public Session $session;
public ServerRequestInterface $request;
public function __construct(ServerRequestInterface $request, Session $session)
{
$this->request = $request;
$this->session = $session;
}
/*
* --- Reles
*/
public function is_dev() : bool
{
return false;
}
public function is_admin(User $user) : bool
{
return ! $this->is_anonymous($user) && FALSE; # <<<<<<<<<<<<<----- ADJUST YOUR ADMIN PRIVILEGE HERE ACCORDINGLY
}
public function is_user(User $user) : bool
{
return ! $this->is_anonymous($user);
}
public function is_anonymous(User $user) : bool
{
return ! $user || ! $user->logged;
}
/*
* --- Verifications
*/
public function default($name) : bool
{
return false;
}
}