- Inscription sans redirection HelloAsso (acte volontaire séparé) - Génération automatique d'identifiant AlpID (prenom.code mnémotechnique) - Profil en tuiles : identité, compte, mot de passe, OTP, adhésion, adresse, connexions - Double authentification : activation/suppression OTP via Keycloak - Page d'accueil contextuelle (bienvenue si connecté, CTA adhésion si non adhérent) - Historique des connexions avec statistiques et graphiques Chart.js - Géocodage Nominatim + lien OpenStreetMap pour l'adresse - HelloAsso : checkout intent, validation paiement, mise à jour Dolibarr Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
98 lines
3.6 KiB
PHP
98 lines
3.6 KiB
PHP
<?php
|
|
require_once __DIR__ . '/inc/config.php';
|
|
require_once __DIR__ . '/inc/auth.php';
|
|
require_once __DIR__ . '/inc/services.php';
|
|
|
|
session_start_safe();
|
|
|
|
$user = current_user();
|
|
$title = 'Portail Alpinux';
|
|
$services = services_list();
|
|
|
|
$is_adherent = $user && (
|
|
$user['is_adherent'] ||
|
|
($user['is_admin'] ?? false)
|
|
);
|
|
|
|
require __DIR__ . '/views/layout.php';
|
|
?>
|
|
|
|
<?php if ($user): ?>
|
|
|
|
<div class="hero">
|
|
<h1>Bienvenue, <?= htmlspecialchars($user['name'] ?: $user['username']) ?></h1>
|
|
<?php if (!$is_adherent): ?>
|
|
<p>Vous n'avez pas encore adhéré à Alpinux. Adhérer, c'est soutenir nos actions pour le logiciel libre en Savoie.</p>
|
|
<div class="hero-actions">
|
|
<a href="/helloasso/renew.php" class="btn-primary">Adhérer maintenant</a>
|
|
<a href="/profile.php" class="btn-outline">Mon profil</a>
|
|
</div>
|
|
<?php else: ?>
|
|
<p>Merci pour votre soutien. Retrouvez vos services et votre profil ci-dessous.</p>
|
|
<div class="hero-actions">
|
|
<a href="/profile.php" class="btn-outline">Mon profil</a>
|
|
</div>
|
|
<?php endif; ?>
|
|
</div>
|
|
|
|
<?php else: ?>
|
|
|
|
<div class="hero">
|
|
<h1>Portail membres Alpinux</h1>
|
|
<p>Accédez à vos services, gérez votre adhésion et votre compte AlpID.</p>
|
|
<div class="hero-actions">
|
|
<a href="/register.php" class="btn-primary">Créer mon compte</a>
|
|
<a href="/auth/login.php" class="btn-outline">Se connecter</a>
|
|
</div>
|
|
</div>
|
|
|
|
<section class="home-about">
|
|
<div class="about-grid">
|
|
<div class="about-card">
|
|
<div class="about-title">Qui sommes-nous ?</div>
|
|
<p>Alpinux est le LUG (Linux User Group) de Savoie. Nous promouvons le logiciel libre, organisons des ateliers et des événements autour de Linux et des technologies ouvertes.</p>
|
|
</div>
|
|
<div class="about-card">
|
|
<div class="about-title">Pourquoi adhérer ?</div>
|
|
<p>Adhérer, c'est soutenir nos actions pour le logiciel libre en Savoie. C'est aussi accéder à l'ensemble des services membres et participer aux décisions lors de l'assemblée générale.</p>
|
|
</div>
|
|
<div class="about-card">
|
|
<div class="about-title">AlpID</div>
|
|
<p>Un seul compte pour tous les services Alpinux. Gérez votre profil, votre adresse et votre adhésion depuis ce portail.</p>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<?php endif; ?>
|
|
|
|
<section class="services-section">
|
|
<h2>Nos services</h2>
|
|
<div class="grid">
|
|
<?php foreach ($services as $s): if (!$s['visible']) continue;
|
|
$can_access = !$s['requires_adherent'] || $is_adherent; ?>
|
|
<div class="service-card <?= $s['requires_adherent'] ? 'adherent-only' : '' ?> <?= (!$can_access) ? 'locked' : '' ?>">
|
|
<div class="service-header">
|
|
<strong><?= htmlspecialchars($s['name']) ?></strong>
|
|
<?php if ($s['requires_adherent']): ?>
|
|
<span class="badge">Adhérent</span>
|
|
<?php endif; ?>
|
|
</div>
|
|
<?php if ($s['description']): ?>
|
|
<p><?= htmlspecialchars($s['description']) ?></p>
|
|
<?php endif; ?>
|
|
<div style="margin-top:.8rem">
|
|
<?php if ($can_access): ?>
|
|
<a href="<?= htmlspecialchars($s['url']) ?>" target="_blank" rel="noopener" style="font-size:.85rem">Accéder →</a>
|
|
<?php elseif ($user): ?>
|
|
<span class="text-muted small">Adhésion requise</span>
|
|
<?php else: ?>
|
|
<span class="text-muted small">Réservé aux adhérents —</span>
|
|
<a href="/register.php" style="font-size:.85rem">Adhérer</a>
|
|
<?php endif; ?>
|
|
</div>
|
|
</div>
|
|
<?php endforeach; ?>
|
|
</div>
|
|
</section>
|
|
|
|
<?php require __DIR__ . '/views/layout_end.php'; ?>
|