update 50 files

front
amir hosein gorji 3 years ago
parent 53a5f9691c
commit 6366421a01
  1. 340
      public/ar.js
  2. 303
      public/en.json
  3. 3
      public/index.html
  4. 2
      src/QRScan/LastQr/index.js
  5. 8
      src/QRScan/index.js
  6. 2
      src/views/AR/index.js
  7. 8
      src/views/Activation/index.js
  8. 4
      src/views/Auth/Login/Cellphone/index.js
  9. 6
      src/views/Auth/Login/Code/index.js
  10. 4
      src/views/Auth/Profile/Birthdate/index.js
  11. 8
      src/views/Auth/Profile/index.js
  12. 4
      src/views/Auth/Splash/index.js
  13. 4
      src/views/Blogs/index.js
  14. 36
      src/views/Callback/index.js
  15. 8
      src/views/Cart/DeliveryMethod/index.js
  16. 12
      src/views/Cart/Discount/index.js
  17. 24
      src/views/Cart/Factor/index.js
  18. 34
      src/views/Cart/Table/index.js
  19. 35
      src/views/Cart/index.js
  20. 2
      src/views/ChatList/index.js
  21. 34
      src/views/ChatRoom/Info/index.js
  22. 8
      src/views/Checkout/DeliveryMethod/index.js
  23. 8
      src/views/Checkout/Discount/index.js
  24. 14
      src/views/Checkout/Factor/index.js
  25. 25
      src/views/Checkout/Table/index.js
  26. 32
      src/views/Checkout/index.js
  27. 2
      src/views/Faq/index.js
  28. 2
      src/views/Home/Download/index.js
  29. 48
      src/views/Home/Footer/index.js
  30. 38
      src/views/Home/HomeScroll/Product/index.js
  31. 2
      src/views/Home/HomeSearch/index.js
  32. 4
      src/views/Home/HomeSlider/Blog/index.js
  33. 24
      src/views/Home/HomeSlider/index.js
  34. 14
      src/views/Home/Membership/index.js
  35. 6
      src/views/Home/Navbar/Laptop/index.js
  36. 4
      src/views/Home/Navbar/Mobile/NavbarDrawer/NavbarDrawer.js
  37. 4
      src/views/MyBooks/index.js
  38. 4
      src/views/MyBooks_old/index.js
  39. 16
      src/views/NewProfile/index.js
  40. 8
      src/views/Orders/index.js
  41. 4
      src/views/Product/index.js
  42. 4
      src/views/Products/Filters/AppliedFilters/index.js
  43. 2
      src/views/Products/List/index.js
  44. 14
      src/views/Products/Product/index.js
  45. 4
      src/views/Products/Sort/index.js
  46. 4
      src/views/QR/BookContent/index.js
  47. 3
      src/views/QR/Links/index.js
  48. 7
      src/views/QR/index.js
  49. 4
      src/views/QRScan/LastQr/index.js
  50. 12
      src/views/QRScan/Modal/index.js
  51. 14
      src/views/QRScan/index.js

@ -0,0 +1,340 @@
const ar = {
"لورم ایپسوم متن ساختگی با تولید سادگی نامفهوم از صنعت چاپ، و با استفاده از طراحان گرافیک است، چاپگرها و متون بلکه روزنامه و مجله در ستون و سطرآنچنان که لازم است، و برای شرایط فعلی تکنولوژی مورد نیاز، و کاربردهای متنوع با هدف بهبود ابزارهای کاربردی می باشد، کتابهای زیادی در شصت و سه":
"LOREM IPSOM هو نص ملفوف مع بساطة صناعة الطباعة ، باستخدام مصممي الجرافيك والطابعات والنصوص ، ولكن الصحف والمجلات في العمود والخط حسب الحاجة ، ومتطلبات التكنولوجيا الحالية ، ومجموعة متنوعة من التطبيقات التي تهدف إلى تحسين الأدوات عملي ، العديد من الكتب في ستين -",
"ما در دانوین با هدف ایجاد زیرساخت تعاملی و آموزشی با تولید محتوایی جذاب بصورت کتاب قصد داریم تغییراتی بنیادین در نظام آموزش و پرورش کشور ایجاد کنیم.":
"في Danwin ، نعتزم إنشاء تغييرات أساسية في نظام التعليم في البلاد بهدف إنشاء بنية تحتية تفاعلية وتعليمية من خلال إنتاج محتوى جذاب في الكتاب.",
"لورم ایپسوم متن ساختگی با تولید سادگی نامفهوم از صنعت چاپ و با استفاده از طراحان گرافیک است. چاپگرها و متون بلکه روزنام":
"LOREM IPSOM هو نص مزيف مع بساطة غير لائقة لصناعة الطباعة واستخدام مصممي الجرافيك. الطابعات والنصوص ولكن أيضًا يوميًا",
"برای ارتباط با دنیای شگفت انگیز دانوین از فرم زیر استفاده کنید و پس از انتخاب دپارتمان مد نظر پیام خود را ارسال کنید.":
"استخدم النموذج أدناه للتواصل مع عالم Danvin المذهل وإرسال رسالتك بعد اختيار القسم.",
"سازگار با نظام آ.پ : بطوریکه بتواند در مدارس فعلی مورد استفاده قرار گرفته و با نظام رسمی فعلی در تضاد نباشد":
"متوافق مع AP: بحيث يمكن استخدامها في المدارس الحالية ولا تتعارض مع النظام الرسمي الحالي",
"کد فعال سازی در اختیار شما قرار گرفته است را در قسمت زیر وارد وارد تا کتاب الکترونیک آن فعالسازی شود":
"رمز التنشيط متاح لك في القسم التالي لتنشيط كتابه الإلكتروني",
"بکارگیری عوامل متنوع سازگار با ارزشها برای علاقمندی دانش آموز و معلم به استفاده از محتوای دانوین":
"تطبيق مجموعة متنوعة من العوامل المتوافقة مع اهتمام الطالب والمعلم باستخدام محتوى الدانوفين",
"بکارگیری بروز ترین تکنولوژی های تولید و مدیریت محتوای آموزشی-تربیتی (مانند واقعیت افزوده)":
"باستخدام أحدث تقنيات إدارة المحتوى التعليمية والمحتوى التعليمي (مثل الواقع المعزز)",
"لطفا دوربین خود را روی کدی که در اختیار شما قرار گرفته قرار دهید تا اسکن دوربین انجام شود":
"يرجى وضع الكاميرا على الرمز الذي لديك في مكانه لمسح الكاميرا",
"به دانوین خوش اومدی برای عضویت و ادامه شماره موبایلت رو وارد کن و روی گزینه ثبت بزن":
"مرحبًا بك في Donwin للانضمام إلى رقم هاتفك المحمول والتسجيل في الخيار",
"در راستای نیل به سند تحول : تلاش برای نزدیکی گام به گام به آرمانها و اهداف سند تحول":
"من أجل تحقيق وثيقة التحول: محاولة للتخطي -من خلال الخطوة أقرب إلى تطلعات وأهداف وثيقة التحول",
"از اینکه با نظرات خود ما را در ارتقای کیفیت محصولاتمان یاری کنید ، سپاسگزاریم":
"شكرًا لك على مساعدتنا في الترويج لجودة منتجاتنا بتعليقاتك",
"برای استفاده از بخش واقعیت افزوده می بایست افزونه آن را نصب نمایید":
"لاستخدام قسم الواقع المعزز الذي تحتاجه لتثبيت البرنامج المساعد",
"شایستگی در ایجاد فهم علمی در موضوع هدف و در موضوعات وابسته به آن":
"الكفاءة في خلق فهم علمي في الموضوع وفي الموضوعات ذات الصلة",
"شایستگی در ایجاد زمینه ی معرفتی- ارزشی موثر برای محتواهای آموزشی":
"الكفاءة في خلق قيمة فعالة المعرفية للمحتوى التعليمي",
"برای استفاده از این بخش باید یک کتاب فعال خریداری کرده باشید":
"يجب أن تكون قد اشتريت كتابًا نشطًا لاستخدام هذا القسم",
"برای استفاده از این بخش باید یک کتاب را فعالسازی کرده باشید":
"يجب عليك تنشيط كتاب لاستخدام هذا القسم",
"برای خدمات هوشمند کتاب کد فعال سازی را اینجا وارد نمایید":
"أدخل رمز التنشيط هنا لخدمات الكتب الذكية",
"شرایط استفاده از دانوین و حریم خصوصی را مطالعه کرده ام":
"لقد درست شروط استخدام دانوين والخصوصية",
"متن گفتگو محور ، روایی ، قابل فهم ،جذاب و سرگرم کننده":
"النص القائم ، السرد ، مفهومة ، جذابة ومسلية",
"با توجه به شرایط یکی از دو گزینه زیر را انتخاب کنید":
"حدد أحد الخيارين التاليين وفقًا للشروط",
"تمامی حقوق این وبسایت متعلق به دانوین می باشد. 1400":
"جميع حقوق هذا الموقع مملوكة لشركة Danwin. 1400",
"پرداخت شما با خطا مواجه شد ، لطفا مجدد تلاش نمایید":
"واجهت دفعتك خطأ ، يرجى المحاولة مرة أخرى",
"اگر کد تخفیفی دارید آن را در کادر زیر وارد نمائید":
"إذا كان لديك رمز خصم ، أدخله في المربع أدناه",
"آدرس: تهران، میدان فردوسی، خیابان موسوی، پلاک ۳۰":
"العنوان: رقم 1 ، ميدان فردودوس ، ميدان فردودوس",
"بستر تعاملی و اشتراک گذاری فیلم و محتوای آموزشی":
"التفاعلية ومشاركة الأفلام والمحتوى التعليمي",
"مشخصات خودت رو وارد کنید و امتیاز هدیه بگیرید":
"أدخل ملف التعريف الخاص بك واحصل على تصنيف هدايا",
"کامنت خود را وارد کرده و دکمه ثبت را بزنید.":
"أدخل تعليقك واضغط على زر التسجيل.",
"گواهی تدریس ثبت شده و درحال بررسی می باشد":
"شهادة البرامج التعليمية المسجلة ويجري مراجعتها",
"کارشناس ارشد علوم و فنون از دانشگاه تهران":
"ماجستير العلوم والتكنولوجيا من جامعة طهران",
"ابتدا یک محصول به سبد خریدتان اضافه کنید.":
"أضف أولاً منتجًا إلى عربة التسوق الخاصة بك.",
"جهت ادامه فرآیند خرید وارد حساب خود شوید":
"تسجيل الدخول إلى حسابك لمواصلة عملية الشراء",
"در صورت نیاز تصویر مرتبط را انتخاب کنید.":
"حدد الصورة ذات الصلة إذا لزم الأمر.",
"لطفا مشخصات خود را به صورت کامل نمایید.": "يرجى إكمال ملف التعريف الخاص بك.",
"برای دانلود این فایل روی اینجا کلیک کن": "اضغط هنا لتحميل هذا الملف",
"هیچ محصولی در سبد خرید شما وجود ندارد":
"لا يوجد منتج في عربة التسوق الخاصة بك",
"محتوایی برای این صفحه در دسترس نیست.!": "المحتوى غير متوفر لهذه الصفحة.!",
"برای این کتاب نمونهای درج نشده است.": "لا توجد عينة لهذا الكتاب.",
"نمونه ای برای این محصول درج نشده است": "عينة لم يتم إدراجها لهذا المنتج",
"عملیات خرید شما با موفقیت انجام شد.":
"تم تنفيذ عملية الشراء الخاصة بك بنجاح.",
"به راحتی از همین جا دانلود کنید...": "تنزيل بسهولة من هنا ...",
"بازگشت به مرحله قبل و اصلاح شماره":
"العودة إلى المرحلة السابقة وتصحيح الرقم",
"دارای رویکرد آموزش سرگرم کننده ": "لديك نهج تعليمي ممتع",
"شرایط مرجوع کردن کالا در دانوین": "شروط للإشارة إلى البضائع في دانوين",
"روش ارسال با موفقیت تغییر یافت!": "تم تغيير طريقة الإرسال بنجاح!",
"درخواست شما با موفقیت انجام شد.": "تم تقديم طلبك بنجاح.",
"در حال بارگیری اطلاعات از سرور": "تحميل المعلومات من الخادم",
"گواهی تدریس خود را آپلود کنید.": "قم بتحميل شهادة التدريس الخاصة بك.",
"دریافت اپلیکیشن اختصاصی دانوین": "تلقى تطبيق دونوين المخصص",
"لطفا شماره صفحه را وارد نمایید": "الرجاء إدخال رقم الصفحة",
"کتاب شما با موفقیت فعال گردید.": "تم تنشيط كتابك بنجاح.",
"ثبت درخواست با موفقیت انجام شد": "تم الانتهاء من تسجيل الطلب بنجاح",
"کد تخفیف برای شما ثبت شده است": "تم تسجيل رمز الخصم لك",
"استاد علوم طبیعی پایه دوازدهم": "أستاذ الصف الثاني عشر",
"سلام چطوری میتونم کمکتون کنم؟": "مرحبا كيف يمكنني مساعدتك؟",
"محصولی با این مشخصات یافت نشد":
"لم يتم العثور على المنتج مع هذا الملف الشخصي",
"آن را در قسمت زیر وارد کنید.": "أدخله في ما يلي.",
"زمان باقیمانده تا انقضای کد:": "الوقت المتبقي لانتهاء رمز:",
"کد فعالسازی محتوای الکترونیک": "رمز تنشيط المحتوى الإلكتروني",
"این کتاب شامل چه مواردی است؟": "ما هو هذا الكتاب؟",
"کد به شماره شما ارسال گردید.": "تم إرسال الرمز إلى رقمك.",
"عملیات با موفقیت انجام نشد!": "فشلت العملية!",
"برای شروع روی یک چت کلیک کن": "انقر على دردشة للبدء.",
"دریافت افزونه واقعیت افزوده": "احصل على البرنامج المساعد المعزز للواقع",
"به زودی این بخش فعال می شود": "بمجرد تنشيط هذا الجزء",
"سفارشی برای نماش وجود ندارد": "لا يوجد مخصص لإظهاره",
"اسکن کد QR موفقیت آمیز بود.": "كان فحص رمز الاستجابة السريعة ناجحًا.",
"کیفیت آموزش را بالا میبریم": "ارتداء جودة التدريب",
"شرایط استفاده و حریم خصوصی": "شروط الاستخدام والخصوصية",
"جذابیت کلید بهبود یادگیری": "مفتاح جذاب لتحسين التعلم",
"دنبال چه چیزی برات باشیم؟": "ماذا تبحث عنك؟",
"نام یک کتاب را جستجو کنید": "ابحث في اسم كتاب",
"فعال سازی کتاب الکترونیک": "تنشيط e -book",
"جستجو در عناوین کتاب ...": "ابحث في عناوين الكتب ...",
"مشاهده فهرست موضوعی کتاب": "عرض قائمة موضوع الكتاب",
"ارسال مجدد کد فعال سازی": "رمز التنشيط",
"2 دقیقه پیش آنلاین بوده": "قبل دقيقتين كانت على الإنترنت",
"یک کد تائیدیه به شماره": "رمز تأكيد للرقم",
"مالیات بر ارزش افزوده": "ضريبة القيمة المضافة",
"نام و نام خانوادگی": "الاسم الأول واسم العائلة",
"آتشفشانها و اقیانوسها": "البراكين والمحيطات",
"ویدئو های منحصر بفرد": "مقاطع فيديو فريدة",
"توضیحات محصول خالیست": "وصف المنتج فارغ",
"نحوه جدایی صفحات کره": "كيفية فصل صفحات الزبدة",
"نام و نام خانوادگی": "الاسم الأول واسم العائلة",
"به دانوین خوش آمدید.": "مرحبا بكم في دانوين.",
"رویکرد معرفتی-ارزشی": "النهج المعرفي القيمة",
"مشخصات تحویل گیرنده": "ملف تعريف المستلم",
"نمایش تمامی محتواها": "عرض كل المحتوى",
"مزیت رقابتی دانوین": "ميزة تنافسية Danovin",
"یک پیام بنویسید...": "اكتب رسالة ...",
"افزودن به سبد خرید": "أضف إلى السلة",
"فیلترهای اعمال شده": "المرشحات المطبقة",
"لذت یادگیری را با": "من دواعي سروري التعلم مع",
"افزودن کاربر جدید": "أضف مستخدمًا جديدًا",
"مطالعه نمونه کتاب": "كتاب قراءة العينة",
"مشاهده نمونه کتاب": "عرض كتاب العينة",
"مرتب سازی بر اساس": "ترتيب حسب",
"شما در حال مطالعه": "أنت تدرس",
"سخنی با خوانندگان": "تحدث إلى القراء",
"تصویر بارگزاری شد": "تم تحميل الصورة",
"ثبت کد فعال سازی": "تمكين تسجيل الكود",
"مسدود سازی مخاطب": "حظر الجمهور",
"لینک های کاربردی": "روابط عملية",
"اضافه کردن کاربر": "أضف المستخدم",
"تاریخ فعالسازی:": "تفعيل التسجيل:",
"پاسخ مدیریت سایت": "إجابة إدارة الموقع",
"دسته بندی موضوعی": "فئة الموضوع",
"جزئیات صورتحساب": "تفاصيل الفاتورة",
"ورود یا ثبتنام": "تسجيل الدخول أو التسجيل",
"کتابهای دانوین": "كتب دانفين",
"آدرس محل سکونت": "عنوان السكن",
"رسانه,فیلم,عکس": "وسائل الإعلام ، الفيلم ، الصورة",
"مطالعه کامل در": "دراسة كاملة في",
"نظرات خریداران": "تعليقات المشترين",
"نسخه الکترونیک": "نسخة إلكترونية",
"فعالسازی کتاب": "تنشيط الكتاب",
"واقعیت افزوده": "الواقع المعزز",
"مشخصات تحصیلی": "ملف تعريف المدرسة",
"مبلغ سبد خرید": "مبلغ عربة",
"دریافت افزونه": "احصل على البرنامج المساعد",
"سوالات متداول": "أسئلة مكررة",
"ویرایش مشخصات": "تعديل الملف الشخصي",
"پیگری سفارشات": "اتبع أوامر",
"فعال سازی شده": "تمكين",
"کد فعالسازی:": "رمز التفعيل:",
"در حال پردازش": "يعالج",
"آخرین مشاهدات": "الملاحظات الأخيرة",
"واحد مورد نظر": "الوحدة المطلوبة",
"نام خانوادگی": "اللقب",
"کد ملی/اتباع": "القانون الوطني/المواطنون",
"روشهای ارسال": "إرسال الطرق",
"سبد پیش خرید": "سلة قبل purchase",
"قیمت هر واحد": "السعر لكل وحدة",
"تاریخ انتشار": "يوم الاصدار",
"شناسه پرداخت": "رمز الدفع",
"کاربر میهمان": "حساب زائر",
"محتویات کتاب": "محتويات الكتاب",
"واحد محتوایی": "وحدة المحتوى",
"حساب کاربری": "الحساب",
"پایه تحصیلی": "صف دراسي",
"رشته تحصیلی": "رئيسي",
"فنی حرفهای": "مهني",
"مطالعه کامل": "دراسة كاملة",
"قیمت هر عدد": "سعر كل رقم",
"هزینه ارسال": "تكلفة الشحن",
"میزان تخفیف": "معدل الخصم",
"دسترسی سریع": "وصول سريع",
"موارد بیشتر": "أكثر",
"کتاب های من": "كتبي",
"کتابهای من": "كتبي",
"شناسه سفارش": "رقم التعريف الخاص بالطلب",
"پرداخت نشده": "غير مدفوع الأجر",
"فایل ثبت شد": "تم تسجيل الملف",
"پیش دبستان": "تجهيز",
"نام کاربری": "اسم االمستخدم",
"تاریخ تولد": "تاريخ الولادة",
الکترونیکی: "إلكتروني",
"محسن محمدی": "محسن محمدي",
"شماره تماس": "رقم الهاتف",
"تجربه کنید": "خبرة",
"تماس با ما": "اتصل بنا",
"علمی تخیلی": "الخيال العلمي",
"ادامه مطلب": "اقرأ أكثر",
"بارکد خوان": "قارئ الباركود",
دانوینیها: "دانوفيني",
"بروز رسانی": "تحديث",
"اسکن بارکد": "مسح الباركود",
"سفارشات من": "طلباتي",
"معرفی کتاب": "مقدمة كتاب",
"دوربین عقب": "الكاميرا الخلفية",
"دوربین جلو": "كاميرا أمامية",
"علوم چهارم": "العلم الرابع",
"محبوب ترین": "الأكثر شعبية",
"صفحه اصلی": "الصفحة الرئيسية",
"دانش آموز": "طالب علم",
"نام مدرسه": "اسم المدرسة",
"محل تدریس": "موقع التدريس",
"همراه با:": "مع:",
"تبادل نظر": "تبادل",
"باز ارسال": "إعادة -submit",
"ویرایش در": "تحرير في",
"عکس کاربر": "صورة المستخدم",
"درباره ما": "معلومات عنا",
"عکس محصول": "صورة المنتج",
"شهر/روستا": "المدينة/القرية",
"ارسال نظر": "نشر تعليق",
"نسخه چاپی": "النسخة المطبوعة",
"عکس مجصول": "صورة",
"مرتب سازی": "ترتيب",
"واحد فروش": "مبيعات",
"گران ترین": "الأغلى",
"ارسال شد": "أرسلت",
"سبد خرید": "عربة التسوق",
"کد تخفیف": "رمز التخفيض",
صورتحساب: "مشروع قانون",
پشتیبانی: "الدعم",
"متن پیام": "نص الرسالة",
"نام کتاب": "اسم الكتاب",
"زیست دهم": "يعيش",
"واحد فنی": "القسم التقني",
جدیدترین: "الاجدد",
دوازدهم: "الثاني عشر",
شهرستان: "مدينة",
"کد پستی": "رمز بريدي",
کاردانش: "يدها",
فروشگاه: "متجر",
محصولات: "منتجات",
"مبلغ کل": "المبلغ الإجمالي",
پروفایل: "الملف الشخصي",
توضیحات: "وصف",
ناموجود: "غير متوفره",
دانوینی: "دانوفيني",
یازدهم: "الحاديه عشر",
انسانی: "بشري",
"ذخیره": "متجر",
"جمع کل": "المجموع",
پرداخت: "الدفع",
"ثبت کد": "تسجيل الكود",
"ثبت شد": "إنه مسجل",
ویرایش: "يحرر",
خلاقیت: ِبداع",
تاریخی: "تاريخي",
دانلود: "تحميل",
بازگشت: "العودة",
امتیاز: "تقييم",
"کد ملی": "رمز دولي",
"لغو شد": "ألغيت",
انصراف: "انسحب",
چهارم: "الرابع",
عنوان: "عنوان",
استان: "حالة",
ریاضی: "الرياضيات",
تجربی: "تجريبي",
معارف: "التعليم",
کاربر: "المستعمل",
ادامه: "استمرار",
وبلاگ: "مدونة",
تومان: "إلى رجل",
تعداد: "رقم",
محصول: "المنتج",
جستجو: "يبحث",
ارسال: "إرسال",
خاموش: "عن",
رسانه: "وسائل الإعلام",
ویدیو: "الفيديو",
سیاسی: "سياسي",
ورزشی: "رياضات",
دقیقه: "الدقائق",
تخفیف: "تخفيض",
هستید: "أنت",
مقدمه: "مقدمة",
تایید: "يتأكد",
موضوع: "عنوان",
پنجم: "الخامس",
هفتم: "السابع",
هشتم: "ثامن",
دختر: "بنت",
معلم: "معلم",
پرچم: "علَم",
قیمت: "سعر",
نسخه: "وصفة طبية",
چاپی: "مطبعة",
پایه: "القاعدة",
کنسل: "إلغاء",
پسند: "يحب",
پاسخ: "إجابة",
خروج: "مخرج",
روشن: "لامع",
لینک: "حلقة الوصل",
فایل: "ملف",
آدرس: "تبوك",
تماس: "اتصال",
خانه: "مسكن",
لوگو: "شعار",
مبلغ: "مقدار",
صفحه: "صفحة",
نکته: "تلميح",
اول: "أولاً",
دوم: "ثانيا",
سوم: "ثالث",
ششم: "السادس",
نهم: "تاسع",
دهم: "العاشر",
نام: "اسم",
پسر: "ولد",
روز: "يوم",
ماه: "شهر",
سال: "سنة",
ثبت: "سجل",
حذف: "حذف",
علی: "علي",
صوت: "يبدو",
عدد: "رقم",
فلش: "السهام",
عکس: "صورة",
منو: "قائمة الطعام",
قبل: "قبل",
بعد: "التالي",
متن: "نص",
شو: "تبين",
};

