summaryrefslogtreecommitdiffstats
path: root/apps/patchwork/models.py
diff options
context:
space:
mode:
authorGuilherme Salgado <guilherme.salgado@linaro.org>2011-04-12 11:35:10 +0000
committerJeremy Kerr <jk@ozlabs.org>2011-04-14 14:55:33 +0800
commitb18d5e2d250c1993b231a812b0ad71c131592ea5 (patch)
treedde8dc8ed3a452437c2292c7bc2accdf913581bb /apps/patchwork/models.py
parente3f9cdfdfa96f5074a31fe2de0caf0ac52b1aff9 (diff)
downloadpatchwork-b18d5e2d250c1993b231a812b0ad71c131592ea5.tar.bz2
patchwork-b18d5e2d250c1993b231a812b0ad71c131592ea5.tar.xz
models: Project.is_editable to check whether a user has edit rights
This is to replace the couple of places where we duplicate this same check. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
Diffstat (limited to 'apps/patchwork/models.py')
-rw-r--r--apps/patchwork/models.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/apps/patchwork/models.py b/apps/patchwork/models.py
index 6959731..737e8c5 100644
--- a/apps/patchwork/models.py
+++ b/apps/patchwork/models.py
@@ -67,6 +67,11 @@ class Project(models.Model):
def __unicode__(self):
return self.name
+ def is_editable(self, user):
+ if not user.is_authenticated():
+ return False
+ return self in user.get_profile().maintainer_projects.all()
+
class UserProfile(models.Model):
user = models.ForeignKey(User, unique = True)
primary_project = models.ForeignKey(Project, null = True, blank = True)
@@ -223,7 +228,7 @@ class Patch(models.Model):
if self.submitter.user == user or self.delegate == user:
return True
- return self.project in user.get_profile().maintainer_projects.all()
+ return self.project.is_editable(user)
def filename(self):
fname_re = re.compile('[^-_A-Za-z0-9\.]+')