[Jifty-commit] r3646 - in jifty/trunk: share/web/static/js
jifty-commit at lists.jifty.org
jifty-commit at lists.jifty.org
Tue Jul 10 09:17:04 EDT 2007
Author: clkao
Date: Tue Jul 10 09:17:04 2007
New Revision: 3646
Modified:
jifty/trunk/lib/Jifty/Plugin/GoogleMap/Widget.pm
jifty/trunk/share/web/static/js/google_map.js
Log:
Support readonly for googlemap widget.
Modified: jifty/trunk/lib/Jifty/Plugin/GoogleMap/Widget.pm
==============================================================================
--- jifty/trunk/lib/Jifty/Plugin/GoogleMap/Widget.pm (original)
+++ jifty/trunk/lib/Jifty/Plugin/GoogleMap/Widget.pm Tue Jul 10 09:17:04 2007
@@ -27,9 +27,10 @@
#use Template::Declare::Tags;
sub render_widget {
- my $self = shift;
-
+ my $self = shift;
+ my $readonly = shift;
my $action = $self->action;
+ $readonly = $readonly ? 1 : 0;
my ($x, $y) = map { $action->form_field($self->name . "_$_")->current_value } qw( x y );
my ($xid, $yid) = map { $action->form_field($self->name . "_$_")->element_id } qw( x y );
@@ -39,7 +40,7 @@
my $element_id = $self->element_id;
Jifty->web->out(qq{<div @{[$self->_widget_class]} id="$element_id" style="left: 200px; width: 250px; height: 250px"></div>});
Jifty->web->out(qq{<script type="text/javascript">
-Jifty.GMap.location_editor( \$("$element_id"), $x, $y, "$xid", "$yid", $zoom_level, $use_default);
+Jifty.GMap.location_editor( \$("$element_id"), $x, $y, "$xid", "$yid", $zoom_level, $use_default, $readonly);
</script>
});
@@ -69,7 +70,7 @@
=cut
sub render_value {
- $_[0]->render_widget;
+ $_[0]->render_widget('readonly');
return '';
}
Modified: jifty/trunk/share/web/static/js/google_map.js
==============================================================================
--- jifty/trunk/share/web/static/js/google_map.js (original)
+++ jifty/trunk/share/web/static/js/google_map.js Tue Jul 10 09:17:04 2007
@@ -5,18 +5,19 @@
if(!Jifty) Jifty = {};
Jifty.GMap = function() {};
-Jifty.GMap.location_editor = function(element, x, y, xid, yid, zoom_level, no_marker) {
+Jifty.GMap.location_editor = function(element, x, y, xid, yid, zoom_level, no_marker, readonly) {
if (!GBrowserIsCompatible())
return;
var map = new GMap2(element);
map.enableScrollWheelZoom();
map.addControl(new GSmallZoomControl());
- map.addControl(new EditLocationControl());
+ if(!readonly)
+ map.addControl(new EditLocationControl());
map.setCenter(new GLatLng(y, x), zoom_level);
map._jifty_form_x = xid;
map._jifty_form_y = yid;
- if (!no_maker) {
+ if (!no_marker) {
map._jifty_location = new GMarker(new GLatLng(y, x));
map.addOverlay(map._jifty_location);
}
@@ -94,7 +95,7 @@
map.setCenter(map._jifty_location.getPoint(), 8+result.Placemark[0].AddressDetails.Accuracy);
}
else {
- alert('not yet');
+ _handle_multiple_results(map, result);
}
}
else {
@@ -103,6 +104,10 @@
});
}
+function _handle_multiple_results {
+
+}
+
EditLocationControl.prototype.getDefaultPosition = function() {
return new GControlPosition(G_ANCHOR_BOTTOM_RIGHT, new GSize(7, 7));
}
More information about the Jifty-commit
mailing list