Browse Source

Add BOMs before CSV info

pull/837/head
natdeanlewissoftwire 3 years ago
parent
commit
597381f287
  1. 3
      app/controllers/case_logs_controller.rb
  2. 6
      app/controllers/organisations_controller.rb
  3. 4
      app/controllers/users_controller.rb

3
app/controllers/case_logs_controller.rb

@ -13,6 +13,7 @@ class CaseLogsController < ApplicationController
all_logs = current_user.case_logs all_logs = current_user.case_logs
unpaginated_filtered_logs = filtered_case_logs(filtered_collection(all_logs, search_term)) unpaginated_filtered_logs = filtered_case_logs(filtered_collection(all_logs, search_term))
byte_order_mark = "\uFEFF"
respond_to do |format| respond_to do |format|
format.html do format.html do
@ -22,7 +23,7 @@ class CaseLogsController < ApplicationController
end end
format.csv do format.csv do
send_data unpaginated_filtered_logs.to_csv, filename: "logs-#{Time.zone.now}.csv" send_data byte_order_mark + unpaginated_filtered_logs.to_csv, filename: "logs-#{Time.zone.now}.csv"
end end
end end
end end

6
app/controllers/organisations_controller.rb

@ -31,6 +31,7 @@ class OrganisationsController < ApplicationController
def users def users
organisation_users = @organisation.users.sorted_by_organisation_and_role organisation_users = @organisation.users.sorted_by_organisation_and_role
unpaginated_filtered_users = filtered_collection(organisation_users, search_term) unpaginated_filtered_users = filtered_collection(organisation_users, search_term)
byte_order_mark = "\uFEFF"
respond_to do |format| respond_to do |format|
format.html do format.html do
@ -45,7 +46,7 @@ class OrganisationsController < ApplicationController
end end
end end
format.csv do format.csv do
send_data unpaginated_filtered_users.to_csv, filename: "users-#{@organisation.name}-#{Time.zone.now}.csv" send_data byte_order_mark + unpaginated_filtered_users.to_csv, filename: "users-#{@organisation.name}-#{Time.zone.now}.csv"
end end
end end
end end
@ -93,6 +94,7 @@ class OrganisationsController < ApplicationController
organisation_logs = CaseLog.all.where(owning_organisation_id: @organisation.id) organisation_logs = CaseLog.all.where(owning_organisation_id: @organisation.id)
unpaginated_filtered_logs = filtered_case_logs(filtered_collection(organisation_logs, search_term)) unpaginated_filtered_logs = filtered_case_logs(filtered_collection(organisation_logs, search_term))
byte_order_mark = "\uFEFF"
respond_to do |format| respond_to do |format|
format.html do format.html do
@ -103,7 +105,7 @@ class OrganisationsController < ApplicationController
end end
format.csv do format.csv do
send_data unpaginated_filtered_logs.to_csv, filename: "logs-#{@organisation.name}-#{Time.zone.now}.csv" send_data byte_order_mark + unpaginated_filtered_logs.to_csv, filename: "logs-#{@organisation.name}-#{Time.zone.now}.csv"
end end
end end
else else

4
app/controllers/users_controller.rb

@ -12,6 +12,8 @@ class UsersController < ApplicationController
all_users = User.sorted_by_organisation_and_role all_users = User.sorted_by_organisation_and_role
filtered_users = filtered_users(all_users, search_term) filtered_users = filtered_users(all_users, search_term)
byte_order_mark = "\uFEFF"
@pagy, @users = pagy(filtered_users) @pagy, @users = pagy(filtered_users)
@searched = search_term.presence @searched = search_term.presence
@total_count = all_users.size @total_count = all_users.size
@ -20,7 +22,7 @@ class UsersController < ApplicationController
format.html format.html
format.csv do format.csv do
if current_user.support? if current_user.support?
send_data filtered_users.to_csv, filename: "users-#{Time.zone.now}.csv" send_data byte_order_mark + filtered_users.to_csv, filename: "users-#{Time.zone.now}.csv"
else else
head :unauthorized head :unauthorized
end end

Loading…
Cancel
Save