From 200e146be30d40b6f6f6856dbeda15ac63346933 Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 9 Sep 2009 00:00:19 +0200 Subject: [PATCH 1/1] Implement bbox limitation To implement the bbox limitation, we use the ocitysmap.coords.BoundingBox class. As this is the first usage of ocitysmap from the Web front-end, this patch might require some installation changes. Signed-off-by: Thomas Petazzoni --- www/locale/fr/LC_MESSAGES/django.po | 260 +++++++++++++---------------------- www/maposmatic/views.py | 10 ++ www/templates/maposmatic/index.html | 1 + 3 files changed, 107 insertions(+), 164 deletions(-) diff --git a/www/locale/fr/LC_MESSAGES/django.po b/www/locale/fr/LC_MESSAGES/django.po index b5da9cc..b54f261 100644 --- a/www/locale/fr/LC_MESSAGES/django.po +++ b/www/locale/fr/LC_MESSAGES/django.po @@ -20,8 +20,8 @@ msgid "" msgstr "" "Project-Id-Version: mapOSMatic 0.1\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2009-09-08 22:11+0200\n" -"PO-Revision-Date: 2009-09-08 22:08+0100\n" +"POT-Creation-Date: 2009-09-08 23:58+0200\n" +"PO-Revision-Date: 2009-09-08 23:59+0100\n" "Last-Translator: Thomas Petazzoni \n" "Language-Team: FR \n" "MIME-Version: 1.0\n" @@ -38,33 +38,43 @@ msgstr "Carte pour %(title)s (format %(format)s)" msgid "%(title)s %(format)s Index" msgstr "Index des rues pour %(title)s (format %(format)s)" -#: maposmatic/views.py:67 +#: maposmatic/views.py:69 msgid "Administrative boundary" msgstr "Limites administratives (nom de ville)" -#: maposmatic/views.py:68 templates/maposmatic/index.html:170 +#: maposmatic/views.py:70 +#: templates/maposmatic/index.html:174 msgid "Bounding box" msgstr "Zone géographique" -#: maposmatic/views.py:81 +#: maposmatic/views.py:73 +msgid "Area" +msgstr "Zone" + +#: maposmatic/views.py:84 msgid "Administrative city required" msgstr "Nom de ville obligatoire" -#: maposmatic/views.py:85 -msgid "" -"No administrative boundaries found for this city. Try with proper casing." -msgstr "" -"Aucune limite administrative disponible pour cette ville. Essayez en " -"corrigeant la casse (majuscule sur la première lettre)" +#: maposmatic/views.py:88 +msgid "No administrative boundaries found for this city. Try with proper casing." +msgstr "Aucune limite administrative disponible pour cette ville. Essayez en corrigeant la casse (majuscule sur la première lettre)" -#: maposmatic/views.py:93 +#: maposmatic/views.py:96 msgid "Map title required" msgstr "Titre de la carte obligatoire" -#: maposmatic/views.py:101 +#: maposmatic/views.py:104 msgid "Required" msgstr "Obligatoire" +#: maposmatic/views.py:114 +msgid "Bounding Box too big" +msgstr "Zone géographique trop grande" + +#: maposmatic/widgets.py:40 +msgid "Invalid point" +msgstr "Point invalide" + #: maposmatic/templatetags/extratags.py:39 msgid "Waiting rendering" msgstr "Attente de début du rendu" @@ -82,7 +92,8 @@ msgstr "Rendu terminé avec succès" msgid "Rendering failed, reason: %(errmsg)s" msgstr "Rendu échoué, raison : %(errmsg)s" -#: templates/500.html:3 templates/maposmatic/base.html:47 +#: templates/500.html:3 +#: templates/maposmatic/base.html:48 msgid "Home" msgstr "Accueil" @@ -102,7 +113,8 @@ msgstr "Erreur interne 500" msgid "There's been an error." msgstr "Une erreur est apparue." -#: templates/maposmatic/about.html:35 templates/maposmatic/base.html:50 +#: templates/maposmatic/about.html:35 +#: templates/maposmatic/base.html:51 msgid "About" msgstr "À propos..." @@ -117,31 +129,19 @@ msgid "" "href=\"http://www.openstreetmap.org\">OpenStreetMap and free\n" "software contributor of Rennes area, France. From his idea, a group of\n" "crazy hackers\n" +"href=\"http://en.wikipedia.org/wiki/Hacker_%28programmer_subculture%29\">hackers\n" "met together during a one-week Hackfest in August 2009 and\n" "brought the idea of Gilles Lamiral to life by writing the code and\n" "named the project MapOSMatic. The group of crazy\n" "hackers would like to thank Gilles for sharing his bright\n" "idea!" -msgstr "" -"MapOSMatic a été lancé grâce à une idée de Gilles Lamiral, un contributeur à " -"OpenStreetMap et au Logiciel " -"Libre de la région rennaise en France. À partir de son idée, un groupe de hackers fous s'est réuni durant une Hackfest d'une semaine en août 2009 " -"et a transformé l'idée de Gilles en réalité. Le groupe de hackers " -"fous souhaite remercier Gilles d'avoir partagé cette brillante idée !" +msgstr "MapOSMatic a été lancé grâce à une idée de Gilles Lamiral, un contributeur à OpenStreetMap et au Logiciel Libre de la région rennaise en France. À partir de son idée, un groupe de hackers fous s'est réuni durant une Hackfest d'une semaine en août 2009 et a transformé l'idée de Gilles en réalité. Le groupe de hackers fous souhaite remercier Gilles d'avoir partagé cette brillante idée !" #: templates/maposmatic/about.html:51 msgid "" "Of course, MapOSMatic is fully free software,\n" -"licensed under the AGPLv3." -msgstr "" -"Bien entendu, MapOSMatic est un Logiciel Libre, disponible sous les termes " -"de la licence AGPLv3." +"licensed under the AGPLv3." +msgstr "Bien entendu, MapOSMatic est un Logiciel Libre, disponible sous les termes de la licence AGPLv3." #: templates/maposmatic/about.html:54 msgid "How does it work?" @@ -159,13 +159,8 @@ msgid "" "the osm2pgsql\n" "tool." msgstr "" -"Sur notre serveur, nous disposons d'un serveur PostgreSQL avec l'extension PostGIS. Sur ce serveur PostgreSQL, nous avons chargé " -"l'intégralité des données OpenStreetMap pour la France métropolitaine, en " -"utilisant les dumps de Geofabrik et " -"l'outil PostgreSQL avec l'extension PostGIS. Sur ce serveur PostgreSQL, nous avons chargé l'intégralité des données OpenStreetMap pour la France métropolitaine, en utilisant les dumps de Geofabrik et l'outil osm2pgsql." #: templates/maposmatic/about.html:66 @@ -173,27 +168,21 @@ msgid "" "For the map rendering, we use the\n" "famous Mapnik with the OpenStreetMap\n" "stylesheet\n" -"available in\n" +"available in\n" "OpenStreetMap Subversion repository. Using Mapnik\n" "and Cairo, we\n" "built OCitySMap, a Python module that:" msgstr "" "Pour le rendu de la carte, nous utilisons le célèbre Mapnik, accompagné de la feuille de style " -"OpenStreetMap disponible Mapnik, accompagné de la feuille de style OpenStreetMap disponible dans le\n" -"dépôt Subversion d'OpenStreetMap. En utilisant Mapnik et Cairo, nous avons développé " -"OCitySMap, un module Python qui :" +"dépôt Subversion d'OpenStreetMap. En utilisant Mapnik et Cairo, nous avons développé OCitySMap, un module Python qui :" #: templates/maposmatic/about.html:76 msgid "" "Renders the map using OpenStreetMap data and the\n" " OpenStreetMap Mapnik stylesheet;" -msgstr "" -"Effectue le rendu de la carte en utilisant les données OpenStreetMap et la " -"feuille de style OpenStreetMap pour Mapnik ;" +msgstr "Effectue le rendu de la carte en utilisant les données OpenStreetMap et la feuille de style OpenStreetMap pour Mapnik ;" #: templates/maposmatic/about.html:79 msgid "" @@ -201,27 +190,20 @@ msgid "" " of 500 meters squares, the labels of the squares, and a few other\n" " informations on the map (copyright, scale,\n" " etc.);" -msgstr "" -"Effectue le rendu, au-dessus de la carte et en utilisant Mapnik, d'une " -"grille de carrés de 500 mètres de coté, des légendes de ces carrés et de " -"quelques autres informations (droits d'auteur, échelle, etc.) ;" +msgstr "Effectue le rendu, au-dessus de la carte et en utilisant Mapnik, d'une grille de carrés de 500 mètres de coté, des légendes de ces carrés et de quelques autres informations (droits d'auteur, échelle, etc.) ;" #: templates/maposmatic/about.html:84 msgid "" "Greys out all the area outside the city if we find\n" " its administrative boundary;" -msgstr "" -"Ajoute un pourtour gris autour de la ville si nous avons ses limites " -"administratives ;" +msgstr "Ajoute un pourtour gris autour de la ville si nous avons ses limites administratives ;" #: templates/maposmatic/about.html:87 msgid "" "Renders an index of the streets, based on\n" " OpenStreetMap data and the intersection of the streets with the\n" " squares on the map." -msgstr "" -"Génère un index des rues basé sur les données OpenStreetMap et leur " -"intersection avec les carrés de la carte." +msgstr "Génère un index des rues basé sur les données OpenStreetMap et leur intersection avec les carrés de la carte." #: templates/maposmatic/about.html:93 msgid "" @@ -231,13 +213,7 @@ msgid "" "components is quite complicated, a small web service has been created\n" "on top of it so that end-users can easily generate and use\n" "OpenStreetMap city maps." -msgstr "" -"Le module Python peut être utilisé au travers d'un outil en ligne de " -"commande fourni avec OCitySMap, si bien que chacun peut faire fonctionner sa " -"propre chaîne de rendu de carte de villes. Cependant, l'installation des " -"différents composants étant relativement complexe, un petit service Web a " -"été créé pour permettre aux utilisateurs finaux de générer et d'utiliser " -"facilement des cartes de ville OpenStreetMap." +msgstr "Le module Python peut être utilisé au travers d'un outil en ligne de commande fourni avec OCitySMap, si bien que chacun peut faire fonctionner sa propre chaîne de rendu de carte de villes. Cependant, l'installation des différents composants étant relativement complexe, un petit service Web a été créé pour permettre aux utilisateurs finaux de générer et d'utiliser facilement des cartes de ville OpenStreetMap." #: templates/maposmatic/about.html:100 msgid "" @@ -250,15 +226,7 @@ msgid "" "through the maposmaticd daemon. This daemon does only one\n" "rendering at a time, which is very important because of the CPU and I/O\n" "intensive nature of the map rendering process." -msgstr "" -"Ce service Web a été appelé MapOSMatic, comme map-o-matic mais " -"avec une référence à OpenStreetMap (OSM). Le service Web est écrit en Python " -"en utilisant Django et est " -"chargé de stocker les demandes de rendu et d'afficher le résultat de ces " -"demandes. Le rendu en tant que tel est effectué de manière asynchrone par le " -"démon maposmaticd, de manière à ce qu'un seul rendu soit effectué à " -"un instant donné, ce qui est très important étant donné la nature très " -"intensive en charge processeur et d'entrées-sorties du processus de rendu." +msgstr "Ce service Web a été appelé MapOSMatic, comme map-o-matic mais avec une référence à OpenStreetMap (OSM). Le service Web est écrit en Python en utilisant Django et est chargé de stocker les demandes de rendu et d'afficher le résultat de ces demandes. Le rendu en tant que tel est effectué de manière asynchrone par le démon maposmaticd, de manière à ce qu'un seul rendu soit effectué à un instant donné, ce qui est très important étant donné la nature très intensive en charge processeur et d'entrées-sorties du processus de rendu." #: templates/maposmatic/about.html:110 msgid "Contributing" @@ -270,10 +238,7 @@ msgid "" "MapOSMatic are fully free software, so you're invited to\n" "contribute. Here are the few starting points to help\n" "us:" -msgstr "" -"Comme indiqué ci-dessus, OCitySMap et MapOSMatic sont des " -"Logiciels Libres, vous êtes donc invités à y contribuer. Voici quelques " -"points de départ pour nous aider :" +msgstr "Comme indiqué ci-dessus, OCitySMap et MapOSMatic sont des Logiciels Libres, vous êtes donc invités à y contribuer. Voici quelques points de départ pour nous aider :" #: templates/maposmatic/about.html:119 msgid "" @@ -288,13 +253,11 @@ msgstr "" #: templates/maposmatic/about.html:123 msgid "" "The development\n" +" href=\"http://lists.nongnu.org/mailman/listinfo/maposmatic-dev\">development\n" " mailing-list;" msgstr "" "La liste de " -"diffusion pour le développement (en langue anglaise) ;" +" href=\"http://lists.nongnu.org/mailman/listinfo/maposmatic-dev\">liste de diffusion pour le développement (en langue anglaise) ;" #: templates/maposmatic/about.html:127 msgid "" @@ -305,15 +268,12 @@ msgstr "Le canal IRC #maposmatic sur le réseau Freenode ;" #: templates/maposmatic/about.html:130 msgid "" "The OCitySMap\n" +" href=\"http://git.savannah.gnu.org/cgit/maposmatic/ocitysmap.git\">OCitySMap\n" " Git repository, which can be cloned using git clone\n" " git://git.sv.gnu.org/maposmatic/ocitysmap.git;" msgstr "" "Le dépôt " -"Git OCitySMap, qui peut être cloné via « git clone git://git.sv.gnu." -"org/maposmatic/ocitysmap.git » ;" +" href=\"http://git.savannah.gnu.org/cgit/maposmatic/ocitysmap.git\">dépôt Git OCitySMap, qui peut être cloné via « git clone git://git.sv.gnu.org/maposmatic/ocitysmap.git » ;" #: templates/maposmatic/about.html:135 msgid "" @@ -321,10 +281,7 @@ msgid "" " href=\"http://git.savannah.gnu.org/cgit/maposmatic.git\">MapOSMatic\n" " Git repository, which can be cloned using\n" " git clone git://git.sv.gnu.org/maposmatic.git;" -msgstr "" -"Le dépôt Git " -"MapOSMatic, qui peut être cloné via « git clone git://git.sv.gnu." -"org/maposmatic.git » ;" +msgstr "Le dépôt Git MapOSMatic, qui peut être cloné via « git clone git://git.sv.gnu.org/maposmatic.git » ;" #: templates/maposmatic/about.html:140 msgid "" @@ -349,15 +306,15 @@ msgid "" "This page gives the status of all the rendering\n" "requests received during the last 24 hours, starting from the most\n" "recent one." -msgstr "" -"Cette page donne l'état de toutes les demandes de rendu reçues durant les " -"dernières 24 heures, de la plus récente à la plus ancienne." +msgstr "Cette page donne l'état de toutes les demandes de rendu reçues durant les dernières 24 heures, de la plus récente à la plus ancienne." -#: templates/maposmatic/all_jobs.html:49 templates/maposmatic/all_maps.html:40 +#: templates/maposmatic/all_jobs.html:49 +#: templates/maposmatic/all_maps.html:40 msgid "Title" msgstr "Titre" -#: templates/maposmatic/all_jobs.html:50 templates/maposmatic/all_maps.html:41 +#: templates/maposmatic/all_jobs.html:50 +#: templates/maposmatic/all_maps.html:41 msgid "Location" msgstr "Lieu" @@ -419,11 +376,13 @@ msgid "" "hours." msgstr "Pas de demande de rendu de carte durant les dernières 24 heures." -#: templates/maposmatic/all_maps.html:35 templates/maposmatic/base.html:49 +#: templates/maposmatic/all_maps.html:35 +#: templates/maposmatic/base.html:50 msgid "Maps" msgstr "Cartes" -#: templates/maposmatic/all_maps.html:42 templates/maposmatic/job.html:114 +#: templates/maposmatic/all_maps.html:42 +#: templates/maposmatic/job.html:114 msgid "Thumbnail" msgstr "Miniature" @@ -431,117 +390,101 @@ msgstr "Miniature" msgid "Files" msgstr "Fichiers" -#: templates/maposmatic/all_maps.html:71 templates/maposmatic/job.html:129 +#: templates/maposmatic/all_maps.html:71 +#: templates/maposmatic/job.html:129 msgid "The generated files are no longer available" msgstr "Les fichiers générés ne sont plus disponibles" -#: templates/maposmatic/base.html:43 +#: templates/maposmatic/base.html:44 msgid "Your free city maps!" msgstr "Vos cartes de ville libres !" -#: templates/maposmatic/base.html:48 +#: templates/maposmatic/base.html:49 msgid "Jobs" msgstr "Rendus" -#: templates/maposmatic/base.html:62 +#: templates/maposmatic/base.html:63 msgid "Random map" msgstr "Carte au hasard" -#: templates/maposmatic/base.html:70 +#: templates/maposmatic/base.html:71 msgid "No random map found." msgstr "Aucune carte trouvée." -#: templates/maposmatic/base.html:76 +#: templates/maposmatic/base.html:77 msgid "Contact" msgstr "Contact" -#: templates/maposmatic/base.html:82 +#: templates/maposmatic/base.html:83 msgid "Language:" msgstr "Langue :" -#: templates/maposmatic/index.html:67 +#: templates/maposmatic/index.html:71 msgid "Introduction" msgstr "Introduction" -#: templates/maposmatic/index.html:77 +#: templates/maposmatic/index.html:81 msgid "City Map" msgstr "Carte de la ville" -#: templates/maposmatic/index.html:83 +#: templates/maposmatic/index.html:87 msgid "Streets index" msgstr "Index des rues " -#: templates/maposmatic/index.html:92 +#: templates/maposmatic/index.html:96 msgid "" "MapOSMatic is a free software web service that\n" "allows to generate maps of cities using OpenStreetMap data. A city map\n" "is made of two pages:" -msgstr "" -"MapOSMatic est un service Web en Logiciel Libre qui permet de générer des " -"cartes de villes en utilisant les données OpenStreetMap. La carte d'une " -"ville est constituée de deux pages :" +msgstr "MapOSMatic est un service Web en Logiciel Libre qui permet de générer des cartes de villes en utilisant les données OpenStreetMap. La carte d'une ville est constituée de deux pages :" -#: templates/maposmatic/index.html:97 -msgid "" -"The map itself, splitted in squares allowing to easily look for streets;" -msgstr "" -"la carte elle-même, découpée en carrés pour faciliter la recherche de " -"rues ;" +#: templates/maposmatic/index.html:101 +msgid "The map itself, splitted in squares allowing to easily look for streets;" +msgstr "la carte elle-même, découpée en carrés pour faciliter la recherche de rues ;" -#: templates/maposmatic/index.html:98 +#: templates/maposmatic/index.html:102 msgid "An index of the streets with references to the squares on the map." msgstr "un index des rues référencées selon les carrés de la carte." -#: templates/maposmatic/index.html:101 +#: templates/maposmatic/index.html:105 msgid "" "The generated maps are available in PNG, PDF and\n" "SVG and are ready to be printed. Submit your map generation request\n" "below, wait a few minutes and get your own map!" -msgstr "" -"Les cartes générées sont disponibles en PNG, PDF et SVG et sont prêtes à " -"être imprimées. Soumettez une requête de génération de carte ci-dessous, " -"attendez quelques minutes et vous obtiendrez votre carte !" +msgstr "Les cartes générées sont disponibles en PNG, PDF et SVG et sont prêtes à être imprimées. Soumettez une requête de génération de carte ci-dessous, attendez quelques minutes et vous obtiendrez votre carte !" -#: templates/maposmatic/index.html:105 +#: templates/maposmatic/index.html:109 msgid "" "As the data used to generate maps are coming from\n" " OpenStreetMap, you can freely (under\n" " the terms of\n" " OpenStreetMap license) reuse, sell, modify, ... the generated\n" " maps." -msgstr "" -"Les données utilisées pour la génération des cartes provenant " -"d'OpenStreetMap, vous pouvez librement réutiliser, vendre, modifier, ... les " -"cartes générées (en respectant la licence OpenStreetMap)." +msgstr "Les données utilisées pour la génération des cartes provenant d'OpenStreetMap, vous pouvez librement réutiliser, vendre, modifier, ... les cartes générées (en respectant la licence OpenStreetMap)." -#: templates/maposmatic/index.html:111 +#: templates/maposmatic/index.html:115 msgid "More details" msgstr "Plus d'informations" -#: templates/maposmatic/index.html:113 +#: templates/maposmatic/index.html:117 msgid "Generate your own map" msgstr "Générer votre carte" -#: templates/maposmatic/index.html:115 +#: templates/maposmatic/index.html:119 msgid "" "Right now MapOSMatic is only available for the\n" "metropolitan France area. We need contributors to translate and adapt\n" "the few parts of MapOSMatic that are country\n" "specific." -msgstr "" -"Pour le moment, MapOSMatic est uniquement disponible pour la France " -"métropolitaine. Nous avons besoin de contributeurs pour traduire et adapter " -"les quelques parties de MapOSMatic qui sont spécifiques à un pays " -"donné." +msgstr "Pour le moment, MapOSMatic est uniquement disponible pour la France métropolitaine. Nous avons besoin de contributeurs pour traduire et adapter les quelques parties de MapOSMatic qui sont spécifiques à un pays donné." -#: templates/maposmatic/index.html:120 +#: templates/maposmatic/index.html:124 msgid "" "To select the city to be rendered, two modes are\n" "available:" msgstr "Pour sélectionner la ville, deux modes sont disponibles :" -#: templates/maposmatic/index.html:125 +#: templates/maposmatic/index.html:129 msgid "" "Using an administrative boundary. It allows to get a\n" " map with precise boundaries of the city, but they are for the moment\n" @@ -551,48 +494,36 @@ msgid "" " difference is allowed). Working examples\n" " are: Chavagne, Bénodet or\n" " Sanguinet." -msgstr "" -"En utilisant une limite administrative. Ces limites permettent d'avoir une " -"carte avec les limites précises de la ville, mais ces limites ne sont pour " -"le moment disponibles que pour une partie des villes de France " -"métropolitaine (environ un tiers). Le nom de la ville donné ici doit " -"correspondre exactement à celui de la base de données OpenStreetMap (aucune " -"différence d'accent ou de majuscule n'est possible). Quelques exemples " -"fonctionnels sont : Chavagne, Bédonet et " -"Sanguinet." - -#: templates/maposmatic/index.html:134 +msgstr "En utilisant une limite administrative. Ces limites permettent d'avoir une carte avec les limites précises de la ville, mais ces limites ne sont pour le moment disponibles que pour une partie des villes de France métropolitaine (environ un tiers). Le nom de la ville donné ici doit correspondre exactement à celui de la base de données OpenStreetMap (aucune différence d'accent ou de majuscule n'est possible). Quelques exemples fonctionnels sont : Chavagne, Bédonet et Sanguinet." + +#: templates/maposmatic/index.html:138 msgid "" "Using a traditional bounding\n" " box." msgstr "En utilisant une bounding box traditionnelle." -#: templates/maposmatic/index.html:139 +#: templates/maposmatic/index.html:143 msgid "" "Once the rendering is submitted, you will be brought\n" "to a page giving the status of your rendering request. As soon as the\n" "rendering is completed (that might take some time depending on the queue\n" "length), this page will contain links to the generated\n" "map." -msgstr "" -"Une fois que le rendu a été soumis, vous allez être redirigé vers une page " -"donnant l'état de votre demande de rendu. Dès que le rendu est terminé (ce " -"qui peut prendre un peu de temps en fonction de la longueur de la file " -"d'attente), cette page contiendra des liens vers la carte générée." +msgstr "Une fois que le rendu a été soumis, vous allez être redirigé vers une page donnant l'état de votre demande de rendu. Dès que le rendu est terminé (ce qui peut prendre un peu de temps en fonction de la longueur de la file d'attente), cette page contiendra des liens vers la carte générée." -#: templates/maposmatic/index.html:150 +#: templates/maposmatic/index.html:154 msgid "Area selection mode" msgstr "Mode de sélection" -#: templates/maposmatic/index.html:156 +#: templates/maposmatic/index.html:160 msgid "City name" msgstr "Nom de la ville" -#: templates/maposmatic/index.html:163 +#: templates/maposmatic/index.html:167 msgid "Title of the map" msgstr "Titre de la carte" -#: templates/maposmatic/index.html:181 +#: templates/maposmatic/index.html:183 msgid "Generate" msgstr "Générer..." @@ -629,7 +560,8 @@ msgstr "Date de soumission" msgid "Start of rendering time" msgstr "Date de début du rendu" -#: templates/maposmatic/job.html:82 templates/maposmatic/job.html.py:95 +#: templates/maposmatic/job.html:82 +#: templates/maposmatic/job.html.py:95 msgid "Rendering not started yet" msgstr "Rendu en attente" @@ -655,6 +587,6 @@ msgstr "Fichiers générés" #~ msgid "Links:" #~ msgstr "Liens :" - #~ msgid "Design by" #~ msgstr "Style :" + diff --git a/www/maposmatic/views.py b/www/maposmatic/views.py index 9666a13..2682c6a 100644 --- a/www/maposmatic/views.py +++ b/www/maposmatic/views.py @@ -36,6 +36,7 @@ import datetime import psycopg2 import www.settings from www.maposmatic.widgets import AreaField, PointField +from ocitysmap.coords import BoundingBox # Test if a given city has its administrative boundaries inside the # OpenStreetMap database. We don't go through the Django ORM but @@ -104,6 +105,15 @@ class MapRenderingJobForm(ModelForm): self._errors[f] = ErrorList([msg]) del cleaned_data[f] + bbox = BoundingBox(cleaned_data.get("lat_upper_left"), + cleaned_data.get("lon_upper_left"), + cleaned_data.get("lat_bottom_right"), + cleaned_data.get("lon_bottom_right")) + (metric_size_lat, metric_size_long) = bbox.spheric_sizes() + if metric_size_lat > 20000 or metric_size_long > 20000: + msg = _(u"Bounding Box too big") + self._errors['bbox'] = ErrorList([msg]) + return cleaned_data def index(request): diff --git a/www/templates/maposmatic/index.html b/www/templates/maposmatic/index.html index 0f19122..c0af6e3 100644 --- a/www/templates/maposmatic/index.html +++ b/www/templates/maposmatic/index.html @@ -174,6 +174,7 @@ map.{%endblocktrans%}

{% trans "Bounding box" %} {{ form.bbox }} + {{ form.bbox.errors }} -- 1.6.0.4