1
0
mirror of https://github.com/LaCasemate/fab-manager.git synced 2024-11-29 10:24:20 +01:00
fab-manager/app/services/availabilities_export_service.rb
2017-03-02 12:34:28 +01:00

29 lines
866 B
Ruby

require 'abstract_controller'
require 'action_controller'
require 'action_view'
require 'active_record'
# require any helpers
require './app/helpers/application_helper'
class AvailabilitiesExportService
# export all availabilities
def export_index(export)
@availabilities = Availability.all.includes(:machines, :trainings, :spaces, :event, :slots)
ActionController::Base.prepend_view_path './app/views/'
# place data in view_assigns
view_assigns = {availabilities: @availabilities}
av = ActionView::Base.new(ActionController::Base.view_paths, view_assigns)
av.class_eval do
# include any needed helpers (for the view)
include ApplicationHelper
end
content = av.render template: 'exports/availabilities_index.xlsx.axlsx'
# write content to file
File.open(export.file,"w+b") {|f| f.puts content }
end
end