diff options
author | Marcello Stanisci <marcello.stanisci@inria.fr> | 2016-11-18 10:05:22 +0100 |
---|---|---|
committer | Marcello Stanisci <marcello.stanisci@inria.fr> | 2016-11-18 10:05:22 +0100 |
commit | 2fb38799aa9e100dc0f97b67078b4012b1f7222f (patch) | |
tree | 14b66a8cd99da62c9419ebaf90bedcc85e9cae7f | |
parent | 321432415fb9a46667c478c5136a078cfc4591f4 (diff) | |
download | bank-2fb38799aa9e100dc0f97b67078b4012b1f7222f.tar.gz bank-2fb38799aa9e100dc0f97b67078b4012b1f7222f.tar.bz2 bank-2fb38799aa9e100dc0f97b67078b4012b1f7222f.zip |
Setting headers for JS-less create-reserve
-rw-r--r-- | talerbank/app/funds.py | 13 | ||||
-rw-r--r-- | talerbank/app/templates/home_page.html | 10 | ||||
-rw-r--r-- | talerbank/app/templates/profile_page.html | 4 | ||||
-rw-r--r-- | talerbank/app/urls.py | 4 | ||||
-rw-r--r-- | talerbank/app/views.py | 8 |
5 files changed, 21 insertions, 18 deletions
diff --git a/talerbank/app/funds.py b/talerbank/app/funds.py index 0652a82..4748114 100644 --- a/talerbank/app/funds.py +++ b/talerbank/app/funds.py @@ -78,12 +78,13 @@ def add_incoming(request): @login_required -def withdraw(request): - # FIXME: JS-less withdrawing. - data = json.loads(request.body.decode('utf-8')) - X-Taler-CallBack-Url: reverse('pin-tan') - X-Taler-WtTypes: '["TEST"]' - X-Taler-Amount: # FIXME Get from body. +def withdraw_nojs(request): + amount_str = request.POST['kudos_amount'] + response = HttpResponse(status_code=202) + response['X-Taler-CallBack-Url'] = reverse('pin_tan') + response['X-Taler-WtTypes'] = '["TEST"]' + response['X-Taler-Amount'] = amounts.parse_amount(amount_str) + return response def create_reserve_at_exchange(request, success_url, reserve_set): diff --git a/talerbank/app/templates/home_page.html b/talerbank/app/templates/home_page.html index a244cfc..4de2894 100644 --- a/talerbank/app/templates/home_page.html +++ b/talerbank/app/templates/home_page.html @@ -29,12 +29,12 @@ <aside class="sidebar" id="left"> </aside> <section id="main"> - {% if no_js %} - You are using the JavaScript-less version, try out the - <a href="{% url 'index' %}">JavaScript version!</a> - {% else %} + {% if use_js %} You are using the JavaScript version, try out the - <a href="{% url 'index' no_js='nojs'%}">JavaScript-less version!</a> + <a href="{% url 'index' %}">JavaScript-less version!</a> + {% else %} + You are using the JavaScript-less version, try out the + <a href="{% url 'index' no_js='nojs'%}">JavaScript version!</a> {% endif %} <br> <article> diff --git a/talerbank/app/templates/profile_page.html b/talerbank/app/templates/profile_page.html index 771385c..0f37800 100644 --- a/talerbank/app/templates/profile_page.html +++ b/talerbank/app/templates/profile_page.html @@ -91,11 +91,13 @@ <h2>Withdraw digital coins using Taler</h2> {% if no_js %} - <form id="reserve-form" name="tform" action="{% url 'jsless-reserve' %}"> + <form id="reserve-form" name="tform" action="{% url 'withdraw-nojs' %}"> {% else %} <form id="reserve-form" name="tform" action=""> {% endif %} {% csrf_token %} + <!-- FIXME: This 'input' field seems not used, make sure it's not + then remove it --> <input type="text" id="reserve-pk-input" name="reserve_pk" hidden></input> Amount to withdraw: <select id="reserve-amount" name="kudos_amount" autofocus> diff --git a/talerbank/app/urls.py b/talerbank/app/urls.py index 2acc6b5..3870f39 100644 --- a/talerbank/app/urls.py +++ b/talerbank/app/urls.py @@ -23,13 +23,13 @@ from . import captcha urlpatterns = [ url(r'^', include('talerbank.urls')), - url(r'^(?P<no_js>(nojs))?$', views.home_page, name='index'), + url(r'^(?P<use_js>(use_js))?$', views.home_page, name='index'), url(r'^favicon\.ico$', views.ignore), url(r'^accounts/register/$', user.register_process, name="register"), url(r'^accounts/login/$', views.home_page, name="login"), url(r'^accounts/logout/$', user.logout_process, name="logout"), url(r'^profile$', views.profile_page, name="profile"), - url(r'^withdraw$', funds.withdraw), + url(r'^withdraw$', funds.withdraw_nojs, name="withdraw-nojs"), url(r'^public-accounts/details$', user.view_public_accno_process), url(r'^public-accounts$', history.public_accounts_process, name="public-history"), url(r'^pin/question$', captcha.pin_tan_question, name="pin_tan"), diff --git a/talerbank/app/views.py b/talerbank/app/views.py index eeaa75e..9bca8a8 100644 --- a/talerbank/app/views.py +++ b/talerbank/app/views.py @@ -34,9 +34,9 @@ def ignore(request): def javascript_licensing(request): return render(request, 'javascript.html') -def home_page(request, no_js=None): +def home_page(request, use_js=None): - request.session['no_js'] = no_js + request.session['use_js'] = use_js if request.method == 'POST': username = request.POST['username'] @@ -61,14 +61,14 @@ def home_page(request, no_js=None): 'home_page.html', {'currency': settings.TALER_CURRENCY, 'logged_out': True, - 'no_js': no_js}) + 'use_js': use_js}) if request.user.is_authenticated(): return redirect("profile") return render(request, 'home_page.html', {'currency': settings.TALER_CURRENCY, 'wrong': wrong, - 'no_js': no_js}) + 'use_js': use_js}) @login_required |