128 |
128 |
def template_base(self):
|
129 |
129 |
return self.kwargs.get('template_base', 'base.html')
|
130 |
130 |
|
|
131 |
def render(self, request, template_names, context):
|
|
132 |
context['template_base'] = self.template_base
|
|
133 |
if 'context_hook' in self.kwargs:
|
|
134 |
self.kwargs['context_hook'](context)
|
|
135 |
return render(request, template_names, context)
|
|
136 |
|
131 |
137 |
def get_idp(self, request):
|
132 |
138 |
entity_id = request.POST.get('entityID') or request.GET.get('entityID')
|
133 |
139 |
if not entity_id:
|
... | ... | |
184 |
190 |
if error_url:
|
185 |
191 |
error_url = resolve_url(error_url)
|
186 |
192 |
next_url = error_url or self.get_next_url(default=resolve_url(settings.LOGIN_REDIRECT_URL))
|
187 |
|
return render(request, 'mellon/authentication_failed.html',
|
|
193 |
return self.render(request, 'mellon/authentication_failed.html',
|
188 |
194 |
{
|
189 |
|
'template_base': self.template_base,
|
190 |
195 |
'debug': settings.DEBUG,
|
191 |
196 |
'reason': reason,
|
192 |
197 |
'status_codes': status_codes,
|
... | ... | |
253 |
258 |
else:
|
254 |
259 |
self.log.warning('user %s (NameID is %r) is inactive, login refused', user,
|
255 |
260 |
attributes['name_id_content'])
|
256 |
|
return render(request, 'mellon/inactive_user.html', {
|
257 |
|
'template_base': self.template_base,
|
|
261 |
return self.render(request, 'mellon/inactive_user.html', {
|
258 |
262 |
'user': user,
|
259 |
263 |
'saml_attributes': attributes})
|
260 |
264 |
else:
|
261 |
265 |
self.log.warning('no user found for NameID %r', attributes['name_id_content'])
|
262 |
|
return render(request, 'mellon/user_not_found.html', {
|
263 |
|
'template_base': self.template_base,
|
|
266 |
return self.render(request, 'mellon/user_not_found.html', {
|
264 |
267 |
'saml_attributes': attributes
|
265 |
268 |
})
|
266 |
269 |
request.session['lasso_session_dump'] = login.session.dump()
|