Exemple #1
0
def register(request,  newquestion = False,  newanswer = False):
    logging.debug('')
    state,  context = fb.get_user_state(request)
    
    if state == fb.STATES['FIRSTTIMER']:
        logging.debug('FB FIRSTTIMER - try to register locally')
        logging.debug('request method is %s' % request.method)
        if request.method == 'POST' and 'bnewaccount' in request.POST:
            form1 = forms.FBConnectRegisterForm(request.POST)
            email_feeds_form = SimpleEmailSubscribeForm(request.POST)
            
            if (form1.is_valid() and email_feeds_form.is_valid()):
                tmp_pwd = User.objects.make_random_password()
                user_ = User.objects.create_user(form1.cleaned_data['username'],
                         form1.cleaned_data['email'], tmp_pwd)
                
                user_.set_unusable_password()
                logging.debug('created new internal user %s' % form1.cleaned_data['username'])
                
                uassoc = FBAssociation(user=user_,  fbuid=context['uid'])
                uassoc.save()
                logging.debug('created new user association')
                
                email_feeds_form.save(user_)
                
                return login_and_forward(request,  user_,  newquestion,  newanswer)
            else:
                logging.debug('form user input is invalid')
        else:            
            form1 = forms.FBConnectRegisterForm(initial={
                'next': '/',
                'username': context['name'],
                'email': '',
            }) 
            email_feeds_form = SimpleEmailSubscribeForm()
        
        return render('authopenid/complete.html', {
            'form1': form1,
            'email_feeds_form': email_feeds_form,
            'provider':mark_safe('facebook'),
            'login_type':'facebook',
            'gravatar_faq_url':reverse('faq') + '#gravatar',
        }, context_instance=RequestContext(request))
    else:
        logging.debug('not a FIRSTTIMER --> redirect to index view')
        return HttpResponseRedirect(reverse('index'))
Exemple #2
0
def register(request, newquestion=False, newanswer=False):
    state, context = fb.get_user_state(request)

    if state == fb.STATES['FIRSTTIMER']:

        if 'bnewaccount' in request.POST.keys():
            form1 = forms.FBConnectRegisterForm(request.POST)
            email_feeds_form = EditUserEmailFeedsForm(request.POST)

            if (form1.is_valid() and email_feeds_form.is_valid()):
                tmp_pwd = User.objects.make_random_password()
                user_ = User.objects.create_user(
                    form1.cleaned_data['username'],
                    form1.cleaned_data['email'], tmp_pwd)

                user_.set_unusable_password()

                uassoc = FBAssociation(user=user_, fbuid=context['uid'])
                uassoc.save()

                email_feeds_form.save(user_)

                return login_and_forward(request, user_, newquestion,
                                         newanswer)
        else:
            form1 = forms.FBConnectRegisterForm(initial={
                'next': '/',
                'username': context['name'],
                'email': '',
            })

            email_feeds_form = EditUserEmailFeedsForm()

        return render('authopenid/complete.html', {
            'form1': form1,
            'email_feeds_form': email_feeds_form,
            'provider': mark_safe('facebook'),
            'login_type': 'facebook',
            'gravatar_faq_url': reverse('faq') + '#gravatar',
        },
                      context_instance=RequestContext(request))
    else:
        return HttpResponseRedirect(reverse('index'))
Exemple #3
0
def signin(request, newquestion=False, newanswer=False):
    state, context = fb.get_user_state(request)

    if state == fb.STATES['FIRSTTIMER']:
        if newquestion:
            register_url = 'fb_user_register_new_question'
        elif newanswer:
            register_url = 'fb_user_register_new_answer'
        else:
            register_url = 'fb_user_register'
        return HttpResponseRedirect(reverse(register_url))
    elif state == fb.STATES['RETURNINGUSER']:
        return login_and_forward(request, context, newquestion, newanswer)
    elif state == fb.STATES['SESSIONEXPIRED']:
        response = logout(request, next_page=reverse('index'))
        fb.delete_cookies(response)
        return response

    return HttpResponseRedirect(reverse('index'))
Exemple #4
0
def signin(request,  newquestion = False,  newanswer = False):
    state,  context = fb.get_user_state(request)
    
    if state == fb.STATES['FIRSTTIMER']:
        if newquestion:
            register_url = 'fb_user_register_new_question'
        elif newanswer:
            register_url = 'fb_user_register_new_answer'
        else:
            register_url = 'fb_user_register'
        return HttpResponseRedirect(reverse(register_url))
    elif state == fb.STATES['RETURNINGUSER']:
        return login_and_forward(request,  context,  newquestion,  newanswer)
    elif state == fb.STATES['SESSIONEXPIRED']:
        response = logout(request,  next_page=reverse('index'))
        fb.delete_cookies(response)
        return response
        
    return HttpResponseRedirect(reverse('index'))
Exemple #5
0
def register(request,  newquestion = False,  newanswer = False):
    state,  context = fb.get_user_state(request)
    
    if state == fb.STATES['FIRSTTIMER']:
        
        if 'bnewaccount' in request.POST.keys():
            form1 = forms.FBConnectRegisterForm(request.POST)
            email_feeds_form = EditUserEmailFeedsForm(request.POST)
            
            if (form1.is_valid() and email_feeds_form.is_valid()):
                tmp_pwd = User.objects.make_random_password()
                user_ = User.objects.create_user(form1.cleaned_data['username'],
                         form1.cleaned_data['email'], tmp_pwd)

                user_.set_unusable_password()
                
                uassoc = FBAssociation(user=user_,  fbuid=context['uid'])
                uassoc.save()
                
                email_feeds_form.save(user_)
                
                return login_and_forward(request,  user_,  newquestion,  newanswer)
        else:            
            form1 = forms.FBConnectRegisterForm(initial={
                'next': '/',
                'username': context['name'],
                'email': '',
            }) 
            
            email_feeds_form = EditUserEmailFeedsForm()

        return render('authopenid/complete.html', {
            'form1': form1,
            'email_feeds_form': email_feeds_form,
            'provider':mark_safe('facebook'),
            'login_type':'facebook',
            'gravatar_faq_url':reverse('faq') + '#gravatar',
        }, context_instance=RequestContext(request))
    else:
        return HttpResponseRedirect(reverse('index'))