Commit Graph

16 Commits

Author SHA1 Message Date
Teriuihi 25e8dc8e8e Update build scripts to integrate frontend with backend. 2025-04-18 22:24:55 +02:00
Teriuihi ecee377f01 Add API endpoints for search result counts by name and UUID
Introduced new API paths and backend logic to retrieve total punishment counts based on user search queries using names or UUIDs. Updated the frontend to utilize these endpoints and display the total search results dynamically.
2025-04-18 20:43:17 +02:00
Teriuihi 905373093c Update rate limiting headers and adjust time unit for limits
Added `Access-Control-Expose-Headers` to rate limit responses to expose retry-related headers for easier accessibility on the client side. Changed the rate limit time unit in `HistoryApiController` from seconds to minutes for more reasonable throttling.
2025-04-18 19:32:34 +02:00
Peter 87a0b9ad1b Refactor pagination buttons and adjust rate limit interval.
Updated pagination buttons with new styles and class name (`historyPageButton`) for consistency and improved UX. Modified backend rate limit interval from 1 minute to 1 second for faster request handling.
2025-04-18 18:45:40 +02:00
Teriuihi a01038e86c Refactor rate-limiting and name history queries.
Removed redundant rate-limit response headers and improved query methods for fetching punishment history. Refactored methods to handle cases where partial names are empty and added escaping for underscores in search names.
2025-04-18 18:33:47 +02:00
Teriuihi e3eaab708c Add rate-limiting mechanism with AOP for API endpoints
Introduced a rate-limiting feature using Spring AOP and a custom `RateLimit` annotation. Includes `InMemoryRateLimiterService`, `RateLimitAspect`, and related classes for controlling request limits. Applied rate limiting to specific API controllers to enhance system stability and prevent abuse.
2025-04-17 20:31:14 +02:00
Teriuihi 44d28494e5 Add API endpoint to retrieve total punishment counts
Introduced a new API endpoint `/history/total` for fetching the total counts of bans, mutes, kicks, and warnings. Added database mapping and DTO classes to support this functionality, along with necessary schema and controller updates.
2025-04-11 23:27:20 +02:00
Teriuihi 23367b6dea Fix history not loading 2025-04-11 21:37:21 +02:00
Teriuihi 2289b14b5a Add history page 2025-04-11 21:20:02 +02:00
Teriuihi 4b891dd672 Reworked database setup and added pagination
The database tables are now automatically created
The history lookup now uses a view for names (for simplicity and readability)
The all history lookup now uses a view combining all punishment history for efficiency
2025-04-11 18:22:07 +02:00
Teriuihi 0f9761da3a Refactor history APIs and integrate LiteBans database support
Redesigned history-related APIs to streamline handling of user and UUID punishments, moving from POST to GET endpoints. Added support for LiteBans database with mappers for retrieving punishment records by name and UUID, and implemented global exception handling for better error reporting. Updated schema paths and added enums (UserType, HistoryType) and a new Gradle dependency.
2025-04-11 01:12:46 +02:00
Teriuihi 1585011143 Refactor API structure and endpoints for history and team.
Updated API definitions and endpoints to better support punishment history and team queries. Introduced new parameters, schemas, and operations to improve functionality, and reorganized related controllers into appropriate packages.
2025-04-10 22:46:30 +02:00
Teriuihi 2137459e9b Refactor API structure and enhance logging/debugging.
Modularized OpenAPI definitions by splitting into dedicated files for teams, bans, and errors. Improved backend logging for database connections, CORS configuration, and debugging. Updated application properties to support environment-specific CORS origins and logging levels.
2025-04-10 21:45:00 +02:00
Teriuihi 02f21169b4 Remove unused TeamMemberDto import in TeamApiController
The TeamMemberDto import was unnecessary and not used in the code. Removing it improves code cleanliness and reduces potential confusion. This is a minor optimization with no functional changes.
2025-04-10 20:39:51 +02:00
Teriuihi d5daa8458b Refactor database structure and improve player handling.
Reorganized database-related code into a dedicated module, added mappings for UUID handling, and updated SQL queries for clarity. Enhanced team members API to use player data directly, ensuring consistency and better handling of UUIDs. Introduced new database table for connection settings and adjusted Gradle configurations for modularization.
2025-04-10 01:22:19 +02:00
Teriuihi 67a3162ae3 Added backend and fixed openapi generation 2025-04-08 22:24:24 +02:00