Commit Graph

152 Commits

Author SHA1 Message Date
e93abd2ab7 Added logging for successful authentication attempts 2020-09-08 01:31:09 +01:00
20ab381076 Added logging for failed authentication attempts 2020-09-08 01:26:27 +01:00
e566e40404 Update target user in logs 2020-09-08 00:07:50 +01:00
b0a935b8b3 Add acceptable "permanent" ban time 2020-09-08 00:06:27 +01:00
0dfb68dba2 Add acceptable "permanent" ban time 2020-09-08 00:05:37 +01:00
24303052ad Ban validation update 2020-09-07 23:57:50 +01:00
178bc31a6e Ban datetime format 2020-09-07 23:44:14 +01:00
98e557a840 Update ban dates 2020-09-07 23:42:09 +01:00
95bf7c239e Update ban time logic 2020-09-07 23:38:25 +01:00
4d2595dd39 Update ban logic 2020-09-07 23:33:35 +01:00
4e81a41210 Updated installation process 2020-09-07 23:22:25 +01:00
1319ce6b86 Added more debug logging 2020-09-07 22:56:54 +01:00
bea83b650c Added more debug logging 2020-09-07 22:54:20 +01:00
675cc3c329 Import missing facade 2020-09-07 22:35:42 +01:00
e8119b763c Register Application observers 2020-09-07 21:43:48 +01:00
87f8e63b24 Force new users to verify email 2020-09-03 20:06:29 +01:00
8e85e08171 Vacancy tweaks 2020-09-03 02:52:21 +01:00
de3dba3627 Vacancy tweaks 2020-09-03 02:50:19 +01:00
7e58c3af6b Add more missing translation strings
Also fixed broken vacancy editor
2020-09-03 02:20:15 +01:00
60874c046f Conditionally pre-load Appointment relationship 2020-09-03 00:34:35 +01:00
e9dd1567b8 Appointment model tweaks 2020-09-03 00:23:09 +01:00
af96d193a4 Missing login button translation 2020-09-03 00:11:49 +01:00
9b5e35b241 Missing typehint 2020-09-02 20:52:56 +01:00
a0192cdb02 Added route localization and auto detection 2020-09-02 17:43:27 +01:00
17fb0e236f Make notifications cancellable
This commit makes certain notifications cancellable. This enables notifications to be sent conditionally based on the user's choice.
2020-08-31 22:06:00 +01:00
27b1f3170b Update settings log level 2020-08-31 20:02:30 +01:00
00cc36246f Minor import change 2020-08-31 19:53:10 +01:00
41e3e817a2 Added error messages to settings.blade.php 2020-08-31 19:50:58 +01:00
2afea88846 Added logging to Settings 2020-08-31 19:47:27 +01:00
ea96cbc1f5 Options: return value instead of whole model 2020-08-31 18:54:33 +01:00
2996e66c8b Add missing query builder statement for options 2020-08-31 18:51:35 +01:00
cd874c5f58 Settings auth checks 2020-08-31 18:36:38 +01:00
a3071dccf9 Update wrong view name 2020-08-31 17:58:07 +01:00
b0cbf65cfc Added missing permissions to roles 2020-08-31 17:55:36 +01:00
6be5e241d4 Add permission and provider imports 2020-08-31 16:41:01 +01:00
ca82f5882d Add settings page 2020-08-30 23:06:01 +01:00
535a2c3973 Fixed broken banning logic 2020-08-13 22:12:17 +01:00
ad5c3404cc
Update variable 2020-07-25 01:20:43 +01:00
62b063ee63
Missed variable name 2020-07-23 02:37:08 +01:00
94d08f1886 Trust Heroku proxies
This commit also forces the environment into HTTPS when in production.
2020-07-18 06:33:00 +01:00
91627decbe Added Heroku Procfile
Also changed required password length for new users
2020-07-18 02:45:15 +01:00
2763f777ab Add password strength requirment
This commit adds a password strength requirement for new users using 
regular expressions.
Also adds a dismissable alert so users know how to create passwords 
properly.
2020-07-17 23:13:46 +01:00
d392c0593f Add two factor authentication 2020-07-17 22:44:10 +01:00
5f1f92a9ce Code review
This commit fixes some superficial instances of Broken Access Control 
(https://owasp.org/www-project-top-ten/OWASP_Top_Ten_2017/Top_10-2017_A5-Broken_Access_Control).
There may be some more instances of this, as authorization was only done 
after most of the controllers were done (big mistake).

Some refactoring was also performed, where Route Model Binding with DI 
(dependency injection) was used whenever possible, to increase 
testability of the codebase.
Some reused code was also moved to Helper classes as to enforce DRY; 
There may be some lines of code that are still copy-pasted from other 
parts of the codebase for reuse.

Non-breaking refactoring changes were made, but the app as a whole still 
needs full manual testing, and customised responses to HTTP 500 
responses. Some errors are also not handled gracefully and this wasn't 
checked in this commit.
2020-07-16 21:21:28 +01:00
4a766620ff Fix appointment policy not being called correctly
This commit fixes the appointment policy being called at the wrong time, with the wrong arguments.
It also fixes wrong references on the auth service provider, also fixing other issues with poliy usage.

Fixes #3 and SPACEJEWEL-HOSTING-59.
2020-07-16 05:24:00 +01:00
bca6020ab0 Add ability to edit forms and add new fields
This commit adds the ability to edit and modify existing forms.
On the technical side, it also adds a new reusable validation Facade which helps reduce duplicated code.
2020-07-15 06:48:49 +01:00
1f50faaea7 Add ability to preview application 2020-07-12 19:36:12 +01:00
e978a5417b Added ability to delete single application
Also moved User observer code to Application observer
2020-07-12 17:01:33 +01:00
4dc412e53c Added check for constrained models when deleting 2020-07-12 06:39:39 +01:00
bd0664ce0d Add ability to edit Vacancies 2020-07-11 20:34:26 +01:00
4b390ea536 Added full Vacancy description
Also added support for Markdown
2020-07-11 05:34:12 +01:00
035c9399a6 Add "All Applications" page 2020-07-11 02:43:59 +01:00
d1f4be124c Update wrong key name 2020-07-10 05:26:40 +01:00
0f126886f5 Use package for .env editing
The solution provided by this package is similar to what was previously implemented (see #1), but it's nicely packaged and made available in a Facade.
2020-07-10 05:00:41 +01:00
4deb882d23 Add check for null env and attempt to recover 2020-07-09 09:07:49 +01:00
c3a6b16a13 Clear configuration cache before editing it 2020-07-09 08:50:54 +01:00
fb4d832489 Beautified the search and replace function 2020-07-09 08:46:45 +01:00
4456d19c1f Clear cache and refresh *before* running migration 2020-07-09 07:12:15 +01:00
c7fd8989f9 More command improvements 2020-07-09 07:07:28 +01:00
a42df354c7 Command improvements
Remove process args


Silence npm WARN output (when applicable)


Compat for npm in different directories


Reverse npm silence


Replace Symfony Process


Remove Symfony Process refs


Add forgotten output for commands


Removed colons that artisan already added


Remove optional parameters in install cmd


Simplify settings save call


Further simplify settings save call
2020-07-09 07:04:04 +01:00
f673ef8222 Add installation bootstrap script 2020-07-09 05:10:22 +01:00
2bf8c8e90c Enable maintenance mode during installation 2020-07-09 05:06:25 +01:00
d111864bea Add depedency install progress bar 2020-07-09 05:01:50 +01:00
4dbf86a328 Add installation command
Adds an installation and .env modification commands for better usability
2020-07-09 04:52:53 +01:00
ed95f02e00 Fix error where exception appeared instead of error message
This commit fixes an issue with fake MC usernames being used and 
resulting in a fatal exception. Displays an error msg now.
2020-06-28 04:51:32 +01:00
c58c46eda8 Fix error where wrong method is called 2020-06-28 01:30:34 +01:00
91c408fb4f Trim config results to prevent error in case of extra spaces 2020-06-28 00:50:28 +01:00
599d742e96 Use UUID conversion facade 2020-06-28 00:46:49 +01:00
9ec2f9edce Update .env.example to reflect new config values 2020-06-27 22:22:33 +01:00
33c16fcf46 Add user directory & isolate authorisation 2020-06-27 19:15:33 +01:00
71efdf93d8 Add dashboard widgets 2020-06-27 04:49:55 +01:00
5a8c080a31 Beta version
This commit is too large to list all changes.
2020-06-27 00:32:33 +01:00
d15c0cb12f Major changes - Vote system now finished 2020-05-30 00:20:39 +01:00
cc8c293cc6 Significant changes
Added several components and features too long to list here
2020-05-22 03:49:16 +01:00
2ff0da3e4f Made Profile & Account Settings functional
Also moved redundant HTML markup to component file for reuse.
Username to UUID converter also added as Middleware
2020-05-13 22:47:51 +01:00
7635f8e2f4 Add application list for users 2020-05-11 16:44:47 +01:00
f46a941b61 Add hold period enforcement 2020-05-10 06:36:42 +01:00
cf7cc142a7 Add Dynamic Form Processing for Custom Forms 2020-05-08 08:10:25 +01:00
4c6a435e34 Entrypoint: Add Application Page
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).
2020-05-08 06:06:24 +01:00
49c1ed4698 Dynamic position rendering for homepage 2020-05-08 01:45:29 +01:00
a4e415943a Add save & update functionality to positions
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.
2020-05-08 00:24:56 +01:00
290104eea7 Added view forms 2020-05-07 00:36:33 +01:00
f52b249834 Error and success messages from form builder 2020-05-06 23:16:34 +01:00
8d79345095 Store form structure in DB 2020-05-06 05:42:55 +01:00
2df5bf144d Added save function to save button
This commit also improves how forms are parsed by PHP by passing them as arrays, therefore making them easier to process.
Note: One of the files contains a debug statement that will be removed in the next commit
2020-05-06 03:44:39 +01:00
79eaa2ea54 Add dynamic form builder
This form builder still needs some improvements and names for every field.
2020-05-05 05:25:56 +01:00
27794729b9 Added vacancies list 2020-05-03 05:04:26 +01:00
f5bb92b3c8 Add Registered Player listing 2020-05-03 04:31:02 +01:00
cfb8e6bbca Add Staff Member listing 2020-05-03 04:10:33 +01:00
669fbc1ae5 Add Mojang's status to dashboard
Also adds a Cache table to the database. Contains incomplete routes.
2020-05-03 00:45:29 +01:00
7cf056f57e Switch custom Guzzle integration for Laravel's HTTP facade
Commit also adds config options to the example file.
2020-05-02 20:18:56 +01:00
623200914d Add interview page (incomplete commit) 2020-05-02 06:54:14 +01:00
e0e417e631 Add peer review tab 2020-05-01 06:21:44 +01:00
b5e6a4a94b Added Outstanding applications page
This commit also includes Chart.js for the whole project using Webpack. It also updates NPM packages to support ChartJS, and suppresses locale.js warnings from Webpack builds.
Gitignore removes the webpack bundle file since that file should be built each time dependencies/js code are modified.
2020-05-01 05:42:19 +01:00
c802908bf3 Add "My Profile" Page
This commit adds the layout for the profile page, for users and staff members.
2020-04-30 22:53:57 +01:00
76d6ea6704 Added denied applications page
This commit adds a modified version of the previous page, meant for displaying denied apps.
Also modified method names and adds dates.
2020-04-30 16:55:14 +01:00
045b0c42f6 Added Under Review page
The user applications page has been added into the app.
2020-04-30 16:38:54 +01:00
914bde3709 Make optional application-related registration parameters optional
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.
2020-04-29 22:23:26 +01:00
7c22894e94 Added models, migrations and controllers
This commit adds the logical structure for the app.
2020-04-29 18:15:54 +01:00
70c7429e36 Added Authentication Scaffolding, Dashboard, and Sidenav 2020-04-29 03:20:00 +01:00