First Commit

This commit is contained in:
marco
2026-09-01 10:46:29 -03:00
commit bf96b77e9c
10000 changed files with 3508600 additions and 0 deletions
+97
View File
@@ -0,0 +1,97 @@
<?php
namespace App\Controllers;
use Kernel\View;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
class QuillDemoController extends BaseAdminController
{
/**
* Displays the Quill demo page
*/
public function index(Request $request): Response
{
// Check if the user is authenticated
if (!$this->isAuthenticated()) {
return $this->redirectToRoute('login');
}
// Render the demo view
$view = new View();
$content = $view->render('examples/quill-demo.twig');
return new Response($content);
}
/**
* Processes the demo form submission
*/
public function submit(Request $request): Response
{
// Check if the user is authenticated
if (!$this->isAuthenticated()) {
return $this->redirectToRoute('login');
}
// Get form data
$title = $request->get('title');
$content = $request->get('content');
$advancedContent = $request->get('advanced_content');
$simpleContent = $request->get('simple_content');
// Save to session to display on results page
$_SESSION['form_data'] = [
'title' => $title,
'content' => $content,
'advanced_content' => $advancedContent,
'simple_content' => $simpleContent
];
// Redirect to results page
return $this->redirectToRoute('quill-demo-results');
}
/**
* Displays form results
*/
public function results(Request $request): Response
{
// Check if the user is authenticated
if (!$this->isAuthenticated()) {
return $this->redirectToRoute('login');
}
// Get session data
$formData = $_SESSION['form_data'] ?? [];
// Clear session data
unset($_SESSION['form_data']);
// Render the results view
$view = new View();
$content = $view->render('examples/quill-results.twig', [
'formData' => $formData
]);
return new Response($content);
}
/**
* Checks if the user is authenticated
*/
private function isAuthenticated(): bool
{
return isset($_SESSION['user_id']);
}
/**
* Redirects to a route
*/
private function redirectToRoute(string $route): Response
{
$url = url($route);
return new Response("", 302, ["Location" => $url]);
}
}