72 Commits

Author SHA1 Message Date
3d5697e04b
Mod Teaser Updates
- Updates the import script to import the full mod teaser text, up to 255 characters.
- Updates mod detail page to show teaser in the main detail card.
- Updates mod listing component to show the first 100 characters of the teaser.
- Adjusts padding on the mod listing component.

Resolves #22
2024-08-09 15:22:42 -04:00
593b44150c
Resolves Mod Detail Page Version Issue
The latest version on the mod detail page was being selected by created date instead of highest version number. This has been resolved. Also adds a test for this issue.
2024-08-09 12:35:46 -04:00
713ea7e076
Download Number Macro
Adds a `Number:downloads()` macro to format the number of downloads depending on how many there are. Example: 1259000 is converted into 1.25M, 125900 is converted into 125.9K.

Updated the views to use this macro. Also included a title tag with the exact number so they can be viewed on hover.
2024-08-09 00:35:18 -04:00
23a9cabf99
Implements API Sorting
You can now sort mod and user data by whitelisted attributes.
2024-08-08 18:18:05 -04:00
3a334033fe
API Updates
Brings the API in close sync to the rest of the site.
- Adds resources for License, UserRole, and ModVersion models
- Adds filtering on attribute data
- The `includes` data is now disabled by default and available conditionally
2024-08-08 16:11:50 -04:00
0ed25fec03
User API Updates
Adds user profile links to the user API resource.
Fixes structure of relationship data and link sections.
Adds parameter to include related user data when requesting mod data.
2024-08-07 23:30:09 -04:00
35cd00e39d
Adds Cover Photo Field
Adds the cover photo field to the Jetstream edit profile form.
2024-08-07 16:23:55 -04:00
55273e5a90
Hub Imports of User Avatars and Cover Photos
TODO: Cover photos need to be added to the profile page so users can edit them.
2024-08-03 17:36:33 -04:00
11453db596
Model Comments, Yay! 2024-08-03 17:36:33 -04:00
115f81fe96
Basic structure to load user profile view 2024-08-03 17:34:41 -04:00
2680e21325
Import Script - Temp Table Charset/Collation
Sets the charset to `utf8mb4` and the collation to `utf8mb4_0900_ai_ci` when the temporary tables are created in the import script. Prevents conversion errors when the MySQL defaults are not set to match the expected charset and collation.
2024-08-03 12:06:01 -04:00
c6f252ace7
Mod Version Dependency Updates
- Handles circular mod version dependencies
- Optimizes mod show query to only pull the versions relationship
- Adds a mod dependency factory
- Refactored tests to use mod dependency factory
- Adds mod dependency generation into the default seeder
- Adds unique index on mod dependencies table
- Adds mod dependencies on the mod show view
2024-08-01 17:15:02 -04:00
20e1ab2dae
Import Script, Published Date
Updates the import script to ignore any scopes on the Mod and ModVersion models when making inserts. Adds the `published_at` field.
2024-08-01 17:03:03 -04:00
f94204e978
Mod Publish Dates (#17) 2024-07-31 19:53:09 -04:00
203626d043 run pint? 2024-07-31 15:14:22 -04:00
82a466eb58 update scope and tests
to not include null published at fields
2024-07-31 14:06:56 -04:00
f04fbab5c6 add published scope 2024-07-26 09:35:09 -04:00
7ee542856d add published_at 2024-07-26 09:34:57 -04:00
74f61df875
Adds Mod Version Dependency System
Pretty nifty, but it still needs a few things before merge. Factory & front-end work, at least.
2024-07-26 02:19:42 -04:00
fea14652c9
Merge branch 'mod-page-tabs' into develop
# Conflicts:
#	app/Http/Controllers/ModController.php
#	resources/views/mod/show.blade.php

Resolved by Refringe
2024-07-23 23:26:15 -04:00
refringe
705afc95a8 Pint PHP Style Fixes [no ci] 2024-07-24 02:01:19 +00:00
8eae71b22a
Simplifies Latest Version Relationship
This change removes the `latestSptVersion()` relationship, which fetched the latest mod version for the latest SPT version, with a more simple `latestVersion()` relationship that simply fetches the latest mod version based on the mod version, version number field.

This is less complicated and much less confusing.
2024-07-23 21:21:55 -04:00
fce5bd4b04 move modversion ordering
to model
2024-07-23 09:27:15 -04:00
waffle-lord
30cdc60ae0
Merge branch 'develop' into impl/mod-page-tabs 2024-07-23 04:59:13 -07:00
b429300b7b update version tab info 2024-07-22 10:16:53 -04:00
8a9e7b0573
Disables the extra Filament login route 2024-07-18 19:50:57 -04:00
1960cec21f
Updates PHPStan to ignore tests 2024-07-17 23:50:57 -04:00
cb636fd197
Adds Search Sync Command
Adds an artisan app command that handles all of the search set-up and sync needed to get going.

`artisan app:search-sync`
2024-07-16 12:02:52 -04:00
49fd8b83df
Search SPT Version & Homepage Queries
The global search results now include the SPT version number the latest version of the mod is compatible with. Additionally, mod thumbnails and the SPT version numbers

Homepage queries have been further optimized and are now cached for 5 minutes.
2024-07-15 23:17:53 -04:00
53b67b23dd
Queueable Account Notifications
The email verification and password reset notifications are now handled on a queue.
2024-07-06 19:14:51 -04:00
a927f10941
Import Multiple Mod Authors
The import script has been updated to pull in additional mod authors from the hub.
2024-07-05 14:35:00 -04:00
c1a58e29dd
Multiple Mod Authors
The mod-to-user relationship has been modified to be a many-to-many relationship. Mods can now have multiple authors, and an author can have multiple mods.
2024-07-04 22:10:48 -04:00
a1504fe622
Global Search Structure
Reconfigured the global search to include more than one model. Refactored the search front-end to work inline instead of inside a model/popup.
2024-07-03 17:47:02 -04:00
f734adca22
Resolves PHPStan Error 2024-06-27 23:18:53 -04:00
0e3783555e
Basic API
Includes routes for login, logout, listing users, listing mods, listing a user, and listing a mod. Very basic, just laying out the structure.

https://www.postman.com/refringe/workspace/spt-forge
2024-06-27 16:58:11 -04:00
251b1ffd14
Laravel Filament
Adds Laravel Filament to be used as an admin panel. Adds the users to the admin panel as an initial resource.
2024-06-27 00:19:18 -04:00
5b62f359e3
Null Guard Admin Check
Also adds method to check if a user is a moderator.
2024-06-23 08:37:16 -04:00
d34a75523a
Fixes Local Image Issue
Local images should now appear. Needed to specify the public disk to ensure that HTTPS was used.
2024-06-23 08:34:22 -04:00
0e31202714
Removes Nova Package 2024-06-20 22:06:13 -04:00
d1cdc46548
Uses Config Option for Livewire Location 2024-06-19 15:21:03 -04:00
2bbe715342
Updates Livewire Script Route 2024-06-19 14:41:06 -04:00
bf29b348a5
Moves Livewire Assets to R2 2024-06-19 14:03:36 -04:00
d434bc20de
Adds Auth Gates for Pulse, Horizon, and Nova 2024-06-19 13:20:51 -04:00
refringe
169777f957 Pint PHP Style Fixes [no ci] 2024-06-19 03:19:18 +00:00
9b304df564
Workflow Work 2024-06-18 15:19:36 -04:00
refringe
7ecdbed34d Pint PHP Style Fixes [no ci] 2024-06-18 18:38:24 +00:00
5e1c05f49d
Sync Admin Roles
Roles (or "ranks" as they're called on the hub) are now being pulled down into the local database.
2024-06-18 00:41:12 -04:00
a3b3971d2f
User Bans 2024-06-16 21:40:00 -04:00
be0eecf1e9
Converts import command to a queued job 2024-06-12 16:52:32 -04:00
8d1242ed55
Installs Horizon 2024-06-11 21:42:27 -04:00