diff --git a/app/assets/javascripts/columns_selector.js b/app/assets/javascripts/columns_selector.js index 13219831e..db22bb57d 100644 --- a/app/assets/javascripts/columns_selector.js +++ b/app/assets/javascripts/columns_selector.js @@ -82,6 +82,9 @@ App.ColumnsSelector.toggleColumn(event); } }); + $(".column-selecteable").on("inserted", function() { + App.ColumnsSelector.initColumns(); + }); } }; }).call(this); diff --git a/app/views/admin/budget_investments/toggle_selection.js.erb b/app/views/admin/budget_investments/toggle_selection.js.erb index 6ba72db2a..ecf457e8c 100644 --- a/app/views/admin/budget_investments/toggle_selection.js.erb +++ b/app/views/admin/budget_investments/toggle_selection.js.erb @@ -1 +1 @@ -$("#<%= dom_id(@investment) %>").html("<%= j render("select_investment", investment: @investment) %>"); +$("#<%= dom_id(@investment) %>").html("<%= j render("select_investment", investment: @investment) %>").trigger("inserted"); diff --git a/spec/features/admin/budget_investments_spec.rb b/spec/features/admin/budget_investments_spec.rb index b0686a9d4..a1c79fa33 100644 --- a/spec/features/admin/budget_investments_spec.rb +++ b/spec/features/admin/budget_investments_spec.rb @@ -1892,6 +1892,21 @@ describe "Admin budget investments" do "visible_to_valuators,selected,incompatible,author") end + + scenario "Select an investment when some columns are not displayed", :js do + investment.update_attribute(:title, "Don't display me, please!") + + visit admin_budget_budget_investments_path(budget) + within("#js-columns-selector") { find("strong", text: "Columns").click } + within("#js-columns-selector-wrapper") { uncheck "Title" } + + within("#budget_investment_#{investment.id}") do + click_link "Selected" + + expect(page).to have_link "Select" + expect(page).not_to have_content "Don't display me, please!" + end + end end end