<h2>User details</h2>
<%= error_messages_for 'user' %>
-<% form_tag :controller => 'user', :action => 'edit', :display_name => @user.display_name do %>
+<% form_tag :controller => 'user', :action => 'account', :display_name => @user.display_name do %>
<table style="width : 100%">
<tr><td>Name</td><td><%= @user.email %></td></tr>
<tr><td>Mapper since</td><td><%= @user.creation_time %> (<%= time_ago_in_words(@user.creation_time) %> ago)</td></tr>
<tr><td>Display Name</td><td><%= text_field :user, :display_name, :value => @user.display_name %></td></tr>
+ <tr><td>Password</td><td><%= password_field('user', 'pass_crypt',{:value => '', :size => 50, :maxlength => 255}) %></td></tr>
+ <tr><td>Confirm Password</td><td><%= password_field('user', 'pass_crypt_confirmation',{:value => '', :size => 50, :maxlength => 255}) %></td></tr>
<tr id="homerow" <% unless @user.home_lat and @user.home_lon %> class="nohome" <%end%> ><td>Your home</td><td><em class="message">You have not entered your home location.</em><span class="location">Latitude: <%= text_field :user, :home_lat, :value => @user.home_lat, :size => 20, :id => "home_lat" %> Longitude <%= text_field :user, :home_lon, :value => @user.home_lon, :size => 20, :id => "home_lon" %></span> </td></tr>
<tr><td></td><td>
<table>
<tr>
<th>Name</th>
+ <th>Distance</th>
<th>Contact</th>
</tr>
- <% @user.nearby(1,1).each do |nearby| %>
+ <% @user.nearby.each do |nearby| %>
<% nearest_str += "nearest.push( { 'display_name' : '#{nearby.display_name}', 'home_lat' : #{nearby.home_lat}, 'home_lon' : #{nearby.home_lon} } );\n" %>
<tr>
<td><%= link_to nearby.display_name, :controller => 'user', :action => 'view', :display_name => nearby.display_name %></td>
+ <td><%= @user.distance(nearby).round %>km away</td>
<td><%= link_to 'send message', :controller => 'message', :action => 'new', :user_id => nearby.id %></td>
</tr>
<%end%>
<%end%>
</script>
-<script type="text/javascript" src="/javascripts/OpenLayers.js"></script>
+<script type="text/javascript" src="/openlayers/OpenLayers.js"></script>
<script type="text/javascript">
<!--
function init(){
OpenLayers.Util.onImageLoadError = function() {
- this.src = "http://www.openstreetmap.org/javascripts/img/404.png";
+ this.src = OpenLayers.Util.getImagesLocation() + "404.png";
}
map = new OpenLayers.Map( "map",
{maxExtent: new OpenLayers.Bounds(-20037508.34,-20037508.34,20037508.34,20037508.34), maxZoomLevel:18, maxResolution:156543, units:'meters', projection: "EPSG:41001"} );
- layer = new OpenLayers.Layer.LikeGoogle( "Mapnik", "http://tile.openstreetmap.org/", {type:'png'} );
+ layer = new OpenLayers.Layer.TMS( "Mapnik", "http://tile.openstreetmap.org/", {type:'png', getURL:getTileURL} );
map.addLayer(layer);
- layer = new OpenLayers.Layer.LikeGoogle( "Osmarender", "http://dev.openstreetmap.org/~ojw/Tiles/tile.php/", {type:'png'} );
+ layer = new OpenLayers.Layer.TMS( "Osmarender", "http://dev.openstreetmap.org/~ojw/Tiles/tile.php/", {type:'png', getURL:getTileURL} );
map.addLayer(layer);
//Marker stuff
nearmarker.events.register("click", "nearmarker", makeMarkerFunction( i ) );
}
- map.addControl(new OpenLayers.Control.LayerSwitcher());
+ map.addControl(new OpenLayers.Control.LayerSwitcher());
map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
map.events.register("click", map, setHome);
}
+ function getTileURL( bounds ) {
+ var res = this.map.getResolution();
+ var x = Math.round ((bounds.left - this.maxExtent.left) / (res * this.tileSize.w));
+ var y = Math.round ((this.maxExtent.top - bounds.top) / (res * this.tileSize.h));
+ var z = this.map.getZoom();
+ return this.url + z + "/" + x + "/" + y + "." + this.type;
+ }
+
function makeMarkerFunction( i ) {
return function() { markerOnClick( i ); };
}