<h2><%= t 'user.account.my settings' %></h2>
+
+<%= link_to t('user.account.return to profile'), :controller => 'user', :action => 'view', :display_name => @user.display_name %> |
+<%= link_to t('user.view.oauth settings'), :controller => 'oauth_clients', :action => 'index' %>
+
<%= error_messages_for 'user' %>
-<% form_for :user, @user do |f| %>
+<%= form_for :user, :html => { :multipart => true } do |f| %>
<table id="accountForm">
- <tr><td class="fieldName"><%= t 'user.new.display name' %></td><td><%= f.text_field :display_name %></td></tr>
- <tr><td class="fieldName"><%= t 'user.new.email address' %></td><td><%= f.text_field :email, {:size => 50, :maxlength => 255} %> <span class="minorNote"><%= t 'user.account.email never displayed publicly' %></span></td></tr>
- <tr><td class="fieldName" style="padding-bottom:0px;"><%= t 'user.new.password' %></td><td style="padding-bottom:0px;"><%= f.password_field :pass_crypt, {:value => '', :size => 30, :maxlength => 255} %></td></tr>
- <tr><td class="fieldName"><%= t 'user.new.confirm password' %></td><td><%= f.password_field :pass_crypt_confirmation, {:value => '', :size => 30, :maxlength => 255} %></td></tr>
-
- <tr>
- <td class="fieldName" valign="top"><%= t 'user.account.public editing.heading' %></td>
- <td>
-<% if @user.data_public? %>
- <%= t 'user.account.public editing.enabled' %> <span class="minorNote">(<a href="<%= t 'user.account.public editing.enabled link' %>" target="_new"><%= t 'user.account.public editing.enabled link text' %></a>)</span>
-<% else %>
- <%= t 'user.account.public editing.disabled' %><span class="minorNote">(<a href="#public"><%= t 'user.account.public editing.disabled link text' %></a>)</span>
-<% end %>
- </td>
+ <tr>
+ <td class="fieldName"><%= t 'user.new.display name' %></td>
+ <td><%= f.text_field :display_name %></td>
+ </tr>
+
+ <tr>
+ <td class="fieldName" style="padding-bottom:0px;"><%= t 'user.account.current email address' %></td>
+ <td style="padding-bottom:0px;"><%= @user.email %> <span class="minorNote"><%= t 'user.account.email never displayed publicly' %></span></td>
+ </tr>
+
+ <tr>
+ <td class="fieldName"><%= t 'user.account.new email address' %></td>
+ <td><%= f.email_field :new_email, {:size => 50, :maxlength => 255} %> <span class="minorNote"><%= t 'user.account.email never displayed publicly' %></span></td>
+ </tr>
+
+ <tr>
+ <td class="fieldName" style="padding-bottom:0px;"><%= t 'user.new.password' %></td>
+ <td style="padding-bottom:0px;"><%= f.password_field :pass_crypt, {:value => '', :size => 30, :maxlength => 255, :autocomplete => :off} %></td>
</tr>
- <tr><td class="fieldName" valign="top"><%= t 'user.account.profile description' %></td><td><%= f.text_area :description, :rows => '5', :cols => '60' %></td></tr>
+ <tr>
+ <td class="fieldName"><%= t 'user.new.confirm password' %></td>
+ <td><%= f.password_field :pass_crypt_confirmation, {:value => '', :size => 30, :maxlength => 255, :autocomplete => :off} %></td>
+ </tr>
- <tr><td class="fieldName" valign="top"><%= t 'user.account.preferred languages' %></td><td><%= f.text_field :languages %></td></tr>
+ <tr>
+ <td class="fieldName" ><%= t 'user.account.openid.openid' %></td>
+ <td><%= f.url_field :openid_url, {:id => "openid_url", :class => "openid_url"} %> <span class="minorNote">(<a href="<%= t 'user.account.openid.link' %>" target="_new"><%= t 'user.account.openid.link text' %></a>)</span></td>
+ </tr>
- <tr id="homerow" <% unless @user.home_lat and @user.home_lon %> class="nohome" <%end%> ><td class="fieldName"><%= t 'user.account.home location' %></td><td><em class="message"><%= t 'user.account.no home location' %></em><span class="location"><%= t 'user.account.latitude' %> <%= f.text_field :home_lat, :size => 20, :id => "home_lat" %><%= t 'user.account.longitude' %><%= f.text_field :home_lon, :size => 20, :id => "home_lon" %></span></td></tr>
+ <tr>
+ <td class="fieldName"><%= t 'user.account.public editing.heading' %></td>
+ <td>
+ <% if @user.data_public? %>
+ <%= t 'user.account.public editing.enabled' %> <span class="minorNote">(<a href="<%= t 'user.account.public editing.enabled link' %>" target="_new"><%= t 'user.account.public editing.enabled link text' %></a>)</span>
+ <% else %>
+ <%= t 'user.account.public editing.disabled' %> <span class="minorNote">(<a href="#public"><%= t 'user.account.public editing.disabled link text' %></a>)</span>
+ <% end %>
+ </td>
+ </tr>
- <tr><td></td><td>
- <p><%= t 'user.account.update home location on click' %> <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:500px; height:400px;"></div>
- </td></tr>
+ <tr>
+ <td class="fieldName"><%= t 'user.account.contributor terms.heading' %></td>
+ <td>
+ <% if @user.terms_agreed? %>
+ <%= t 'user.account.contributor terms.agreed' %>
+ <span class="minorNote">(<a href="<%= t 'user.account.contributor terms.link' %>" target="_new"><%= t 'user.account.contributor terms.link text' %></a>)</span>
+ <br />
+ <% if @user.consider_pd? %>
+ <%= t 'user.account.contributor terms.agreed_with_pd' %>
+ <% end %>
+ <% else %>
+ <%= t 'user.account.contributor terms.not yet agreed' %> <br />
+
+ <%= link_to t('user.account.contributor terms.review link text'), :controller => 'user', :action => 'terms' %>
+ <% end %>
+ </td>
+ </tr>
+
+ <tr>
+ <td class="fieldName"><%= t 'user.account.profile description' %></td>
+ <td><%= richtext_area :user, :description, :rows => '15', :cols => '80' %></td>
+ </tr>
+
+ <tr>
+ <td class="fieldName"><%= t 'user.account.preferred languages' %></td>
+ <td><%= f.text_field :languages %></td>
+ </tr>
+
+ <tr>
+ <td class="fieldName"><%= t 'user.account.preferred editor' %></td>
+ <td><%= f.select :preferred_editor, [[t("editor.default", :name => t("editor.#{DEFAULT_EDITOR}.name")), 'default']] + Editors::ALL_EDITORS.collect { |e| [t("editor.#{e}.description"), e] } %></td>
+ </tr>
+
+ <tr>
+ <td class="fieldName">
+ <%= t 'user.account.image' %>
+ </td>
+ <td valign="top">
+ <% if @user.image.file? %>
+ <table id="accountImage">
+ <tr>
+ <td rowspan="3" valign="top"><%= user_image @user %></td>
+ <td><%= radio_button_tag "image_action", "keep", true %></td>
+ <td><%= t 'user.account.keep image' %></td>
+ </tr>
+ <tr>
+ <td><%= radio_button_tag "image_action", "delete" %></td>
+ <td><%= t 'user.account.delete image' %></td>
+ </tr>
+ <tr>
+ <td><%= radio_button_tag "image_action", "new" %></td>
+ <td><%= t 'user.account.replace image' %><br /><%= f.file_field :image, :onchange => "$('image_action_new').prop('checked', true)" %><br /><span class="minorNote"><%= t 'user.account.image size hint' %></span></td>
+ </tr>
+ </table>
+ <% else %>
+ <%= hidden_field_tag "image_action", "new" %>
+ <%= t 'user.account.new image' %><br /><%= f.file_field :image %><br /><span class="minorNote"><%= t 'user.account.image size hint' %></span>
+ <% end %>
+ </td>
+ </tr>
+
+ <tr id="homerow" <% unless @user.home_lat and @user.home_lon %> class="nohome" <%end%> >
+ <td class="fieldName"><%= t 'user.account.home location' %></td>
+ <td><em class="message"><%= t 'user.account.no home location' %></em><span class="location"><%= t 'user.account.latitude' %> <%= f.text_field :home_lat, :size => 20, :id => "home_lat" %> <%= t 'user.account.longitude' %><%= f.text_field :home_lon, :size => 20, :id => "home_lon" %></span></td>
+ </tr>
+
+ <tr>
+ <td></td>
+ <td>
+ <p><%= t 'user.account.update home location on click' %> <input type="checkbox" value="1" <% unless @user.home_lat and @user.home_lon %> checked="checked" <% end %> id="updatehome" /> </p>
+ <% content_for :head do %>
+ <%= javascript_include_tag "user" %>
+ <% end %>
+ <%
+ home = @user.home_lat && @user.home_lon
+ data = {
+ :lon => @user.home_lon || params['lon'] || 0,
+ :lat => @user.home_lat || params['lat'] || 20,
+ :zoom => home ? 12 : params['zoom'] || 1,
+ :marker => !!home
+ }
+
+ if params[:scale].to_f > 0 then
+ data[:zoom] = scale_to_zoom params[:scale]
+ end
+ %>
+ <%= content_tag "div", "", :id => "map", :class => "user_map set_location", :data => data %>
+ </td>
+ </tr>
- <tr><td></td><td align=right><br/><%= submit_tag t('user.account.save changes button') %></td></tr>
+ <tr>
+ <td></td>
+ <td class="submitButton"><%= submit_tag t('user.account.save changes button') %></td>
+ </tr>
</table>
-<br/>
-
<% end %>
-<%= 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>Since the 0.6 API changeover, only public users can edit map data</b>. (<a href="http://wiki.openstreetmap.org/wiki/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 />
- <%= button_to t('user.account.make all my edits public button'), :action => :go_public %>
+<h2><%= t 'user.account.public editing note.heading' %></h2>
+<%= raw t 'user.account.public editing note.text' %>
+ <%= button_to t('user.account.make edits public button'), :action => :go_public %>
<% end %>
-<br/>
-<br/>
-<%= link_to t('user.account.return to profile'), :controller => 'user', :action => @user.display_name %>
-<br/>
-<br/>