Commit Graph

50 Commits

Author SHA1 Message Date
Dionisio d31a413e57 chore: translate all Spanish comments and log messages to English 2026-02-12 09:41:25 +01:00
Dionisio 1e8a7dd5bb feat: redesign admin panel & profile page, optimize Dockerfile, remove rootless
- Completely redesign admin.html matching OxiCloud design system
- Create standalone profile.html page with avatar, details & password change
- Optimize Dockerfile: 3-stage build, non-root user, OCI labels, layer cache
- Add .dockerignore to reduce build context
- Remove redundant Dockerfile.rootless & rootless-compose.yml
- Redesign login language selector as compact dropdown with search
- Fix CI/CD workflows (ci.yml, docker-build.yml, docker-publish.yml)
- Update app.js to navigate to profile page instead of modal
2026-02-11 14:09:40 +01:00
Dionisio 3050955f9c feat: add admin/profile UI, i18n (fr/de/pt), fix CI pipelines
- Add admin panel link and profile modal in user menu dropdown
- Add French, German and Portuguese locale support (full translations)
- Register new locales across JS frontend and Rust backend
- Create CI pipeline (fmt, clippy, test, audit, build)
- Fix docker-build.yml (cache, real tests, reduced timeout)
- Fix docker-publish.yml (multi-arch via QEMU, latest tag, pre-publish tests)
- Add dependabot.yml for automated dependency updates
2026-02-11 12:37:03 +01:00
roswitina d1acb9677a feat(i18n): add Deutsch(de) to language list --> de.json 2026-02-11 09:22:12 +01:00
roswitina 6c900c51a3 feat(i18n): add Deutsch(de) to language list --> sw.js 2026-02-11 09:11:00 +01:00
roswitina d66af34beb feat(i18n): add Deutsch(de) to language list 2026-02-11 08:56:01 +01:00
Dionisio ccd071911d feat(admin): add user management, quotas, and stats dashboard to admin panel
- Dashboard tab: total users, active users, admins, storage usage, quota warnings
- User management tab: list, edit role, activate/deactivate, update quota, delete
- Self-protection: cannot delete/deactivate/demote yourself
- Paginated user listing (default 50 per page)
- Efficient single-query dashboard stats with direct SQL aggregation
- Quota modal with GB/MB/TB unit selector
- Backend: added methods to UserStoragePort, UserRepository, PgRepository
- Backend: added 7 admin methods to AuthApplicationService
- Backend: added 5 new DTOs for admin operations
- Backend: 7 new endpoints under /api/admin/

