summaryrefslogtreecommitdiff
path: root/coip/apps/membership/views.py
diff options
context:
space:
mode:
authorLeif Johansson <leifj@sunet.se>2010-07-07 22:01:53 +0200
committerLeif Johansson <leifj@sunet.se>2010-07-07 22:01:53 +0200
commit08b06e70f6a5f9f4d51317b0b2930238e09ee8c7 (patch)
treee9bc6e9408e866bf229f0414abdb8110f49c8b06 /coip/apps/membership/views.py
parent648f18d2d8e1e4d0791d11204ced8566f30eaa9e (diff)
integrated invitation management into membership application
Diffstat (limited to 'coip/apps/membership/views.py')
-rw-r--r--coip/apps/membership/views.py32
1 files changed, 29 insertions, 3 deletions
diff --git a/coip/apps/membership/views.py b/coip/apps/membership/views.py
index 7a06a21..6a500d9 100644
--- a/coip/apps/membership/views.py
+++ b/coip/apps/membership/views.py
@@ -5,9 +5,35 @@ Created on Jun 23, 2010
'''
from django.contrib.auth.decorators import login_required
from coip.apps.membership.models import Membership
+from coip.apps.membership.forms import InvitationForm
+from django.http import HttpResponseRedirect
+from coip.apps.auth.utils import nonce
+from coip.multiresponse import respond_to
+#@login_required
+#def memberships(request,name):
+#
+# Membership.objects.get(name)
+
+
@login_required
-def memberships(request,name):
+def invite(request):
+ user = request.user
+ if request.method == 'POST':
+ form = InvitationForm(request.POST)
+ if form.is_valid():
+ email = form.cleaned_data["email"]
+ expires = form.cleaned_data["expires"]
+ message = form.cleaned_data["message"]
+ membership = Membership(inviter=user,email=email,message=message,expires=expires,nonce=nonce())
+ membership.save()
+ membership.send_email()
+ return HttpResponseRedirect("/membership/id/"+membership.id)
+ else:
+ form = InvitationForm({});
- Membership.objects.get(name)
- \ No newline at end of file
+ return respond_to(request,{'text/html': 'apps/invitation/create.html'},{'form': form})
+
+def accept(request,nonce):
+ user = request.user
+ membership = Membership.objects.get(nonce=nonce) \ No newline at end of file