Commit Graph

1399 Commits

Author SHA1 Message Date
Pablo Vazquez dd3cfe80ef CSS: don't use cursor pointer for organizations/projects lists 2017-09-01 11:35:55 +02:00
Sybren A. Stüvel 314f0b8dbe Quote token when logging
This helps when debugging strange tokens.
2017-09-01 11:21:02 +02:00
Pablo Vazquez 6a4f571b05 Organizations list styling 2017-08-31 16:35:31 +02:00
Pablo Vazquez 30b3d6abaf Full width projects, search, and top navbar 2017-08-31 16:35:31 +02:00
Pablo Vazquez 01c8f6cdae Inputs: Dim the placeholder text 2017-08-31 16:35:31 +02:00
Sybren A. Stüvel 8318d4b1f6 Replaced config SCHEME with Flask's own PREFERRED_URL_SCHEME setting.
This prevents us from explicitly passing SCHEME to url_for() calls.

NOTE: this possibly requires an update to your config_local.py
2017-08-31 14:37:35 +02:00
Francesco Siddi d6dd0d69d0 Fix for missing underscore in _scheme arg
Be more careful next time!
2017-08-31 14:32:39 +02:00
Francesco Siddi 2d3b54b80b Use app config SCHEME to enforce https when doing oauth redirects 2017-08-31 14:22:07 +02:00
Pablo Vazquez 89f24ac4e6 Buttons: Don't force uppercase text 2017-08-30 23:18:59 +02:00
Francesco Siddi 7890cd2622 Introducing settings blueprint
Now settings live in a dedicated space, the settings blueprint can be used by Pillar applications, and the templates can be extended or overridden. Moved subscription and email settings to the blender-cloud repository.
2017-08-30 23:10:28 +02:00
Pablo Vazquez b6bd40f956 Theatre View: backdrop block not needed anymore 2017-08-30 15:34:13 +02:00
Pablo Vazquez c0b380f215 Gulp: Fix livereload 2017-08-30 15:05:38 +02:00
Pablo Vazquez 811236cff4 Migrate Jade to Pug template engine
Jade templates engine has been renamed to Pug.

We are using Pug already on the Blender Cloud repository, following is Flamenco and Attract
2017-08-30 14:04:15 +02:00
Sybren A. Stüvel 62542f0329 Rolled back some flask_login and g.current_user integration
Setting flask_login.current_user ourselves was a bad idea, and messed up
flask_login's internal administration. Our code now just manages
g.current_user in these specific instances, which works fine.
2017-08-30 12:39:46 +02:00
Sybren A. Stüvel 6825b8bf74 Fixed infinite recursion. 2017-08-29 12:31:52 +02:00
Sybren A. Stüvel bdd603fb17 Using new UserClass instances everywhere:
- No more direct access to g.current_user, unless unavoidable.
  - Using pillar.auth.current_user instead of g.current_user or
    flask_login.current_user.
  - p.a.current_user is never checked against None.
  - p.a.current_user.is_authenticated or is_anonymous is used, and never
    together with a negation (instead of 'not is_anon' use 'is_auth').
  - No more accessing current_user a a dict.
  - No more checks for admin role, use capability check instead.