@ -0,0 +1,303 @@
{
"لورم ایپسوم متن ساختگی با تولید سادگی نامفهوم از صنعت چاپ، و با استفاده از طراحان گرافیک است، چاپگرها و متون بلکه روزنامه و مجله در ستون و سطرآنچنان که لازم است، و برای شرایط فعلی تکنولوژی مورد نیاز، و کاربردهای متنوع با هدف بهبود ابزارهای کاربردی می باشد، کتابهای زیادی در شصت و سه": "Lorem Ipsom is a fabricated text with the simplicity of the printing industry, using graphic designers, printers and texts, but newspapers and magazines in the column and line as needed, and for the current technology requirements, and a variety of applications aimed at improving tools. Practical, many books in sixty -three",
"ما در دانوین با هدف ایجاد زیرساخت تعاملی و آموزشی با تولید محتوایی جذاب بصورت کتاب قصد داریم تغییراتی بنیادین در نظام آموزش و پرورش کشور ایجاد کنیم.": "In Danwin, we intend to create fundamental changes in the country's education system with the aim of creating interactive and educational infrastructure by producing attractive content in the book.",
"لورم ایپسوم متن ساختگی با تولید سادگی نامفهوم از صنعت چاپ و با استفاده از طراحان گرافیک است. چاپگرها و متون بلکه روزنام": "Lorem Ipsom is a fake text with an inappropriate simplicity of the printing industry and using graphic designers. Printers and texts but also daily",
"برای ارتباط با دنیای شگفت انگیز دانوین از فرم زیر استفاده کنید و پس از انتخاب دپارتمان مد نظر پیام خود را ارسال کنید.": "Use the form below to connect with the amazing world of Danvin and send your message after selecting the department.",
"سازگار با نظام آ.پ : بطوریکه بتواند در مدارس فعلی مورد استفاده قرار گرفته و با نظام رسمی فعلی در تضاد نباشد": "Compatible with the AP: so that it can be used in current schools and is not in conflict with the current official system",
"کد فعال سازی در اختیار شما قرار گرفته است را در قسمت زیر وارد وارد تا کتاب الکترونیک آن فعالسازی شود": "The activation code is available to you in the following section to activate its e -book",
"بکارگیری عوامل متنوع سازگار با ارزشها برای علاقمندی دانش آموز و معلم به استفاده از محتوای دانوین": "Applying a variety of values compatible factors for student and teacher interest in using Danovin content",
"بکارگیری بروز ترین تکنولوژی های تولید و مدیریت محتوای آموزشی-تربیتی (مانند واقعیت افزوده)": "Using the most up-to-date teaching and educational content management technologies (such as augmented reality)",
"لطفا دوربین خود را روی کدی که در اختیار شما قرار گرفته قرار دهید تا اسکن دوربین انجام شود": "Please put your camera on the code you have in place to scan the camera",
"به دانوین خوش اومدی برای عضویت و ادامه شماره موبایلت رو وارد کن و روی گزینه ثبت بزن": "Welcome to Donwin to join your mobile number and register on the option",
"در راستای نیل به سند تحول : تلاش برای نزدیکی گام به گام به آرمانها و اهداف سند تحول": "In order to achieve the transformation document: attempt to step -by -step closer to the aspirations and goals of the transformation document",
"از اینکه با نظرات خود ما را در ارتقای کیفیت محصولاتمان یاری کنید ، سپاسگزاریم": "Thank you for helping us in promoting the quality of our products with your comments",
"برای استفاده از بخش واقعیت افزوده می بایست افزونه آن را نصب نمایید": "To use the augmented reality section you need to install the plugin",
"شایستگی در ایجاد فهم علمی در موضوع هدف و در موضوعات وابسته به آن": "Competence in creating a scientific understanding in the subject matter and in the subject -related subjects",
"شایستگی در ایجاد زمینه ی معرفتی- ارزشی موثر برای محتواهای آموزشی": "Competence in creating an epistemic-effective value for educational content",
"برای استفاده از این بخش باید یک کتاب فعال خریداری کرده باشید": "You must have purchased an active book to use this section",
"برای استفاده از این بخش باید یک کتاب را فعالسازی کرده باشید": "You must activate a book to use this section",
"برای خدمات هوشمند کتاب کد فعال سازی را اینجا وارد نمایید": "Enter activation code here for smart book services",
"شرایط استفاده از دانوین و حریم خصوصی را مطالعه کرده ام": "I have studied the terms of use of Danwin and Privacy",
"متن گفتگو محور ، روایی ، قابل فهم ،جذاب و سرگرم کننده": "The text -based, narrative, understandable, attractive and entertaining",
"با توجه به شرایط یکی از دو گزینه زیر را انتخاب کنید": "Select one of the following two options according to the terms",
"تمامی حقوق این وبسایت متعلق به دانوین می باشد. 1400": "All rights of this website are owned by Danwin. 1400",
"پرداخت شما با خطا مواجه شد ، لطفا مجدد تلاش نمایید": "Your payment faced an error, please try again",
"اگر کد تخفیفی دارید آن را در کادر زیر وارد نمائید": "If you have a discount code, enter it in the box below",
"آدرس: تهران، میدان فردوسی، خیابان موسوی، پلاک ۳۰": "Address: No. 1, Ferdowsi Square, Ferdowsi Square",
"بستر تعاملی و اشتراک گذاری فیلم و محتوای آموزشی": "Interactive and sharing movie and educational content",
"مشخصات خودت رو وارد کنید و امتیاز هدیه بگیرید": "Enter your own profile and get a gift rating",
"کامنت خود را وارد کرده و دکمه ثبت را بزنید.": "Enter your comment and hit the registration button.",
"گواهی تدریس ثبت شده و درحال بررسی می باشد": "Certificate of Tutorials recorded and is being reviewed",
"کارشناس ارشد علوم و فنون از دانشگاه تهران": "Master of Science and Technology from Tehran University",
"ابتدا یک محصول به سبد خریدتان اضافه کنید.": "First add a product to your shopping cart.",
"جهت ادامه فرآیند خرید وارد حساب خود شوید": "Login to your account to continue the purchase process",
"در صورت نیاز تصویر مرتبط را انتخاب کنید.": "Select the relevant image if needed.",
"لطفا مشخصات خود را به صورت کامل نمایید.": "Please complete your profile.",
"برای دانلود این فایل روی اینجا کلیک کن": "Click here to download this file",
"هیچ محصولی در سبد خرید شما وجود ندارد": "There is no product in your shopping cart",
"محتوایی برای این صفحه در دسترس نیست.!": "Content is not available for this page.!",
"برای این کتاب نمونهای درج نشده است.": "There is no sample for this book.",
"نمونه ای برای این محصول درج نشده است": "Sample not inserted for this product",
"عملیات خرید شما با موفقیت انجام شد.": "Your purchase operation was successfully carried out.",
"به راحتی از همین جا دانلود کنید...": "Easily download from here ...",
"بازگشت به مرحله قبل و اصلاح شماره": "Back to the previous stage and correcting the number",
"دارای رویکرد آموزش سرگرم کننده ": "Have a fun tutorial approach",
"شرایط مرجوع کردن کالا در دانوین": "Conditions to reference the goods in Danwin",
"روش ارسال با موفقیت تغییر یافت!": "The sending method was successfully changed!",
"درخواست شما با موفقیت انجام شد.": "Your request was successfully made.",
"در حال بارگیری اطلاعات از سرور": "Loading information from the server",
"گواهی تدریس خود را آپلود کنید.": "Upload your teaching certificate.",
"دریافت اپلیکیشن اختصاصی دانوین": "Received Donwin's dedicated app",
"لطفا شماره صفحه را وارد نمایید": "Please enter the page number",
"کتاب شما با موفقیت فعال گردید.": "Your book was successfully activated.",
"ثبت درخواست با موفقیت انجام شد": "Registration of the application was successfully completed",
"کد تخفیف برای شما ثبت شده است": "The discount code has been registered for you",
"استاد علوم طبیعی پایه دوازدهم": "Twelfth Grade Professor",
"سلام چطوری میتونم کمکتون کنم؟": "Hi how can I help you?",
"محصولی با این مشخصات یافت نشد": "Product was not found with this profile",
"آن را در قسمت زیر وارد کنید.": "Enter it in the following.",
"زمان باقیمانده تا انقضای کد:": "Remaining time to expire code:",
"کد فعالسازی محتوای الکترونیک": "Electronic Content Activation Code",
"این کتاب شامل چه مواردی است؟": "What is this book?",
"کد به شماره شما ارسال گردید.": "The code was sent to your number.",
"عملیات با موفقیت انجام نشد!": "Operation failed!",
"برای شروع روی یک چت کلیک کن": "Click on a chat to get started.",
"دریافت افزونه واقعیت افزوده": "Get augmented reality plugin",
"به زودی این بخش فعال می شود": "As soon as this part will be activated",
"سفارشی برای نماش وجود ندارد": "There is no custom to show",
"اسکن کد QR موفقیت آمیز بود.": "The scan of QR code was successful.",
"کیفیت آموزش را بالا میبریم": "Wear the quality of training",
"شرایط استفاده و حریم خصوصی": "Terms of use and privacy",
"جذابیت کلید بهبود یادگیری": "Attractive key to improving learning",
"دنبال چه چیزی برات باشیم؟": "What to look for for you?",
"نام یک کتاب را جستجو کنید": "Search the name of a book",
"فعال سازی کتاب الکترونیک": "E -book activation",
"جستجو در عناوین کتاب ...": "Search in book titles ...",
"مشاهده فهرست موضوعی کتاب": "View the Book Subject List",
"ارسال مجدد کد فعال سازی": "Re -send activation code",
"2 دقیقه پیش آنلاین بوده": "2 minutes ago was online",
"یک کد تائیدیه به شماره": "A confirmation code to number",
"مالیات بر ارزش افزوده": "VAT",
"نام و نام خانوادگی": "first name and last name",
"آتشفشانها و اقیانوسها": "Volcanoes and oceans",
"ویدئو های منحصر بفرد": "Unique videos",
"توضیحات محصول خالیست": "The product description is empty",
"نحوه جدایی صفحات کره": "How to separate butter pages",
"نام و نام خانوادگی": "first name and last name",
"به دانوین خوش آمدید.": "Welcome to Danwin.",
"رویکرد معرفتی-ارزشی": "The epistemic-valuable approach",
"مشخصات تحویل گیرنده": "The recipient's profile",
"نمایش تمامی محتواها": "Display all content",
"مزیت رقابتی دانوین": "Danovin competitive advantage",
"یک پیام بنویسید...": "Write a message ...",
"افزودن به سبد خرید": "Add to Cart",
"فیلترهای اعمال شده": "Filters applied",
"لذت یادگیری را با": "The pleasure of learning with",
"افزودن کاربر جدید": "Add new user",
"مطالعه نمونه کتاب": "Book sample reading",
"مشاهده نمونه کتاب": "View the sample book",
"مرتب سازی بر اساس": "order by",
"شما در حال مطالعه": "You are studying",
"سخنی با خوانندگان": "Talk to readers",
"تصویر بارگزاری شد": "The image was loaded",
"ثبت کد فعال سازی": "Enable Code Registration",
"مسدود سازی مخاطب": "Audience blocking",
"لینک های کاربردی": "Practical links",
"اضافه کردن کاربر": "Add the user",
"تاریخ فعالسازی:": "Activation Date:",
"پاسخ مدیریت سایت": "Site Management Answer",
"دسته بندی موضوعی": "Subject Category",
"جزئیات صورتحساب": "Billing details",
"ورود یا ثبتنام": "Login or registration",
"کتابهای دانوین": "Danvin Books",
"آدرس محل سکونت": "residence address",
"رسانه,فیلم,عکس": "Media, Movie, Photo",
"مطالعه کامل در": "Full study in",
"نظرات خریداران": "Buyers Comments",
"نسخه الکترونیک": "Electronic version",
"فعالسازی کتاب": "Activation of the book",
"واقعیت افزوده": "Augmented Reality",
"مشخصات تحصیلی": "School Profile",
"مبلغ سبد خرید": "Cart amount",
"دریافت افزونه": "Get the plugin",
"سوالات متداول": "Frequently Asked Questions",
"ویرایش مشخصات": "Edit Profile",
"پیگری سفارشات": "Follow orders",
"فعال سازی شده": "Enabled",
"کد فعالسازی:": "Activation code:",
"در حال پردازش": "Processing",
"آخرین مشاهدات": "Last observations",
"واحد مورد نظر": "The desired unit",
"نام خانوادگی": "last name",
"کد ملی/اتباع": "National code/nationals",
"روشهای ارسال": "Send methods",
"سبد پیش خرید": "Pre -purchase basket",
"قیمت هر واحد": "Price per unit",
"تاریخ انتشار": "Release date",
"شناسه پرداخت": "Payment code",
"کاربر میهمان": "Guest user",
"محتویات کتاب": "The contents of the book",
"واحد محتوایی": "Content unit",
"حساب کاربری": "Account",
"پایه تحصیلی": "Grade",
"رشته تحصیلی": "Major",
"فنی حرفهای": "Vocational",
"مطالعه کامل": "Full study",
"قیمت هر عدد": "Price of each number",
"هزینه ارسال": "shipping cost",
"میزان تخفیف": "Discount rate",
"دسترسی سریع": "quick access",
"موارد بیشتر": "More",
"کتاب های من": "My books",
"کتابهای من": "My books",
"شناسه سفارش": "Order ID",
"پرداخت نشده": "unpaid",
"فایل ثبت شد": "The file was recorded",
"پیش دبستان": "Prep",
"نام کاربری": "user name",
"تاریخ تولد": "Date of birth",
"الکترونیکی": "Electronic",
"محسن محمدی": "Mohsen Mohammadi",
"شماره تماس": "Phone number",
"تجربه کنید": "experience",
"تماس با ما": "contact us",
"علمی تخیلی": "Science Fiction",
"ادامه مطلب": "Read more",
"بارکد خوان": "Barcode reader",
"دانوینیها": "Danovini",
"بروز رسانی": "Update",
"اسکن بارکد": "Barcode scan",
"سفارشات من": "My orders",
"معرفی کتاب": "book introduction",
"دوربین عقب": "rear camera",
"دوربین جلو": "Front camera",
"علوم چهارم": "Fourth Science",
"محبوب ترین": "Most Popular",
"صفحه اصلی": "Main Page",
"دانش آموز": "student",
"نام مدرسه": "school name",
"محل تدریس": "Teaching site",
"همراه با:": "with:",
"تبادل نظر": "Exchange",
"باز ارسال": "Re -submit",
"ویرایش در": "Edit at",
"عکس کاربر": "User photo",
"درباره ما": "about us",
"عکس محصول": "Product photo",
"شهر/روستا": "City/Village",
"ارسال نظر": "Post a comment",
"نسخه چاپی": "Print version",
"عکس مجصول": "Photo",
"مرتب سازی": "Ordering",
"واحد فروش": "Sales",
"گران ترین": "the most expensive",
"ارسال شد": "Sent",
"سبد خرید": "Cart",
"کد تخفیف": "discount code",
"صورتحساب": "Bill",
"پشتیبانی": "Support",
"متن پیام": "The text of the message",
"نام کتاب": "The name of the book",
"زیست دهم": "Live",
"واحد فنی": "technical department",
"جدیدترین": "the newest",
"دوازدهم": "twelfth",
"شهرستان": "City",
"کد پستی": "Postal code",
"کاردانش": "Her hand",
"فروشگاه": "Store",
"محصولات": "Products",
"مبلغ کل": "Total Amount",
"پروفایل": "profile",
"توضیحات": "Description",
"ناموجود": "unavailable",
"دانوینی": "Danovini",
"یازدهم": "Eleventh",
"انسانی": "human",
"ذخیره": "Store",
"جمع کل": "total",
"پرداخت": "the payment",
"ثبت کد": "Code registration",
"ثبت شد": "it is registered",
"ویرایش": "Edit",
"خلاقیت": "Creativity",
"تاریخی": "Historical",
"دانلود": "Download",
"بازگشت": "coming back",
"امتیاز": "Rating",
"کد ملی": "National Code",
"لغو شد": "Cancelled",
"انصراف": "Withdrawn",
"چهارم": "Fourth",
"عنوان": "Title",
"استان": "State",
"ریاضی": "Math",
"تجربی": "Experimental",
"معارف": "education",
"کاربر": "User",
"ادامه": "Continuation",
"وبلاگ": "weblog",
"تومان": "Toman",
"تعداد": "Number",
"محصول": "the product",
"جستجو": "Search",
"ارسال": "submit",
"خاموش": "Off",
"رسانه": "Media",
"ویدیو": "the video",
"سیاسی": "Political",
"ورزشی": "Sports",
"دقیقه": "Minutes",
"تخفیف": "Discount",
"هستید": "You are",
"مقدمه": "Introduction",
"تایید": "Confirm",
"موضوع": "Topic",
"پنجم": "Fifth",
"هفتم": "Seventh",
"هشتم": "Eighth",
"دختر": "Girl",
"معلم": "Teacher",
"پرچم": "Flag",
"قیمت": "Price",
"نسخه": "prescription",
"چاپی": "Print",
"پایه": "the base",
"کنسل": "cancel",
"پسند": "Like",
"پاسخ": "Response",
"خروج": "Exit",
"روشن": "Bright",
"لینک": "link",
"فایل": "file",
"آدرس": "Address",
"تماس": "Contact",
"خانه": "Home",
"لوگو": "logo",
"مبلغ": "Amount",
"صفحه": "Page",
"نکته": "tip",
"اول": "First",
"دوم": "Second",
"سوم": "Third",
"ششم": "Sixth",
"نهم": "ninth",
"دهم": "Tenth",
"نام": "name",
"پسر": "Boy",
"روز": "Day",
"ماه": "Month",
"سال": "Year",
"ثبت": "Record",
"حذف": "Delete",
"علی": "Ali",
"صوت": "Sound",
"عدد": "number",
"فلش": "Arrows",
"عکس": "Picture",
"منو": "Menu",
"قبل": "Before",
"بعد": "Next",
"متن": "Text",
"شو": "show"
}

