Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
E
edx-platform
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
edx
edx-platform
Commits
fd79da9a
Commit
fd79da9a
authored
Jan 26, 2012
by
David Ormsbee
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
added some sample logging to login process
parent
a7e746d3
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
23 additions
and
15 deletions
+23
-15
auth/views.py
+23
-15
No files found.
auth/views.py
View file @
fd79da9a
import
logging
from
djangomako.shortcuts
import
render_to_response
,
render_to_string
from
django.contrib.auth.models
import
User
from
django.shortcuts
import
redirect
...
...
@@ -12,6 +14,8 @@ from django.core.validators import validate_email, validate_slug
import
random
,
string
from
django.db
import
connection
log
=
logging
.
getLogger
(
"mitx.auth"
)
def
csrf_token
(
context
):
csrf_token
=
context
.
get
(
'csrf_token'
,
''
)
if
csrf_token
==
'NOTPROVIDED'
:
...
...
@@ -37,36 +41,40 @@ def index(request):
# return render_to_response('courseinfo.html', {'error' : '',
# 'csrf': csrf_token })
# Need different levels of logging
def
login_user
(
request
,
error
=
""
):
# print request.POST
if
'email'
not
in
request
.
POST
or
'password'
not
in
request
.
POST
:
# print "X"
return
render_to_response
(
'login.html'
,
{
'error'
:
error
.
replace
(
'+'
,
' '
)})
email
=
request
.
POST
[
'email'
]
password
=
request
.
POST
[
'password'
]
try
:
user
=
User
.
objects
.
get
(
email
=
email
)
user
=
User
.
objects
.
get
(
email
=
email
)
except
User
.
DoesNotExist
:
log
.
warning
(
"Login failed - Unknown user email: {0}"
.
format
(
email
))
return
HttpResponse
(
json
.
dumps
({
'success'
:
False
,
'error'
:
'Invalid login'
}))
# TODO: User error message
username
=
user
.
username
user
=
authenticate
(
username
=
username
,
password
=
password
)
username
=
user
.
username
user
=
authenticate
(
username
=
username
,
password
=
password
)
if
user
is
None
:
log
.
warning
(
"Login failed - Unknown password for {0} is invalid"
.
format
(
email
))
return
HttpResponse
(
json
.
dumps
({
'success'
:
False
,
'error'
:
'Invalid login'
}))
if
user
is
not
None
and
user
.
is_active
:
login
(
request
,
user
)
if
request
.
POST
[
'remember'
]
==
'true'
:
request
.
session
.
set_expiry
(
None
)
# or change to 604800 for 7 days
# print "recall"
else
:
request
.
session
.
set_expiry
(
0
)
#print "close"
# print len(connection.queries), connection.queries
return
HttpResponse
(
json
.
dumps
({
'success'
:
True
}))
try
:
login
(
request
,
user
)
if
request
.
POST
[
'remember'
]
==
'true'
:
request
.
session
.
set_expiry
(
None
)
# or change to 604800 for 7 days
log
.
debug
(
"Setting user session to never expire"
)
else
:
request
.
session
.
set_expiry
(
0
)
except
Exception
as
e
:
log
.
critical
(
"Login failed - Could not create session. Is memcached running?"
)
log
.
exception
(
e
)
# print len(connection.queries), connection.queries
return
HttpResponse
(
json
.
dumps
({
'success'
:
True
}))
return
HttpResponse
(
json
.
dumps
({
'success'
:
False
,
'error'
:
'Account not active. Check your e-mail.'
}))
...
...
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