redirect connected user to node/add/offre

This commit is contained in:
Bachir Soussi Chiadmi 2024-04-09 10:09:45 +02:00
parent 33f79c0d3e
commit d27c68f389
3 changed files with 27 additions and 20 deletions

View File

@ -71,7 +71,7 @@ content:
type: entity_reference_label
label: above
settings:
link: true
link: false
third_party_settings: { }
weight: 1
region: content

View File

@ -25,7 +25,7 @@ content:
type: image
label: visually_hidden
settings:
image_link: ''
image_link: content
image_style: large
image_loading:
attribute: lazy
@ -43,7 +43,7 @@ content:
type: entity_reference_label
label: above
settings:
link: true
link: false
third_party_settings: { }
weight: 1
region: content

View File

@ -3,6 +3,8 @@
namespace Drupal\loginregisterblock\Plugin\Block;
use Drupal\Core\Block\BlockBase;
use Symfony\Component\HttpFoundation\RedirectResponse;
// use RedirectDestinationTrait;
/**
* Provides a 'login register' Block.
@ -19,23 +21,28 @@ class LoginRegisterBlock extends BlockBase {
* {@inheritdoc}
*/
public function build() {
$loginform = \Drupal::formBuilder()->getForm('Drupal\user\Form\UserLoginForm');
$newuser = \Drupal::entityTypeManager()->getStorage('user')->create();
$registerform = \Drupal::service('entity.form_builder')->getForm($newuser, 'register');
return [
'login' => [
'#markup' => '<h1>' . $this->t('Se connecter') . '</h1>',
'form' => $loginform,
],
'register' => [
'#markup' => '<h1>' . $this->t('ou créer un nouveau compte') . '</h1>',
'form' => $registerform
]
];
// return [
// '#markup' => $this->t('Hello, World!'),
// ];
$user = \Drupal::currentUser();
if ($user->id() === 0) {
$loginform = \Drupal::formBuilder()->getForm('Drupal\user\Form\UserLoginForm');
$newuser = \Drupal::entityTypeManager()->getStorage('user')->create();
$registerform = \Drupal::service('entity.form_builder')->getForm($newuser, 'register');
return [
'login' => [
'#markup' => '<h1>' . $this->t('Se connecter') . '</h1>',
'form' => $loginform,
],
'register' => [
'#markup' => '<h1>' . $this->t('ou créer un nouveau compte') . '</h1>',
'form' => $registerform
]
];
} else {
$destination = \Drupal::service('redirect.destination')->getAsArray();
$response = new RedirectResponse($destination['destination']);
$response->send();
}
}