From fa87d5e020bcbf742bc0e81f6a8056f47f4cb768 Mon Sep 17 00:00:00 2001 From: ehsan Date: Sat, 3 May 2025 19:06:59 +0330 Subject: [PATCH] change text location all page --- app/component/modalSearchCity/ButtonFilter.js | 4 ++++ app/component/modalSearchCity/index.js | 3 ++- components/clinics/head/SearchBar.js | 21 +++++++++++++++++-- components/clinics/list/index.js | 4 +++- components/doctors/index.js | 6 +++++- components/home/index.js | 9 ++++++-- context/ProvinceProvider.js | 4 ++-- data/city.json | 2 +- 8 files changed, 43 insertions(+), 10 deletions(-) diff --git a/app/component/modalSearchCity/ButtonFilter.js b/app/component/modalSearchCity/ButtonFilter.js index f7bbd7d..9d488cf 100644 --- a/app/component/modalSearchCity/ButtonFilter.js +++ b/app/component/modalSearchCity/ButtonFilter.js @@ -1,10 +1,12 @@ // Icons import ArrowBottomH from "@/components/icons/ArrowBottomH"; import Location from "@/components/icons/Location"; +import { useProvince } from "@/context/ProvinceProvider"; import { Button } from "@mui/material"; function ButtonFilter({ selected, setOpen }) { const handleOpen = () => setOpen(true); + const { isProvinceInclude } = useProvince(); return (
@@ -26,6 +28,8 @@ function ButtonFilter({ selected, setOpen }) { > {selected && selected.province && selected.city ? `${selected.province} | ${selected.city}` + : isProvinceInclude?.name + ? isProvinceInclude.name : "انتخاب شهر"}

diff --git a/app/component/modalSearchCity/index.js b/app/component/modalSearchCity/index.js index 1198a29..434bffc 100644 --- a/app/component/modalSearchCity/index.js +++ b/app/component/modalSearchCity/index.js @@ -13,6 +13,7 @@ import { useProvince } from "@/context/ProvinceProvider"; function ModalSearchCity({ children, selected, setSelected, open, setOpen }) { const provinceSelected = selected.province; const { isProvinceInclude } = useProvince(); + const newProvinceData = isProvinceInclude?.id === 63; const [states, setStates] = useState([]); const [cities, setCities] = useState([]); @@ -89,7 +90,7 @@ function ModalSearchCity({ children, selected, setSelected, open, setOpen }) { handleClose={handleClose} filteredCities={filteredCities} provinceSelected={provinceSelected} - isProvinceInclude={isProvinceInclude} + isProvinceInclude={newProvinceData} /> diff --git a/components/clinics/head/SearchBar.js b/components/clinics/head/SearchBar.js index 5cb479d..bda6b51 100644 --- a/components/clinics/head/SearchBar.js +++ b/components/clinics/head/SearchBar.js @@ -1,8 +1,18 @@ +"use client"; + import { Button, ButtonGroup, TextField } from "@mui/material"; import SearchD from "@/components/icons/SearchD"; -import ModalSearchCity from "./modal"; +import ModalSearchCity from "@/app/component/modalSearchCity"; +import { useState } from "react"; +import ButtonFilter from "@/app/component/modalSearchCity/ButtonFilter"; function SearchBar() { + const [selected, setSelected] = useState({ + province: "", + city: "", + }); + const [open, setOpen] = useState(false); + return ( - + + + diff --git a/components/doctors/index.js b/components/doctors/index.js index 82469fc..e833d3f 100644 --- a/components/doctors/index.js +++ b/components/doctors/index.js @@ -6,10 +6,12 @@ import SortList from "./sortlist"; import ListDoctors from "./listDoctors"; import LocationD from "../icons/LocationD"; import { useSearchParams } from "next/navigation"; +import { useProvince } from "@/context/ProvinceProvider"; function DoctorsPage() { const [loading, setLoading] = useState(true); const searchParams = useSearchParams(); + const { isProvinceInclude } = useProvince(); const locationSelected = { province: searchParams.get("province"), city: searchParams.get("city"), @@ -34,7 +36,9 @@ function DoctorsPage() {

{" "} - {locationSelected.province || "استان"} /{" "} + {isProvinceInclude?.name || locationSelected.province || "استان"} + {/* {isProvinceInclude?.name ? "" : " / "} */} + {" / "} {locationSelected.city || "شهر"}

diff --git a/components/home/index.js b/components/home/index.js index e58246a..b1e8503 100644 --- a/components/home/index.js +++ b/components/home/index.js @@ -1,24 +1,29 @@ +"use client"; + import AText from "../icons/AText"; import BText from "../icons/BText"; // Components import SearchBar from "./search"; import FrequentSearches from "./FrequentSearches"; +import { useProvince } from "@/context/ProvinceProvider"; function HomePage() { + const { isProvinceInclude } = useProvince(); + return (

- با نوبت724 + با {isProvinceInclude?.site_name}

- دیگه نوبت گرفتن کار سختی نیست ! + {isProvinceInclude?.slogan}

diff --git a/context/ProvinceProvider.js b/context/ProvinceProvider.js index 726b46a..7b5636e 100644 --- a/context/ProvinceProvider.js +++ b/context/ProvinceProvider.js @@ -7,8 +7,8 @@ const ProvinceContext = createContext(); export const ProvinceProvider = ({ children }) => { const [hostName, setHostName] = useState(""); - const isProvinceInclude = citiesData.find( - (city) => city.domain !== "nobat724.com" && hostName.includes(city.domain) + const isProvinceInclude = citiesData.find((city) => + hostName.includes(city.domain.split(".")[0]) ); useEffect(() => { diff --git a/data/city.json b/data/city.json index d7f553a..86b07d3 100644 --- a/data/city.json +++ b/data/city.json @@ -375,7 +375,7 @@ "id": "63", "type": "2", "province_id": "32", - "name": "All", + "name": "", "site_name": "نوبت 724", "slogan": "دیگه نوبت گرفتن کار سختی نیست !", "domain": "nobat724.com",