Files modified:
- src/application/ports/auth_ports.rs (4 new UserStoragePort methods)
- src/domain/repositories/user_repository.rs (StorageStats + 3 methods)
- src/infrastructure/repositories/pg/user_pg_repository.rs (implementations)
- src/application/services/auth_application_service.rs (admin methods)
- src/application/dtos/settings_dto.rs (5 new DTOs)
- src/interfaces/api/handlers/admin_handler.rs (7 new endpoints)
- static/admin.html (complete UI with 3 tabs: Dashboard, Users, OIDC)
2026-02-11 01:08:00 +01:00
Dionisio f60c0df9f9 feat(admin): add admin settings panel for OIDC configuration
- Admin UI at /admin.html with settings management interface
- REST API: GET/PUT /api/admin/settings/oidc, POST .../test, GET .../general
- DB-backed settings in auth.admin_settings table (PostgreSQL)
- OIDC auto-discovery from issuer URL (.well-known/openid-configuration)
- Hot-reload: OIDC config changes apply without server restart
- Role-based access: admin-only endpoints with 403 for regular users
- Client secret stored securely, never exposed in GET responses
- Env var override detection shown in admin UI
- Clean architecture: repository trait, PG implementation, service, handler
2026-02-11 00:15:26 +01:00
Diocrafts 5bd505ccd7 modernizing frontend 2026-02-08 22:44:42 +01:00
Goudarz Jafari 67ade90d95 feat: add RTL-specific CSS for bidirectional layout 2026-02-08 10:05:04 +03:30
Goudarz Jafari 449ac7a981 feat: add RTL-specific CSS for bidirectional layout 2026-02-08 10:04:58 +03:30
Goudarz Jafari d05485c459 feat: add RTL-specific CSS for bidirectional layout 2026-02-08 10:04:49 +03:30
Goudarz Jafari 0096d2ee95 feat: add RTL-specific CSS for bidirectional layout 2026-02-08 10:04:37 +03:30
Goudarz Jafari 31ad2f878a feat(i18n): add Persian(fa) to language list 2026-02-08 09:57:55 +03:30
Goudarz Jafari 00a8e0c361 feat(i18n): add Persian(fa) to language list 2026-02-08 09:57:38 +03:30
Goudarz Jafari a3b2192b0e feat(i18n): add Persian(fa) to language list 2026-02-08 09:57:11 +03:30
Goudarz Jafari ad48b865f2 feat: add automatic HTML lang and dir attributes
- Add updateHtmlAttributes() function to set lang attribute on HTML element
- Automatically add dir=rtl for RTL languages (fa, ar) and remove for LTR
- Initialize attributes on component load with current locale
- Listen for locale changes to update attributes dynamically
- Add rtlLanguages configuration array for maintainability
2026-02-08 09:56:11 +03:30
Goudarz Jafari 2c5c67311e feat(i18n): add Persian(fa) to language list 2026-02-06 10:30:26 +03:30
Goudarz Jafari fac45c4d44 feat(i18n): add Persian(fa) to language list 2026-02-06 10:29:19 +03:30
Goudarz Jafari 7008c22c12 feat(i18n): add Persian(fa) to language list 2026-02-06 10:29:13 +03:30
Goudarz Jafari 65aeefd508 feat(i18n): add Persian(fa) to language list 2026-02-06 10:29:05 +03:30
Goudarz Jafari 421f354a8e feat(i18n): add Persian(fa) to language list 2026-02-06 10:28:32 +03:30
Goudarz Jafari 68ac691de7 feat(i18n): add Persian translations 2026-02-06 10:24:23 +03:30
Dionisio 8f2b0a354c big refactoring 2026-02-03 17:59:04 +01:00
Dionisio Pozo bedce34aa7 Delete static/logo/logo-plain.svg:Zone.Identifier 2025-04-15 11:06:09 +02:00
lzw-723 e9c0426b77 Update languageSelector.js 2025-04-14 19:54:34 +08:00
lzw-723 bee238f35a Update i18n.js 2025-04-14 19:42:29 +08:00
lzw-723 a33b416932 Create zh.json 2025-04-14 19:33:17 +08:00
DioCrafts 090ab07423 fix files uploading 2025-04-12 12:37:12 +02:00
DioCrafts 5306bdc9e3 fix uploding bugs 2025-04-12 12:21:57 +02:00
DioCrafts 8f1d213526 improve postgresql performance 2025-04-09 00:21:20 +02:00
DioCrafts e3256bb3b5 fix ui home folder 2025-04-04 04:30:49 +02:00
DioCrafts a79c335b73 adding recent feature + bug fixed 2025-04-02 05:08:30 +02:00
DioCrafts 7069a54d8d adding favorite feature 2025-04-02 03:43:44 +02:00
DioCrafts 705cb5b069 adding pdf and image viewer 2025-04-02 01:22:05 +02:00
DioCrafts f1f5f46728 fix shared tab bug 2025-04-01 21:14:09 +02:00
DioCrafts 36ec082289 fix ui 2025-03-31 15:01:34 +02:00
DioCrafts 2e1cb4a034 fixing several bugs 2025-03-31 06:20:15 +02:00
dionidev e79ca8304b adding comments, moving technical documentation, improve Dockerfile, delete unuseful files 2025-03-30 14:17:09 +00:00
DioCrafts cfae57061b fix translation 2025-03-28 09:03:04 +01:00
DioCrafts fb276d9b24 adding ui sharing 2025-03-28 08:09:18 +01:00
DioCrafts 7affff379d adding search engine 2025-03-27 01:13:34 +01:00
DioCrafts bd623ec07e adding trash folder 2025-03-24 17:49:53 +01:00
DioCrafts 38b0e9594b fix auth errors and add primigenial paper trash 2025-03-24 16:47:42 +01:00
DioCrafts 9a9fd72f61 fixing bugs 2025-03-23 22:44:18 +01:00
DioCrafts cafad0fbfd adding user authentication 2025-03-20 09:22:31 +01:00
DioCrafts 961545aef7 adding features 2025-03-19 23:28:29 +01:00
root d091db19ed adding features 2025-03-17 21:50:14 +01:00
root 206bb7f2d6 adding features 2025-03-17 21:33:16 +01:00
root fe19bc8505 Initial commit 2025-03-17 21:28:08 +01:00