| author | ymh <ymh.work@gmail.com> |
| Wed, 20 Apr 2011 11:05:59 +0200 | |
| changeset 64 | d0d63c677c1f |
| parent 63 | 93325a5d61f0 |
| child 111 | 4535dafa6007 |
| permissions | -rw-r--r-- |
| 0 | 1 |
from django.contrib.auth import authenticate, login, logout |
2 |
from django.contrib.auth.decorators import login_required |
|
| 63 | 3 |
from django.core.urlresolvers import reverse |
4 |
from django.http import HttpResponse, HttpResponseRedirect |
|
5 |
from django.shortcuts import render_to_response |
|
6 |
from django.template import RequestContext, loader |
|
7 |
from django.utils import simplejson |
|
| 0 | 8 |
from django.utils.translation import ugettext as _ |
9 |
from forms import EmailChangeForm |
|
10 |
from ldt.management import test_cms, test_ldt |
|
| 63 | 11 |
# from django.contrib.sites.models import Site, RequestSite |
| 0 | 12 |
|
13 |
||
14 |
def home(request): |
|
|
13
97ab7b3191cf
add api to update project, uses psiton
ymh <ymh.work@gmail.com>
parents:
0
diff
changeset
|
15 |
return render_to_response('ldt/user/home.html', context_instance=RequestContext(request)) |
| 0 | 16 |
|
17 |
@login_required |
|
18 |
def profile(request): |
|
19 |
return render_to_response('ldt/user/profile.html', context_instance=RequestContext(request)) |
|
20 |
||
21 |
@login_required |
|
22 |
def space(request, page_id=None, slug=None): |
|
23 |
cms = test_cms() |
|
24 |
ldt = test_ldt() |
|
|
13
97ab7b3191cf
add api to update project, uses psiton
ymh <ymh.work@gmail.com>
parents:
0
diff
changeset
|
25 |
context = { |
| 0 | 26 |
'cms': cms, |
27 |
'ldt': ldt |
|
28 |
} |
|
29 |
return render_to_response('ldt/user/space.html', context, context_instance=RequestContext(request)) |
|
30 |
||
31 |
||
32 |
||
33 |
def logout_view(request): |
|
34 |
logout(request) |
|
35 |
return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/')) |
|
36 |
#return HttpResponseRedirect(settings.LOGOUT_URL) |
|
37 |
||
38 |
||
39 |
def loginAjax(request, loginstate_template_name='ldt/user/login_form.html'): |
|
40 |
if request.method == "POST": |
|
|
13
97ab7b3191cf
add api to update project, uses psiton
ymh <ymh.work@gmail.com>
parents:
0
diff
changeset
|
41 |
username = request.POST["username"] |
|
97ab7b3191cf
add api to update project, uses psiton
ymh <ymh.work@gmail.com>
parents:
0
diff
changeset
|
42 |
password = request.POST["password"] |
| 0 | 43 |
user = authenticate(username=username, password=password) |
44 |
error_message = _(u"Sorry, that's not a valid username or password.") |
|
45 |
if user is not None: |
|
46 |
if user.is_active: |
|
47 |
login(request, user) |
|
|
13
97ab7b3191cf
add api to update project, uses psiton
ymh <ymh.work@gmail.com>
parents:
0
diff
changeset
|
48 |
context = RequestContext(request, { 'username': user.username, }) |
| 0 | 49 |
template = loader.get_template(loginstate_template_name) |
50 |
html = template.render(context) |
|
|
13
97ab7b3191cf
add api to update project, uses psiton
ymh <ymh.work@gmail.com>
parents:
0
diff
changeset
|
51 |
return HttpResponse(simplejson.dumps({'message': u'successful', 'username': user.username, 'html': html, 'reload': request.POST["reload"], })) |
| 0 | 52 |
else: |
|
13
97ab7b3191cf
add api to update project, uses psiton
ymh <ymh.work@gmail.com>
parents:
0
diff
changeset
|
53 |
return HttpResponse(simplejson.dumps({'message': error_message, })) |
| 0 | 54 |
else: |
|
13
97ab7b3191cf
add api to update project, uses psiton
ymh <ymh.work@gmail.com>
parents:
0
diff
changeset
|
55 |
return HttpResponse(simplejson.dumps({'message': error_message, })) |
| 0 | 56 |
return render_to_response('ldt/user/login_ajax.html', context_instance=RequestContext(request)) |
57 |
||
58 |
@login_required |
|
59 |
def change_email(request, post_change_redirect=None): |
|
60 |
if post_change_redirect is None: |
|
61 |
post_change_redirect = reverse('ldt.user.views.change_email_done') |
|
62 |
if request.method == "POST": |
|
63 |
form = EmailChangeForm(request.user, request.POST) |
|
64 |
if form.is_valid(): |
|
65 |
form.save() |
|
66 |
return HttpResponseRedirect(post_change_redirect) |
|
67 |
else: |
|
68 |
form = EmailChangeForm(request.user) |
|
|
13
97ab7b3191cf
add api to update project, uses psiton
ymh <ymh.work@gmail.com>
parents:
0
diff
changeset
|
69 |
return render_to_response('ldt/user/change_email.html', {'form': form, }, context_instance=RequestContext(request)) |
| 0 | 70 |
|
71 |
@login_required |
|
72 |
def change_email_done(request, template_name='ldt/user/change_email_done.html'): |
|
73 |
return render_to_response(template_name, context_instance=RequestContext(request)) |
|
74 |