1. 13 May, 2019 1 commit
    • Giorgos Kazelidis's avatar
      - Defined __str__() methods for all the application models · 95a43695
      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
      95a43695
  2. 23 Apr, 2019 1 commit
    • Giorgos Kazelidis's avatar
      - Implemented the user profile edit, search and recovery tasks · e324d683
      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
      e324d683
  3. 04 Mar, 2019 1 commit
    • Giorgos Kazelidis's avatar
      - Installed concurrent-log-handler and set up the logging system · e6f4aa1b
      Giorgos Kazelidis authored
      - Loaded the time zone tables in mysql database
      - Added Unicode/UTF-8 data support in usermergeDB and templates
      - Replaced CLASS_SESSION_KEY with PLATFORM_SESSION_KEY in the session data as the latter indicates both user model and platform
      - Corrected the session auth hash calculation method of both user models to take password (and platform, in case of User model) into account
      - Enhanced template structure and functionality by using XHTML5 syntax, new HTML5 semantic elements, html5shiv.js, normalize.css, field labels, appropriate images/icons, etc. and moving internal CSS to base.css
      - Made some minor changes in models (changed max_length of first_name and last_name fields) and database connection options (introduced SET_DEFAULT_STORAGE_ENGINE_TO_INNODB variable and changed SQL mode)
      e6f4aa1b
  4. 28 Jun, 2018 1 commit
    • Giorgos Kazelidis's avatar
      - Corrected some minor display issues in login template · 219ab1a8
      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
      219ab1a8
  5. 21 May, 2018 1 commit
  6. 07 May, 2018 2 commits