From: Tom Hughes Date: Fri, 10 Jun 2011 18:11:08 +0000 (+0100) Subject: Merge branch 'master' into openid X-Git-Tag: live~6275 X-Git-Url: https://git.openstreetmap.org/rails.git/commitdiff_plain/ce7b651eb25473b74765ccb349f37ebd4ea6edfe?hp=652dbf5044d3f7fdb5f7af1b7e8393c2a79246c6 Merge branch 'master' into openid --- diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 6c19b3a52..1d3297d16 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -11,7 +11,7 @@ class ApplicationController < ActionController::Base @user = User.find(session[:user], :conditions => {:status => ["active", "confirmed", "suspended"]}) if @user.status == "suspended" - session[:user] = nil + session.delete(:user) session_expires_automatically redirect_to :controller => "user", :action => "suspended" @@ -61,11 +61,14 @@ class ApplicationController < ActionController::Base def require_cookies if request.cookies["_osm_session"].to_s == "" if params[:cookie_test].nil? + session[:cookie_test] = true redirect_to params.merge(:cookie_test => "true") return false else flash.now[:warning] = t 'application.require_cookies.cookies_needed' end + else + session.delete(:cookie_test) end end diff --git a/app/controllers/user_controller.rb b/app/controllers/user_controller.rb index 4128b61d4..9e2961df2 100644 --- a/app/controllers/user_controller.rb +++ b/app/controllers/user_controller.rb @@ -286,9 +286,9 @@ class UserController < ApplicationController if token token.destroy end - session[:token] = nil + session.delete(:token) end - session[:user] = nil + session.delete(:user) session_expires_automatically if params[:referer] redirect_to params[:referer] diff --git a/app/models/user.rb b/app/models/user.rb index 79af5d71f..0b2a902df 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -26,11 +26,11 @@ class User < ActiveRecord::Base validates_uniqueness_of :openid_url, :allow_nil => true validates_length_of :pass_crypt, :within => 8..255 validates_length_of :display_name, :within => 3..255, :allow_nil => true - validates_email_format_of :email - validates_email_format_of :new_email, :allow_blank => true - validates_format_of :display_name, :with => /^[^\/;.,?]*$/ - validates_format_of :display_name, :with => /^\S/, :message => "has leading whitespace" - validates_format_of :display_name, :with => /\S$/, :message => "has trailing whitespace" + validates_email_format_of :email, :if => Proc.new { |u| u.email_changed? } + validates_email_format_of :new_email, :allow_blank => true, :if => Proc.new { |u| u.new_email_changed? } + validates_format_of :display_name, :with => /^[^\/;.,?]*$/, :if => Proc.new { |u| u.display_name_changed? } + validates_format_of :display_name, :with => /^\S/, :message => "has leading whitespace", :if => Proc.new { |u| u.display_name_changed? } + validates_format_of :display_name, :with => /\S$/, :message => "has trailing whitespace", :if => Proc.new { |u| u.display_name_changed? } validates_numericality_of :home_lat, :allow_nil => true validates_numericality_of :home_lon, :allow_nil => true validates_numericality_of :home_zoom, :only_integer => true, :allow_nil => true diff --git a/app/models/user_sweeper.rb b/app/models/user_sweeper.rb index d2fd983f7..5286b97b1 100644 --- a/app/models/user_sweeper.rb +++ b/app/models/user_sweeper.rb @@ -22,6 +22,10 @@ private expire_action(:controller => 'diary_entry', :action => 'rss', :language => entry.language_code, :display_name => nil) end + old_record.diary_comments.each do |comment| + expire_action(:controller => 'diary_entry', :action => 'view', :display_name => comment.diary_entry.user.display_name, :id => comment.diary_entry.id) + end + expire_action(:controller => 'diary_entry', :action => 'list', :language => nil, :display_name => nil) expire_action(:controller => 'diary_entry', :action => 'list', :language => nil, :display_name => old_record.display_name) diff --git a/app/views/user/login.html.erb b/app/views/user/login.html.erb index 0616d76f8..6297b219d 100644 --- a/app/views/user/login.html.erb +++ b/app/views/user/login.html.erb @@ -9,7 +9,7 @@

<%= t 'user.login.with username' %>

- +
<%= t 'user.login.email or username' %><%= text_field('user', 'email',{:value => "", :size => 28, :maxlength => 255, :tabindex => 1}) %>
<%= t 'user.login.email or username' %><%= text_field('user', 'email',{:value => params[:username], :size => 28, :maxlength => 255, :tabindex => 1}) %>
<%= t 'user.login.password' %><%= password_field('user', 'password',{:value => "", :size => 28, :maxlength => 255, :tabindex => 2}) %> (<%= link_to t('user.login.lost password link'), :controller => 'user', :action => 'lost_password' %>)
<%= check_box_tag "remember_me", "yes", false, :tabindex => 3 %>
diff --git a/config/locales/en.yml b/config/locales/en.yml index 30901e50a..e41048d0f 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -1056,6 +1056,9 @@ en: