summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
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
commit98f5da135ccfe9ede29f137f1470024ad296a7bf (patch)
tree8077f59d387ff1cc286409f7df86c82533ab2e18
parente366e99c94c0aee429a1fc52f2c9b0b4bee1ef98 (diff)
downloadChimère-98f5da135ccfe9ede29f137f1470024ad296a7bf.tar.bz2
Chimère-98f5da135ccfe9ede29f137f1470024ad296a7bf.zip
Add personal information in edit form
-rw-r--r--chimere/locale/fr/LC_MESSAGES/django.po264
-rw-r--r--chimere/migrations/0026_auto__add_field_marker_submiter_name__add_field_route_submiter_name.py224
-rw-r--r--chimere/models.py4
-rw-r--r--chimere/templates/chimere/edit.html25
-rw-r--r--chimere/views.py6
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