- Added a new function `getChampionImage` to fetch champion images based on ID and type.
- Created a new model `ChampionImage` to store champion image details in the database.
- Implemented seeding of champion images using `ChampionImageSeeder`.
- Updated usage of champion images in existing methods.
- Integrate LMI API to fetch current sales data using the provided API key.
- Update SaleController to use Http facade for making API requests.
- Modify services configuration to include LMI API key.
- Refactored the `getSkinImageAttribute` method in ChampionSkin model to accept a boolean parameter for uncentered images.
- Updated references to `getSkinImageAttribute` in ChampionSkinController and blade files to include the new parameter for uncentered images.
- Updated the Champion model to include an optional parameter for retrieving uncentered champion images. Adjusted image URLs in relevant views accordingly.
- Refactored the code in `PostsController.php` to filter out hidden posts before sorting by date for better performance and accuracy.
- Updated the blade template `listposts.blade.php` to adjust formatting and structure for displaying posts.
- Added a new method `roadmap` to HomeController for displaying the roadmap view.
- Created a new Blade template `roadmap.blade.php` for the roadmap page.
- Defined a route `/roadmap` to access the roadmap feature.
- Added caching mechanism to store and retrieve streamer data for API responses, improving performance.
- Implemented cache forget method in StreamerPanelController for CRUD operations to update cached data accordingly.
- Added Champion model to StreamerPanelController.
- Implemented form validation for champion_id, platform, username, and displayname in create and update methods.
- Created StreamerCreateForm and StreamersTable components for better organization.
- Added StreamerController with index and show methods
- Added StreamerPanelController with index, create, store, edit, update, and destroy methods
- Created Streamer model with fillable attributes and platform-specific URL generation logic
- Implemented migration for creating the streamers table
- Added hCaptcha validation to the contact form.
- Integrated hCaptcha configuration in the application.
- Implemented Discord alerts for new contact submissions with detailed content.
- Added ContactSubmissionController with index and store methods for handling contact submissions.
- Created a new Blade view for the contact form with fields for name, email, discord, category, subject, and message.
- Updated routes to include endpoints for displaying the contact form and submitting it.
- Added Discord alert webhook URL to .env.example
- Created ContactCategory enum with humanReadable method
- Implemented ContactSubmissionRequest form request
- Added ContactSubmission model with fillable and casts properties
- Included configurations for Discord alerts and honeypot protection
- Updated the query in HomeController@index to filter upcoming skins based on release date.
- Updated the query in HomeController@index to filter latest skins based on release date.
- Added links to champion details page for each champion in list_all.blade.php.
- Added links to skin details page for each skin in recent_skins.blade.php and upcoming_skins.blade.php.
- Update the cache expiration time for 'championsListAllCache' and 'championsRolesCache' to 8 hours.
- Update the cache expiration time for 'championShowCache{slug}' to 3 days.
- Update the cache expiration time for 'championSplashColorCache{slug}' to 6 months.
- Update the cache expiration time for 'championSkinShowCache{slug}' to 48 hours.
- Update the cache expiration time for 'championSkinSplashColorCache{slug}' to 120 hours.
- Refactored the ChampionController, ChampionSkinController, HomeController, SaleController, SummonerEmoteController, and SummonerIconController to use arrow functions for cache callbacks.
- Updated the view data passing in the ChampionController, ChampionSkinController, HomeController, PostsController, SaleController, SummonerEmoteController, and SummonerIconController to use associative arrays instead of compact().
- Removed unused imports from web.php.
- Replace the deprecated `Intervention\Image\ImageManagerStatic` with `Intervention\Image\ImageManager`.
- Use the `Intervention\Image\Drivers\Gd\Driver` for image manipulation.
- Update the code to read and resize images using the new ImageManager instance.
- Modify color picking logic to use the updated syntax for accessing RGB values.
This commit adds pagination functionality to the posts index page. The code changes include:
- Sorting the posts by descending date
- Paginating the posts with 6 items per page
- Creating a new component called "Listposts" for rendering the paginated posts
- Adding a new view file for the "Listposts" component
- Updating the blade template of the posts index page to use the "Listposts" component and pass in the paginated posts
The purpose of these changes is to improve user experience by displaying a limited number of posts per page and providing navigation links for easier browsing.
- Added a new file `PostsController.php` in the `app/Http/Controllers` directory.
- Implemented the `index()` method to retrieve all posts using the Sheets facade.
- Implemented the `show()` method to display a single post using route model binding with Sheets.
- Updated the `RouteServiceProvider.php` file to bind the 'post' route parameter to retrieve posts from the Sheets collection.
- Created a new configuration file `sheets.php` in the `config` directory, defining default settings for collections and their corresponding sheet classes, path parsers, content parsers, and extensions.
- Added a new markdown file `hello-world.md` in the `content/posts` directory as an example post.
- Created two new blade view files: `index.blade.php` and `show.blade.php`, under the `resources/views/posts` directory, for displaying lists of posts and individual post details respectively.
- Modified the existing web routes (`web.php`) to include routes for accessing posts.
The changes enable users to view all posts on `/posts`, as well as access individual post details at `/post/{post}`.