@ -15,6 +15,9 @@
<title>دانوین</title> <title>دانوین</title>
<!-- Google Tag Manager --> <!-- Google Tag Manager -->
<script>
window.t = (t) => t
</script>
<script>(function (w, d, s, l, i) { <script>(function (w, d, s, l, i) {
w[l] = w[l] || []; w[l].push({ w[l] = w[l] || []; w[l].push({
'gtm.start': 'gtm.start':

@ -36,7 +36,7 @@ export default function LastQR(props) {
</div> </div>
</div> </div>
<div className="mobile-last-qr__left d-flex"> <div className="mobile-last-qr__left d-flex">
<button>صفحه {data.pagesNum}</button> <button>{window.t("صفحه {data.pagesNum}</button>
</div> </div>
</Link> </Link>
) : null} ) : null}

@ -80,7 +80,9 @@ class QRScan extends Component {
<Navbar /> <Navbar />
<div className="qr-scan__box d-flex flex-column"> <div className="qr-scan__box d-flex flex-column">
<header className="qr-scan__box--header d-flex flex-column"> <header className="qr-scan__box--header d-flex flex-column">
<h1 style={{ fontSize: fontSize.desktop.h1 }}>نکته</h1> <h1 style={{ fontSize: fontSize.desktop.h1 }}>
{window.t("نکته")}
</h1>
<p style={{ fontSize: fontSize.desktop.p }}> <p style={{ fontSize: fontSize.desktop.p }}>
لطفا دوربین خود را روی کدی که در اختیار شما قرار گرفته قرار لطفا دوربین خود را روی کدی که در اختیار شما قرار گرفته قرار
دهید تا اسکن دوربین انجام شود دهید تا اسکن دوربین انجام شود
@ -142,9 +144,7 @@ class QRScan extends Component {
<> <>
<div className="mobile-qr-scan d-flex flex-column"> <div className="mobile-qr-scan d-flex flex-column">
<Navbar page="qr-scan" /> <Navbar page="qr-scan" />
{/* <div className="mobile-qr-scan__back d-flex">
<Link to="/">بازگشت</Link>
</div> */}
<header className="mobile-qr-scan__header d-flex flex-column"></header> <header className="mobile-qr-scan__header d-flex flex-column"></header>
<section className="mobile-qr-scan__camera d-flex justify-content-center align-items-center"> <section className="mobile-qr-scan__camera d-flex justify-content-center align-items-center">

@ -61,7 +61,7 @@ class AR extends Component {
> >
برای استفاده از این بخش باید یک کتاب را فعالسازی کرده باشید برای استفاده از این بخش باید یک کتاب را فعالسازی کرده باشید
</p> </p>
<Link to="/activation">فعالسازی کتاب</Link> <Link to="/activation">{window.t("فعالسازی کتاب")}</Link>
</div> </div>
</div> </div>
); );

@ -86,7 +86,7 @@ class Activation extends Component {
</p> </p>
</div> </div>
<div className="activation__history d-flex flex-column"> <div className="activation__history d-flex flex-column">
<h2 style={{ fontSize: fontSize.desktop.h2 }}>آخرین مشاهدات</h2> <h2 style={{ fontSize: fontSize.desktop.h2 }}>آخرین مشاهدات")}</h2>
{data.map((item, i) => ( {data.map((item, i) => (
<History data={item} key={i} /> <History data={item} key={i} />
))} ))}
@ -118,8 +118,8 @@ class Activation extends Component {
this.setState({ facingMode: e.target.value }) this.setState({ facingMode: e.target.value })
} }
> >
<option value="environment">دوربین عقب</option> <option value="environment">{window.t("دوربین عقب")}</option>
<option value="user">دوربین جلو</option> <option value="user">{window.t("دوربین جلو")}</option>
</select> </select>
</div> </div>
<div className="qr-scan__box--camera d-flex justify-content-center align-items-center"> <div className="qr-scan__box--camera d-flex justify-content-center align-items-center">
@ -169,7 +169,7 @@ class Activation extends Component {
</p> </p>
</div> */} </div> */}
{/* <div className="mobile-activation__history d-flex flex-column"> {/* <div className="mobile-activation__history d-flex flex-column">
<h2>آخرین مشاهدات</h2> <h2>آخرین مشاهدات")}</h2>
{data.map((item, i) => ( {data.map((item, i) => (
<History data={item} key={i} /> <History data={item} key={i} />
))} ))}

@ -104,7 +104,9 @@ export default class Cellphone extends Component {
<div className="mobile-auth-cellphone d-flex flex-column align-items-center"> <div className="mobile-auth-cellphone d-flex flex-column align-items-center">
<img src={logo} alt="دانوین" /> <img src={logo} alt="دانوین" />
<div className="d-flex flex-column"> <div className="d-flex flex-column">
<h1 style={{ fontSize: fontSize.mobile.h1 }}>دانوین</h1> <h1 style={{ fontSize: fontSize.mobile.h1 }}>
{window.t("دانوین")}
</h1>
<p style={{ fontSize: fontSize.mobile.p }}> <p style={{ fontSize: fontSize.mobile.p }}>
به دانوین خوش اومدی برای عضویت و ادامه شماره موبایلت رو وارد کن به دانوین خوش اومدی برای عضویت و ادامه شماره موبایلت رو وارد کن
و روی گزینه ثبت بزن و روی گزینه ثبت بزن

@ -216,7 +216,9 @@ export default class Code extends Component {
<div className="mobile-auth-code d-flex flex-column p-3"> <div className="mobile-auth-code d-flex flex-column p-3">
<img src={logo} alt="دانوین" /> <img src={logo} alt="دانوین" />
<div style={{ width: "100%" }} className="d-flex flex-column mb-1"> <div style={{ width: "100%" }} className="d-flex flex-column mb-1">
<h1 style={{ fontSize: fontSize.mobile.h1 }}>دانوین</h1> <h1 style={{ fontSize: fontSize.mobile.h1 }}>
{window.t("دانوین")}
</h1>
<p style={{ fontSize: fontSize.mobile.p }}> <p style={{ fontSize: fontSize.mobile.p }}>
یک کد تائیدیه به شماره{" "} یک کد تائیدیه به شماره{" "}
<span>{this.props.parent.state.cellphone}</span> ارسال شد <br /> <span>{this.props.parent.state.cellphone}</span> ارسال شد <br />
@ -294,7 +296,7 @@ export default class Code extends Component {
/> />
</label> </label>
</div> </div>
<button>ثبت</button> <button>{window.t("ثبت")}</button>
{!this.state.resendStatus ? ( {!this.state.resendStatus ? (
<Timer seconds={60} parent={this} /> <Timer seconds={60} parent={this} />
) : ( ) : (

@ -26,7 +26,7 @@ export default function Birthdate(props) {
<> <>
{window.innerWidth < 1000 ? ( {window.innerWidth < 1000 ? (
<div className="mobile-birthdate d-flex justify-content-between align-items-center"> <div className="mobile-birthdate d-flex justify-content-between align-items-center">
<label>تاریخ تولد</label> <label>{window.t("تاریخ تولد")}</label>
<div className="mobile-birthdate__date d-flex align-items-center"> <div className="mobile-birthdate__date d-flex align-items-center">
<Input <Input
variant="standard" variant="standard"
@ -62,7 +62,7 @@ export default function Birthdate(props) {
) : null} ) : null}
{window.innerWidth > 1000 ? ( {window.innerWidth > 1000 ? (
<div className="birthdate d-flex justify-content-between align-items-center"> <div className="birthdate d-flex justify-content-between align-items-center">
<label>تاریخ تولد</label> <label>{window.t("تاریخ تولد")}</label>
<div className="birthdate__date d-flex align-items-center"> <div className="birthdate__date d-flex align-items-center">
<Input <Input
variant="standard" variant="standard"

@ -184,7 +184,9 @@ class Profile extends Component {
profile ? ( profile ? (
<div className="auth-profile d-flex justify-content-center"> <div className="auth-profile d-flex justify-content-center">
<div className="auth-profile__box d-flex flex-column p-4"> <div className="auth-profile__box d-flex flex-column p-4">
<h1 style={{ fontSize: fontSize.desktop.h1 }}>حساب کاربری</h1> <h1 style={{ fontSize: fontSize.desktop.h1 }}>
حساب کاربری")}
</h1>
<p style={{ fontSize: fontSize.desktop.p }}> <p style={{ fontSize: fontSize.desktop.p }}>
لطفا مشخصات خود را به صورت کامل نمایید. لطفا مشخصات خود را به صورت کامل نمایید.
</p> </p>
@ -381,7 +383,7 @@ class Profile extends Component {
/> />
</div> </div>
<div className="auth-profile__box--form__footer d-flex justify-content-center"> <div className="auth-profile__box--form__footer d-flex justify-content-center">
<button onClick={() => this.onSubmit()}>ذخیره</button> <button onClick={() => this.onSubmit()}>ذخیره")}</button>
</div> </div>
</div> </div>
</div> </div>
@ -560,7 +562,7 @@ class Profile extends Component {
defaultValue={profile} defaultValue={profile}
/> />
<div className="mobile-auth-profile__footer d-flex justify-content-center"> <div className="mobile-auth-profile__footer d-flex justify-content-center">
<button onClick={() => this.onSubmit()}>ذخیره</button>{" "} <button onClick={() => this.onSubmit()}>ذخیره")}</button>{" "}
</div> </div>
</div> </div>
</> </>

@ -11,7 +11,9 @@ export default function Splash(props) {
<div className="splash d-flex flex-column justify-content-center align-items-center"> <div className="splash d-flex flex-column justify-content-center align-items-center">
<img src={logo} alt={window.t("لوگو")} /> <img src={logo} alt={window.t("لوگو")} />
<ProgressBar interval={600} offset={10} /> <ProgressBar interval={600} offset={10} />
<span className="splash__span">در حال بارگیری اطلاعات از سرور</span> <span className="splash__span">
{window.t("در حال بارگیری اطلاعات از سرور")}
</span>
</div> </div>
) : null} ) : null}
{window.innerWidth < 1000 ? ( {window.innerWidth < 1000 ? (

@ -95,7 +95,7 @@ const Item = (props) => {
</div> </div>
<div className="landscape-blogs-item__left d-flex flex-column"> <div className="landscape-blogs-item__left d-flex flex-column">
<h1>{item.title}</h1> <h1>{item.title}</h1>
<span>مطالعه کامل</span> <span>{window.t("مطالعه کامل")}</span>
</div> </div>
</Link> </Link>
) : null} ) : null}
@ -114,7 +114,7 @@ const Item = (props) => {
{item.type === "audio" ? <img src={music} alt={item.title} /> : null} {item.type === "audio" ? <img src={music} alt={item.title} /> : null}
<h1>{item.title}</h1> <h1>{item.title}</h1>
{/* <p>{item.text}</p> */} {/* <p>{item.text}</p> */}
<span>مطالعه کامل</span> <span>{window.t("مطالعه کامل")}</span>
</Link> </Link>
) : null} ) : null}
</> </>

@ -169,10 +169,12 @@ class Callback extends Component {
</div> </div>
<div className="cart__left--header d-flex flex-column mt-3"> <div className="cart__left--header d-flex flex-column mt-3">
<h2 style={{ fontSize: fontSize.desktop.h2 }}> <h2 style={{ fontSize: fontSize.desktop.h2 }}>
روشهای ارسال {window.t("روشهای ارسال")}{" "}
</h2> </h2>
<p style={{ fontSize: fontSize.desktop.p }}> <p style={{ fontSize: fontSize.desktop.p }}>
با توجه به شرایط یکی از دو گزینه زیر را انتخاب کنید {window.t(
"با توجه به شرایط یکی از دو گزینه زیر را انتخاب کنید"
)}{" "}
</p> </p>
<div className="d-flex justify-content-between"> <div className="d-flex justify-content-between">
{this.props.payMethods.map((item, i) => ( {this.props.payMethods.map((item, i) => (
@ -180,7 +182,9 @@ class Callback extends Component {
))} ))}
</div> </div>
</div> </div>
<button className="cart__left--submit">پرداخت</button> <button className="cart__left--submit">
{window.t("پرداخت")}
</button>
</section> </section>
</div> </div>
</div> </div>
@ -199,7 +203,7 @@ class Callback extends Component {
list ? ( list ? (
<div className="mobile-cart d-flex flex-column"> <div className="mobile-cart d-flex flex-column">
<Navbar /> <Navbar />
{/* <h1 style={{ fontSize: fontSize.mobile.h1 }}>سبد خرید</h1> */} {/* <h1 style={{ fontSize: fontSize.mobile.h1 }}>{window.t("سبد خرید")}</h1> */}
<Status status={true} /> <Status status={true} />
<div className="d-flex"> <div className="d-flex">
<Table <Table
@ -211,7 +215,7 @@ class Callback extends Component {
/> />
</div> </div>
{/* <div className="mobile-cart__payMethods d-flex flex-column"> {/* <div className="mobile-cart__payMethods d-flex flex-column">
<h2 style={{ fontSize: fontSize.mobile.h2 }}>روشهای ارسال</h2> <h2 style={{ fontSize: fontSize.mobile.h2 }}>{window.t("روشهای ارسال")}</h2>
<p style={{ fontSize: fontSize.mobile.p }}> <p style={{ fontSize: fontSize.mobile.p }}>
با توجه به شرایط یکی از دو گزینه زیر را انتخاب کنید با توجه به شرایط یکی از دو گزینه زیر را انتخاب کنید
</p> </p>
@ -226,30 +230,18 @@ class Callback extends Component {
<Factor parent={this} /> <Factor parent={this} />
<div className="mobile-cart__totalPrice d-flex align-items-center justify-content-center mt-2"> <div className="mobile-cart__totalPrice d-flex align-items-center justify-content-center mt-2">
<h3 style={{ fontSize: fontSize.mobile.h2 }} className="m-2"> <h3 style={{ fontSize: fontSize.mobile.h2 }} className="m-2">
جمع کل {window.t("جمع کل")} <br />
<br /> {window.t("سبد خرید")}{" "}
سبد خرید
</h3> </h3>
<div className="d-flex align-items-center"> <div className="d-flex align-items-center">
<strong style={{ fontSize: fontSize.mobile.h1 }}> <strong style={{ fontSize: fontSize.mobile.h1 }}>
{payPrice} {payPrice}
</strong> </strong>
<span style={{ fontSize: fontSize.mobile.h3 }}>تومان</span> <span style={{ fontSize: fontSize.mobile.h3 }}>
</div> {window.t("تومان")}
</span>
</div> </div>
{/* <div className="mobile-cart__payMethods d-flex flex-column">
<h2 style={{ fontSize: fontSize.mobile.h2 }}>روشهای ارسال</h2>
<p style={{ fontSize: fontSize.mobile.p }}>
با توجه به شرایط یکی از دو گزینه زیر را انتخاب کنید
</p>
<div className="d-flex justify-content-between">
{this.props.payMethods.map((item, i) => (
<DeliveryMethod data={item} key={i} parent={this} />
))}
</div> </div>
</div> */}
{/* <button className="mobile-cart__submit">پرداخت</button> */}
</div> </div>
) : ( ) : (
<div <div

@ -51,7 +51,9 @@ class DeliveryMethod extends Component {
</strong> </strong>
<div className="d-flex flex-column align-items-center"> <div className="d-flex flex-column align-items-center">
<h3 style={{ fontSize: fontSize.desktop.h3 }}>{data.price}</h3> <h3 style={{ fontSize: fontSize.desktop.h3 }}>{data.price}</h3>
<span style={{ fontSize: fontSize.desktop.span }}>تومان</span> <span style={{ fontSize: fontSize.desktop.span }}>
{window.t("تومان")}
</span>
</div> </div>
</div> </div>
) : null} ) : null}
@ -76,7 +78,9 @@ class DeliveryMethod extends Component {
</strong> </strong>
<div className="d-flex flex-column align-items-center"> <div className="d-flex flex-column align-items-center">
<h3 style={{ fontSize: fontSize.mobile.h3 }}>{data.price}</h3> <h3 style={{ fontSize: fontSize.mobile.h3 }}>{data.price}</h3>
<span style={{ fontSize: fontSize.mobile.span }}>تومان</span> <span style={{ fontSize: fontSize.mobile.span }}>
{window.t("تومان")}
</span>
</div> </div>
</div> </div>
) : null} ) : null}

@ -37,11 +37,13 @@ const DiscoutCode = ({
<> <>
{window.innerWidth > 1000 ? ( {window.innerWidth > 1000 ? (
<div className="discount-code d-flex flex-column"> <div className="discount-code d-flex flex-column">
<h2 style={{ fontSize: fontSize.desktop.h2 }}>کد تخفیف</h2> <h2 style={{ fontSize: fontSize.desktop.h2 }}>
{window.t("کد تخفیف")}
</h2>
{!code ? ( {!code ? (
<> <>
<p style={{ fontSize: fontSize.desktop.p }}> <p style={{ fontSize: fontSize.desktop.p }}>
اگر کد تخفیفی دارید آن را در کادر زیر وارد نمائید {window.t("اگر کد تخفیفی دارید آن را در کادر زیر وارد نمائید")}{" "}
</p> </p>
<div className="discount-code__box d-flex align-items-center"> <div className="discount-code__box d-flex align-items-center">
<input <input
@ -90,12 +92,14 @@ const DiscoutCode = ({
) : null} ) : null}
{window.innerWidth < 1000 ? ( {window.innerWidth < 1000 ? (
<div className="mobile-discount-code d-flex flex-column"> <div className="mobile-discount-code d-flex flex-column">
<h2 style={{ fontSize: fontSize.mobile.h2 }}>کد تخفیف</h2> <h2 style={{ fontSize: fontSize.mobile.h2 }}>
{window.t("کد تخفیف")}
</h2>
{!code ? ( {!code ? (
<> <>
{" "} {" "}
<p style={{ fontSize: fontSize.mobile.p }}> <p style={{ fontSize: fontSize.mobile.p }}>
اگر کد تخفیفی دارید آن را در کادر زیر وارد نمائید{" "} {window.t("اگر کد تخفیفی دارید آن را در کادر زیر وارد نمائید")}{" "}
</p> </p>
<div className="mobile-discount-code__box d-flex align-items-center"> <div className="mobile-discount-code__box d-flex align-items-center">
<input <input

@ -32,23 +32,29 @@ const Factor = (props) => {
{window.innerWidth < 1000 ? ( {window.innerWidth < 1000 ? (
<div className="mobile-factor d-flex flex-column"> <div className="mobile-factor d-flex flex-column">
<div className="d-flex justify-content-between"> <div className="d-flex justify-content-between">
<strong>مبلغ سبد خرید</strong> <strong>{window.t("مبلغ سبد خرید")}</strong>
<span>{factorInfo.sumPrice} تومان</span> <span>
{factorInfo.sumPrice} {window.t("تومان")}
</span>
</div> </div>
{/* <div className="d-flex justify-content-between"> {/* <div className="d-flex justify-content-between">
<strong>هزینه ارسال</strong> <strong>{window.t("هزینه ارسال")}</strong>
<span> <span>
{factorInfo.transportPrice} {factorInfo.transportPrice}
تومان تومان
</span> </span>
</div> */} </div> */}
<div className="d-flex justify-content-between"> <div className="d-flex justify-content-between">
<strong>میزان تخفیف</strong> <strong>{window.t("میزان تخفیف")}</strong>
<span>{factorInfo.offPrice} تومان</span> <span>
{factorInfo.offPrice} {window.t("تومان")}
</span>
</div> </div>
<div className="d-flex justify-content-between"> <div className="d-flex justify-content-between">
<strong>مالیات بر ارزش افزوده</strong> <strong>{window.t("مالیات بر ارزش افزوده")}</strong>
<span>{factorInfo.vatPrice} تومان</span> <span>
{factorInfo.vatPrice} {window.t("تومان")}
</span>
</div> </div>
</div> </div>
) : null} ) : null}
@ -56,10 +62,10 @@ const Factor = (props) => {
<div className="factor d-flex flex-column"> <div className="factor d-flex flex-column">
<div className="d-flex justify-content-between"> <div className="d-flex justify-content-between">
<strong style={{ fontSize: fontSize.desktop.strong }}> <strong style={{ fontSize: fontSize.desktop.strong }}>
مبلغ سبد خرید {window.t("مبلغ سبد خرید")}
</strong> </strong>
<span style={{ fontSize: fontSize.desktop.span }}> <span style={{ fontSize: fontSize.desktop.span }}>
{factorInfo.sumPrice} تومان {factorInfo.sumPrice} {window.t("تومان")}
</span> </span>
</div> </div>
{/* <div className="d-flex justify-content-between"> {/* <div className="d-flex justify-content-between">

@ -91,11 +91,11 @@ function BasicTable(props) {
<Table className={classes.table} aria-label="simple table"> <Table className={classes.table} aria-label="simple table">
<TableHead> <TableHead>
<TableRow> <TableRow>
<TableCell align="right">محصولات</TableCell> <TableCell align="right">{window.t("محصولات")}</TableCell>
<TableCell align="center">قیمت</TableCell> <TableCell align="center">{window.t("قیمت")}</TableCell>
{route === "callback" ? ( {route === "callback" ? (
<TableCell align="center">تعداد</TableCell> <TableCell align="center">{window.t("تعداد")}</TableCell>
) : null} ) : null}
</TableRow> </TableRow>
</TableHead> </TableHead>
@ -121,7 +121,9 @@ function BasicTable(props) {
</span> </span>
</TableCell> </TableCell>
<TableCell align="right" component="th" scope="row"> <TableCell align="right" component="th" scope="row">
<span style={{ color: "grey" }}>{sum()} محصول</span> <span style={{ color: "grey" }}>
{sum()} {window.t("محصول")}
</span>
</TableCell> </TableCell>
</TableRow> </TableRow>
) : null} ) : null}
@ -134,9 +136,9 @@ function BasicTable(props) {
<Table className={classes.table} aria-label="simple table"> <Table className={classes.table} aria-label="simple table">
<TableHead> <TableHead>
<TableRow> <TableRow>
<TableCell align="right">محصولات</TableCell> <TableCell align="right">{window.t("محصولات")}</TableCell>
<TableCell align="center">قیمت</TableCell> <TableCell align="center">{window.t("قیمت")}</TableCell>
<TableCell align="center">تعداد</TableCell> <TableCell align="center">{window.t("تعداد")}</TableCell>
<TableCell align="center"></TableCell> <TableCell align="center"></TableCell>
</TableRow> </TableRow>
</TableHead> </TableHead>
@ -165,7 +167,9 @@ function BasicTable(props) {
</span> </span>
</TableCell> </TableCell>
<TableCell align="center" component="th" scope="row"> <TableCell align="center" component="th" scope="row">
<span style={{ color: "grey" }}>{sum()} محصول</span> <span style={{ color: "grey" }}>
{sum()} {window.t("محصول")}
</span>
</TableCell> </TableCell>
<TableCell align="center" component="th" scope="row"> <TableCell align="center" component="th" scope="row">
<span style={{ color: "grey" }}></span> <span style={{ color: "grey" }}></span>
@ -196,7 +200,9 @@ const Item = (props) => {
<div className="mobile-cart-table-product__info d-flex flex-column p-1"> <div className="mobile-cart-table-product__info d-flex flex-column p-1">
<strong style={{ fontSize: fontSize.mobile.info.strong }}> <strong style={{ fontSize: fontSize.mobile.info.strong }}>
{`نسخه ${ {`نسخه ${
+data.product.productType === 1 ? window.t("الکترونیکی") : window.t("چاپی") +data.product.productType === 1
? window.t("الکترونیکی")
: window.t("چاپی")
} ${data.product.book.name} `} } ${data.product.book.name} `}
</strong> </strong>
<p style={{ fontSize: 12 }}> <p style={{ fontSize: 12 }}>
@ -204,7 +210,8 @@ const Item = (props) => {
</p> </p>
<span style={{ fontSize: 10 }}> <span style={{ fontSize: 10 }}>
همراه با: همراه با:
{data.product.book.items || window.t("کد فعالسازی محتوای الکترونیک")} {data.product.book.items ||
window.t("کد فعالسازی محتوای الکترونیک")}
</span> </span>
{route !== "callback" ? ( {route !== "callback" ? (
<div className="mobile-cart-table-product__info--delete d-flex align-items-center align-self-end"> <div className="mobile-cart-table-product__info--delete d-flex align-items-center align-self-end">
@ -319,7 +326,9 @@ const Item = (props) => {
<div className="d-flex flex-column justify-content-center"> <div className="d-flex flex-column justify-content-center">
<strong style={{ fontSize: fontSize.desktop.info.strong }}> <strong style={{ fontSize: fontSize.desktop.info.strong }}>
{`نسخه ${ {`نسخه ${
+data.product?.productType === 1 ? window.t("الکترونیکی") : window.t("چاپی") +data.product?.productType === 1
? window.t("الکترونیکی")
: window.t("چاپی")
} ${data.product?.book?.name} `} } ${data.product?.book?.name} `}
</strong> </strong>
<p style={{ fontSize: fontSize?.desktop?.info.p }}> <p style={{ fontSize: fontSize?.desktop?.info.p }}>
@ -327,7 +336,8 @@ const Item = (props) => {
</p> </p>
<span style={{ fontSize: fontSize.desktop.info.span }}> <span style={{ fontSize: fontSize.desktop.info.span }}>
همراه با: همراه با:
{data.product?.book?.items || window.t("کد فعالسازی محتوای الکترونیک")} {data.product?.book?.items ||
window.t("کد فعالسازی محتوای الکترونیک")}
</span> </span>
</div> </div>
</div> </div>

@ -157,7 +157,11 @@ class Cart extends Component {
<Navbar /> <Navbar />
{window.location.search.includes("NOK") || {window.location.search.includes("NOK") ||
this.props.isVerified === false ? ( this.props.isVerified === false ? (
<div>پرداخت شما با خطا مواجه شد ، لطفا مجدد تلاش نمایید</div> <div>
{window.t(
"پرداخت شما با خطا مواجه شد ، لطفا مجدد تلاش نمایید"
)}{" "}
</div>
) : window.location.search.includes("OK") ? ( ) : window.location.search.includes("OK") ? (
<Navigate path="/orders" /> <Navigate path="/orders" />
) : null} ) : null}
@ -260,9 +264,15 @@ class Cart extends Component {
<div className="mobile-cart d-flex flex-column"> <div className="mobile-cart d-flex flex-column">
<Navbar /> <Navbar />
{window.location.search.includes("NOK") ? ( {window.location.search.includes("NOK") ? (
<div>پرداخت شما با خطا مواجه شد ، لطفا مجدد تلاش نمایید</div> <div>
{window.t(
"پرداخت شما با خطا مواجه شد ، لطفا مجدد تلاش نمایید"
)}
</div>
) : null} ) : null}
<h1 style={{ fontSize: fontSize.mobile.h1 }}>سبد پیش خرید</h1> <h1 style={{ fontSize: fontSize.mobile.h1 }}>
{window.t("سبد پیش خرید")}
</h1>
<div className="d-flex"> <div className="d-flex">
<Table <Table
list={list} list={list}
@ -274,9 +284,13 @@ class Cart extends Component {
</div> </div>
{false && factorInfo.transportId ? ( {false && factorInfo.transportId ? (
<div className="mobile-cart__payMethods d-flex flex-column"> <div className="mobile-cart__payMethods d-flex flex-column">
<h2 style={{ fontSize: fontSize.mobile.h2 }}>روشهای ارسال</h2> <h2 style={{ fontSize: fontSize.mobile.h2 }}>
{window.t("روشهای ارسال")}
</h2>
<p style={{ fontSize: fontSize.mobile.p }}> <p style={{ fontSize: fontSize.mobile.p }}>
با توجه به شرایط یکی از دو گزینه زیر را انتخاب کنید {window.t(
"با توجه به شرایط یکی از دو گزینه زیر را انتخاب کنید"
)}{" "}
</p> </p>
<div className="d-flex justify-content-between"> <div className="d-flex justify-content-between">
@ -296,9 +310,8 @@ class Cart extends Component {
<div className="mobile-cart__totalPrice d-flex align-items-center justify-content-center mt-2"> <div className="mobile-cart__totalPrice d-flex align-items-center justify-content-center mt-2">
<h3 style={{ fontSize: fontSize.mobile.h2 }}> <h3 style={{ fontSize: fontSize.mobile.h2 }}>
جمع کل {window.t("جمع کل")} <br />
<br /> {window.t("سبد خرید")}{" "}
سبد خرید
</h3> </h3>
{factorInfo ? ( {factorInfo ? (
<div className="d-flex align-items-center"> <div className="d-flex align-items-center">
@ -306,12 +319,14 @@ class Cart extends Component {
{factorInfo.payPrice - factorInfo.transportPrice} {factorInfo.payPrice - factorInfo.transportPrice}
{/* // factorInfo.transportPrice - // factorInfo.offPrice} */} {/* // factorInfo.transportPrice - // factorInfo.offPrice} */}
</strong> </strong>
<span style={{ fontSize: fontSize.mobile.h3 }}>تومان</span> <span style={{ fontSize: fontSize.mobile.h3 }}>
{window.t("تومان")}
</span>
</div> </div>
) : null} ) : null}
</div> </div>
{/* <div className="mobile-cart__payMethods d-flex flex-column"> {/* <div className="mobile-cart__payMethods d-flex flex-column">
<h2 style={{ fontSize: fontSize.mobile.h2 }}>روشهای ارسال</h2> <h2 style={{ fontSize: fontSize.mobile.h2 }}>{window.t("روشهای ارسال")}</h2>
<p style={{ fontSize: fontSize.mobile.p }}> <p style={{ fontSize: fontSize.mobile.p }}>
با توجه به شرایط یکی از دو گزینه زیر را انتخاب کنید با توجه به شرایط یکی از دو گزینه زیر را انتخاب کنید
</p> </p>

@ -56,7 +56,7 @@ class ChatList extends Component {
<Chatroom id={this.state.selectedUser} /> <Chatroom id={this.state.selectedUser} />
) : ( ) : (
<div className="desktop-chat__before d-flex"> <div className="desktop-chat__before d-flex">
<h1>برای شروع روی یک چت کلیک کن</h1> <h1>{window.t("برای شروع روی یک چت کلیک کن")}</h1>
</div> </div>
)} )}
</div> </div>

@ -142,10 +142,12 @@ export default class ChatInfo extends Component {
/> />
<h1 style={{ fontSize: fontSize.desktop.h1 }}>{user.name}</h1> <h1 style={{ fontSize: fontSize.desktop.h1 }}>{user.name}</h1>
<div className="desktop-contact-info__body--bio d-flex flex-column"> <div className="desktop-contact-info__body--bio d-flex flex-column">
<h2 style={{ fontSize: fontSize.desktop.h2 }}>اطلاعات</h2> <h2 style={{ fontSize: fontSize.desktop.h2 }}>
{window.t("اطلاعات")}
</h2>
<p style={{ fontSize: fontSize.desktop.p }}>{user.bio}</p> <p style={{ fontSize: fontSize.desktop.p }}>{user.bio}</p>
<h2 style={{ fontSize: fontSize.desktop.h2 }}> <h2 style={{ fontSize: fontSize.desktop.h2 }}>
مشخصات تحصیلی {window.t("مشخصات تحصیلی")}{" "}
</h2> </h2>
<ul> <ul>
{user.educationalInfo.map((item, i) => ( {user.educationalInfo.map((item, i) => (
@ -166,14 +168,18 @@ export default class ChatInfo extends Component {
))} ))}
</div> </div>
<div className="desktop-contact-info__body--options d-flex justify-content-between"> <div className="desktop-contact-info__body--options d-flex justify-content-between">
<h3 style={{ fontSize: fontSize.desktop.h3 }}>نام کاربری</h3> <h3 style={{ fontSize: fontSize.desktop.h3 }}>
{window.t("نام کاربری")}
</h3>
<span style={{ fontSize: fontSize.desktop.span }}> <span style={{ fontSize: fontSize.desktop.span }}>
{user.username}@ {user.username}@
</span> </span>
</div> </div>
<div className="desktop-contact-info__body--options d-flex justify-content-between align-items-center"> <div className="desktop-contact-info__body--options d-flex justify-content-between align-items-center">
<div> <div>
<h3 style={{ fontSize: fontSize.desktop.h3 }}>اعلانات</h3> <h3 style={{ fontSize: fontSize.desktop.h3 }}>
{window.t("اعلانات")}
</h3>
<span style={{ fontSize: fontSize.desktop.span }}> <span style={{ fontSize: fontSize.desktop.span }}>
{alarms ? "روشن " : window.t("خاموش")} {alarms ? "روشن " : window.t("خاموش")}
</span> </span>
@ -188,7 +194,7 @@ export default class ChatInfo extends Component {
onClick={() => this.setState({ gallery: true })} onClick={() => this.setState({ gallery: true })}
> >
<h3 style={{ fontSize: fontSize.desktop.h3 }}> <h3 style={{ fontSize: fontSize.desktop.h3 }}>
رسانه,فیلم,عکس {window.t("رسانه,فیلم,عکس")}
</h3> </h3>
<KeyboardArrowLeftIcon <KeyboardArrowLeftIcon
style={{ width: 30, height: 30, color: "grey" }} style={{ width: 30, height: 30, color: "grey" }}
@ -249,10 +255,12 @@ export default class ChatInfo extends Component {
/> />
<h1 style={{ fontSize: fontSize.mobile.h1 }}>{user.name}</h1> <h1 style={{ fontSize: fontSize.mobile.h1 }}>{user.name}</h1>
<div className="desktop-contact-info__body--bio d-flex flex-column"> <div className="desktop-contact-info__body--bio d-flex flex-column">
<h2 style={{ fontSize: fontSize.mobile.h2 }}>اطلاعات</h2> <h2 style={{ fontSize: fontSize.mobile.h2 }}>
{window.t("اطلاعات")}
</h2>
<p style={{ fontSize: fontSize.mobile.p }}>{user.bio}</p> <p style={{ fontSize: fontSize.mobile.p }}>{user.bio}</p>
<h2 style={{ fontSize: fontSize.mobile.h2 }}> <h2 style={{ fontSize: fontSize.mobile.h2 }}>
مشخصات تحصیلی {window.t("مشخصات تحصیلی")}{" "}
</h2> </h2>
<ul> <ul>
{user.educationalInfo.map((item, i) => ( {user.educationalInfo.map((item, i) => (
@ -273,14 +281,18 @@ export default class ChatInfo extends Component {
))} ))}
</div> </div>
<div className="desktop-contact-info__body--options d-flex justify-content-between"> <div className="desktop-contact-info__body--options d-flex justify-content-between">
<h3 style={{ fontSize: fontSize.mobile.h3 }}>نام کاربری</h3> <h3 style={{ fontSize: fontSize.mobile.h3 }}>
{window.t("نام کاربری")}
</h3>
<span style={{ fontSize: fontSize.mobile.span }}> <span style={{ fontSize: fontSize.mobile.span }}>
{user.username}@ {user.username}@
</span> </span>
</div> </div>
<div className="desktop-contact-info__body--options d-flex justify-content-between align-items-center"> <div className="desktop-contact-info__body--options d-flex justify-content-between align-items-center">
<div> <div>
<h3 style={{ fontSize: fontSize.mobile.h3 }}>اعلانات</h3> <h3 style={{ fontSize: fontSize.mobile.h3 }}>
{window.t("اعلانات")}
</h3>
<span style={{ fontSize: fontSize.mobile.span }}> <span style={{ fontSize: fontSize.mobile.span }}>
{alarms ? "روشن " : window.t("خاموش")} {alarms ? "روشن " : window.t("خاموش")}
</span> </span>
@ -295,7 +307,7 @@ export default class ChatInfo extends Component {
onClick={() => this.setState({ gallery: true })} onClick={() => this.setState({ gallery: true })}
> >
<h3 style={{ fontSize: fontSize.mobile.h3 }}> <h3 style={{ fontSize: fontSize.mobile.h3 }}>
رسانه,فیلم,عکس {window.t("رسانه,فیلم,عکس")}{" "}
</h3> </h3>
<KeyboardArrowLeftIcon <KeyboardArrowLeftIcon
style={{ width: 30, height: 30, color: "grey" }} style={{ width: 30, height: 30, color: "grey" }}
@ -303,7 +315,7 @@ export default class ChatInfo extends Component {
</div> </div>
<div className="desktop-contact-info__body--options desktop-contact-info__body--options__click d-flex justify-content-between align-items-center"> <div className="desktop-contact-info__body--options desktop-contact-info__body--options__click d-flex justify-content-between align-items-center">
<h3 style={{ color: "red", fontSize: fontSize.mobile.h3 }}> <h3 style={{ color: "red", fontSize: fontSize.mobile.h3 }}>
مسدود سازی مخاطب {window.t("مسدود سازی مخاطب")}{" "}
</h3> </h3>
<BlockIcon style={{ width: 30, height: 30, color: "red" }} /> <BlockIcon style={{ width: 30, height: 30, color: "red" }} />
</div> </div>

@ -51,7 +51,9 @@ class DeliveryMethod extends Component {
</strong> </strong>
<div className="d-flex flex-column align-items-center"> <div className="d-flex flex-column align-items-center">
<h3 style={{ fontSize: fontSize.desktop.h3 }}>{data.price}</h3> <h3 style={{ fontSize: fontSize.desktop.h3 }}>{data.price}</h3>
<span style={{ fontSize: fontSize.desktop.span }}>تومان</span> <span style={{ fontSize: fontSize.desktop.span }}>
{window.t("تومان")}
</span>
</div> </div>
</div> </div>
) : null} ) : null}
@ -76,7 +78,9 @@ class DeliveryMethod extends Component {
</strong> </strong>
<div className="d-flex flex-column align-items-center"> <div className="d-flex flex-column align-items-center">
<h3 style={{ fontSize: fontSize.mobile.h3 }}>{data.price}</h3> <h3 style={{ fontSize: fontSize.mobile.h3 }}>{data.price}</h3>
<span style={{ fontSize: fontSize.mobile.span }}>تومان</span> <span style={{ fontSize: fontSize.mobile.span }}>
{window.t("تومان")}
</span>
</div> </div>
</div> </div>
) : null} ) : null}

@ -30,7 +30,9 @@ const DiscoutCode = ({ codeId, setCodeId, userId, factorId }) => {
<> <>
{window.innerWidth > 1000 ? ( {window.innerWidth > 1000 ? (
<div className="discount-code d-flex flex-column"> <div className="discount-code d-flex flex-column">
<h2 style={{ fontSize: fontSize.desktop.h2 }}>کد تخفیف</h2> <h2 style={{ fontSize: fontSize.desktop.h2 }}>
{window.t("کد تخفیف")}
</h2>
<p style={{ fontSize: fontSize.desktop.p }}> <p style={{ fontSize: fontSize.desktop.p }}>
اگر کد تخفیفی دارید آن را در کادر زیر وارد نمائید اگر کد تخفیفی دارید آن را در کادر زیر وارد نمائید
</p> </p>
@ -52,7 +54,9 @@ const DiscoutCode = ({ codeId, setCodeId, userId, factorId }) => {
) : null} ) : null}
{window.innerWidth < 1000 ? ( {window.innerWidth < 1000 ? (
<div className="mobile-discount-code d-flex flex-column"> <div className="mobile-discount-code d-flex flex-column">
<h2 style={{ fontSize: fontSize.mobile.h2 }}>کد تخفیف</h2> <h2 style={{ fontSize: fontSize.mobile.h2 }}>
{window.t("کد تخفیف")}
</h2>
<p style={{ fontSize: fontSize.mobile.p }}> <p style={{ fontSize: fontSize.mobile.p }}>
اگر کد تخفیفی دارید آن را در کادر زیر وارد نمائید{" "} اگر کد تخفیفی دارید آن را در کادر زیر وارد نمائید{" "}
</p> </p>

@ -32,23 +32,23 @@ const Factor = (props) => {
{window.innerWidth < 1000 ? ( {window.innerWidth < 1000 ? (
<div className="mobile-factor d-flex flex-column"> <div className="mobile-factor d-flex flex-column">
<div className="d-flex justify-content-between"> <div className="d-flex justify-content-between">
<strong>مبلغ سبد خرید</strong> <strong>{window.t("مبلغ سبد خرید")}</strong>
<span>{factorInfo.sumPrice} تومان</span> <span>{factorInfo.sumPrice} تومان")}</span>
</div> </div>
<div className="d-flex justify-content-between"> <div className="d-flex justify-content-between">
<strong>هزینه ارسال</strong> <strong>{window.t("هزینه ارسال")}</strong>
<span> <span>
{factorInfo.transportPrice} {factorInfo.transportPrice}
تومان تومان
</span> </span>
</div> </div>
<div className="d-flex justify-content-between"> <div className="d-flex justify-content-between">
<strong>میزان تخفیف</strong> <strong>{window.t("میزان تخفیف")}</strong>
<span>{factorInfo.offPrice} تومان</span> <span>{factorInfo.offPrice} تومان")}</span>
</div> </div>
<div className="d-flex justify-content-between"> <div className="d-flex justify-content-between">
<strong>مالیات بر ارزش افزوده</strong> <strong>{window.t("مالیات بر ارزش افزوده")}</strong>
<span>{factorInfo.vatPrice} تومان</span> <span>{factorInfo.vatPrice} تومان")}</span>
</div> </div>
</div> </div>
) : null} ) : null}

@ -83,11 +83,11 @@ function BasicTable(props) {
<Table className={classes.table} aria-label="simple table"> <Table className={classes.table} aria-label="simple table">
<TableHead> <TableHead>
<TableRow> <TableRow>
<TableCell align="right">محصولات</TableCell> <TableCell align="right">{window.t("محصولات")}</TableCell>
<TableCell align="center">قیمت</TableCell> <TableCell align="center">{window.t("قیمت")}</TableCell>
{route === "callback" ? ( {route === "callback" ? (
<TableCell align="center">تعداد</TableCell> <TableCell align="center">{window.t("تعداد")}</TableCell>
) : null} ) : null}
</TableRow> </TableRow>
</TableHead> </TableHead>
@ -114,9 +114,9 @@ function BasicTable(props) {
<Table className={classes.table} aria-label="simple table"> <Table className={classes.table} aria-label="simple table">
<TableHead> <TableHead>
<TableRow> <TableRow>
<TableCell align="right">محصولات</TableCell> <TableCell align="right">{window.t("محصولات")}</TableCell>
<TableCell align="center">تعداد</TableCell> <TableCell align="center">{window.t("تعداد")}</TableCell>
<TableCell align="center">قیمت</TableCell> <TableCell align="center">{window.t("قیمت")}</TableCell>
</TableRow> </TableRow>
</TableHead> </TableHead>
<TableBody> <TableBody>
@ -158,7 +158,9 @@ const Item = (props) => {
<div className="mobile-cart-table-product__info d-flex flex-column p-1"> <div className="mobile-cart-table-product__info d-flex flex-column p-1">
<strong style={{ fontSize: fontSize.mobile.info.strong }}> <strong style={{ fontSize: fontSize.mobile.info.strong }}>
{`نسخه ${ {`نسخه ${
+data.product.productType === 1 ? window.t("الکترونیکی") : window.t("چاپی") +data.product.productType === 1
? window.t("الکترونیکی")
: window.t("چاپی")
} ${data.product.book.name} `} } ${data.product.book.name} `}
</strong> </strong>
<p style={{ fontSize: 12 }}> <p style={{ fontSize: 12 }}>
@ -166,7 +168,8 @@ const Item = (props) => {
</p> </p>
<span style={{ fontSize: 10 }}> <span style={{ fontSize: 10 }}>
همراه با: همراه با:
{data.product.book.items || window.t("کد فعالسازی محتوای الکترونیک")} {data.product.book.items ||
window.t("کد فعالسازی محتوای الکترونیک")}
</span> </span>
</div> </div>
</div> </div>
@ -180,7 +183,7 @@ const Item = (props) => {
</div> </div>
{route === "cart" ? ( {route === "cart" ? (
<div className="mobile-cart-table-price__counter d-flex justify-content-around align-items-center"> <div className="mobile-cart-table-price__counter d-flex justify-content-around align-items-center">
<span style={{ fontSize: 12 }}>{data.count} عدد</span> <span style={{ fontSize: 12 }}>{data.count} عدد")}</span>
</div> </div>
) : null} ) : null}
</div> </div>
@ -210,7 +213,9 @@ const Item = (props) => {
<span style={{ fontSize: 12 }}> <span style={{ fontSize: 12 }}>
{" "} {" "}
{`نسخه ${ {`نسخه ${
+data.product.productType === 1 ? window.t("الکترونیکی") : window.t("چاپی") +data.product.productType === 1
? window.t("الکترونیکی")
: window.t("چاپی")
}`} }`}
</span> </span>

@ -175,7 +175,11 @@ class Cart extends Component {
<Navbar /> <Navbar />
{window.location.search.includes("NOK") || {window.location.search.includes("NOK") ||
this.props.isVerified === false ? ( this.props.isVerified === false ? (
<div>پرداخت شما با خطا مواجه شد ، لطفا مجدد تلاش نمایید</div> <div>
{window.t(
"پرداخت شما با خطا مواجه شد ، لطفا مجدد تلاش نمایید"
)}{" "}
</div>
) : null} ) : null}
<div <div
className="d-flex" className="d-flex"
@ -187,7 +191,7 @@ class Cart extends Component {
جزئیات صورتحساب جزئیات صورتحساب
</h1> </h1>
</header> </header>
<span>مشخصات تحویل گیرنده</span> <span>{window.t("مشخصات تحویل گیرنده")}</span>
<br /> <br />
<div className="d-flex"> <div className="d-flex">
<div class="checkout__forms--right"> <div class="checkout__forms--right">
@ -351,9 +355,13 @@ class Cart extends Component {
<div className="mobile-cart d-flex flex-column"> <div className="mobile-cart d-flex flex-column">
<Navbar /> <Navbar />
{window.location.search.includes("NOK") ? ( {window.location.search.includes("NOK") ? (
<div>پرداخت شما با خطا مواجه شد ، لطفا مجدد تلاش نمایید</div> <div>
{window.t(
"پرداخت شما با خطا مواجه شد ، لطفا مجدد تلاش نمایید"
)}{" "}
</div>
) : null} ) : null}
<h1 style={{ fontSize: 19 }}>جزئیات صورتحساب</h1> <h1 style={{ fontSize: 19 }}>{window.t("جزئیات صورتحساب")}</h1>
<div className="d-flex"> <div className="d-flex">
<Table <Table
list={list} list={list}
@ -363,7 +371,7 @@ class Cart extends Component {
route={"cart"} route={"cart"}
/> />
</div> </div>
<span>مشخصات تحویل گیرنده</span> <span>{window.t("مشخصات تحویل گیرنده")}</span>
<br /> <br />
<div className="d-flex"> <div className="d-flex">
<div class="checkout__forms--right2"> <div class="checkout__forms--right2">
@ -430,9 +438,13 @@ class Cart extends Component {
{factorInfo.transportId ? ( {factorInfo.transportId ? (
<div className="mobile-cart__payMethods d-flex flex-column"> <div className="mobile-cart__payMethods d-flex flex-column">
<h2 style={{ fontSize: fontSize.mobile.h2 }}>روشهای ارسال</h2> <h2 style={{ fontSize: fontSize.mobile.h2 }}>
{window.t("روشهای ارسال")}
</h2>
<p style={{ fontSize: fontSize.mobile.p }}> <p style={{ fontSize: fontSize.mobile.p }}>
با توجه به شرایط یکی از دو گزینه زیر را انتخاب کنید {window.t(
"با توجه به شرایط یکی از دو گزینه زیر را انتخاب کنید"
)}{" "}
</p> </p>
<div className="d-flex justify-content-between"> <div className="d-flex justify-content-between">
@ -462,12 +474,14 @@ class Cart extends Component {
{factorInfo.payPrice} {factorInfo.payPrice}
{/* // factorInfo.transportPrice - // factorInfo.offPrice} */} {/* // factorInfo.transportPrice - // factorInfo.offPrice} */}
</strong> </strong>
<span style={{ fontSize: fontSize.mobile.h3 }}>تومان</span> <span style={{ fontSize: fontSize.mobile.h3 }}>
{window.t("تومان")}
</span>
</div> </div>
) : null} ) : null}
</div> </div>
{/* <div className="mobile-cart__payMethods d-flex flex-column"> {/* <div className="mobile-cart__payMethods d-flex flex-column">
<h2 style={{ fontSize: fontSize.mobile.h2 }}>روشهای ارسال</h2> <h2 style={{ fontSize: fontSize.mobile.h2 }}>{window.t("روشهای ارسال")}</h2>
<p style={{ fontSize: fontSize.mobile.p }}> <p style={{ fontSize: fontSize.mobile.p }}>
با توجه به شرایط یکی از دو گزینه زیر را انتخاب کنید با توجه به شرایط یکی از دو گزینه زیر را انتخاب کنید
</p> </p>

@ -153,7 +153,7 @@ class Faq extends Component {
placeholder={window.t("دنبال چه چیزی برات باشیم؟")} placeholder={window.t("دنبال چه چیزی برات باشیم؟")}
onChange={(e) => this.handleSearch(e.target.value)} onChange={(e) => this.handleSearch(e.target.value)}
/> />
<button type="submit">جستجو</button> <button type="submit">{window.t("جستجو")}</button>
</header> </header>
<div className="mobile-faq__list d-flex flex-column"> <div className="mobile-faq__list d-flex flex-column">
{!this.state.search {!this.state.search

@ -9,7 +9,7 @@ const H_DownloadApp = () => {
{window.innerWidth > 1000 ? ( {window.innerWidth > 1000 ? (
<div className="h-download-app" id="download"> <div className="h-download-app" id="download">
<div className="h-download-app-text"> <div className="h-download-app-text">
لذت یادگیری را با<span>دانوین</span> تجربه کنید لذت یادگیری را با")}<span>{window.t("دانوین")}</span> تجربه کنید
</div> </div>
<div className="h-download-app-content"> <div className="h-download-app-content">
<div className="h-download-app-content-box1"></div> <div className="h-download-app-content-box1"></div>

@ -15,11 +15,11 @@ export default class Footer extends Component {
<div className="footer-container d-flex"> <div className="footer-container d-flex">
<div className="footer-container__content d-flex"> <div className="footer-container__content d-flex">
<div className="footer-container__content--box first d-flex flex-column"> <div className="footer-container__content--box first d-flex flex-column">
<h1>دانوین کجاست؟</h1> <h1>{window.t("دانوین کجاست؟")}</h1>
<p className="mt-2"> <p className="mt-2">
ما در دانوین با هدف ایجاد زیرساخت تعاملی و آموزشی با تولید {window.t(
محتوایی جذاب بصورت کتاب قصد داریم تغییراتی بنیادین در نظام "ما در دانوین با هدف ایجاد زیرساخت تعاملی و آموزشی با تولیدمحتوایی جذاب بصورت کتاب قصد داریم تغییراتی بنیادین در نظام آموزش و پرورش کشور ایجاد کنیم."
آموزش و پرورش کشور ایجاد کنیم. )}
</p> </p>
<div className="footer__location d-flex align-items-center mt-2"> <div className="footer__location d-flex align-items-center mt-2">
<img <img
@ -27,7 +27,11 @@ export default class Footer extends Component {
alt={window.t("آدرس")} alt={window.t("آدرس")}
className="m-1" className="m-1"
/> />
<p>آدرس: تهران، میدان فردوسی، خیابان موسوی، پلاک ۳۰</p> <p>
{window.t(
"آدرس: تهران، میدان فردوسی، خیابان موسوی، پلاک ۳۰"
)}
</p>
</div> </div>
<div <div
className="d-flex align-items-center mt-1" className="d-flex align-items-center mt-1"
@ -71,7 +75,7 @@ export default class Footer extends Component {
</div> </div>
</div> </div>
<div className="footer-container__content--box second d-flex flex-column"> <div className="footer-container__content--box second d-flex flex-column">
<h1>دسترسی سریع</h1> <h1>{window.t("دسترسی سریع")}</h1>
<ul> <ul>
{fastAccess.map((item, i) => ( {fastAccess.map((item, i) => (
<li key={i}> <li key={i}>
@ -81,7 +85,7 @@ export default class Footer extends Component {
</ul> </ul>
</div> </div>
<div className="footer-container__content--box second d-flex flex-column"> <div className="footer-container__content--box second d-flex flex-column">
<h1>لینک های کاربردی</h1> <h1>{window.t("لینک های کاربردی")}</h1>
<ul> <ul>
{fastAccess.map((item, i) => ( {fastAccess.map((item, i) => (
<li key={i}> <li key={i}>
@ -93,7 +97,11 @@ export default class Footer extends Component {
</div> </div>
</div> </div>
<div className="footer__privacy d-flex align-items-center"> <div className="footer__privacy d-flex align-items-center">
<p>تمامی حقوق این وبسایت متعلق به دانوین می باشد. 1400</p> <p>
{window.t(
"تمامی حقوق این وبسایت متعلق به دانوین می باشد. 1400"
)}
</p>
</div> </div>
</footer> </footer>
) : null} ) : null}
@ -102,30 +110,22 @@ export default class Footer extends Component {
<div className="mobile-footer-container d-flex"> <div className="mobile-footer-container d-flex">
<div className="mobile-footer-container__content d-flex flex-column"> <div className="mobile-footer-container__content d-flex flex-column">
<div className="mobile-footer-container__content--box first d-flex flex-column"> <div className="mobile-footer-container__content--box first d-flex flex-column">
<h1>دانوین کجاست؟</h1> <h1>{window.t("دانوین کجاست؟")}</h1>
<p className="mt-2"> <p className="mt-2"></p>
لورم ایپسوم متن ساختگی با تولید سادگی نامفهوم از صنعت چاپ، و
با استفاده از طراحان گرافیک است، چاپگرها و متون بلکه روزنامه
و مجله در ستون و سطرآنچنان که لازم است، و برای شرایط فعلی
تکنولوژی مورد نیاز، و کاربردهای متنوع با هدف بهبود ابزارهای
کاربردی می باشد، کتابهای زیادی در شصت و سه{" "}
</p>
<div className="mobile-footer__location d-flex align-items-center mt-2"> <div className="mobile-footer__location d-flex align-items-center mt-2">
<img <img
src={location} src={location}
alt={window.t("آدرس")} alt={window.t("آدرس")}
className="m-1" className="m-1"
/> />
<p> <p></p>
تهران خیابان انقلاب اسلامی بن بست سروش پلاک 2 طبقه چهار
</p>
</div> </div>
<div <div
className="d-flex align-items-center mt-1" className="d-flex align-items-center mt-1"
style={{ width: "55%", justifyContent: "space-between" }} style={{ width: "55%", justifyContent: "space-between" }}
> >
<div className="d-flex align-items-center"> <div className="d-flex align-items-center">
<span>02163462405</span> <span></span>
<img <img
src={contact} src={contact}
alt={window.t("تماس")} alt={window.t("تماس")}
@ -149,7 +149,7 @@ export default class Footer extends Component {
</ul> </ul>
</div> </div>
<div className="mobile-footer-container__content--box second d-flex flex-column"> <div className="mobile-footer-container__content--box second d-flex flex-column">
<h1>دسترسی سریع</h1> <h1>{window.t("دسترسی سریع")}</h1>
<ul> <ul>
{fastAccess.map((item) => ( {fastAccess.map((item) => (
<li> <li>
@ -161,7 +161,11 @@ export default class Footer extends Component {
</div> </div>
</div> </div>
<div className="mobile-footer__privacy d-flex align-items-center"> <div className="mobile-footer__privacy d-flex align-items-center">
<p>تمامی حقوق این وبسایت متعلق به دانوین می باشد. 1400</p> <p>
{window.t(
"تمامی حقوق این وبسایت متعلق به دانوین می باشد. 1400"
)}
</p>
</div> </div>
</footer> </footer>
) : null} ) : null}

@ -1,36 +1,40 @@
import React, { Component } from 'react'; import React, { Component } from "react";
import {Link} from 'react-router-dom'; import { Link } from "react-router-dom";
import './index.scss'; import "./index.scss";
export default class Product extends Component { export default class Product extends Component {
render() { render() {
const { data, number } = this.props; const { data, number } = this.props;
return( return (
<article style={{minWidth : window.innerWidth / number}} className="scroll-product d-flex flex-column"> <article
style={{ minWidth: window.innerWidth / number }}
className="scroll-product d-flex flex-column"
>
<Link to={`/books/${data.id}`}> <Link to={`/books/${data.id}`}>
<img src={data.image} alt={data.title} /> <img src={data.image} alt={data.title} />
<h1>{data.title}</h1> <h1>{data.title}</h1>
<h2>{data.subTitle}</h2> <h2>{data.subTitle}</h2>
{ {data.price ? (
data.price ?
<div className="scroll-product__price d-flex flex-column align-items-center"> <div className="scroll-product__price d-flex flex-column align-items-center">
{ {data.oldPrice ? (
data.oldPrice ?
<div> <div>
<div className="scroll-product__price--old d-flex"> <div className="scroll-product__price--old d-flex">
{data.oldPrice} تومان {data.oldPrice} تومان
<span></span> <span></span>
</div> </div>
</div>
</div> : null ) : null}
} <div className="scroll-product__price--price">
<div className="scroll-product__price--price">{data.price} تومان</div> {data.price} تومان
</div> : </div>
<div className="scroll-product__notAvailabe">ناموجود</div> </div>
} ) : (
<div className="scroll-product__notAvailabe">
{window.t("ناموجود")}
</div>
)}
</Link> </Link>
</article> </article>
); );
} }
} }

@ -42,7 +42,7 @@ class HomeSearch extends Component {
<Select options={levels} name="levels" parent={this} /> <Select options={levels} name="levels" parent={this} />
{/* <img src={dropdown} alt={window.t("فلش") style={{ position: "relative" }} /> */} {/* <img src={dropdown} alt={window.t("فلش") style={{ position: "relative" }} /> */}
</div> </div>
<button className="home-search__submit">جستجو</button> <button className="home-search__submit">{window.t("جستجو")}</button>
</div> </div>
) : ( ) : (
<> <>

@ -125,7 +125,9 @@ export default class Simple extends Component {
className="d-flex flex-column" className="d-flex flex-column"
style={{ fontSize: "12px" }} style={{ fontSize: "12px" }}
> >
<span>مطالعه کامل در {data.duration} دقیقه</span> <span>
{window.t("مطالعه کامل در {data.duration} دقیقه")}
</span>
<span> <span>
تاریخ انتشار {moment(data.createdAt).format("YYYY/MM/DD")} تاریخ انتشار {moment(data.createdAt).format("YYYY/MM/DD")}
</span> </span>

@ -33,7 +33,9 @@ const SimpleHeader = (props) => {
to={props.link} to={props.link}
className="home-scroll__header--more d-flex align-items-center" className="home-scroll__header--more d-flex align-items-center"
> >
<span style={{ fontSize: fontSize.desktop.h1 }}>بیشتر</span> <span style={{ fontSize: fontSize.desktop.h1 }}>
{window.t("بیشتر")}
</span>
<img src={dropdown} alt={window.t("فلش")} /> <img src={dropdown} alt={window.t("فلش")} />
</Link> </Link>
) : null} ) : null}
@ -45,15 +47,6 @@ const SimpleHeader = (props) => {
<h1>{props.title}</h1> <h1>{props.title}</h1>
<span></span> <span></span>
</div> </div>
{/* {props.more ? (
<Link
to={props.link}
className="mobile-home-scroll__header--more d-flex align-items-center"
>
<span>بیشتر</span>
<img src={dropdown} alt={window.t("فلش")} />
</Link>
) : null} */}
</div> </div>
) : null} ) : null}
</> </>
@ -69,13 +62,6 @@ const TabHeader = (props) => {
<h1 style={{ fontSize: fontSize.desktop.h1 }}>{props.title}</h1> <h1 style={{ fontSize: fontSize.desktop.h1 }}>{props.title}</h1>
<span></span> <span></span>
</div> </div>
{/* <Link
to={props.link}
className="home-scroll__header--more d-flex align-items-center"
>
<span style={{ fontSize: fontSize.desktop.h1 }}>بیشتر</span>
<img src={dropdown} alt={window.t("فلش")} />
</Link> */}
</div> </div>
) : null} ) : null}
{window.innerWidth < 1000 ? ( {window.innerWidth < 1000 ? (
@ -84,10 +70,6 @@ const TabHeader = (props) => {
<h1>{props.title}</h1> <h1>{props.title}</h1>
<span></span> <span></span>
</div> </div>
{/* <div className="mobile-home-scroll__header--more d-flex align-items-center">
<span>بیشتر</span>
<img src={dropdown} alt={window.t("فلش")} />
</div> */}
</div> </div>
) : null} ) : null}
</> </>

@ -11,14 +11,14 @@ class Membership extends Component {
<div className="membership d-flex"> <div className="membership d-flex">
<div className="d-flex flex-column"> <div className="d-flex flex-column">
<h1> <h1>
<strong>دانوینی</strong> شو <strong>{window.t("دانوینی")}</strong> شو
</h1> </h1>
<p>مشخصات خودت رو وارد کنید و امتیاز هدیه بگیرید</p> <p>{window.t("مشخصات خودت رو وارد کنید و امتیاز هدیه بگیرید")}</p>
</div> </div>
<div className="d-flex"> <div className="d-flex">
<Input label={window.t("نام و نام خانوادگی")} name={"name"} /> <Input label={window.t("نام و نام خانوادگی")} name={"name"} />
<Input label={window.t("شماره تماس")} name={"mobile"} /> <Input label={window.t("شماره تماس")} name={"mobile"} />
<button className="membership__submit">ثبت </button> <button className="membership__submit">{window.t("ثبت ")}</button>
</div> </div>
</div> </div>
) : null} ) : null}
@ -26,9 +26,9 @@ class Membership extends Component {
<div className="mobile-membership d-flex"> <div className="mobile-membership d-flex">
<div className="d-flex flex-column"> <div className="d-flex flex-column">
<h1> <h1>
<strong>دانوینی</strong> شو <strong>{window.t("دانوینی")}</strong> شو
</h1> </h1>
<p>مشخصات خودت رو وارد کنید و امتیاز هدیه بگیرید</p> <p>{window.t("مشخصات خودت رو وارد کنید و امتیاز هدیه بگیرید")}</p>
</div> </div>
<div className="d-flex flex-column align-items-center"> <div className="d-flex flex-column align-items-center">
<div> <div>
@ -37,7 +37,9 @@ class Membership extends Component {
<div> <div>
<Input label={window.t("شماره تماس")} name={"mobile"} /> <Input label={window.t("شماره تماس")} name={"mobile"} />
</div> </div>
<button className="mobile-membership__submit">ثبت </button> <button className="mobile-membership__submit">
{window.t("ثبت ")}
</button>
</div> </div>
</div> </div>
) : null} ) : null}

