donation: Redesign the page
authorMichael Tremer <michael.tremer@ipfire.org>
Sun, 29 Mar 2015 22:04:55 +0000 (00:04 +0200)
committerMichael Tremer <michael.tremer@ipfire.org>
Sun, 29 Mar 2015 22:04:55 +0000 (00:04 +0200)
Allow donation with different currencies with PayPal

templates/donate.html
templates/modules/donation-box.html
templates/modules/donation-button.html [new file with mode: 0644]
templates/wishlist/donate.html
translations/de/LC_MESSAGES/webapp.po
translations/webapp.pot
webapp/__init__.py
webapp/handlers.py
webapp/ui_modules.py

index 5301c65..83af759 100644 (file)
 
 {% block header %}
        <header class="jumbotron subhead" id="overview">
-               <div class="container">
+               <div class="container ac">
                        <h1>{{ _("Donate") }}</h1>
                        <p class="lead">
-                               {{ _("We need your help!") }}
+                               {% if lang == "de" %}
+                                       IPFire ist freie Software und für jeden kostenlos herunterladbar.
+                                       <br>
+                                       Bitte unterstützt das IPFire-Projekt mit eurer Spende.
+                               {% else %}
+                                       IPFire is free software and free to download for everyone.
+                                       Please help us to support the project by making a financial
+                                       contribution. It is very much appreciated.
+                               {% end %}
                        </p>
                </div>
        </header>
 {% end header %}
  
 {% block body %}
-       {% if lang == "de" %}
-               <p class="lead ac">
-                       Wir möchten jeden, der IPFire einsetzt, ermutigen einen Beitrag zu leisten.
-                       Danke dafür.
-               </p>
-               <p>
-                       IPFire ist ein Open Source-Projekt.
-                       Nutzer und die Gemeinschaft sind das wertvollste und wichtigste
-                       Gut, weil sich das Projekt auf sie stützt.
-                       Die Entwicklung und die Fortführung des Projekts sind allein
-                       einer Gruppe von Freiwilligen zu verdanken.
-                       Sie haben ein Produkt entwickelt, das tagtäglich von
-                       Hunderttausenden genutzt wird.
-               </p>
-               <p>
-                       Um die Qualität von IPFire noch weiter verbessern zu können,
-                       sowie Aktivitäten des Projekts auszuweiten und die Verbreitung
-                       zu steigern, sind finanzielle Mittel unabdingbar.
-                       Jeder Sponsor kann seinen Teil dazu beitragen, diese Ziele
-                       zu erreichen, das Projekt finanziell gesund zu erhalten und
-                       somit langfristig abzusichern.
-               </p>
-       {% else %}
-               <p class="lead ac">
-                       We encourage anyone who downloads and uses IPFire to donate.
-                       It is very much appreciated.
-               </p>
-               <p>
-                       IPFire is an Open Source project.
-                       The users and the community are the most valuable and most important factor,
-                       because those people are the foundation of the project.
-                       Development and keeping the project healthy is carried out by a group of volunteers,
-                       that in time have built a very successful product,
-                       which hundreds of thousands of people use every day.
-                       We appreciate every bit of <a href="/getinvolved">feedback, every bug report, patch and contribution</a>.
-               </p>
-               <p>
-                       We would like to extend our activities and improve the quality of IPFire even more.
-                       For that, we will need financial resources to support the maintenance,
-                       improvement and promotion of the IPFire project.
-                       Sponsorship is a good way to ensure the longevity and overall health of the project.
-               </p>
-       {% end %}
-
-       <hr>
-
        <div class="row">
                <div class="col-lg-10 col-md-10 col-lg-offset-1">
-                       {% module DonationBox(show_wishlist_items=True) %}
+                       {% module DonationBox(reason_for_transfer=reason_for_transfer) %}
+
+                       <br>
+
+                       {% if lang == "de" %}
+                               <p class="ac">
+                                       IPFire ist ein Open-Source-Softwareprojekt.
+                                       Die Entwicklung und die Fortführung des Projekts wird allein
+                                       von einer Gruppe von Freiwilligen getragen, die ein Produkt
+                                       entwickelt hat, das tagtäglich von Hunderttausenden genutzt
+                                       wird.
+                               </p>
+                               <p class="ac">
+                                       Alle gesammelten Spenden werden zur Aufrechterhaltung des
+                                       Projekts genutzt, wie zur Bezahlung der projekteigenen
+                                       Infrastruktur, zur Bewerbung des Projekts, zur Anschaffung
+                                       von neuem Equipment, sowie zur Unterstützung der Leute die
+                                       hinter dem Projekt stehen.
+                                       Jeder Sponsor kann seinen Teil dazu beitragen diese Ziele zu
+                                       erreichen, das Projekt finanziell gesund zu erhalten, und
+                                       somit langfristig zu unterstützen.
+                               </p>
+                       {% else %}
+                               <p class="ac">
+                                       IPFire is an Open Source software project.
+                                       Development and keeping the project healthy is carried out by a
+                                       group of volunteers, that in time have built a very successful product,
+                                       which hundreds of thousands of people use every day.
+                               </p>
+                               <p class="ac">
+                                       Donations are used to finance the needs of the distribution, to pay
+                                       for the project's infrastructure, to advertise the project, to
+                                       purchase equipment and to fund the work of the people behind it.
+                                       Sponsorship is a good way to ensure the longevity and overall health
+                                       of the project.
+                               </p>
+                       {% end %}
+
+                       {% if wishlist_items %}
+                               <hr>
+
+                               <p class="ac">
+                                       <strong>{{ _("Did you know...?") }}</strong>
+
+                                       {% if lang == "de" %}
+                                               Du kannst die Implementierung deiner bevorzugten Funktion mit Hilfe einer Spende auf der
+                                               <a href="http://wishlist.ipfire.org/">IPFire Wunschliste</a> unterstützen!
+                                       {% else %}
+                                               You can support the implementation of your favorite feature on the
+                                               <a href="http://wishlist.ipfire.org/">IPFire wishlist</a>!
+                                       {% end %}
+                               </p>
+
+                               <br>
+
+                               {% module WishlistItems(wishlist_items) %}
+                       {% end %}
+
+                       <br>
+
+                       <div class="alert alert-success ac">
+                               <h4 class="alert-heading">{{ _("Recurring Donations") }}</h4>
+
+                               {% if lang == "de" %}
+                                       <p>
+                                               Das Tätigen von wiederkehrenden Spenden ist eine großartige Methode
+                                               um das IPFire Projekt zu unterstützen. Diese helfen das Projekt auf einem
+                                               finanziell soliden Stand zu halten und die weitere Entwicklung voranzutreiben.
+                                               Unabhängig ob die zügige Sicherheitsupdates oder das Einbauen von neuen 
+                                               Funktionen ist, wiederkehrende Spenden sind die Basis um den Fortbestand des 
+                                               Projekts langfristig zu gewährleisten.
+                                       </p>
+
+                                       <p>
+                                               PayPal ermöglicht in einigen Ländern die Einrichtung von Daueraufträgen via
+                                               Überweisung für den Zweck von wiederkehrende Spenden.
+                                       </p>
+                               {% else %}
+                                       <p>
+                                               A great way to support the IPFire project is a recurring donation.
+                                               These will help to keep the project solidly funded and help us to
+                                               keep up our development efforts. Either if that is the prompt
+                                               security updates or introducing new features, recurring donations
+                                               are the foundation that keeps this project running.
+                                       </p>
+
+                                       <p>
+                                               PayPal allows to set up recurring donations in some countries
+                                               or you can set up a standing order at your bank if you are
+                                               want to donate by using bank transfer.
+                                       </p>
+                               {% end %}
+                       </div>
                </div>
        </div>
 {% end block %}
