Changeset - d5952273ec1e
[Not reviewed]
version_5
0 2 0
Dennis Fink - 10 years ago 2015-10-11 18:54:06
dennis.fink@c3l.lu
Added country selection into donate page
2 files changed with 16 insertions and 6 deletions:
0 comments (0 inline, 0 general)
ennstatus/donate/views.py
Show inline comments
 
from flask import (Blueprint, render_template, request,
 
                   redirect, url_for, current_app)
 

	
 
from ennstatus.donate.forms import DateForm
 
from ennstatus.donate.functions import load_csv, get_choices
 

	
 
from ennstatus.root.forms import BPMForm
 
from ennstatus.root.constants import BPM_ADDRESSES
 

	
 
donate_page = Blueprint('donate', __name__)
 

	
 

	
 
@donate_page.route('/', methods=('GET', 'POST'))
 
def index():
 

	
 
    current_app.logger.info('Handling snailmail')
 
    current_app.logger.info('Handling index')
 
    form = BPMForm()
 
    country_choices = [choice[0] for choice in form.country.choices]
 

	
 
    if request.method == 'POST':
 
        current_app.logger.debug('Validating form')
 
        if form.validate_on_submit():
 
            country = form.country.data
 
            return redirect(url_for('donate.snailmail', country=country))
 
            return redirect(url_for('donate.index', country=country))
 
    else:
 
        if 'country' in request.args:
 
            country = request.args['country']
 
            if country in country_choices:
 
                current_app.logger.info('Showing country %s' % country)
 
            else:
 
                current_app.logger.warn('Country %s not found' % country)
 
                country = 'luxembourg'
 
        else:
 
            current_app.logger.info('Using default country')
 
            country = 'luxembourg'
 

	
 
    form.country.data = country
 
    address = BPM_ADDRESSES[country]
 

	
 
    return render_template('donate/index.html', form=form, address=address)
 

	
 

	
 
@donate_page.route('/received',
 
                   methods=('GET', 'POST'))
 
def received():
 

	
 
    current_app.logger.info('Handling received')
 
    form = DateForm()
ennstatus/templates/donate/index.html
Show inline comments
 
@@ -42,58 +42,68 @@
 
        </center>
 
        <div class="well well-sm">
 
          <p>
 
            <strong>Account holder:</strong> Frënn vun der Ënn A.S.B.L.<br>
 
            <strong>BIC/SWIFT:</strong> BCEELULL<br>
 
            <strong>IBAN:</strong> LU65 0019 4055 6782 7000<br>
 
          </p>
 
       </div>
 
       <div class="well well-sm">
 
       <p>
 
         <strong>Account holder:</strong> Chaos Computer Club Lëtzebuerg A.S.B.L.<br>
 
         <strong>BIC/SWIFT:</strong> BCEELULL<br>
 
         <strong>IBAN:</strong> LU29 0019 2855 3890 4000<br>
 
         <strong>Subject:</strong> * to FVDE<br>
 
       </p>
 
       </div>
 
      </div>
 
    </div>
 
    <div class="col-md-4">
 
      <div class="thumbnail">
 
        <center>
 
          <h3>SnailMail</h3>
 
        </center>
 
        <div class="well well-sm">
 
          <div class="pull-right">
 
            <form class="form-inline" role="form" method="POST" action"{{ url_for('donate.index') }}">
 
              {{ form.hidden_tag() }}
 
              <div class="form-group">
 
                {{ form.country(_class="form-class") }}
 
              </div>
 
              <input type="submit" class="btn btn-primary btn-sm" value="Submit">
 
            </form>
 
          </div>
 
          <div class="clearfix"></div>
 
          <address>
 
            <strong>Frënn vun der Ënn, ASBL</strong><br>
 
                    BPM 381892<br>
 
                    34, Rue Gabriel Lippmann<br>
 
                    L-5365, Munsbach<br>
 
                    Luxembourg
 
                    {{ address['address'] }}<br>
 
                    {{ address['postal_code'] }}, {{ address['city'] }}<br>
 
                    {{ address['country'] }}
 
          </address>
 
        </div>
 
      </div>
 
      <div class="thumbnail">
 
      <div>
 
        <center>
 
          <h3>Bitcoin</h3>
 
        </center>
 
        <div class="well well-sm">
 
          <p>
 
            <strong>Bitcoin Address:</strong> 1EYZCq2ZL6chWXYYkJoDo7fz39UC7do5cC
 
          </p>
 
        </div>
 
        <form class="bitpay-donate form-horizontal" action="https://bitpay.com/checkout" method="POST" onsubmit="return checkRequiredFields(this);">
 
          <input name="action" type="hidden" value="checkout">
 
          <div class="form-group">
 
            <label class="col-sm-2 control-label">Email:</label>
 
            <div class="col-sm-10">
 
              <input class="bitpay-donate-field-email form-control" name="orderID" type="email" placeholder="Email address (optional)" maxlenght=50 autocapitalize=off autocorrect=off />
 
            </div>
 
          </div>
 
          <div class="form-group">
 
            <label class="col-sm-2 control-label">Amount:</label>
 
            <div class="col-sm-10">
 
              <input class="bitpay-donate-field-price form-control" style="display: inline;" name="price" type="number" value="0.1" placeholder="Amount" maxlenght="10" min="0.000006" step="0.000001" />
 
              <select class="bitpay-donate-field-currency form-control" style="display: inline;" value="" name="currency">
 
                <option selected="selected" value="BTC">BTC</option>
 
                <option value="USD">USD</option>
 
                <option value="EUR">EUR</option>
0 comments (0 inline, 0 general)