20 Commits

Author SHA1 Message Date
6bc02ca210
Imports User Follows
The import script will now import hub user follows.
2024-09-24 00:43:15 -04:00
2cca45bcea
Removes Array Definition Docblock Information
Part of moving back to PHPStan level 5 means we can remove some of these. They're very busy and don't give enough context to outweigh the ugly.
2024-09-17 13:30:11 -04:00
45a211b66d
Listing Query & Relationship Clean-up
Rebuilt the filtering queries and many of the mod-to-modVersion-to-sptVersion relationships.

Resolves #38
2024-09-15 23:05:38 -04:00
d9b7d6fcc8
Resolves Remaining Larastan Issues 2024-09-12 13:19:52 -04:00
16e3a67efd
Query Optimization
- Download counts were taking too long to calculate dynamically, so we're keeping track of a total count with observers and queued job.
- Optimized the SQL used to order a mod listing by mod version update times.
2024-08-31 01:19:22 -04:00
09771d233a
Mod Filter Page - SPT Versions
Updated the mod filter page to only show SPT versions that have been tagged by mod versions.
2024-08-30 23:13:46 -04:00
1783a683ed
Semvar & Automatic Resolution - Remix
- Updated the SptVersion and ModVersion dependancies to resolve *all* compatible versions and introduced new relationships to pull just the latest compatible version. Had to rewrite a *bunch*, but it should be much more capable now. It can be expensive to resolve these properties when iterated over, so *make sure they're eager loaded using the `with` method when you're building the queries*.
- Updated the mod listing Livewire component to save the filter options within the PHP session instead of in browser local storage. *Much* cleaner.
- Removed caching from homepage queries to see how they preform on production. Will add back later.
- Updated ModVersion factory to create SptVersions if there are none specified.
- Probably lots of other changes too... I need to make smaller commits. :(
2024-08-29 15:46:10 -04:00
db578071e4
SPT Semvar & Automatic Resolution
This update gives mod versions a supported SPT version field that accepts a semantic version. The latest supported SPT version will be automatically resolved based on the semvar.

Next up: I need to update the ModVersion to SptVersion relationship to be a many-to-many and expand the resolution to resolve multiple versions.
2024-08-22 17:04:07 -04:00
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
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
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
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
203626d043 run pint? 2024-07-31 15:14:22 -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
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
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