19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
# File 'lib/content_directory.rb', line 19
def self.find(path=nil)
result = {}
valid_entry_extensions = %w(.md .markdown .txt .text)
valid_entry_extensions_regex = /.*(#{valid_entry_extensions.join('|\\').prepend('\\')})$/i
begin
entries = Dir.entries "#{root}/#{path}"
rescue Exception => e
return nil
end
entries.reject! do |entry|
entry[0] == "." || entry.include?(".") && !entry.match(valid_entry_extensions_regex)
end
entries.each do |entry|
if entry.include? "."
result[entry.split(".")[0]] = Entry.new "#{path}/#{entry}"
else
result[entry] = find("#{path}/#{entry}")
end
end
return result
end
|