This is to replace the couple of places where we duplicate this same
check.
Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
def __unicode__(self):
return self.name
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)
class UserProfile(models.Model):
user = models.ForeignKey(User, unique = True)
primary_project = models.ForeignKey(Project, null = True, blank = True)
if self.submitter.user == user or self.delegate == user:
return True
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\.]+')
def filename(self):
fname_re = re.compile('[^-_A-Za-z0-9\.]+')
data = request.POST
user = request.user
properties_form = None
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':
properties_form = MultiplePatchForm(project, data = data)
if request.method == 'POST' and data.get('form') == 'patchlistform':