Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
D
django-openid-auth
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
OpenEdx
django-openid-auth
Commits
c164b5b0
Commit
c164b5b0
authored
Jul 16, 2010
by
Richard Marko
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add posibility to change location of failure template.
parent
31f08034
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
13 additions
and
10 deletions
+13
-10
django_openid_auth/views.py
+13
-10
No files found.
django_openid_auth/views.py
View file @
c164b5b0
...
...
@@ -40,6 +40,7 @@ from django.http import HttpResponse, HttpResponseRedirect
from
django.shortcuts
import
render_to_response
from
django.template
import
RequestContext
from
django.template.loader
import
render_to_string
from
django.utils.functional
import
curry
from
openid.consumer.consumer
import
(
Consumer
,
SUCCESS
,
CANCEL
,
FAILURE
)
...
...
@@ -111,10 +112,11 @@ def render_openid_request(request, openid_request, return_to, trust_root=None):
return
HttpResponse
(
form_html
,
content_type
=
'text/html;charset=UTF-8'
)
def
render_failure
(
request
,
message
,
status
=
403
):
def
default_render_failure
(
request
,
message
,
status
=
403
,
template_name
=
'openid/failure.html'
):
"""Render an error page to the user."""
data
=
render_to_string
(
'openid/failure.html'
,
dict
(
message
=
message
),
template_name
,
dict
(
message
=
message
),
context_instance
=
RequestContext
(
request
))
return
HttpResponse
(
data
,
status
=
status
)
...
...
@@ -133,6 +135,7 @@ def parse_openid_response(request):
def
login_begin
(
request
,
template_name
=
'openid/login.html'
,
login_complete
=
'openid-complete'
,
form
=
OpenIDLoginForm
,
render_failure
=
default_render_failure
,
redirect_field_name
=
REDIRECT_FIELD_NAME
):
"""Begin an OpenID login request, possibly asking for an identity URL."""
redirect_to
=
request
.
REQUEST
.
get
(
redirect_field_name
,
''
)
...
...
@@ -211,13 +214,14 @@ def login_begin(request, template_name='openid/login.html',
return
render_openid_request
(
request
,
openid_request
,
return_to
)
def
login_complete
(
request
,
redirect_field_name
=
REDIRECT_FIELD_NAME
):
def
login_complete
(
request
,
redirect_field_name
=
REDIRECT_FIELD_NAME
,
render_failure
=
default_render_failure
):
redirect_to
=
request
.
REQUEST
.
get
(
redirect_field_name
,
''
)
render_failure
=
curry
(
render_failure
,
request
)
openid_response
=
parse_openid_response
(
request
)
if
not
openid_response
:
return
render_failure
(
request
,
'This is an OpenID relying party endpoint.'
)
return
render_failure
(
'This is an OpenID relying party endpoint.'
)
if
openid_response
.
status
==
SUCCESS
:
user
=
authenticate
(
openid_response
=
openid_response
)
...
...
@@ -226,15 +230,14 @@ def login_complete(request, redirect_field_name=REDIRECT_FIELD_NAME):
auth_login
(
request
,
user
)
return
HttpResponseRedirect
(
sanitise_redirect_url
(
redirect_to
))
else
:
return
render_failure
(
request
,
'Disabled account'
)
return
render_failure
(
'Disabled account'
)
else
:
return
render_failure
(
request
,
'Unknown user'
)
return
render_failure
(
'Unknown user'
)
elif
openid_response
.
status
==
FAILURE
:
return
render_failure
(
request
,
'OpenID authentication failed:
%
s'
%
return
render_failure
(
'OpenID authentication failed:
%
s'
%
openid_response
.
message
)
elif
openid_response
.
status
==
CANCEL
:
return
render_failure
(
request
,
'Authentication cancelled'
)
return
render_failure
(
'Authentication cancelled'
)
else
:
assert
False
,
(
"Unknown OpenID response type:
%
r"
%
openid_response
.
status
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment