diff --git a/src/assets/images/logo.svg b/src/assets/images/logo.svg index 200db25..cb3dfe3 100644 --- a/src/assets/images/logo.svg +++ b/src/assets/images/logo.svg @@ -1,91 +1,24 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/langs/fa.json b/src/langs/fa.json index ad39b65..e34f008 100644 --- a/src/langs/fa.json +++ b/src/langs/fa.json @@ -131,7 +131,11 @@ "description_sign": "توضیحات امضا", "select_section": "لطفا یک بخش انتخاب کنید", "title1": "عنوان", - "quota": "فضا/ استفاده شده " + "quota": "فضا/ استفاده شده ", + "name_sign": "نام امضا" + }, + "app": { + "menu": "منو" }, "attachment_select": "اضافه کردن فایل ضمیمه", "domain": { diff --git a/src/pages/setting/signture/Signture.tsx b/src/pages/setting/signture/Signture.tsx index ca697ec..bb04228 100644 --- a/src/pages/setting/signture/Signture.tsx +++ b/src/pages/setting/signture/Signture.tsx @@ -1,11 +1,70 @@ +import Input from '@/components/Input' import Textarea from '@/components/Textarea' -import UploadBox from '@/components/UploadBox' -import { FC } from 'react' +import Button from '@/components/Button' +import { FC, useEffect, useState } from 'react' import { useTranslation } from 'react-i18next' +import { useSignatureData, useCreateSignature, useUpdateSignature } from './hooks/useSignatureData' +import { SignatureData } from './types/Types' const Signture: FC = () => { - const { t } = useTranslation() + const { data: signatureData, isLoading } = useSignatureData() + const createSignatureMutation = useCreateSignature() + const updateSignatureMutation = useUpdateSignature() + + const [formData, setFormData] = useState({ + name: '', + textContent: '' + }) + + const [isSubmitting, setIsSubmitting] = useState(false) + + useEffect(() => { + if (signatureData?.data?.signature) { + setFormData({ + name: signatureData.data.signature.name || '', + textContent: signatureData.data.signature.textContent || '' + }) + } + }, [signatureData]) + + const handleSubmit = async () => { + if (!formData.name.trim() || !formData.textContent.trim()) { + return + } + + setIsSubmitting(true) + + try { + if (signatureData?.data?.signature?.id) { + await updateSignatureMutation.mutateAsync(formData) + } else { + await createSignatureMutation.mutateAsync(formData) + } + } catch (error) { + console.error('Error saving signature:', error) + } finally { + setIsSubmitting(false) + } + } + + const handleInputChange = (field: keyof SignatureData, value: string) => { + setFormData(prev => ({ + ...prev, + [field]: value + })) + } + + if (isLoading) { + return ( +
+
+ در حال بارگذاری... +
+
+ ) + } + return (
@@ -20,14 +79,31 @@ const Signture: FC = () => {
- handleInputChange('name', e.target.value)} + placeholder="نام امضا را وارد کنید" />