Editing user settings works.
authorKriti Godey <kriti.godey@gmail.com>
Tue, 6 Apr 2010 20:26:23 +0000 (16:26 -0400)
committerKriti Godey <kriti.godey@gmail.com>
Tue, 6 Apr 2010 20:26:23 +0000 (16:26 -0400)
templates/base.html
templates/edituser.html [new file with mode: 0644]
urls.py
views.py

index dd6dc3e..73161e3 100644 (file)
@@ -14,6 +14,7 @@
                                <ul class="nav">
                                        {% if user.is_authenticated %}
                                                <li><a href="{% url add_sandwich %}" class="navlink">Add sandwich</a></li>
                                <ul class="nav">
                                        {% if user.is_authenticated %}
                                                <li><a href="{% url add_sandwich %}" class="navlink">Add sandwich</a></li>
+                                               <li><a href="{% url edit_user gusername=request.user.username %}" class="navlink">User Settings</a></li>
                                                <li><a href="{% url logout %}" class="navlink">Logout</a></li>
                                        {% else %}
                                                <li><a href="{% url login %}" class="navlink">Login</a></li>
                                                <li><a href="{% url logout %}" class="navlink">Logout</a></li>
                                        {% else %}
                                                <li><a href="{% url login %}" class="navlink">Login</a></li>
diff --git a/templates/edituser.html b/templates/edituser.html
new file mode 100644 (file)
index 0000000..41a04b3
--- /dev/null
@@ -0,0 +1,9 @@
+{% extends "base.html" %}
+
+{% block content %}
+       <h1 class="pagetitle">Create account</h1>
+       <form enctype="multipart/form-data" action="{% url edit_user gusername=request.user.username %}" method="post" class="cssform">
+       {{ cform.as_p }}
+       <input type="submit" value="Submit" />
+       </form>
+{% endblock %}
\ No newline at end of file
diff --git a/urls.py b/urls.py
index fa3969c..a90d4fc 100644 (file)
--- a/urls.py
+++ b/urls.py
@@ -6,6 +6,7 @@ urlpatterns = patterns('',
        url(r'^sandwich/add/$', views.add_sandwich, name='add_sandwich'),
        url(r'^sandwich/addingredient/$', views.add_ingredient, name='add_ingredient'),
        url(r'^sandwich/all/$', views.all_sandwich, name='all_sandwiches'),
        url(r'^sandwich/add/$', views.add_sandwich, name='add_sandwich'),
        url(r'^sandwich/addingredient/$', views.add_ingredient, name='add_ingredient'),
        url(r'^sandwich/all/$', views.all_sandwich, name='all_sandwiches'),
+       url(r'^sandwich/(?P<gusername>[-\w]+)/edit/', views.edit_user, name='edit_user'),
        url(r'^sandwich/(?P<slug>[-\w]+)/edit/', views.edit_sandwich, name='edit_sandwich'),
        url(r'^sandwich/(?P<slug>[-\w]+)/delete/', views.del_sandwich, name='del_sandwich'),
        url(r'^sandwich/(?P<slug>[-\w]+)/$', views.specific_sandwich, name='sandwich_by_slug'),
        url(r'^sandwich/(?P<slug>[-\w]+)/edit/', views.edit_sandwich, name='edit_sandwich'),
        url(r'^sandwich/(?P<slug>[-\w]+)/delete/', views.del_sandwich, name='del_sandwich'),
        url(r'^sandwich/(?P<slug>[-\w]+)/$', views.specific_sandwich, name='sandwich_by_slug'),
index 7db1ab5..879c303 100644 (file)
--- a/views.py
+++ b/views.py
@@ -146,10 +146,6 @@ def current_home(request):
 def specific_sandwich(request, slug):
        try:
                s = Sandwich.objects.get(slug=slug)
 def specific_sandwich(request, slug):
        try:
                s = Sandwich.objects.get(slug=slug)
-               if Sandwich.objects.count() > 5:
-                       sandwiches = Sandwich.objects.order_by('-date_made')[:5]
-               else:
-                       sandwiches = Sandwich.objects.order_by('-date_made')
        except Sandwich.DoesNotExist:
                raise Http404
        return render_to_response('onesandwich.html', {'s': s,}, context_instance=RequestContext(request))
        except Sandwich.DoesNotExist:
                raise Http404
        return render_to_response('onesandwich.html', {'s': s,}, context_instance=RequestContext(request))
@@ -208,17 +204,13 @@ def login_view2(request):
                        else:
                                return HttpResponseRedirect(x)
                else:
                        else:
                                return HttpResponseRedirect(x)
                else:
-                       return HttpResponseRedirect('login')
+                       return HttpResponseRedirect('login2')
        except KeyError:
                aform = AuthenticationForm()
                return render_to_response('pleaselogin.html', {'aform': aform,}, context_instance=RequestContext(request))
 
 
 def create_user(request):
        except KeyError:
                aform = AuthenticationForm()
                return render_to_response('pleaselogin.html', {'aform': aform,}, context_instance=RequestContext(request))
 
 
 def create_user(request):
-       if Sandwich.objects.count() > 5:
-               sandwiches = Sandwich.objects.order_by('-date_made')[:5]
-       else:
-               sandwiches = Sandwich.objects.order_by('-date_made')
        if request.user.is_authenticated():
                return HttpResponseRedirect('index')
        elif request.method == 'POST': # If the form has been submitted...
        if request.user.is_authenticated():
                return HttpResponseRedirect('index')
        elif request.method == 'POST': # If the form has been submitted...
@@ -243,6 +235,34 @@ def create_user(request):
                form = NewUserForm() # An unbound form
                return render_to_response('newuser.html', {'cform': form,}, context_instance=RequestContext(request))
                
                form = NewUserForm() # An unbound form
                return render_to_response('newuser.html', {'cform': form,}, context_instance=RequestContext(request))
                
+def edit_user(request, gusername):
+       guser = User.objects.get(username = gusername)
+       if not request.user.is_authenticated():
+               return HttpResponseRedirect(reverse('login2'))
+       elif request.user == guser:
+               if request.method == 'POST': # If the form has been submitted...
+                       form = NewUserForm(request.POST) # A form bound to the POST data
+                       username = request.POST['username']
+                       first_name = request.POST['first_name']
+                       last_name = request.POST['last_name']
+                       password = request.POST['password']
+                       cpassword = request.POST['confirm_password']
+                       email = request.POST['email']
+                       guser.username = username
+                       guser.first_name = first_name
+                       guser.last_name = last_name
+                       if not password.strip() == '':
+                               if password == cpassword:
+                                       guser.set_password(password)
+                       guser.email = email
+                       guser.save()
+                       return HttpResponseRedirect(reverse('edit_user', kwargs={'gusername':guser.username}))  
+               else:
+                       form = NewUserForm(initial={'username': guser.username, 'first_name': guser.first_name, 'last_name': guser.last_name, 'email': guser.email, }) # An unbound form
+                       return render_to_response('edituser.html', {'cform': form,}, context_instance=RequestContext(request))
+       else:
+               return HttpResponseRedirect(reverse('index'))
+               
 
 def comment_posted(request):
        if request.GET['c']:
 
 def comment_posted(request):
        if request.GET['c']: