537 Commits

Author SHA1 Message Date
5b60dad831 Added script to add users to admin groups of projects they created.
For now, can only be run on individual users, identified by email address.

./manage.py sync_project_groups user@domain true

Replace 'true' with 'false' to just see the status and not update the DB.
2016-07-06 12:49:51 +02:00
57e2f01153 Bug fix: users loose their project groups after getting role.
The badger service erased the user's groups when assigning subscriber
group membership.
2016-07-06 12:35:16 +02:00
40b29d7d40 Send Blinker signal when user roles change due to a PUT on the user. 2016-07-06 11:53:26 +02:00
3a33475efc Refactored blender_id.validate_create_user()
Semantically still the same code.
2016-07-06 11:53:10 +02:00
91238aacb7 Managing home project permissions when granting/revoking subscriber/demo role.
This is hooked into the badger service using a Blinker signal. This signal
also needs to be sent from a PUT on the user document.
2016-07-06 11:05:24 +02:00
4b1b02318b Explicitly pass the application path to Git.
Without this, it doesn't work on our production environment.
2016-07-05 13:05:47 +02:00
def1a3d080 Send the Git revision to Bugsnag
This allows us to use the "ignore until a new version is deployed" feature.
2016-07-05 13:01:19 +02:00
dda0e2c868 When creating user from BlenderID, full_name defaults to username. 2016-07-05 12:36:32 +02:00
8a0fa8afd6 Log error when unable to create new user in mongodb. 2016-07-04 13:19:02 +02:00
7e85b32fc7 Gracefully handle missing node types when validating custom fields. 2016-07-04 12:36:54 +02:00
b507216d23 Increased log level for dynamic property validation errors 2016-06-30 18:38:57 +02:00
27d6289f17 Fixed KeyError in user_has_role() 2016-06-30 18:10:11 +02:00
1cd201dc89 Fix encoding issue in mng.py sync_role_groups 2016-06-30 17:48:13 +02:00
387cee227a Set default picture on image asset and texture nodes. 2016-06-30 11:55:36 +02:00
c3e9d43838 Also deduct asset node content type on POST. 2016-06-30 11:55:20 +02:00
45a5019ba4 Embed project id/name/url in latest assets 2016-06-30 11:00:25 +02:00
b601644cca Update parent node's _updated when updating/creating an asset 2016-06-29 16:44:00 +02:00
3bb0e588d8 Fixed unittests for disabled AB-testing 2016-06-29 16:43:41 +02:00
1e404351b0 Allow uploading files by any logged-in user, regardless of role 2016-06-29 15:33:56 +02:00
c9337b8d15 Taken out AB-testing for home project.
Home project is available to everybody!
2016-06-29 11:54:58 +02:00
4c73f98047 Revert "Tiny typo in comment (iff instead of if)"
'iff' means 'if and only if', it's not a typo.

This reverts commit 5355e4e359e4554a4590f5a2d3ca0f537dc02d02.
2016-06-28 15:11:11 +02:00
5355e4e359 Tiny typo in comment (iff instead of if) 2016-06-28 15:07:56 +02:00
5a4d98b352 Include parent in the projection for latest_assets 2016-06-28 15:07:21 +02:00
036d7a1b1e Removed some superfluous debug logging. 2016-06-28 15:01:11 +02:00
57cf9a3547 Prevent home project without URL. 2016-06-28 15:01:02 +02:00
d652e6435d Removed "pastebin" from home project descriptions. 2016-06-28 15:00:38 +02:00
18c7ca17e9 Allow Blender Sync access to non-subscribers. 2016-06-28 14:25:13 +02:00
5e506abac9 AB-testing for home project
Only allows access to the home project to user with role 'homeproject'.
2016-06-28 14:12:29 +02:00
e557443b85 PEP8 formatting 2016-06-28 14:12:29 +02:00
e442c6671b Separated role-checking from enforcing those roles.
This allows other functions to use the same role-checking behaviour, and
separates policy from mechanism.
2016-06-28 14:12:29 +02:00
1513649cd8 Added function for None-safe fetching of user ID. 2016-06-28 14:12:29 +02:00
83618a5639 Home project: allow comment nodes 2016-06-28 14:12:29 +02:00
1a48c37bd6 Allow resuscitation of deleted home projects. 2016-06-28 14:12:29 +02:00
ba28f2ac3b Home project: allow comment nodes 2016-06-28 14:12:29 +02:00
a104f54fb0 Force URL of home projects to 'home' 2016-06-28 14:12:29 +02:00
8dc4ac0db7 Allow project creation when GCS fails.
Without this exception handler, the project would be invalid, as the
after_inserting_project() hook would be half-run.
2016-06-28 14:12:29 +02:00
9ed73eb7dd Home project: allow projections. 2016-06-28 14:12:29 +02:00
bcadfcd6f5 Debug log when returned projects are filtered out due to permissions. 2016-06-28 14:12:29 +02:00
ba79a30846 Removed an assumption that project creator is project owner.
This assumption may still exist in other parts of the application, though.
2016-06-28 14:12:29 +02:00
b4faf2245e Home project: create it when user tries to GET it. 2016-06-28 14:12:29 +02:00
3980133100 Moved creation of standard groups in unittests 2016-06-28 14:12:29 +02:00
3094a09fec PEP8 formatting 2016-06-28 14:12:29 +02:00
ee95abb62a Make zencoder and algolia optional packages
If zencoder is not set as ENCODING_BACKEND this can cause issues, but
at least it is possible to run Pillar without the zencoder package
installed. Also, we load the algolia module using the new
SEARCH_BACKEND config setting.
2016-06-26 20:02:41 +02:00
9e6bd9c219 Fixed bug in status check in update_file_name 2016-06-15 16:00:06 +02:00
82cf88ee49 Slight simplification of node form valdation, and better logging. 2016-06-15 16:00:03 +02:00
a17bb969f9 Fixed bug in sync_role_groups 2016-06-15 14:13:16 +02:00
d4bed9543f Tiny badger service fixes 2016-06-15 10:10:41 +02:00
de35ebf56f Retry a few times when POSTing to BlenderID fails. 2016-06-15 10:10:37 +02:00
36a2e028d4 Added sync_role_groups management command.
This ensures that group membership is consistent with the user's roles.
The roles are leading in this.
2016-06-14 16:41:37 +02:00
ba1f8a4101 Badger service: also manage group membership
For the subscriber, demo and admin roles, the badger service now also
manages group membership for the role-specific groups.
2016-06-14 15:39:22 +02:00