' . $text . ''; } else { $parts[] = '' . $text . ''; } } $count = count($parts); if ($count === 1) return $parts[0]; // Join all but last two with ", ", join last two with " & " $prefix = implode(', ', array_slice($parts, 0, $count - 2)); $suffix = implode(' & ', array_slice($parts, -2)); return $prefix !== '' ? $prefix . ', ' . $suffix : $suffix; } try { $db = Database::getInstance(); // Intro text from pages table $aboutPage = $db->getPage('about'); $rawContent = $aboutPage ? $aboutPage['content'] : ''; if (empty(trim($rawContent)) || trim($rawContent) === 'Contenu à venir') { $rawContent = APROPOS_STATIC_CONTENT; } // Contacts and credits from apropos_contents table $contacts = $db->getAproposContent('contacts'); $credits = $db->getAproposContent('credits'); // Apply defaults if DB returns empty $contacts = is_array($contacts) && !empty($contacts) ? $contacts : null; $credits = is_array($credits) && !empty($credits) ? $credits : null; } catch (Exception $e) { error_log("Error loading about page: " . $e->getMessage()); $rawContent = APROPOS_STATIC_CONTENT; $contacts = null; $credits = null; } $pd = new Parsedown(); $pd->setSafeMode(true); $aboutHtml = $pd->text($rawContent); $pageTitle = 'À Propos – Posterg'; $metaDescription = 'À propos de Posterg, le répertoire des mémoires de fin d\'études de l\'erg – École de Recherches Graphiques de Bruxelles.'; $ogTags = [ 'type' => 'website', 'title' => $pageTitle, 'description' => $metaDescription, 'url' => 'https://posterg.erg.be/apropos.php', 'site_name' => 'Posterg – ERG', ]; $extraCss = ['/assets/css/apropos.css']; $bodyClass = 'apropos-body'; ?>

Contacts

!empty($e)); foreach ($emails as $email): ?>

Crédits