mirror of
https://codeberg.org/PostERG/xamxam.git
synced 2026-06-25 16:19:19 +02:00
Extract partage page chrome to templates/partage/form-page.php
This commit is contained in:
67
app/templates/partage/form-page.php
Normal file
67
app/templates/partage/form-page.php
Normal file
@@ -0,0 +1,67 @@
|
||||
<?php
|
||||
/**
|
||||
* Partage page chrome — wraps any partage page (form, error, password gate, confirmation).
|
||||
*
|
||||
* Required variables:
|
||||
* string $pageTitle — page <title>
|
||||
*
|
||||
* Optional variables:
|
||||
* bool $includeFilePond — if true, includes FilePond CSS/JS
|
||||
* array $extraCss — additional CSS files to load
|
||||
* array $extraJs — additional JS files to load
|
||||
* ?string $csrfToken — CSRF token for <meta name="csrf-token">
|
||||
* ?string $filepondBase — FilePond base URL for <meta name="filepond-base">
|
||||
*/
|
||||
$includeFilePond = $includeFilePond ?? false;
|
||||
$extraCss = $extraCss ?? [];
|
||||
$extraJs = $extraJs ?? [];
|
||||
$csrfToken = $csrfToken ?? ($_SESSION['csrf_token'] ?? null);
|
||||
$filepondBase = $filepondBase ?? null;
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="fr">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title><?= htmlspecialchars($pageTitle ?? 'XAMXAM') ?></title>
|
||||
<link rel="apple-touch-icon" sizes="152x152" href="/assets/favicon/apple-touch-icon-152x152.png">
|
||||
<link rel="apple-touch-icon" sizes="167x167" href="/assets/favicon/apple-touch-icon-167x167.png">
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon-180x180.png">
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png">
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png">
|
||||
<link rel="shortcut icon" href="/assets/favicon/favicon.ico">
|
||||
<meta name="theme-color" content="#ffffff">
|
||||
<?php if ($csrfToken !== null): ?>
|
||||
<meta name="csrf-token" content="<?= htmlspecialchars($csrfToken) ?>">
|
||||
<?php endif; ?>
|
||||
<?php if ($filepondBase !== null): ?>
|
||||
<meta name="filepond-base" content="<?= htmlspecialchars($filepondBase) ?>">
|
||||
<?php endif; ?>
|
||||
<link rel="stylesheet" href="<?= App::assetV('/assets/css/style.css') ?>">
|
||||
<link rel="stylesheet" href="<?= App::assetV('/assets/css/form-base.css') ?>">
|
||||
<?php if ($includeFilePond): ?>
|
||||
<link rel="stylesheet" href="<?= App::assetV('/assets/css/filepond.min.css') ?>">
|
||||
<link rel="stylesheet" href="<?= App::assetV('/assets/css/filepond-plugin-image-preview.min.css') ?>">
|
||||
<?php endif; ?>
|
||||
<?php foreach ($extraCss as $css): ?>
|
||||
<link rel="stylesheet" href="<?= App::assetV($css) ?>">
|
||||
<?php endforeach; ?>
|
||||
<?php if ($includeFilePond): ?>
|
||||
<script src="<?= App::assetV('/assets/js/vendor/filepond.min.js') ?>" defer></script>
|
||||
<script src="<?= App::assetV('/assets/js/vendor/filepond-plugin-file-validate-type.min.js') ?>" defer></script>
|
||||
<script src="<?= App::assetV('/assets/js/vendor/filepond-plugin-file-validate-size.min.js') ?>" defer></script>
|
||||
<script src="<?= App::assetV('/assets/js/vendor/filepond-plugin-image-preview.min.js') ?>" defer></script>
|
||||
<script src="<?= App::assetV('/assets/js/vendor/filepond-plugin-image-exif-orientation.min.js') ?>" defer></script>
|
||||
<script src="<?= App::assetV('/assets/js/app/file-upload-filepond.js') ?>" defer></script>
|
||||
<?php endif; ?>
|
||||
<script src="<?= App::assetV('/assets/js/app/beforeunload-guard.js') ?>" defer></script>
|
||||
<?php if ($includeFilePond): ?>
|
||||
<script src="<?= App::assetV('/assets/js/app/pill-search.js') ?>" defer></script>
|
||||
<script src="<?= App::assetV('/assets/js/app/jury-autocomplete.js') ?>" defer></script>
|
||||
<script src="<?= App::assetV('/assets/js/vendor/htmx.min.js') ?>" defer></script>
|
||||
<?php endif; ?>
|
||||
<?php foreach ($extraJs as $js): ?>
|
||||
<script src="<?= App::assetV($js) ?>" defer></script>
|
||||
<?php endforeach; ?>
|
||||
</head>
|
||||
<body class="student-body">
|
||||
Reference in New Issue
Block a user