summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--apps/patchwork/models.py7
-rw-r--r--apps/patchwork/views/__init__.py3
2 files changed, 7 insertions, 3 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\.]+')
diff --git a/apps/patchwork/views/__init__.py b/apps/patchwork/views/__init__.py
index e4043bb..bae40c6 100644
--- a/apps/patchwork/views/__init__.py
+++ b/apps/patchwork/views/__init__.py
@@ -43,8 +43,7 @@ def generic_list(request, project, view,
data = request.POST
user = request.user
properties_form = None
- if (user.is_authenticated()
- and project in user.get_profile().maintainer_projects.all()):
+ if project.is_editable(user):
properties_form = MultiplePatchForm(project, data = data)
if request.method == 'POST' and data.get('form') == 'patchlistform':