index 44ee78c..e84aad3 100644 (file)
-<div class="well">
-       <div class="row">
-               <div class="col-lg-6 col-md-6 ac">
-                       <h4>{{ _("Donate with PayPal or Credit Card") }}</h4>
+<div class="row">
+       <div class="col-lg-6 col-md-6">
+               <div class="well well-sm ac">
+                       <h3>{{ _("Donate with PayPal") }}</h3>
+
                        <br>
 
                        {% if lang == "de" %}
                                <p>
-                                       PayPal ist unser bevorzugter und gleichzeitig einfachster Weg zu spenden.
-                                       Dazu einfach auf den Button klicken und den gewünschten Betrag eingeben.
-                               </p>
-
-                               <br>
-
-                               <div class="ac">
-                                       <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
-                                               <input type="hidden" name="cmd" value="_s-xclick">
-                                               <input type="hidden" name="hosted_button_id" value="Z44GQ52ZHKVFW">
-                                               {% if reason_for_transfer %}
-                                                       <input type="hidden" name="item_name" value="{{ reason_for_transfer }}">
-                                               {% end %}
-                                               <input type="image" src="https://www.paypalobjects.com/de_DE/DE/i/btn/btn_donate_LG.gif" border="0" name="submit" alt="Jetzt einfach, schnell und sicher online bezahlen – mit PayPal.">
-                                               <img alt="" border="0" src="https://www.paypalobjects.com/de_DE/i/scr/pixel.gif" width="1" height="1">
-                                       </form>
-                               </div>
-
-                               <br>
-
-                               <p>
-                                       Wenn du nicht per PayPal spenden möchtest, kannst du das auch per
-                                       Banküberweisung tun. Dazu einfach oben auf den Button klicken.
+                                       Um mit PayPal zu spenden, einfach auf den Button klicken
+                                       und den gewünschten Betrag eingeben.
                                </p>
                        {% else %}
                                <p>
-                                       PayPal is our preferred way to make donations.
                                        Simply click on the donate button and type in the
                                        amount of money you would like to donate.
                                </p>
+                       {% end %}
 
-                               <br>
+                       <br>
 
-                               <div class="ac">
-                                       <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
-                                               <input type="hidden" name="cmd" value="_s-xclick">
-                                               <input type="hidden" name="hosted_button_id" value="HHBTSN9QRWPAY">
-                                               {% if reason_for_transfer %}
-                                                       <input type="hidden" name="item_name" value="{{ reason_for_transfer }}">
-                                               {% end %}
-                                               <input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_donate_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
-                                               <img alt="" border="0" src="https://www.paypalobjects.com/de_DE/i/scr/pixel.gif" width="1" height="1">
-                                       </form>
-                               </div>
+                       <div class="ac">
+                               {% module DonationButton(reason_for_transfer=reason_for_transfer) %}
 
                                <br>
 
-                               <p>
-                                       If you are not keen on using PayPal, you can also donate by bank transfer.
-                                       Click on the button above to do so.
-                               </p>
-                       {% end %}
+                               <ul class="list-inline">
+                                       {% for currency in ("USD", "GBP", "CHF", "AUD", "NZD", "CAD") %}
+                                               <li>
+                                                       {% module DonationButton(reason_for_transfer=reason_for_transfer, currency=currency) %}
+                                               </li>
+                                       {% end %}
+                               </ul>
+                       </div>
                </div>
+       </div>
+
+       <div class="col-lg-6 col-md-6">
+               <div class="well well-sm">
+                       <h3 class="ac">{{ _("Donate by Bank Transfer") }}</h3>
 
-               <div class="col-lg-6 col-md-6 ac">
-                       <h4>{{ _("Donate by Bank Transfer") }}</h4>
                        <br>
 
                        {% if lang == "de" %}
-                               <p>
+                               <p class="ac">
                                        Ebenso ist eine Spende auf unser Bankkonto möglich.
                                </p>
                        {% else %}
