Added helper functions, added test data files
[photo-filing.git] / helpers.rb
1 module Sinatra
2 module PhotoFiling
3 module Helpers
4
5 def files_in_dir
6 Dir.entries(session[:current_dir]).select {|f| File.file? f}.sort_by {|f| file_sort_key f}
7 end
8
9 def files_for_today(current_file)
10 if File.exists?(current_file)
11 day = File.mtime(current_file).to_date
12 files_in_dir.select {|f| File.mtime(f).to_date == day}
13 end
14 end
15
16 def next_file(file)
17 fid = files_in_dir
18 i = fid.find_index(file)
19 if i && i < fid.length
20 fid[i + 1]
21 end
22 end
23
24 def previous_file(file)
25 fid = files_in_dir
26 i = fid.find_index(file)
27 if i && i > 0
28 fid[i - 1]
29 end
30 end
31
32 def file_sort_key(file)
33 File.mtime(file).to_s + file
34 end
35
36 end
37 end
38 end