2017-08-29 11:34:48 +02:00
Sybren A. Stüvel 86e76aaa5f Use UserClass instead of assigning dict to g.current_user 2017-08-29 11:34:48 +02:00
Pablo Vazquez 88af86ae61 Toastr: Style buttons in notifications 2017-08-27 17:44:40 +02:00
Sybren A. Stüvel a6f56a4811 OAuth test: checking email address too 2017-08-25 12:53:21 +02:00
Sybren A. Stüvel c7c867f1c7 OAuth signin: streamlined instantiation of OAuthSignIn subclasses 2017-08-25 12:35:08 +02:00
Sybren A. Stüvel add2538655 Prevent JS error by sync-loading jquery.autocomplete….js 2017-08-25 12:03:52 +02:00
Sybren A. Stüvel ff1b14d980 Project sharing: Simplified user selection JS code. 2017-08-25 12:03:52 +02:00
Francesco Siddi a12838032f Introducing exception handling in the application code 2017-08-25 11:47:40 +02:00
Francesco Siddi 6edd0e2f8d Fix for embedded template paths
When edting a custom node type we were building the wrong path, and not passing the project argument to the render_template function.
2017-08-25 10:57:29 +02:00
Francesco Siddi 398bbbc316 Fix up config_testing values to conform with tests 2017-08-25 10:55:35 +02:00
Francesco Siddi 41a82c44c5 Tests for providers callbacks
Also added SERVER_NAME in config_testing and pre-populated the  keys of OAUTH_CREDENTIALS, since the implementation of providers is part of the application.
2017-08-25 10:55:35 +02:00
Francesco Siddi cecf81a07d Initial tests for OAuthSignIn 2017-08-25 10:55:35 +02:00
Francesco Siddi 45275c3831 Switch to class-based OAuthUserResponse
Instead of returning an arbirary number of items, we provide a standardized and better documented response.
2017-08-25 10:55:35 +02:00
Pablo Vazquez 99866542a1 Style Google oauth login 2017-08-25 10:53:30 +02:00
Francesco Siddi 6b3e523036 Remove Flask-OAuthlib and oauth_blender_id from Pillar
We switch completely to a rauth-based approach, allowing multiple providers for authentication.
2017-08-25 10:53:22 +02:00
Francesco Siddi 6e9a539d61 Fix typo 2017-08-25 10:52:52 +02:00
Francesco Siddi c9b2eb25b2 Add default OAUTH_CREDENTIALS in config 2017-08-25 10:51:45 +02:00
Francesco Siddi 23b856b073 Move Blender ID to extensible OAuth
Also, added support for Google OAuth.
2017-08-25 10:51:45 +02:00
Pablo Vazquez e0520e265d Style login page 2017-08-25 10:51:45 +02:00
Francesco Siddi 9b9e0488d3 New login page
Exposes all available login providers
2017-08-25 10:51:45 +02:00
Francesco Siddi c827dc4ed2 Initial work to support multiple OAuth clients 2017-08-25 10:51:45 +02:00
Sybren A. Stüvel d48a308cc6 Renamed pillar.auth.current_web_user to pillar.auth.current_user
This is an in-between change. In the future, we want to always set
g.current_user so that it's never None (but rather an AnonymousUser
instance). However, there is still some code that assumes that when
g.current_user is not None the user is logged in. This should be
addressed first.
2017-08-24 14:28:18 +02:00
Sybren A. Stüvel b9ae4396e5 Orgs: show "My Organizations" in the user's menu
This is shown only when the user is member of or administrator for one or
more organizations, otherwise it's hidden.
2017-08-24 14:28:18 +02:00
Sybren A. Stüvel 95dc799692 Orgs: made org properties for non-admins a bit nicer 2017-08-24 14:28:18 +02:00
Sybren A. Stüvel be12bd7d99 Orgs: allow users to leave an organization 2017-08-24 14:28:18 +02:00
Sybren A. Stüvel 0445c3bd86 Orgs: assign capabilities to org-subscriber role 2017-08-24 14:28:18 +02:00
Sybren A. Stüvel 694e04cc50 Orgs: UI tweak 2017-08-24 14:28:18 +02:00
Sybren A. Stüvel 598b59c0c6 Orgs: gracefully handle 'not enough seats' error 2017-08-24 14:28:18 +02:00
Sybren A. Stüvel 1e1bd83baf Orgs: refresh all members' roles after org changed roles 2017-08-24 14:28:18 +02:00
Sybren A. Stüvel d41e2bbce4 Orgs: fixed "Create New Organization" button
It now actually creates the new org and shows it.
2017-08-24 14:28:18 +02:00
Sybren A. Stüvel 5f607fa2cf Orgs: Moved some JS around, no real semantic changes 2017-08-24 14:28:18 +02:00
Sybren A. Stüvel cd417bb9db Orgs: styling tweaks to make member list a bit nicer 2017-08-24 14:28:18 +02:00
Sybren A. Stüvel 65518f2208 Spaces to tabs 2017-08-24 14:28:18 +02:00
Sybren A. Stüvel 30902bc9cd Orgs: made the admin picker a bit nicer to work with
Also it now asks for a confirmation before transferring admin-ship to
the new admin user.
2017-08-24 14:28:18 +02:00
Sybren A. Stüvel 37b1a6e0c1 Orgs: added labels to organization form 2017-08-24 14:28:18 +02:00