-                               <p>
-                                       It is also possible to transfer donations into
-                                       our bank account.
+                               <p class="ac">
+                                       You can also send donations directly to our bank account.
                                </p>
                        {% end %}
 
                        <br>
 
-                       <p>
-                               {{ _("IBAN") }}: DE86 4265 0150 1020 0768 89<br>
-                               {{ _("BIC-/SWIFT-Code") }}: WELADED1REK
+                       <dl class="dl-horizontal">
+                               <dt>{{ _("IBAN") }}</dt>
+                               <dd>DE86 4265 0150 1020 0768 89</dd>
+
+                               <dt>{{ _("BIC-/SWIFT-Code") }}</dt>
+                               <dd>WELADED1REK</dd>
+
                                {% if reason_for_transfer %}
-                                       <br>
-                                       {{ _("Reason for transfer") }}:
-                                       <strong>{{ reason_for_transfer }}</strong>
+                                       <dt>{{ _("Reason for transfer") }}</dt>
+                                       <dd>{{ reason_for_transfer }}</dd>
                                {% end %}
-                       </p>
+                       </dl>
                </div>
-       </div>
-
-       {% if wishlist_items %}
-               <hr>
-
-               <div class="row">
-                       <div class="col-md-12">
-                               <p class="ac">
-                                       <strong>{{ _("Did you know...?") }}</strong>
 
-                                       {% if lang == "de" %}
-                                               Du kannst die Implementierung deiner bevorzugten Funktion mit Hilfe einer Spende auf der
-                                               <a href="http://wishlist.ipfire.org/">IPFire Wunschliste</a> unterstützen!
-                                       {% else %}
-                                               You can support the implementation of your favorite feature on the
-                                               <a href="http://wishlist.ipfire.org/">IPFire wishlist</a>!
-                                       {% end %}
-                               </p>
-                               <br class="separator">
-
-                               {% module WishlistItems(wishlist_items) %}
-                       </div>
-               </div>
-       {% end %}
+               <p class="ac">
+                       {% if lang == "de" %}
+                               <small>
+                                       Da das IPFire-Projekt keine registrierte gemeinnützige Organisation
+                                       ist, können keine steuerlich abzugsfähige Spendenquittungen erstellt
+                                       werden.
+                               </small>
+                       {% else %}
+                               <small>
+                                       The IPFire project is not a registered non-profit organisation.
+                                       <br>
+                                       Hence we are not able to issue a tax-deductible contribution receipt
+                                       for your donation.
+                               </small>
+                       {% end %}
+               </p>
+       </div>
 </div>
diff --git a/templates/modules/donation-button.html b/templates/modules/donation-button.html
new file mode 100644 (file)
index 0000000..60bfa35
--- /dev/null
@@ -0,0 +1,16 @@
+<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top">
+       <input type="hidden" name="cmd" value="_donations">
+       <input type="hidden" name="business" value="QBQCHP9ZK7GYY">
+       <input type="hidden" name="lc" value="{{ lang.upper() }}">
+       <input type="hidden" name="item_name" value="{{ reason_for_transfer or "IPFire.org" }}">
+       <input type="hidden" name="no_note" value="0">
+       <input type="hidden" name="cn" value="{{ _("Send a note to the project:") }}">
+       <input type="hidden" name="no_shipping" value="1">
+       <input type="hidden" name="currency_code" value="{{ currency }}">
+       <input type="hidden" name="bn" value="PP-DonationsBF:btn_donate_LG.gif:NonHosted">
+       {% if primary %}
+               <input type="submit" class="btn btn-lg btn-primary" value="{{ _("Donate %s") % currency }}">
+       {% else %}
+               <input type="submit" class="btn btn-link" value="{{ currency }}">
+       {% end %}
+</form>
index f0b4b15..c3f7627 100644 (file)
@@ -1,4 +1,4 @@
-{% extends "base.html" %}
+{% extends "../base.html" %}
 
 {% block title %}{{ wish.title }} - {{ _("Donate") }}{% end block %}
 
index fa733d5..cf7c5cc 100644 (file)
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2015-03-17 22:31+0100\n"
-"PO-Revision-Date: 2015-03-17 21:27+0100\n"
+"POT-Creation-Date: 2015-03-29 23:50+0200\n"
+"PO-Revision-Date: 2015-03-29 23:55+0100\n"
 "Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
 "Language: de\n"
@@ -1028,107 +1028,107 @@ msgstr ""
 msgid "Zimbabwe"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:259 webapp/backend/fireinfo.py:281
-#: webapp/backend/fireinfo.py:297 webapp/backend/fireinfo.py:298
-#: webapp/backend/fireinfo.py:299
+#: webapp/backend/fireinfo.py:306 webapp/backend/fireinfo.py:328
+#: webapp/backend/fireinfo.py:344 webapp/backend/fireinfo.py:345
+#: webapp/backend/fireinfo.py:346
 msgid "Unclassified"
 msgstr "Unklassifiziert"
 
-#: webapp/backend/fireinfo.py:260 webapp/backend/fireinfo.py:288
+#: webapp/backend/fireinfo.py:307 webapp/backend/fireinfo.py:335
 msgid "Mass storage"
 msgstr "Massenspeicher"
 
-#: webapp/backend/fireinfo.py:261
+#: webapp/backend/fireinfo.py:308
 msgid "Network"
 msgstr "Netzwerk"
 
-#: webapp/backend/fireinfo.py:262 webapp/backend/fireinfo.py:293
+#: webapp/backend/fireinfo.py:309 webapp/backend/fireinfo.py:340
 msgid "Display"
 msgstr "Display"
 
-#: webapp/backend/fireinfo.py:263 webapp/backend/fireinfo.py:282
+#: webapp/backend/fireinfo.py:310 webapp/backend/fireinfo.py:329
 msgid "Multimedia"
 msgstr "Multimedia"
 
