Example #1
0
 def clean_project(self):
     project = self.cleaned_data['project']
     person = get_current_person()
     if project is not None:
         if not person in project.leaders.all():
             raise forms.ValidationError(u'You must be the project leader.')
     return project
Example #2
0
    def clean_old(self):
        person = get_current_person()

        person = Person.objects.authenticate(username=person.username, password=self.cleaned_data['old'])
        if person is None:
            raise forms.ValidationError(u'Your old password was incorrect')

        return self.cleaned_data['old']
Example #3
0
 def save(self, *args, **kwargs):
     if not self.pk:
         self.created_by = get_current_person()
         self.expires = datetime.datetime.now() + datetime.timedelta(days=7)
         parent = self._meta.parents.keys()[0]
         subclasses = parent._meta.get_all_related_objects()
         for klass in subclasses:
             if isinstance(klass, RelatedObject) and klass.field.primary_key and klass.opts == self._meta:
                 self._class = klass.get_accessor_name()
                 break
     return super(Application, self).save(*args, **kwargs)
Example #4
0
    def save(self):
        data = self.cleaned_data

        person = self.instance
        person.username = data['username']
        person.is_admin = data['is_admin']
        person.is_active = True
        person.approved_by = get_current_person()
        super(AddPersonForm, self).save()

        person.set_password(data['password2'])
        if data['needs_account'] and data['project']:
            add_user_to_project(person, data['project'])

        return person
Example #5
0
    def save(self, commit=True):
        assert commit is True

        data = self.cleaned_data

        person = super(AddPersonForm, self).save(commit=False)
        person.username = data['username']
        person.is_admin = data['is_admin']
        person.is_active = True
        person.approved_by = get_current_person()
        person.set_password(data['password2'])
        person.save()

        if data['needs_account'] and data['project']:
            add_user_to_project(person, data['project'])

        return person
    def save(self, *args, **kwargs):
        created = self.pk is None
        if not self.pk:
            self.created_by = get_current_person()
            self.expires = datetime.datetime.now() + datetime.timedelta(days=7)
            parent = list(self._meta.parents.keys())[0]
            subclasses = parent._meta.get_all_related_objects()
            for klass in subclasses:
                if isinstance(klass, RelatedObject) and klass.field.primary_key and klass.opts == self._meta:
                    self._class = klass.get_accessor_name()
                    break

        super(Application, self).save(*args, **kwargs)

        if created:
            log.add(self, "Created")
        for field in self._tracker.changed():
            log.change(self, "Changed %s to %s" % (field, getattr(self, field)))
Example #7
0
    def save(self, *args, **kwargs):
        created = self.pk is None
        if not self.expires:
            self.expires = datetime.datetime.now() + datetime.timedelta(days=7)
        if not self.pk:
            self.created_by = get_current_person()

            # Find the accessor from Application to type(self) class
            if hasattr(Application._meta, 'get_fields'):
                # Django >= 1.8
                fields = [
                    f for f in Application._meta.get_fields()
                    if isinstance(f, OneToOneRel) and
                    f.field.primary_key and
                    f.auto_created
                ]

            else:
                # Django <= 1.8
                fields = [
                    f for f in Application._meta.get_all_related_objects()
                    if isinstance(f, OneToOneRel) and
                    f.field.primary_key
                ]

            for rel in fields:
                # Works with Django < 1.8 and => 1.8
                related_model = getattr(rel, 'related_model', rel.model)

                # if we find it, save the name
                if related_model == type(self):
                    self._class = rel.get_accessor_name()
                    break

        super(Application, self).save(*args, **kwargs)

        if created:
            log.add(self, 'Created')
        for field in self._tracker.changed():
            log.change(
                self,
                'Changed %s to %s' % (field, getattr(self, field)))
Example #8
0
    def save(self, *args, **kwargs):
        created = self.pk is None
        if not self.expires:
            self.expires = datetime.datetime.now() + datetime.timedelta(days=7)
        if not self.pk:
            self.created_by = get_current_person()

            # Find the accessor from Application to type(self) class
            if hasattr(Application._meta, 'get_fields'):
                # Django >= 1.8
                fields = [
                    f for f in Application._meta.get_fields()
                    if isinstance(f, OneToOneRel) and f.field.primary_key
                    and f.auto_created
                ]

            else:
                # Django <= 1.8
                fields = [
                    f for f in Application._meta.get_all_related_objects()
                    if isinstance(f, OneToOneRel) and f.field.primary_key
                ]

            for rel in fields:
                # Works with Django < 1.8 and => 1.8
                related_model = getattr(rel, 'related_model', rel.model)

                # if we find it, save the name
                if related_model == type(self):
                    self._class = rel.get_accessor_name()
                    break

        super(Application, self).save(*args, **kwargs)

        if created:
            log.add(self, 'Created')
        for field in self._tracker.changed():
            log.change(self,
                       'Changed %s to %s' % (field, getattr(self, field)))
    def save(self, *args, **kwargs):
        created = self.pk is None
        if not self.pk:
            self.created_by = get_current_person()
            self.expires = datetime.datetime.now() + datetime.timedelta(days=7)
            parent = list(self._meta.parents.keys())[0]
            subclasses = parent._meta.get_all_related_objects()
            for klass in subclasses:
                if isinstance(klass, RelatedObject) \
                        and klass.field.primary_key \
                        and klass.opts == self._meta:
                    self._class = klass.get_accessor_name()
                    break

        super(Application, self).save(*args, **kwargs)

        if created:
            log.add(self, 'Created')
        for field in self._tracker.changed():
            log.change(
                self,
                'Changed %s to %s' % (field, getattr(self, field)))
Example #10
0
 def reopen(self):
     self.created_by = get_current_person()
     self.submitted_date = None
     self.complete_date = None
     self.expires = datetime.datetime.now() + datetime.timedelta(days=7)
     self.save()