class TerminalCal::App
Public Class Methods
new(options = {})
click to toggle source
# File lib/terminal_cal/app.rb, line 3 def initialize(options = {}) @config = options[:config] || TerminalCal::Config.load @now = Time.now @calendars = [] @events = [] end
run()
click to toggle source
# File lib/terminal_cal/app.rb, line 10 def self.run new.run end
Public Instance Methods
run()
click to toggle source
# File lib/terminal_cal/app.rb, line 14 def run load_calendars load_events print_events rescue => error raise TerminalCal::Errors::Error, error end
Private Instance Methods
load_calendars()
click to toggle source
# File lib/terminal_cal/app.rb, line 24 def load_calendars @calendars = @config[:calendars].to_a.map do |config| TerminalCal::Calendar.new(config: config) end end
load_events()
click to toggle source
# File lib/terminal_cal/app.rb, line 30 def load_events @events = @calendars.map do |calendar| calendar.todays_events end end
print_events()
click to toggle source
# File lib/terminal_cal/app.rb, line 36 def print_events unless @events.empty? tp @events.flatten else puts "No events scheduled yet." end end