-#: webapp/backend/fireinfo.py:264
+#: webapp/backend/fireinfo.py:311
 msgid "Memory controller"
 msgstr "Speichercontroller"
 
-#: webapp/backend/fireinfo.py:265
+#: webapp/backend/fireinfo.py:312
 msgid "Bridge"
 msgstr "Bridge"
 
-#: webapp/backend/fireinfo.py:266 webapp/backend/fireinfo.py:283
-#: webapp/backend/fireinfo.py:290
+#: webapp/backend/fireinfo.py:313 webapp/backend/fireinfo.py:330
+#: webapp/backend/fireinfo.py:337
 msgid "Communication"
 msgstr "Kommunikation"
 
-#: webapp/backend/fireinfo.py:267 webapp/backend/fireinfo.py:285
+#: webapp/backend/fireinfo.py:314 webapp/backend/fireinfo.py:332
 msgid "Generic system peripheral"
 msgstr "Generisches Peripheriegerät"
 
-#: webapp/backend/fireinfo.py:268 webapp/backend/fireinfo.py:284
+#: webapp/backend/fireinfo.py:315 webapp/backend/fireinfo.py:331
 msgid "Input device"
 msgstr "Eingabegerät"
 
-#: webapp/backend/fireinfo.py:269
+#: webapp/backend/fireinfo.py:316
 msgid "Docking station"
 msgstr "Dockingstation"
 
-#: webapp/backend/fireinfo.py:270 templates/fireinfo/profile-detail.html:54
+#: webapp/backend/fireinfo.py:317 templates/fireinfo/profile-detail.html:54
 #: templates/static/hardware.html:44 templates/static/hardware.html:272
 msgid "Processor"
 msgstr "Prozessor"
 
-#: webapp/backend/fireinfo.py:271
+#: webapp/backend/fireinfo.py:318
 msgid "Serial bus"
 msgstr "Serieller Bus"
 
-#: webapp/backend/fireinfo.py:272 webapp/backend/fireinfo.py:296
+#: webapp/backend/fireinfo.py:319 webapp/backend/fireinfo.py:343
 msgid "Wireless"
 msgstr "WLAN"
 
-#: webapp/backend/fireinfo.py:273
+#: webapp/backend/fireinfo.py:320
 msgid "Intelligent controller"
 msgstr "Intelligenter Controller"
 
-#: webapp/backend/fireinfo.py:274
+#: webapp/backend/fireinfo.py:321
 msgid "Satellite communications controller"
 msgstr "Satellitenkommunikationscontroller"
 
-#: webapp/backend/fireinfo.py:275 webapp/backend/fireinfo.py:292
+#: webapp/backend/fireinfo.py:322 webapp/backend/fireinfo.py:339
 msgid "Encryption"
 msgstr "Verschlüsselung"
 
-#: webapp/backend/fireinfo.py:276
+#: webapp/backend/fireinfo.py:323
 msgid "Signal processing controller"
 msgstr "Signalverarbeitungscontroller"
 
-#: webapp/backend/fireinfo.py:277
+#: webapp/backend/fireinfo.py:324
 msgid "Unassigned class"
 msgstr "Nicht vergebene Klasse"
 
-#: webapp/backend/fireinfo.py:286
+#: webapp/backend/fireinfo.py:333
 msgid "Image"
 msgstr "Bild"
 
-#: webapp/backend/fireinfo.py:287
+#: webapp/backend/fireinfo.py:334
 msgid "Printer"
 msgstr "Drucker"
 
-#: webapp/backend/fireinfo.py:289
+#: webapp/backend/fireinfo.py:336
 msgid "Hub"
 msgstr "Hub"
 
-#: webapp/backend/fireinfo.py:291
+#: webapp/backend/fireinfo.py:338
 msgid "Smart card"
 msgstr "Smartcard"
 
-#: webapp/backend/fireinfo.py:294
+#: webapp/backend/fireinfo.py:341
 msgid "Personal Healthcare"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:295
+#: webapp/backend/fireinfo.py:342
 msgid "Diagnostic Device"
 msgstr "Diagnosegerät"
 
@@ -1232,73 +1232,73 @@ msgstr "Ein fertiges Image für Xen."
 msgid "Generator for creating a Xen image."
 msgstr "Generator zum Erstellen einex Xen-Images."
 
-#: webapp/__init__.py:352
+#: webapp/__init__.py:353
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:235
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:235
 msgid "January"
 msgstr "Januar"
 
-#: webapp/__init__.py:354
+#: webapp/__init__.py:355
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:235
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:235
 msgid "February"
 msgstr "Februar"
 
-#: webapp/__init__.py:356
+#: webapp/__init__.py:357
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:235
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:235
 msgid "March"
 msgstr "März"
 
-#: webapp/__init__.py:358
+#: webapp/__init__.py:359
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:235
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:235
 msgid "April"
 msgstr "April"
 
-#: webapp/__init__.py:360
+#: webapp/__init__.py:361
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:236
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:236
 msgid "May"
 msgstr "Mai"
 
-#: webapp/__init__.py:362
+#: webapp/__init__.py:363
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:236
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:236
 msgid "June"
 msgstr "Juni"
 
-#: webapp/__init__.py:364
+#: webapp/__init__.py:365
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:236
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:236
 msgid "July"
 msgstr "Juli"
 
-#: webapp/__init__.py:366
+#: webapp/__init__.py:367
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:236
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:236
 msgid "August"
 msgstr "August"
 
-#: webapp/__init__.py:368
+#: webapp/__init__.py:369
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:237
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:237
 msgid "September"
 msgstr "September"
 
-#: webapp/__init__.py:370
+#: webapp/__init__.py:371
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:237
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:237
 msgid "October"
 msgstr "Oktober"
 
