text-align: center;
}
+.ar {
+ text-align: right;
+}
+
.clear {
clear: both;
}
.planet-table td.author {
width: 10em;
}
+
+.news-entries td.date {
+ width: 8em;
+ text-align: right;
+}
+
+.well-white {
+ background-color: white;
+}
<ul class="masthead-links">
{% if latest_release %}
<li>
- {{ _("Latest release") }}:
- {{ latest_release.name }}<br>
+ {{ _("Latest release") }}:<br>
+ {{ latest_release.name }} ‐
{{ locale.format_date(latest_release.date, relative=True, shorter=True) }}
</li>
{% end %}
- <li>
- <a href="/donate">{{ _("Donate") }}</a>
- </li>
</ul>
</div>
</div>
{% block body %}
<br>
- <p class="ac muted">
- <strong>{{ _("New!") }}</strong>
- {% if lang == "de" %}
- IPFire <a href="http://wishlist.ipfire.org/">Wunschliste</a> - Die Crowdfunding-Plattform des IPFire-Projekts.
- {% else %}
- IPFire <a href="http://wishlist.ipfire.org">wishlist</a> - the crowd funding platform for the IPFire project.
- {% end %}
- </p>
-
- <hr>
-
<div class="row">
- <div class="span6">
+ <div class="span6 objectives">
{% if lang == "de" %}
<p>
<strong>IPFire</strong> ist eine gehärtete Linux-Appliance-Distribution
</p>
{% end %}
- <br>
-
- <div class="well">
- <h4>{{ _("What's new?") }}</h4>
-
- <ul class="unstyled">
- {% for item in latest_news %}
- <li>
- [{{ locale.format_date(item.date, relative=True, shorter=True) }}] ‐
- <a href="/news/{{ item.slug }}">{{ item.title }}</a>
- </li>
- {% end %}
- </ul>
- </div>
- </div>
+ <hr>
- <div class="span6 objectives">
<img class="icon pull-left" src="{{ static_url("images/icons/security.png") }}" alt="{{ _("Security") }}" />
<h4>{{ _("Security") }}</h4>
{% else %}
<p>
IPFire is free software and developed by an open community,
- that makes IPFire better every single day.
+ that improves it every single day.
</p>
{% end %}
<p class="ac">
<a href="/features">{{ _("Read more") }} »</a>
</p>
+
+ </div>
+
+ <div class="span6">
+ <div class="well">
+ <h4>
+ {{ _("What's new?") }}
+ <a class="pull-right" href="http://www.ipfire.org/news.rss"><small>[RSS]</small></a>
+ </h4>
+
+ <table class="news-entries">
+ {% for item in latest_news %}
+ <tr>
+ <td class="date">
+ {{ locale.format_date(item.date, relative=True, shorter=True) }} ‐
+ </td>
+ <td class="link">
+ <a href="/news/{{ item.slug }}">{{ item.title }}</a>
+ </td>
+ </tr>
+ {% end %}
+ </table>
+
+ <hr>
+
+ <h4>
+ <a href="http://planet.ipfire.org">{{ _("IPFire Planet") }}</a>
+ <a class="pull-right" href="http://planet.ipfire.org/rss"><small>[RSS]</small></a>
+ </h4>
+
+ <table class="news-entries">
+ {% for item in planet_posts %}
+ <tr>
+ <td class="date">
+ {{ locale.format_date(item.published, relative=True, shorter=True) }} ‐
+ </td>
+ <td class="link">
+ <a href="http://planet.ipfire.org/post/{{ item.slug }}">{{ item.title }}</a>
+ </td>
+ </tr>
+ {% end %}
+ </table>
+
+ <hr>
+
+ <div class="row-fluid">
+ <div class="span10">
+ <a href="/donate"><strong>{{ _("Please support us with your donation!") }}</strong></a>
+ </div>
+
+ <div class="span2">
+ <div class="pull-right">
+ <a href="https://www.facebook.com/IPFire.org"><img src="{{ static_url("images/icons/social/facebook.png") }}" alt="Facebook"></a>
+ <a href="https://twitter.com/ipfire"><img src="{{ static_url("images/icons/social/twitter.png") }}" alt="Twitter"></a>
+ </div>
+ </div>
+ </div>
+ </div>
+
+ <div class="well well-white">
+ <h4>
+ {{ _("IPFire Hardware Appliances & Consulting") }} <small>{{ _("by Lightning Wire Labs") }}</small>
+ </h4>
+
+ <br>
+
+ {% if lang == "de" %}
+ <p>
+ Lightning Wire Labs bietet mit IPFire vorinstallierte Hardware-Appliances an.
+ Dazu bieten sie professionellen Service & Support durch qualifizierte Consultants.
+ </p>
+ {% else %}
+ <p>
+ Lightning Wire Labs offers hardware appliances that come pre-installed
+ with the latest version of IPFire.
+ They also provide professional services & support through their certified consultants.
+ </p>
+ {% end %}
+
+ <hr>
+
+ <div class="ac">
+ <a href="http://www.lightningwirelabs.com/products/ipfire/appliances" target="_blank">
+ <img src="{{ static_url("images/LWL/appliance-pro.jpg") }}" alt="Appliance Professional">
+ </a>
+ <br>
+ <a href="http://www.lightningwirelabs.com/products/ipfire/appliances" target="_blank">
+ <img src="{{ static_url("images/LWL/appliance-eco.jpg") }}" alt="Appliance Eco">
+ </a>
+ </div>
+
+ <hr>
+
+ <p class="ac">
+ <a href="http://www.lightningwirelabs.com/" target="_blank">www.lightningwirelabs.com</a>
+ </p>
+ </div>
</div>
</div>
{% end block %}
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-05-04 11:38+0200\n"
+"POT-Creation-Date: 2013-05-13 11:46+0200\n"
"PO-Revision-Date: 2013-02-19 12:38+0100\n"
"Last-Translator: Michael Tremer <michael.tremer@ipfire.org>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
msgid "Unknown author"
msgstr "Unbekannter Autor"
-#: webapp/__init__.py:278
+#: webapp/__init__.py:285
#: /usr/lib/python2.7/site-packages/tornado/locale.py:225
msgid "January"
msgstr "Januar"
-#: webapp/__init__.py:280
+#: webapp/__init__.py:287
#: /usr/lib/python2.7/site-packages/tornado/locale.py:225
msgid "February"
msgstr "Februar"
-#: webapp/__init__.py:282
+#: webapp/__init__.py:289
#: /usr/lib/python2.7/site-packages/tornado/locale.py:225
msgid "March"
msgstr "März"
-#: webapp/__init__.py:284
+#: webapp/__init__.py:291
#: /usr/lib/python2.7/site-packages/tornado/locale.py:225
msgid "April"
msgstr "April"
-#: webapp/__init__.py:286
+#: webapp/__init__.py:293
#: /usr/lib/python2.7/site-packages/tornado/locale.py:226
msgid "May"
msgstr "Mai"
-#: webapp/__init__.py:288
+#: webapp/__init__.py:295
#: /usr/lib/python2.7/site-packages/tornado/locale.py:226
msgid "June"
msgstr "Juni"
-#: webapp/__init__.py:290
+#: webapp/__init__.py:297
#: /usr/lib/python2.7/site-packages/tornado/locale.py:226
msgid "July"
msgstr "Juli"
-#: webapp/__init__.py:292
+#: webapp/__init__.py:299
#: /usr/lib/python2.7/site-packages/tornado/locale.py:226
msgid "August"
msgstr "August"
-#: webapp/__init__.py:294
+#: webapp/__init__.py:301
#: /usr/lib/python2.7/site-packages/tornado/locale.py:227
msgid "September"
msgstr "September"
-#: webapp/__init__.py:296
+#: webapp/__init__.py:303
#: /usr/lib/python2.7/site-packages/tornado/locale.py:227
msgid "October"
msgstr "Oktober"
-#: webapp/__init__.py:298
+#: webapp/__init__.py:305
#: /usr/lib/python2.7/site-packages/tornado/locale.py:227
msgid "November"
msgstr "November"
-#: webapp/__init__.py:300
+#: webapp/__init__.py:307
#: /usr/lib/python2.7/site-packages/tornado/locale.py:227
msgid "December"
msgstr "Dezember"
msgid "Newer"
msgstr "Neuer"
+#: templates/wishlist/base.html:6
+msgid "IPFire Wishlist"
+msgstr "IPFire Wunschliste"
+
+#: templates/wishlist/base.html:8
+msgid "Crowd funding for the IPFire project"
+msgstr "Crowdfunding für das IPFire-Projekt"
+
#: templates/wishlist/modules/wish.html:6
msgid "Only a few days left!"
msgstr "Nur noch wenige Tage!"
#: templates/wishlist/modules/wish.html:26 templates/wishlist/donate.html:3
#: templates/download-splash.html:37 templates/modules/menu.html:47
#: templates/static/getinvolved.html:120 templates/static/donation.html:3
-#: templates/static/donation.html:8 templates/index.html:30
+#: templates/static/donation.html:8
msgid "Donate"
msgstr "Spenden"
msgid "Home"
msgstr "Startseite"
-#: templates/wishlist/index.html:7
-msgid "Crowd funding for the IPFire project"
-msgstr "Crowdfunding für das IPFire-Projekt"
-
#: templates/wishlist/donate.html:13 templates/wishlist/donate.html:23
#: templates/wishlist/terms.html:3 templates/wishlist/terms.html:7
#: templates/base.html:78
msgid "Compose new entry"
msgstr "Neuen Beitrag erstellen"
-#: templates/admin-planet-compose.html:14 templates/admin-planet.html:14
+#: templates/admin-planet-compose.html:16 templates/admin-planet.html:14
msgid "Title"
msgstr "Titel"
+#: templates/admin-planet-compose.html:33 templates/planet/posting.html:19
+msgid "Tags"
+msgstr "Tags"
+
+#: templates/admin-planet-compose.html:41
+msgid "Save"
+msgstr "Speichern"
+
+#: templates/admin-planet-compose.html:42
+msgid "Preview"
+msgstr "Vorschau"
+
+#: templates/admin-planet-compose.html:43
+msgid "Cancel"
+msgstr "Abbrechen"
+
#: templates/download-splash.html:3 templates/download-splash.html:7
msgid "Thanks for downloading IPFire!"
msgstr "Vielen Dank, für das Herunterladen von IPFire! "
#: templates/news.html:61 templates/planet/year.html:3
#: templates/planet/user.html:3 templates/planet/search.html:3
#: templates/planet/base.html:6 templates/planet/index.html:3
-#: templates/planet/posting.html:3
+#: templates/planet/posting.html:3 templates/index.html:154
msgid "IPFire Planet"
msgstr "IPFire Planet"
msgstr "Über IPFire"
#: templates/base-feature.html:9 templates/static/features.html:88
-#: templates/static/features.html:1354 templates/index.html:104
+#: templates/static/features.html:1354 templates/index.html:75
msgid "Security"
msgstr "Sicherheit"
#: templates/planet/year.html:6
#, python-format
msgid "Year %s"
-msgstr ""
+msgstr "Jahr %s"
-#: templates/planet/user.html:22 templates/planet/index.html:44
+#: templates/planet/user.html:22 templates/planet/index.html:45
msgid "Older posts"
msgstr "Ältere Beiträge"
-#: templates/planet/user.html:26 templates/planet/index.html:48
+#: templates/planet/user.html:26 templates/planet/index.html:49
msgid "Newer posts"
msgstr "Neuere Beiträge"
#: templates/planet/search.html:6
#, python-format
msgid "Search results for '%s'"
-msgstr ""
+msgstr "Suchergebnisse für '%s'"
#: templates/planet/search.html:16
#, python-format
msgid "No results found for '%s'"
-msgstr ""
+msgstr "Keine Resultate gefunden für '%s'"
#: templates/planet/base.html:9
msgid "The official blog of the IPFire team"
msgstr "Das offizielle Blog des IPFire-Team"
-#: templates/planet/index.html:23
+#: templates/planet/index.html:24
msgid "All posts from"
-msgstr ""
+msgstr "Alle Posts aus"
-#: templates/planet/posting.html:18 templates/modules/planet-entry.html:14
+#: templates/planet/posting.html:24 templates/modules/planet-entry.html:14
msgid "Posted by"
msgstr "Erstellt von"
-#: templates/planet/posting.html:19 templates/modules/planet-entry.html:15
+#: templates/planet/posting.html:25 templates/modules/planet-entry.html:15
msgid "on"
msgstr "am"
msgid "Research & Development"
msgstr "Forschung & Entwicklung"
-#: templates/index.html:43
-msgid "New!"
-msgstr "Neu!"
-
-#: templates/index.html:89
-msgid "What's new?"
-msgstr "Neuigkeiten"
-
-#: templates/index.html:121
+#: templates/index.html:92
msgid "Flexibility"
msgstr "Flexibilität"
-#: templates/index.html:138
+#: templates/index.html:109
msgid "Open Source"
msgstr "Open Source"
-#: templates/index.html:155
+#: templates/index.html:126
msgid "Read more"
msgstr "Mehr erfahren"
+#: templates/index.html:134
+msgid "What's new?"
+msgstr "Neuigkeiten"
+
+#: templates/index.html:175
+msgid "Please support us with your donation!"
+msgstr "Unterstütze dieses Projekt mit deiner Spende!"
+
+#: templates/index.html:189
+msgid "IPFire Hardware Appliances & Consulting"
+msgstr "IPFire Hardware Appliances & Consulting"
+
+#: templates/index.html:189
+msgid "by Lightning Wire Labs"
+msgstr "von Lightning Wire Labs"
+
#: templates/admin-mirrors-details.html:8
msgid "All mirrors"
msgstr "Alle Mirrors"
msgid "%(commas)s and %(last)s"
msgstr "%(commas)s und %(last)s"
+#~ msgid "Please donate!"
+#~ msgstr "Spenden!"
+
+#~ msgid "Support, Services & Consulting"
+#~ msgstr "Support, Services & Consulting"
+
+#~ msgid "New!"
+#~ msgstr "Neu!"
+
#~ msgid "IPFire nopaste service"
#~ msgstr "IPFire nopaste Service"
#~ msgid "Donation"
#~ msgstr "Spende"
-#~ msgid "Support this project with your donation!"
-#~ msgstr "Unterstütze dieses Projekt mit deiner Spende!"
-
#~ msgid "Builds"
#~ msgstr "Builds"
#~ msgid "Twitter"
#~ msgstr "Twitter"
-#~ msgid "IPFire Wishlist"
-#~ msgstr "IPFire Wunschliste"
-
#~ msgid "Turning an idea into a new feature"
#~ msgstr "Verwandle eine Idee in ein neues Feature"
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-05-04 11:38+0200\n"
+"POT-Creation-Date: 2013-05-13 11:46+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"
msgid "Unknown author"
msgstr ""
-#: webapp/__init__.py:278
+#: webapp/__init__.py:285
#: /usr/lib/python2.7/site-packages/tornado/locale.py:225
msgid "January"
msgstr ""
-#: webapp/__init__.py:280
+#: webapp/__init__.py:287
#: /usr/lib/python2.7/site-packages/tornado/locale.py:225
msgid "February"
msgstr ""
-#: webapp/__init__.py:282
+#: webapp/__init__.py:289
#: /usr/lib/python2.7/site-packages/tornado/locale.py:225
msgid "March"
msgstr ""
-#: webapp/__init__.py:284
+#: webapp/__init__.py:291
#: /usr/lib/python2.7/site-packages/tornado/locale.py:225
msgid "April"
msgstr ""
-#: webapp/__init__.py:286
+#: webapp/__init__.py:293
#: /usr/lib/python2.7/site-packages/tornado/locale.py:226
msgid "May"
msgstr ""
-#: webapp/__init__.py:288
+#: webapp/__init__.py:295
#: /usr/lib/python2.7/site-packages/tornado/locale.py:226
msgid "June"
msgstr ""
-#: webapp/__init__.py:290
+#: webapp/__init__.py:297
#: /usr/lib/python2.7/site-packages/tornado/locale.py:226
msgid "July"
msgstr ""
-#: webapp/__init__.py:292
+#: webapp/__init__.py:299
#: /usr/lib/python2.7/site-packages/tornado/locale.py:226
msgid "August"
msgstr ""
-#: webapp/__init__.py:294
+#: webapp/__init__.py:301
#: /usr/lib/python2.7/site-packages/tornado/locale.py:227
msgid "September"
msgstr ""
-#: webapp/__init__.py:296
+#: webapp/__init__.py:303
#: /usr/lib/python2.7/site-packages/tornado/locale.py:227
msgid "October"
msgstr ""
-#: webapp/__init__.py:298
+#: webapp/__init__.py:305
#: /usr/lib/python2.7/site-packages/tornado/locale.py:227
msgid "November"
msgstr ""
-#: webapp/__init__.py:300
+#: webapp/__init__.py:307
#: /usr/lib/python2.7/site-packages/tornado/locale.py:227
msgid "December"
msgstr ""
msgid "Newer"
msgstr ""
+#: templates/wishlist/base.html:6
+msgid "IPFire Wishlist"
+msgstr ""
+
+#: templates/wishlist/base.html:8
+msgid "Crowd funding for the IPFire project"
+msgstr ""
+
#: templates/wishlist/modules/wish.html:6
msgid "Only a few days left!"
msgstr ""
#: templates/wishlist/modules/wish.html:26 templates/wishlist/donate.html:3
#: templates/download-splash.html:37 templates/modules/menu.html:47
#: templates/static/getinvolved.html:120 templates/static/donation.html:3
-#: templates/static/donation.html:8 templates/index.html:30
+#: templates/static/donation.html:8
msgid "Donate"
msgstr ""
msgid "Home"
msgstr ""
-#: templates/wishlist/index.html:7
-msgid "Crowd funding for the IPFire project"
-msgstr ""
-
#: templates/wishlist/donate.html:13 templates/wishlist/donate.html:23
#: templates/wishlist/terms.html:3 templates/wishlist/terms.html:7
#: templates/base.html:78
msgid "Compose new entry"
msgstr ""
-#: templates/admin-planet-compose.html:14 templates/admin-planet.html:14
+#: templates/admin-planet-compose.html:16 templates/admin-planet.html:14
msgid "Title"
msgstr ""
+#: templates/admin-planet-compose.html:33 templates/planet/posting.html:19
+msgid "Tags"
+msgstr ""
+
+#: templates/admin-planet-compose.html:41
+msgid "Save"
+msgstr ""
+
+#: templates/admin-planet-compose.html:42
+msgid "Preview"
+msgstr ""
+
+#: templates/admin-planet-compose.html:43
+msgid "Cancel"
+msgstr ""
+
#: templates/download-splash.html:3 templates/download-splash.html:7
msgid "Thanks for downloading IPFire!"
msgstr ""
#: templates/news.html:61 templates/planet/year.html:3
#: templates/planet/user.html:3 templates/planet/search.html:3
#: templates/planet/base.html:6 templates/planet/index.html:3
-#: templates/planet/posting.html:3
+#: templates/planet/posting.html:3 templates/index.html:154
msgid "IPFire Planet"
msgstr ""
msgstr ""
#: templates/base-feature.html:9 templates/static/features.html:88
-#: templates/static/features.html:1354 templates/index.html:104
+#: templates/static/features.html:1354 templates/index.html:75
msgid "Security"
msgstr ""
msgid "Year %s"
msgstr ""
-#: templates/planet/user.html:22 templates/planet/index.html:44
+#: templates/planet/user.html:22 templates/planet/index.html:45
msgid "Older posts"
msgstr ""
-#: templates/planet/user.html:26 templates/planet/index.html:48
+#: templates/planet/user.html:26 templates/planet/index.html:49
msgid "Newer posts"
msgstr ""
msgid "The official blog of the IPFire team"
msgstr ""
-#: templates/planet/index.html:23
+#: templates/planet/index.html:24
msgid "All posts from"
msgstr ""
-#: templates/planet/posting.html:18 templates/modules/planet-entry.html:14
+#: templates/planet/posting.html:24 templates/modules/planet-entry.html:14
msgid "Posted by"
msgstr ""
-#: templates/planet/posting.html:19 templates/modules/planet-entry.html:15
+#: templates/planet/posting.html:25 templates/modules/planet-entry.html:15
msgid "on"
msgstr ""
msgid "Research & Development"
msgstr ""
-#: templates/index.html:43
-msgid "New!"
+#: templates/index.html:92
+msgid "Flexibility"
+msgstr ""
+
+#: templates/index.html:109
+msgid "Open Source"
msgstr ""
-#: templates/index.html:89
+#: templates/index.html:126
+msgid "Read more"
+msgstr ""
+
+#: templates/index.html:134
msgid "What's new?"
msgstr ""
-#: templates/index.html:121
-msgid "Flexibility"
+#: templates/index.html:175
+msgid "Please support us with your donation!"
msgstr ""
-#: templates/index.html:138
-msgid "Open Source"
+#: templates/index.html:189
+msgid "IPFire Hardware Appliances & Consulting"
msgstr ""
-#: templates/index.html:155
-msgid "Read more"
+#: templates/index.html:189
+msgid "by Lightning Wire Labs"
msgstr ""
#: templates/admin-mirrors-details.html:8
"""
def get(self):
# Get a list of the most recent news items and put them on the page.
- latest_news = self.news.get_latest(limit=1, locale=self.locale)
+ latest_news = self.news.get_latest(limit=3, locale=self.locale)
+
+ # Get a list of the most recent planet posts.
+ planet_posts = self.planet.get_entries(limit=3)
# Get the latest release.
latest_release = self.releases.get_latest()
return self.render("index.html", latest_news=latest_news,
- latest_release=latest_release)
+ planet_posts=planet_posts, latest_release=latest_release)
class StaticHandler(BaseHandler):