mirror of
https://github.com/chillpadclub/bedolaga-cabinet.git
synced 2026-07-28 09:33:46 +00:00
feat: публичные лендинг-страницы для быстрой покупки VPN-подписок
- QuickPurchase: публичная страница покупки с выбором тарифа/периода/оплаты - PurchaseSuccess: статус покупки с поллингом и копированием ссылки - AdminLandings: управление лендингами (создание, сортировка, удаление) - AdminLandingEditor: полнофункциональный редактор лендинга - API-клиент landings.ts для всех эндпоинтов - Роутинг /buy/:slug и /buy/success/:token - Локализация ru/en/zh/fa для всех текстов лендинга - Санитизация HTML/CSS, rate limit защита, DOMPurify
This commit is contained in:
@@ -866,7 +866,8 @@
|
||||
"roleAssign": "تخصیص نقش",
|
||||
"policies": "سیاستهای دسترسی",
|
||||
"auditLog": "گزارش بازرسی",
|
||||
"salesStats": "آمار فروش"
|
||||
"salesStats": "آمار فروش",
|
||||
"landings": "صفحات فرود"
|
||||
},
|
||||
"panel": {
|
||||
"title": "پنل مدیریت",
|
||||
@@ -899,7 +900,8 @@
|
||||
"roleAssignDesc": "تخصیص و لغو نقشهای کاربران",
|
||||
"policiesDesc": "تنظیم سیاستهای کنترل دسترسی ABAC",
|
||||
"auditLogDesc": "بررسی فعالیت سیستم و تاریخچه دسترسی",
|
||||
"salesStatsDesc": "تحلیل فروش و روندها"
|
||||
"salesStatsDesc": "تحلیل فروش و روندها",
|
||||
"landingsDesc": "صفحات خرید سریع"
|
||||
},
|
||||
"salesStats": {
|
||||
"title": "آمار فروش",
|
||||
@@ -2864,6 +2866,51 @@
|
||||
"loadFailed": "بارگذاری گزارش بازرسی ناموفق بود",
|
||||
"retry": "تلاش مجدد"
|
||||
}
|
||||
},
|
||||
"landings": {
|
||||
"title": "صفحات فرود",
|
||||
"create": "ایجاد صفحه فرود",
|
||||
"edit": "ویرایش",
|
||||
"slug": "شناسه URL",
|
||||
"slugHint": "حروف کوچک، اعداد و خط تیره",
|
||||
"pageTitle": "عنوان",
|
||||
"subtitle": "زیرعنوان",
|
||||
"footerText": "متن پاورقی (HTML)",
|
||||
"features": "ویژگیها",
|
||||
"addFeature": "افزودن",
|
||||
"featureIcon": "آیکون",
|
||||
"featureTitle": "عنوان",
|
||||
"featureDesc": "توضیحات",
|
||||
"tariffs": "طرحها",
|
||||
"selectTariffs": "انتخاب طرحها",
|
||||
"periods": "دورهها",
|
||||
"paymentMethods": "روشهای پرداخت",
|
||||
"addMethod": "افزودن روش",
|
||||
"methodId": "شناسه روش",
|
||||
"methodName": "نام",
|
||||
"methodDesc": "توضیحات",
|
||||
"methodIcon": "URL آیکون",
|
||||
"gifts": "هدایا",
|
||||
"giftEnabled": "خرید هدیه",
|
||||
"customCss": "CSS",
|
||||
"seo": "SEO",
|
||||
"metaTitle": "عنوان متا",
|
||||
"metaDesc": "توضیحات متا",
|
||||
"active": "فعال",
|
||||
"inactive": "غیرفعال",
|
||||
"purchases": "خرید",
|
||||
"copyUrl": "کپی URL",
|
||||
"urlCopied": "URL کپی شد",
|
||||
"deleteConfirm": "حذف صفحه فرود «{{title}}»؟",
|
||||
"created": "صفحه فرود ایجاد شد",
|
||||
"updated": "صفحه فرود بهروز شد",
|
||||
"deleted": "صفحه فرود حذف شد",
|
||||
"saveOrder": "ذخیره ترتیب",
|
||||
"orderSaved": "ترتیب ذخیره شد",
|
||||
"general": "عمومی",
|
||||
"content": "محتوا",
|
||||
"save": "ذخیره",
|
||||
"back": "بازگشت"
|
||||
}
|
||||
},
|
||||
"adminUpdates": {
|
||||
@@ -3416,5 +3463,44 @@
|
||||
"error": "ادغام ناموفق بود. لطفاً بعداً دوباره تلاش کنید.",
|
||||
"expiresIn": "{{minutes}} دقیقه باقی مانده",
|
||||
"merging": "در حال ادغام..."
|
||||
},
|
||||
"landing": {
|
||||
"notFound": "صفحه یافت نشد",
|
||||
"forMe": "برای خودم",
|
||||
"asGift": "به عنوان هدیه",
|
||||
"contactLabel": "ایمیل یا @نام کاربری شما",
|
||||
"yourContact": "ایمیل یا @نام کاربری شما",
|
||||
"contactPlaceholder": "email@example.com یا @username",
|
||||
"contactHint": "ایمیل یا @نام کاربری تلگرام را وارد کنید",
|
||||
"recipientLabel": "گیرنده هدیه",
|
||||
"recipientPlaceholder": "ایمیل یا @نام کاربری گیرنده",
|
||||
"giftMessageLabel": "پیام تبریک (اختیاری)",
|
||||
"giftMessagePlaceholder": "یک پیام تبریک بنویسید...",
|
||||
"chooseTariff": "یک طرح انتخاب کنید",
|
||||
"devices": "دستگاه",
|
||||
"paymentMethod": "روش پرداخت",
|
||||
"processing": "در حال پردازش...",
|
||||
"payButton": "پرداخت {{price}}",
|
||||
"accessFor": "دسترسی برای {{period}}",
|
||||
"purchaseError": "خطا در ایجاد پرداخت",
|
||||
"purchaseNotFound": "خرید یافت نشد",
|
||||
"awaitingPayment": "در انتظار پرداخت",
|
||||
"awaitingPaymentDesc": "پرداخت را در پنجره باز شده تکمیل کنید",
|
||||
"purchaseSuccess": "پرداخت موفق بود!",
|
||||
"keySentTo": "کلید اشتراک به {{contact}} ارسال شد",
|
||||
"giftSentTo": "هدیه به {{contact}} ارسال شد",
|
||||
"purchaseFailed": "پرداخت ناموفق",
|
||||
"purchaseFailedDesc": "پرداخت انجام نشد. دوباره تلاش کنید.",
|
||||
"subscriptionLink": "لینک اشتراک",
|
||||
"daysAccess": "روز دسترسی",
|
||||
"error": "خطا",
|
||||
"gb": "گیگابایت",
|
||||
"selectedTariff": "تعرفه",
|
||||
"period": "دوره",
|
||||
"total": "مجموع",
|
||||
"pay": "پرداخت",
|
||||
"choosePeriod": "انتخاب دوره",
|
||||
"copied": "کپی شد!",
|
||||
"copyLink": "کپی لینک"
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user