9203cda981
Merge pull request 'Rediseño completo app Android + auto-update' ( #19 ) from feat/android-app-redesign into master
...
Reviewed-on: #19
Reviewed-by: rafaga21 <rafaelminaya20@hotmail.com >
2026-06-09 17:00:22 -04:00
3a4e8eb52c
feat: add auto-update mechanism with in-app APK download
2026-06-09 16:59:08 -04:00
e86e670b61
Merge pull request 'Rediseño completo app Android + registro/perfil API' ( #18 ) from feat/android-app-redesign into master
...
Reviewed-on: #18
Reviewed-by: rafaga21 <rafaelminaya20@hotmail.com >
2026-06-09 16:46:37 -04:00
a424120770
fix: remove leftover conflict marker in ApiController
2026-06-09 16:46:03 -04:00
530c394944
fix: properly ignore vendor directory in .gitignore
2026-06-09 16:43:25 -04:00
1241d50a4a
Merge branch 'master' into feat/android-app-redesign
2026-06-09 16:41:23 -04:00
b613e43ab3
feat: redesign Android app with animations, charts, profile, and registration
...
- Register screen with validation (username, email, password, confirm)
- Profile screen with email editing and password change
- User greeting on dashboard showing logged-in username
- 401 auto-logout via SessionManager + AuthInterceptor
- MetricsChart with Canvas line graphs (CPU, RAM, Disk)
- Animated StatCard with counters and icons
- ServerCard with progress bars, pulsating status dot, dynamic elevation
- Shimmer loading placeholders
- Dark mode support with Material3
- Navigation transitions (slide + fade)
- New server rack launcher icon
- Splash screen
- Backend API: register, profile (GET/PUT) endpoints
2026-06-09 16:38:04 -04:00
07abd1f7a9
Merge pull request 'Add login endpoint and update Android login to username/password' ( #17 ) from feature/login-endpoint into master
...
Reviewed-on: #17
Reviewed-by: rafaga21 <rafaelminaya20@hotmail.com >
2026-06-07 18:13:26 -04:00
21a91195fa
Rebuild APK with username/password login
2026-06-07 18:12:43 -04:00
d77d340fe0
Merge remote-tracking branch 'origin/master' into feature/login-endpoint
...
# Conflicts:
# public/sysadmin.apk
2026-06-07 18:10:16 -04:00
c5254a797c
Add Android APK download feature
...
- Add sidebar nav item and dashboard stat card for APK download
- Add android/ to .gitignore
2026-06-07 18:05:12 -04:00
470f2e9404
Change Android login to username/password
...
- Add POST /api/auth/login endpoint on server side
- Update Android login screen to username/password fields
- Hardcode production URL https://servermanager.devlab.lat
- Rebuild APK with login changes
2026-06-07 18:05:00 -04:00
9e59cc06ec
Merge pull request 'Add Android APK download feature' ( #16 ) from feature/android-apk into master
...
Reviewed-on: #16
Reviewed-by: rafaga21 <rafaelminaya20@hotmail.com >
2026-06-07 18:00:06 -04:00
798557f53b
Add Android APK download feature
...
- Create android/ directory with Kotlin + Jetpack Compose project
- Build APK at public/sysadmin.apk
- Add sidebar nav item and dashboard stat card to download APK
- Add android/ to .gitignore
2026-06-07 17:58:53 -04:00
6aa4978aa7
Merge pull request 'Add soft deletes via status column' ( #15 ) from feature/soft-deletes into master
...
Reviewed-on: #15
Reviewed-by: rafaga21 <rafaelminaya20@hotmail.com >
2026-06-07 17:27:32 -04:00
1741545318
Add soft deletes via status column
...
- Add status ENUM('active','disabled','deleted') to 8 tables
- Change all physical DELETE to UPDATE status='deleted'
- All SELECT queries filter by status='active'
- toggleActive now alternates between active/disabled status
- Exceptions: monitoring_history, rate_limits, sessions keep physical purge
- audit_logs remains immutable
2026-06-07 17:26:29 -04:00
bb1b343785
Merge pull request 'Exclude vendor/ from git tracking' ( #14 ) from fix/ignore-vendor into master
...
Reviewed-on: #14
Reviewed-by: rafaga21 <rafaelminaya20@hotmail.com >
2026-06-07 17:12:44 -04:00
721639a850
Exclude vendor/ from git tracking
...
Fix .gitignore (removed leading space from '/ vendor/' line) and
untrack vendor/ directory via git rm --cached so it remains on disk.
2026-06-07 17:11:23 -04:00
921d98bf60
Merge pull request 'Fix MySQL timezone mismatch when running cron jobs' ( #13 ) from fix/mysql-timezone into master
...
Reviewed-on: #13
Reviewed-by: rafaga21 <rafaelminaya20@hotmail.com >
2026-06-07 13:16:44 -04:00
799df8d6c8
Fix MySQL timezone — sync session timezone with app config
2026-06-07 13:14:07 -04:00
6dd26184f3
Merge pull request 'Fix icon click propagation in sidebar navigation' ( #12 ) from fix/icon-click-propagation into master
...
Reviewed-on: #12
Reviewed-by: rafaga21 <rafaelminaya20@hotmail.com >
2026-06-07 13:11:05 -04:00
5789c77d9a
Fix icon click propagation in sidebar — add pointer-events: none to all nav icons
2026-06-07 13:10:32 -04:00
7de872820b
Merge pull request 'Fix theme toggle and improve mobile sidebar' ( #11 ) from fix/theme-and-mobile-sidebar into master
...
Reviewed-on: #11
Reviewed-by: rafaga21 <rafaelminaya20@hotmail.com >
2026-06-07 13:03:18 -04:00
c45354db11
Fix theme toggle (add light theme CSS) and improve mobile sidebar usability
2026-06-07 13:02:31 -04:00
e5d09f01fc
Merge pull request 'Add per-column filters, smart pagination (25/page), and date range filter to audit logs' ( #10 ) from feature/audit-logs-filters into master
...
Reviewed-on: #10
Reviewed-by: rafaga21 <rafaelminaya20@hotmail.com >
2026-06-07 12:45:09 -04:00
cd24cc53a0
Add per-column filters, smart pagination (25/page), and date range filter to audit logs
2026-06-07 12:43:50 -04:00
c92070e4ca
Merge pull request 'Fix: mostrar solo actividad del usuario actual en dashboard' ( #9 ) from fix/dashboard-activity-filter into master
...
Reviewed-on: #9
Reviewed-by: rafaga21 <rafaelminaya20@hotmail.com >
2026-06-07 12:26:44 -04:00
4448dec60d
Filter recent activity to show only current user's activity
2026-06-07 12:25:04 -04:00
38c705a9b0
Fix header formatting in install.sh.
2026-06-07 08:18:15 -04:00
35849c7fc4
Update script header formatting in install.sh.
2026-06-07 08:09:46 -04:00
c58d16aa63
Merge pull request 'Remove stale Team button from server detail page' ( #8 ) from feature/roles-y-accesos into master
...
Reviewed-on: #8
2026-06-07 08:02:26 -04:00
e207ece614
Remove stale Team button from server detail page
2026-06-07 08:00:11 -04:00
2cf30404f4
Merge pull request 'Server ownership, team access, role-based UI' ( #7 ) from feature/roles-y-accesos into master
...
Reviewed-on: #7
2026-06-07 07:44:52 -04:00
b105b27124
Dashboard stats now scoped to user's accessible servers; super_admin sees all
2026-06-07 07:43:37 -04:00
5b13518672
Refactor sidebar: use is_super_admin/is_admin helpers, restrict Users/Audit/Security to super_admin only
2026-06-07 07:36:34 -04:00
016584e907
Restrict Users, Audit Logs, Security routes to super_admin only
...
- Sidebar: Users, Audit Logs and Security now only visible to super_admin
- AdminController: requireSuperAdmin() check on users() and auditLogs()
- AdminController: super_admin check on createUser, updateUser, deleteUser JSON endpoints
- securitySettings() already had the check in place
2026-06-07 07:34:16 -04:00
58be111745
Fix: wrap entire Administration section in admin+ check to prevent Security leak for operators
2026-06-07 07:31:34 -04:00
e721a34d8f
Filter teams by creator: users only see and manage their own teams
2026-06-07 07:23:47 -04:00
5607a3e507
Replace old team system with work teams (equipos de trabajo)
...
- New migration 003_teams.sql: teams, team_user, team_server tables
- New Team model with CRUD, members, and server assignment
- New TeamController with full team management
- New views: teams/index, teams/create, teams/show
- Server model: getUserRole and getAccessibleServerIds now include team-based access
- Sidebar: Teams link under Administration (admin+ only)
- Routes: old /team routes removed, new /teams routes added
- Removed old ServerController team methods and views
- Fixed sidebar empty accessible IDs returning all servers
- Fixed dashboard and API to show empty when no accessible servers
2026-06-07 07:08:26 -04:00
5f5de248c6
Add server ownership, team access, role-based UI, and default admin role
...
- New migration 002_server_access.sql: created_by column + server_user table
- Server model: ownership, permission checks, team management methods
- Routes: /team routes, RoleMiddleware on /servers/create and /admin
- ServerController: permission checks via server_user, team CRUD methods
- TerminalController: server access checks
- DashboardController: filter servers by accessible ones
- ApiController: server access checks
- Views: team.php, team_server.php, sidebar Team link, hide actions by role
- Default user role changed from operator to admin on registration
- Admin user form defaults to admin role
2026-06-07 06:49:12 -04:00
9e11f767e7
Merge pull request 'Change default timezone to America/Santo_Domingo' ( #6 ) from add-agents-md into master
...
Reviewed-on: #6
2026-06-07 06:28:16 -04:00
1ca9689b30
Change default timezone to America/Santo_Domingo
2026-06-07 06:27:17 -04:00
bcb0d97a04
Merge pull request 'Add AGENTS.md' ( #5 ) from add-agents-md into master
...
Reviewed-on: #5
Reviewed-by: rafaga21 <rafaelminaya20@hotmail.com >
2026-06-07 06:26:09 -04:00
6c2f6d7087
Add AGENTS.md with repo-specific guidance for OpenCode sessions
2026-06-07 06:24:21 -04:00
4c1b0daa83
Merge pull request 'Add user registration page' ( #4 ) from feat/user-registration into master
...
Reviewed-on: #4
Reviewed-by: rafaga21 <rafaelminaya20@hotmail.com >
2026-06-06 19:41:32 -04:00
516ffbb579
Add user registration page with default operator role
2026-06-06 19:41:03 -04:00
59aca54d42
Merge pull request 'Add services management, improve UI, fix sudoers' ( #3 ) from fix/ssh-errors-and-ui-improvements into master
...
Reviewed-on: #3
Reviewed-by: rafaga21 <rafaelminaya20@hotmail.com >
2026-06-06 18:57:39 -04:00
7a8792a1e9
Add services management with pagination and conditional buttons
2026-06-06 18:56:42 -04:00
dff6cab1d9
Merge pull request 'Fix SSH errors, add views, and UI improvements' ( #2 ) from fix/ssh-errors-and-ui-improvements into master
...
Reviewed-on: #2
Reviewed-by: rafaga21 <rafaelminaya20@hotmail.com >
2026-06-06 18:45:09 -04:00
e0c4ec7a53
Fix system users: sudoers and nested sudo
2026-06-06 18:43:24 -04:00