示例#1
0
    def save(self, force_insert=False, force_update=False, using=None,
             update_fields=None):
        try:
            if self.category == "training":
                message = MailerMessage()
                context = { 'user': self.applicant, }
                body = render_to_string("events/training_tracker.txt", context)
                message.subject = " ".join(self.organizers.all())+"organized a training: " + self.target.name +"EOM"
                message.content = "end of message"
                message.to_address = "*****@*****.**"
                message.save()
        except:
            pass

        self.slug = slugify(self.name)
        if (self.feedbacksheet):
            if self.pk:
                # if created
                orig = Event.objects.get(pk=self.pk)
                if orig.feedbacksheet != self.feedbacksheet:
                    #if feedbacksheet has changed
                    for pax in self.participation_set.all():
                        if pax.feedback:
                            pax.feedback.delete()
                        pax.feedback = create_answer_set(self.feedbacksheet)
                        pax.save()
        if (self.questionaire):
            if self.pk:
                orig = Event.objects.get(pk=self.pk)
                if orig.questionaire != self.questionaire:
                    for application in self.applicants.all():
                        application.questionaire = create_answer_set(self.questionaire)
                        application.save()
        super(Event, self).save(force_insert, force_update, using, update_fields)
示例#2
0
 def save(self,
          force_insert=False,
          force_update=False,
          using=None,
          update_fields=None):
     self.slug = slugify(self.name)
     if (self.feedbacksheet):
         if self.pk:
             # if created
             orig = Event.objects.get(pk=self.pk)
             if orig.feedbacksheet != self.feedbacksheet:
                 #if feedbacksheet has changed
                 for pax in self.participation_set.all():
                     if pax.feedback:
                         pax.feedback.delete()
                     pax.feedback = create_answer_set(self.feedbacksheet)
                     pax.save()
     if (self.questionaire):
         if self.pk:
             orig = Event.objects.get(pk=self.pk)
             if orig.questionaire != self.questionaire:
                 for application in self.applicants.all():
                     application.questionaire = create_answer_set(
                         self.questionaire)
                     application.save()
     super(Event, self).save(force_insert, force_update, using,
                             update_fields)
示例#3
0
 def save(self, force_insert=False, force_update=False, using=None,
          update_fields=None):
     self.slug = slugify(self.name)
     if (self.feedbacksheet):
         if self.pk:
             # if created
             orig = Event.objects.get(pk=self.pk)
             if orig.feedbacksheet != self.feedbacksheet:
                 #if feedbacksheet has changed
                 for pax in self.participation_set.all():
                     if pax.feedback:
                         pax.feedback.delete()
                     pax.feedback = create_answer_set(self.feedbacksheet)
                     pax.save()
     if (self.questionaire):
         if self.pk:
             orig = Event.objects.get(pk=self.pk)
             if orig.questionaire != self.questionaire:
                 for application in self.applicants.all():
                     application.questionaire = create_answer_set(self.questionaire)
                     application.save()
     super(Event, self).save(force_insert, force_update, using, update_fields)
     privileged, created = Group.objects.get_or_create(name=self.slug + "_privileged")
     privileged.save()
     privileged.user_set = self.organizers.all()
     for oc in self.organizing_committee.all():
         assign_perm('change_event', Group.objects.get(name=oc.slug + "_privileged"),
                     self)
     privileged.save()
     assign_perm('change_event', privileged, self)
示例#4
0
    def save(self,
             force_insert=False,
             force_update=False,
             using=None,
             update_fields=None):
        if not self.date:
            self.date = timezone.now()
        if self.target.deadline:
            if self.target.deadline < self.date:
                return
        if self.target.category == "recruitment":
            if self.accepted:
                membership, created = Membership.objects.get_or_create(
                    team=self.target.organizing_committee.all()[0],
                    user=self.applicant)
                membership.save()
                self.delete()

            else:
                super(Application, self).save()
        else:
            if not self.pk:
                if self.target.questionaire:
                    self.questionaire = create_answer_set(
                        self.target.questionaire)
                message = MailerMessage()
                message.subject = "Hey hey! Just dropping by to tell you that" + \
                                  str(self.applicant) + " has applied to the event " + \
                                  str(self.target.name) + "\n Please remember to send " \
                                                          "a " \
                                                          "priority list."
                message.from_address = "noreply@eestecnet",
                message.to_address = ", ".join(
                    user.email for user in self.applicant.lc()[0].privileged())
                message.save()
            if self.accepted:
                participation, created = Participation.objects.get_or_create(
                    target=self.target, participant=self.applicant)
                participation.save()
                message = MailerMessage()
                context = {
                    'user': participation.participant,
                    'slug': participation.target.slug,
                }
                body = render_to_string("events/confirmation_email.txt",
                                        context)
                message.subject = "Congratulations! You were accepted to " + \
                                  participation.target.name
                message.content = body
                message.to_address = self.applicant.email
                message.save()
                len(MailerMessage.objects.all())
                logger.info(
                    str(self.applicant) + "was just accepted to " +
                    str(self.target))

                self.delete()
            else:
                super(Application, self).save()