-#: webapp/__init__.py:372
+#: webapp/__init__.py:373
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:237
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:237
 msgid "November"
 msgstr "November"
 
-#: webapp/__init__.py:374
+#: webapp/__init__.py:375
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:237
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:237
 msgid "December"
@@ -1488,7 +1488,7 @@ msgid "Supports 64 bits"
 msgstr "Unterstützt 64-Bit"
 
 #: templates/fireinfo/stats-cpus-detail.html:34
-#: templates/fireinfo/profile-detail.html:92
+#: templates/fireinfo/profile-detail.html:96
 msgid "PAE"
 msgstr "PAE"
 
@@ -1501,7 +1501,7 @@ msgid "POPCNT"
 msgstr "POPCNT"
 
 #: templates/fireinfo/stats-cpus-detail.html:40
-#: templates/fireinfo/profile-detail.html:94
+#: templates/fireinfo/profile-detail.html:98
 msgid "RDRAND"
 msgstr "RDRAND"
 
@@ -1582,7 +1582,7 @@ msgstr "Hardware"
 
 #: templates/fireinfo/stats.html:34 templates/fireinfo/stats-memory.html:3
 #: templates/fireinfo/stats-memory.html:7
-#: templates/fireinfo/profile-detail.html:133
+#: templates/fireinfo/profile-detail.html:137
 msgid "Memory"
 msgstr "Arbeitsspeicher"
 
@@ -1670,7 +1670,7 @@ msgid "Hypervisors"
 msgstr "Hypervisoren"
 
 #: templates/fireinfo/stats-virtual.html:64
-#: templates/fireinfo/profile-detail.html:114 templates/mirrors-item.html:14
+#: templates/fireinfo/profile-detail.html:118 templates/mirrors-item.html:14
 msgid "Unknown"
 msgstr "Unbekannt"
 
@@ -1741,15 +1741,15 @@ msgstr "ORANGE"
 msgid "BLUE"
 msgstr "BLAU"
 
-#: templates/fireinfo/index.html:51
+#: templates/fireinfo/index.html:48
 msgid "Profile ID"
 msgstr "Profil-ID"
 
-#: templates/fireinfo/index.html:54
+#: templates/fireinfo/index.html:51
 msgid "Show"
 msgstr "Anzeigen"
 
-#: templates/fireinfo/index.html:61
+#: templates/fireinfo/index.html:58
 msgid "Random profile"
 msgstr "Zufälliges Profil"
 
@@ -1776,70 +1776,75 @@ msgstr "Quad-Core-Prozessor"
 msgid "%s core processor"
 msgstr "%s-Core-Prozessor"
 
-#: templates/fireinfo/profile-detail.html:73
+#: templates/fireinfo/profile-detail.html:74
 msgid "using Intel Hyper-Threading Technology"
 msgstr "mit Intel Hyper-Threading Technology"
 
-#: templates/fireinfo/profile-detail.html:80
+#: templates/fireinfo/profile-detail.html:76
+#, python-format
+msgid "with %s logical cores"
+msgstr "mit %s logischen Kernen"
+
+#: templates/fireinfo/profile-detail.html:84
 msgid "Supported features"
 msgstr "Unterstützte Funktionen"
 
-#: templates/fireinfo/profile-detail.html:86
+#: templates/fireinfo/profile-detail.html:90
 msgid "64 bit"
 msgstr "64-Bit"
 
-#: templates/fireinfo/profile-detail.html:88
+#: templates/fireinfo/profile-detail.html:92
 msgid "AES-NI"
 msgstr "AES-NI"
 
-#: templates/fireinfo/profile-detail.html:90
+#: templates/fireinfo/profile-detail.html:94
 msgid "NX"
 msgstr "NX"
 
-#: templates/fireinfo/profile-detail.html:96
+#: templates/fireinfo/profile-detail.html:100
 msgid "VT-x/AMD-V"
 msgstr "VT-x/AMD-V"
 
-#: templates/fireinfo/profile-detail.html:108
+#: templates/fireinfo/profile-detail.html:112
 msgid "Hypervisor"
 msgstr "Hypervisor"
 
-#: templates/fireinfo/profile-detail.html:112
+#: templates/fireinfo/profile-detail.html:116
 msgid "VMware"
 msgstr "VMware"
 
-#: templates/fireinfo/profile-detail.html:121
+#: templates/fireinfo/profile-detail.html:125
 msgid "Vendor"
 msgstr "Hersteller"
 
-#: templates/fireinfo/profile-detail.html:126
+#: templates/fireinfo/profile-detail.html:130
 msgid "Model"
 msgstr "Modell"
 
-#: templates/fireinfo/profile-detail.html:149
+#: templates/fireinfo/profile-detail.html:153
 msgid "System Storage"
 msgstr "Systemspeicher"
 
-#: templates/fireinfo/profile-detail.html:154
+#: templates/fireinfo/profile-detail.html:158
 msgid "Kernel"
 msgstr "Kernel"
 
-#: templates/fireinfo/profile-detail.html:160 templates/mirrors-item.html:30
+#: templates/fireinfo/profile-detail.html:164 templates/mirrors-item.html:30
 #: templates/admin-mirrors-create.html:24
 #: templates/talk/phonebook-contact.html:106
 #: templates/downloads-mirrors.html:49 templates/admin-mirrors-details.html:25
 msgid "Location"
 msgstr "Standort"
 
-#: templates/fireinfo/profile-detail.html:169
+#: templates/fireinfo/profile-detail.html:173
 msgid "Language"
 msgstr "Sprache"
 
-#: templates/fireinfo/profile-detail.html:183
+#: templates/fireinfo/profile-detail.html:187
 msgid "Signature images"
 msgstr "Signaturbilder"
 
