|
@@ -505,38 +505,38 @@ export default function ProjectListPage() {
|
{project.wp || "N/A"}
|
{project.city || "N/A"}
|
{project.address || "N/A"}
|
{project.plot || "N/A"}
|
{project.finish_date
? formatDate(project.finish_date)
: "N/A"}
|
-
+ |
{project.project_type === "design"
? "P"
: project.project_type === "construction"
diff --git a/src/app/settings/page.js b/src/app/settings/page.js
new file mode 100644
index 0000000..e9c4196
--- /dev/null
+++ b/src/app/settings/page.js
@@ -0,0 +1,64 @@
+"use client";
+
+import { useTranslation } from "@/lib/i18n";
+import PageContainer from "@/components/ui/PageContainer";
+import PageHeader from "@/components/ui/PageHeader";
+import { Card, CardHeader, CardContent } from "@/components/ui/Card";
+import ThemeToggle from "@/components/ui/ThemeToggle";
+import LanguageSwitcher from "@/components/ui/LanguageSwitcher";
+
+export default function SettingsPage() {
+ const { t } = useTranslation();
+
+ return (
+
+
+
+
+ {/* Appearance Settings */}
+
+
+
+ {t('settings.appearance') || 'Appearance'}
+
+
+
+
+
+
+
+ {t('settings.themeDescription') || 'Choose your preferred theme'}
+
+
+
+
+
+
+
+ {/* Language Settings */}
+
+
+
+ {t('settings.language') || 'Language'}
+
+
+
+
+
+
+
+ {t('settings.languageDescription') || 'Select your preferred language'}
+
+
+
+
+
+
+
+
+ );
+}
\ No newline at end of file
diff --git a/src/components/AuditLogViewer.js b/src/components/AuditLogViewer.js
index 508806c..9f6c04e 100644
--- a/src/components/AuditLogViewer.js
+++ b/src/components/AuditLogViewer.js
@@ -318,43 +318,43 @@ export default function AuditLogViewer() {
)}
{/* Audit Logs Table */}
-
+
-
-
+
+
- |
+ |
Timestamp
|
-
+ |
User
|
-
+ |
Action
|
-
+ |
Resource
|
-
+ |
IP Address
|
-
+ |
Details
|
-
+
{logs.map((log) => (
-
- |
+ |
+ |
{formatTimestamp(log.timestamp)}
|
-
+ |
{log.user_name || "Anonymous"}
- {log.user_email}
+ {log.user_email}
|
@@ -364,26 +364,26 @@ export default function AuditLogViewer() {
{log.action.replace(/_/g, " ").toUpperCase()}
|
-
+ |
{log.resource_type || "N/A"}
-
+
ID: {log.resource_id || "N/A"}
|
-
+ |
{log.ip_address || "Unknown"}
|
-
+ |
{log.details && (
-
+
View Details
-
+
{JSON.stringify(log.details, null, 2)}
@@ -396,7 +396,7 @@ export default function AuditLogViewer() {
{logs.length === 0 && !loading && (
-
+
No audit logs found matching your criteria.
)}
diff --git a/src/components/FileUploadModal.js b/src/components/FileUploadModal.js
index 296971f..1a1537c 100644
--- a/src/components/FileUploadModal.js
+++ b/src/components/FileUploadModal.js
@@ -87,14 +87,14 @@ export default function FileUploadModal({
return (
-
+
-
+
{t('contracts.uploadDocumentTitle')}
| |