👌 ajout de la fonctionnalité de création d'évènement

Co-authored-by: Charpentier Juliette <juliette.charpentier1@etu.u-pec.fr>
This commit is contained in:
Loris BALOCCHI 2024-06-13 01:19:46 +02:00
parent aafb825e30
commit bd97bbba05
13 changed files with 579 additions and 83 deletions

View File

@ -51,7 +51,7 @@ if (isset($_COOKIE['userData'])) {
<?php
if (isset($_GET['result'])) {
if ($_GET['result'] == "updatefailed") {
echo "<p class='text' style='color:red; padding-left:0;'> Une erreur est survenue lors de la mise à jour de vos informations.</p>";
echo "<p class='text' style='color:red; padding-left:0;'> Une erreur est survenue lors de la mise à jour de vos informations.</p>";
} else if ($_GET["result"] == "updatesuccess") {
echo "<p class='text' style='color:green; padding-left:0;'>✅ Vos informations ont été mises à jour avec succès.</p>";
}
@ -79,7 +79,7 @@ if (isset($_COOKIE['userData'])) {
<label for="role">Rôle</label>
<input type="text" id="role" name="role" style="cursor: not-allowed;" value="<?php echo $role ?>"
disabled>
<button type="submit" class="submit-button"><i class="fas fa-sign-in-alt"></i>
<button type="submit" class="submit-button"><i class="fas fa-edit"></i>
Mettre à jour mes informations</i></button>
</div>
</form>

View File

@ -62,6 +62,8 @@ require_once $_SERVER['DOCUMENT_ROOT'] . '/tools/dbConnect.php';
$role = "Sportif";
} else if ($codeRole == "VJC6V") {
$role = "Organisateur";
} else if ($codeRole == "XJ9LQ") {
$role = "Spectateur";
} else {
$role = "Membre";
}

View File

@ -1,5 +1,6 @@
<?php
require_once $_SERVER['DOCUMENT_ROOT'] . '/tools/dbConnect.php';
session_start();
if (isset($_COOKIE['userData'])) {
$userDataEncoded = $_COOKIE['userData'];
@ -9,9 +10,9 @@ if (isset($_COOKIE['userData'])) {
$name = $userData['name'];
$familyName = $userData['familyName'];
$role = $userData['role'];
}
?>
<!DOCTYPE html>
<html lang="fr">
@ -41,6 +42,7 @@ if (isset($_COOKIE['userData'])) {
header("refresh:5; url=/");
die();
}
?>
<?php
$role = $userData['role'];
@ -53,39 +55,38 @@ if (isset($_COOKIE['userData'])) {
echo "<p class='text'>Bienvenue sur le panel de gestion des utilisateurs.</p>";
echo "<p class='text'>Vous pouvez ici gérer les utilisateurs.</p>";
echo "<p class='text'>Que souhaitez-vous faire ?</p>";
// Affichage des utilisateurs
echo "<div class='adm-users-container'>";
$users = mysqli_query($db, "SELECT * FROM `user`");
echo "<table class='table'>";
echo "<tr>";
echo "<th>Adresse mail</th>";
echo "<th>Nom</th>";
echo "<th>Prénom</th>";
echo "<th>Rôle</th>";
echo "<th>Actions</th>";
echo "</tr>";
while ($row = mysqli_fetch_assoc($users)) {
echo "<tr>";
echo "<td>" . $row['mail'] . "</td>";
echo "<td>" . $row['name'] . "</td>";
echo "<td>" . $row['family_name'] . "</td>";
echo "<td>" . $row['role'] . "</td>";
echo "<td><a href='/admin/users/edit?email=" . $row['mail'] . "'>Modifier</a> | <a href='/admin/users/delete?email=" . $row['mail'] . "'>Supprimer</a></td>";
echo "</tr>";
}
echo "</table>";
echo "</div>";
echo "<a href='/admin/users/add'>Ajouter un utilisateur</a>
";
echo "<a href='/admin'>Retour au panel d'administration</a>
";
echo "<a href='/'>Retour à l'accueil</a>
";
//contenu de la page admin
} ?>
<?php
echo "<div class='adm-users-container'>";
$users = mysqli_query($db, "SELECT * FROM `user`");
echo "<table class='table'>";
echo "<tr>";
echo "<th>Adresse mail</th>";
echo "<th>Nom</th>";
echo "<th>Prénom</th>";
echo "<th>Rôle</th>";
echo "<th>Actions</th>";
echo "</tr>";
while ($row = mysqli_fetch_assoc($users)) {
echo "<tr>";
echo "<td>" . $row['mail'] . "</td>";
echo "<td>" . $row['name'] . "</td>";
echo "<td>" . $row['family_name'] . "</td>";
echo "<td>" . $row['role'] . "</td>";
echo "<td><a href='/admin/users/edit?email=" . $row['mail'] . "'>Modifier</a> | <a href='/admin/users/delete?email=" . $row['mail'] . "'>Supprimer</a></td>";
echo "</tr>";
}
echo "</table>";
echo "</div>";
echo "<a href='/admin/users/add'>Ajouter un utilisateur</a>
";
echo "<a href='/admin'>Retour au panel d'administration</a>
";
echo "<a href='/'>Retour à l'accueil</a>
";
?>

View File

@ -1,5 +1,6 @@
<?php
require_once $_SERVER['DOCUMENT_ROOT'] . '/tools/dbConnect.php';
session_start();
if (isset($_COOKIE['userData'])) {
$userDataEncoded = $_COOKIE['userData'];

View File

@ -17,31 +17,52 @@
<body>
<?php include ($_SERVER['DOCUMENT_ROOT'] . '/views/header.php') ?>
<!-- code de la page ici -->
<h1>Évènements</h1>
<!-- <form method="POST"> -->
<?php
if (isset($_POST['discipline'])) {
$selectedDiscipline = $_POST['discipline'];
$descriptionResult = mysqli_query($db, "SELECT description FROM `olympic_discipline` WHERE discipline = '$selectedDiscipline'");
while ($row = mysqli_fetch_assoc($descriptionResult)) {
echo "<p class='text'>" . $row['description'] . "</p>";
/*
- Sujet:
-- Créer un évènement (rôle organisateur ou admin)
-- s'inscrire à un évènement (rôle membre ou +)
-- participer à un évènement (sportif)
-- laisser un commentaire (rôle membre ou +)
-- afficher la liste des évènements (tout le monde)
-- Rechercher un évènement par date, lieu, ou nom
-- Trier les évènements par date, nombre de participants, personnes y ayant accès, etc...
*/
?>
<!-- to do
-- s'inscrire à un évènement (rôle membre ou +)
-- participer à un évènement (sportif)
-- laisser un commentaire (rôle membre ou +)
-- afficher la liste des évènements (tout le monde)
-- Rechercher un évènement par date, lieu, ou nom
-->
<div class="searchbar">
<form action="search" method="get">
</form>
<input id="searchbar" name="search" placeholder="Rechercher un évènement" type="text">
<button type="submit"><i class="fas fa-search"></i> Rechercher</button>
</form>
</div>
<?php
if (isset($_COOKIE['userData'])) {
if (($role == 'Administrateur') or ($role == 'Organisateur')) {
echo "<button class='submit-button new-event' onclick='window.location.href = \'/events/new\';'>Créer un évènement</button>";
} else {
echo "<p class='text'>Vous n'êtes pas autorisé à créer un évènement.</p>";
}
}
?>
<form method="POST">
<?php
$evenement = mysqli_query($db, "SELECT discipline FROM `olympic_discipline` ");
echo "<select name='discipline'>";
while ($row = mysqli_fetch_assoc($evenement)) {
echo "<option>" . $row['discipline'] . "</option>";
}
echo "</select>";
?>
<button><input type="submit" value="Afficher la description"></button>
</form>
<?php include ($_SERVER['DOCUMENT_ROOT'] . '/views/footer.php') ?>

View File

@ -0,0 +1,52 @@
<?php
require_once $_SERVER['DOCUMENT_ROOT'] . '/tools/dbConnect.php';
session_start();
// Traitement des données utilisateur
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$eventName = mysqli_real_escape_string($db, $_POST['eventName']);
$eventDate = mysqli_real_escape_string($db, $_POST['eventDate']);
$eventLocation = mysqli_real_escape_string($db, $_POST['eventLocation']);
$eventDiscipline = mysqli_real_escape_string($db, $_POST['eventDiscipline']);
$eventDescription = mysqli_real_escape_string($db, $_POST['eventDescription']);
$eventRoles = isset($_POST['eventRole']) ? $_POST['eventRole'] : [];
// Construction d'une liste de rôles pour l'affichage
$rolesText = implode(', ', $eventRoles);
if (isset($_COOKIE['userData'])) {
$userDataEncoded = $_COOKIE['userData'];
$userData = json_decode($userDataEncoded, true); // 'true' pour obtenir un tableau associatif
$email = $userData['email'];
$name = $userData['name'];
$familyName = $userData['familyName'];
$role = $userData['role'];
}
// Affichage des informations pour confirmation
echo "<p class='text'>Nom de l'évènement : $eventName</p>";
echo "<p class='text'>Date de l'évènement : $eventDate</p>";
echo "<p class='text'>Lieu de l'évènement : $eventLocation</p>";
echo "<p class='text'>Discipline de l'évènement : $eventDiscipline</p>";
echo "<p class='text'>Description de l'évènement : $eventDescription</p>";
echo "<p class='text'>Rôles de l'évènement : $rolesText</p>";
echo "<p class='text'>Créateur de l'évènement : $email</p>";
// Requête SQL préparée
$stmt = mysqli_prepare($db, "INSERT INTO `event` (title, description, event_type, date, location, role, guest_count, creator) VALUES (?, ?, ?, ?, ?, ?, 0, ?)");
mysqli_stmt_bind_param($stmt, 'sssssss', $eventName, $eventDescription, $eventDiscipline, $eventDate, $eventLocation, $rolesText, $email);
$result = mysqli_stmt_execute($stmt);
if ($result) {
echo "<p class='text'>L'évènement a bien été créé.</p>";
header("Location: /events/new?result=event-creation-succeded");
} else {
echo "<p class='text'>Une erreur est survenue lors de la création de l'évènement. Erreur : " . mysqli_error($db) . "</p>";
header("Location: /events/new?result=event-creation-failed");
}
} else {
echo "<p class='text'>Veuillez remplir tous les champs du formulaire.</p>";
}
?>

134
events/new/index.php Normal file
View File

@ -0,0 +1,134 @@
<?php
require_once $_SERVER['DOCUMENT_ROOT'] . '/tools/dbConnect.php';
session_start();
if (isset($_COOKIE['userData'])) {
$userDataEncoded = $_COOKIE['userData'];
$userData = json_decode($userDataEncoded, true); // 'true' pour obtenir un tableau associatif
$email = $userData['email'];
$name = $userData['name'];
$familyName = $userData['familyName'];
$role = $userData['role'];
}
?>
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="stylesheet" href="/styles/main.css" />
<link rel="stylesheet" href="/styles/header.css" />
<link rel="stylesheet" href="/styles/footer.css" />
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" rel="stylesheet" />
<link rel="icon" type="image/png" sizes="32x32"
href="https://tickets.paris2024.org/obj/media/FR-Paris2024/specialLogos/favicons/favicon-32x32.png" />
<script src="https://kit.fontawesome.com/f16a36bad3.js" crossorigin="anonymous"></script>
<script src="/scripts/dateChecker.js" defer></script>
<title>Jeux Olympiques - Paris 2024</title>
</head>
<body>
<?php include ($_SERVER['DOCUMENT_ROOT'] . '/views/header.php') ?>
<?php
if (!isset($_COOKIE['userData'])) {
echo "<h1>Créer un évènement</h1>";
echo "<p class='text'>Vous n'êtes pas autorisé à accéder à cette page.</p>";
echo "<p class='text'>Redirection vers l'accueil dans 5 secondes...</p>";
header("refresh:5; url=/");
include $_SERVER['DOCUMENT_ROOT'] . '/views/footer.php';
die();
}
$role = $userData['role'];
if (($role == 'Administrateur') or ($role == 'Organisateur')) { // Si l'utilisateur est un administrateur : accès à la page
echo "<div class='event-create-container'>";
echo "<img src='https://cdn-icons-png.flaticon.com/512/2538/2538566.png' alt='Avatar'>";
echo "<h2 class='event-create-title'>Créer un nouvel évènement</h2>";
echo "<p class='event-create-subtitle'>Remplissez le formulaire suivant afin de créer un nouvel évènement.</p>";
echo "<form method='POST' action='/events/new/eventCreate.php'>";
echo "<div class='form-group'>";
if (isset($_GET['result'])) {
if ($_GET['result'] == "event-creation-failed") {
echo "<p class='text' style='color:red; padding-left:0; text-align:center;'>&nbsp; &nbsp; &nbsp; &nbsp;⛔ Une erreur est survenue, l'évènement n'a pas été créé.</p>";
} else if ($_GET["result"] == "event-creation-succeded") {
echo "<p class='text' style='color:green; padding-left:0; text-align:center;'>&nbsp; &nbsp; &nbsp; &nbsp;✅ L'évènement a bien été créé.</p>";
}
}
echo "<div class='form-group'>";
echo "<label for='eventName'>Nom de l'évènement</label>";
echo "<input type='text' name='eventName' id='eventName' required>";
echo "</div>";
echo "<div class='form-group;
<label for='eventDiscipline'>Discipline</label>";
echo "<select name='eventDiscipline' id='eventDiscipline'>";
$disciplines = mysqli_query($db, "SELECT discipline FROM `olympic_discipline` ");
while ($row = mysqli_fetch_assoc($disciplines)) {
echo "<option>" . $row['discipline'] . "</option>";
}
echo "</select>";
echo "</div>";
echo "<div class='form-group'>;
<label for='eventDate'>Date de l'évènement</label>";
echo "<input type='date' name='eventDate' id='eventDate' required>";
echo "</div>";
echo "<div class='form-group'>";
echo "<label for='eventLocation'>Lieu de l'évènement<select name='eventLocation' id='eventLocation'>";
$locations = mysqli_query($db, "SELECT venue_info FROM `olympic_location` ");
while ($row = mysqli_fetch_assoc($locations)) {
echo "<option>" . $row['venue_info'] . "</option>";
}
echo "</select>";
echo "</label>";
echo "</div>";
echo "<div class='form-group'>";
echo "<label for='eventDescription'>Description de l'évènement</label>";
echo "<input type='textarea' name='eventDescription' id='eventDescription' required>";
echo "</div>";
echo "<div class='form-group'>";
echo "<label for='eventRole'>Rôles pouvant s'inscrire</label>";
echo "<div>";
echo "<input type='checkbox' name='eventRole[]' id='membre' value='membre'>";
echo "<label for='membre'>";
echo "<p>Membre</p>";
echo "</label>";
echo "</div>";
echo "<div>";
echo "<input type='checkbox' name='eventRole[]' id='sportif' value='sportif'>";
echo "<label for='sportif'>";
echo "<p>Sportif</p>";
echo "</label>";
echo "</div>";
echo "<div>";
echo "<input type='checkbox' name='eventRole[]' id='organisateur' value='organisateur'>";
echo "<label for='organisateur'>";
echo "<p>Organisateur</p>";
echo "</label>";
echo "</div>";
echo "</div>";
echo "<button type='submit' class='submit-button'><i class='fas fa-calendar-plus'></i> Créer</i></button>";
echo "</form>";
echo "</div>";
echo "</div>";
} else {
echo "<p class='text'>Vous n'êtes pas autorisé à accéder à cette page.</p>";
echo "<p class='text'>Redirection vers l'accueil dans 5 secondes...</p>";
header("refresh:5; url=/");
include ($_SERVER['DOCUMENT_ROOT'] . '/views/footer.php');
die();
}
?>
<?php include ($_SERVER['DOCUMENT_ROOT'] . '/views/footer.php') ?>
</body>
</html>

116
events/new/indexold.php Normal file
View File

@ -0,0 +1,116 @@
<?php
require_once $_SERVER['DOCUMENT_ROOT'] . '/tools/dbConnect.php';
session_start();
if (isset($_COOKIE['userData'])) {
$userDataEncoded = $_COOKIE['userData'];
$userData = json_decode($userDataEncoded, true); // 'true' pour obtenir un tableau associatif
$email = $userData['email'];
$name = $userData['name'];
$familyName = $userData['familyName'];
$role = $userData['role'];
}
?>
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="stylesheet" href="/styles/main.css" />
<link rel="stylesheet" href="/styles/header.css" />
<link rel="stylesheet" href="/styles/footer.css" />
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" rel="stylesheet" />
<link rel="icon" type="image/png" sizes="32x32"
href="https://tickets.paris2024.org/obj/media/FR-Paris2024/specialLogos/favicons/favicon-32x32.png" />
<script src="https://kit.fontawesome.com/f16a36bad3.js" crossorigin="anonymous"></script>
<title>Jeux Olympiques - Paris 2024</title>
</head>
<body>
<?php include ($_SERVER['DOCUMENT_ROOT'] . '/views/header.php') ?>
<div class="event-create-container">
<img src="https://cdn-icons-png.flaticon.com/512/2538/2538566.png" alt="Avatar">
<h2 class="event-create-title">Créer un nouvel évènement</h2>
<p class="event-create-subtitle">Remplissez le formulaire suivant afin de créer un nouvel évènement.</p>
<form method="POST" action="/events/new/eventCreate.php">
<?php
if (isset($_GET['result'])) {
if ($_GET['result'] == "event-creation-failed") {
echo "<p class='text' style='color:red; padding-left:0;'>&nbsp; &nbsp; &nbsp; &nbsp;⛔ Une erreur est survenue, l'évènement n'a pas été créé.</p>";
} else if ($_GET["result"] == "event-creation-succeded") {
echo "<p class='text' style='color:green; padding-left:0;'>&nbsp; &nbsp; &nbsp; &nbsp;✅ L'évènement a bien été créé.</p>";
}
}
?>
<div class="form-group">
<label for="eventName">Nom de l'évènement</label>
<input type="text" name="eventName" id="eventName" required>
</div>
<div class="form-group">
<label for="eventDiscipline">Discipline</label>
<select name="eventDiscipline" id="eventDiscipline">
<?php
$disciplines = mysqli_query($db, "SELECT discipline FROM `olympic_discipline` ");
while ($row = mysqli_fetch_assoc($disciplines)) {
echo "<option>" . $row['discipline'] . "</option>";
}
?>
</select>
</div>
<div class="form-group">
<label for="eventDate">Date de l'évènement</label>
<input type="date" name="eventDate" id="eventDate" required>
</div>
<div class="form-group">
<label for="eventLocation">Lieu de l'évènement<select name="eventLocation" id="eventLocation">
<?php
$locations = mysqli_query($db, "SELECT venue_info FROM `olympic_location` ");
while ($row = mysqli_fetch_assoc($locations)) {
echo "<option>" . $row['venue_info'] . "</option>";
}
?>
</select>
</label>
</div>
<div class="form-group">
<label for="eventDescription">Description de l'évènement</label>
<input type="textarea" name="eventDescription" id="eventDescription" required>
</div>
<div class="form-group">
<label for="eventRole">Rôles pouvant s'inscrire</label>
<div>
<input type="checkbox" name="eventRole[]" id="membre" value="membre">
<label for="membre">
<p>Membre</p>
</label>
</div>
<div>
<input type="checkbox" name="eventRole[]" id="sportif" value="sportif">
<label for="sportif">
<p>Sportif</p>
</label>
</div>
<div>
<input type="checkbox" name="eventRole[]" id="organisateur" value="organisateur">
<label for="organisateur">
<p>Organisateur</p>
</label>
</div>
</div>
<button type="submit" class="submit-button"><i class="fas fa-calendar-plus"></i> Créer</i></button>
</form>
</div>
<?php include ($_SERVER['DOCUMENT_ROOT'] . '/views/footer.php') ?>
</body>
</html>

View File

@ -28,21 +28,29 @@
<!-- code de la page ici -->
<h1>Accueil</h1>
<p class="text">Bienvenue sur le site des Jeux Olympiques de Paris 2024 !</p>
<p class="text">Vous trouverez ici toutes les informations nécessaires pour suivre les Jeux Olympiques de Paris.
<p class="text">Vous trouverez ici toutes les informations nécessaires pour suivre les Jeux Olympiques de Paris
2024.</p>
<p class="text">Vous pourrez également créer un compte pour accéder à des fonctionnalités supplémentaires.</p>
<!-- barre de recherche -->
<div class="searchbar">
<input id="searchbar" placeholder="Rechercher évènement" type="text">
<form action="search" method="get">
</form>
<input id="searchbar" name="search" placeholder="Rechercher évènement" type="text">
<button type="submit"><i class="fas fa-search"></i> Rechercher</button>
</form>
</div>
<?php
// $evenement = $_GET['bdr'];
// $recherche = mysqli_query($db, "SELECT discipline
// FROM olympic_discipline
// WHERE discipline = '$evenement'");
$evenement = isset($_GET['search']) ? $_GET['search'] : '';
$stmt = $db->prepare("SELECT discipline FROM olympic_discipline WHERE discipline = ?");
$stmt->bind_param("s", $evenement);
$stmt->execute();
$result = $stmt->get_result();
while ($row = $result->fetch_assoc()) {
echo $row['discipline'];
}
$stmt->close();
?>

5
scripts/dateChecker.js Normal file
View File

@ -0,0 +1,5 @@
document.addEventListener("DOMContentLoaded", function () {
var input = document.getElementById("eventDate");
input.setAttribute("min", "2024-07-26");
input.setAttribute("max", "2024-08-11");
});

View File

@ -184,4 +184,56 @@ body {
.menu li {
padding: 0 20px;
}
/* Style pour le menu principal */
.menu-container ul {
list-style-type: none;
padding: 0;
}
.menu-container li {
display: inline-block;
position: relative;
padding: 10px 15px;
}
.menu-container a {
text-decoration: none;
color: white; /* Assurez-vous que la couleur des liens est blanche */
display: block;
}
/* Styles pour le menu déroulant */
.dropdown-content {
display: none; /* Masque par défaut le contenu déroulant */
position: absolute;
background-color: #26272b; /* Même couleur que le container */
box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2); /* Ombre pour le menu déroulant */
z-index: 100;
width: 200px; /* ou la largeur qui correspond le mieux à votre design */
left: 50%;
transform: translateX(-50%);
}
.dropdown-content a {
color: white;
padding: 12px 16px;
text-decoration: none;
display: block;
white-space: nowrap; /* Garde les éléments de menu sur une seule ligne */
}
.dropdown:hover .dropdown-content {
display: block; /* Affiche le sous-menu au survol */
opacity: 1;
transition: opacity 0.5s ease; /* Transition douce pour l'opacité */
}
.dropdown-content {
opacity: 0; /* Initialement transparent */
transition: opacity 0.5s ease; /* Transition pour une apparition douce */
}
.dropdown:hover .dropdown-content {
opacity: 1; /* Pleine visibilité au survol */
}
}

View File

@ -96,34 +96,11 @@ p.login-subtitle {
border-color: #007bff;
}
.remember-me {
display: flex;
align-items: center;
}
.remember-me input {
margin-right: 0.5rem;
}
.no-account {
font-size: 0.8rem;
margin-top: 0.25rem;
}
.forgot-password {
text-align: right;
font-size: 0.8rem;
}
.forgot-password a {
color: #007bff;
text-decoration: none;
}
.forgot-password a:hover {
text-decoration: underline;
}
.submit-button {
width: 100%;
padding: 0.75rem;
@ -171,6 +148,15 @@ p.text {
color: white;
font-size: 1rem;
padding-left: 2rem;
padding-right: 2rem;
font-family: "RobotoFlex";
}
a.text {
color: white;
font-size: 1rem;
padding-left: 2rem;
padding-right: 2rem;
font-family: "RobotoFlex";
}
@ -250,3 +236,118 @@ td {
margin-inline: auto;
margin-block: 5em;
}
.event-create-container {
background: #26272b;
align-items: center;
opacity: 1;
padding: 3rem;
border-radius: 10px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.5);
width: 100%;
text-align: center;
max-width: fit-content;
margin-inline: auto;
margin-block: 5em;
}
.checkbox-container {
display: flex;
justify-content: flex-start;
margin-top: 1rem;
}
/* Masquer les cases à cocher d'origine */
input[type="checkbox"] {
opacity: 0;
position: absolute;
}
/* Styliser les labels */
input[type="checkbox"] + label {
position: relative;
padding-left: 25px;
cursor: pointer;
}
/* Ajouter un élément personnalisé avant le label */
input[type="checkbox"] + label::before {
content: "";
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
border: 2px solid #555;
border-radius: 4px;
}
/* Changer l'apparence lorsque la case est cochée */
input[type="checkbox"]:checked + label::before {
background-color: #007bff;
border-color: #007bff;
}
/* Optionnel : Ajouter un indicateur visuel pour la case cochée */
input[type="checkbox"]:checked + label::after {
content: "✓";
position: absolute;
left: 3px;
top: -3px;
font-size: 17px;
color: white;
}
.form-group select {
width: 100%;
padding: 0.5rem;
border: 1px solid #121216;
border-radius: 5px;
background-color: #34353a;
color: #fffe;
transition: all 0.3s ease;
appearance: none; /* Pour supprimer le style par défaut */
-webkit-appearance: none; /* Pour Safari */
-moz-appearance: none; /* Pour Firefox */
background-image: url("https://cdn-icons-png.flaticon.com/16/8442/8442683.png"); /* Ajoutez votre icône personnalisée */
background-repeat: no-repeat;
background-position: right 0.5rem center; /* Ajustez selon la taille de votre padding */
background-size: 1.5rem; /* Ajustez selon la taille souhaitée pour l'icône */
}
/* Optionnel : Style pour les options */
.form-group select option {
background-color: #34353a; /* Pour que le fond des options corresponde au select */
color: #fffe; /* Couleur du texte des options */
}
.event-create-container img {
width: 146px;
margin-bottom: 1rem;
}
.event-create-container h2 {
font-weight: 700;
color: white;
}
.event-create-container p {
margin-bottom: 1.5rem;
color: #8e8c8c;
size: 10px;
}
h2.event-create-title {
font-family: "RobotoFlex";
}
p.event-create-subtitle {
font-family: "RobotoFlex";
padding-left: 0;
}
button.new-event {
width: 25%;
margin: auto;
}
/* Styles pour le calendrier*/

View File

@ -37,10 +37,13 @@ if (isset($_COOKIE['userData'])) {
}
}
?></li>
<li>
<a href="/events">
Évènements
</a>
<li class="dropdown">
<a href="/events">Évènements</a>
<ul class="dropdown-content">
<li><a href="/events/type1">Événement Type 1</a></li>
<li><a href="/events/type2">Événement Type 2</a></li>
<li><a href="/events/type3">Événement Type 3</a></li>
</ul>
</li>
</ul>
<ul>