allows admins to see budgets in reviewing and selecting phase

This commit is contained in:
rgarcia
2017-03-15 14:50:50 +01:00
parent bdaad27eb0
commit 170cb89a5c
2 changed files with 64 additions and 0 deletions

View File

@@ -7,6 +7,11 @@ class Management::BudgetsController < Management::BaseController
def create_investments def create_investments
@budgets = Budget.accepting.order(created_at: :desc).page(params[:page]) @budgets = Budget.accepting.order(created_at: :desc).page(params[:page])
if current_manager_administrator?
@budgets += Budget.reviewing.order(created_at: :desc) +
Budget.selecting.order(created_at: :desc)
end
end end
def support_investments def support_investments
@@ -23,4 +28,8 @@ class Management::BudgetsController < Management::BaseController
check_verified_user t("management.budget_investments.alert.unverified_user") check_verified_user t("management.budget_investments.alert.unverified_user")
end end
def current_manager_administrator?
session[:manager]["login"].match("admin")
end
end end

View File

@@ -137,6 +137,61 @@ feature 'Budget Investments' do
end end
end end
scenario "Listing - managers can see budgets in accepting phase" do
accepting_budget = create(:budget, phase: "accepting")
reviewing_budget = create(:budget, phase: "reviewing")
selecting_budget = create(:budget, phase: "selecting")
valuating_budget = create(:budget, phase: "valuating")
balloting_budget = create(:budget, phase: "balloting")
reviewing_ballots_budget = create(:budget, phase: "reviewing_ballots")
finished = create(:budget, phase: "finished")
user = create(:user, :level_two)
login_managed_user(user)
click_link "Create budget investment"
expect(page).to have_content(accepting_budget.name)
expect(page).to_not have_content(reviewing_budget.name)
expect(page).to_not have_content(selecting_budget.name)
expect(page).to_not have_content(valuating_budget.name)
expect(page).to_not have_content(balloting_budget.name)
expect(page).to_not have_content(reviewing_ballots_budget.name)
expect(page).to_not have_content(finished.name)
end
scenario "Listing - admins can see budgets in accepting, reviewing and selecting phases" do
accepting_budget = create(:budget, phase: "accepting")
reviewing_budget = create(:budget, phase: "reviewing")
selecting_budget = create(:budget, phase: "selecting")
valuating_budget = create(:budget, phase: "valuating")
balloting_budget = create(:budget, phase: "balloting")
reviewing_ballots_budget = create(:budget, phase: "reviewing_ballots")
finished = create(:budget, phase: "finished")
visit root_path
click_link "Sign out"
admin = create(:administrator)
login_as(admin.user)
user = create(:user, :level_two)
login_managed_user(user)
visit management_sign_in_path
click_link "Create budget investment"
expect(page).to have_content(accepting_budget.name)
expect(page).to have_content(reviewing_budget.name)
expect(page).to have_content(selecting_budget.name)
expect(page).to_not have_content(valuating_budget.name)
expect(page).to_not have_content(balloting_budget.name)
expect(page).to_not have_content(reviewing_ballots_budget.name)
expect(page).to_not have_content(finished.name)
end
context "Supporting" do context "Supporting" do
scenario 'Supporting budget investments on behalf of someone in index view', :js do scenario 'Supporting budget investments on behalf of someone in index view', :js do