65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
|
# File 'lib/read_cvs.rb', line 65
def generate(site)
dir = "_csv"
base = File.join(site.source, dir)
return unless File.directory?(base) && (!site.safe || !File.symlink?(base))
entries = Dir.chdir(base) { Dir['*.csv'] }
entries.delete_if { |e| File.directory?(File.join(base, e)) }
entries.each do |entry|
path = File.join(site.source, dir, entry)
next if File.symlink?(path) && site.safe
key = sanitize_filename(File.basename(entry, '.*'))
file_data = CSV.read(path, :headers => true)
data = Hash.new
data['content'] = file_data.to_a[1..-1]
data['content_hash'] = file_data.map(&:to_hash)
data['keys'] = file_data.
data['rows'] = data['content'].size
data['cols'] = file_data..size
csv_data = Hash.new
csv_data[key] = data
site.data.merge!(csv_data){ |shared_key| raise "csv and data named \"#{shared_key}\"" }
end
end
|