@ -112,13 +112,13 @@ class LaptopNavbar extends Component {
onClose={() => this.setState({ dropdown: false })} onClose={() => this.setState({ dropdown: false })}
> >
<MenuItem onClick={() => this.setState({ dropdown: false })}> <MenuItem onClick={() => this.setState({ dropdown: false })}>
<Link to={"/profile"}>ویرایش مشخصات</Link> <Link to={"/profile"}>{window.t("ویرایش مشخصات")}</Link>
</MenuItem> </MenuItem>
<MenuItem onClick={() => this.setState({ dropdown: false })}> <MenuItem onClick={() => this.setState({ dropdown: false })}>
<Link to={"/orders"}>پیگری سفارشات</Link> <Link to={"/orders"}>{window.t("پیگری سفارشات")}</Link>
</MenuItem> </MenuItem>
<MenuItem onClick={() => this.setState({ dropdown: false })}> <MenuItem onClick={() => this.setState({ dropdown: false })}>
<Link to={"/myBooks"}>کتاب های من</Link> <Link to={"/myBooks"}>{window.t("کتاب های من")}</Link>
</MenuItem> </MenuItem>
<MenuItem <MenuItem
onClick={() => { onClick={() => {

@ -223,7 +223,7 @@ class NavbarDrawer extends Component {
<AddCircleOutlineRoundedIcon <AddCircleOutlineRoundedIcon
style={{ fontSize: 30, color: "#777", margin: "0px 8px" }} style={{ fontSize: 30, color: "#777", margin: "0px 8px" }}
/> />
<div>اضافه کردن کاربر </div> <div>{window.t("اضافه کردن کاربر ")}</div>
{/* {item.message && <div class="badge">{item.message}</div>} */} {/* {item.message && <div class="badge">{item.message}</div>} */}
</div> </div>
</Link> </Link>
@ -248,7 +248,7 @@ class NavbarDrawer extends Component {
))} ))}
{/* <div className="navbar-drawer__bottom--version d-flex"> {/* <div className="navbar-drawer__bottom--version d-flex">
<span>نسخه نرمافزار 3.1</span> <span>{window.t("نسخه نرمافزار 3.1</span>
</div> */} </div> */}
</div> </div>
</div> </div>