-#: templates/fireinfo/profile-detail.html:198 templates/admin-mirrors.html:15
+#: templates/fireinfo/profile-detail.html:202 templates/admin-mirrors.html:15
 #: templates/download-mirror-detail.html:20
 #: templates/downloads-mirrors.html:50
 msgid "Last update"
@@ -2388,9 +2393,13 @@ msgstr "Rufe %s an..."
 msgid "Donate"
 msgstr "Spenden"
 
-#: templates/donate.html:10
-msgid "We need your help!"
-msgstr "Wir brauchen Deine Hilfe!"
+#: templates/donate.html:69
+msgid "Did you know...?"
+msgstr "Schon gewusst?"
+
+#: templates/donate.html:88
+msgid "Recurring Donations"
+msgstr "Regelmäßig Spenden"
 
 #: templates/geoip/index.html:3 templates/geoip/index.html:7
 #, python-format
@@ -2823,29 +2832,25 @@ msgid "%d%% funded"
 msgstr "%d%% gesammelt"
 
 #: templates/modules/donation-box.html:4
-msgid "Donate with PayPal or Credit Card"
-msgstr "Mit PayPal oder Kreditkarte spenden"
+msgid "Donate with PayPal"
+msgstr "Mit PayPal spenden"
 
-#: templates/modules/donation-box.html:64
+#: templates/modules/donation-box.html:40
 msgid "Donate by Bank Transfer"
 msgstr "Per Banküberweisung spenden"
 
-#: templates/modules/donation-box.html:81
+#: templates/modules/donation-box.html:57
 msgid "IBAN"
 msgstr "IBAN"
 
-#: templates/modules/donation-box.html:82
+#: templates/modules/donation-box.html:60
 msgid "BIC-/SWIFT-Code"
 msgstr "BIC-/SWIFT-Code"
 
-#: templates/modules/donation-box.html:85
+#: templates/modules/donation-box.html:64
 msgid "Reason for transfer"
 msgstr "Verwendungszweck"
 
-#: templates/modules/donation-box.html:98
-msgid "Did you know...?"
-msgstr "Schon gewusst?"
-
 #: templates/modules/planet-entry.html:14 templates/planet/posting.html:22
 msgid "Posted by"
 msgstr "Erstellt von"
@@ -3334,6 +3339,9 @@ msgstr "%(weekday)s, %(day)s. %(month_name)s"
 msgid "%(commas)s and %(last)s"
 msgstr "%(commas)s und %(last)s"
 
+#~ msgid "We need your help!"
+#~ msgstr "Wir brauchen Deine Hilfe!"
+
 #~ msgid "Get IPFire"
 #~ msgstr "IPFire herunterladen"
 
index ce2d370..6aab926 100644 (file)
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2015-03-17 22:31+0100\n"
+"POT-Creation-Date: 2015-03-29 23:50+0200\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -1028,107 +1028,107 @@ msgstr ""
 msgid "Zimbabwe"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:259 webapp/backend/fireinfo.py:281
-#: webapp/backend/fireinfo.py:297 webapp/backend/fireinfo.py:298
-#: webapp/backend/fireinfo.py:299
+#: webapp/backend/fireinfo.py:306 webapp/backend/fireinfo.py:328
+#: webapp/backend/fireinfo.py:344 webapp/backend/fireinfo.py:345
+#: webapp/backend/fireinfo.py:346
 msgid "Unclassified"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:260 webapp/backend/fireinfo.py:288
+#: webapp/backend/fireinfo.py:307 webapp/backend/fireinfo.py:335
 msgid "Mass storage"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:261
+#: webapp/backend/fireinfo.py:308
 msgid "Network"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:262 webapp/backend/fireinfo.py:293
+#: webapp/backend/fireinfo.py:309 webapp/backend/fireinfo.py:340
 msgid "Display"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:263 webapp/backend/fireinfo.py:282
+#: webapp/backend/fireinfo.py:310 webapp/backend/fireinfo.py:329
 msgid "Multimedia"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:264
+#: webapp/backend/fireinfo.py:311
 msgid "Memory controller"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:265
+#: webapp/backend/fireinfo.py:312
 msgid "Bridge"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:266 webapp/backend/fireinfo.py:283
-#: webapp/backend/fireinfo.py:290
+#: webapp/backend/fireinfo.py:313 webapp/backend/fireinfo.py:330
+#: webapp/backend/fireinfo.py:337
 msgid "Communication"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:267 webapp/backend/fireinfo.py:285
+#: webapp/backend/fireinfo.py:314 webapp/backend/fireinfo.py:332
 msgid "Generic system peripheral"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:268 webapp/backend/fireinfo.py:284
+#: webapp/backend/fireinfo.py:315 webapp/backend/fireinfo.py:331
 msgid "Input device"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:269
+#: webapp/backend/fireinfo.py:316
 msgid "Docking station"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:270 templates/fireinfo/profile-detail.html:54
+#: webapp/backend/fireinfo.py:317 templates/fireinfo/profile-detail.html:54
 #: templates/static/hardware.html:44 templates/static/hardware.html:272
 msgid "Processor"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:271
+#: webapp/backend/fireinfo.py:318
 msgid "Serial bus"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:272 webapp/backend/fireinfo.py:296
+#: webapp/backend/fireinfo.py:319 webapp/backend/fireinfo.py:343
 msgid "Wireless"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:273
+#: webapp/backend/fireinfo.py:320
 msgid "Intelligent controller"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:274
+#: webapp/backend/fireinfo.py:321
 msgid "Satellite communications controller"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:275 webapp/backend/fireinfo.py:292
+#: webapp/backend/fireinfo.py:322 webapp/backend/fireinfo.py:339
 msgid "Encryption"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:276
+#: webapp/backend/fireinfo.py:323
 msgid "Signal processing controller"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:277
