Example #1
0
 def save(self, email_template=None, use_https=False, token_generator=default_token_generator, from_email=None, request=None, domain=None, **kwargs):
     if not email_template:
         email_template = auth.default_registration_template()
     user = self.get_existing_user()
     if user is None:
         email = self.cleaned_data['email']
         username = email
         if len(username) > 30:
             username = email[:30]
         AuthUser = get_user_model()
         tries = 0
         while user is None and tries < 5:
             try:
                 user = AuthUser.objects.create(
                     username=username, email=email, is_active=False)
             except django.db.utils.IntegrityError as e:
                 tries += 1
                 username = tracker.util.random_num_replace(
                     username, 8, max_length=30)
         if tries >= 5:
             raise forms.ValidationError(
                 'Something horrible happened, please try again')
     if domain is None:
         domain = viewutil.get_request_server_url(request)
     return auth.send_registration_mail(domain, user, template=email_template, sender=from_email, token_generator=token_generator)
 def save(self, email_template=None, use_https=False, token_generator=default_token_generator, from_email=None, request=None, **kwargs):
     if not email_template:
         email_template = auth.default_registration_template()
     user = self.get_existing_user()
     email = self.cleaned_data['email']
     if user is None:
         AuthUser = get_user_model()
         user = AuthUser.objects.create(username=email,email=email,is_active=False)
     domain = viewutil.get_request_server_url(request)
     return auth.send_registration_mail(domain, user, template=email_template, sender=from_email, token_generator=token_generator)
Example #3
0
 def save(self,
          email_template=None,
          use_https=False,
          token_generator=default_token_generator,
          from_email=None,
          request=None,
          **kwargs):
     if not email_template:
         email_template = auth.default_registration_template()
     user = self.get_existing_user()
     email = self.cleaned_data['email']
     if user is None:
         AuthUser = get_user_model()
         user = AuthUser.objects.create(username=email,
                                        email=email,
                                        is_active=False)
     domain = viewutil.get_request_server_url(request)
     return auth.send_registration_mail(domain,
                                        user,
                                        template=email_template,
                                        sender=from_email,
                                        token_generator=token_generator)
Example #4
0
 def save(
     self,
     email_template=None,
     token_generator=default_token_generator,
     from_email=None,
     request=None,
     **kwargs,
 ):
     if not email_template:
         email_template = auth.default_registration_template()
     user = self.get_existing_user()
     if user is None:
         email = self.cleaned_data['email']
         username = email
         if len(username) > 30:
             username = email[:30]
         AuthUser = get_user_model()
         tries = 0
         while user is None and tries < 5:
             try:
                 user = AuthUser.objects.create(username=username,
                                                email=email,
                                                is_active=False)
             except django.db.utils.IntegrityError:
                 tries += 1
                 username = tracker.util.random_num_replace(username,
                                                            8,
                                                            max_length=30)
         if tries >= 5:
             raise forms.ValidationError(
                 'Something horrible happened, please try again')
     return auth.send_registration_mail(
         request,
         user,
         template=email_template,
         sender=from_email,
         token_generator=token_generator,
     )
Example #5
0
import post_office.models

from tracker import prizemail, auth, commandutil

_default_templates = {
    auth.default_password_reset_template_name(): auth.default_password_reset_template(),
    auth.default_registration_template_name(): auth.default_registration_template(),
    auth.default_volunteer_registration_template_name(): auth.default_volunteer_registration_template(),
    prizemail.default_prize_winner_template_name(): prizemail.default_prize_winner_template(),
    prizemail.default_prize_contributor_template_name(): prizemail.default_prize_contributor_template(),
    prizemail.default_prize_winner_accept_template_name(): prizemail.default_prize_winner_accept_template(),
    prizemail.default_prize_shipping_template_name(): prizemail.default_prize_shipping_template(),
    prizemail.default_activate_prize_handlers_template_name(): prizemail.default_activate_prize_handlers_template(),
}


def email_template_name(arg):
    parts = arg.partition(':')
    template_obj = _default_templates[parts[0]]
    custom_name = None
    if parts[1] == ':':
        if parts[2]:
            custom_name = parts[2]
        else:
            raise Exception('Must specify custom name after colon')
    return (template_obj, custom_name)


class Command(commandutil.TrackerCommand):
    help = 'Generates all default mail templates that are not currently in the database'
from django.core.management.base import BaseCommand, CommandError

import post_office

import tracker.prizemail as prizemail
import tracker.auth as auth
import tracker.commandutil as commandutil

_defaultTemplates = {
    auth.default_password_reset_template_name(): auth.default_password_reset_template(),
    auth.default_registration_template_name(): auth.default_registration_template(),
    prizemail.default_prize_winner_template_name(): prizemail.default_prize_winner_template(),
    prizemail.default_prize_contributor_template_name(): prizemail.default_prize_contributor_template(),
    prizemail.default_prize_winner_accept_template_name(): prizemail.default_prize_winner_accept_template(),
    prizemail.default_prize_shipping_template_name(): prizemail.default_prize_shipping_template(),
    prizemail.default_activate_prize_handlers_template_name(): prizemail.default_activate_prize_handlers_template(),
}

def email_template_name(arg):
    parts = arg.partition(':')
    templateObj = _defaultTemplates[parts[0]]
    customName = None
    if parts[1] == ':':
        if parts[2]:
            customName = parts[2]
        else:
            raise Exception("Must specify custom name after colon")
    return (templateObj,customName)
         

class Command(commandutil.TrackerCommand):
Example #7
0
import post_office

import tracker.prizemail as prizemail
import tracker.auth as auth
import tracker.commandutil as commandutil

_defaultTemplates = {
    auth.default_password_reset_template_name():
    auth.default_password_reset_template(),
    auth.default_registration_template_name():
    auth.default_registration_template(),
    prizemail.default_prize_winner_template_name():
    prizemail.default_prize_winner_template(),
    prizemail.default_prize_contributor_template_name():
    prizemail.default_prize_contributor_template(),
    prizemail.default_prize_winner_accept_template_name():
    prizemail.default_prize_winner_accept_template(),
    prizemail.default_prize_shipping_template_name():
    prizemail.default_prize_shipping_template(),
    prizemail.default_activate_prize_handlers_template_name():
    prizemail.default_activate_prize_handlers_template(),
}


def email_template_name(arg):
    parts = arg.partition(':')
    templateObj = _defaultTemplates[parts[0]]
    customName = None
    if parts[1] == ':':
        if parts[2]:
            customName = parts[2]