示例#1
0
 def post(self,request,pk):
     form = ContactUsForm (request.POST) #bound form to contact
     get_response = False
     user = request.user
     resp = HttpResponse("")
     if user.is_authenticated() and form.is_valid():
         c=form.save(commit= True)
         send_mails(c.email, ['*****@*****.**'], 'message from open community', c.message, '')
     return resp
示例#2
0
    def send_mail(self, template, sender, send_to, data=None, base_url=None):

        if not base_url:
            base_url = settings.HOST_URL

        d = data.copy() if data else {}

        d.update({
              'base_url': base_url,
              'community': self,
              'LANGUAGE_CODE': settings.LANGUAGE_CODE,
              'MEDIA_URL': settings.MEDIA_URL,
              'STATIC_URL': settings.STATIC_URL,
             })

        subject = render_to_string("emails/%s_title.txt" % template, d).strip()

        message = render_to_string("emails/%s.txt" % template, d)
        html_message = render_to_string("emails/%s.html" % template, d)
        from_email = "%s <%s>" % (sender.display_name, sender.email)

        recipient_list = set([sender.email])
        open_invitation_list = set()

        if send_to == SendToOption.ALL_MEMBERS:
            recipient_list.update(list(
                      self.memberships.values_list('user__email', flat=True)))
            open_invitation_email_list = self.invitations.values_list('email', flat=True) 
            if open_invitation_email_list.count():
                open_invitation_list.update(list(open_invitation_email_list))
  
        elif send_to == SendToOption.BOARD_ONLY:
            recipient_list.update(list(
                        self.memberships.board().values_list('user__email', flat=True)))
            open_invitation_email_list = self.invitations.exclude(
                default_group_name=DefaultGroups.MEMBER).values_list('email', flat=True)
            if open_invitation_email_list.count():
                open_invitation_list.update(list(open_invitation_email_list))

        elif send_to == SendToOption.ONLY_ATTENDEES:
            recipient_list.update(list(
                       self.upcoming_meeting_participants.values_list(
                                                          'email', flat=True)))

        logger.info("Sending agenda to %d users" % len(recipient_list))

        send_mails(from_email, recipient_list, subject, message, html_message)
        
        if open_invitation_list:
            send_mails(from_email, open_invitation_list, subject, message, html_message)

        return len(recipient_list)
示例#3
0
    def send_mail(self, template, sender, send_to, data=None, base_url=None):

        if not base_url:
            base_url = settings.HOST_URL

        d = data.copy() if data else {}

        d.update({
            'base_url': base_url,
            'community': self,
            'LANGUAGE_CODE': settings.LANGUAGE_CODE,
            'MEDIA_URL': settings.MEDIA_URL,
            'STATIC_URL': settings.STATIC_URL,
        })

        subject = render_to_string("emails/%s_title.txt" % template, d).strip()

        message = render_to_string("emails/%s.txt" % template, d)
        html_message = render_to_string("emails/%s.html" % template, d)
        from_email = "%s <%s>" % (self.name, settings.FROM_EMAIL)

        recipient_list = set([sender.email])

        if send_to == SendToOption.ALL_MEMBERS:
            recipient_list.update(
                list(self.memberships.values_list('user__email', flat=True)))
        elif send_to == SendToOption.BOARD_ONLY:
            recipient_list.update(
                list(self.memberships.board().values_list('user__email',
                                                          flat=True)))
        elif send_to == SendToOption.ONLY_ATTENDEES:
            recipient_list.update(
                list(
                    self.upcoming_meeting_participants.values_list('email',
                                                                   flat=True)))

        logger.info("Sending agenda to %d users" % len(recipient_list))

        send_mails(from_email, recipient_list, subject, message, html_message)

        return len(recipient_list)
示例#4
0
    def send_agenda(self, sender, send_to, base_url=None):

        if not base_url:
            base_url = settings.HOST_URL

        d = {
              'base_url': base_url,
              'object': self,
              'community': self,
              'LANGUAGE_CODE': settings.LANGUAGE_CODE,
             }

        subject = render_to_string("emails/agenda_title.txt", d)

        message = render_to_string("emails/agenda.txt", d)
        html_message = render_to_string("emails/agenda.html", d)
        from_email = "%s <%s>" % (self.name, settings.FROM_EMAIL)

        recipient_list = set([sender.email])

        if send_to == SendToOption.ALL_MEMBERS:
            recipient_list.update(list(
                      self.memberships.values_list('user__email', flat=True)))
        elif send_to == SendToOption.BOARD_ONLY:
            recipient_list.update(list(
                        self.memberships.filter(
                                default_group_name=DefaultGroups.BOARD
                                    ).values_list('user__email', flat=True)))
        elif send_to == SendToOption.ONLY_ATTENDEES:
            recipient_list.update(list(
                       self.upcoming_meeting_participants.values_list(
                                                          'email', flat=True)))

        logger.info("Sending agenda to %d users" % len(recipient_list))

        send_mails(from_email, recipient_list, subject, message, html_message)

        return len(recipient_list)
示例#5
0
    def send_mail(self, template, sender, send_to, data=None, base_url=None):

        if not base_url:
            base_url = settings.HOST_URL

        d = data.copy() if data else {}

        d.update({
              'base_url': base_url,
              'community': self,
              'LANGUAGE_CODE': settings.LANGUAGE_CODE,
             })

        subject = render_to_string("emails/%s_title.txt" % template, d)

        message = render_to_string("emails/%s.txt" % template, d)
        html_message = render_to_string("emails/%s.html" % template, d)
        from_email = "%s <%s>" % (self.name, settings.FROM_EMAIL)

        recipient_list = set([sender.email])

        if send_to == SendToOption.ALL_MEMBERS:
            recipient_list.update(list(
                      self.memberships.values_list('user__email', flat=True)))
        elif send_to == SendToOption.BOARD_ONLY:
            recipient_list.update(list(
                        self.memberships.board().values_list('user__email', flat=True)))
        elif send_to == SendToOption.ONLY_ATTENDEES:
            recipient_list.update(list(
                       self.upcoming_meeting_participants.values_list(
                                                          'email', flat=True)))

        logger.info("Sending agenda to %d users" % len(recipient_list))

        send_mails(from_email, recipient_list, subject, message, html_message)

        return len(recipient_list)