import React, { useState, useEffect } from "react"; import Bg1 from "../../assets/icons/bg1.svg"; import {GrLocation} from "react-icons/gr"; import {BiEdit} from "react-icons/bi"; import {FaRegStar} from "react-icons/fa"; import {PiCoffee} from "react-icons/pi"; import {IoMdTime} from "react-icons/io"; import {LuCalendar1} from "react-icons/lu"; import Vector11 from "../../assets/icons/Vector11.svg"; import Vector12 from "../../assets/icons/Vector12.svg"; import Vector13 from "../../assets/icons/Vector13.svg"; import Vector14 from "../../assets/icons/Vector14.svg"; import Vector15 from "../../assets/icons/Vector15.svg"; import Vector9 from "../../assets/icons/Vector9.svg"; import Vector16 from "../../assets/icons/Vector16.svg"; import Sperso from "../../assets/icons/sperso.svg"; import Coffee2 from "../../assets/icons/coffee2.svg"; import Coffee1 from "../../assets/icons/coffee1.svg"; import Coffee3 from "../../assets/icons/coffee3.svg"; import Edit from "../../assets/icons/edit.svg"; import { MdDelete } from "react-icons/md"; import { IoMdCheckmark, IoMdClose } from "react-icons/io"; const EditCafe = () => { // State برای نگهداری عنوان‌ها با localStorage const [categories, setCategories] = useState(() => { const saved = localStorage.getItem('cafeCategories'); return saved ? JSON.parse(saved) : [ "نوشیدنی سرد", "نوشیدنی گرم", "کیک و دسر", "صبحانه", "ساندویچ و برگر", "سالاد و پیش غذا", ]; }); // ذخیره تغییرات در localStorage useEffect(() => { localStorage.setItem('cafeCategories', JSON.stringify(categories)); }, [categories]); // State برای فعال کردن حالت ویرایش const [isEditMode, setIsEditMode] = useState(false); // State برای مدیریت حالت اضافه کردن const [isAdding, setIsAdding] = useState(false); const [newCategory, setNewCategory] = useState(""); // State برای مدیریت حالت ویرایش const [editingIndex, setEditingIndex] = useState(null); const [editValue, setEditValue] = useState(""); // تابع اضافه کردن عنوان جدید const handleAddCategory = () => { if (newCategory.trim()) { setCategories([...categories, newCategory.trim()]); setNewCategory(""); setIsAdding(false); // اسکرول رو به ابتدا (راست برای RTL) برمی‌گردونیم setTimeout(() => { const scrollContainer = document.querySelector('.categories-scroll'); if (scrollContainer) { // برای RTL باید scrollLeft رو به حداکثر ببریم scrollContainer.scrollLeft = scrollContainer.scrollWidth; } }, 0); } }; // تابع حذف عنوان const handleDeleteCategory = (index) => { const newCategories = categories.filter((_, i) => i !== index); setCategories(newCategories); }; // تابع شروع ویرایش const handleStartEdit = (index) => { setEditingIndex(index); setEditValue(categories[index]); }; // تابع ذخیره ویرایش const handleSaveEdit = () => { if (editValue.trim()) { const newCategories = [...categories]; newCategories[editingIndex] = editValue.trim(); setCategories(newCategories); setEditingIndex(null); setEditValue(""); } }; // تابع لغو ویرایش const handleCancelEdit = () => { setEditingIndex(null); setEditValue(""); }; return ( <>

ادیت کافه ترنج

Logo

کافه ترنج


اصفهان - خیابان آذر

3.9

درباره کافه

کافه ترنج، یک کافی شاپ با محیطی دنج و دلچسب در شهر اصفهان و یکی از ممتازترین کافی‌ شاپ‌های ابن شهر است. از جمله خدمات این کافه می‌توان به اینترنت رایگان و ارائه کتاب‌هایی برای مطالعه در داخل کافه اشاره کرد.

ویژگی ها

منو کافه:
ساعت کاری: 23 - 8
رزرو : رزرو آنلاین
موسیقی : موسیقی زنده آخر هفته
پارکینگ : عمومی
دسترسی آسان : مناسب افراد ناتوان
Logo setIsEditMode(!isEditMode)} title={isEditMode ? "خروج از حالت ویرایش" : "ویرایش عنوان‌ها"} /> عنوان
{!isEditMode ? ( // حالت عادی - فقط نمایش عنوان‌ها <> {categories.map((category, index) => ( {category} ))} ) : ( // حالت ویرایش - نمایش دکمه‌های ویرایش و حذف بالای عنوان <> {categories.map((category, index) => (
{editingIndex === index ? ( // حالت ویرایش <>
setEditValue(e.target.value)} className="border-2 border-[#bb8f70] rounded-lg px-2 py-1 text-sm focus:outline-none focus:border-[#7f4629] w-[100px] text-center" autoFocus /> ) : ( // حالت عادی - آیکن‌ها بالای عنوان <>
handleStartEdit(index)} title="ویرایش" /> handleDeleteCategory(index)} title="حذف" />
{category} )}
))} )}
{/* دکمه اضافه کردن عنوان جدید - بیرون از container اسکرول */} {isEditMode && (
{!isAdding ? ( ) : (
{ setIsAdding(false); setNewCategory(""); }} title="لغو" />
setNewCategory(e.target.value)} placeholder="عنوان جدید" className="border-2 border-[#bb8f70] rounded-lg px-2 py-1 text-sm focus:outline-none focus:border-[#7f4629] w-[100px] text-center" autoFocus />
)}
)}

Logo

افزودن زیر عنوان

Logo Logo

قهوه ها


Logo

آیتم

اسپرسو100%

Logo
قیمت 118.000
45 میلی لیتر، قهوه، 100% عربیکا، دم شده با دستگاه اسپرسو ساز، به همراه یک عدد آب معدنی مینی

کارامل ماکیاتو

Logo
قیمت 149.000
220 میلی لیتر، 2 شات اسپرسو 30% روبوستا، 70% عربیکا، یک لکه فوم شیر، سیروپ کارامل

اسپرسو آفوگاتو

Logo
قیمت 118.000
اسپرسو، یک اسکوپ بستنی وانیلی

اسپرسو آفوگاتو

Logo
قیمت 118.000
اسپرسو، یک اسکوپ بستنی وانیلی

اسپرسو آفوگاتو

Logo
قیمت 118.000
اسپرسو، یک اسکوپ بستنی وانیلی

اسپرسو آفوگاتو

Logo
قیمت 118.000
اسپرسو، یک اسکوپ بستنی وانیلی
); }; export default EditCafe;