Allow team members to create team snipts via API.
parent
19d832a626
commit
efb1870569
|
@ -674,6 +674,8 @@
|
||||||
if ($articleNewSnipt.length === 0) {
|
if ($articleNewSnipt.length === 0) {
|
||||||
window.site.snipt_list.$el.prepend('<article id="new-snipt" class="hidden snipt"></article>');
|
window.site.snipt_list.$el.prepend('<article id="new-snipt" class="hidden snipt"></article>');
|
||||||
|
|
||||||
|
var user = window.user;
|
||||||
|
|
||||||
var data = {
|
var data = {
|
||||||
id: '',
|
id: '',
|
||||||
blog_post: false,
|
blog_post: false,
|
||||||
|
@ -686,6 +688,7 @@
|
||||||
lexer_name: 'Text only',
|
lexer_name: 'Text only',
|
||||||
new_from_js: true,
|
new_from_js: true,
|
||||||
public: true,
|
public: true,
|
||||||
|
intended_user: user,
|
||||||
user: {
|
user: {
|
||||||
username: '',
|
username: '',
|
||||||
profile: {
|
profile: {
|
||||||
|
|
|
@ -62,7 +62,12 @@ class PrivateSniptAuthorization(Authorization):
|
||||||
raise Unauthorized()
|
raise Unauthorized()
|
||||||
|
|
||||||
def create_detail(self, object_list, bundle):
|
def create_detail(self, object_list, bundle):
|
||||||
return bundle.obj.user == bundle.request.user
|
user = bundle.obj.user
|
||||||
|
if user == bundle.request.user:
|
||||||
|
return True
|
||||||
|
if user.profile.is_a_team:
|
||||||
|
return user.team.user_is_member(bundle.request.user)
|
||||||
|
return False
|
||||||
|
|
||||||
def update_list(self, object_list, bundle):
|
def update_list(self, object_list, bundle):
|
||||||
raise Unauthorized()
|
raise Unauthorized()
|
||||||
|
@ -414,13 +419,14 @@ class PrivateSniptResource(ModelResource):
|
||||||
bundle.data['last_user_saved'] = bundle.request.user
|
bundle.data['last_user_saved'] = bundle.request.user
|
||||||
bundle.data['tags_list'] = bundle.data.get('tags')
|
bundle.data['tags_list'] = bundle.data.get('tags')
|
||||||
bundle.data['tags'] = ''
|
bundle.data['tags'] = ''
|
||||||
|
bundle.data['user'] = \
|
||||||
|
User.objects.get(username=bundle.data['intended_user'])
|
||||||
|
|
||||||
if 'blog_post' in bundle.data:
|
if 'blog_post' in bundle.data:
|
||||||
bundle = self._clean_publish_date(bundle)
|
bundle = self._clean_publish_date(bundle)
|
||||||
|
|
||||||
return super(PrivateSniptResource, self) \
|
return super(PrivateSniptResource, self) \
|
||||||
.obj_create(bundle,
|
.obj_create(bundle, **kwargs)
|
||||||
user=bundle.request.user, **kwargs)
|
|
||||||
|
|
||||||
def obj_update(self, bundle, **kwargs):
|
def obj_update(self, bundle, **kwargs):
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue