summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@peacefrogs.net>2011-09-22 14:44:46 +0200
committerÉtienne Loks <etienne.loks@peacefrogs.net>2011-09-22 14:44:46 +0200
commitb1b0a4e43365b36cac23688c4db402e46e0b224a (patch)
tree0ceef856fde0dce5baa0db8480f6d5813b9b0e9e
parent7273d9b45e4908de4a9b8623ea1fa6e153eed33a (diff)
downloadChimère-b1b0a4e43365b36cac23688c4db402e46e0b224a.tar.bz2
Chimère-b1b0a4e43365b36cac23688c4db402e46e0b224a.zip
Correct route shifting in edition (closes #304) + enlarge the edition map (closes #305)
-rw-r--r--chimere/locale/fr/LC_MESSAGES/django.po14
-rw-r--r--chimere/main/widgets.py17
-rw-r--r--chimere/static/edit_route_map.js25
-rw-r--r--chimere/static/forms.css40
-rw-r--r--chimere/templates/upload_file.html1
5 files changed, 78 insertions, 19 deletions
diff --git a/chimere/locale/fr/LC_MESSAGES/django.po b/chimere/locale/fr/LC_MESSAGES/django.po
index ec34c01..16a1d6c 100644
--- a/chimere/locale/fr/LC_MESSAGES/django.po
+++ b/chimere/locale/fr/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: 0.2\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-09-16 11:59+0200\n"
+"POT-Creation-Date: 2011-09-22 14:35+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"
@@ -384,7 +384,15 @@ msgstr "ou"
msgid "Start \"hand\" drawing"
msgstr "Commencer le tracé manuellement"
-#: main/widgets.py:334
+#: main/widgets.py:205
+msgid "Move on the map"
+msgstr "Se déplacer"
+
+#: main/widgets.py:205
+msgid "Draw"
+msgstr "Tracer"
+
+#: main/widgets.py:343
msgid "Select..."
msgstr "Sélectionner..."
@@ -557,7 +565,7 @@ msgstr "Merci pour votre proposition !"
msgid "Upload a file"
msgstr "Déposer un fichier"
-#: templates/upload_file.html:50
+#: templates/upload_file.html:51
msgid "Upload"
msgstr "Déposer"
diff --git a/chimere/main/widgets.py b/chimere/main/widgets.py
index 74fc022..65223e8 100644
--- a/chimere/main/widgets.py
+++ b/chimere/main/widgets.py
@@ -189,13 +189,20 @@ the desired position"))
_(u"Upload a route file (GPX or KML)"))
tpl += u"""\n<p id='draw-or'>%s</p>\n""" % _(u"or")
tpl += u"""<div id='draw-label'><div id='draw-toggle-off' \
-class='toggle-button' onclick='toggleDrawOn();'>
+onclick='toggleDraw();'>
<a href='#' onclick='return false;'>%s</a></div>
</div>
<hr class='spacer'/>""" % (_(u"Start \"hand\" drawing"))
- tpl += """
+ if value:
+ tpl += """
<div id='map_edit'></div>"""
- if not value:
+ else:
+ tpl += """
+<div id='map_edit'>
+ <div class='map_button'>
+ <a href='#' id='button-move-map' class='toggle-button toggle-button-active' onclick='toggleDrawOff();return false;'>%s</a>
+ <a href='#' id='button-draw-map' class='toggle-button toggle-button-inactive' onclick='toggleDrawOn();return false;'>%s</a></div>
+ </div>""" % (_(u"Move on the map"), _(u"Draw"))
tpl += '''
<div class='help-route' id='help-route-create'>%s</div>''' % help_create
style = ''
@@ -209,8 +216,10 @@ class='toggle-button' onclick='toggleDrawOn();'>
value="%s"/>
""" % (style, help_modify, name, name, value, routefile_id)
tpl += "<script type='text/javascript'><!--\n"
- tpl += "init();\n"
+ if not value:
+ tpl += "document.getElementById('map_edit').style.display = 'None';"
if value:
+ tpl += "init();\n"
val = value
if type(value) == unicode:
try:
diff --git a/chimere/static/edit_route_map.js b/chimere/static/edit_route_map.js
index a2d8bf1..11af258 100644
--- a/chimere/static/edit_route_map.js
+++ b/chimere/static/edit_route_map.js
@@ -20,6 +20,8 @@ See the file COPYING for details.
var map;
var currentControl;
+var pathCreate;
+var pathModify;
/* availaible map layers */
var vectors = new OpenLayers.Layer.Vector("Vector Layer");
@@ -91,11 +93,10 @@ function updateForm(event) {
/* path control */
var pathCreate = new OpenLayers.Control.DrawFeature(vectors,
- OpenLayers.Handler.Path);
+ OpenLayers.Handler.Path);
var currentControl = pathCreate;
-
var pathModify = new OpenLayers.Control.ModifyFeature(vectors,
- {clickout:false, toggle:false});
+ {clickout:false, toggle:false});
/* main initialisation function */
function init(){
@@ -126,16 +127,30 @@ function init(){
}
}
-function toggleDrawOn() {
- currentControl.activate();
+function toggleDraw() {
document.getElementById('draw-toggle-off').style.display = 'None';
document.getElementById('draw-or').style.display = 'None';
document.getElementById('upload').style.display = 'None';
+ document.getElementById('map_edit').style.display = '';
+ document.getElementById('help-route-create').style.display = 'block';
+ init();
+}
+
+function toggleDrawOn() {
+ jQuery('#button-move-map').removeClass('toggle-button-active').addClass('toggle-button-inactive');
+ jQuery('#button-draw-map').removeClass('toggle-button-inactive').addClass('toggle-button-active');
+ currentControl.activate();
if (currentFeature){
pathModify.selectControl.select(currentFeature);
}
}
+function toggleDrawOff() {
+ jQuery('#button-draw-map').removeClass('toggle-button-active').addClass('toggle-button-inactive');
+ jQuery('#button-move-map').removeClass('toggle-button-inactive').addClass('toggle-button-active');
+ currentControl.deactivate();
+}
+
function checkFields(){
if (!jQuery("#id_name").val() ||
!jQuery("#id_categories").val()){
diff --git a/chimere/static/forms.css b/chimere/static/forms.css
index dea37f0..dd3fc21 100644
--- a/chimere/static/forms.css
+++ b/chimere/static/forms.css
@@ -1,16 +1,42 @@
/* colors definition */
-.toggle-button{
+.map_button .toggle-button-inactive{
color: #5b80b2;
+background-color:#fff;
+}
+
+.map_button .toggle-button-active, .toggle-button:hover{
+background-color: #5b80b2;
+color:#fff;
}
+
+
/**/
#map_edit{
border: 1px solid black;
-width:700px;
-height:400px;
-float:left;
+width:100%;
+height:500px;
+}
+
+
+.map_button{
+position:absolute;
+z-index:1000;
+text-align:center;
+width:100%;
+margin:0;
+padding:0;
+margin-top:10px;
+}
+
+.map_button a{
+margin:8px;
+padding:4px;
+-moz-border-radius: 4px;
+-webkit-border-radius: 4px;
+border-radius: 4px;
}
#live_lonlat{
@@ -47,10 +73,9 @@ font-size:16px;
}
.help-route{
-width:700px;
+width:98%;
background-color:#EEF;;
-margin: 10px 0px;
-float:left;
+margin: 10px 0;
padding:0 4px;
-moz-border-radius: 4px;
-webkit-border-radius: 4px;
@@ -59,6 +84,7 @@ border:1px solid grey;
}
#help-route-create{
+display:None
}
#help-route-modify{
diff --git a/chimere/templates/upload_file.html b/chimere/templates/upload_file.html
index 06c89ad..0ef276d 100644
--- a/chimere/templates/upload_file.html
+++ b/chimere/templates/upload_file.html
@@ -38,6 +38,7 @@
jQuery(main_page).find("#draw-or").hide();
jQuery(main_page).find("#draw-toggle-off").hide();
jQuery(main_page).find("#upload").hide();
+ opener.toggleDraw();
opener.initFeatureFromWkt(data.wkt);
opener.toggleDrawOn();
opener.focus();