+#: webapp/backend/fireinfo.py:324
 msgid "Unassigned class"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:286
+#: webapp/backend/fireinfo.py:333
 msgid "Image"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:287
+#: webapp/backend/fireinfo.py:334
 msgid "Printer"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:289
+#: webapp/backend/fireinfo.py:336
 msgid "Hub"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:291
+#: webapp/backend/fireinfo.py:338
 msgid "Smart card"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:294
+#: webapp/backend/fireinfo.py:341
 msgid "Personal Healthcare"
 msgstr ""
 
-#: webapp/backend/fireinfo.py:295
+#: webapp/backend/fireinfo.py:342
 msgid "Diagnostic Device"
 msgstr ""
 
@@ -1230,73 +1230,73 @@ msgstr ""
 msgid "Generator for creating a Xen image."
 msgstr ""
 
-#: webapp/__init__.py:352
+#: webapp/__init__.py:353
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:235
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:235
 msgid "January"
 msgstr ""
 
-#: webapp/__init__.py:354
+#: webapp/__init__.py:355
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:235
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:235
 msgid "February"
 msgstr ""
 
-#: webapp/__init__.py:356
+#: webapp/__init__.py:357
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:235
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:235
 msgid "March"
 msgstr ""
 
-#: webapp/__init__.py:358
+#: webapp/__init__.py:359
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:235
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:235
 msgid "April"
 msgstr ""
 
-#: webapp/__init__.py:360
+#: webapp/__init__.py:361
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:236
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:236
 msgid "May"
 msgstr ""
 
-#: webapp/__init__.py:362
+#: webapp/__init__.py:363
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:236
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:236
 msgid "June"
 msgstr ""
 
-#: webapp/__init__.py:364
+#: webapp/__init__.py:365
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:236
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:236
 msgid "July"
 msgstr ""
 
-#: webapp/__init__.py:366
+#: webapp/__init__.py:367
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:236
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:236
 msgid "August"
 msgstr ""
 
-#: webapp/__init__.py:368
+#: webapp/__init__.py:369
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:237
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:237
 msgid "September"
 msgstr ""
 
-#: webapp/__init__.py:370
+#: webapp/__init__.py:371
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:237
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:237
 msgid "October"
 msgstr ""
 
-#: webapp/__init__.py:372
+#: webapp/__init__.py:373
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:237
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:237
 msgid "November"
 msgstr ""
 
-#: webapp/__init__.py:374
+#: webapp/__init__.py:375
 #: /usr/lib/python2.7/site-packages/tornado/locale.py:237
 #: /usr/lib/python3.3/site-packages/tornado/locale.py:237
 msgid "December"
@@ -1486,7 +1486,7 @@ msgid "Supports 64 bits"
 msgstr ""
 
 #: templates/fireinfo/stats-cpus-detail.html:34
-#: templates/fireinfo/profile-detail.html:92
+#: templates/fireinfo/profile-detail.html:96
 msgid "PAE"
 msgstr ""
 
@@ -1499,7 +1499,7 @@ msgid "POPCNT"
 msgstr ""
 
 #: templates/fireinfo/stats-cpus-detail.html:40
-#: templates/fireinfo/profile-detail.html:94
+#: templates/fireinfo/profile-detail.html:98
 msgid "RDRAND"
 msgstr ""
 
@@ -1580,7 +1580,7 @@ msgstr ""
 
 #: templates/fireinfo/stats.html:34 templates/fireinfo/stats-memory.html:3
 #: templates/fireinfo/stats-memory.html:7
-#: templates/fireinfo/profile-detail.html:133
+#: templates/fireinfo/profile-detail.html:137
 msgid "Memory"
 msgstr ""
 
@@ -1668,7 +1668,7 @@ msgid "Hypervisors"
 msgstr ""
 
 #: templates/fireinfo/stats-virtual.html:64
-#: templates/fireinfo/profile-detail.html:114 templates/mirrors-item.html:14
+#: templates/fireinfo/profile-detail.html:118 templates/mirrors-item.html:14
 msgid "Unknown"
 msgstr ""
 
@@ -1739,15 +1739,15 @@ msgstr ""
 msgid "BLUE"
 msgstr ""
 
-#: templates/fireinfo/index.html:51
+#: templates/fireinfo/index.html:48
 msgid "Profile ID"
 msgstr ""
 
-#: templates/fireinfo/index.html:54
+#: templates/fireinfo/index.html:51
 msgid "Show"
 msgstr ""
 
-#: templates/fireinfo/index.html:61
+#: templates/fireinfo/index.html:58
 msgid "Random profile"
 msgstr ""
 
@@ -1774,70 +1774,75 @@ msgstr ""
 msgid "%s core processor"
 msgstr ""
 
-#: templates/fireinfo/profile-detail.html:73
+#: templates/fireinfo/profile-detail.html:74
 msgid "using Intel Hyper-Threading Technology"
 msgstr ""
 
-#: templates/fireinfo/profile-detail.html:80
+#: templates/fireinfo/profile-detail.html:76
+#, python-format
+msgid "with %s logical cores"
+msgstr ""
+
+#: templates/fireinfo/profile-detail.html:84
 msgid "Supported features"
 msgstr ""
 
-#: templates/fireinfo/profile-detail.html:86
+#: templates/fireinfo/profile-detail.html:90
 msgid "64 bit"
 msgstr ""
 
-#: templates/fireinfo/profile-detail.html:88
+#: templates/fireinfo/profile-detail.html:92
 msgid "AES-NI"
 msgstr ""
 
-#: templates/fireinfo/profile-detail.html:90
+#: templates/fireinfo/profile-detail.html:94
 msgid "NX"
 msgstr ""
 
-#: templates/fireinfo/profile-detail.html:96
+#: templates/fireinfo/profile-detail.html:100
 msgid "VT-x/AMD-V"
 msgstr ""
 
