From: Loic Baron Date: Tue, 7 Feb 2017 06:17:45 +0000 (+0100) Subject: Redirect when there is next parameter in URL X-Git-Url: http://git.onelab.eu/?p=myslice.git;a=commitdiff_plain;h=b4969d314fe2004575a14b79dd337b6a5cc3fc5b Redirect when there is next parameter in URL --- diff --git a/portal/homeview.py b/portal/homeview.py index b417e094..fbe3ed6f 100644 --- a/portal/homeview.py +++ b/portal/homeview.py @@ -23,6 +23,8 @@ from portal.account import Account, get_expiration from portal.models import PendingSlice from portal.actions import authority_check_pis, get_jfed_identity, get_myslice_account +from myslice.settings import logger + import activity.user class HomeView (FreeAccessView, ThemeView): @@ -131,7 +133,11 @@ class HomeView (FreeAccessView, ThemeView): # log user activity activity.user.login(self.request, "error") env['state'] = "Your username and/or password were incorrect." + + env['next'] = request.POST.get('next',None) env['request'] = request + if env['next']: + return HttpResponseRedirect(env['next']) return render_to_response(self.template,env, context_instance=RequestContext(request)) def get (self, request, state=None): @@ -197,7 +203,8 @@ class HomeView (FreeAccessView, ThemeView): env['theme'] = self.theme env['section'] = "Dashboard" - + logger.debug("homeview called") + env['next'] = request.GET.get('next',None) env['username']=the_user(request) env['topmenu_items'] = topmenu_items(None, request) env['request'] = request diff --git a/portal/loginwidget.py b/portal/loginwidget.py index 5270473f..bea10fac 100644 --- a/portal/loginwidget.py +++ b/portal/loginwidget.py @@ -4,9 +4,12 @@ from django.shortcuts import render_to_response from django.views.generic.base import TemplateView from unfold.loginrequired import FreeAccessView +from myslice.settings import logger + class LoginWidget(FreeAccessView): def get(self, request): env = {} env.update(csrf(request)) + env['next'] = request.GET.get('next',None) return render_to_response("loginwidget.html", env)