Basis Implementierung der Formulare
Bisher kein Design, nur '@chaospott.de' Adresse, Model WIP entworfen
This commit is contained in:
74
src/Controller/IndexController.php
Normal file
74
src/Controller/IndexController.php
Normal file
@@ -0,0 +1,74 @@
|
||||
<?php
|
||||
|
||||
// src/Controller/LuckyController.php
|
||||
namespace App\Controller;
|
||||
|
||||
use App\Entity\WireguardRequest;
|
||||
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
|
||||
use Symfony\Component\Form\Extension\Core\Type\EmailType;
|
||||
use Symfony\Component\Form\Extension\Core\Type\SubmitType;
|
||||
use Symfony\Component\Form\Extension\Core\Type\TextType;
|
||||
use Symfony\Component\HttpFoundation\Response;
|
||||
use Symfony\Component\Routing\Annotation\Route;
|
||||
use Symfony\Component\HttpFoundation\Request;
|
||||
|
||||
|
||||
class IndexController extends AbstractController
|
||||
{
|
||||
|
||||
#[Route('/success', name: 'app_default_form_success')]
|
||||
public function form_success() {
|
||||
|
||||
return $this->render('success.html.twig', []);
|
||||
}
|
||||
|
||||
#[Route('/fail', name: 'app_default_form_fail')]
|
||||
public function form_fail() {
|
||||
|
||||
return $this->render('fail.html.twig', []);
|
||||
}
|
||||
|
||||
#[Route('/', name: 'app_default_form')]
|
||||
public function form(Request $request): Response
|
||||
{
|
||||
$wireguardRequest = new WireguardRequest();
|
||||
$wireguardRequest->setAuthToken(sha1(random_bytes(255)));
|
||||
|
||||
$form = $this->createFormBuilder($wireguardRequest)
|
||||
->add('email', EmailType::class)
|
||||
//->add('publicKey', TextType::class)
|
||||
->add('submit', SubmitType::class)
|
||||
->getForm();
|
||||
|
||||
$form->handleRequest($request);
|
||||
|
||||
if ($form->isSubmitted() && $form->isValid()) {
|
||||
// $form->getData() holds the submitted values
|
||||
// but, the original `$task` variable has also been updated
|
||||
$wireguardRequest->setEmail($form->get('email')->getData());
|
||||
|
||||
if(str_ends_with($wireguardRequest->getEmail(), '@chaospott.de')) {
|
||||
|
||||
$model = new \App\Model\RequestsSqlite();
|
||||
$model->addRequest($wireguardRequest);
|
||||
|
||||
// send E-Mail
|
||||
return $this->redirectToRoute('app_default_form_success');
|
||||
} else {
|
||||
|
||||
return $this->redirectToRoute('app_default_form_fail');
|
||||
}
|
||||
|
||||
// ... perform some action, such as saving the task to the database
|
||||
|
||||
//return $this->redirectToRoute('task_success');
|
||||
}
|
||||
|
||||
|
||||
return $this->render('wireguardRequest.html.twig', [
|
||||
'form' => $form,
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
}
|
Reference in New Issue
Block a user