-#: templates/fireinfo/profile-detail.html:108
+#: templates/fireinfo/profile-detail.html:112
 msgid "Hypervisor"
 msgstr ""
 
-#: templates/fireinfo/profile-detail.html:112
+#: templates/fireinfo/profile-detail.html:116
 msgid "VMware"
 msgstr ""
 
-#: templates/fireinfo/profile-detail.html:121
+#: templates/fireinfo/profile-detail.html:125
 msgid "Vendor"
 msgstr ""
 
-#: templates/fireinfo/profile-detail.html:126
+#: templates/fireinfo/profile-detail.html:130
 msgid "Model"
 msgstr ""
 
-#: templates/fireinfo/profile-detail.html:149
+#: templates/fireinfo/profile-detail.html:153
 msgid "System Storage"
 msgstr ""
 
-#: templates/fireinfo/profile-detail.html:154
+#: templates/fireinfo/profile-detail.html:158
 msgid "Kernel"
 msgstr ""
 
-#: templates/fireinfo/profile-detail.html:160 templates/mirrors-item.html:30
+#: templates/fireinfo/profile-detail.html:164 templates/mirrors-item.html:30
 #: templates/admin-mirrors-create.html:24
 #: templates/talk/phonebook-contact.html:106
 #: templates/downloads-mirrors.html:49 templates/admin-mirrors-details.html:25
 msgid "Location"
 msgstr ""
 
-#: templates/fireinfo/profile-detail.html:169
+#: templates/fireinfo/profile-detail.html:173
 msgid "Language"
 msgstr ""
 
-#: templates/fireinfo/profile-detail.html:183
+#: templates/fireinfo/profile-detail.html:187
 msgid "Signature images"
 msgstr ""
 
-#: templates/fireinfo/profile-detail.html:198 templates/admin-mirrors.html:15
+#: templates/fireinfo/profile-detail.html:202 templates/admin-mirrors.html:15
 #: templates/download-mirror-detail.html:20
 #: templates/downloads-mirrors.html:50
 msgid "Last update"
@@ -2381,8 +2386,12 @@ msgstr ""
 msgid "Donate"
 msgstr ""
 
-#: templates/donate.html:10
-msgid "We need your help!"
+#: templates/donate.html:69
+msgid "Did you know...?"
+msgstr ""
+
+#: templates/donate.html:88
+msgid "Recurring Donations"
 msgstr ""
 
 #: templates/geoip/index.html:3 templates/geoip/index.html:7
@@ -2813,29 +2822,25 @@ msgid "%d%% funded"
 msgstr ""
 
 #: templates/modules/donation-box.html:4
-msgid "Donate with PayPal or Credit Card"
+msgid "Donate with PayPal"
 msgstr ""
 
-#: templates/modules/donation-box.html:64
+#: templates/modules/donation-box.html:40
 msgid "Donate by Bank Transfer"
 msgstr ""
 
-#: templates/modules/donation-box.html:81
+#: templates/modules/donation-box.html:57
 msgid "IBAN"
 msgstr ""
 
-#: templates/modules/donation-box.html:82
+#: templates/modules/donation-box.html:60
 msgid "BIC-/SWIFT-Code"
 msgstr ""
 
-#: templates/modules/donation-box.html:85
+#: templates/modules/donation-box.html:64
 msgid "Reason for transfer"
 msgstr ""
 
-#: templates/modules/donation-box.html:98
-msgid "Did you know...?"
-msgstr ""
-
 #: templates/modules/planet-entry.html:14 templates/planet/posting.html:22
 msgid "Posted by"
 msgstr ""
index 22e4e0d..6cab6c0 100644 (file)
@@ -36,6 +36,7 @@ class Application(tornado.web.Application):
                        ui_modules = {
                                "Advertisement"        : AdvertisementModule,
                                "DonationBox"          : DonationBoxModule,
+                               "DonationButton"       : DonationButtonModule,
                                "DownloadButton"       : DownloadButtonModule,
                                "LanguageName"         : LanguageNameModule,
                                "Map"                  : MapModule,
index 8a082b0..d9b17bc 100644 (file)
@@ -126,7 +126,10 @@ class GeoIPHandler(BaseHandler):
 
 class DonateHandler(BaseHandler):
        def get(self):
+               reason_for_transfer = self.get_argument("reason_for_transfer", None)
+
                # Interesting items from the wishlist.
                wishlist_items = self.wishlist.get_hot_wishes()
 
-               self.render("donate.html", wishlist_items=wishlist_items)
+               self.render("donate.html", wishlist_items=wishlist_items,
+                       reason_for_transfer=reason_for_transfer)
index 47673ee..832d4e3 100644 (file)
@@ -373,14 +373,20 @@ class WishlistItemsModule(UIModule):
 
 
 class DonationBoxModule(UIModule):
-       def render(self, reason_for_transfer=None, show_wishlist_items=False):
+       def render(self, reason_for_transfer=None):
                if reason_for_transfer:
                        reason_for_transfer = "IPFire.org - %s" % reason_for_transfer
 
-               # Interesting items from the wishlist.
-               wishlist_items = []
-               if show_wishlist_items:
-                       wishlist_items = self.wishlist.get_hot_wishes()
-
                return self.render_string("modules/donation-box.html",
-                       reason_for_transfer=reason_for_transfer, wishlist_items=wishlist_items)
+                       reason_for_transfer=reason_for_transfer)
+
+
+class DonationButtonModule(UIModule):
+       def render(self, reason_for_transfer=None, currency="EUR"):
+               if not reason_for_transfer:
+                       reason_for_transfer = "IPFire.org"
+
+               primary = (currency == "EUR")
+
+               return self.render_string("modules/donation-button.html", primary=primary,
+                       reason_for_transfer=reason_for_transfer, currency=currency)