👌 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:
parent
aafb825e30
commit
bd97bbba05
@ -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>
|
||||
|
@ -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";
|
||||
}
|
||||
|
@ -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>
|
||||
";
|
||||
?>
|
||||
|
||||
|
||||
|
||||
|
@ -1,5 +1,6 @@
|
||||
<?php
|
||||
require_once $_SERVER['DOCUMENT_ROOT'] . '/tools/dbConnect.php';
|
||||
session_start();
|
||||
|
||||
if (isset($_COOKIE['userData'])) {
|
||||
$userDataEncoded = $_COOKIE['userData'];
|
||||
|
@ -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') ?>
|
||||
|
||||
|
52
events/new/eventCreate.php
Normal file
52
events/new/eventCreate.php
Normal 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
134
events/new/index.php
Normal 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;'> ⛔ 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;'> ✅ 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
116
events/new/indexold.php
Normal 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;'> ⛔ 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;'> ✅ 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>
|
20
index.php
20
index.php
@ -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
5
scripts/dateChecker.js
Normal 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");
|
||||
});
|
@ -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 */
|
||||
}
|
||||
}
|
||||
|
147
styles/main.css
147
styles/main.css
@ -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*/
|
||||
|
@ -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>
|
||||
|
Loading…
Reference in New Issue
Block a user