~widelands-dev/widelands-website/django_staticfiles

« back to all changes in this revision

Viewing changes to wlprofile/views.py

  • Committer: Holger Rapp
  • Date: 2009-03-15 16:40:37 UTC
  • mto: This revision was merged to the branch mainline in revision 64.
  • Revision ID: sirver@kallisto.local-20090315164037-6sbx3vlo089d46e8
Added support for profiles. No gravatar yet

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# Create your views here.
 
2
 
 
3
 
 
4
from django.core.urlresolvers import reverse
 
5
from django.contrib.auth.decorators import login_required 
 
6
from django.contrib.auth.models import User
 
7
from django.shortcuts import render_to_response
 
8
from django.template import RequestContext
 
9
from django.http import HttpResponseRedirect
 
10
 
 
11
from forms import EditProfileForm
 
12
 
 
13
# Settings
 
14
@login_required
 
15
def view(request, user = None):
 
16
    """
 
17
    View the profile. Note that login is required here
 
18
    to make sure that not all spam post can harvest here
 
19
    """
 
20
    if user is None:
 
21
        profile = request.user.wlprofile
 
22
    else:
 
23
        profile = User.objects.get( username = user ).wlprofile
 
24
    
 
25
    template_params = {
 
26
        "profile": profile,
 
27
    }
 
28
 
 
29
    return render_to_response("wlprofile/view_profile.html",
 
30
                              template_params,
 
31
                              context_instance=RequestContext(request))
 
32
 
 
33
@login_required
 
34
def edit(request):
 
35
    instance = request.user.wlprofile
 
36
 
 
37
    if request.method == 'POST':
 
38
        form = EditProfileForm(request.POST, instance=instance)
 
39
        
 
40
        if form.is_valid():
 
41
            # We have to handle avatar
 
42
 
 
43
            form.save()
 
44
            
 
45
            return HttpResponseRedirect(reverse(view))
 
46
    form = EditProfileForm(instance=instance)
 
47
    print "form:", form
 
48
    print "instance:", instance
 
49
 
 
50
    template_params = {
 
51
        "profile_form": form,
 
52
    }
 
53
    return render_to_response("wlprofile/edit_profile.html",
 
54
                              template_params,
 
55
                              context_instance=RequestContext(request))
 
56
 
 
57