Reordering permissions on models
parent
3245393b55
commit
1c80e4f6f9
|
@ -30,4 +30,6 @@ class Document(models.Model):
|
|||
permissions = (
|
||||
('can_download_from_my_projects', 'Can download the documents from my projects'),
|
||||
('can_download_from_other_projects', 'Can download the documents from other projects'),
|
||||
('can_change_owned_documents', 'Can modify owned documents'),
|
||||
('can_view_documents', 'Can modify owned documents'),
|
||||
)
|
||||
|
|
|
@ -26,6 +26,12 @@ class Question(models.Model):
|
|||
blank=True)
|
||||
tags = DictField()
|
||||
|
||||
class Meta:
|
||||
permissions = (
|
||||
('can_reply_question', 'Can reply questions'),
|
||||
('can_change_owned_question', 'Can modify owned questions'),
|
||||
)
|
||||
|
||||
def save(self, *args, **kwargs):
|
||||
if not self.slug:
|
||||
self.slug = slugify_uniquely(self.subject, self.__class__)
|
||||
|
|
|
@ -136,53 +136,9 @@ class Project(models.Model):
|
|||
|
||||
class Meta:
|
||||
permissions = (
|
||||
# global permissions
|
||||
('list_projects', 'Can list projects'),
|
||||
('list_my_projects', 'Can list my projects'),
|
||||
|
||||
# per project permissions
|
||||
('view_projects', 'Can view projects'),
|
||||
|
||||
('create_tasks', 'Can create tasks'),
|
||||
('comment_tasks', 'Can comment tasks'),
|
||||
('modify_tasks', 'Can modify tasks'),
|
||||
('delete_task', 'Can delete tasks'),
|
||||
('modify_owned_tasks', 'Can modify owned tasks'),
|
||||
('modify_assigned_tasks', 'Can modify assigned tasks'),
|
||||
('assign_tasks_to_others', 'Can assign tasks to others'),
|
||||
('assign_tasks_to_myself', 'Can assign tasks to myself'),
|
||||
('change_tasks_state', 'Can change the task state'),
|
||||
('add_tasks_to_us', 'Can add tasks to a user story'),
|
||||
|
||||
('create_us', 'Can create user stories'),
|
||||
('comment_us', 'Can comment user stories'),
|
||||
('modify_us', 'Can modify user stories'),
|
||||
('delete_us', 'Can delete user stories'),
|
||||
('modify_owned_us', 'Can modify owned user stories'),
|
||||
('add_us_to_milestones', 'Can add user stories to milestones'),
|
||||
|
||||
('create_questions', 'Can create questions'),
|
||||
('reply_questions', 'Can reply questions'),
|
||||
('modify_questions', 'Can modify questions'),
|
||||
('delete_questions', 'Can delete questions'),
|
||||
('modify_owned_questions', 'Can modify owned questions'),
|
||||
|
||||
('create_wiki_page', 'Can create wiki pages'),
|
||||
('modify_wiki_page', 'Can modify wiki pages'),
|
||||
('delete_wiki_page', 'Can delete wiki pages'),
|
||||
('modify_owned_wiki_page', 'Can modify owned wiki pages'),
|
||||
|
||||
('create_documents', 'Can create documents'),
|
||||
('modify_documents', 'Can modify documents'),
|
||||
('delete_documents', 'Can delete documents'),
|
||||
('modify_owned_documents', 'Can modify owned documents'),
|
||||
|
||||
('create_milestone', 'Can create milestones'),
|
||||
('modify_milestone', 'Can modify milestones'),
|
||||
('view_milestone', 'Can view milestones'),
|
||||
('delete_milestone', 'Can delete milestones'),
|
||||
|
||||
('manage_users', 'Can manage users'),
|
||||
('can_list_projects', 'Can list projects'),
|
||||
('can_view_project', 'Can view project'),
|
||||
('can_manage_users', 'Can manage users'),
|
||||
)
|
||||
|
||||
def __unicode__(self):
|
||||
|
@ -226,6 +182,9 @@ class Milestone(models.Model):
|
|||
class Meta:
|
||||
ordering = ['-created_date']
|
||||
unique_together = ('name', 'project')
|
||||
permissions = (
|
||||
('can_view_milestone', 'Can view milestones'),
|
||||
)
|
||||
|
||||
@property
|
||||
def total_points(self):
|
||||
|
@ -273,6 +232,13 @@ class UserStory(models.Model):
|
|||
class Meta:
|
||||
ordering = ['order']
|
||||
unique_together = ('ref', 'project')
|
||||
permissions = (
|
||||
('can_comment_userstory', 'Can comment user stories'),
|
||||
('can_view_userstory', 'Can view user stories'),
|
||||
('can_change_owned_userstory', 'Can modify owned user stories'),
|
||||
('can_add_userstory_to_milestones', 'Can add user stories to milestones'),
|
||||
)
|
||||
|
||||
|
||||
def __repr__(self):
|
||||
return u"<UserStory %s>" % (self.id)
|
||||
|
@ -347,6 +313,16 @@ class Task(models.Model):
|
|||
|
||||
class Meta:
|
||||
unique_together = ('ref', 'project')
|
||||
permissions = [
|
||||
('can_comment_task', 'Can comment tasks'),
|
||||
('can_change_owned_task', 'Can modify owned tasks'),
|
||||
('can_change_assigned_task', 'Can modify assigned tasks'),
|
||||
('can_assign_task_to_other', 'Can assign tasks to others'),
|
||||
('can_assign_task_to_myself', 'Can assign tasks to myself'),
|
||||
('can_change_task_state', 'Can change the task state'),
|
||||
('can_add_task_to_us', 'Can add tasks to a user story'),
|
||||
]
|
||||
|
||||
|
||||
def __unicode__(self):
|
||||
return self.subject
|
||||
|
@ -395,6 +371,14 @@ class Issue(models.Model):
|
|||
|
||||
class Meta:
|
||||
unique_together = ('ref', 'project')
|
||||
permissions = [
|
||||
('can_comment_issue', 'Can comment issues'),
|
||||
('can_change_owned_issue', 'Can modify owned issues'),
|
||||
('can_change_assigned_issue', 'Can modify assigned issues'),
|
||||
('can_assign_issue_to_other', 'Can assign issues to others'),
|
||||
('can_assign_issue_to_myself', 'Can assign issues to myself'),
|
||||
('can_change_issue_state', 'Can change the issue state'),
|
||||
]
|
||||
|
||||
def __unicode__(self):
|
||||
return self.subject
|
||||
|
|
|
@ -40,15 +40,22 @@ class BaseDetailPermission(permissions.BasePermission):
|
|||
return False
|
||||
|
||||
class ProjectDetailPermission(BaseDetailPermission):
|
||||
get_permission = "view_projects"
|
||||
put_permission = "modify_projects"
|
||||
delete_permission = "delete_projects"
|
||||
get_permission = "can_view_project"
|
||||
put_permission = "can_change_project"
|
||||
delete_permission = "can_delete_project"
|
||||
safe_methods = ['HEAD', 'OPTIONS']
|
||||
path_to_project = []
|
||||
|
||||
class MilestoneDetailPermission(BaseDetailPermission):
|
||||
get_permission = "view_milestone"
|
||||
put_permission = "modify_milestone"
|
||||
delete_permission = "delete_milestone"
|
||||
get_permission = "can_view_milestone"
|
||||
put_permission = "can_change_milestone"
|
||||
delete_permission = "can_delete_milestone"
|
||||
safe_methods = ['HEAD', 'OPTIONS']
|
||||
path_to_project = ['project']
|
||||
|
||||
class UserStoryDetailPermission(BaseDetailPermission):
|
||||
get_permission = "can_view_userstory"
|
||||
put_permission = "can_change_userstory"
|
||||
delete_permission = "can_delete_userstory"
|
||||
safe_methods = ['HEAD', 'OPTIONS']
|
||||
path_to_project = ['project']
|
||||
|
|
|
@ -16,6 +16,12 @@ class WikiPage(models.Model):
|
|||
created_date = models.DateTimeField(auto_now_add=True)
|
||||
tags = DictField()
|
||||
|
||||
class Meta:
|
||||
permissions = (
|
||||
('can_view_wikipage', 'Can modify owned wiki pages'),
|
||||
('can_change_owned_wikipage', 'Can modify owned wiki pages'),
|
||||
)
|
||||
|
||||
|
||||
class WikiPageAttachment(models.Model):
|
||||
wikipage = models.ForeignKey('WikiPage', related_name='attachments')
|
||||
|
|
Loading…
Reference in New Issue