def register(request):
    if request.method == 'POST': # Formulário enviado
        form = RegisterNewUserForm(request.POST, request.FILES)
        
        if form.is_valid():
            checked_form = form.cleaned_data
            new_user = User(first_name = checked_form['first_name'].strip(),
                            last_name = checked_form['last_name'].strip(),
                            login = checked_form['login'].strip().lower(),
                            email = checked_form['email'].strip().lower(),
                            password = checked_form['password'],
                            gender = checked_form['gender']) 
            new_user.set_encrypted_password(checked_form['password'])
            new_user.set_default_avatar()
            
            new_user.save()
                        
            message = create_confirmation_email(new_user.login, new_user.email, new_user.id)
            if (send_email(TITLE_CONFIRM_REGISTRATION, message, new_user.email) == False):
                registration_result = ERROR_SENDING_REGISTER_EMAIL
                new_user.delete()
            else:
                registration_result = SUCCESS_REGISTER_NEW_USER
               
            return render_to_response('user_profiles/register_new_user.html', 
                                      {'form': form,
                                       'registration_result': registration_result},
                                      context_instance=RequestContext(request))
            
    else: # Página acessada via link (método GET)
        form = RegisterNewUserForm()
        
    return render_to_response('user_profiles/register_new_user.html', 
                              {'form': form}, 
                              context_instance=RequestContext(request))
def recover(request):
    if request.method == 'POST': # Formulário enviado
        form = RecoverPasswordForm(request.POST, request.FILES)
        
        if form.is_valid():
            checked_form = form.cleaned_data
    
            user = User.objects.get(email=checked_form['email'])
        
            message = create_change_password_email(user.login, user.email, user.id)
            if (send_email(TITLE_RECOVER_PASSWORD, 
                           message, 
                           user.email) == False):
                result_operation = ERROR_SENDING_RECOVER_PASSWORD_EMAIL
            else:
                result_operation = SUCCESS_RECOVER_PASSWORD
            return render_to_response('user_profiles/recover_password.html', 
                                      {'form': form, 'result_operation': result_operation},
                                      context_instance=RequestContext(request))  
            

    else: # Página acessada via link (método GET)
        form = RecoverPasswordForm()
        
    return render_to_response('user_profiles/recover_password.html', 
                              {'form': form}, 
                              context_instance=RequestContext(request))
def recover(request):
    if request.method == 'POST':  # Formulário enviado
        form = RecoverPasswordForm(request.POST, request.FILES)

        if form.is_valid():
            checked_form = form.cleaned_data

            user = User.objects.get(email=checked_form['email'])

            message = create_change_password_email(user.login, user.email,
                                                   user.id)
            if (send_email(TITLE_RECOVER_PASSWORD, message,
                           user.email) == False):
                result_operation = ERROR_SENDING_RECOVER_PASSWORD_EMAIL
            else:
                result_operation = SUCCESS_RECOVER_PASSWORD
            return render_to_response('user_profiles/recover_password.html', {
                'form': form,
                'result_operation': result_operation
            },
                                      context_instance=RequestContext(request))

    else:  # Página acessada via link (método GET)
        form = RecoverPasswordForm()

    return render_to_response('user_profiles/recover_password.html',
                              {'form': form},
                              context_instance=RequestContext(request))
def register(request):
    if request.method == 'POST':  # Formulário enviado
        form = RegisterNewUserForm(request.POST, request.FILES)

        if form.is_valid():
            checked_form = form.cleaned_data
            new_user = User(first_name=checked_form['first_name'].strip(),
                            last_name=checked_form['last_name'].strip(),
                            login=checked_form['login'].strip().lower(),
                            email=checked_form['email'].strip().lower(),
                            password=checked_form['password'],
                            gender=checked_form['gender'])
            new_user.set_encrypted_password(checked_form['password'])
            new_user.set_default_avatar()

            new_user.save()

            message = create_confirmation_email(new_user.login, new_user.email,
                                                new_user.id)
            if (send_email(TITLE_CONFIRM_REGISTRATION, message,
                           new_user.email) == False):
                registration_result = ERROR_SENDING_REGISTER_EMAIL
                new_user.delete()
            else:
                registration_result = SUCCESS_REGISTER_NEW_USER

            return render_to_response(
                'user_profiles/register_new_user.html', {
                    'form': form,
                    'registration_result': registration_result
                },
                context_instance=RequestContext(request))

    else:  # Página acessada via link (método GET)
        form = RegisterNewUserForm()

    return render_to_response('user_profiles/register_new_user.html',
                              {'form': form},
                              context_instance=RequestContext(request))