Sauvegarde

This commit is contained in:
Esteban
2026-07-02 17:44:40 +02:00
parent 481fbc9498
commit 97caf2275c
10 changed files with 362 additions and 18 deletions
+50 -1
View File
@@ -13,6 +13,7 @@ require_once('../functions/listXP.php');
require_once('../functions/listSchool.php');
require_once('../functions/listSkills.php');
require_once('../functions/listSettings.php');
require_once('../functions/listLogos.php');
// L'utilisateur doit être administrateur
@@ -26,6 +27,7 @@ $projetAModifier = null;
$xpAModifier = null;
$ecoleAModifier = null;
$skillAModifier = null;
$logoAModifier = null;
// Si on modifie XP, Projets, École ou Compétence
@@ -41,6 +43,9 @@ if (isset($_GET['edit_school']) && is_numeric($_GET['edit_school'])) {
if (isset($_GET['edit_skill']) && is_numeric($_GET['edit_skill'])) {
$skillAModifier = recupererSkillParId((int) $_GET['edit_skill']);
}
if (isset($_GET['edit_logo']) && is_numeric($_GET['edit_logo'])) {
$logoAModifier = recupererLogoParId((int) $_GET['edit_logo']);
}
// Valeurs actuelles de la notification de la page d'accueil
$noticeTitle = recupererSetting('site_notice_title') ?? '';
@@ -55,7 +60,7 @@ $noticeEnabled = recupererSetting('site_notice_enabled') ?? '1';
<!-- Titre du panneau -->
<div class="page-header">
<h1>Panneau d'administration</h1>
<p>Gère le contenu du site : projets, expériences, écoles, compétences, notification et utilisateurs.</p>
<p>Gère le contenu du site : projets, expériences, écoles, compétences, logos, notification et utilisateurs.</p>
</div>
<!-- Sous-navigation : accès rapide à chaque catégorie -->
@@ -64,6 +69,7 @@ $noticeEnabled = recupererSetting('site_notice_enabled') ?? '1';
<a href="#admin-experiences"><i class="fa-solid fa-briefcase"></i> Expériences</a>
<a href="#admin-ecoles"><i class="fa-solid fa-graduation-cap"></i> Écoles</a>
<a href="#admin-competences"><i class="fa-solid fa-code"></i> Compétences</a>
<a href="#admin-logos"><i class="fa-solid fa-images"></i> Logos</a>
<a href="#admin-notification"><i class="fa-solid fa-bell"></i> Notification</a>
<a href="#admin-utilisateurs"><i class="fa-solid fa-users"></i> Utilisateurs</a>
<a href="#admin-donnees"><i class="fa-solid fa-database"></i> Données</a>
@@ -311,6 +317,49 @@ $noticeEnabled = recupererSetting('site_notice_enabled') ?? '1';
</div>
</section>
<!-- ========== SECTION LOGOS (bandeaux page d'accueil) ========== -->
<section id="admin-logos" class="admin-section">
<h2 class="admin-section-title"><i class="fa-solid fa-images"></i> Logos (page d'accueil)</h2>
<details class="admin-block" <?php echo $logoAModifier ? 'open' : ''; ?>>
<summary><?php echo $logoAModifier ? 'Modifier le logo : ' . htmlspecialchars($logoAModifier['name']) : '+ Nouveau logo'; ?></summary>
<div class="project-form-card">
<!-- on envoie les données à addLogo.php -->
<form method="POST" action="<?php echo $logoAModifier ? '../scripts/updateLogo.php' : '../scripts/addLogo.php'; ?>">
<?php if ($logoAModifier): ?>
<input type="hidden" name="id" value="<?php echo (int) $logoAModifier['id']; ?>">
<?php endif; ?>
<label>Bandeau *</label>
<select name="category">
<option value="tool" <?php echo (!$logoAModifier || $logoAModifier['category'] === 'tool') ? 'selected' : ''; ?>>Outils que je sais manipuler</option>
<option value="partner" <?php echo ($logoAModifier && $logoAModifier['category'] === 'partner') ? 'selected' : ''; ?>>Ils m'ont fait confiance</option>
</select>
<label>Nom (outil ou entreprise) *</label>
<input type="text" name="name" required placeholder="Docker, Proxmox, Nom de l'entreprise..." value="<?php echo $logoAModifier ? htmlspecialchars($logoAModifier['name']) : ''; ?>">
<label>Lien du logo *</label>
<input type="url" name="logourl" placeholder="https://..." required value="<?php echo $logoAModifier ? htmlspecialchars($logoAModifier['logo_url']) : ''; ?>">
<label>Lien externe (optionnel, rend le logo cliquable)</label>
<input type="url" name="linkurl" placeholder="https://..." value="<?php echo $logoAModifier ? htmlspecialchars($logoAModifier['link_url'] ?? '') : ''; ?>">
<label>Position (ordre d'affichage, du plus petit au plus grand)</label>
<input type="text" name="position" value="<?php echo $logoAModifier ? (int) $logoAModifier['position'] : '0'; ?>">
<input type="submit" name="submitlogo" value="<?php echo $logoAModifier ? 'Modifier le logo' : '+ Ajouter le logo'; ?>" class="btn-submit">
</form>
</div>
</details>
<!-- Liste des logos avec modification / suppression -->
<?php afficherLogosAdmin(); ?>
</section>
<!-- ========== SECTION NOTIFICATION ========== -->
<section id="admin-notification" class="admin-section">
<h2 class="admin-section-title"><i class="fa-solid fa-bell"></i> Notification de la page d'accueil</h2>
+1 -1
View File
@@ -13,7 +13,7 @@ require_once("../elements/header.php");
<div class="contact-card">
<div class="contact-info">
<p class="contact-title">Contact</p>
<p class="contact-name">Moussu Esteban</p>
<p class="contact-name">Esteban MOUSSU</p>
<p class="contact-line"><i class="fa-solid fa-envelope"></i> esteban.moussu@ik.me</p>
<p class="contact-line"><i class="fa-solid fa-location-dot"></i> 20 Grande rue</p>
<p class="contact-line">52500 Broncourt</p>
+24
View File
@@ -12,6 +12,10 @@ require_once('./../elements/header.php');
// La notification est maintenant dynamique : modifiable depuis le panel Admin (table settings)
require_once('../functions/listSettings.php');
// Bandeaux de logos ("Outils que je sais manipuler" / "Ils m'ont fait confiance"),
// gérés depuis le panel Admin (table logo_banners)
require_once('../functions/listLogos.php');
// Affichage de la notification (si elle est activée dans le panel Admin)
afficherNotice();
?>
@@ -35,6 +39,16 @@ afficherNotice();
</a>
</section>
<?php if (!empty(listeLogos('tool'))): ?>
<!-- Bandeau défilant des outils maîtrisés, géré depuis le panel Admin -->
<section class="logo-banner-section">
<div class="logo-banner-header">
<h2>Outils que je sais manipuler</h2>
</div>
<?php afficherLogos('tool'); ?>
</section>
<?php endif; ?>
<!-- Section d'exploration rapide -->
<section class="quick-links-section" id="explorer">
<div class="quick-links-header">
@@ -79,6 +93,16 @@ afficherNotice();
</div>
</section>
<?php if (!empty(listeLogos('partner'))): ?>
<!-- Bandeau défilant des entreprises partenaires, géré depuis le panel Admin -->
<section class="logo-banner-section">
<div class="logo-banner-header">
<h2>Ils m'ont fait confiance</h2>
</div>
<?php afficherLogos('partner'); ?>
</section>
<?php endif; ?>
<?php
// Ajout du footer
require_once('../elements/footer.php');