Skip to content
Extraits de code Groupes Projets
Valider fbf486da rédigé par Sarah Mei's avatar Sarah Mei
Parcourir les fichiers

Users can log in on their phones again.

Something in devise broke for the :mobile format. More investigation needed; we're having this same issue on log out and incorrect password on mobile (though those pages are at least still usable).
parent c8e9225d
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -5,6 +5,17 @@ ...@@ -5,6 +5,17 @@
class SessionsController < Devise::SessionsController class SessionsController < Devise::SessionsController
after_filter :enqueue_update, :only => :create after_filter :enqueue_update, :only => :create
def create
resource = warden.authenticate!(:scope => resource_name, :recall => "#{controller_path}#new")
set_flash_message(:notice, :signed_in) if is_navigational_format?
sign_in(resource_name, resource)
redirect_loc = redirect_location(resource_name, resource)
respond_with resource, :location => redirect_loc do |format|
format.mobile { redirect_to root_path }
end
end
protected protected
def enqueue_update def enqueue_update
if current_user if current_user
...@@ -13,5 +24,4 @@ class SessionsController < Devise::SessionsController ...@@ -13,5 +24,4 @@ class SessionsController < Devise::SessionsController
} }
end end
end end
end end
...@@ -17,17 +17,28 @@ describe SessionsController do ...@@ -17,17 +17,28 @@ describe SessionsController do
before do before do
@request.env["devise.mapping"] = Devise.mappings[:user] @request.env["devise.mapping"] = Devise.mappings[:user]
@user = alice @user = alice
@user.password = "evankorth" @user.password = "evankorth"
@user.password_confirmation = "evankorth" @user.password_confirmation = "evankorth"
@service = Services::Facebook.new(:access_token => "yeah")
@user.services << @service
@user.save @user.save
end end
describe "#create" do describe "#create" do
it "redirects to / for a normal user" do
post :create, {"user" => {"remember_me" => "0", "username" => @user.username, "password" => "evankorth"}}
response.should redirect_to root_path
end
it "redirects to / for a mobile user" do
@request.env['HTTP_USER_AGENT'] = 'Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_1 like Mac OS X; en-us) AppleWebKit/532.9 (KHTML, like Gecko) Version/4.0.5 Mobile/8B117 Safari/6531.22.7'
post :create, {"user" => {"remember_me" => "0", "username" => @user.username, "password" => "evankorth"}}
response.should redirect_to root_path
end
it 'queues up an update job' do it 'queues up an update job' do
Resque.should_receive(:enqueue).with(Job::UpdateServiceUsers, @service.id) service = Services::Facebook.new(:access_token => "yeah")
@user.services << service
@user.save
Resque.should_receive(:enqueue).with(Job::UpdateServiceUsers, service.id)
post :create, {"user"=>{"remember_me"=>"0", "username"=> @user.username, post :create, {"user"=>{"remember_me"=>"0", "username"=> @user.username,
"password"=>"evankorth"}} "password"=>"evankorth"}}
end end
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter