Permalink
Browse files

Implemented front end for sending member her info and edit link

  • Loading branch information...
1 parent a77e99e commit 1eca6c510f11b5b1a732fc929ba7e17501cf9d36 @anttihirvonen committed Sep 13, 2012
Showing with 34 additions and 6 deletions.
  1. +1 −0 dotmembership/apps/members/urls.py
  2. +11 −2 dotmembership/apps/members/views.py
  3. +22 −4 dotmembership/templates/index.html
View
1 dotmembership/apps/members/urls.py
@@ -3,5 +3,6 @@
urlpatterns = patterns('dotmembership.apps.members.views',
url(r'^join/$', 'join', name="members-join"),
+ url(r'^send_edit_link/$', 'send_edit_link', name="members-send_edit_link"),
url(r'^confirm_join/(?P<token>\w+)$', 'confirm_join', {}, name="members-confirm_join"),
)
View
13 dotmembership/apps/members/views.py
@@ -6,6 +6,8 @@
from ajaxutils.decorators import ajax
from .forms import MemberForm, MemberEmailForm
+from .models import Member
+
from dotmembership.apps.billing.models import Invoice
@@ -37,6 +39,14 @@ def join(request):
return {'status': 'error', 'errors': form.errors}
+@ajax(require_POST=True)
+def send_edit_link(request):
+ """
+ AJAX view for sending member edit link in email.
+ """
+ pass
+
+
def confirm_join(request, token):
"""
This view does basically the same as generic_confirmation.views.confirm_by_get,
@@ -52,13 +62,12 @@ def confirm_join(request, token):
#from .models import Member
#member = Member.objects.get(pk=1)
if settings.DEBUG and request.GET.get("member_id"):
- from .models import Member
member = Member.objects.get(pk=request.GET.get("member_id"))
else:
member = form.save()
if member:
- fields = MemberForm._meta.fields
+ fields = Member.PUBLIC_FIELDS
# Pass form in to show the user data that was submitted
# The invoice shown here is the one that is created in post_save
View
26 dotmembership/templates/index.html
@@ -47,6 +47,23 @@
});
return false;
});
+
+ $("#email-form").submit(function() {
+ $.ajax({
+ url: "{% url members-send_edit_link %}",
+ data: $(this).serialize(),
+ type: "post",
+ success: function(data) {
+ if(data.status == "error") {
+ show_form_errors($("#email-form"), data.errors);
+ }
+ else if(data.status == "success") {
+ $("#email-form").slideUp(function() { $("#email-form-success").slideDown(); });
+ }
+ }
+ });
+ return false;
+ });
});
</script>
@@ -84,17 +101,18 @@
</div>
<div class="tab-pane" id="old">
- <p>Haluatko tarkistaa tai muokata jäsentietojasi tai tarkastaa jäsenmaksusi tilan? Syötä sähköpostiosoitteesi, jolla olet liittynyt jäseneksi, allaolevaan lomakkeeseen ja saat jäsentietosi sekä lyhytkäyttöisen linkin tietojen muokkaamiseen.</p>
+ <p>Haluatko tarkistaa jäsentietosi tai jäsenmaksusi tilan? Syötä sähköpostiosoitteesi, jolla olet liittynyt jäseneksi, allaolevaan lomakkeeseen ja saat sähköpostiisi jäsentietosi sekä lyhytkäyttöisen linkin tietojen muokkaamiseen.</p>
<form action="" method="post" class="form-horizontal" id="email-form">
{% csrf_token %}
{{ email_form|bootstrap }}
<div class="controls">
<button type="submit" class="btn btn-info btn-large">Tilaa muutoslinkki</button>
</div>
</form>
- <div id="join-form-success" class="form-success-box">
- <h3>Muutoslinkki lähetettiin</h3>
- <p>Lähetetty!</p>
+ <div id="email-form-success" class="form-success-box">
+ <h3>Tiedot ja muutoslinkki lähetettiin!</h3>
+ <p>Syöttämääsi sähköpostiosoitteeseen lähetettiin nykyiset jäsentietosi sekä linkki, joka on voimassa 30 minuuttia. Voit käydä muokkaamassa jäsentietojasi kyseisen linkin kautta.</p>
+ <p>Mikäli viestiä ei kuulu, syötit kenttään todennäköisesti väärän sähköpostiosoitteen. Mikäli et muista osoitetta, jolla liityit jäseneksi, voit kysellä sitä sähköpostilla osoitteesta dot@kapsi.fi tai kanavalla #dot @ IRCNet.</p>
</div>
</div>
</div>

0 comments on commit 1eca6c5

Please sign in to comment.