Sha256: 92fd751c5029b2802c0f4703103d45017339e1f7f932c976d12f9326bed21046
Contents?: true
Size: 1.52 KB
Versions: 1
Compression:
Stored size: 1.52 KB
Contents
#!/usr/bin/env ruby require 'digest' require 'thor' require 'launchy' require 'kiwicourse' # for production # require './lib/coursesdesc/courses.rb' # for cmd line testing purposes # require './lib/coursesdesc/offline.rb' # for cmd line testing purposes class KiwiCLI < Thor desc 'search COURSENAME', 'Search a course on ShareCourse' def search(coursename) sc = KiwiScraper::OfflineCourses.new.get_instance id = sc.search_courses(coursename)['id'] name = sc.search_courses(coursename)['name'] puts "#{id} - #{name}" end desc 'list', 'List all courses on ShareCourse' def list sc = KiwiScraper::OfflineCourses.new.get_instance sc.courses_id_to_all_mapping.each do |key, info| puts "#{key} - #{info['name']}" end end desc 'open ID', 'Open the course page on browser with course id' def open(id) sc = KiwiScraper::OfflineCourses.new.get_instance course = sc.courses_id_to_all_mapping[id] Launchy.open(course['url']) end desc 'info ID', 'Display information about course.' def info(id) sc = KiwiScraper::OfflineCourses.new.get_instance course = sc.courses_id_to_all_mapping[id] puts "Course ID: #{course['id']}" puts "Course: #{course['name']}" puts "Course time: #{course['date']}" puts "Course webpage: #{course['url']}" end desc 'update', 'Update the offline courses data' def update sc = KiwiScraper::ShareCourse.new File.open(DUMP_FILE_PATH, 'w') { |f| f.write(Marshal.dump(sc)) } puts 'Already up to date.' end end KiwiCLI.start(ARGV)
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
kiwicourse-0.5.3 | bin/kiwicourse |