import datetime
import logging
import urllib
+from urlparse import urlparse
from django.shortcuts import render_to_response, get_object_or_404
from django.template import RequestContext
provider_class = AUTH_PROVIDERS[auth_provider].consumer
- # Pass the cookies to the Facebook authentication class get_user_data method. We need them to take the access token.
if provider_class.__class__.__name__ == 'FacebookAuthConsumer':
- user_data = provider_class.get_user_data(request.COOKIES)
+ user_data = provider_class.get_user_data(request.session['access_token'])
else:
user_data = provider_class.get_user_data(request.session['assoc_key'])
+
if not user_data:
user_data = request.session.get('auth_consumer_data', {})
return manage_pending_data(request, _('save'), forward)
additional_get_params = urllib.urlencode(request.GET)
- return HttpResponseRedirect(forward + "?%s" % additional_get_params)
+
+ parsed_forward = urlparse(forward)
+
+ # If there is already some parsed query in the URL then change the forward URL
+ if parsed_forward.query:
+ forward_url = forward + "&%s" % additional_get_params
+ else:
+ forward_url = forward + "?%s" % additional_get_params
+
+ return HttpResponseRedirect(forward_url)
def forward_suspended_user(request, user, show_private_msg=True):
message = _("Sorry, but this account is suspended")