diff options
author | Étienne Loks <etienne.loks@peacefrogs.net> | 2012-08-20 21:06:41 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@peacefrogs.net> | 2012-08-20 21:06:41 +0200 |
commit | 98f5da135ccfe9ede29f137f1470024ad296a7bf (patch) | |
tree | 8077f59d387ff1cc286409f7df86c82533ab2e18 | |
parent | e366e99c94c0aee429a1fc52f2c9b0b4bee1ef98 (diff) | |
download | Chimère-98f5da135ccfe9ede29f137f1470024ad296a7bf.tar.bz2 Chimère-98f5da135ccfe9ede29f137f1470024ad296a7bf.zip |
Add personal information in edit form
-rw-r--r-- | chimere/locale/fr/LC_MESSAGES/django.po | 264 | ||||
-rw-r--r-- | chimere/migrations/0026_auto__add_field_marker_submiter_name__add_field_route_submiter_name.py | 224 | ||||
-rw-r--r-- | chimere/models.py | 4 | ||||
-rw-r--r-- | chimere/templates/chimere/edit.html | 25 | ||||
-rw-r--r-- | chimere/views.py | 6 |
5 files changed, 403 insertions, 120 deletions
diff --git a/chimere/locale/fr/LC_MESSAGES/django.po b/chimere/locale/fr/LC_MESSAGES/django.po index 53cf4d4..5d4a250 100644 --- a/chimere/locale/fr/LC_MESSAGES/django.po +++ b/chimere/locale/fr/LC_MESSAGES/django.po @@ -7,18 +7,18 @@ msgid "" msgstr "" "Project-Id-Version: 0.2\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-08-02 20:40+0200\n" +"POT-Creation-Date: 2012-08-20 21:03+0200\n" "PO-Revision-Date: 2010-03-20 20:00+0100\n" "Last-Translator: Étienne Loks <etienne.loks@peacefrogs.net>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: __init__.py:8 models.py:490 +#: __init__.py:8 models.py:492 msgid "Multimedia files" msgstr "Fichiers multimedias" -#: __init__.py:9 models.py:539 +#: __init__.py:9 models.py:541 msgid "Picture files" msgstr "Fichiers d'image" @@ -107,31 +107,31 @@ msgstr "Courriel (optionnel) " msgid "Object" msgstr "Objet" -#: forms.py:147 +#: forms.py:155 msgid "End date has been set with no start date" msgstr "Une date de fin a été donnée sans date de début" -#: forms.py:358 +#: forms.py:369 msgid "File" msgstr "Fichier" -#: forms.py:364 +#: forms.py:375 msgid "Bad file format: this must be a GPX or KML file" msgstr "Mauvais format de fichier : KML et GPX sont supportés" -#: forms.py:369 models.py:48 models.py:101 models.py:122 models.py:135 -#: models.py:149 models.py:232 models.py:437 models.py:480 models.py:524 -#: models.py:555 models.py:792 models.py:804 models.py:889 +#: forms.py:380 models.py:48 models.py:101 models.py:122 models.py:135 +#: models.py:149 models.py:232 models.py:439 models.py:482 models.py:526 +#: models.py:557 models.py:794 models.py:806 models.py:891 #: templates/chimere/edit.html:39 templates/chimere/edit_route.html:36 msgid "Name" msgstr "Nom" -#: forms.py:378 models.py:841 +#: forms.py:389 models.py:843 msgid "Area" msgstr "Zone" -#: models.py:49 models.py:123 models.py:150 models.py:241 models.py:441 -#: models.py:810 models.py:891 +#: models.py:49 models.py:123 models.py:150 models.py:243 models.py:443 +#: models.py:812 models.py:893 msgid "Available" msgstr "Disponible" @@ -159,8 +159,8 @@ msgstr "Thème de couleur" msgid "Code" msgstr "Code" -#: models.py:111 models.py:124 models.py:154 models.py:482 models.py:531 -#: models.py:809 models.py:878 models.py:890 +#: models.py:111 models.py:124 models.py:154 models.py:484 models.py:533 +#: models.py:811 models.py:880 models.py:892 msgid "Order" msgstr "Ordre" @@ -172,15 +172,15 @@ msgstr "Couleur" msgid "Category" msgstr "Catégorie" -#: models.py:136 models.py:433 models.py:525 models.py:620 +#: models.py:136 models.py:435 models.py:527 models.py:622 msgid "Image" msgstr "Image" -#: models.py:138 models.py:527 models.py:622 +#: models.py:138 models.py:529 models.py:624 msgid "Height" msgstr "Hauteur" -#: models.py:139 models.py:528 models.py:623 +#: models.py:139 models.py:530 models.py:625 msgid "Width" msgstr "Largeur" @@ -192,7 +192,7 @@ msgstr "Icône" msgid "Marker" msgstr "Point d'intérêt" -#: models.py:156 models.py:616 models.py:631 +#: models.py:156 models.py:618 models.py:633 #: templates/chimere/edit_route.html:27 msgid "Route" msgstr "Trajet" @@ -217,7 +217,7 @@ msgstr "Sous-catégories" msgid "Importer type" msgstr "Type d'import" -#: models.py:213 models.py:252 +#: models.py:213 models.py:254 msgid "Source" msgstr "Source" @@ -250,210 +250,214 @@ msgid "Submitter session key" msgstr "Clé de session du demandeur" #: models.py:236 +msgid "Submitter name or nickname" +msgstr "Nom ou pseudo du demandeur" + +#: models.py:238 msgid "Submitter email" msgstr "Courriel du demandeur" -#: models.py:238 +#: models.py:240 msgid "Submitter comment" msgstr "Commentaire du demandeur" -#: models.py:240 +#: models.py:242 msgid "Submited" msgstr "Soumis" -#: models.py:242 +#: models.py:244 msgid "Modified" msgstr "Modifié" -#: models.py:243 +#: models.py:245 msgid "Disabled" msgstr "Désactivé" -#: models.py:244 +#: models.py:246 msgid "Imported" msgstr "Importé" -#: models.py:245 +#: models.py:247 msgid "Excluded" msgstr "Exclu" -#: models.py:247 +#: models.py:249 msgid "Status" msgstr "État" -#: models.py:248 +#: models.py:250 msgid "Import key" msgstr "Clé d'import" -#: models.py:250 +#: models.py:252 msgid "Import version" msgstr "Version de l'import" -#: models.py:255 templates/chimere/edit.html:56 +#: models.py:257 templates/chimere/edit.html:56 #: templates/chimere/edit_route.html:52 msgid "Start date" msgstr "Date de début" -#: models.py:256 +#: models.py:258 msgid "Not mandatory. Set it for dated item such as event. Format YYYY-MM-DD" msgstr "" "Optionnel. Précisez ce champ pour les éléments datés comme un événement. " "Format du champ : AAAA-MM-JJ" -#: models.py:258 templates/chimere/edit.html:62 +#: models.py:260 templates/chimere/edit.html:62 #: templates/chimere/edit_route.html:58 msgid "End date" msgstr "Date de fin" -#: models.py:259 +#: models.py:261 msgid "" "Not mandatory. Set it only if you have a multi-day event. Format YYYY-MM-DD" msgstr "" "Optionnel. Précisez ce champ seulement pour des événements durant plusieurs " "jours. Format du champ : AAAA-MM-JJ" -#: models.py:291 +#: models.py:293 msgid "Reference marker" msgstr "Point d'intérêt de référence" -#: models.py:292 +#: models.py:294 msgid "Localisation" msgstr "Localisation" -#: models.py:294 +#: models.py:296 msgid "Available Date" msgstr "Date de mise en disponibilité" -#: models.py:298 templates/chimere/edit.html:49 +#: models.py:300 templates/chimere/edit.html:49 #: templates/chimere/edit_route.html:46 msgid "Description" msgstr "Description" -#: models.py:337 models.py:913 +#: models.py:339 models.py:915 msgid "Point of interest" msgstr "Point d'intérêt" -#: models.py:431 +#: models.py:433 msgid "Audio" msgstr "Audio" -#: models.py:432 +#: models.py:434 msgid "Video" msgstr "Vidéo" -#: models.py:434 +#: models.py:436 msgid "Other" msgstr "Autre" -#: models.py:435 +#: models.py:437 msgid "Media type" msgstr "Type de media" -#: models.py:438 +#: models.py:440 msgid "Mime type" msgstr "Type mime" -#: models.py:440 +#: models.py:442 msgid "Inside an iframe" msgstr "À l'intérieur d'un iframe" -#: models.py:444 +#: models.py:446 msgid "Multimedia type" msgstr "Type de multimedia" -#: models.py:445 +#: models.py:447 msgid "Multimedia types" msgstr "Types de multimedia" -#: models.py:481 +#: models.py:483 msgid "Url" msgstr "Url" -#: models.py:484 models.py:529 +#: models.py:486 models.py:531 msgid "Display inside the description?" msgstr "Apparaît dans la description ?" -#: models.py:489 +#: models.py:491 msgid "Multimedia file" msgstr "Fichier multimedia" -#: models.py:538 +#: models.py:540 msgid "Picture file" msgstr "Fichier d'image" -#: models.py:556 +#: models.py:558 msgid "Raw file (gpx or kml)" msgstr "Fichier brut (gpx ou kml)" -#: models.py:557 +#: models.py:559 msgid "Simplified file" msgstr "Fichier simplifié" -#: models.py:559 +#: models.py:561 msgid "KML" msgstr "KML" -#: models.py:559 +#: models.py:561 msgid "GPX" msgstr "GPX" -#: models.py:564 +#: models.py:566 msgid "Route file" msgstr "Fichier de trajet" -#: models.py:565 +#: models.py:567 msgid "Route files" msgstr "Fichiers de trajet" -#: models.py:615 +#: models.py:617 msgid "Reference route" msgstr "Trajet de référence" -#: models.py:619 +#: models.py:621 msgid "Associated file" msgstr "Fichier associé" -#: models.py:793 +#: models.py:795 msgid "Layer code" msgstr "Code pour la couche" -#: models.py:799 +#: models.py:801 msgid "Layer" msgstr "Couche" -#: models.py:805 +#: models.py:807 msgid "Area urn" msgstr "Urn de la zone" -#: models.py:807 templates/chimere/blocks/welcome.html:3 +#: models.py:809 templates/chimere/blocks/welcome.html:3 msgid "Welcome message" msgstr "Message d'accueil" -#: models.py:811 +#: models.py:813 msgid "Upper left corner" msgstr "Coin en haut à gauche" -#: models.py:813 +#: models.py:815 msgid "Lower right corner" msgstr "Coin en bas à droite" -#: models.py:815 +#: models.py:817 msgid "Default area" msgstr "Zone par défaut" -#: models.py:816 +#: models.py:818 msgid "Only one area is set by default" msgstr "Seule une zone est définie par défaut" -#: models.py:820 +#: models.py:822 msgid "Sub-categories checked by default" msgstr "Sous-catégories cochées par défaut" -#: models.py:822 +#: models.py:824 msgid "Sub-categories dynamicaly displayed" msgstr "Sous-categories affichées dynamiquement" -#: models.py:823 +#: models.py:825 msgid "" "If checked, categories are only displayed in the menu if they are available " "on the current extent." @@ -461,145 +465,145 @@ msgstr "" "Si coché, les catégories sont disponibles sur le menu seulement si elles " "apparaissent sur la zone affichée." -#: models.py:827 +#: models.py:829 msgid "Restricted to theses sub-categories" msgstr "Restreindre à ces sous-categories" -#: models.py:828 +#: models.py:830 msgid "If no sub-category is set all sub-categories are available" msgstr "" "Si aucune sous-catégorie n'est définie toutes les sous-catégories sont " "disponibles" -#: models.py:830 +#: models.py:832 msgid "Link to an external CSS" msgstr "Lien vers une feuille de style externe" -#: models.py:832 +#: models.py:834 msgid "Restrict to the area extent" msgstr "Restreindre à l'étendue de la zone" -#: models.py:879 +#: models.py:881 msgid "Default layer" msgstr "Couche par défaut" -#: models.py:883 models.py:884 +#: models.py:885 models.py:886 msgid "Layers" msgstr "Couches" -#: models.py:892 +#: models.py:894 msgid "Text" msgstr "Texte" -#: models.py:893 +#: models.py:895 msgid "Long text" msgstr "Texte long" -#: models.py:894 +#: models.py:896 msgid "Password" msgstr "Mot de passe" -#: models.py:898 +#: models.py:900 msgid "Type" msgstr "Type" -#: models.py:903 models.py:915 +#: models.py:905 models.py:917 msgid "Property model" msgstr "Modèle de propriété" -#: models.py:916 +#: models.py:918 msgid "Value" msgstr "Valeur" -#: models.py:920 +#: models.py:922 msgid "Property" msgstr "Propriété" -#: tasks.py:47 +#: tasks.py:61 msgid "Import pending" msgstr "Import en attente" -#: tasks.py:48 +#: tasks.py:62 msgid "Import processing" msgstr "Import en cours" -#: tasks.py:49 +#: tasks.py:63 msgid "Import successfuly done" msgstr "Import fait avec succès" -#: tasks.py:50 +#: tasks.py:64 #, python-format msgid " %(new)d new item(s), %(updated)d updated item(s)" msgstr " %(new)d nouveau(x) élément(s), %(updated)d élément(s) mis à jour" -#: tasks.py:51 +#: tasks.py:65 msgid "Import failed" msgstr "Import échoué" -#: tasks.py:52 +#: tasks.py:66 msgid "Import canceled" msgstr "Import annulé" -#: tasks.py:53 +#: tasks.py:67 msgid "Export pending" msgstr "Export en attente" -#: tasks.py:54 +#: tasks.py:68 msgid "Export processing" msgstr "Export en cours" -#: tasks.py:55 +#: tasks.py:69 msgid "Export successfuly done" msgstr "Export réalisé avec succès" -#: tasks.py:56 +#: tasks.py:70 #, python-format msgid " %(updated)d updated item(s)" msgstr " %(updated)d éléments mis à jour" -#: tasks.py:57 +#: tasks.py:71 msgid "Export failed" msgstr "Export échoué" -#: tasks.py:58 +#: tasks.py:72 msgid "Export canceled" msgstr "Export annulé" -#: utils.py:104 utils.py:152 +#: utils.py:113 utils.py:161 msgid "Bad zip file" msgstr "Mauvais fichier zip" -#: utils.py:155 +#: utils.py:164 msgid "Missing file(s) inside the zip file" msgstr "Fichier(s) manquant(s) dans l'archive zip" -#: utils.py:284 +#: utils.py:293 msgid "Error while reading the data source." msgstr "Erreur lors de la lecture de la source." -#: utils.py:319 +#: utils.py:328 msgid "Type of geographic item of this shapefile is not managed by Chimère." msgstr "" "Les types des éléments géographiques de ce fichier Shapefile ne sont pas " "gérés par Chimère." -#: utils.py:400 +#: utils.py:385 msgid "Could not create file!" msgstr "Ne peut pas créer le fichier !" -#: utils.py:411 +#: utils.py:396 msgid "Failed to create field" msgstr "Ne peut pas créer un champ" -#: utils.py:482 +#: utils.py:467 msgid "Nothing to import" msgstr "Rien à importer" -#: utils.py:562 +#: utils.py:547 msgid "New items imported - validate them before exporting" msgstr "Nouveaux éléments importés - valider ceux-ci avant d'exporter" -#: utils.py:564 +#: utils.py:549 msgid "" "There are items from a former import not yet validated - validate them " "before exporting" @@ -607,23 +611,23 @@ msgstr "" "Il y a des éléments d'un import précédent pas encore validé - Validez les " "avant d'exporter" -#: utils.py:574 +#: utils.py:559 msgid "Bad param" msgstr "Mauvais paramètre" -#: views.py:223 +#: views.py:229 msgid "There are missing field(s) and/or errors in the submited form." msgstr "Il y a des champs manquants ou des erreurs dans ce formulaire." -#: views.py:302 +#: views.py:308 msgid "Bad file. Please check it with an external software." msgstr "Fichier incohérent. Merci de le vérifier avec un logiciel externe." -#: views.py:424 +#: views.py:430 msgid "Comments/request on the map" msgstr "Commentaires/requètes sur la carte" -#: views.py:427 +#: views.py:433 msgid "" "Thank you for your contribution. It will be taken into account. If you have " "left your email you may be contacted soon for more details." @@ -632,15 +636,15 @@ msgstr "" "laissé votre courriel vous serez peut-être contacté bientôt pour plus de " "détails." -#: views.py:431 +#: views.py:437 msgid "Temporary error. Renew your message later." msgstr "Erreur temporaire. Réenvoyez votre message plus tard." -#: views.py:562 +#: views.py:568 msgid "No category available in this area." msgstr "Pas de catégorie disponible sur cette zone." -#: views.py:669 +#: views.py:675 msgid "Incorrect choice in the list" msgstr "Choix incorrect dans la liste" @@ -790,17 +794,13 @@ msgstr "Partager sur" msgid "Share" msgstr "Partager" -#: templates/chimere/detail.html:37 -msgid "Submit a modification" -msgstr "Proposer une modification" - #: templates/chimere/edit.html:20 msgid "Error" msgstr "Erreur" #: templates/chimere/edit.html:24 -msgid "Add/modify a site" -msgstr "Ajouter ou modifier un site" +msgid "Add/modify a point of interest" +msgstr "Ajout d'un point d'intérêt" #: templates/chimere/edit.html:30 msgid "Point" @@ -818,7 +818,31 @@ msgstr "indique un champ obligatoire" msgid "Categories" msgstr "Catégories" -#: templates/chimere/edit.html:86 templates/chimere/edit_route.html:77 +#: templates/chimere/edit.html:88 +msgid "Personal information" +msgstr "Informations personnelles" + +#: templates/chimere/edit.html:90 +msgid "" +"This fields are not mandatory. If you provided them they not will be made " +"public and they will only used to join you for this project." +msgstr "Ces champs ne sont pas obligatoires. Si vous les renseignez, ils " +"ne seront pas publiés et ne seront utilisés seulement pour vous joindre " +"dans le cadre de ce projet." + +#: templates/chimere/edit.html:93 +msgid "Your name or nickname" +msgstr "Votre nom ou pseudo" + +#: templates/chimere/edit.html:98 +msgid "Your email" +msgstr "Votre courriel" + +#: templates/chimere/edit.html:103 +msgid "Comments about your submission" +msgstr "Commentaires au sujet de votre proposition" + +#: templates/chimere/edit.html:108 templates/chimere/edit_route.html:77 msgid "Propose" msgstr "Proposez" @@ -947,6 +971,12 @@ msgstr "Choisir une zone pré-définie" msgid "Or select the area by zooming and panning this map" msgstr "Ou sélectionner une zone en zoomant et en se déplaçant sur cette carte" +#~ msgid "Submit a modification" +#~ msgstr "Proposer une modification" + +#~ msgid "Add/modify a site" +#~ msgstr "Ajouter ou modifier un site" + #~ msgid "Categorys" #~ msgstr "Catégories" diff --git a/chimere/migrations/0026_auto__add_field_marker_submiter_name__add_field_route_submiter_name.py b/chimere/migrations/0026_auto__add_field_marker_submiter_name__add_field_route_submiter_name.py new file mode 100644 index 0000000..9965ec1 --- /dev/null +++ b/chimere/migrations/0026_auto__add_field_marker_submiter_name__add_field_route_submiter_name.py @@ -0,0 +1,224 @@ +# -*- coding: utf-8 -*- +import datetime +from south.db import db +from south.v2 import SchemaMigration +from django.db import models + + +class Migration(SchemaMigration): + + def forwards(self, orm): + # Adding field 'Marker.submiter_name' + db.add_column('chimere_marker', 'submiter_name', + self.gf('django.db.models.fields.CharField')(max_length=40, null=True, blank=True), + keep_default=False) + + # Adding field 'Route.submiter_name' + db.add_column('chimere_route', 'submiter_name', + self.gf('django.db.models.fields.CharField')(max_length=40, null=True, blank=True), + keep_default=False) + + + def backwards(self, orm): + # Deleting field 'Marker.submiter_name' + db.delete_column('chimere_marker', 'submiter_name') + + # Deleting field 'Route.submiter_name' + db.delete_column('chimere_route', 'submiter_name') + + + models = { + 'chimere.area': { + 'Meta': {'ordering': "('order', 'name')", 'object_name': 'Area'}, + 'available': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'default': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}), + 'default_subcategories': ('chimere.widgets.SelectMultipleField', [], {'to': "orm['chimere.SubCategory']", 'symmetrical': 'False', 'blank': 'True'}), + 'dynamic_categories': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}), + 'external_css': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'layers': ('chimere.widgets.SelectMultipleField', [], {'symmetrical': 'False', 'related_name': "'areas'", 'blank': 'True', 'through': "orm['chimere.AreaLayers']", 'to': "orm['chimere.Layer']"}), + 'lower_right_corner': ('django.contrib.gis.db.models.fields.PointField', [], {'default': "'POINT(0 0)'"}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '150'}), + 'order': ('django.db.models.fields.IntegerField', [], {}), + 'restrict_to_extent': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'subcategories': ('chimere.widgets.SelectMultipleField', [], {'symmetrical': 'False', 'related_name': "'areas'", 'blank': 'True', 'db_table': "'chimere_subcategory_areas'", 'to': "orm['chimere.SubCategory']"}), + 'upper_left_corner': ('django.contrib.gis.db.models.fields.PointField', [], {'default': "'POINT(0 0)'"}), + 'urn': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '50', 'blank': 'True'}), + 'welcome_message': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}) + }, + 'chimere.arealayers': { + 'Meta': {'ordering': "('order',)", 'object_name': 'AreaLayers'}, + 'area': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['chimere.Area']"}), + 'default': ('django.db.models.fields.NullBooleanField', [], {'null': 'True', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'layer': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['chimere.Layer']"}), + 'order': ('django.db.models.fields.IntegerField', [], {}) + }, + 'chimere.category': { + 'Meta': {'ordering': "['order']", 'object_name': 'Category'}, + 'available': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '150'}), + 'order': ('django.db.models.fields.IntegerField', [], {}) + }, + 'chimere.color': { + 'Meta': {'ordering': "['order']", 'object_name': 'Color'}, + 'code': ('django.db.models.fields.CharField', [], {'max_length': '6'}), + 'color_theme': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['chimere.ColorTheme']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'order': ('django.db.models.fields.IntegerField', [], {}) + }, + 'chimere.colortheme': { + 'Meta': {'object_name': 'ColorTheme'}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '150'}) + }, + 'chimere.icon': { + 'Meta': {'object_name': 'Icon'}, + 'height': ('django.db.models.fields.IntegerField', [], {}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '100'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '150'}), + 'width': ('django.db.models.fields.IntegerField', [], {}) + }, + 'chimere.importer': { + 'Meta': {'object_name': 'Importer'}, + 'categories': ('chimere.widgets.SelectMultipleField', [], {'to': "orm['chimere.SubCategory']", 'symmetrical': 'False'}), + 'filtr': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'importer_type': ('django.db.models.fields.CharField', [], {'max_length': '4'}), + 'source': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}), + 'srid': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}), + 'state': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}), + 'zipped': ('django.db.models.fields.BooleanField', [], {'default': 'False'}) + }, + 'chimere.layer': { + 'Meta': {'object_name': 'Layer'}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'layer_code': ('django.db.models.fields.TextField', [], {'max_length': '300'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '150'}) + }, + 'chimere.marker': { + 'Meta': {'ordering': "('status', 'name')", 'object_name': 'Marker'}, + 'available_date': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}), + 'categories': ('chimere.widgets.SelectMultipleField', [], {'to': "orm['chimere.SubCategory']", 'symmetrical': 'False'}), + 'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}), + 'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'import_key': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}), + 'import_source': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}), + 'import_version': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '150'}), + 'point': ('chimere.widgets.PointField', [], {}), + 'ref_item': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'submited_marker'", 'null': 'True', 'to': "orm['chimere.Marker']"}), + 'route': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'associated_marker'", 'null': 'True', 'to': "orm['chimere.Route']"}), + 'start_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), + 'status': ('django.db.models.fields.CharField', [], {'max_length': '1'}), + 'submiter_comment': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}), + 'submiter_email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'null': 'True', 'blank': 'True'}), + 'submiter_name': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}), + 'submiter_session_key': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}) + }, + 'chimere.multimediafile': { + 'Meta': {'object_name': 'MultimediaFile'}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'marker': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'multimedia_files'", 'to': "orm['chimere.Marker']"}), + 'miniature': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'multimedia_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['chimere.MultimediaType']"}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '150'}), + 'order': ('django.db.models.fields.IntegerField', [], {'default': '1'}), + 'url': ('django.db.models.fields.URLField', [], {'max_length': '200'}) + }, + 'chimere.multimediatype': { + 'Meta': {'object_name': 'MultimediaType'}, + 'available': ('django.db.models.fields.BooleanField', [], {'default': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'iframe': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'media_type': ('django.db.models.fields.CharField', [], {'max_length': '1'}), + 'mime_type': ('django.db.models.fields.CharField', [], {'max_length': '50', 'null': 'True', 'blank': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '150'}) + }, + 'chimere.news': { + 'Meta': {'object_name': 'News'}, + 'available': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'content': ('django.db.models.fields.TextField', [], {}), + 'date': ('django.db.models.fields.DateField', [], {'auto_now_add': 'True', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'title': ('django.db.models.fields.CharField', [], {'max_length': '150'}) + }, + 'chimere.picturefile': { + 'Meta': {'object_name': 'PictureFile'}, + 'height': ('django.db.models.fields.IntegerField', [], {}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'marker': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'pictures'", 'to': "orm['chimere.Marker']"}), + 'miniature': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '150'}), + 'order': ('django.db.models.fields.IntegerField', [], {'default': '1'}), + 'picture': ('django.db.models.fields.files.ImageField', [], {'max_length': '100'}), + 'width': ('django.db.models.fields.IntegerField', [], {}) + }, + 'chimere.property': { + 'Meta': {'object_name': 'Property'}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'marker': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['chimere.Marker']"}), + 'propertymodel': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['chimere.PropertyModel']"}), + 'value': ('django.db.models.fields.TextField', [], {}) + }, + 'chimere.propertymodel': { + 'Meta': {'ordering': "('order',)", 'object_name': 'PropertyModel'}, + 'available': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '150'}), + 'order': ('django.db.models.fields.IntegerField', [], {}), + 'type': ('django.db.models.fields.CharField', [], {'max_length': '1'}) + }, + 'chimere.route': { + 'Meta': {'ordering': "('status', 'name')", 'object_name': 'Route'}, + 'associated_file': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['chimere.RouteFile']", 'null': 'True', 'blank': 'True'}), + 'categories': ('chimere.widgets.SelectMultipleField', [], {'to': "orm['chimere.SubCategory']", 'symmetrical': 'False'}), + 'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), + 'height': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'import_key': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}), + 'import_source': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}), + 'import_version': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '150'}), + 'picture': ('django.db.models.fields.files.ImageField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}), + 'ref_item': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'submited_route'", 'null': 'True', 'to': "orm['chimere.Route']"}), + 'route': ('chimere.widgets.RouteField', [], {}), + 'start_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}), + 'status': ('django.db.models.fields.CharField', [], {'max_length': '1'}), + 'submiter_comment': ('django.db.models.fields.CharField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}), + 'submiter_email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'null': 'True', 'blank': 'True'}), + 'submiter_name': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}), + 'submiter_session_key': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}), + 'width': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}) + }, + 'chimere.routefile': { + 'Meta': {'ordering': "('name',)", 'object_name': 'RouteFile'}, + 'file_type': ('django.db.models.fields.CharField', [], {'max_length': '1'}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '150'}), + 'raw_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}), + 'simplified_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}) + }, + 'chimere.subcategory': { + 'Meta': {'ordering': "['category', 'order']", 'object_name': 'SubCategory'}, + 'available': ('django.db.models.fields.BooleanField', [], {'default': 'False'}), + 'category': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['chimere.Category']"}), + 'color_theme': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['chimere.ColorTheme']", 'null': 'True', 'blank': 'True'}), + 'icon': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['chimere.Icon']"}), + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'item_type': ('django.db.models.fields.CharField', [], {'max_length': '1'}), + 'name': ('django.db.models.fields.CharField', [], {'max_length': '150'}), + 'order': ('django.db.models.fields.IntegerField', [], {}) + }, + 'chimere.tinyurl': { + 'Meta': {'object_name': 'TinyUrl'}, + 'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}), + 'parameters': ('django.db.models.fields.CharField', [], {'max_length': '500'}) + } + } + + complete_apps = ['chimere']
\ No newline at end of file diff --git a/chimere/models.py b/chimere/models.py index 2454c86..44265eb 100644 --- a/chimere/models.py +++ b/chimere/models.py @@ -233,9 +233,11 @@ class GeographicItem(models.Model): categories = SelectMultipleField(SubCategory) submiter_session_key = models.CharField(_(u"Submitter session key"), blank=True, null=True, max_length=40) + submiter_name = models.CharField(_(u"Submitter name or nickname"), + blank=True, null=True, max_length=40) submiter_email = models.EmailField(_(u"Submitter email"), blank=True, null=True) - submiter_comment = models.CharField(_(u"Submitter comment"), max_length=200, + submiter_comment = models.TextField(_(u"Submitter comment"), max_length=200, blank=True, null=True) STATUS = (('S', _(u'Submited')), ('A', _(u'Available')), diff --git a/chimere/templates/chimere/edit.html b/chimere/templates/chimere/edit.html index 5170798..bdd8b99 100644 --- a/chimere/templates/chimere/edit.html +++ b/chimere/templates/chimere/edit.html @@ -21,7 +21,7 @@ <p>{{ error_message }}</p> {% endif %}</fieldset> <fieldset class='edit'> - <legend>{% trans "Add/modify a site" %}</legend> + <legend>{% trans "Add/modify a point of interest" %}</legend> <form enctype="multipart/form-data" method='post' action='.'> {% csrf_token %} <div class='rightWrapper'> @@ -83,8 +83,29 @@ {% inline_formset "Multimedia files" formset_multi %} {% inline_formset "Picture files" formset_picture %} - <p><input type='submit' onclick='saveExtent();' value="{% trans 'Propose'%}"/></p> </div> + <div class='personalform'> + <h3>{% trans "Personal information"%}</h3> + <div class='warning'> + {% trans "This fields are not mandatory. If you provided them they not will be made public and they will only used to join you for this project."%} + </div> + <div class="fieldWrapper"> + <label for="id_submiter_name">{% trans "Your name or nickname"%}</label> + {% if form.submiter_name.errors %}<div class='errors'>{{ form.submiter_name.errors }}</div>{% endif %} + {{ form.submiter_name }} + </div> + <div class="fieldWrapper"> + <label for="id_submiter_email">{% trans "Your email"%}</label> + {% if form.submiter_email.errors %}<div class='errors'>{{ form.submiter_email.errors }}</div>{% endif %} + {{ form.submiter_email }} + </div> + <div class="fieldWrapper"> + <label for="id_submiter_comment">{% trans "Comments about your submission"%}</label> + {% if form.submiter_comment.errors %}<div class='errors'>{{ form.submiter_comment.errors }}</div>{% endif %} + {{ form.submiter_comment }} + </div> + </div> + <p><input type='submit' onclick='saveExtent();' value="{% trans 'Propose'%}"/></p> </form> </fieldset> </div> diff --git a/chimere/views.py b/chimere/views.py index 824d912..3a59d3a 100644 --- a/chimere/views.py +++ b/chimere/views.py @@ -166,6 +166,12 @@ def get_edit_page(redirect_url, item_cls, item_form): init_multi = init_item.get_init_multi() if init_item else None init_picture = init_item.get_init_picture() if init_item else None + if init_item and not request.user.is_superuser and \ + not init_item.submiter_session_key == \ + request.session.session_key: + # hide personal information + for k in ('submiter_name', 'submiter_email', 'submiter_comment'): + setattr(init_item, k, '') # If the form has been submited if request.method == 'POST': inst = None |