Avatars are now obtained from Blender ID. They are downloaded from
Blender ID and stored in the users' home project storage.
Avatars can be synced via Celery and triggered from a webhook.
The avatar can be obtained from the current user object in Python, or
via pillar.api.users.avatar.url(user_dict).
Avatars can be shown in the web frontend by:
- an explicit image (like before but with a non-Gravatar URL)
- a Vue.js component `user-avatar`
- a Vue.js component `current-user-avatar`
The latter is the most efficient for the current user, as it uses user
info that's already injected into the webpage (so requires no extra
queries).
* Drag and drop files to comment editor to add a file attachment
* Using Vue to render comments
Since comments now has attachments we need to update the schemas
./manage.py maintenance replace_pillar_node_type_schemas
Changed how and what we store in elastic to unify it with how we store
things in mongodb so we can have more generic javascript code
to render the data.
Elastic changes:
Added:
Node.project.url
Altered to store id instead of url
Node.picture
Made Post searchable
./manage.py elastic reset_index
./manage.py elastic reindex
Thanks to Pablo and Sybren