* Add /api/v1/users/online endpoint
* Fix chaining style
* Return empty list if none online
* Return by ascending login time and limit to 50
* Improve pagination clamping
* Correct login time sort
* Refactor error modal into its own partial
* Fix unresolved error string in TwoFactorPartial
* Use tuple model instead of ViewData for error title and message
* Apply suggestions from code review
* Refactor NpTicket parser and add NpTicket signature documentation
* Update TickerBuilder chaining style
* Fix SectionHeader position returning wrong value
* Don't attempt to parse ticket if it is less than 8 bytes
* Simplify filters and make cross control slots not show by default
Also sort author levels by oldest levels first rather than newest levels first.
* Fix unit test expecting slots to sorted by timestamp descending
* Remove errant whitespace
* Disallow moderators/administrators from issuing cases against each other
* Resolve suggestions from reviewers
* Only request user from db if id is valid
* Implement pride logo as well as needed configuration option
* Potentially fix issue with icons not rendering
* Fix login form icon and remove unused image from PasswordResetPage
* Initial implementation of new slot sorting and filtering system
* Initial implementation of filtering for lbp3 community tab
* Add support for organization on lbp3
* Add playlist and user categories
* Implement unit tests for all filters
Refactor more systems to use PaginationData
* Fix PlayerCountFilter test
* Add more unit tests and integration tests for the filter system
* Fix LBP2 move filter and gameFilterType
* Fix sort by likes in LBP3 category
* Add sort for total plays
* Remove extra whitespace and make styling more consistent
* Order hearted and queued levels by primary key ID
* Fix query without order warnings
[skip ci] Update the localization files
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
If this breaks something, blame koko for convincing me to merge this
* Add proper ban page upon logging in
* Remove two extra line break tags that don't need to be there
* Fix timestamp formatting
* Properly display timestamps in correct timezone
* Fix formatting issues with ban page
* Remove extra parenthesis which would be rendered on-page
* Add to redirect middleware to prevent navigating to other pages
* Small nitpick, renaming UserBannedPage to BannedUserPage
* Resolve nitpicks from reviewers
* Remove un-necessary log message in LoginForm
* Fix ban reason translatable string argument
* Word choice nitpick ("Ban Created" -> "Ban Issued")
* Final adjustments and nitpicks, visual and grammatical
* Resolve requested changes from reviewers
* Fix mod reason/notes overflow issue & show expiration time if applicable
* Remove extra whitespace
* Wrap using line break instead of overflow scroll bar
* Remove un-required overflow inline style
* Reorganize tests into unit/integration pattern
* Make DbSets virtual so they can be overridden by tests
* Add MessageControllerTests
* Implement DigestMiddlewareTests
* Refactor SMTPHelper to follow DI pattern which allows for mocking in unit tests.
* Fix MailQueueService service registration and shutdown
* Implement tests for Status and StatisticsController and reorganize tests
* Start working on UserControllerTests
* Start refactoring tests to use In-Memory EF provider
* Refactor integration tests to reset the database every time
Change default unit testing database credentials
* Update credentials to use default root with different passwords
* Throw exception when integration db is not available instead of falling back to in-memory
* Evaluate DbConnected every time
* Remove default DbContext constructor
* Setup DbContexts with options builder
* Convert remaining Moq DbContexts to InMemory ones
* Add more tests and use Assert.IsType for testing status code
* Add collection attribute to LighthouseServerTest
* Remove unused directives and calculate digest in tests
* Fix digest calculation in tests
* Add test database call
* Clear rooms after each test
* Fix CommentControllerTests.cs
* Disable test parallelization for gameserver tests
* Fix failing tests
Fix SlotTests
Make CreateUser actually add user to database
Fix dbConnected Lazy and change expected status codes
Properly Remove fragment from url for digest calculation
Fix digest calculation for regular requests
[skip ci] Remove unused directive
Don't use Database CreateUser function
Get rid of userId argument for generating random user
Rewrite logic for generating random users
Fix integration tests
* Implement changes from self-code review
* Fix registration tests
* Replace MailQueueService usages with IMailService
* implement basic filters and lbp2cc fixes
* lbp3 hide lbp2cc slots
* hide lbp2cc levels from hearted and most played categories in lbp3 and basic filters for lbp3
---------
Co-authored-by: jackcaver <jackcaver@users.noreply.github.com>
Co-authored-by: koko <koko@drones.gay>