Commit dbb81838f665c240c485752a1f7b4d7a730ed4e9
1 parent
964df626
Exists in
master
and in
28 other branches
extracted repeated code to a method
Showing
1 changed file
with
21 additions
and
43 deletions
Show diff stats
app/controllers/public/account_controller.rb
@@ -378,39 +378,12 @@ class AccountController < ApplicationController | @@ -378,39 +378,12 @@ class AccountController < ApplicationController | ||
378 | end | 378 | end |
379 | 379 | ||
380 | if params[:return_to] | 380 | if params[:return_to] |
381 | - #I never get here | ||
382 | redirect_to params[:return_to] | 381 | redirect_to params[:return_to] |
383 | elsif environment.enabled?('allow_change_of_redirection_after_login') | 382 | elsif environment.enabled?('allow_change_of_redirection_after_login') |
384 | - case user.preferred_login_redirection | ||
385 | - when 'keep_on_same_page' | ||
386 | - redirect_back_or_default(user.admin_url) | ||
387 | - when 'site_homepage' | ||
388 | - redirect_to :controller => :home | ||
389 | - when 'user_profile_page' | ||
390 | - redirect_to user.public_profile_url | ||
391 | - when 'user_homepage' | ||
392 | - redirect_to user.url | ||
393 | - when 'user_control_panel' | ||
394 | - redirect_to user.admin_url | ||
395 | - else | ||
396 | - redirect_back_or_default(user.admin_url) | ||
397 | - end | 383 | + check_redirection_options(user, user.preferred_login_redirection, user.admin_url) |
398 | else | 384 | else |
399 | if environment == current_user.environment | 385 | if environment == current_user.environment |
400 | - case environment.redirection_after_login | ||
401 | - when 'keep_on_same_page' | ||
402 | - redirect_back_or_default(user.admin_url) | ||
403 | - when 'site_homepage' | ||
404 | - redirect_to :controller => :home | ||
405 | - when 'user_profile_page' | ||
406 | - redirect_to user.public_profile_url | ||
407 | - when 'user_homepage' | ||
408 | - redirect_to user.url | ||
409 | - when 'user_control_panel' | ||
410 | - redirect_to user.admin_url | ||
411 | - else | ||
412 | - redirect_back_or_default(user.admin_url) | ||
413 | - end | 386 | + check_redirection_options(user, environment.redirection_after_login, user.admin_url) |
414 | else | 387 | else |
415 | redirect_back_or_default(:controller => 'home') | 388 | redirect_back_or_default(:controller => 'home') |
416 | end | 389 | end |
@@ -418,20 +391,7 @@ class AccountController < ApplicationController | @@ -418,20 +391,7 @@ class AccountController < ApplicationController | ||
418 | end | 391 | end |
419 | 392 | ||
420 | def go_to_signup_initial_page | 393 | def go_to_signup_initial_page |
421 | - case @user.environment.redirection_after_signup | ||
422 | - when 'keep_on_same_page' | ||
423 | - redirect_back_or_default(user.admin_url) | ||
424 | - when 'site_homepage' | ||
425 | - redirect_to :controller => :home | ||
426 | - when 'user_profile_page' | ||
427 | - redirect_to user.public_profile_url | ||
428 | - when 'user_homepage' | ||
429 | - redirect_to user.url | ||
430 | - when 'user_control_panel' | ||
431 | - redirect_to user.admin_url | ||
432 | - else | ||
433 | - redirect_to user.url | ||
434 | - end | 394 | + check_redirection_options(user, user.environment.redirection_after_signup, user.url) |
435 | end | 395 | end |
436 | 396 | ||
437 | def redirect_if_logged_in | 397 | def redirect_if_logged_in |
@@ -449,4 +409,22 @@ class AccountController < ApplicationController | @@ -449,4 +409,22 @@ class AccountController < ApplicationController | ||
449 | user | 409 | user |
450 | end | 410 | end |
451 | 411 | ||
412 | + protected | ||
413 | + | ||
414 | + def check_redirection_options(user, condition, default) | ||
415 | + case condition | ||
416 | + when 'keep_on_same_page' | ||
417 | + redirect_back_or_default(user.admin_url) | ||
418 | + when 'site_homepage' | ||
419 | + redirect_to :controller => :home | ||
420 | + when 'user_profile_page' | ||
421 | + redirect_to user.public_profile_url | ||
422 | + when 'user_homepage' | ||
423 | + redirect_to user.url | ||
424 | + when 'user_control_panel' | ||
425 | + redirect_to user.admin_url | ||
426 | + else | ||
427 | + redirect_back_or_default(default) | ||
428 | + end | ||
429 | + end | ||
452 | end | 430 | end |