0b34c5c1c6
Also create user when member of organisation
2017-12-20 14:22:26 +01:00
fd68f3fc8b
Allow user creation from Blender ID webhook "user modified"
...
When the webhook indicates that the user has a Cloud subscription (demo,
active, or renewable), the user is immediately created.
2017-12-20 12:56:48 +01:00
a2c24375e5
Webhooks: smarter way to find the user the webhook applies to.
...
We now also match on Blender ID (through the 'auth' section of the user
document), so that even when we have missed an email change we can still
apply the changes from the webhook.
2017-12-20 12:22:51 +01:00
be4b36a661
Also accept user-modified webhook when old email address is unknown.
...
When the old email address is unknown, and the new one does map to a user,
use the webhook to update the new user.
2017-12-20 11:40:56 +01:00
ae700b5eef
Added payload description of Blender ID webhook
2017-12-20 11:19:15 +01:00
9c2e6f9081
Fixed forced login for user switching
2017-12-12 11:25:48 +01:00
abb0ded3f2
Lowered log level for webhook call for unknown user
2017-12-08 14:08:04 +01:00
f948969b20
Fixed webhook so that users' full_name isn't reset to the empty string.
2017-12-08 14:04:11 +01:00
c031c1e8ae
Removed flamenco-user and attract-user role linking to subscriber/demo/admin
...
It was a hack due to the lack of a capabilities system.
2017-12-07 17:09:06 +01:00
bff51e1e83
Added /renew endpoint to redirect to Blender Store renewal URL.
2017-12-06 14:36:02 +01:00
561db0428d
Using new blender_id.get_user_blenderid() function
2017-12-05 11:56:33 +01:00
f7ce8d74a7
Implemented Blender ID webhook for user change notifications
...
Handles changes in:
- roles
- full name
- email address
2017-12-01 19:06:16 +01:00
532bf60041
Obtain subscription info from Store.
...
This was in Pillar, and is now moved to Blender Cloud. It's used to obtain
the subscription expiration date from Blender Store.
2017-11-30 15:45:40 +01:00
d5d189de8c
Reworked subscription reconciliation to use Blender ID instead of Store
2017-11-30 15:30:41 +01:00
5d281dc6ce
Introduce 'has_subscription' role with 'can-renew-subscription' capability
...
This is in preparation of presenting different messages to users, when their
subscription should be renewed, or when they should buy a (new)
subscription.
2017-11-30 15:30:08 +01:00
f4e277f1d1
Homepage: Render attachments on posts
2017-11-23 16:16:10 +01:00
4207d051a9
Added subscriber-pro role.
...
This is used in svnman to bind to the svn-use capability.
2017-11-14 16:09:29 +01:00
0c4db84940
Fix link to comments
2017-11-09 19:38:56 +01:00
8288b4eab1
New Homepage: Featuring more in the blog posts
2017-11-09 18:37:32 +01:00
c2492e8710
When logging in from /welcome, redirect to index
...
Backend logic simplified, to support the next arg if provided, otherwise simply redirect to the request.referrer (last visited page).
2017-11-07 18:25:42 +01:00
13ed89c480
Add terms and conditions and privacy statement
2017-09-21 22:17:52 +02:00
5d0b8a1dc4
Added static page that embeds stats from Kibana.
...
It just has a full-width iframe that embeds the dashboard from
https://stats.cloud.blender.org/
2017-09-21 14:25:14 +02:00
41d47cdeb8
PEP8 formatting
2017-09-19 13:45:48 +02:00
19ccffa4ae
Cache the homepage template context.
...
This requires pillar-python-sdk c8eec9fa9d8a198df198538a38ca1ad2367bb3e6
or newer.
2017-09-19 13:45:10 +02:00
aaf95f96a7
Fixed user switching.
...
Basically this copies bd976e6c2e7867fee70c8654cc887bf1d3973bc1 from Pillar.
2017-09-19 13:39:41 +02:00
f3e0484328
Revert "Cache the entire homepage for 5 minutes."
...
This reverts commit 9a692d475b
.
2017-09-18 13:05:29 +02:00
869e228069
Homepage Random Featured: Show project more prominently for first item
2017-09-17 20:12:47 +02:00
9a692d475b
Cache the entire homepage for 5 minutes.
...
This means that comments and blog posts will take at most 5 minutes to show
up on /.
2017-09-15 17:46:20 +02:00
0b61e517d2
Added missing attached_to.url assignment
2017-09-15 17:03:31 +02:00
0c251c0470
Added missing projection
2017-09-15 15:46:52 +02:00
e103a712b3
Performance improvements for the homepage (activity, blog, random featured)
2017-09-15 15:25:27 +02:00
f4ac9635a9
Fixed two mistakes in stats query count_nodes()
...
- 'p.x' → 'project.x'
- is_private: {$ne: true} → is_private: False, because true is the default.
2017-09-12 11:29:36 +02:00
d80fc48635
Redirect properly after login
...
- Use next=xxx URL parameter
- Redirect to / when no next=xxx was given and the referrer is /welcome
2017-09-01 17:04:41 +02:00
a9280dd05f
Introducing settings for blender-cloud
...
Moved Blender Cloud specific settings from Pillar into this application.
2017-08-30 23:13:06 +02:00
1fb3c88a8f
Override /login endpoint
...
For Blender Cloud we want to point directly to blender-id OAuth.
2017-08-25 11:56:43 +02:00
732fe7bc7c
Fixed calls to do_badger to use keyword arguments for role(s)
...
- updated call to pass multiple roles at once
- updated call to pass single role with keyword arg
This requires Pillar 87afbc52f6c7d5eb63f0da745625d05b01e81783
2017-08-23 09:32:01 +02:00
838d85a2b7
Use capabilities system to check whether the user is a subscriber.
2017-08-22 16:40:05 +02:00
2e4ed6f3c8
Also allow demo users access to Flamenco & Attract
2017-08-15 15:25:53 +02:00
4575e8bf8b
Public project changes
...
Now we organize training content into 'courses' and 'workshops'. This commit updates various endpoints and menus to reflect that decision.
2017-07-26 16:51:16 +02:00
9bf6a36bdd
Return cached view for welcome page only if user is anonymous
2017-07-16 00:06:18 +02:00
bda679a3bf
Remove about.html
...
This is build with Gulp from a .pug file now.
2017-07-14 12:45:35 +02:00
ae33a6f71e
Moving Blender Cloud specific pages from Pillar
...
These pages were originally in the pillar repository, but they actually belong here. We also extended rsync_ui.sh to build and rsync to the Blender Cloud server.
2017-07-13 18:35:18 +02:00
b155b0916e
CLI reconcile_users: process 10 users in parallel
2017-07-11 14:57:57 +02:00
f493d0a566
CLI reconcile_subscribers: show user count + index
2017-07-11 14:44:00 +02:00
093d80905f
CLI reconcile_subscribers: show user count before starting
2017-07-11 14:40:46 +02:00
54e9aca16f
CLI reconcile_subscribers uses do_badger & re-grants the subscriber role
...
This ensures that subscriber-linked roles like flamenco-user are synced
along with the subscriber status, and that Algolia picks up on those
changes as well.
2017-07-11 14:29:14 +02:00
3e5ad280b1
CLI command to create standard groups admin/demo/subscriber
...
This is part of what setup_db also does, but only for creating those
groups. Only really useful for debugging/developing.
2017-07-11 14:27:33 +02:00
0a9f0ebddb
Roles '{flamenco,attract}-user' are now linked to 'subscriber'
...
All users who get 'subscriber' role automatically get 'flamenco-user' and
'attract-user', and when 'subscriber' is revoked, so are
'{flamenco,attract}-user'.
2017-07-11 12:40:13 +02:00
fd700ca6d9
Inject current_user_is_subscriber into Jinja context
...
This variable is set to True iff the user has a subscriber/demo/admin role.
It's an attempt to get some of the Cloud subscription specific stuff out
of Pillar.
2017-06-14 16:26:29 +02:00
e2efc70e44
Import new subscription info function
2017-05-04 18:17:37 +02:00