]> git.openstreetmap.org Git - rails.git/blobdiff - app/views/user/account.rhtml
Don't register a setHome handler unless we have the flag checkbox
[rails.git] / app / views / user / account.rhtml
index 54702ace9a04b149a685ef3008b15926f73afb29..178a0e8dc3682997c0cc1878290e7366ddd97aac 100644 (file)
-<h2>User details</h2>
+<h2>My settings</h2>
 <%= error_messages_for 'user' %>
-<% form_tag :controller => 'user', :action => 'account', :display_name => @user.display_name do %>
-<table style="width : 100%">
-  <tr><td>Email</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>
+<% form_for :user, @user do |f| %>
+<table id="accountForm">
+  <tr><td class="fieldName">Display Name : </td><td><%= f.text_field :display_name %></td></tr>
+  <tr><td class="fieldName">Email : </td><td><%= f.text_field :email, {:size => 50, :maxlength => 255} %> <span class="minorNote">(never displayed publicly)</span></td></tr>
+  <tr><td class="fieldName" style="padding-bottom:0px;">Password : </td><td style="padding-bottom:0px;"><%= f.password_field :pass_crypt, {:value => '', :size => 30, :maxlength => 255} %></td></tr>
+  <tr><td class="fieldName">Confirm Password : </td><td><%= f.password_field :pass_crypt_confirmation, {:value => '', :size => 30, :maxlength => 255} %></td></tr>
+
+  <tr>
+  <td class="fieldName" valign="top">Public editing :</td>
+  <td>
+<% if @user.data_public? %>
+  Enabled. Not anonymous <span class="minorNote">(<a href="http://wiki.openstreetmap.org/index.php/Disabling_anonymous_edits" target="_new">what's this?</a>)</span>
+<% else %>
+  Disabled and anonymous. <span class="minorNote">(<a href="#public">why's this bad?</a>)</span>
+<% end %>
+  </td>
+  </tr>
 
-  <tr><td valign="top">Description</td><td><%= text_area :user, :description, :value => @user.description, :class => "editDescription" %></td></tr>
+  <tr><td class="fieldName" valign="top">Profile Description : </td><td><%= f.text_area :description, :rows => '5', :cols => '60' %><br /><br /></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 id="homerow" <% unless @user.home_lat and @user.home_lon %> class="nohome" <%end%> ><td class="fieldName">Home Location : </td><td><em class="message">You have not entered your home location.</em><span class="location">Latitude: <%= f.text_field :home_lat, :size => 20, :id => "home_lat" %> Longitude <%= f.text_field :home_lon, :size => 20, :id => "home_lon" %></span></td></tr>
 
   <tr><td></td><td>
   <p>Update home location when I click on the map? <input type="checkbox" value="1" <% unless @user.home_lat and @user.home_lon %> checked="checked" <% end %> id="updatehome" /> </p>
-  <div id="map" style="border: 1px solid black; position: relative; width : 90%; height : 300px;">
-    <% # This now just used to detect the width/height required for the popup. %>
-    <p id="highlightinfo"></p>
-  </div>
+  <div id="map" style="border:1px solid black; position:relative; width:500px; height:400px;"></div>
   </td></tr>
+  
+  <tr><td></td><td align=right><br/></br><%= submit_tag 'Save Changes' %></td></tr>
 </table>
-<%= submit_tag 'Save Changes' %>
-<% end %>
-
-<% nearest_str = "" %>
-<% if !@user.home_lat.nil? and !@user.home_lon.nil? %>
-  <% if !@user.nearby.empty? %>
-    <% @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" %>
-    <% end %>
-  <% end %>
-<% end %>
-<script type="text/javascript">
-    var nearest = [], friends = [];
-    <%= nearest_str %>
-</script>
+<br/>
 
-<% if @user.home_lat.nil? or @user.home_lon.nil? %>
-  <% lon =  params['lon'] || '-0.1' %>
-  <% lat =  params['lat'] || '51.5' %>
-  <% zoom =  params['zoom'] || '4' %> 
-<% else %>
-  <% marker = true %>
-  <% mlon = @user.home_lon %> 
-  <% mlat = @user.home_lat %>
-  <% lon =  @user.home_lon %>
-  <% lat =  @user.home_lat %>
-  <% zoom =  '12' %>
 <% end %>
 
-<script type="text/javascript" src="/openlayers/OpenLayers.js"></script>
-<%= javascript_include_tag 'map.js' %>
-
-<script type="text/javascript">
-  <!--
-  var marker;
-
-  function init(){
-    var centre = lonLatToMercator(new OpenLayers.LonLat(<%= lon %>, <%= lat %>));
-    var zoom = <%= zoom %>;
-
-    <% if params['scale'] and params['scale'].length > 0 then %>
-    zoom = scaleToZoom(<%= params['scale'].to_f() %>);
-    <% end %>
-
-    var map = createMap("map");
-
-    map.setCenter(centre, zoom);
-
-    <% if marker %>
-    marker = addMarkerToMap(lonLatToMercator(new OpenLayers.LonLat(<%= mlon %>, <%= mlat %>)), null, "Your location");
-    <% end %>
-
-    var near_icon = OpenLayers.Marker.defaultIcon();
-    near_icon.url = OpenLayers.Util.getImagesLocation() + "marker-green.png";;
-    var i = nearest.length;
-    while( i-- ) {
-      var description = 'Nearby mapper: <a href="/user/'+nearest[i].display_name+'">'+nearest[i].display_name+'</a>'
-      var nearmarker = addMarkerToMap(lonLatToMercator(new OpenLayers.LonLat(nearest[i].home_lon, nearest[i].home_lat)), near_icon.clone(), description);
-    }
-
-    map.events.register("click", map, setHome);
-  }        
-
-  function setHome( e ) { 
-    closeMapPopup();
-
-    if (document.getElementById('updatehome').checked) {
-      var merc = map.getLonLatFromViewPortPx(e.xy);
-      var lonlat = mercatorToLonLat(merc);
-
-      document.getElementById('homerow').className = '';
-      document.getElementById('home_lat').value = lonlat.lat;
-      document.getElementById('home_lon').value = lonlat.lon;
-
-      if (marker) {
-        removeMarkerFromMap(marker);
-      }
-
-      marker = addMarkerToMap(merc, null, "Your location");
-    }
-  }
-
-  window.onload = init;
-// -->
-</script>
-
-<h2>Privacy</h2>
-<% if @user.data_public? %>
-  All your edits are public.
-<% else %>
-  Currently your edits are anonymous and people can't find out where you are located. To show what you edited and allow people to contact you through the website, click the button below. This action cannot be reversed.
+<%= render :partial => 'friend_map' %>
+<% unless @user.data_public? %>
+<a name="public"></a>
+<h2>Public editing</h2>
+  Currently your edits are anonymous and people can't send you messages or see your location. To show what you edited and allow people to contact you through the website, click the button below.
+  <b>You will need to do this if you want to use the online editor and it is encouraged to do so</b> (<a href="http://wiki.openstreetmap.org/index.php/Disabling_anonymous_edits">find out why</a>).<br />
+  Your email address will not be revealed by becoming public.<br />
+  This action cannot be reversed and all new users are now public by default.<br />
   <br /><br />
-  <% form_tag :controller => 'user', :action => 'go_public' do %>
-  <%= submit_tag 'Make all my edits public, forever' %>
-  <% end %>
+  <%= button_to "Make all my edits public", :action => :go_public %>
 <% end %>
+<br/>
+<br/>
+<%= link_to 'return to profile', :controller => 'user', :action => @user.display_name %>
+<br/>
+<br/>