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
0ea176f6
Commit
0ea176f6
authored
Mar 14, 2012
by
Piotr Mitros
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Adding name and e-mail changes
--HG-- branch : pmitros-name-change
parent
11f48207
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
75 additions
and
0 deletions
+75
-0
student/models.py
+10
-0
student/views.py
+65
-0
No files found.
student/models.py
View file @
0ea176f6
...
...
@@ -58,6 +58,16 @@ class Registration(models.Model):
self
.
user
.
save
()
#self.delete()
class
PendingNameChange
(
models
.
Model
):
user
=
models
.
OneToOneField
(
User
,
unique
=
True
,
db_index
=
True
,
related_name
=
'profile'
)
new_name
=
models
.
CharField
(
blank
=
True
,
max_length
=
255
,
db_index
=
True
)
rationale
=
models
.
CharField
(
blank
=
True
,
max_length
=
1024
,
db_index
=
True
)
class
PendingEmailChange
(
models
.
Model
):
user
=
models
.
OneToOneField
(
User
,
unique
=
True
,
db_index
=
True
,
related_name
=
'profile'
)
new_email
=
models
.
CharField
(
blank
=
True
,
max_length
=
255
,
db_index
=
True
)
#cache_relation(User.profile)
#### Helper methods for use from python manage.py shell.
...
...
student/views.py
View file @
0ea176f6
...
...
@@ -252,3 +252,68 @@ def password_reset(request):
else
:
return
HttpResponse
(
json
.
dumps
({
'success'
:
False
,
'error'
:
'Invalid e-mail'
}))
@ensure_csrf_cookie
def
reactivation_email
(
request
):
''' Send an e-mail to reactivate a deactivated account, or to
resend an activation e-mail '''
pass
@ensure_csrf_cookie
def
change_email_request
(
request
):
if
not
request
.
user
.
is_authenticated
:
raise
Http404
pass
@ensure_csrf_cookie
def
change_email_confirm
(
request
):
pass
@ensure_csrf_cookie
def
change_name_request
(
request
):
if
not
request
.
user
.
is_authenticated
:
raise
Http404
pnc
=
PendingNameChange
()
pnc
.
user
=
request
.
User
pnc
.
new_name
=
request
.
POST
[
'new_name'
]
pnc
.
rationale
=
request
.
POST
[
'rationale'
]
pnc
.
save
()
return
HttpResponse
(
json
.
dumps
({
'success'
:
True
}))
@ensure_csrf_cookie
def
change_name_list
(
request
):
if
not
request
.
user
.
is_staff
:
raise
Http404
changes
=
list
(
PendingNameChange
.
objects
.
all
())
json
=
[{
'new_name'
:
c
.
new_name
,
'rationale'
:
c
.
rationale
,
'old_name'
:
UserProfile
.
Objects
.
get
(
username
=
c
.
user
)
.
name
,
'email'
:
c
.
user
.
email
,
'id'
:
c
.
id
}
for
c
in
changes
]
return
render_to_response
(
'name_changes.html'
,
json
)
@ensure_csrf_cookie
def
change_name_reject
(
request
):
''' Course staff clicks 'reject' on a given name change '''
if
not
request
.
user
.
is_staff
:
raise
Http404
pnc
=
PendingNameChange
.
objects
.
get
(
id
=
int
(
request
.
POST
[
'id'
]))
pnc
.
delete
()
return
HttpResponse
(
json
.
dumps
({
'success'
:
True
}))
@ensure_csrf_cookie
def
change_name_accept
(
request
):
''' Course staff clicks 'accept' on a given name change '''
pnc
=
PendingNameChange
.
objects
.
get
(
id
=
int
(
request
.
POST
[
'id'
]))
u
=
pnc
.
user
up
=
UserProfile
.
objects
.
get
(
user
=
u
)
up
.
name
=
pnc
.
name
up
.
save
()
pnc
.
delete
()
return
HttpResponse
(
json
.
dumps
({
'success'
:
True
}))
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