# HG changeset patch # User souliane # Date 1452811183 -3600 # Node ID c56b6ad621538d11233082090c0f2100aac4640d # Parent b61cb60a8eb28799ad7553ed0ae4eafdb0141733 add section News with the official news feed diff -r b61cb60a8eb2 -r c56b6ad62153 locale/fr/LC_MESSAGES/django.po --- a/locale/fr/LC_MESSAGES/django.po Wed Dec 09 03:01:48 2015 +0100 +++ b/locale/fr/LC_MESSAGES/django.po Thu Jan 14 23:39:43 2016 +0100 @@ -7,8 +7,8 @@ msgstr "" "Project-Id-Version: 0.0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2015-12-06 16:06+0100\n" -"PO-Revision-Date: 2015-12-06 16:13+0100\n" +"POT-Creation-Date: 2016-01-14 23:38+0100\n" +"PO-Revision-Date: 2016-01-14 22:05+0100\n" "Last-Translator: Salut à Toi \n" "Language-Team: français \n" "Language: fr\n" @@ -331,7 +331,7 @@ msgid "How to copy and pipe streams over XMPP" msgstr "Comment copier et transférer des flux de tubes (pipes) via XMPP" -#: sat_website/media.py:130 sat_website/templatetags/utils.py:103 +#: sat_website/media.py:130 sat_website/templatetags/utils.py:106 msgid "language" msgstr "langue" @@ -352,11 +352,11 @@ msgid "The first video shows wix, primitivus and jp" msgstr "La première vidéo montre Wix, Primitivus et Jp" -#: sat_website/templatetags/utils.py:91 +#: sat_website/templatetags/utils.py:94 msgid ": " msgstr " : " -#: sat_website/templatetags/utils.py:100 +#: sat_website/templatetags/utils.py:103 msgid "subtitles" msgstr "sous-titres" @@ -377,80 +377,84 @@ msgid "Screenshots & Videos" msgstr "Captures d'écran et vidéos" -#: sat_website/views.py:37 +#: sat_website/views.py:36 +msgid "News" +msgstr "Nouvelles" + +#: sat_website/views.py:38 msgid "Technical area" msgstr "Espace technique" -#: sat_website/views.py:38 templates/sat_website/principles.html:26 +#: sat_website/views.py:39 templates/sat_website/principles.html:26 msgid "Principles" msgstr "Principes" -#: sat_website/views.py:39 templates/sat_website/principles.html:46 +#: sat_website/views.py:40 templates/sat_website/principles.html:46 msgid "Specifications" msgstr "Spécifications" -#: sat_website/views.py:40 templates/sat_website/downloads.html:27 +#: sat_website/views.py:41 templates/sat_website/downloads.html:27 #: templates/sat_website/overview.html:133 msgid "Downloads" msgstr "Téléchargements" -#: sat_website/views.py:41 +#: sat_website/views.py:42 msgid "Developers corner" msgstr "Coin des développeurs" -#: sat_website/views.py:43 +#: sat_website/views.py:44 msgid "Community" msgstr "Communauté" -#: sat_website/views.py:44 +#: sat_website/views.py:45 msgid "Get in touch" msgstr "Nous contacter" -#: sat_website/views.py:45 templates/sat_website/membership.html:35 +#: sat_website/views.py:46 templates/sat_website/membership.html:35 msgid "Association" msgstr "Association" -#: sat_website/views.py:46 +#: sat_website/views.py:47 msgid "Links" msgstr "Liens" -#: sat_website/views.py:47 templates/sat_website/press.html:27 +#: sat_website/views.py:48 templates/sat_website/press.html:27 msgid "Press" msgstr "Presse" -#: sat_website/views.py:48 +#: sat_website/views.py:49 msgid "FAQ" msgstr "FAQ" -#: sat_website/views.py:52 templates/sat_website/association.html:47 +#: sat_website/views.py:53 templates/sat_website/association.html:47 #: templates/sat_website/overview.html:124 msgid "Membership" msgstr "Adhésion" -#: sat_website/views.py:53 templates/sat_website/features.html:76 +#: sat_website/views.py:54 templates/sat_website/features.html:76 #: templates/sat_website/overview.html:105 #: templates/sat_website/principles.html:74 msgid "Social contract" msgstr "Contrat social" -#: sat_website/views.py:63 +#: sat_website/views.py:64 msgid "contains the backend, Primitivus and Jp" msgstr "contient le backend, Primitivus et Jp" -#: sat_website/views.py:64 +#: sat_website/views.py:65 msgid "Images and other media needed to launch SàT" msgstr "images et autres média nécessaires au lancement de SàT" -#: sat_website/views.py:65 +#: sat_website/views.py:66 msgid "console display library needed by Primitivus" msgstr "bibliothèque pour l'affichage en console de Primitivus" -#: sat_website/views.py:66 +#: sat_website/views.py:67 msgid "PubSub server component needed for SàT experimental blogging features" msgstr "" "composant serveur PubSub pour les fonctionnalités expérimentales de blogage" -#: sat_website/views.py:67 +#: sat_website/views.py:68 msgid "Libervia frontend (web server and client)" msgstr "interface Libervia (serveur web et partie cliente)" @@ -579,19 +583,19 @@ msgid "Minutes" msgstr "Comptes rendus" -#: templates/sat_website/base.html:36 +#: templates/sat_website/base.html:37 msgid "Salut à Toi: the multi frontend, multipurpose communication tool" msgstr "Salut à Toi: l'outil de communication multi-interfaces et multi-usages" -#: templates/sat_website/base.html:93 +#: templates/sat_website/base.html:94 msgid "Set language" msgstr "Changer la langue" -#: templates/sat_website/base.html:103 +#: templates/sat_website/base.html:104 msgid "\"Salut à Toi\" association" msgstr "Association « Salut à Toi »" -#: templates/sat_website/base.html:104 templates/sat_website/community.html:35 +#: templates/sat_website/base.html:105 templates/sat_website/community.html:35 msgid "(replace invalid with org)" msgstr "(remplacez invalid par org)" @@ -893,120 +897,6 @@ "l'interface utilisateur ainsi que de corriger le maximum de bogues avant " "d'annoncer la sortie de la version « grand public »." -#: templates/sat_website/faq.html:40 -#, python-format -msgid "What is the security warning when I visit %(demo_http)s?" -msgstr "" -"Qu'est-ce que cet avertissement de sécurité qui s'affiche quand je visite " -"%(demo_http)s ?" - -#: templates/sat_website/faq.html:42 -#, python-format -msgid "" -"This message advices you to use Libervia with HTTPS instead of HTTP. The " -"difference between the two is that HTTPS is more secure because the " -"connection between your browser and the server is encrypted. This is " -"especially recommended when you have to type a password. You should always " -"use %(demo_https)s instead of %(demo_http)s." -msgstr "" -"Ce message vous conseille d'utiliser la version HTTPS de Libervia au lieu de " -"HTTP. La différence entre les deux est que HTTPS est plus sécurisé car la " -"connexion entre votre navigateur et le serveur est chiffrée. C'est surtout " -"recommandé lorsque vous devez taper un mot de passe. Vous devriez toujours " -"utiliser %(demo_https)s et non pas %(demo_http)s." - -#: templates/sat_website/faq.html:47 -#, python-format -msgid "My browser says that %(demo_https)s is unsecure. What does it mean?" -msgstr "" -"Mon navigateur me dit que la connexion à %(demo_https)s n'est pas certifiée. " -"Qu'est-ce que cela signifie ?" - -#: templates/sat_website/faq.html:49 -#, python-format -msgid "" -"The issue here is that %(cacert)s, the certification authority that we use " -"for authenticating %(demo_https)s is not recognised by your browser. The " -"fact your browser doesn't trust CAcert doesn't mean that it is unsecure. For " -"us, it is even more trustable than any other certification organism and we " -"use it on purpose. Despite some companies are offering free certificates " -"that are recognised by every browser, we prefer to support a community-" -"driven and transparent service like CAcert." -msgstr "" -"Ce problème vient du fait que %(cacert)s, l'autorité de certification que " -"nous utilisons pour authentifier %(demo_https)s, n'est pas reconnu par votre " -"navigateur. Le fait que ce dernier ne fasse pas confiance à CAcert ne " -"signifie pas pour autant qu'il y ait un réel problème de sécurité. En fait, " -"nous faisons même davantage confiance à CAcert qu'à n'importe quel autre " -"organisme de certification, et c'est bien consciemment que nous l'utilisons. " -"Bien que des sociétés proposent des certificats gratuits qui sont reconnus " -"par tous les navigateurs, nous préférons supporter un service communautaire " -"et transparent tel que CAcert." - -#: templates/sat_website/faq.html:50 -#, python-format -msgid "" -"So for this time, even if you don't know what's going on, please trust us " -"and accept the certificate. You have to do it only once and then your " -"browser will not bug you anymore when you are about to connect to " -"%(demo_https)s. If you use Mozilla Firefox, proceed this way:" -msgstr "" -"Donc pour cette fois, même si vous ne saisissez pas vraiment de quoi il " -"s'agit, merci de nous faire confiance et d'accepter le certificat. Vous ne " -"devez le faire que la première fois et ensuite votre navigateur ne vous " -"embêtera plus quand vous vous connecterez à %(demo_https)s. Si vous utilisez " -"Mozilla Firefox, suivez ces instructions :" - -#: templates/sat_website/faq.html:56 -msgid "Click \"I Understand the Risks\" and then \"Add Exception\"." -msgstr "" -"Cliquez sur « Je comprends les risques » puis sur « Ajouter une exception »." - -#: templates/sat_website/faq.html:64 -msgid "" -"Click \"View\" and check that the fingerprint matches, then click \"Confirm " -"Security Exception\"." -msgstr "" -"Cliquez sur « Voir » et vérifiez que l'empreinte correspond, ensuite cliquez " -"sur « Confirmer l'exception de sécurité »." - -#: templates/sat_website/faq.html:67 -#, python-format -msgid "" -"The SHA-256 fingerprint must be %(fingerprint)s. If this is not the case, " -"don't confirm the exception and start to worry!" -msgstr "" -"L'empreinte numérique SHA-256 doit être %(fingerprint)s. Si ce n'est pas le " -"cas, ne confirmez pas l'exception et inquiétez-vous ! " - -#: templates/sat_website/faq.html:68 -#, python-format -msgid "" -"Alternatively, you can import the CAcert root certificate to your browser. " -"This is actually a better solution because not only %(demo_https)s but all " -"the websites using the same certification organism than us will be " -"accessible without any security warning and since the first time. To do so, " -"please follow the instructions that are given here: %(cacert_wiki)s. It may " -"look complicated but it is not, for example with Firefox you just need to " -"install an add-on!" -msgstr "" -"Une autre solution est d'importer le certificat racine de CAcert dans votre " -"navigateur. C'est en fait encore mieux, car non seulement %(demo_https)s " -"mais aussi tous les sites qui utilisent le même organisme de certification " -"que nous serons tout de suite accessibles et sans aucun avertissement. Si " -"vous préférez cette alternative, vous pouvez suivre les instructions " -"directement sur %(cacert_wiki)s. Ça parait un peu compliqué mais ça ne l'est " -"pas, par exemple pour Firefox il suffit d'installer un module (plugin)." - -#: templates/sat_website/faq.html:69 -#, python-format -msgid "" -"PS: we will soon replace our CAcert certificate with one from %(url)s, and " -"you won't be bothered by this security warning anymore." -msgstr "" -"PS : nous allons bientôt remplacer notre certificat CAcert par un certificat " -"%(url)s, et vous ne serez plus ennuyés par cet avertissement de sécurité." - #: templates/sat_website/features.html:26 msgid "Salut à Toi's features" msgstr "Fonctionnalités de Salut à Toi" @@ -2435,7 +2325,7 @@ #: templates/sat_website/specifications_xep.html:126 msgid "Jingle" -msgstr "" +msgstr "Jingle" #: templates/sat_website/specifications_xep.html:130 msgid "Delayed Delivery" @@ -2493,6 +2383,111 @@ "Merci de le lire attentivement, il contient les informations pour compléter " "votre adhésion." +#~ msgid "Subscribe to this news feed" +#~ msgstr "Abonnez-vous à ce flux" + +#~ msgid "Atom feed" +#~ msgstr "Flux Atom" + +#~ msgid "What is the security warning when I visit %(demo_http)s?" +#~ msgstr "" +#~ "Qu'est-ce que cet avertissement de sécurité qui s'affiche quand je visite " +#~ "%(demo_http)s ?" + +#~ msgid "" +#~ "This message advices you to use Libervia with HTTPS instead of HTTP. The " +#~ "difference between the two is that HTTPS is more secure because the " +#~ "connection between your browser and the server is encrypted. This is " +#~ "especially recommended when you have to type a password. You should " +#~ "always use %(demo_https)s instead of %(demo_http)s." +#~ msgstr "" +#~ "Ce message vous conseille d'utiliser la version HTTPS de Libervia au lieu " +#~ "de HTTP. La différence entre les deux est que HTTPS est plus sécurisé car " +#~ "la connexion entre votre navigateur et le serveur est chiffrée. C'est " +#~ "surtout recommandé lorsque vous devez taper un mot de passe. Vous devriez " +#~ "toujours utiliser %(demo_https)s et non pas %(demo_http)s." + +#~ msgid "My browser says that %(demo_https)s is unsecure. What does it mean?" +#~ msgstr "" +#~ "Mon navigateur me dit que la connexion à %(demo_https)s n'est pas " +#~ "certifiée. Qu'est-ce que cela signifie ?" + +#~ msgid "" +#~ "The issue here is that %(cacert)s, the certification authority that we " +#~ "use for authenticating %(demo_https)s is not recognised by your browser. " +#~ "The fact your browser doesn't trust CAcert doesn't mean that it is " +#~ "unsecure. For us, it is even more trustable than any other certification " +#~ "organism and we use it on purpose. Despite some companies are offering " +#~ "free certificates that are recognised by every browser, we prefer to " +#~ "support a community-driven and transparent service like CAcert." +#~ msgstr "" +#~ "Ce problème vient du fait que %(cacert)s, l'autorité de certification que " +#~ "nous utilisons pour authentifier %(demo_https)s, n'est pas reconnu par " +#~ "votre navigateur. Le fait que ce dernier ne fasse pas confiance à CAcert " +#~ "ne signifie pas pour autant qu'il y ait un réel problème de sécurité. En " +#~ "fait, nous faisons même davantage confiance à CAcert qu'à n'importe quel " +#~ "autre organisme de certification, et c'est bien consciemment que nous " +#~ "l'utilisons. Bien que des sociétés proposent des certificats gratuits qui " +#~ "sont reconnus par tous les navigateurs, nous préférons supporter un " +#~ "service communautaire et transparent tel que CAcert." + +#~ msgid "" +#~ "So for this time, even if you don't know what's going on, please trust us " +#~ "and accept the certificate. You have to do it only once and then your " +#~ "browser will not bug you anymore when you are about to connect to " +#~ "%(demo_https)s. If you use Mozilla Firefox, proceed this way:" +#~ msgstr "" +#~ "Donc pour cette fois, même si vous ne saisissez pas vraiment de quoi il " +#~ "s'agit, merci de nous faire confiance et d'accepter le certificat. Vous " +#~ "ne devez le faire que la première fois et ensuite votre navigateur ne " +#~ "vous embêtera plus quand vous vous connecterez à %(demo_https)s. Si vous " +#~ "utilisez Mozilla Firefox, suivez ces instructions :" + +#~ msgid "Click \"I Understand the Risks\" and then \"Add Exception\"." +#~ msgstr "" +#~ "Cliquez sur « Je comprends les risques » puis sur « Ajouter une exception " +#~ "»." + +#~ msgid "" +#~ "Click \"View\" and check that the fingerprint matches, then click " +#~ "\"Confirm Security Exception\"." +#~ msgstr "" +#~ "Cliquez sur « Voir » et vérifiez que l'empreinte correspond, ensuite " +#~ "cliquez sur « Confirmer l'exception de sécurité »." + +#~ msgid "" +#~ "The SHA-256 fingerprint must be %(fingerprint)s. If this is not the case, " +#~ "don't confirm the exception and start to worry!" +#~ msgstr "" +#~ "L'empreinte numérique SHA-256 doit être %(fingerprint)s. Si ce n'est pas " +#~ "le cas, ne confirmez pas l'exception et inquiétez-vous ! " + +#~ msgid "" +#~ "Alternatively, you can import the CAcert root certificate to your " +#~ "browser. This is actually a better solution because not only " +#~ "%(demo_https)s but all the websites using the same certification organism " +#~ "than us will be accessible without any security warning and since the " +#~ "first time. To do so, please follow the instructions that are given here: " +#~ "%(cacert_wiki)s. It may look complicated but it is not, for example with " +#~ "Firefox you just need to install an add-on!" +#~ msgstr "" +#~ "Une autre solution est d'importer le certificat racine de CAcert dans " +#~ "votre navigateur. C'est en fait encore mieux, car non seulement " +#~ "%(demo_https)s mais aussi tous les sites qui utilisent le même organisme " +#~ "de certification que nous serons tout de suite accessibles et sans aucun " +#~ "avertissement. Si vous préférez cette alternative, vous pouvez suivre les " +#~ "instructions directement sur %(cacert_wiki)s. Ça parait un peu compliqué " +#~ "mais ça ne l'est pas, par exemple pour Firefox il suffit d'installer un " +#~ "module (plugin)." + +#~ msgid "" +#~ "PS: we will soon replace our CAcert certificate with one from %(url)s, " +#~ "and you won't be bothered by this security warning anymore." +#~ msgstr "" +#~ "PS : nous allons bientôt remplacer notre certificat CAcert par un " +#~ "certificat %(url)s, et vous ne serez plus ennuyés par cet avertissement " +#~ "de sécurité." + #~ msgid " days" #~ msgstr " jours" diff -r b61cb60a8eb2 -r c56b6ad62153 sat_website/templatetags/utils.py --- a/sat_website/templatetags/utils.py Wed Dec 09 03:01:48 2015 +0100 +++ b/sat_website/templatetags/utils.py Thu Jan 14 23:39:43 2016 +0100 @@ -1,6 +1,9 @@ from django import template from django.forms import RadioSelect, CheckboxInput from django.utils.translation import get_language, ugettext_lazy as _ +import urllib2 +import urlparse +import re register = template.Library() @register.filter @@ -106,3 +109,20 @@ except AttributeError: pass return "(%s)" % ', '.join(items) + +@register.simple_tag +def insert_blog_content(url): + # XXX: quick and dirty + url = url.encode("utf-8") + parse_result = urlparse.urlparse(url, "http") + base_url = urlparse.urljoin("%s://%s" % (parse_result.scheme, parse_result.netloc), "blog") + text = urllib2.urlopen(url).read() + subs = [] + for match in re.finditer(r"(href=|src=)\"([^\"]*)\"", text): + if re.match("^[^:]*://", match.group(2)): # keep absolute link + continue + # complete relative link + subs.append((match.group(0), match.group(1) + '"%s"' % urlparse.urljoin(base_url, match.group(2)))) + for url, new_url in subs: + text = text.replace(url, new_url) + return text diff -r b61cb60a8eb2 -r c56b6ad62153 sat_website/views.py --- a/sat_website/views.py Wed Dec 09 03:01:48 2015 +0100 +++ b/sat_website/views.py Thu Jan 14 23:39:43 2016 +0100 @@ -33,6 +33,7 @@ OrderedDict([("features", _(u"Features")), ("frontends", _(u"Frontends")), ("media", _(u"Screenshots & Videos")), + ("news", _(u"News")), ]))), ('principles', (_(u"Technical area"), OrderedDict([("principles", _(u"Principles")), diff -r b61cb60a8eb2 -r c56b6ad62153 static/css/sat_website.css --- a/static/css/sat_website.css Wed Dec 09 03:01:48 2015 +0100 +++ b/static/css/sat_website.css Thu Jan 14 23:39:43 2016 +0100 @@ -269,3 +269,9 @@ .video-campaign { max-width: 100%; } + +.news-content { + box-sizing: border-box; + border-radius: 5px; + background: url("https://libervia.org/themes/default/images/tpl/page-gradient.png") repeat-x scroll left top #FBFAF9; +} diff -r b61cb60a8eb2 -r c56b6ad62153 templates/sat_website/base.html --- a/templates/sat_website/base.html Wed Dec 09 03:01:48 2015 +0100 +++ b/templates/sat_website/base.html Thu Jan 14 23:39:43 2016 +0100 @@ -31,6 +31,7 @@ + {% block title %}{% trans "Salut à Toi: the multi frontend, multipurpose communication tool" %}{% endblock %} diff -r b61cb60a8eb2 -r c56b6ad62153 templates/sat_website/news.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/templates/sat_website/news.html Thu Jan 14 23:39:43 2016 +0100 @@ -0,0 +1,32 @@ +{% extends "sat_website/category.html" %} + +{% comment %} +SàT website: Salut à Toi's presentation website +Copyright (C) 2012 Jérôme Poisson (goffi@goffi.org) + +This file is part of SàT website. + +SàT website is free software: you can redistribute it and/or modify +it under the terms of the GNU Affero General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +Foobar is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU Affero General Public License for more details. + +You should have received a copy of the GNU Affero General Public License +along with Foobar. If not, see . +{% endcomment %} + +{% load i18n %} +{% load staticfiles %} +{% load utils %} +{% block main_container %} + +
+ {% insert_blog_content "https://libervia.org/blog/salut-a-toi" %} +
+ +{% endblock %}