feat(admin): create users by mobile number instead of email

Admin user management now creates accounts with a required mobile
number and an optional contact email, matching mobile-only auth.
Admin-created accounts are pre-verified (phoneVerified) so the user
can sign in by password immediately. The user list and search now
include phone.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
keyhan
2026-06-17 12:34:43 +03:30
parent 37f64435f6
commit a3b7e9055c
5 changed files with 63 additions and 15 deletions
+5 -1
View File
@@ -754,20 +754,24 @@ const en: Dictionary = {
createNewUser: 'Create New User',
firstName: 'First Name',
lastName: 'Last Name',
phone: 'Mobile number',
email: 'Email',
emailOptional: 'Email (optional)',
password: 'Password',
firstNamePlaceholder: 'John',
lastNamePlaceholder: 'Doe',
phonePlaceholder: '09123456789',
emailPlaceholder: 'john@example.com',
passwordMin: 'Min 8 characters',
role: 'Role',
roles: { user: 'User', admin: 'Admin', technical: 'Technical', sales: 'Sales' },
creating: 'Creating...',
createUser: 'Create User',
searchPlaceholder: 'Search by name or email...',
searchPlaceholder: 'Search by name, mobile or email...',
noUsersSearch: 'No users found matching your search.',
noUsers: 'No users yet.',
colUser: 'User',
colPhone: 'Mobile',
colEmail: 'Email',
colRole: 'Role',
colStatus: 'Status',
+5 -1
View File
@@ -753,20 +753,24 @@ const fa = {
createNewUser: 'ساخت کاربر جدید',
firstName: 'نام',
lastName: 'نام خانوادگی',
phone: 'شماره موبایل',
email: 'ایمیل',
emailOptional: 'ایمیل (اختیاری)',
password: 'رمز عبور',
firstNamePlaceholder: 'مثلاً علی',
lastNamePlaceholder: 'مثلاً رضایی',
phonePlaceholder: '09123456789',
emailPlaceholder: 'name@example.com',
passwordMin: 'حداقل ۸ کاراکتر',
role: 'نقش',
roles: { user: 'کاربر', admin: 'مدیر', technical: 'فنی', sales: 'فروش' },
creating: 'در حال ساخت…',
createUser: 'ساخت کاربر',
searchPlaceholder: 'جستجو بر اساس نام یا ایمیل…',
searchPlaceholder: 'جستجو بر اساس نام، موبایل یا ایمیل…',
noUsersSearch: 'کاربری مطابق جستجو پیدا نشد.',
noUsers: 'هنوز کاربری نیست.',
colUser: 'کاربر',
colPhone: 'موبایل',
colEmail: 'ایمیل',
colRole: 'نقش',
colStatus: 'وضعیت',