454 Commits

Author SHA1 Message Date
8b71dc2c02
Fixes Tests 2024-10-01 00:50:38 -04:00
41555ca674
Eager Loading SPT Versions 2024-09-30 23:47:04 -04:00
39a7640e92
Reworked Follow Livewire Components
Fixes PHPStan errors and makes it a little more performant. Still not good enough. Making way to many queries for what it's doing.
2024-09-30 22:56:06 -04:00
df8e7f958d
Uses On Attribute for Livewire Listener 2024-09-30 22:54:45 -04:00
30985541e7
Fixes PHPStan Issues 2024-09-30 22:54:15 -04:00
1127f2b9df
Eager Load User Mods 2024-09-30 22:53:32 -04:00
319e5e65e9
Disable Lazy Loading in Development 2024-09-30 22:52:44 -04:00
0d043ff880
Username Handling
- When a new user is created using Discord OAuth information, if the username returned from Discord is already taken, append randomness to the end of the username.
- Validates that a new account name is unique.
- Validates that an updated account name is unique.
2024-09-30 16:43:31 -04:00
7a68e31f30
Merge branch 'oauth' into develop 2024-09-30 14:10:32 -04:00
0208213564
Removes fancy quotes. 2024-09-30 14:09:38 -04:00
caefd6dbb2
Discord Avatar Import
Imports the user's avatar from discord when a new user is created through OAuth.
2024-09-30 14:06:37 -04:00
746fed1746
OAuth Management
Adds a edit-user-profile section to allow a user to remove an OAuth connection from their account when they have a local account password set.
2024-09-27 20:41:36 -04:00
46550b5d8f
OAuth Account Password Creation
This allows a user that was created via OAuth to set a local password on their account.
2024-09-27 16:51:13 -04:00
bba61fa814
Conditionally show the Discord login button 2024-09-27 12:04:01 -04:00
7ad9682be0
Style Discord Login Button 2024-09-27 12:00:57 -04:00
96a0b82695 add small screen control
also fix dropdown text colors
2024-09-27 08:57:11 -04:00
88aa9b1ad8
Discord OAuth
Creates the base structure for Discord OAuth.
2024-09-26 16:55:44 -04:00
4ea50fb0ef add initial dropdown
still need to handle size constraints
2024-09-26 16:22:27 -04:00
a94a1418ef
Merge branch 'download-tracking' into develop 2024-09-25 17:06:03 -04:00
7e1c66f250
Download Count Review
Reviewed the download count PR work and made some changes:
- Updated the download link route to include the mod's slug for easier identification.
- Moved rate limiter from the route middleware (the entire controller) to just the show method in the controller.
- Created a ModVersionPolicy that the controller can check against.
- Moves download increment logic into the model.
- Defers the call to the download increment logic (now run in the background)
- Updated the route to have a name, and the downloadUrl methods to build the URL dynamically using the route name.
- Wrote some tests to check URL building, download counting, and rate limiting.

# Conflicts:
#	app/Http/Controllers/ModVersionController.php
#	app/Providers/AppServiceProvider.php
2024-09-25 17:04:46 -04:00
Refringe
deca405976 Pint PHP Style Fixes [no ci] 2024-09-25 19:15:41 +00:00
d8a88d26ff Merge pull request 'Implement Download Counting' (#53) from waffle.lord/forge:impl/download-tracking into download-tracking
Reviewed-on: SPT/forge#53
2024-09-25 19:14:33 +00:00
19e962561c Merge remote-tracking branch 'upstream/develop' into impl/download-tracking 2024-09-25 11:18:30 -04:00
41fe864dca Merge pull request 'Fix Filters Overlap' (#52) from waffle.lord/forge:fix/#39 into develop
Reviewed-on: SPT/forge#52
2024-09-25 15:00:52 +00:00
6b7efb87ec Merge remote-tracking branch 'upstream/develop' into impl/download-tracking 2024-09-24 14:13:17 -04:00
5aaf31ab84 Merge remote-tracking branch 'upstream/develop' into fix/#39 2024-09-24 14:12:56 -04:00
275760f34a
Merge branch 'profile-data' into develop 2024-09-24 00:49:46 -04:00
b1499bc58d
Updates Deps 2024-09-24 00:47:25 -04:00
ce33b0bedf
Updates Mobile Menus 2024-09-24 00:47:13 -04:00
4e33dd9ec5
Updates About Field Default
Updates the about column to have a default of an empty string. Curse you, MySQL!
2024-09-24 00:46:44 -04:00
6bc02ca210
Imports User Follows
The import script will now import hub user follows.
2024-09-24 00:43:15 -04:00
2cd8e9fa86
Global Search Fixes
Fixes an issue with the global search box not functioning correctly with keyboard navigation.
2024-09-24 00:42:26 -04:00
691f352d01
User Follow Components
Updates the user follow component to two smaller components. Still needs to be optimized.
2024-09-24 00:40:33 -04:00
8a156d8a43 update controller
to recalculate downloads and return 307 specifically
2024-09-20 10:46:26 -04:00
6d6670e246 setup download counting 2024-09-20 10:37:16 -04:00
f1268fb857 move search bar when screen is too small 2024-09-18 15:41:20 -04:00
cf381c9e7d
Method syncWithoutDetaching Expects Array 2024-09-17 17:19:39 -04:00
db259e2689
Removes PHPStan Errors 2024-09-17 17:19:07 -04:00
eb9a656c69
RAINBOWS
Need I say more?
2024-09-17 17:14:42 -04:00
c3f9fcf19f
Minor User Model Changes
- Added a few docblock comments
- Pint reordered methods (for some reason)
- Added type casts for id, hub_id, created_at, and updated_at
2024-09-17 15:33:42 -04:00
b1195ebb7c
Remove the dump call
Whoops! My bad.
2024-09-17 15:26:55 -04:00
7c4753d38e
Simplifies user_follows Table Columns
The column and FK can be defined together using the `foreignId` method.
2024-09-17 15:26:30 -04:00
09e9e15c5e
Global Search User Profile Link
Links up the users in the global search to the user's profile page.
2024-09-17 14:52:09 -04:00
be05d2693e
Remove Controller User Model Binding
We're going to being in the user id from the URI instead so we can do a custom lookup on it.
2024-09-17 14:51:32 -04:00
b67dd2fd97 Merge pull request 'Add user profile data' (#37) from waffle.lord/forge:user-profile-info into profile-data
Reviewed-on: SPT/forge#37
2024-09-17 17:36:28 +00:00
579a26a360 Merge branch 'profile-data' into user-profile-info 2024-09-17 17:32:46 +00: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
df779135c1
Global Search Accessibility
Improved the accessibility of the global search field in the header.
- When focus is lost, the dropdown disappears
- The tab key and up/down arrows can be used to cycle through results
- When using the keyboard to cycle through results, focus loops back to the top result
- Pressing the esc key will clear the search text and remove the focus lock on the search

Resolves #25
2024-09-17 11:59:28 -04:00
0f3c7e03d0 Merge remote-tracking branch 'upstream/develop' into user-profile-info 2024-09-17 09:39:43 -04:00
ec55717ab3 update mod card parameter; about styling 2024-09-17 09:38:12 -04:00