]> git.openstreetmap.org Git - rails.git/blobdiff - app/controllers/user_controller.rb
Add geoip_database key to example configuration
[rails.git] / app / controllers / user_controller.rb
index 540753de51308ef8a8f1d7201efc2949710d8345..82373c90a791a7507977626967c25e1b2f2e5940 100644 (file)
@@ -194,7 +194,7 @@ class UserController < ApplicationController
         redirect_to :action => "lost_password"
       end
     else
-      render :text => "", :status => :bad_request
+      head :bad_request
     end
   end
 
@@ -268,7 +268,7 @@ class UserController < ApplicationController
   def logout
     @title = t "user.logout.title"
 
-    if params[:session] == request.session_options[:id]
+    if params[:session] == session.id
       if session[:token]
         token = UserToken.find_by(:token => session[:token])
         token.destroy if token
@@ -375,7 +375,7 @@ class UserController < ApplicationController
     if @this_user.visible?
       render :action => :api_read, :content_type => "text/xml"
     else
-      render :text => "", :status => :gone
+      head :gone
     end
   end
 
@@ -389,7 +389,7 @@ class UserController < ApplicationController
     @user.traces.reload.each do |trace|
       doc.root << trace.to_xml_node
     end
-    render :text => doc.to_s, :content_type => "text/xml"
+    render :xml => doc.to_s
   end
 
   def view
@@ -480,9 +480,11 @@ class UserController < ApplicationController
 
       redirect_to url_for(:status => params[:status], :ip => params[:ip], :page => params[:page])
     else
+      @params = params.permit(:status, :ip)
+
       conditions = {}
-      conditions[:status] = params[:status] if params[:status]
-      conditions[:creation_ip] = params[:ip] if params[:ip]
+      conditions[:status] = @params[:status] if @params[:status]
+      conditions[:creation_ip] = @params[:ip] if @params[:ip]
 
       @user_pages, @users = paginate(:users,
                                      :conditions => conditions,
@@ -494,7 +496,7 @@ class UserController < ApplicationController
   ##
   # omniauth success callback
   def auth_success
-    auth_info = env["omniauth.auth"]
+    auth_info = request.env["omniauth.auth"]
 
     provider = auth_info[:provider]
     uid = auth_info[:uid]
@@ -543,7 +545,7 @@ class UserController < ApplicationController
         when "pending" then
           unconfirmed_login(user)
         when "active", "confirmed" then
-          successful_login(user, env["omniauth.params"]["referer"])
+          successful_login(user, request.env["omniauth.params"]["referer"])
         when "suspended" then
           failed_login t("user.login.account is suspended", :webmaster => "mailto:#{SUPPORT_EMAIL}")
         else
@@ -723,8 +725,8 @@ class UserController < ApplicationController
             # Ignore errors sending email
           end
         else
-          @user.errors.set(:new_email, @user.errors.get(:email))
-          @user.errors.set(:email, [])
+          @user.errors.add(:new_email, @user.errors[:email])
+          @user.errors.add(:email, [])
         end
 
         user.restore_email!
@@ -752,9 +754,7 @@ class UserController < ApplicationController
   ##
   # require that the user in the URL is the logged in user
   def require_self
-    if params[:display_name] != @user.display_name
-      render :text => "", :status => :forbidden
-    end
+    head :forbidden if params[:display_name] != @user.display_name
   end
 
   ##