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 | 378 | end |
| 379 | 379 | |
| 380 | 380 | if params[:return_to] |
| 381 | - #I never get here | |
| 382 | 381 | redirect_to params[:return_to] |
| 383 | 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 | 384 | else |
| 399 | 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 | 387 | else |
| 415 | 388 | redirect_back_or_default(:controller => 'home') |
| 416 | 389 | end |
| ... | ... | @@ -418,20 +391,7 @@ class AccountController < ApplicationController |
| 418 | 391 | end |
| 419 | 392 | |
| 420 | 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 | 395 | end |
| 436 | 396 | |
| 437 | 397 | def redirect_if_logged_in |
| ... | ... | @@ -449,4 +409,22 @@ class AccountController < ApplicationController |
| 449 | 409 | user |
| 450 | 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 | 430 | end | ... | ... |