Fix authentication state persistence and admin role display
- Implement complete authentication system with JWT token validation - Add auth provider with persistent login state across page refreshes - Create multilingual login/register forms with Material-UI components - Fix token validation using raw SQL queries to bypass Prisma sync issues - Add comprehensive error handling for expired/invalid tokens - Create profile and settings pages with full i18n support - Add proper user role management (admin/user) with database sync - Implement secure middleware with CSRF protection and auth checks - Add debug endpoints for troubleshooting authentication issues - Fix Zustand store persistence for authentication state 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -195,6 +195,80 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"auth": {
|
||||
"email": "Email",
|
||||
"password": "Password",
|
||||
"confirmPassword": "Confirm password",
|
||||
"name": "Name",
|
||||
"optional": "(optional)",
|
||||
"login": "Login",
|
||||
"register": "Register",
|
||||
"logout": "Logout",
|
||||
"logging_in": "Logging in...",
|
||||
"registering": "Registering...",
|
||||
"loginError": "Login error",
|
||||
"registerError": "Registration error",
|
||||
"connectionError": "Connection error",
|
||||
"passwordMismatch": "Passwords don't match",
|
||||
"createAccount": "Create account",
|
||||
"alreadyHaveAccount": "Already have an account?",
|
||||
"noAccount": "Don't have an account?",
|
||||
"forgotPassword": "Forgot password?",
|
||||
"welcomeBack": "Welcome back!",
|
||||
"joinUs": "Join us!"
|
||||
},
|
||||
"profile": {
|
||||
"title": "Profile",
|
||||
"subtitle": "Manage your account information",
|
||||
"personalInfo": "Personal Information",
|
||||
"accountDetails": "Account Details",
|
||||
"name": "Name",
|
||||
"email": "Email",
|
||||
"role": "Role",
|
||||
"memberSince": "Member Since",
|
||||
"edit": "Edit",
|
||||
"save": "Save Changes",
|
||||
"saving": "Saving...",
|
||||
"cancel": "Cancel",
|
||||
"emailCannotChange": "Email cannot be changed",
|
||||
"profileUpdated": "Profile updated successfully!",
|
||||
"updateError": "Error updating profile",
|
||||
"user": "User",
|
||||
"admin": "Administrator",
|
||||
"moderator": "Moderator"
|
||||
},
|
||||
"settings": {
|
||||
"title": "Settings",
|
||||
"subtitle": "Customize your experience",
|
||||
"appearance": "Appearance",
|
||||
"languageAndNotifications": "Language & Notifications",
|
||||
"security": "Security",
|
||||
"theme": "Theme",
|
||||
"fontSize": "Font Size",
|
||||
"language": "Language",
|
||||
"notifications": "Enable notifications",
|
||||
"emailUpdates": "Email updates",
|
||||
"changePassword": "Change Password",
|
||||
"changePasswordSoon": "Change Password (Coming Soon)",
|
||||
"passwordSecurity": "Password and security settings",
|
||||
"saveSettings": "Save Settings",
|
||||
"settingsSaved": "Settings saved successfully!",
|
||||
"settingsError": "Error saving settings",
|
||||
"themes": {
|
||||
"light": "Light",
|
||||
"dark": "Dark",
|
||||
"auto": "Auto"
|
||||
},
|
||||
"fontSizes": {
|
||||
"small": "Small",
|
||||
"medium": "Medium",
|
||||
"large": "Large"
|
||||
},
|
||||
"languages": {
|
||||
"ro": "Română",
|
||||
"en": "English"
|
||||
}
|
||||
},
|
||||
"common": {
|
||||
"loading": "Loading...",
|
||||
"error": "An error occurred",
|
||||
|
||||
Reference in New Issue
Block a user