From: Tom Hughes <tom@compton.nu>
Date: Tue, 16 Nov 2010 21:13:29 +0000 (+0000)
Subject: Add an explicit "default editor" option to the user settings
X-Git-Tag: live~7783^2~32
X-Git-Url: https://git.openstreetmap.org/rails.git/commitdiff_plain/9c2de4039c3053c35e76f596faa95557dc237c74

Add an explicit "default editor" option to the user settings
---

diff --git a/app/controllers/user_controller.rb b/app/controllers/user_controller.rb
index d73d38a17..6935af3bc 100644
--- a/app/controllers/user_controller.rb
+++ b/app/controllers/user_controller.rb
@@ -109,7 +109,11 @@ class UserController < ApplicationController
       @user.home_lat = params[:user][:home_lat]
       @user.home_lon = params[:user][:home_lon]
 
-      @user.preferred_editor = params[:user][:preferred_editor]
+      if params[:user][:preferred_editor] == "default"
+        @user.preferred_editor = nil
+      else
+        @user.preferred_editor = params[:user][:preferred_editor]
+      end
 
       if @user.save
         set_locale
diff --git a/app/views/layouts/site.html.erb b/app/views/layouts/site.html.erb
index f10b08949..2eae3963a 100644
--- a/app/views/layouts/site.html.erb
+++ b/app/views/layouts/site.html.erb
@@ -77,7 +77,7 @@
     <div id="editmenu">
       <ul>
         <% Editors::ALL_EDITORS.each do |editor| %>
-          <li><%= link_to t('layouts.edit_with', :editor => t('user.account.editor.' + editor)), {:controller => 'site', :action => 'edit', :editor => editor}, {:id => editor + 'anchor'} %></li>
+          <li><%= link_to t('layouts.edit_with', :editor => t("editor.#{editor}.description")), {:controller => 'site', :action => 'edit', :editor => editor}, {:id => editor + 'anchor'} %></li>
         <% end %>
       </ul>
     </div>
diff --git a/app/views/user/account.html.erb b/app/views/user/account.html.erb
index f4523c577..7047b5b82 100644
--- a/app/views/user/account.html.erb
+++ b/app/views/user/account.html.erb
@@ -68,7 +68,7 @@
 
   <tr>
     <td class="fieldName" valign="top"><%= t 'user.account.preferred editor' %></td>
-    <td><%= f.select :preferred_editor, Editors::ALL_EDITORS.collect { |e| [t('user.account.editor.'+e), e] } %></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>
diff --git a/config/locales/en.yml b/config/locales/en.yml
index a717e839d..beccc22fa 100644
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -79,6 +79,17 @@ en:
     with_id: "{{id}}"
     with_version: "{{id}}, v{{version}}"
     with_name: "{{name}} ({{id}})"
+  editor:
+    default: "Default (currently {{name}})"
+    potlatch:
+      name: "Potlatch 1"
+      description: "Potlatch 1 (in-browser editor)"
+    potlatch2:
+      name: "Potlatch 2"
+      description: "Potlatch 2 (in-browser editor)"
+    josm:
+      name: "JOSM"
+      description: "JOSM (via remote-control plugin)"
   browse:
     changeset:
       title: "Changeset"
@@ -1660,10 +1671,6 @@ en:
       return to profile: Return to profile
       flash update success confirm needed: "User information updated successfully. Check your email for a note to confirm your new email address."
       flash update success: "User information updated successfully."
-      editor:
-        potlatch: "Potlatch 1 (in-browser editor)"
-        potlatch2: "Potlatch 2 (in-browser editor)"
-        josm: "JOSM (via remote-control plugin)"
     confirm:
       heading: Confirm a user account
       press confirm button: "Press the confirm button below to activate your account."