ultimatepos/PERSIAN_README.md

6.9 KiB
Raw Permalink Blame History

راهنمای فارسی‌سازی کامل UltimatePOS

کارهای انجام شده

1. ترجمه فایل‌های زبان

فایل‌های ترجمه فارسی در پوشه lang/fa/ ایجاد شده‌اند:

  • messages.php - پیام‌های عمومی
  • home.php - صفحه اصلی
  • product.php - محصولات
  • sale.php - فروش
  • purchase.php - خرید
  • contact.php - مخاطبین
  • auth.php - احراز هویت
  • business.php - کسب‌وکار
  • validation.php - اعتبارسنجی
  • pagination.php - صفحه‌بندی
  • passwords.php - رمز عبور
  • report.php - گزارش‌ها
  • category.php - دسته‌بندی‌ها
  • brand.php - برندها
  • unit.php - واحدها
  • user.php - کاربران
  • role.php - نقش‌ها
  • expense.php - هزینه‌ها
  • invoice.php - فاکتورها
  • cash_register.php - صندوق
  • stock_adjustment.php - تعدیل موجودی
  • tax_rate.php - نرخ مالیات
  • barcode.php - بارکد
  • printer.php - چاپگر
  • receipt.php - رسید
  • restaurant.php - رستوران
  • account.php - حساب‌ها
  • tooltip.php - راهنماها
  • lang_v1.php - ترجمه‌های اضافی (کپی شده برای ترجمه بعدی)

2. پشتیبانی RTL

  • فارسی به لیست زبان‌های RTL در config/constants.php اضافه شد
  • فایل CSS سفارشی فارسی public/css/persian-rtl.css ایجاد شد
  • فونت Vazir برای فارسی اضافه شد
  • پشتیبانی RTL برای تمام کامپوننت‌ها (جداول، فرم‌ها، مودال‌ها، و...)
  • فایل CSS فارسی به resources/views/layouts/partials/css.blade.php اضافه شد

3. تنظیمات سیستم

  • زبان فارسی به config/constants.php اضافه شد:
    'fa' => ['full_name' => 'Persian - فارسی', 'short_name' => 'Persian']
    
  • فارسی به لیست زبان‌های RTL اضافه شد:
    'langs_rtl' => ['ar', 'fa']
    

📋 مراحل نصب و فعال‌سازی

مرحله 1: پاکسازی Cache

php artisan cache:clear
php artisan config:clear
php artisan view:clear
php artisan route:clear

مرحله 2: تنظیم زبان پیش‌فرض (اختیاری)

برای تنظیم فارسی به عنوان زبان پیش‌فرض، فایل .env را ویرایش کنید:

APP_LOCALE=fa

یا در config/app.php:

'locale' => 'fa',

مرحله 3: تنظیم زبان برای کاربران

کاربران می‌توانند از طریق پنل کاربری خود زبان را به فارسی تغییر دهند:

  1. وارد پنل شوید
  2. به Settings > Business Settings بروید
  3. در قسمت Language گزینه Persian - فارسی را انتخاب کنید
  4. ذخیره کنید

مرحله 4: تنظیمات دیتابیس برای فارسی

برای پشتیبانی کامل از زبان فارسی، اطمینان حاصل کنید که دیتابیس با charset utf8mb4 ایجاد شده است:

ALTER DATABASE your_database_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

در فایل config/database.php:

'mysql' => [
    'charset' => 'utf8mb4',
    'collation' => 'utf8mb4_unicode_ci',
],

مرحله 5: تنظیمات منطقه زمانی (اختیاری)

برای تنظیم منطقه زمانی ایران در .env:

APP_TIMEZONE=Asia/Tehran

🎨 ویژگی‌های RTL

فونت فارسی

سیستم از فونت Vazir استفاده می‌کند که یک فونت فارسی زیبا و خوانا است.

پشتیبانی کامل RTL

  • منوها و سایدبار
  • جداول و لیست‌ها
  • فرم‌ها و ورودی‌ها
  • مودال‌ها و پاپ‌آپ‌ها
  • دکمه‌ها و dropdown ها
  • صفحه POS
  • فاکتورها و رسیدها
  • گزارش‌ها
  • داشبورد

🔧 سفارشی‌سازی بیشتر

تغییر فونت

برای تغییر فونت، فایل public/css/persian-rtl.css را ویرایش کنید:

@font-face {
    font-family: 'YourFont';
    src: url('path/to/your/font.woff2') format('woff2');
}

html[lang="fa"] * {
    font-family: 'YourFont', 'Tahoma', 'Arial', sans-serif !important;
}

تنظیمات اضافی CSS

می‌توانید استایل‌های سفارشی خود را به انتهای فایل persian-rtl.css اضافه کنید.

📝 نکات مهم

  1. تاریخ شمسی: برای استفاده از تاریخ شمسی، باید یک پکیج مناسب نصب کنید:

    composer require morilog/jalali
    
  2. اعداد فارسی: برای تبدیل اعداد به فارسی، می‌توانید از توابع PHP استفاده کنید یا یک helper ایجاد کنید.

  3. ترجمه کامل: فایل lang_v1.php شامل بیش از 1500 خط ترجمه است که می‌تواند به تدریج ترجمه شود.

🐛 عیب‌یابی

مشکل: فونت فارسی نمایش داده نمی‌شود

راه حل: Cache مرورگر را پاک کنید یا در حالت Incognito تست کنید.

مشکل: RTL کار نمی‌کند

راه حل:

  1. Cache Laravel را پاک کنید
  2. اطمینان حاصل کنید که زبان فارسی در تنظیمات کاربری انتخاب شده است
  3. فایل persian-rtl.css را بررسی کنید که بارگذاری شده باشد

مشکل: متن‌ها ترجمه نمی‌شوند

راه حل:

  1. فایل‌های ترجمه در lang/fa/ را بررسی کنید
  2. Cache را پاک کنید
  3. مطمئن شوید که کلیدهای ترجمه صحیح هستند

📞 پشتیبانی

برای مشکلات و سوالات:

  • بررسی فایل‌های log در storage/logs/
  • بررسی Console مرورگر برای خطاهای JavaScript
  • بررسی Network tab برای بارگذاری فایل‌های CSS

ویژگی‌های آینده

  • ترجمه کامل فایل lang_v1.php
  • پشتیبانی از تاریخ شمسی
  • تبدیل خودکار اعداد به فارسی
  • ترجمه پیام‌های خطا و اعتبارسنجی
  • ترجمه ماژول‌های اضافی (CRM, Manufacturing, و...)

🎉 نتیجه

سیستم UltimatePOS شما اکنون به طور کامل از زبان فارسی و RTL پشتیبانی می‌کند!

برای فعال‌سازی:

  1. Cache را پاک کنید
  2. وارد سیستم شوید
  3. زبان را به فارسی تغییر دهید
  4. از سیستم فارسی خود لذت ببرید! 🚀