1. 10 Oct, 2016 1 commit
  2. 07 Jun, 2016 1 commit
    • Vitalis Salis's avatar
      astakos: Use a util instead of EmailChangeForm · 5bc2ba78
      Vitalis Salis authored
      - Add unit tests for the `EmailChangeForm`
      - Move all the logic from the EmailChange form into
        a `change_user_email` util.
      - The form's `save` method now raises a
        `NotImplementedError` exception.
      - Make the `request_change_email` view use the
        new `change_user_email` util.
      - Make the `send_change_email` user util independent
        of the `HttpRequest` object.
      5bc2ba78
  3. 07 Apr, 2016 1 commit
  4. 28 Apr, 2015 1 commit
  5. 12 Jan, 2015 1 commit
  6. 07 Dec, 2014 2 commits
    • Christos Stavrakakis's avatar
      astakos: Create LDAP authentication provider · a323aa47
      Christos Stavrakakis authored
      Create the 'LDAPAuthProvider' to authenticate against an LDAP service.
      This provider is making use of the 'django-auth-ldap' package. However,
      the 'django_auth_ldap.backend.LDAPBackend' is make to work as a Django
      authentication backend, and so to automatically creates a User object.
      Because this does not match with how Astakos is handling authentication
      of third party providers, we override the 'get_or_create_user' method to
      create a mocked user object, which will be used by our provider to
      create the final AstakosUser object.
      a323aa47
    • Christos Stavrakakis's avatar
      astakos: Map provider to user attributes · 49cc12d5
      Christos Stavrakakis authored
      Extended the 'AuthProvider' class with a dictionary, mapping provider's
      attributes to AstakosUser attributes. Also, this dictionary dictates
      whether the user can change an attribute, or the value of this attribute
      is automatically set by the provider.
      
      Also, update profile forms by making attributes that are forced by the
      provider to be read-only.
      
      Finally, if all attributes are forced by the provider the
      'ThirdPartyCreation' form is not required. In this case, the user is
       the AstakosUser is automatically created with the profile that is
       provided by the provider.
      49cc12d5
  7. 04 Dec, 2014 1 commit
  8. 21 Nov, 2014 1 commit
  9. 01 Sep, 2014 1 commit
  10. 22 Jul, 2014 1 commit
  11. 03 Jul, 2014 1 commit
  12. 02 Jul, 2014 2 commits
  13. 16 Jun, 2014 1 commit
    • Alex Pyrgiotis's avatar
      astakos: Split im/functions.py · 9961f132
      Alex Pyrgiotis authored
      Split `im/functions.py` in two parts. Rename the first part as
      `user_utils.py` and keep in it all user-related utilities that
      `im/functions.py` provided (mainly mail utilities). The second part is
      the project-related functions, which will be kept in `im/functions.py`
      for now.
      
      Also, fix any broken imports that this split introduces.
      9961f132
  14. 02 Jun, 2014 1 commit
  15. 13 May, 2014 2 commits
    • Kostas Papadimitriou's avatar
      astakos: Projects views fixes · 731b8dbd
      Kostas Papadimitriou authored
      - Fix applicant permissions in project detail view.
      - Restrict project owner email to be visible only by project admins.
      - Fix access to unitialized project detail view.
      - Alternative realname display for base projects.
      - Do not require total members number in projects form. Set to infinite if
        no value is set to mimic api behaviour.
      - Use application.owner instead of project.owner in the project listing view.
      - Revert optional base project visibility in admin project list view.
      - Display error when user is not allowed to call project action.
      - Fix ordering of per member/total resources display.
      - Remove "cancel" action in create/modify project summary view.
      - Differentiate project modification heading (append "modification" suffix).
      - Reword "base project" to "system project". "[system]" prefix with
        user email address and name is used to display base projects to admins.
      - Hide details/membership sections in base project modificatation/details views.
      731b8dbd
    • Kostas Papadimitriou's avatar
      astakos: Projects views enhancements · 1226d973
      Kostas Papadimitriou authored
      - Include total quota help text for each resource.
      - Two column layout for per user/total quota.
      - Fixed owner formatters in template filters.
      - Proper display of unset project application resources.
      - Hide base projects by default. Include base project toggling action in
        projects list view.
      - Set proper project name field validators for base project in
        project modifcation form.
      - Improve visual highlighting of quota diffs
      - Improve membership status messages
      - Improved project filtering in project list/join views
      - List all public/active projects in `join project` view.
      - Handle unowned projects in projects modification form
      - Display all project resources in project application summary view.
      - Permit zero values in project application/modification form.
      - Avoid modifcation of immutable base project fields in project modification
        view.
      - Display project/application creation date to project admins.
      - Remove user base project when a user gets removed.
      - Convert ProjectForbidden exception to 403 http responses.
      - Additional user access checks handling in project/app detail view.
      - Let both applicant and project admins to dismiss a denied project
        application.
      - Forbid project owner to act upon an admin project modification.
      - Prevent POST requests in project modification detail view.
      - Handle pending app quota per applicant
        When applying for a modification, the existing pending modifications,
        which will be replaced, may have been initiated by another user. We need
        thus to handle the astakos.pending_app resource per applicant.
      - Introduce `related`, `active` mode in projects list api call
        Related mode returns all projects user owns or is has a related
        membership to. Active mode returns available public/active projects.
      1226d973
  16. 14 Apr, 2014 1 commit
    • Vangelis Koukis's avatar
      Switch license to GPLv3 · 02071b96
      Vangelis Koukis authored
      According to the decision of the GRNET Board of Directors,
      switch license to GPLv3.
      
      This commit will be propagated to the release
      and master branches based on git flow, and the next
      release will be licensed as GPLv3.
      02071b96
  17. 05 Mar, 2014 1 commit
    • Kostas Papadimitriou's avatar
      astakos: New projects improvements · e5998e96
      Kostas Papadimitriou authored
      - Fine grained handling of project modification field (exclude unchanged fields)
      - Display modified fields in project modification details/summary views
      - Set distinguished content in project/app details/summary views
      - Minor styling improvements
      e5998e96
  18. 28 Feb, 2014 1 commit
  19. 13 Feb, 2014 2 commits
  20. 20 Dec, 2013 2 commits
  21. 19 Dec, 2013 2 commits
  22. 25 Nov, 2013 4 commits
    • Giorgos Korfiatis's avatar
      astakos: Associate only accepted users with projects · 4c67da95
      Giorgos Korfiatis authored
      Allow project enrollment and ownership only for users that are accepted,
      not just email_verified.
      
      Also change base quota only for accepted users.
      4c67da95
    • Giorgos Korfiatis's avatar
      astakos: Refactor user creation · 5f307667
      Giorgos Korfiatis authored
      Provide auth.make_user() as the single way to create a new user. This
      function is responsible to set all automatically generated fields, such as
      username, uuid, and token. Clean up AstakosUser.save(), that used to
      update these fields, and remove AstakosUser.__init__(). Remove trigger
      that renewed token on every AstakosUser update. In order to set a user's
      email, use AstakosUser.set_email(); this takes care to update the
      username, too.
      
      Provide function create_user() in user creation forms, which calls
      auth.make_user() with the form-provided data.
      
      Use the wrapper auth.make_local_user() in management command `user-add'.
      
      Use the same infrastructure to extend a django superuser to an AstakosUser
      (in management command `fix-superusers').
      5f307667
    • Giorgos Korfiatis's avatar
      astakos: Remove unused user creation forms · 7bf3bd9e
      Giorgos Korfiatis authored
      InvitedLocalUserCreationForm, InvitedThirdPartyUserCreationForm,
      ShibbolethUserCreationForm, and InvitedShibbolethUserCreationForm
      were not used.
      7bf3bd9e
    • Giorgos Korfiatis's avatar
      astakos: Reset user sign flags when adding new terms · 361ec44d
      Giorgos Korfiatis authored
      When new terms are added, set has_signed_terms=False for all users, forcing
      them to accept the new terms. If there are no terms, a new user is created
      with has_signed_terms=True.
      
      With this change we can skip querying the terms when authenticating a user,
      speeding up POST /tokens.
      361ec44d
  23. 22 Nov, 2013 1 commit
  24. 27 Sep, 2013 1 commit
    • Ilias Tsitsimpis's avatar
      Fix a python syntax error · 1bea338c
      Ilias Tsitsimpis authored
      In python 2 we cannot have keyword-only arguments (PEP 3102).
      And even if we could, this was not the right way to
      declare a python function.
      1bea338c
  25. 26 Sep, 2013 1 commit
    • Ilias Tsitsimpis's avatar
      astakos: Fix `save() got unexpected argument' · 232b2aa9
      Ilias Tsitsimpis authored
      From Django documentation:
      """
      It’s also important that you pass through the arguments that can be
      passed to the model method – that’s what the *args, **kwargs bit does.
      Django will, from time to time, extend the capabilities of built-in
      model methods, adding new arguments. If you use *args, **kwargs in your
      method definitions, you are guaranteed that your code will automatically
      support those arguments when they are added.
      """
      232b2aa9
  26. 28 Aug, 2013 1 commit
  27. 07 Aug, 2013 5 commits