Files
FrontOffice/src/FrontOffice.Main/Pages/_Host.cshtml

78 lines
3.5 KiB
Plaintext

@page "/"
@using Microsoft.AspNetCore.Components.Web
@namespace FrontOffice.Main.Pages
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
<!DOCTYPE html>
<html lang="fa">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<base href="~/" />
<link href="css/site.css" rel="stylesheet" />
<link href="FrontOffice.Main.styles.css" rel="stylesheet" />
<link rel="icon" type="image/png" href="favicon.png"/>
<component type="typeof(HeadOutlet)" render-mode="Server" />
<link href="https://fonts.googleapis.com/css?family=Roboto:300,400,500,700&display=swap" rel="stylesheet" />
<!-- Ensure latest MudBlazor CSS is used (cache-busting) -->
<link href="_content/MudBlazor/MudBlazor.min.css" rel="stylesheet" asp-append-version="true" />
</head>
<body>
<component type="typeof(App)" render-mode="Server" />
<div id="blazor-error-ui">
<environment include="Staging,Production">
یک خطا رخ داده است. این برنامه ممکن است تا زمان بارگذاری مجدد پاسخگو نباشد.
</environment>
<environment include="Development">
خطای مدیریت‌نشده ای اتفاق افتاده است. برای مشاهده جزئیات، ابزار توسعه (DevTools) مرورگر را بررسی نمایید.
</environment>
<a href="" class="reload">بارگذاری مجدد</a>
<a class="dismiss">🗙</a>
</div>
<!-- Load MudBlazor JS before Blazor to avoid early JS interop calls failing; add cache-busting -->
<script src="_content/MudBlazor/MudBlazor.min.js" asp-append-version="true"></script>
<script src="_framework/blazor.server.js"></script>
<script>
// elementId: id نوار (مثلاً "top")
// containerSelector: کانتینری که اسکرول می‌خوره؛ برای MudLayout معمولا ".mud-main-content"
// threshold: آستانه پیکسل
function changeNavBgOnBodyScroll(elementId, containerSelector = null, threshold = 10) {
var navbar = document.getElementById(elementId);
if (!navbar) return;
var container = containerSelector ? document.querySelector(containerSelector) : window;
var getScrollTop = function () {
if (container === window) {
return window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;
}
return container.scrollTop || 0;
};
var update = function () {
var y = getScrollTop();
if (y >= threshold) {
navbar.classList.add("white", "mud-elevation-2");
} else {
navbar.classList.remove("white", "mud-elevation-2");
}
};
// گوش دادن به اسکرول روی کانتینر درست
(container === window ? window : container).addEventListener("scroll", update, { passive: true });
// برای بارگذاری اولیه / تغییر اندازه / بازگشت از تاریخچه
window.addEventListener("load", update);
window.addEventListener("resize", update);
window.addEventListener("pageshow", update);
// اجرای اولیه (حتی اگر کاربر اسکرول نکرده)
requestAnimationFrame(update);
}
</script>
</body>
</html>