';
@@ -123,6 +131,7 @@ function afficherXPAdmin() {
$xptype = htmlspecialchars($experience['xptype']);
$description = nl2br(htmlspecialchars($experience['description']));
$duration = htmlspecialchars($experience['duration']);
+ $status = htmlspecialchars($experience['status'] ?? '');
$image = htmlspecialchars($experience['image_url']);
$tags = [];
@@ -135,11 +144,22 @@ function afficherXPAdmin() {
if (!empty($image)) {
echo '
';
echo '
' . $titre . '
';
+
+ // Si le status n'est pas vide alors on l'affiche
+ if (!empty($status)) {
+ echo '
' . $status . '
';
+ }
+
echo '
Type : ' . $xptype . '
';
echo '
Durée : ' . $duration . '
';
diff --git a/index.php b/index.php
index 5423d21..c5dece2 100644
--- a/index.php
+++ b/index.php
@@ -3,7 +3,10 @@
// 2026 - Projet Hébergé par l'entreprise TerraTech Hebergement en collaboration avec l'association Eldoria Network
// Le CSS est **probablement** généré par intelligence artificielle ou récupéré d'autre projet, cependant le code PHP / HTML / JS est globalement fait par un humain
-// Note : Pour lancer un serveur local PHP Depuis VsCode : 'php -v' pour vérifier que php est bien installé et 'php -S localhost:8000' pour lancer le serveur
+// Note 1 : Pour lancer un serveur local PHP Depuis VsCode : 'php -v' pour vérifier que php est bien installé et 'php -S localhost:8000' pour lancer le serveur
+// Note 2 : Je m'aide désormais de l'autocompletion de vsCode pour accélerer le développement avec Copilot (GitHub) mais le reste du code est entièrement développé par moi même mais copilot
+// reste utile pour la génération de commentaires, de code répétitif ou de code basique (exemple : les formulaires de contact, les requêtes SQL basiques etc...)
+
// Le header n'y étant pas je rajoute ici un démarrage de session
session_start();
diff --git a/pages/home.php b/pages/home.php
index 57ce24d..0060838 100644
--- a/pages/home.php
+++ b/pages/home.php
@@ -10,6 +10,58 @@ require_once('./../elements/header.php');
//Si du CSS / ou des images s'affichent mal, il faut penser à vider le cache, version de développement uniquement.
+?>
+
+
+
Si le CSS ou les images s'affichent mal, pensez à vider
+ le cache de votre navigateur (Ctrl + F5 ou Cmd + Shift + R) pour voir les dernières modifications. Version de développement uniquement.
+
+
+
+
+
+
diff --git a/pages/skills.php b/pages/skills.php
new file mode 100644
index 0000000..307af76
--- /dev/null
+++ b/pages/skills.php
@@ -0,0 +1,9 @@
+
\ No newline at end of file
diff --git a/styles/primary_css.css b/styles/primary_css.css
index cefa3db..8ea683f 100644
--- a/styles/primary_css.css
+++ b/styles/primary_css.css
@@ -134,6 +134,23 @@ nav a:hover {
max-width: 100%;
}
+.project-state {
+ position: absolute;
+ top: 14px;
+ left: 14px;
+ z-index: 2;
+ display: inline-flex;
+ align-items: center;
+ padding: 8px 16px;
+ background-color: rgba(39, 255, 83, 0.10);
+ color: #7dff98;
+ border: 2px solid #39ff5a;
+ border-radius: 16px;
+ font-size: 13px;
+ font-weight: bold;
+ line-height: 1;
+}
+
.project-header h2 {
margin-top: 0;
margin-bottom: 20px;
@@ -170,6 +187,11 @@ nav a:hover {
font-size: 14px;
}
+.project-banner {
+ position: relative;
+ overflow: hidden;
+}
+
.project-form-card input[type="text"],
.project-form-card input[type="url"],
.project-form-card input[type="password"],
@@ -546,4 +568,123 @@ main {
width: 100%;
min-width: 0;
}
+}
+
+/* ---- PAGE HOME ---- */
+
+.quick-links-section {
+ max-width: 1200px;
+ margin: 70px auto;
+ padding: 0 40px;
+}
+
+.quick-links-header {
+ margin-bottom: 28px;
+}
+
+.quick-links-header h2 {
+ margin: 0 0 10px;
+ font-size: 42px;
+ font-weight: 800;
+ color: white;
+}
+
+.quick-links-header p {
+ margin: 0;
+ color: #aaaaaa;
+ font-size: 18px;
+}
+
+.quick-links-grid {
+ display: grid;
+ grid-template-columns: repeat(4, minmax(0, 1fr));
+ gap: 24px;
+}
+
+.quick-link-card {
+ display: flex;
+ flex-direction: column;
+ justify-content: flex-start;
+ min-height: 230px;
+ padding: 30px;
+ background: linear-gradient(180deg, #111116 0%, #0f1420 100%);
+ border: 1px solid #2a2a3e;
+ border-radius: 20px;
+ text-decoration: none;
+ color: white;
+ box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
+ transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
+}
+
+.quick-link-card:hover {
+ transform: translateY(-6px);
+ border-color: #6c63ff;
+ box-shadow: 0 18px 40px rgba(108, 99, 255, 0.18);
+}
+
+.quick-link-icon {
+ width: 62px;
+ height: 62px;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ margin-bottom: 26px;
+ border-radius: 16px;
+ background: rgba(108, 99, 255, 0.14);
+ border: 1px solid rgba(108, 99, 255, 0.28);
+ color: #8f88ff;
+ font-size: 26px;
+}
+
+.quick-link-card h3 {
+ margin: 0 0 14px;
+ font-size: 30px;
+ font-weight: 800;
+ color: white;
+}
+
+.quick-link-card p {
+ margin: 0;
+ color: #aaaaaa;
+ font-size: 18px;
+ line-height: 1.7;
+}
+
+/* Responsive */
+@media (max-width: 1100px) {
+ .quick-links-grid {
+ grid-template-columns: repeat(2, minmax(0, 1fr));
+ }
+}
+
+@media (max-width: 700px) {
+ .quick-links-section {
+ padding: 0 20px;
+ margin: 50px auto;
+ }
+
+ .quick-links-header h2 {
+ font-size: 32px;
+ }
+
+ .quick-links-header p {
+ font-size: 16px;
+ }
+
+ .quick-links-grid {
+ grid-template-columns: 1fr;
+ }
+
+ .quick-link-card {
+ min-height: auto;
+ padding: 24px;
+ }
+
+ .quick-link-card h3 {
+ font-size: 24px;
+ }
+
+ .quick-link-card p {
+ font-size: 16px;
+ }
}
\ No newline at end of file