Implemented a Reddit-like account suspension system (similar to subreddit bans). This makes it easier to ban users from the app, and the code has also been cleaned up.
The interface was also revamped.
TeamSeeder previously created permissions that already existed, if the migration had ran twice. This commit forces the seeder to verify if the permission it's attempting to create already exists, and if not, it creates it and assigns them at the end.
THis prevents an error from appearing if these permissions were created manually. In this case, the seeder will only assign the permissions instead of creating them.
This commit finally adds the dynamically rendered form that changes according to how the user builds their form.
It also fragments the header and footer for the main page into their own separate files for ease of access later.
Vacancy status has also been added to the Vacancies in DB.
All staff application endpoints have also been moved to under the user application endpoints group, for ease of use (duplicated route group).
Tooltips also added, as well as a general configuration file for Mojang Status URL.
Relationships were also added between forms and Vacancies.
Status verification for the dashboard was moved to a Service Provider, where it adds log entries when cache expires.
Authentication controllers were also updated to reflect the new dashboard URL.
This commit makes optional registration parameters optional; They should only be filled in after the user has submitted an application. The application will crash during registration without these parameters being optional, and adding them to the form would be illogical.