Commit Graph

15 Commits

Author SHA1 Message Date
Miguel Nogueira 3f4bc28fd4
Added Demo mode
Demo mode allows to safely run a demo version of the app, with destructive features limited.

Some bugs were also fixed in this commit.
2021-09-04 00:44:54 +01:00
Miguel Nogueira c739933668
Push suspension logic onto Service
In preparation to the upcoming API, most logic is being moved to services. Models function as repositories.
2021-07-21 19:33:52 +01:00
Miguel Nogueira cbcc1f025a
Refactored ban system
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.
2021-07-20 22:35:49 +01:00
Miguel Nogueira 6cda1fe183
More refactoring
Refactored some old code and added missing translation calls.
2021-07-20 10:32:43 +01:00
Miguel Nogueira 620453c1e4
Separation of Concerns + old coude cleanup 2021-07-20 00:35:03 +01:00
Miguel Nogueira 96aa01b9c6 Recent changes 2020-11-02 21:44:05 +00:00
Miguel Nogueira 6541e25a39 Apply fixes from StyleCI 2020-10-10 16:30:26 +00:00
Miguel Nogueira 0dfb68dba2 Add acceptable "permanent" ban time 2020-09-08 00:05:37 +01:00
Miguel Nogueira 178bc31a6e Ban datetime format 2020-09-07 23:44:14 +01:00
Miguel Nogueira 95bf7c239e Update ban time logic 2020-09-07 23:38:25 +01:00
Miguel Nogueira 4d2595dd39 Update ban logic 2020-09-07 23:33:35 +01:00
Miguel Nogueira 535a2c3973 Fixed broken banning logic 2020-08-13 22:12:17 +01:00
Miguel Nogueira 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
Miguel Nogueira 33c16fcf46 Add user directory & isolate authorisation 2020-06-27 19:15:33 +01:00
Miguel Nogueira 5a8c080a31 Beta version
This commit is too large to list all changes.
2020-06-27 00:32:33 +01:00