disable menu

This commit is contained in:
hamid zarghami
2026-02-02 11:20:58 +03:30
parent ea1d3dab2b
commit e1adb30b55
2 changed files with 33 additions and 2 deletions
+4 -2
View File
@@ -4,6 +4,7 @@ import type { Metadata, Viewport } from 'next'
import { getRestaurant } from './lib/getRestaurant' import { getRestaurant } from './lib/getRestaurant'
import { notFound } from 'next/navigation' import { notFound } from 'next/navigation'
import CartChecker from '@/components/CartChecker' import CartChecker from '@/components/CartChecker'
import ActiveChecker from '@/components/ActiveChecker'
export const dynamic = 'force-dynamic' export const dynamic = 'force-dynamic'
export const revalidate = 0 export const revalidate = 0
@@ -23,12 +24,12 @@ export async function generateMetadata({
const logo = restaurant.logo const logo = restaurant.logo
const defaultIcon = "/icons/web-app-manifest-192x192.png" const defaultIcon = "/icons/web-app-manifest-192x192.png"
// استفاده از API route برای تبدیل لوگو به مربع // استفاده از API route برای تبدیل لوگو به مربع
let iconUrl = defaultIcon let iconUrl = defaultIcon
let icon192Url = defaultIcon let icon192Url = defaultIcon
let icon512Url = "/icons/web-app-manifest-512x512.png" let icon512Url = "/icons/web-app-manifest-512x512.png"
if (logo && logo.trim() !== "") { if (logo && logo.trim() !== "") {
iconUrl = `/${name}/api/logo?url=${encodeURIComponent(logo)}&size=192` iconUrl = `/${name}/api/logo?url=${encodeURIComponent(logo)}&size=192`
icon192Url = `/${name}/api/logo?url=${encodeURIComponent(logo)}&size=192` icon192Url = `/${name}/api/logo?url=${encodeURIComponent(logo)}&size=192`
@@ -99,6 +100,7 @@ export default async function Layout({
return <> return <>
<PreferenceWrapper>{children}</PreferenceWrapper> <PreferenceWrapper>{children}</PreferenceWrapper>
<CartChecker /> <CartChecker />
<ActiveChecker />
</> </>
} catch (error) { } catch (error) {
if (error instanceof Error && error.message === 'RESTAURANT_NOT_FOUND') { if (error instanceof Error && error.message === 'RESTAURANT_NOT_FOUND') {
+29
View File
@@ -0,0 +1,29 @@
'use client'
import { useGetAbout } from '@/app/[name]/(Main)/about/hooks/useAboutData'
import React, { useEffect } from 'react'
const ActiveChecker = () => {
const { data } = useGetAbout()
useEffect(() => {
if (data?.data && !data?.data?.isActive) {
document.body.style.overflow = 'hidden'
} else {
document.body.style.overflow = 'auto'
}
}, [data?.data])
if (data?.data && !data?.data?.isActive)
return (
<div className='fixed top-0 size-full bg-black/60 z-999999999 flex justify-center items-center text-white! text-lg font-bold backdrop-blur-sm'>
<div>رستوران غیرفعال است.</div>
</div>
)
}
export default ActiveChecker