Files
Portfolio-Esteban/pages/home.php
T
2026-08-28 00:04:48 +02:00

158 lines
5.9 KiB
PHP

<?php
// Page Home PortFolio Esteban
// Cette page servira de page d'accueil où nous pourrons y retrouver une redirection vers les différents projets, espace de connexion, form de contact, etc...
// Titre de l'onglet
$pageTitle = 'Accueil';
// Insertion du header
require_once('./../elements/header.php');
// La notification est maintenant dynamique : modifiable depuis le panel Admin (table settings)
require_once('../functions/listSettings.php');
// Bandeau "Ils m'ont fait confiance", géré depuis le panel Admin (table logo_banners)
require_once('../functions/listLogos.php');
// Bandeau "Outils que je sais manipuler" : dérivé directement des icônes de la page
// Compétences, pas de saisie séparée (voir listeIconesCompetences)
require_once('../functions/listSkills.php');
// Chiffres clés (bandeau de stats sous le hero) : nombre réel de projets/expériences
// en BDD, et nombre de technologies reconnaissables (réutilise listeIconesCompetences)
require_once('../functions/listStats.php');
$statsHome = recupererStatsHome();
$statsHome['technologies'] = count(listeIconesCompetences());
// Affichage de la notification (si elle est activée dans le panel Admin)
afficherNotice();
?>
<!-- Section hero : présentation rapide -->
<section class="hero">
<span class="hero-badge"><i class="fa-solid fa-graduation-cap"></i> Étudiant en informatique</span>
<h1>Salut, moi c'est <span class="accent">Esteban</span></h1>
<p>
Passionné par les systèmes, les réseaux et le développement web.
Découvre mes projets, mes expériences professionnelles et mes compétences.
</p>
<div class="hero-actions">
<a href="../pages/projects.php" class="btn btn-primary"><i class="fa-solid fa-folder-open"></i> Voir mes projets</a>
<a href="../pages/contact.php" class="btn btn-ghost"><i class="fa-solid fa-paper-plane"></i> Me contacter</a>
</div>
<!-- Flèche animée qui invite à défiler vers le bas -->
<a href="#explorer" class="scroll-indicator" aria-label="Défiler vers le bas">
<i class="fa-solid fa-chevron-down"></i>
</a>
</section>
<?php
// Chiffres clés : n'affiche que les compteurs non nuls (pas de "0 projets" décevant
// si le site vient d'être initialisé)
$statsAffichables = array_filter([
'projets' => ['valeur' => $statsHome['projets'], 'label' => 'Projet' . ($statsHome['projets'] > 1 ? 's' : '') . ' réalisés'],
'experiences' => ['valeur' => $statsHome['experiences'], 'label' => 'Expérience' . ($statsHome['experiences'] > 1 ? 's' : '') . ' pro'],
'technologies' => ['valeur' => $statsHome['technologies'], 'label' => 'Technologies maîtrisées'],
], function ($stat) { return $stat['valeur'] > 0; });
?>
<?php
// Bandeau de chiffres clés : compteurs réels, calculés depuis la BDD.
// Rien n'est affiché s'il n'y a aucun compteur à montrer.
if (!empty($statsAffichables)) {
echo '<section class="stats-strip">';
// Une tuile par compteur
foreach ($statsAffichables as $stat) {
echo '<div class="stat-item">';
echo '<span class="stat-number">' . (int) $stat['valeur'] . '</span>';
echo '<span class="stat-label">' . htmlspecialchars($stat['label']) . '</span>';
echo '</div>';
}
echo '</section>';
}
?>
<?php
// Bandeau défilant des outils, dérivé des icônes de la page Compétences.
// Si aucune compétence n'a d'icône reconnaissable, la section entière est masquée.
if (!empty(listeIconesCompetences())) {
echo '<section class="logo-banner-section">';
echo '<div class="logo-banner-header">';
echo '<h2>Outils que je sais manipuler</h2>';
echo '</div>';
// Cette fonction affiche elle-même le bandeau (voir functions/listSkills.php)
afficherOutilsCompetences();
echo '</section>';
}
?>
<!-- Section d'exploration rapide -->
<section class="quick-links-section" id="explorer">
<div class="quick-links-header">
<!-- Titre et description de la section -->
<h2>Explorer</h2>
<p>Accède rapidement aux sections principales de mon portfolio.</p>
</div>
<!-- Grille de cartes de redirection vers les différentes page -->
<div class="quick-links-grid">
<a href="../pages/projects.php" class="quick-link-card">
<div class="quick-link-icon">
<i class="fa-solid fa-folder-open"></i>
</div>
<h3>Projets</h3>
<p>Voir mes réalisations.</p>
</a>
<a href="../pages/xp.php" class="quick-link-card">
<div class="quick-link-icon">
<i class="fa-solid fa-briefcase"></i>
</div>
<h3>Expériences</h3>
<p>Découvrir mes stages et missions réalisées.</p>
</a>
<a href="../pages/skills.php" class="quick-link-card">
<div class="quick-link-icon">
<i class="fa-solid fa-code"></i>
</div>
<h3>Compétences</h3>
<!-- Page où il y aura toutes mes compétences -->
<p>Systèmes, réseaux et développement.</p>
</a>
<a href="../pages/contact.php" class="quick-link-card">
<div class="quick-link-icon">
<i class="fa-solid fa-paper-plane"></i>
</div>
<h3>Contact</h3>
<p>Me contacter rapidement pour échanger.</p>
</a>
</div>
</section>
<?php
// Bandeau défilant des entreprises partenaires, géré depuis le panel Admin.
// Tant qu'aucun logo "partner" n'est enregistré, la section n'apparaît pas.
if (!empty(listeLogos('partner'))) {
echo '<section class="logo-banner-section">';
echo '<div class="logo-banner-header">';
echo '<h2>Ils m\'ont fait confiance</h2>';
echo '</div>';
// Cette fonction affiche elle-même le bandeau (voir functions/listLogos.php)
afficherLogos('partner');
echo '</section>';
}
?>
<?php
// Ajout du footer
require_once('../elements/footer.php');
?>