fix: sidebar accordion + koja slug + support ticket LINQ crash
CI/CD / CI · API (dotnet build + test) (push) Successful in 5m50s
CI/CD / CI · Admin API (dotnet build) (push) Successful in 32s
CI/CD / CI · Dashboard (tsc) (push) Successful in 1m3s
CI/CD / CI · Admin Web (tsc) (push) Successful in 35s
CI/CD / CI · Website (tsc) (push) Successful in 44s
CI/CD / CI · Koja (tsc) (push) Successful in 48s
CI/CD / Deploy · all services (push) Has been cancelled

Sidebar:
- All groups start collapsed on first load (v4 storage key resets old state)
- Opening one group closes all others (accordion)
- Navigating to a section opens only that section's group

Koja slug:
- SlugHelper: Persian->Latin transliteration, slug validation
- Registration accepts optional custom slug; auto-derives from cafe name
- Slug can be updated from dashboard Settings -> Profile
- Settings PATCH validates uniqueness (SLUG_TAKEN) and format (INVALID_SLUG)
- koja.meezi.ir/{slug} now redirects to /fa/cafe/{slug} (short URL support)

Bug fix:
- SupportTicketService: cafeId/status filters applied before Select() projection
  to fix EF "could not be translated" crash on the support tickets page

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
soroush.asadi
2026-05-31 22:28:25 +03:30
parent 38e3f6a5a2
commit cd1af30bbc
17 changed files with 401 additions and 58 deletions
+12 -3
View File
@@ -63,7 +63,10 @@
"usernamePlaceholder": "نام کاربری",
"password": "رمز عبور",
"passwordPlaceholder": "رمز عبور",
"invalidCredentials": "نام کاربری یا رمز عبور اشتباه است."
"invalidCredentials": "نام کاربری یا رمز عبور اشتباه است.",
"kojaSlug": "آدرس پروفایل در کوجا",
"kojaSlugHint": "بازدیدکنندگان از این آدرس کافه شما را پیدا می‌کنند",
"kojaSlugPlaceholder": "مثال: cafe-roya"
},
"roles": {
"owner": "مالک",
@@ -1233,7 +1236,13 @@
"uploadLogo": "بارگذاری لوگو",
"uploadCover": "بارگذاری کاور",
"saved": "پروفایل ذخیره شد.",
"reloginHint": "پلن به‌روز شد؛ در صورت نیاز یک‌بار خارج و وارد شوید."
"reloginHint": "پلن به‌روز شد؛ در صورت نیاز یک‌بار خارج و وارد شوید.",
"slug": "آدرس پروفایل کوجا",
"slugHint": "آدرس صفحه کافه شما در کوجا — فقط حروف انگلیسی، اعداد و خط تیره",
"slugPlaceholder": "cafe-roya",
"slugTaken": "این آدرس قبلاً گرفته شده. آدرس دیگری انتخاب کنید.",
"slugInvalid": "آدرس نامعتبر است. فقط حروف انگلیسی کوچک، اعداد و خط تیره مجاز است.",
"kojaUrl": "آدرس کوجا"
},
"plans": {
"compareLabel": "مقایسه پلن‌ها",
@@ -1656,4 +1665,4 @@
"premium": "پریمیوم"
}
}
}
}