Ejemplo n.º 1
0
def activate(request, activation_key, template='registration/activate.html'):
    """
    Activates a user's account, if their key is valid and hasn't
    expired.
    """
    activation_key = activation_key.lower()
    account = AdminRegistrationProfile.objects.activate_user(activation_key)

    if account:
        # ** hack for logging in the user **
        # when the login form is posted, user = authenticate(username=data['username'], password=data['password'])
        # ...but we cannot authenticate without password... so we work-around authentication
        account.backend = settings.AUTHENTICATION_BACKENDS[0]
        contact = Contact.objects.get(user=account)
        #send_welcome_email(contact.email, contact.first_name, contact.last_name)
        # Send an email to the user if an Administrator has activated his/her account
        if config_value('SHOP', 'ACCOUNT_VERIFICATION') == "ADMINISTRATOR":
            site = Site.objects.get_current()
            profile = AdminRegistrationProfile.objects.get(user=account)
            profile.send_welcome_email(site)
            template = 'registration/administrator_activate.html'
        else:
            # Otherwise login the user as he/she is the one activating his/her account
            _login(request, account)
            request.session[CUSTOMER_ID] = contact.id

        signals.satchmo_registration_verified.send(contact, contact=contact)

    context = RequestContext(
        request, {
            'account': account,
            'expiration_days': config_value('SHOP', 'ACCOUNT_ACTIVATION_DAYS'),
            "page_info": _get_page_parameters(),
        })
    return render_to_response(template, context_instance=context)
Ejemplo n.º 2
0
def activate(request, activation_key, template = 'registration/activate.html'):
    """
    Activates a user's account, if their key is valid and hasn't
    expired.
    """
    activation_key = activation_key.lower()
    account = AdminRegistrationProfile.objects.activate_user(activation_key)

    if account:
        # ** hack for logging in the user **
        # when the login form is posted, user = authenticate(username=data['username'], password=data['password'])
        # ...but we cannot authenticate without password... so we work-around authentication
        account.backend = settings.AUTHENTICATION_BACKENDS[0]
        contact = Contact.objects.get(user=account)
        #send_welcome_email(contact.email, contact.first_name, contact.last_name)
        # Send an email to the user if an Administrator has activated his/her account
        if config_value('SHOP', 'ACCOUNT_VERIFICATION') == "ADMINISTRATOR":
            site = Site.objects.get_current()
            profile = AdminRegistrationProfile.objects.get(user=account)
            profile.send_welcome_email(site)
            template = 'registration/administrator_activate.html'
        else:
            # Otherwise login the user as he/she is the one activating his/her account
            _login(request, account)
            request.session[CUSTOMER_ID] = contact.id

        signals.satchmo_registration_verified.send(contact, contact=contact)

    context = RequestContext(request, {
        'account': account,
        'expiration_days': config_value('SHOP', 'ACCOUNT_ACTIVATION_DAYS'),
        "page_info": _get_page_parameters(),
    })
    return render_to_response(template,
                              context_instance=context)
Ejemplo n.º 3
0
def emaillogin(request,
               template_name='registration/login.html',
               auth_form=EmailAuthenticationForm,
               redirect_field_name=REDIRECT_FIELD_NAME):
    "Displays the login form and handles the login action. Altered to use the EmailAuthenticationForm"

    redirect_to = request.REQUEST.get(redirect_field_name, '')

    # Avoid redirecting to logout if the user clicked on login after logout
    if redirect_to == urlresolvers.reverse('auth_logout'):
        redirect_to = None

    success, todo = _login(request, redirect_to)
    if success:
        # return the response redirect
        return todo
    else:
        # continue with the login form
        form = todo

    request.session.set_test_cookie()
    if Site._meta.installed:
        current_site = Site.objects.get_current()
    else:
        current_site = RequestSite(request)

    return render_to_response(template_name, {
        'form': form,
        redirect_field_name: redirect_to,
        'site_name': current_site.name,
        "page_info": _get_page_parameters(),
    },
                              context_instance=RequestContext(request))
Ejemplo n.º 4
0
def emaillogin(request, template_name='registration/login.html',
    auth_form=EmailAuthenticationForm, redirect_field_name=REDIRECT_FIELD_NAME):
    "Displays the login form and handles the login action. Altered to use the EmailAuthenticationForm"

    redirect_to = request.REQUEST.get(redirect_field_name, '')

    # Avoid redirecting to logout if the user clicked on login after logout
    if redirect_to == urlresolvers.reverse('auth_logout'):
        redirect_to = None

    success, todo = _login(request, redirect_to)
    if success:
        # return the response redirect
        return todo
    else:
        # continue with the login form
        form = todo

    request.session.set_test_cookie()
    if Site._meta.installed:
        current_site = Site.objects.get_current()
    else:
        current_site = RequestSite(request)

    return render_to_response(template_name, {
        'form': form,
        redirect_field_name: redirect_to,
        'site_name': current_site.name,
        "page_info": _get_page_parameters(),
    }, context_instance=RequestContext(request))