Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- if request.method == 'POST':
- form = RegistrationForm(request.POST)
- if form.is_valid():
- p = form.cleaned_data
- n_language = None
- if 'language' in p:
- if p['language'] != '-----' and p['language']:
- n_language = p['language']
- form.save()
- user = form.instance
- if not request.user_profile.user_id:
- request.user_profile.user = user
- request.user_profile.username = user.username
- request.user_profile.native_language = n_language
- request.user_profile.domain = request.domain
- request.user_profile.set_user_country(country_code=p.get('country'))
- request.user_profile.save(force_update=True)
- up = request.user_profile
- for language in Language.objects.filter(testsession__user=request.user_profile).annotate(
- score=Sum('testsession__score'),
- tests=Count('testsession')
- ):
- UserStats.objects.create(
- user=user,
- language=language,
- total_score=language.score,
- total_sessions=language.tests
- )
- else:
- up = UserProfile()
- up.user = user
- up.native_language = n_language
- up.domain = request.domain
- # try:
- # ip = request.META['HTTP_X_FORWARDED_FOR']
- # except:
- # ip = request.META['REMOTE_ADDR']
- up.set_user_country(country_code=p.get('country'))
- up.username = user.username
- up.save(force_insert=True)
- user = auth.authenticate(username=user.username, password=form.cleaned_data['password1'])
- if request.session.get('sso_session', False):
- request.session['sso_session'] = False
- request.session.save()
- connect_with_tlo(request, user)
- auth.login(request, user)
- user_registered.send(sender=None, request=request, account_type='employee' if up.is_employee else 'WIE')
- try:
- form.send_registration_email(request, user)
- except SMTPRecipientsRefused, e:
- pass
- next_ = request.POST.get('success_url', construct_next_uri(request))
- response = sso.HttpResponseSSORedirect(request, next_)
- response.delete_cookie('__l')
- else:
- request._return_loc = urlparse.urlparse(request.POST['success_url'])
- next_ = construct_next_uri(request)
- else:
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement