diff --git a/sae/WEB-INF/src/modele/DS.java b/sae/WEB-INF/src/modele/DS.java index f34509cee1b54bec3d01ee14d49f973f613189ac..a9b4271dd2507834c908aca57493cb0f2182af86 100644 --- a/sae/WEB-INF/src/modele/DS.java +++ b/sae/WEB-INF/src/modele/DS.java @@ -15,9 +15,9 @@ public class DS { } public Connection getConnection() { - String url = "jdbc:postgresql://psqlserv/but2"; - String login = "othemanekhachnaneetu"; - String pwd = "moi"; + String url = "jdbc:postgresql://localhost:5432/postgres"; + String login = "postgres"; + String pwd = ""; Connection con = null; try { con = DriverManager.getConnection(url, login, pwd); diff --git a/sae/WEB-INF/vue/accueil.jsp b/sae/WEB-INF/vue/accueil.jsp index ffb7d3a664fbb4a14b71339d38bf8467e90a2295..f2a7a0997c3d1b165805adb0c0c586cee74da989 100644 --- a/sae/WEB-INF/vue/accueil.jsp +++ b/sae/WEB-INF/vue/accueil.jsp @@ -5,6 +5,9 @@ <%@ page import="modele.FilDeDiscussionDAO" %> <%@ page import="modele.Abonnement" %> <%@ page import="java.util.List" %> +<%@ page import="java.util.Set" %> +<%@ page import="java.util.HashSet" %> + <!DOCTYPE html> <html lang="fr"> @@ -13,12 +16,13 @@ <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>CampusTalk - Accueil</title> <link href="https://cdn.jsdelivr.net/npm/tailwindcss@2.2.19/dist/tailwind.min.css" rel="stylesheet"> - <link rel="shortcut icon" href="https://www.shareicon.net/data/2016/07/10/119195_chat_512x512.png"> + <link rel="shortcut icon" href="<%= request.getContextPath() %>/images/logo.png"> </head> -<body class="bg-gray-100 flex"> +<body class="bg-gray-900 text-white flex"> <aside class="w-64 bg-gray-800 text-white h-screen"> - <div class="p-4"> - <h1 class="text-2xl font-bold">CampusTalk</h1> + <div class="p-4 text-center"> + <img src="<%= request.getContextPath() %>/images/logo.png" alt="CampusTalk Logo" class="w-16 h-16 mx-auto"> + <h1 class="text-2xl font-bold mt-4">CampusTalk</h1> </div> <nav class="mt-4"> <a href="<%= request.getContextPath() %>/accueil" class="block py-2.5 px-4 rounded transition duration-200 hover:bg-gray-700">Accueil</a> @@ -34,24 +38,36 @@ List<Abonnement> abonnements = adao.findAbonnements(email); FilDeDiscussionDAO fdao = new FilDeDiscussionDAO(); %> - <div class="max-w-2xl mx-auto mt-12 p-6 bg-white rounded-lg shadow-md"> - <h2 class="text-2xl font-bold mb-4">Bienvenue sur CampusTalk</h2> - <p class="mb-4">Bonjour, <%= username %> !</p> - <p class="mb-4">Vous êtes connecté en tant que <%= email %></p> - <a href="<%= request.getContextPath() %>/listerFil" class="bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded">Voir les autres fils de discussion</a> - </div> - <div class="max-w-2xl mx-auto mt-8 p-6 bg-white rounded-lg shadow-md"> - <h3 class="text-xl font-bold mb-4">Vos abonnements</h3> - <ul class="list-disc pl-5"> - <% for (Abonnement abo : abonnements) { %> - <li class="mb-2"> - <a href="<%= request.getContextPath() %>/fil?id=<%= abo.getIdFil() %>" class="text-blue-500 hover:underline"> - <%= fdao.findById(abo.getIdFil()).getNom() %> - </a> - </li> + <div class="max-w-2xl mx-auto mt-12 p-6 bg-gray-800 rounded-lg shadow-md"> + <h2 class="text-2xl font-bold mb-4">Bienvenue sur CampusTalk</h2> + <p class="mb-4">Bonjour, <%= username %> !</p> + <p class="mb-4">Vous êtes connecté en tant que <%= email %></p> + </div> + <div class="max-w-2xl mx-auto mt-8 p-6 bg-gray-800 rounded-lg shadow-md"> + <h3 class="text-xl font-bold mb-4">Vos abonnements</h3> + <% + Set<Integer> abonnementsIds = new HashSet<>(); + for (Abonnement abonnement : abonnements) { + abonnementsIds.add(abonnement.getIdFil()); + } + + FilDeDiscussionDAO fddao = new FilDeDiscussionDAO(); + for (FilDeDiscussion f : fddao.findAll()) { + if (abonnementsIds.contains(f.getId())) { + %> + <div class="mb-4 p-4 bg-gray-700 rounded-lg shadow-md"> + <a href="<%= request.getContextPath() %>/fil?id=<%= f.getId() %>" class="block"> + <img src="<%= request.getContextPath() %>/images/<%= f.getLogo() %>" alt="Logo" class="w-16 h-16 mx-auto"> + <h4 class="font-bold text-lg"><%= f.getNom() %></h4> + <% if (f.getDescription() != null) { %> + <p class="text-gray-400"><%= f.getDescription() %></p> <% } %> - </ul> </div> + <% + } + } + %> + </div> </div> </body> </html> diff --git a/sae/WEB-INF/vue/creerFil.jsp b/sae/WEB-INF/vue/creerFil.jsp index 5ac6e50a8f0133aff598a9685686372740ec6a04..9ebc55cfe3ac9920b6ebf3d9f0fa1d26667b8ce7 100644 --- a/sae/WEB-INF/vue/creerFil.jsp +++ b/sae/WEB-INF/vue/creerFil.jsp @@ -7,12 +7,13 @@ <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>CampusTalk - Créer un Fil de Discussion</title> <link href="https://cdn.jsdelivr.net/npm/tailwindcss@2.2.19/dist/tailwind.min.css" rel="stylesheet"> - <link rel="shortcut icon" href="https://www.shareicon.net/data/2016/07/10/119195_chat_512x512.png"> + <link rel="shortcut icon" href="<%= request.getContextPath() %>/images/logo.png"> </head> -<body class="bg-gray-100 flex"> +<body class="bg-gray-900 text-white flex"> <aside class="w-64 bg-gray-800 text-white h-screen"> - <div class="p-4"> - <h1 class="text-2xl font-bold">CampusTalk</h1> + <div class="p-4 text-center"> + <img src="<%= request.getContextPath() %>/images/logo.png" alt="CampusTalk Logo" class="w-16 h-16 mx-auto"> + <h1 class="text-2xl font-bold mt-4">CampusTalk</h1> </div> <nav class="mt-4"> <a href="<%= request.getContextPath() %>/accueil" class="block py-2.5 px-4 rounded transition duration-200 hover:bg-gray-700">Accueil</a> @@ -29,20 +30,26 @@ </div> <% } %> - <div class="max-w-2xl mx-auto mt-8 p-6 bg-white rounded-lg shadow-md"> + <div class="max-w-2xl mx-auto mt-8 p-6 bg-gray-800 rounded-lg shadow-md"> <h1 class="text-2xl font-bold mb-4 text-center">Créer un nouveau fil de discussion</h1> - <form action="creerFil" method="post" class="mt-4"> + <form action="<%= request.getContextPath() %>/creerFil" method="post" enctype="multipart/form-data" class="space-y-4"> <div class="mb-4"> - <label for="nom" class="block text-gray-700 font-semibold">Nom du fil:</label> - <input type="text" class="w-full p-3 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-400" id="nom" name="nom" required> + <label for="nom" class="block text-gray-300 font-semibold">Nom du fil:</label> + <input type="text" class="w-full p-3 border border-gray-600 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-400 bg-gray-700 text-white" id="nom" name="nom" required> </div> <div class="mb-4"> - <label for="createuremail" class="block text-gray-700 font-semibold">Email du créateur:</label> - <input type="email" class="w-full p-3 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-400" id="createuremail" name="createuremail" required> + <label for="createuremail" class="block text-gray-300 font-semibold">Email du créateur:</label> + <input type="email" class="w-full p-3 border border-gray-600 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-400 bg-gray-700 text-white" id="createuremail" name="createuremail" required> </div> <div class="mb-4"> - <label for="description" class="block text-gray-700 font-semibold">Description:</label> - <textarea class="w-full p-3 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-400" id="description" name="description" rows="3" required></textarea> + <label for="description" class="block text-gray-300 font-semibold">Description:</label> + <textarea class="w-full p-3 border border-gray-600 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-400 bg-gray-700 text-white" id="description" name="description" rows="3" required></textarea> + </div> + <div class="mb-4"> + <label for="logo" class="block text-gray-300 font-semibold">Logo du fil:</label> + <div class="flex items-center"> + <input type="file" id="file" name="file" class="text-gray-300"> + </div> </div> <button type="submit" class="bg-blue-500 text-white px-4 py-2 rounded-lg shadow-md hover:bg-blue-600 transition-colors w-full">Créer</button> </form> diff --git a/sae/WEB-INF/vue/fil.jsp b/sae/WEB-INF/vue/fil.jsp index 50e9fce07b942d332568e9b4268b130969e88cc6..cb3fe84500828782c52d8b669eda509c4cdc474b 100644 --- a/sae/WEB-INF/vue/fil.jsp +++ b/sae/WEB-INF/vue/fil.jsp @@ -14,13 +14,13 @@ <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>CampusTalk - Fil de Discussion</title> <link href="https://cdn.jsdelivr.net/npm/tailwindcss@2.2.19/dist/tailwind.min.css" rel="stylesheet"> - <link rel="shortcut icon" href="https://www.shareicon.net/data/2016/07/10/119195_chat_512x512.png"> + <link rel="shortcut icon" href="<%= request.getContextPath() %>/images/logo.png"> <style> .message-container { transition: background-color 0.3s ease; } .message-container:hover { - background-color: #f3f4f6; + background-color: #374151; } .message-image { max-width: 200px; @@ -30,10 +30,11 @@ } </style> </head> -<body class="bg-gray-100 flex"> - <aside class="w-64 bg-gray-800 text-white h-screen"> - <div class="p-4"> - <h1 class="text-2xl font-bold">CampusTalk</h1> +<body class="bg-gray-900 text-white flex h-screen"> + <aside class="w-64 bg-gray-800 text-white h-full"> + <div class="p-4 text-center"> + <img src="<%= request.getContextPath() %>/images/logo.png" alt="CampusTalk Logo" class="w-16 h-16 mx-auto"> + <h1 class="text-2xl font-bold mt-4">CampusTalk</h1> </div> <nav class="mt-4"> <a href="<%= request.getContextPath() %>/accueil" class="block py-2.5 px-4 rounded transition duration-200 hover:bg-gray-700">Accueil</a> @@ -42,7 +43,7 @@ <a href="<%= request.getContextPath() %>/logout" class="block py-2.5 px-4 rounded transition duration-200 hover:bg-red-700">Se déconnecter</a> </nav> </aside> - <div class="flex-1 p-6"> + <div class="flex-1 p-6 flex flex-col"> <% int id = Integer.parseInt(request.getParameter("id")); @@ -55,7 +56,7 @@ %> <div class="container mx-auto px-4 mt-8"> - <div class="bg-white p-6 rounded-lg shadow-lg"> + <div class="bg-gray-800 p-6 rounded-lg shadow-lg"> <h2 class="text-2xl font-bold mb-4 text-center"><%= fil.getNom() %></h2> <div class="overflow-y-auto max-h-96" id="messages-box"> <% for (Message m : messages) { @@ -66,9 +67,9 @@ <div class="w-10 h-10 rounded-full overflow-hidden"> <img src="https://www.gravatar.com/avatar/<%= m.getAuteurEmail().hashCode() %>?d=identicon&s=40" alt="Avatar"> </div> - <div class="ml-4 bg-gray-200 p-4 rounded-lg"> + <div class="ml-4 bg-gray-700 p-4 rounded-lg"> <h4 class="font-bold"><%= mdao.findUserName(m.getAuteurEmail()) %></h4> - <p class="text-sm text-gray-600"><%= formattedDate %></p> + <p class="text-sm text-gray-400"><%= formattedDate %></p> <p class="mt-2"><%= m.getContenu() %></p> <% if (m.getFileName() != null) { %> <img src="<%= request.getContextPath() %>/uploads/<%= m.getFileName() %>" alt="Image" class="mt-2 message-image"> @@ -78,9 +79,9 @@ <input type="hidden" name="messageId" value="<%= m.getId() %>"> <button type="submit" class="text-blue-500 hover:text-blue-700"> <% if (m.getLikeCount()) { %> - ❤️ Enlever le like + ❤️ <% } else { %> - 🤍 Like + 🤍 <% } %> </button> </form> @@ -96,22 +97,15 @@ <% } %> </div> - <div class="mt-6 bg-white p-6 rounded-lg shadow-lg"> - <form action="envoyerMessage" method="post" enctype="multipart/form-data"> + <div class="mt-6 bg-gray-800 p-6 rounded-lg shadow-lg"> + <form id="messageForm" action="envoyerMessage" method="post" enctype="multipart/form-data"> <div class="mb-4"> - <label for="contenu" class="block text-gray-700 font-semibold">Votre message :</label> - <textarea class="w-full p-3 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-400" id="contenu" name="contenu" rows="3" required></textarea> + <label for="contenu" class="block text-gray-300 font-semibold">Votre message :</label> + <textarea class="w-full p-3 border border-gray-600 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-400 bg-gray-700 text-white" id="contenu" name="contenu" rows="3" required></textarea> </div> <div class="mb-4"> - <label for="file" class="block text-gray-700 font-semibold">Ajouter une image :</label> <div class="flex items-center"> - <input type="file" class="hidden" id="file" name="file"> - <label for="file" class="cursor-pointer bg-blue-500 text-white px-4 py-2 rounded-lg shadow-md hover:bg-blue-600 transition-colors flex items-center"> - <svg class="w-5 h-5 mr-2" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> - <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 4v16m8-8H4"></path> - </svg> - Télécharger - </label> + <input type="file" id="file" name="file" class="text-gray-300"> </div> </div> <input type="hidden" name="filId" value="<%= id %>"> @@ -127,6 +121,17 @@ let messagesBox = document.getElementById('messages-box'); messagesBox.scrollTop = messagesBox.scrollHeight; }; + + // setInterval(function() { + // location.reload(); + // }, 5000); + + document.getElementById('contenu').addEventListener('keypress', function (e) { + if (e.key === 'Enter' && !e.shiftKey) { + e.preventDefault(); + document.getElementById('messageForm').submit(); + } + }); </script> </div> </body> diff --git a/sae/WEB-INF/vue/listerFil.jsp b/sae/WEB-INF/vue/listerFil.jsp index 0b5303404715a28ce50d3ae64f9e52d496513332..379797bf1bab32ff9b543f7729b2954c4a703cbe 100644 --- a/sae/WEB-INF/vue/listerFil.jsp +++ b/sae/WEB-INF/vue/listerFil.jsp @@ -14,12 +14,13 @@ <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>CampusTalk - Fils de Discussion</title> <link href="https://cdn.jsdelivr.net/npm/tailwindcss@2.2.19/dist/tailwind.min.css" rel="stylesheet"> - <link rel="shortcut icon" href="https://www.shareicon.net/data/2016/07/10/119195_chat_512x512.png"> + <link rel="shortcut icon" href="<%= request.getContextPath() %>/images/logo.png"> </head> -<body class="bg-gray-100 flex"> +<body class="bg-gray-900 text-white flex"> <aside class="w-64 bg-gray-800 text-white h-screen"> - <div class="p-4"> - <h1 class="text-2xl font-bold">CampusTalk</h1> + <div class="p-4 text-center"> + <img src="<%= request.getContextPath() %>/images/logo.png" alt="CampusTalk Logo" class="w-16 h-16 mx-auto"> + <h1 class="text-2xl font-bold mt-4">CampusTalk</h1> </div> <nav class="mt-4"> <a href="<%= request.getContextPath() %>/accueil" class="block py-2.5 px-4 rounded transition duration-200 hover:bg-gray-700">Accueil</a> @@ -30,9 +31,9 @@ </aside> <div class="flex-1 p-6"> - <div class="max-w-2xl mx-auto mt-8 p-6 bg-white rounded-lg shadow-md"> + <div class="max-w-2xl mx-auto mt-8 p-6 bg-gray-800 rounded-lg shadow-md"> <h2 class="text-2xl font-bold mb-4 text-center">Fils de Discussion</h2> - <p class="text-gray-700 mb-4 text-center">(auxquels vous n'êtes pas abonné)</p> + <p class="text-gray-400 mb-4 text-center">(auxquels vous n'êtes pas abonné)</p> <% String email = (String) session.getAttribute("email"); AbonnementDao adao = new AbonnementDao(); @@ -46,10 +47,11 @@ for (FilDeDiscussion f : fddao.findAll()) { if (!abonnementsIds.contains(f.getId())) { %> - <div class="mb-4 p-4 bg-gray-100 rounded-lg shadow-md"> + <div class="mb-4 p-4 bg-gray-700 rounded-lg shadow-md"> + <img src="<%= request.getContextPath() %>/images/<%= f.getLogo() %>" alt="Logo" class="w-16 h-16 mx-auto"> <h4 class="font-bold text-lg"><%= f.getNom() %></h4> <% if (f.getDescription() != null) { %> - <p class="text-gray-700"><%= f.getDescription() %></p> + <p class="text-gray-400"><%= f.getDescription() %></p> <% } %> <a href="<%= request.getContextPath() %>/suivreFil?id=<%= f.getId() %>" class="bg-blue-500 text-white px-4 py-2 rounded mt-2 inline-block">Suivre</a> </div> diff --git a/sae/WEB-INF/vue/login.jsp b/sae/WEB-INF/vue/login.jsp index f9c1f985a9eb1edb8cd342c492d60e7e2c9a583b..a81985e08faa36dfc07c239b7425891901184298 100644 --- a/sae/WEB-INF/vue/login.jsp +++ b/sae/WEB-INF/vue/login.jsp @@ -7,17 +7,13 @@ <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>CampusTalk - Connexion</title> <link href="https://cdn.jsdelivr.net/npm/tailwindcss@2.2.19/dist/tailwind.min.css" rel="stylesheet"> - <link rel="shortcut icon" href="https://www.shareicon.net/data/2016/07/10/119195_chat_512x512.png"> - <style> - body { - background-color: #f8f9fa; - } - </style> + <link rel="shortcut icon" href="<%= request.getContextPath() %>/images/logo.png"> </head> -<body class="bg-gray-100 flex"> +<body class="bg-gray-900 text-white flex"> <aside class="w-64 bg-gray-800 text-white h-screen"> - <div class="p-4"> - <h1 class="text-2xl font-bold">CampusTalk</h1> + <div class="p-4 text-center"> + <img src="<%= request.getContextPath() %>/images/logo.png" alt="CampusTalk Logo" class="w-16 h-16 mx-auto"> + <h1 class="text-2xl font-bold mt-4">CampusTalk</h1> </div> <nav class="mt-4"> <a href="<%= request.getContextPath() %>/accueil" class="block py-2.5 px-4 rounded transition duration-200 hover:bg-gray-700">Accueil</a> @@ -27,7 +23,7 @@ </nav> </aside> <div class="flex-1 p-6"> - <div class="max-w-md mx-auto mt-12 p-6 bg-white rounded-lg shadow-md"> + <div class="max-w-md mx-auto mt-12 p-6 bg-gray-800 rounded-lg shadow-md"> <h2 class="text-2xl font-bold mb-4 text-center">Bienvenue sur CampusTalk</h2> <form action="login" method="post"> <% @@ -39,12 +35,12 @@ </div> <% request.removeAttribute("error"); } %> <div class="mb-4"> - <label for="email" class="block text-gray-700 font-semibold">Adresse e-mail</label> - <input type="email" class="w-full p-3 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-400" name="email" id="email" placeholder="Entrez votre e-mail" required> + <label for="email" class="block text-gray-300 font-semibold">Adresse e-mail</label> + <input type="email" class="w-full p-3 border border-gray-600 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-400 bg-gray-700 text-white" name="email" id="email" placeholder="Entrez votre e-mail" required> </div> <div class="mb-4"> - <label for="motdepasse" class="block text-gray-700 font-semibold">Mot de passe</label> - <input type="password" class="w-full p-3 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-400" name="motdepasse" id="motdepasse" placeholder="Entrez votre mot de passe" required> + <label for="motdepasse" class="block text-gray-300 font-semibold">Mot de passe</label> + <input type="password" class="w-full p-3 border border-gray-600 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-400 bg-gray-700 text-white" name="motdepasse" id="motdepasse" placeholder="Entrez votre mot de passe" required> </div> <button type="submit" class="bg-blue-500 text-white px-4 py-2 rounded-lg shadow-md hover:bg-blue-600 transition-colors w-full">Se connecter</button> </form> diff --git a/sae/WEB-INF/vue/register.jsp b/sae/WEB-INF/vue/register.jsp index fb8ae2b099084f273ba44cfef6781f323244d773..97b79baa61cec9e5094386e6f98b012cb0563841 100644 --- a/sae/WEB-INF/vue/register.jsp +++ b/sae/WEB-INF/vue/register.jsp @@ -7,12 +7,13 @@ <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>CampusTalk - Inscription</title> <link href="https://cdn.jsdelivr.net/npm/tailwindcss@2.2.19/dist/tailwind.min.css" rel="stylesheet"> - <link rel="shortcut icon" href="https://www.shareicon.net/data/2016/07/10/119195_chat_512x512.png"> + <link rel="shortcut icon" href="<%= request.getContextPath() %>/images/logo.png"> </head> -<body class="bg-gray-100 flex"> +<body class="bg-gray-900 text-white flex"> <aside class="w-64 bg-gray-800 text-white h-screen"> - <div class="p-4"> - <h1 class="text-2xl font-bold">CampusTalk</h1> + <div class="p-4 text-center"> + <img src="<%= request.getContextPath() %>/images/logo.png" alt="CampusTalk Logo" class="w-16 h-16 mx-auto"> + <h1 class="text-2xl font-bold mt-4">CampusTalk</h1> </div> <nav class="mt-4"> <a href="<%= request.getContextPath() %>/accueil" class="block py-2.5 px-4 rounded transition duration-200 hover:bg-gray-700">Accueil</a> @@ -22,7 +23,7 @@ </nav> </aside> <div class="flex-1 p-6"> - <div class="max-w-md mx-auto mt-12 p-6 bg-white rounded-lg shadow-md"> + <div class="max-w-md mx-auto mt-12 p-6 bg-gray-800 rounded-lg shadow-md"> <h2 class="text-2xl font-bold mb-4 text-center">Inscription</h2> <% if (request.getAttribute("error") != null) { %> <div class="bg-red-100 text-red-700 p-4 rounded-lg mb-4"> @@ -31,16 +32,16 @@ <% request.removeAttribute("error"); } %> <form action="register" method="post"> <div class="mb-4"> - <label for="nom" class="block text-gray-700 font-semibold">Nom</label> - <input type="text" class="w-full p-3 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-400" name="nom" id="nom" placeholder="Entrez votre nom" required> + <label for="nom" class="block text-gray-300 font-semibold">Nom</label> + <input type="text" class="w-full p-3 border border-gray-600 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-400 bg-gray-700 text-white" name="nom" id="nom" placeholder="Entrez votre nom" required> </div> <div class="mb-4"> - <label for="email" class="block text-gray-700 font-semibold">Adresse e-mail</label> - <input type="email" class="w-full p-3 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-400" name="email" id="email" placeholder="Entrez votre e-mail" required> + <label for="email" class="block text-gray-300 font-semibold">Adresse e-mail</label> + <input type="email" class="w-full p-3 border border-gray-600 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-400 bg-gray-700 text-white" name="email" id="email" placeholder="Entrez votre e-mail" required> </div> <div class="mb-4"> - <label for="motdepasse" class="block text-gray-700 font-semibold">Mot de passe</label> - <input type="password" class="w-full p-3 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-400" name="motdepasse" id="motdepasse" placeholder="Choisissez un mot de passe" required> + <label for="motdepasse" class="block text-gray-300 font-semibold">Mot de passe</label> + <input type="password" class="w-full p-3 border border-gray-600 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-400 bg-gray-700 text-white" name="motdepasse" id="motdepasse" placeholder="Choisissez un mot de passe" required> </div> <button type="submit" class="bg-blue-500 text-white px-4 py-2 rounded-lg shadow-md hover:bg-blue-600 transition-colors w-full">S'inscrire</button> </form> diff --git a/sae/images/default.png b/sae/images/default.png new file mode 100644 index 0000000000000000000000000000000000000000..2c4a4aa777aa9377b7280a391189c13510ddc32d Binary files /dev/null and b/sae/images/default.png differ diff --git a/sae/images/logo.png b/sae/images/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..0566e1982c1da1799554be7c8ca0c9cd99e3ea82 Binary files /dev/null and b/sae/images/logo.png differ diff --git a/script.sql b/script.sql index ba4d366b919469baaf0cc0afc2435dd920b678c7..5d0f9ac5f4fd1f236eafdbedf5ca11cb39006dae 100644 --- a/script.sql +++ b/script.sql @@ -17,7 +17,7 @@ CREATE TABLE FilDeDiscussion ( dateCreation TIMESTAMP DEFAULT CURRENT_TIMESTAMP, createurEmail VARCHAR(100), description TEXT, - logo VARCHAR(255), + logo VARCHAR(255) DEFAULT 'default.png', CONSTRAINT pk_fil PRIMARY KEY (id), CONSTRAINT fk_createur FOREIGN KEY (createurEmail) REFERENCES Utilisateur(email) ON DELETE SET NULL