Index des applications

This commit is contained in:
Charles 2025-09-04 14:59:17 +02:00
parent 346d89f42e
commit dc5eb702a3
6 changed files with 81 additions and 1 deletions

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="currentColor" d="M11 17h2l.3-1.5q.3-.125.563-.262t.537-.338l1.45.45l1-1.7l-1.15-1q.05-.35.05-.65t-.05-.65l1.15-1l-1-1.7l-1.45.45q-.275-.2-.537-.338T13.3 8.5L13 7h-2l-.3 1.5q-.3.125-.562.263T9.6 9.1l-1.45-.45l-1 1.7l1.15 1q-.05.35-.05.65t.05.65l-1.15 1l1 1.7l1.45-.45q.275.2.538.338t.562.262zm1-3q-.825 0-1.412-.587T10 12t.588-1.412T12 10t1.413.588T14 12t-.587 1.413T12 14m-7 7q-.825 0-1.412-.587T3 19V5q0-.825.588-1.412T5 3h14q.825 0 1.413.588T21 5v14q0 .825-.587 1.413T19 21zm0-2h14V5H5zM5 5v14z"/></svg>

After

Width:  |  Height:  |  Size: 577 B

View File

@ -0,0 +1,30 @@
<?php
namespace App\Controller;
use App\Entity\Apps;
use Doctrine\ORM\EntityManagerInterface;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Attribute\Route;
#[Route(path: '/application', name: 'application_')]
class ApplicationController extends AbstractController
{
public function __construct(private readonly EntityManagerInterface $entityManager)
{
}
#[Route(path: '/', name: 'index', methods: ['GET'])]
public function index(): Response
{
$this->denyAccessUnlessGranted('IS_AUTHENTICATED_FULLY');
$applications = $this->entityManager->getRepository(Apps::class)->findAll();
return $this->render('application/index.html.twig', [
'applications' => $applications,
]);
}
}

View File

@ -0,0 +1,19 @@
{% block body %}
<div class="card">
<div class="card-header">
<div class="card-title">
<h3><img width=10% src="{{ asset(application.logoUrl) }}" alt="Logo {{ application.title }}">
{{ application.name }}</h3>
</div>
</div>
<div class="card-body d-flex flex-column align-items-center">
<p class="card-text">{{ application.description }}</p>
<div>
<a href="http://{{ application.subDomain }}.solutions-easy.moi" class="btn btn-primary me-2">Accéder à l'application</a>
</div>
</div>
</div>
{% endblock %}

View File

@ -16,7 +16,8 @@
<a href="#" class="btn btn-secondary">Gérer l'application</a>
</div>
{% else %}<a href="#" class="btn btn-primary">Demander l'accès</a>
{% else %}
<a href="#" class="btn btn-primary">Demander l'accès</a>
{#TODO: page d'accès#}
{% endif %}
</div>

View File

@ -0,0 +1,23 @@
{% extends 'base.html.twig' %}
{% block title %}
Suite Easy
{% endblock %}
{% block body %}
<div class="row m-5">
<div class="container mt-5">
<h1 class="mb-4">Bienvenue sur la suite Easy</h1>
<p class="lead">Ici, vous pouvez trouver toutes nos applications à un seul endroit!</p>
</div>
{% for application in applications %}
<div class="col-6 mb-3">
{% include 'application/InformationCard.html.twig' with {
application: application
} %}
</div>
{% endfor %}
</div>
{% endblock %}

View File

@ -28,6 +28,12 @@
</ul>
</div>
</li>
<li class="nav-item">
<a class="nav-link" href="{{ path('application_index') }}">
<i class="icon-grid menu-icon">{{ ux_icon('material-symbols:settings-applications-outline', {height: '15px', width: '15px'}) }}</i>
<span class="menu-title">Applications</span>
</a>
</li>
{# if user is Super Admin #}
{% if is_granted('ROLE_SUPER_ADMIN') %}
<li class="nav-item">