Commit Graph

198 Commits

Author SHA1 Message Date
Peter 174ed834ca Added pages and fitting content for community, nickgenerator annd nicknames 2025-05-30 23:07:42 +02:00
Peter 20dcebbab9 Added new pages with fitting content: skyblock, custom features, guide book, ranks, commandlist, reducing lag, staff powers 2025-05-30 22:19:36 +02:00
Teriuihi c4c17b3adc Add JWT-based login flow with key pair generation
Introduced a secure login flow using JWTs with dynamically generated RSA key pairs stored in the database. Updated relevant APIs, database schema, and services to support login codes, JWT encoding, and secret validation.
2025-05-24 01:33:36 +02:00
Teriuihi cf758bfe60 Add endpoints and schema for history retrieval by UUID
Introduced a new API endpoint to fetch all punishment history for a specified UUID. Updated existing schemas, controllers, and mappers to support this functionality. Adjusted login endpoints to improve request handling and streamlined frontend form setup for appeals.
2025-05-03 04:37:47 +02:00
Teriuihi 8c7ec0a237 Restrict team member query to global world scope. 2025-05-02 01:33:45 +02:00
Teriuihi 80462218a7 Update role label for head mod 2025-05-02 01:32:15 +02:00
Teriuihi 26b5f86983 Add rate limiting to LoginController endpoints
Introduced a `@RateLimit` annotation to enforce limits on the `addLogin` and `login` methods in `LoginController`. This restricts the number of requests per minute to improve security and prevent abuse.
2025-04-26 23:14:33 +02:00
Teriuihi ba6cf6d938 Add rate limiting to AppealController methods
Introduced @RateLimit annotations to enforce request limits on the AppealController. The overall controller has a global limit of 30 requests per hour, while specific methods for Discord and Minecraft appeals are limited to 3 requests per hour. This aims to prevent abuse and improve system reliability.
2025-04-26 23:13:26 +02:00
Teriuihi 643545a18a Add appeal and login functionality structure
Introduces initial structure for appeal and login forms in both the frontend and backend. New controllers, APIs, and components were created, but functionality has not been fully implemented yet. This serves as a foundation for future development of these features.
2025-04-26 20:58:47 +02:00
Teriuihi b922487d76 Fix punishment tag colors and avatar image size 2025-04-20 17:29:51 +02:00
Teriuihi 54eb1ea735 Fixes #15 2025-04-20 17:19:50 +02:00
Peter 9043c774f7 Refactor ban details layout and enhanced formatting.
Updated the HTML structure and styling for a clearer, responsive layout and better user experience.
2025-04-20 17:00:31 +02:00
Teriuihi 43b75b8e74 Fixed punishment removed message closes #12 2025-04-19 22:19:08 +02:00
Teriuihi 07c77f5485 Update ban history formatting to include clearer unban details
Modified the history format service to display 'Unbanned by [user]' instead of just the user's name. This provides more explicit context for removed punishments in the UI.
2025-04-19 22:13:19 +02:00
Peter d54a7e51ee Add MyPet and Warps components with HTML, SCSS
Implemented the MyPet and Warps components, including their HTML structure, styles, and unit tests. These components provide detailed information and features for MyPet and Player Warps systems for a Minecraft-inspired application.
2025-04-19 16:37:27 +02:00
Teriuihi 6be6944dea Update rate limit for HistoryApiController
Changed the rate limit from 30 requests per minute to 30 requests per 10 seconds. This ensures a smoother request flow and prevents excessive delays for frequent API users.
2025-04-19 05:00:41 +02:00
Teriuihi 3babde5513 Add punishment details and history retrieval functionality
This commit introduces a new `DetailsComponent` for displaying detailed punishment data and establishes a route to view punishment history by ID and type. It also updates the API to support fetching individual punishment records and refines database mappings for improved data handling.
2025-04-19 04:02:51 +02:00
Teriuihi a1912b96d8 Update favicon 2025-04-19 01:40:14 +02:00
Teriuihi e9880f8864 Remove redundant 'logging' property from angular.json
The 'logging' property was removed from the build configurations as it is not used or required. This simplifies the configuration and avoids potential confusion.
2025-04-19 01:34:31 +02:00
Teriuihi 3449cf24b1 Remove extractCss configuration from angular.json
The extractCss option is deprecated and no longer required. This change cleans up the configuration by removing obsolete settings, ensuring compatibility with newer Angular versions.
2025-04-19 01:33:41 +02:00
Teriuihi 43edd49273 Set up environment-based configurations for API and builds.
Replaced hardcoded API URLs with environment-specific configurations. Added new environments (development, beta, production) with respective settings. Updated build scripts and Angular file replacements to support environment-based builds.
2025-04-19 01:28:29 +02:00
Teriuihi 3d4d77bc73 Add WebConfig for static resource handling
Introduced WebConfig to configure resource handling in the backend. This ensures SPA fallback by serving `index.html` for non-existent paths, improving routing for client-side applications.
2025-04-19 01:07:49 +02:00
Teriuihi 5b158ae3f7 Add application-beta.properties for beta environment config. 2025-04-19 01:01:48 +02:00
Teriuihi bbedd2257e Ensure backend tasks depend on frontend build completion 2025-04-19 00:44:52 +02:00
Teriuihi 6f2a48338b Fix npm executable path resolution in build script 2025-04-19 00:09:33 +02:00
Teriuihi e6df93ff5c Fix npm executable path resolution in build script 2025-04-19 00:08:13 +02:00
Peter 680506997e Add Claiming and Economy pages with routing and styles
Created new Claiming and Economy components, templates, styles, and tests. Integrated both pages into the app's routing, enabling navigation and functionality. Updated home page layout and added necessary utility styles.
2025-04-18 22:52:05 +02:00
Teriuihi 235f4fb60f Refactor database queries and handle non-429 errors in history
Updated database query code to use consistent parameter naming and revised query structure for clarity. Added logic in the history component to return existing data when encountering non-429 HTTP errors.
2025-04-18 22:41:04 +02:00
Teriuihi 6dbb36399f Add 'node' to .gitignore
Ignore 'node' files to prevent accidental commits of local Node.js-related artifacts. This ensures a cleaner repository with only necessary files tracked.
2025-04-18 22:27:42 +02:00
Teriuihi 25e8dc8e8e Update build scripts to integrate frontend with backend. 2025-04-18 22:24:55 +02:00
Peter 5759d6c0dc Merge remote-tracking branch 'origin/master' 2025-04-18 21:54:56 +02:00
Peter 96cc4610dd Add pagination display and update button styling
Introduce a page number display to the pagination controls for better navigation transparency. Update button styles to use CSS variables for improved theme consistency and maintainability.
2025-04-18 21:54:36 +02:00
Teriuihi f53fc9746e Update avatar URL logic for console entries
Replaced the hardcoded console image path with a specific UUID. This ensures a consistent format when constructing avatar URLs and improves maintainability.
2025-04-18 20:47:23 +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
Peter ee66bdda83 Add pagination display and update button styling
Introduce a page number display to the pagination controls for better navigation transparency. Update button styles to use CSS variables for improved theme consistency and maintainability.
2025-04-18 19:33:54 +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
Teriuihi 21f2b3e4a5 Refactor pagination logic and add error handling in history
Introduced `updatePageSize` for better page size management and added checks to prevent rapid page changes. Enhanced error handling in `history.component` with retry logic on failure. Implemented `RemoveTrailingPeriodPipe` for cleaner UI formatting.
2025-04-18 19:32:23 +02:00
Teriuihi 53f67a5075 Fix handling of non-positive expiry times in punishment history 2025-04-18 18:46:14 +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
Peter a3570b6833 Fix improperly formatted (input) binding in bans component
Removed excessive whitespace in the (input) binding of the search field to ensure proper functionality and readability. This change improves code cleanliness without altering behavior.
2025-04-12 23:02:28 +02:00
Teriuihi 48fd133b6d Fix pageChange emission to use history length
Modified the `ngOnChanges` method to emit the length of the history instead of the current page. This ensures accurate data is provided to parent components during changes.
2025-04-12 23:01:35 +02:00
Teriuihi 21b87fbf68 Add appeal endpoints and schema definitions
Introduce new API endpoints for handling Minecraft and Discord appeals, as well as updating appeal email addresses. Define detailed schemas for request and response payloads, supporting streamlined appeal processing across all platforms.
2025-04-12 22:51:16 +02:00
Teriuihi 3a2a54050f Add custom avatar for console entries in ban history
Updated the `getAvatarUrl` method to return a specific avatar image for console entries. This ensures better visual distinction for console-generated actions in the ban history.
2025-04-12 22:20:45 +02:00
Teriuihi a5adb031bd Add pagination handling with pageSize and pageChange EventEmitter
Introduced `pageSize` in `bans.component.ts` to manage pagination logic and updated `buttonActive` to account for page size constraints. Added `pageChange` EventEmitter in `history.component.ts` to notify the parent component of page changes. Updated the template to bind `pageChange` for dynamic page size updates.
2025-04-12 22:11:40 +02:00
Teriuihi d535dd1ba9 Reset page number on search and filter changes
Ensure the page is reset to 0 when performing a search or changing filters. This prevents issues with incorrect page states and improves navigation consistency.
2025-04-12 21:55:51 +02:00
Peter 13122559db Refactor table and pagination UI components.
Replaced inline styles with reusable classes for better maintainability. Improved pagination button styling and added transitions to the history table header for a polished user experience. Updated SCSS variables for consistent naming conventions.
2025-04-12 21:55:25 +02:00
Peter a4d8fc07e9 Updated styles and structure for history table and navigation
Refactored the history buttons to include click handlers in the outer div for better clarity and functionality. Improved the table styling in the history component by adding consistent padding, fixing column widths, and ensuring text overflow handling. Added new CSS variables for table header colors to enhance theming consistency.
2025-04-12 19:42:06 +02:00
Teriuihi 3ed5fcfc0f Add pagination controls with proper state handling in BansComponent
Introduced "First", "Previous", "Next", and "Last page" buttons with state-dependent activations for improved navigation. Refactored pagination logic to utilize a constant PAGE_SIZE and adjusted calculations for max page determination. Ensured page transitions and state updates are accurate and consistent.
2025-04-12 17:41:44 +02:00