- 23 May, 2019 1 commit
-
-
Giorgos Kazelidis authored
- Wrapped the edit_user_profile(), recover_user_profile() and import_user_credentials() views in the atomic() decorator to run database modification queries within an atomic transaction - Utilized SELECT FOR UPDATE queries in the edit_user_profile() and recover_user_profile() views to lock database rows (model instances) intended for update during an atomic transaction - Added the "PROJECT OVERVIEW" and "LIST OF SUGGESTED TO-DO ACTIONS" parts to README.md - Added documentation links to the "ENVIRONMENT SPECIFICATIONS" part of README.md - Changed the names of the Django root and project directories from myprj to slub - Changed the name of helper.py module to helpers.py
-
- 13 May, 2019 1 commit
-
-
Giorgos Kazelidis authored
- Removed the last_login field from the User model, inserted it to the Registry model (a User instance retains now one last_login value for each Platform instance that is associated with it via the corresponding Registry instance) and modified the emission arguments of the user_logged_in signal for logged-in User instances - Constrained the email fields of the User/Admin models and user profile edit/recovery forms to a maximum length of 100 characters - Constrained the username and password fields of the login form to a minimum length of 8 characters - Omitted the redundant ECE-NTUA platform from the test Platform instances that are used to populate the usermerge_platform table of usermergeDB - Omitted the username format check {piYYbSSS with SSS <> 000} of the login form for the Novice and Grader platforms as there can exist valid usernames for them that are not in the aforementioned format - Enabled the Django admin site, registered all the application models to it and provided instructions on accessing it - Defined the User_login_required() and Admin_login_required() decorators and used them for enhanced access control in the majority of views - Reduced the database queries made in recover_user_profile() view to enhance its performance - Added the production_logs folder to the .gitignore file
-
- 23 Apr, 2019 1 commit
-
-
Giorgos Kazelidis authored
- Created and used a library of helper functions that refer (mainly) to views - Created and used a library of validators that refer (mainly) to forms - Corrected/enhanced the existing views - used TemplateResponse objects instead of calling the render() shortcut function, inserted post-validation error codes in template contexts when needed, etc. - Deleted the logout template and used redirection to the login template on logout - Corrected the generic URL format - Enhanced the documentation of templates and modules
-
- 28 Jun, 2018 1 commit
-
-
Giorgos Kazelidis authored
- Created the DB schema/models and added Greek support to the initiated DB - Created a script to populate DB with test data - Implemented the authentication, login and logout back-ends (modified built-in auth, backends and middleware modules) as well as the relative front-ends (user home, admin home and logout templates) - Implemented some basic validation checks and error handling for the login form - Created custom HTTP error (400, 403, 404, 500) templates - Added new instructions to README.md
-