2023-03-27 22:45:16 +01:00
|
|
|
@using Yavsc.Models.Messaging;
|
|
|
|
|
<!DOCTYPE html>
|
2023-03-19 17:57:55 +00:00
|
|
|
<html lang="en">
|
|
|
|
|
<head>
|
|
|
|
|
<meta charset="utf-8" />
|
2024-03-04 01:02:19 +00:00
|
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no" />
|
2026-06-10 11:10:15 +01:00
|
|
|
<link rel="icon" type="image/svg+xml" href="~/images/yavsc-logo.svg" asp-append-version="true" />
|
|
|
|
|
<link rel="alternate icon" type="image/x-icon" href="@SiteSettings.Value.FavIcon" asp-append-version="true" />
|
2024-11-10 14:30:12 +00:00
|
|
|
<link rel="stylesheet" href="~/css/site.css" asp-append-version="true"/>
|
refac: separate front assets into esbuild bundles
Sort ~50 Mo de libs tierces hors du repo et regroupe le code
front en 6 bundles thématiques + 2 assets statiques.
Bundles produits par esbuild :
- core.bundle.min.js : jQuery + jQuery UI + Bootstrap 4 + validation
+ tout le code applicatif 'core'
(site, signout, signin, input-lib, md-helpers,
audiovideoinput, parallax, google.geocode,
google-geoloc). Chargé par _Layout.cshtml.
- chat.bundle.min.js : core subset (sans Bootstrap) + chat.js + comment.js
(SignalR client chargé séparément, voir plus bas)
- dropzone.bundle.min.js : jQuery + dropzone + yavsc-remote-fs
- datetime.bundle.min.js : jQuery + jQuery UI + eonasdan datetimepicker
+ jquery-timepicker
- timepicker.bundle.min.js : jQuery + jQuery UI + jquery-timepicker
- quill.bundle.min.js : Quill rich text editor
Assets statiques (non bundlés, copiés depuis node_modules) :
- signalr.min.js : client SignalR 2.x (legacy server)
- moment-with-locales.min.js : moment + 137 locales (require dynamique
non résolvable statiquement par esbuild)
CSS vendor copiées comme assets statiques vers wwwroot/css/ :
bootstrap.min.css, jquery-ui.min.css, dropzone.min.css,
dropzone-basic.min.css, bootstrap-datetimepicker.min.css,
jquery.timepicker.css
Exception gitignore : jonthornton-Datepair/jquery.datepair.min.js
n'est pas sur npm, conservé comme asset statique sous
wwwroot/lib/jonthornton-Datepair/ (téléchargé depuis upstream).
Vues Razor mises à jour (15 fichiers) pour pointer vers les bundles
et les CSS vendor. Suppression de la majorité de wwwroot/lib/ (1300+
fichiers). Suppression des jquery*.js, quill.js, showdown.js,
to-markdown.js, jquery.signalR-2.2.1.js, dropzone.js et de leurs
.min.js associés.
'jquery-datepair' et 'jquery-ui-map' non publiés sur npm :
- jquery-ui-map n'est utilisé nulle part dans le repo (vérifié),
la dépendance est purement historique.
- datepair reste en static sous wwwroot/lib/jonthornton-Datepair/.
2026-06-14 14:11:33 +01:00
|
|
|
<link rel="stylesheet" href="~/css/bootstrap.min.css" asp-append-version="true"/>
|
|
|
|
|
<link rel="stylesheet" href="~/css/jquery-ui.min.css" asp-append-version="true"/>
|
|
|
|
|
<script src="~/js/core.bundle.min.js" asp-append-version="true"></script>
|
2023-03-27 22:45:16 +01:00
|
|
|
@await RenderSectionAsync("header", false)
|
2023-03-19 17:57:55 +00:00
|
|
|
</head>
|
2025-07-09 13:16:01 +01:00
|
|
|
<body style="background-image: url('@Config.SiteSetup.Banner');
|
|
|
|
|
background-position: 0%;
|
|
|
|
|
background-attachment: fixed;
|
|
|
|
|
">
|
2024-03-04 01:02:19 +00:00
|
|
|
<partial name="_Nav" />
|
|
|
|
|
@RenderSection("ctxmenu", required: false)
|
2026-06-04 12:13:37 +01:00
|
|
|
@if (ViewBag.Notify != null)
|
2024-03-04 01:02:19 +00:00
|
|
|
{
|
2026-06-04 12:13:37 +01:00
|
|
|
foreach (Notification n in ViewBag.Notify as IEnumerable<Notification>)
|
2024-03-04 01:02:19 +00:00
|
|
|
{
|
2025-08-25 12:58:25 +01:00
|
|
|
<div class="alert alert-info alert-dismissable" data-nid="@n.Id">
|
2024-03-04 01:02:19 +00:00
|
|
|
<img src="~/images/Notifications/@(n.icon).png" style="max-height:3em; float: left; margin:1em;" />
|
|
|
|
|
<h2 markdown="@n.title"></h2>
|
|
|
|
|
<a class="close" data-dismiss="alert" aria-label="close"
|
2026-02-22 23:39:56 +00:00
|
|
|
onclick="notifClick(@n.Id)">@((n.click_action == null) ? Localizer["Fermer"] : Localizer[n.click_action])</a>
|
2024-03-04 01:02:19 +00:00
|
|
|
<asciidoc>@n.body</asciidoc>
|
2019-01-01 16:28:47 +00:00
|
|
|
</div>
|
2023-03-27 22:45:16 +01:00
|
|
|
}
|
2024-03-04 01:02:19 +00:00
|
|
|
}
|
2023-03-29 00:43:35 +01:00
|
|
|
@await RenderSectionAsync("subbanner", false)
|
2026-03-16 23:16:12 +00:00
|
|
|
<div class="container py-4">
|
2024-03-04 01:02:19 +00:00
|
|
|
@RenderBody()
|
|
|
|
|
</div>
|
2023-03-19 17:57:55 +00:00
|
|
|
<footer class="border-top footer text-muted">
|
|
|
|
|
<div class="container">
|
2025-02-24 21:26:21 +00:00
|
|
|
© WTFPL 2025 - <a asp-area="" asp-controller="Home" asp-action="Privacy">Privacy</a>
|
2023-03-19 17:57:55 +00:00
|
|
|
</div>
|
|
|
|
|
</footer>
|
2024-12-14 20:21:41 +00:00
|
|
|
|
|
|
|
|
@await RenderSectionAsync("scripts", false)
|
2024-11-10 14:30:12 +00:00
|
|
|
|
2023-03-19 17:57:55 +00:00
|
|
|
</body>
|
2019-01-01 16:28:47 +00:00
|
|
|
</html>
|