@ -30,7 +30,7 @@ class MyBooks extends Component {
return ( return (
<div className="mybooks"> <div className="mybooks">
<Navbar /> <Navbar />
<div className="mybooks-title">کتاب های من</div> <div className="mybooks-title">{window.t("کتاب های من")}</div>
<div className="mybooks-tabs"> <div className="mybooks-tabs">
<div className="mybooks-tabs-item mybooks-tabs-item1 mybooks-tabs-active"> <div className="mybooks-tabs-item mybooks-tabs-item1 mybooks-tabs-active">
فعال سازی شده فعال سازی شده
@ -67,7 +67,7 @@ class MyBooks extends Component {
کد فعالسازی: {item.activationCode} کد فعالسازی: {item.activationCode}
</div> </div>
<div className="d-flex justify-content-around mybooks-main-content_bottoms"> <div className="d-flex justify-content-around mybooks-main-content_bottoms">
<Link to="/qr-scan"> اسکن بارکد</Link> <Link to="/qr-scan"> اسکن بارکد")}</Link>
{window.innerWidth < 1000 ? ( {window.innerWidth < 1000 ? (
<a <a
href={`https://ar.dnvn.ir/lunch?id=${item.product?.ARId}`} href={`https://ar.dnvn.ir/lunch?id=${item.product?.ARId}`}

@ -52,7 +52,7 @@ class MyBooks extends React.Component {
برای استفاده از این بخش باید یک کتاب فعال خریداری کرده برای استفاده از این بخش باید یک کتاب فعال خریداری کرده
باشید باشید
</p> </p>
<Link to="/products">فروشگاه</Link> <Link to="/products">{window.t("فروشگاه")}</Link>
</div> </div>
)} )}
</div> </div>
@ -86,7 +86,7 @@ class MyBooks extends React.Component {
برای استفاده از این بخش باید یک کتاب فعال خریداری کرده برای استفاده از این بخش باید یک کتاب فعال خریداری کرده
باشید باشید
</p> </p>
<Link to="/products">فروشگاه</Link> <Link to="/products">{window.t("فروشگاه")}</Link>
</div> </div>
)} )}
</div> </div>

@ -206,7 +206,9 @@ class NewProfile extends Component {
{window.innerWidth > 1000 ? ( {window.innerWidth > 1000 ? (
<div className="auth-profile d-flex justify-content-center"> <div className="auth-profile d-flex justify-content-center">
<div className="auth-profile__box d-flex flex-column p-4"> <div className="auth-profile__box d-flex flex-column p-4">
<h1 style={{ fontSize: fontSize.desktop.h1 }}>حساب کاربری</h1> <h1 style={{ fontSize: fontSize.desktop.h1 }}>
{window.t("حساب کاربری")}
</h1>
<p style={{ fontSize: fontSize.desktop.p }}> <p style={{ fontSize: fontSize.desktop.p }}>
لطفا مشخصات خود را به صورت کامل نمایید. لطفا مشخصات خود را به صورت کامل نمایید.
</p> </p>
@ -381,7 +383,7 @@ class NewProfile extends Component {
/> />
</div> </div>
<div className="auth-profile__box--form__footer d-flex justify-content-center"> <div className="auth-profile__box--form__footer d-flex justify-content-center">
<button>ذخیره</button> <button>{window.t("ذخیره")}</button>
</div> </div>
</div> </div>
</form> </form>
@ -391,9 +393,11 @@ class NewProfile extends Component {
{window.innerWidth < 1000 ? ( {window.innerWidth < 1000 ? (
<div className="mobile-auth-profile d-flex flex-column"> <div className="mobile-auth-profile d-flex flex-column">
<img src={logo} alt="دانوین" /> <img src={logo} alt="دانوین" />
<h1 style={{ fontSize: fontSize.mobile.h1 }}>افزودن کاربر جدید</h1> <h1 style={{ fontSize: fontSize.mobile.h1 }}>
{window.t("افزودن کاربر جدید")}
</h1>
<p style={{ fontSize: fontSize.mobile.p }}> <p style={{ fontSize: fontSize.mobile.p }}>
لطفا مشحصات خود را به صورت کامل وارد نمایید {window.t("لطفا مشحصات خود را به صورت کامل وارد نمایید")}{" "}
</p> </p>
<Upload name="file" parent={this} /> <Upload name="file" parent={this} />
<Input <Input
@ -517,7 +521,9 @@ class NewProfile extends Component {
name="address" name="address"
/> />
<div className="mobile-auth-profile__footer d-flex justify-content-center"> <div className="mobile-auth-profile__footer d-flex justify-content-center">
<button onClick={() => this.onSubmit()}>ذخیره</button> <button onClick={() => this.onSubmit()}>
{window.t("ذخیره")}
</button>
</div> </div>
</div> </div>
) : null} ) : null}

@ -85,12 +85,12 @@ class Orders extends Component {
<div className="order-data-container-item-row3 d-flex"> <div className="order-data-container-item-row3 d-flex">
<div className="order-data-container-item-row3-order-price "> <div className="order-data-container-item-row3-order-price ">
مبلغ : <span>{item.payPrice}</span>{" "} مبلغ : <span>{item.payPrice}</span>{" "}
<span className="odcir2op-unit">تومان</span> <span className="odcir2op-unit">{window.t("تومان")}</span>
</div> </div>
<div className="order-data-container-item-row3-order-offcodeprice"> <div className="order-data-container-item-row3-order-offcodeprice">
تخفیف : <span>{item.offPrice}</span>{" "} تخفیف : <span>{item.offPrice}</span>{" "}
<span className="odcir2oo-unit">تومان</span> <span className="odcir2oo-unit">{window.t("تومان")}</span>
</div> </div>
</div> </div>
<div className="order-data-container-item-row4"> <div className="order-data-container-item-row4">
@ -123,7 +123,9 @@ class Orders extends Component {
</div> </div>
))} ))}
{data == null && ( {data == null && (
<div className="order-message">سفارشی برای نماش وجود ندارد</div> <div className="order-message">
{window.t("سفارشی برای نماش وجود ندارد")}
</div>
)} )}
</div> </div>
</div> </div>

@ -277,7 +277,9 @@ class Product extends Component {
</div> </div>
</header> </header>
<div className="mobile-product__abstraction d-flex flex-column"> <div className="mobile-product__abstraction d-flex flex-column">
<h3 style={{ fontSize: fontSize.mobile.h3 }}>معرفی کتاب</h3> <h3 style={{ fontSize: fontSize.mobile.h3 }}>
{window.t("معرفی کتاب")}
</h3>
<p style={{ fontSize: fontSize.mobile.p }}> <p style={{ fontSize: fontSize.mobile.p }}>
{info.description || window.t("توضیحات محصول خالیست")} {info.description || window.t("توضیحات محصول خالیست")}
</p> </p>

@ -35,7 +35,9 @@ export default class AppliedFilters extends React.Component {
<div className="products-filters-applied d-flex flex-column"> <div className="products-filters-applied d-flex flex-column">
<header className="products-filters-applied__header d-flex align-items-center"> <header className="products-filters-applied__header d-flex align-items-center">
<span></span> <span></span>
<h2 style={{ fontSize: fontSize.h2 }}>فیلترهای اعمال شده</h2> <h2 style={{ fontSize: fontSize.h2 }}>
{window.t("فیلترهای اعمال شده")}
</h2>
</header> </header>
<div className="products-filters-applied__items d-flex flex-wrap"> <div className="products-filters-applied__items d-flex flex-wrap">
{data.level.map((item, i) => ( {data.level.map((item, i) => (

@ -23,7 +23,7 @@ class List extends React.Component {
<Product product={item} key={i} /> <Product product={item} key={i} />
)) ))
) : ( ) : (
<div>محصولی با این مشخصات یافت نشد</div> <div>{window.t("محصولی با این مشخصات یافت نشد")}</div>
// (Array.isArray(list) ? list : []).map((item, i) => ( // (Array.isArray(list) ? list : []).map((item, i) => (
// <Product product={item} key={i} /> // <Product product={item} key={i} />

@ -66,8 +66,8 @@ function Product(props) {
to={`/products/physical/${product.id}`} to={`/products/physical/${product.id}`}
className="mobile-products-product__links--physical d-flex justify-content-between align-items-center" className="mobile-products-product__links--physical d-flex justify-content-between align-items-center"
> >
<h2> نسخه چاپی</h2> <h2> نسخه چاپی")}</h2>
<span>{product.product[0].price} تومان</span> <span>{product.product[0].price} تومان")}</span>
</Link> </Link>
<div <div
className="mobile-products-product__links--basket d-flex" className="mobile-products-product__links--basket d-flex"
@ -97,10 +97,10 @@ function Product(props) {
to={`/products/digital/${product.id}`} to={`/products/digital/${product.id}`}
className="mobile-products-product__links--ar d-flex justify-content-between align-items-center" className="mobile-products-product__links--ar d-flex justify-content-between align-items-center"
> >
<h2> الکترونیکی</h2> <h2> الکترونیکی")}</h2>
{/* <span>{product.product[0].price} تومان</span> {/* <span>{product.product[0].price} تومان")}</span>
<span> به زودی</span> <span> به زودی")}</span>
</span> </span>
<div <div
className="mobile-products-product__links--basket d-flex" className="mobile-products-product__links--basket d-flex"
@ -141,7 +141,7 @@ function Product(props) {
style={{ fontSize: 12 }} style={{ fontSize: 12 }}
className="products-product--physical d-flex justify-content-between align-items-center" className="products-product--physical d-flex justify-content-between align-items-center"
> >
<h2 style={{ fontSize: 12 }}>نسخه چاپی</h2> <h2 style={{ fontSize: 12 }}>{window.t("نسخه چاپی")}</h2>
<span style={{ fontSize: 12 }}> <span style={{ fontSize: 12 }}>
{product.product[0].price} تومان {product.product[0].price} تومان
</span> </span>
@ -174,7 +174,7 @@ function Product(props) {
to={`/products/digital/${product.id}`} to={`/products/digital/${product.id}`}
className="products-product--ar d-flex justify-content-between align-items-center" className="products-product--ar d-flex justify-content-between align-items-center"
> >
<h2 style={{ fontSize: 12 }}>نسخه الکترونیک</h2> <h2 style={{ fontSize: 12 }}>{window.t("نسخه الکترونیک</h2>
<span style={{ fontSize: 12 }}> <span style={{ fontSize: 12 }}>
{/* {product.product[0].price} تومان {/* {product.product[0].price} تومان
به زودی به زودی

@ -16,7 +16,9 @@ export default class Sort extends React.Component {
return ( return (
<div className="products-sort d-flex align-items-center"> <div className="products-sort d-flex align-items-center">
<SortIcon style={{ fontSize: 30, color: "#A5A5A5", marginLeft: 10 }} /> <SortIcon style={{ fontSize: 30, color: "#A5A5A5", marginLeft: 10 }} />
<span style={{ fontSize: fontSize.span }}>مرتب سازی بر اساس</span> <span style={{ fontSize: fontSize.span }}>
{window.t("مرتب سازی بر اساس")}
</span>
<ul className="d-flex align-items-center mr-2"> <ul className="d-flex align-items-center mr-2">
{parent.props.sortItems.map((item, i) => ( {parent.props.sortItems.map((item, i) => (
<Item <Item

@ -25,7 +25,9 @@ export default function BookContent(props) {
return ( return (
<div className="book-content d-flex flex-column mt-4"> <div className="book-content d-flex flex-column mt-4">
<header className="book-content__header d-flex align-items-center"> <header className="book-content__header d-flex align-items-center">
<h2 style={{ fontSize: fontSize.desktop.h2 }}>محتویات کتاب</h2> <h2 style={{ fontSize: fontSize.desktop.h2 }}>
{window.t("محتویات کتاب")}
</h2>
<span></span> <span></span>
</header> </header>
{props.data.map((item, i) => ( {props.data.map((item, i) => (

@ -26,7 +26,8 @@ export default function Links(props) {
{window.innerWidth < 1000 ? ( {window.innerWidth < 1000 ? (
<div className="mobile-links-box d-flex flex-column" id="links"> <div className="mobile-links-box d-flex flex-column" id="links">
<h2 style={{ fontSize: fontSize.mobile.h2 }}> <h2 style={{ fontSize: fontSize.mobile.h2 }}>
<span></span>لینکها <span></span>
{window.t("لینکها")}
</h2> </h2>
<ul> <ul>
{props.data.links.map((item, i) => ( {props.data.links.map((item, i) => (

@ -147,8 +147,11 @@ class QR extends Component {
<div <div
style={{ fontSize: fontSize.desktop.sidebar.div }} style={{ fontSize: fontSize.desktop.sidebar.div }}
> >
شما در حال مطالعه{" "} {window.t("شما در حال مطالعه")}
<strong>صفحه {qrList.book.pagesNum}</strong> هستید. <strong>
{window.t("صفحه")}
{qrList.book.pagesNum} {window.t("هستید.")}
</strong>
</div> </div>
</div> </div>
</header> </header>

@ -37,7 +37,9 @@ export default function LastQR(props) {
</div> </div>
</div> </div>
<div className="mobile-last-qr__left d-flex"> <div className="mobile-last-qr__left d-flex">
<button>صفحه {data.pagesNum}</button> <button>
{window.t("صفحه")} {data.pagesNum}
</button>
</div> </div>
</Link> </Link>
) : null} ) : null}

@ -31,16 +31,16 @@ class QRModal extends Component {
{window.innerWidth < 1000 ? ( {window.innerWidth < 1000 ? (
<div className="mobile-qr-modal d-flex flex-column justify-content-center align-items-center"> <div className="mobile-qr-modal d-flex flex-column justify-content-center align-items-center">
<span style={{ fontSize: fontSize.mobile.span }}> <span style={{ fontSize: fontSize.mobile.span }}>
اسکن کد QR موفقیت آمیز بود. {window.t("اسکن کد QR موفقیت آمیز بود.")}{" "}
</span> </span>
{hasO4 ? ( {hasO4 ? (
<> <>
<div className="o4" style={{ color: "#fff", width: "90%" }}> <div className="o4" style={{ color: "#fff", width: "90%" }}>
<div>کتاب علوم چهارم</div> <div>{window.t("کتاب علوم چهارم")}</div>
<span style={{ marginTop: 10 }}> <span style={{ marginTop: 10 }}>
لطفا شماره صفحه را وارد نمایید {window.t("لطفا شماره صفحه را وارد نمایید")}{" "}
</span> </span>
<div className="d-flex" style={{ justifyContent: "center" }}> <div className="d-flex" style={{ justifyContent: "center" }}>
<Input <Input
@ -85,7 +85,7 @@ class QRModal extends Component {
{tail} {tail}
</Link> </Link>
<button onClick={() => parent.setState({ tail: null })}> <button onClick={() => parent.setState({ tail: null })}>
انصراف {window.t("انصراف")}{" "}
</button> </button>
</> </>
)} )}
@ -93,12 +93,12 @@ class QRModal extends Component {
) : ( ) : (
<div className="qr-modal d-flex flex-column justify-content-center align-items-center"> <div className="qr-modal d-flex flex-column justify-content-center align-items-center">
<span style={{ fontSize: fontSize.mobile.span }}> <span style={{ fontSize: fontSize.mobile.span }}>
اسکن کد QR موفقیت آمیز بود. {window.t("اسکن کد QR موفقیت آمیز بود.")}{" "}
</span> </span>
{hasO4 ? ( {hasO4 ? (
<> <>
<div className="o4" style={{ color: "#fff" }}> <div className="o4" style={{ color: "#fff" }}>
<div>کتاب علوم چهارم</div> <div>{window.t("کتاب علوم چهارم")}</div>
<div className="d-flex" style={{ justifyContent: "center" }}> <div className="d-flex" style={{ justifyContent: "center" }}>
<span style={{ marginTop: 10 }}> <span style={{ marginTop: 10 }}>
لطفا شماره صفحه را وارد نمایید لطفا شماره صفحه را وارد نمایید

@ -55,7 +55,9 @@ class QRScan extends Component {
<Navbar /> <Navbar />
<div className="qr-scan__box d-flex flex-column"> <div className="qr-scan__box d-flex flex-column">
<header className="qr-scan__box--header d-flex flex-column"> <header className="qr-scan__box--header d-flex flex-column">
<h1 style={{ fontSize: fontSize.desktop.h1 }}>نکته</h1> <h1 style={{ fontSize: fontSize.desktop.h1 }}>
{window.t("نکته")}
</h1>
<p style={{ fontSize: fontSize.desktop.p }}> <p style={{ fontSize: fontSize.desktop.p }}>
لطفا دوربین خود را روی کدی که در اختیار شما قرار گرفته قرار لطفا دوربین خود را روی کدی که در اختیار شما قرار گرفته قرار
دهید تا اسکن دوربین انجام شود دهید تا اسکن دوربین انجام شود
@ -67,8 +69,10 @@ class QRScan extends Component {
this.setState({ facingMode: e.target.value }) this.setState({ facingMode: e.target.value })
} }
> >
<option value="environment">دوربین عقب</option> <option value="environment">
<option value="user">دوربین جلو</option> {window.t("دوربین عقب")}
</option>
<option value="user">{window.t("دوربین جلو")}</option>
</select> </select>
</div> </div>
<section className="qr-scan__box--camera d-flex justify-content-center align-items-center"> <section className="qr-scan__box--camera d-flex justify-content-center align-items-center">
@ -99,9 +103,7 @@ class QRScan extends Component {
<> <>
<div className="mobile-qr-scan d-flex flex-column"> <div className="mobile-qr-scan d-flex flex-column">
<Navbar page="qr-scan" /> <Navbar page="qr-scan" />
{/* <div className="mobile-qr-scan__back d-flex">
<Link to="/">بازگشت</Link>
</div> */}
<header className="mobile-qr-scan__header d-flex flex-column"></header> <header className="mobile-qr-scan__header d-flex flex-column"></header>
<section className="mobile-qr-scan__camera d-flex justify-content-center align-items-center"> <section className="mobile-qr-scan__camera d-flex justify-content-center align-items-center">

Loading…
Cancel
Save