示例#5
0
    def save(self, force_insert=False, force_update=False, using=None,
             update_fields=None):
        if not self.date:
            self.date = timezone.now()
        if self.target.deadline:
            if self.target.deadline < self.date:
                return
        if self.target.category == "recruitment":
            if self.accepted:
                membership, created = Membership.objects.get_or_create(
                    team=self.target.organizing_committee.all()[0],
                    user=self.applicant
                )
                membership.save()
                self.delete()

            else:
                super(Application, self).save()
        else:
            if not self.pk:
                if self.target.questionaire:
                    self.questionaire = create_answer_set(self.target.questionaire)
                message = MailerMessage()
                message.subject = "[EESTEC] " + str(
                    self.applicant) + " applied to " + str(self.target.name)
                message.content = "Hey hey! Just dropping by to tell you that " + \
                                  str(self.applicant) + " has applied to the event " + \
                                  str(self.target.name) + "\nPlease remember to send " \
                                                          "a " \
                                                          "priority list."
                message.from_address = "noreply@eestecnet"
                message.to_address = ", ".join(
                    user.email for user in self.applicant.lc()[0].privileged())
                message.save()
            if self.accepted:
                participation, created = Participation.objects.get_or_create(
                    target=self.target,
                                                             participant=self.applicant)
                participation.save()
                message = MailerMessage()
                context = {
                    'user': participation.participant,
                    'slug': participation.target.slug,
                    }
                body = render_to_string("events/confirmation_email.txt",context)
                message.subject = "Congratulations! You were accepted to " + \
                                  participation.target.name
                message.content = body
                message.to_address = self.applicant.email
                message.save()
                len(MailerMessage.objects.all())
                logger.info(
                    str(self.applicant) + "was just accepted to " + str(self.target))

                self.delete()
            else:
                super(Application, self).save()
示例#6
0
 def save(self, force_insert=False, force_update=False, using=None,
          update_fields=None):
     salt = sha.new(str(random.random())).hexdigest()[:5]
     self.confirmation = sha.new(salt + str(random.random())).hexdigest()
     if not self.pk:
         if self.target.feedbacksheet:
             self.feedback = create_answer_set(self.target.feedbacksheet)
     return super(Participation, self).save(force_insert, force_update, using,
                                            update_fields)
示例#7
0
    def save(self,
             force_insert=False,
             force_update=False,
             using=None,
             update_fields=None):
        try:
            if self.category == "training":
                message = MailerMessage()
                context = {
                    'user': self.applicant,
                }
                body = render_to_string("events/training_tracker.txt", context)
                message.subject = " ".join(self.organizers.all(
                )) + "organized a training: " + self.target.name + "EOM"
                message.content = "end of message"
                message.to_address = "*****@*****.**"
                message.save()
        except:
            pass

        self.slug = slugify(self.name)
        if (self.feedbacksheet):
            if self.pk:
                # if created
                orig = Event.objects.get(pk=self.pk)
                if orig.feedbacksheet != self.feedbacksheet:
                    #if feedbacksheet has changed
                    for pax in self.participation_set.all():
                        if pax.feedback:
                            pax.feedback.delete()
                        pax.feedback = create_answer_set(self.feedbacksheet)
                        pax.save()
        if (self.questionaire):
            if self.pk:
                orig = Event.objects.get(pk=self.pk)
                if orig.questionaire != self.questionaire:
                    for application in self.applicants.all():
                        application.questionaire = create_answer_set(
                            self.questionaire)
                        application.save()
        super(Event, self).save(force_insert, force_update, using,
                                update_fields)
示例#8
0
 def save(self,
          force_insert=False,
          force_update=False,
          using=None,
          update_fields=None):
     salt = sha.new(str(random.random())).hexdigest()[:5]
     self.confirmation = sha.new(salt + str(random.random())).hexdigest()
     if not self.pk:
         if self.target.feedbacksheet:
             self.feedback = create_answer_set(self.feedbacksheet)
     return super(Participation, self).save(force_insert, force_update,
                                            using, update_fields)
示例#9
0
 def save(self,
          force_insert=False,
          force_update=False,
          using=None,
          update_fields=None):
     self.slug = slugify(self.name)
     if (self.feedbacksheet):
         if self.pk:
             # if created
             orig = Event.objects.get(pk=self.pk)
             if orig.feedbacksheet != self.feedbacksheet:
                 #if feedbacksheet has changed
                 for pax in self.participation_set.all():
                     if pax.feedback:
                         pax.feedback.delete()
                     pax.feedback = create_answer_set(self.feedbacksheet)
                     pax.save()
     if (self.questionaire):
         if self.pk:
             orig = Event.objects.get(pk=self.pk)
             if orig.questionaire != self.questionaire:
                 for application in self.applicants.all():
                     application.questionaire = create_answer_set(
                         self.questionaire)
                     application.save()
     super(Event, self).save(force_insert, force_update, using,
                             update_fields)
     privileged, created = Group.objects.get_or_create(name=self.slug +
                                                       "_privileged")
     privileged.save()
     privileged.user_set = self.organizers.all()
     for oc in self.organizing_committee.all():
         assign_perm('change_event',
                     Group.objects.get(name=oc.slug + "_privileged"), self)
     privileged.save()
     assign_perm('change_event', privileged, self)