kiwicourse 0.5.0 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d7b9ff279325700a6b408a2aca343429a031f1c4
4
- data.tar.gz: 04e73095dc4f2411a78b745e26cbb409f7bfa179
3
+ metadata.gz: ada816db70fd85d1a7981cf06bba8257e01dd130
4
+ data.tar.gz: 977f702cbc2fb6b77101ebbe355510cbb68a7167
5
5
  SHA512:
6
- metadata.gz: eb3c64503319829d557c8fdc69bbdf426af642d817b4b75957f340a2e4dcc62edcfa6f3149147b003ede91412317821a741a1fbe7c169782f282abbad8c32221
7
- data.tar.gz: a82a0d1b1c0e11dfc825dd1c7b4b03a7bb55488c7ccdcaa9c95b5f3a8bb1b60e0a257b09d74a93359b166e0b7a2d90585995173de092fe1a51cf80693529807a
6
+ metadata.gz: 63fdb381de9510d65129c0b1349ac8dc4e0865ede618622d823ef60532c49b6a85e43afa82c41ce30b5fb1434208d9d4aaece216d42ade0c6d002833987522fe
7
+ data.tar.gz: 6e513d41f0b5bc57f88b7e2315a99e8351d0753fea62e85a73aa296c1bce4f803f3b73e336666e7da254e4d094802caaac8c67a12e1a0ab577fd0e41b3777233
data/bin/kiwicourse CHANGED
@@ -3,14 +3,14 @@ require 'digest'
3
3
  require 'thor'
4
4
  require 'fuzzy_match'
5
5
  require 'launchy'
6
- require 'kiwicourse' # for production
7
- # require './lib/coursesdesc/courses.rb' # for cmd line testing purposes
8
- # require './lib/coursesdesc/offline.rb' # for cmd line testing purposes
6
+ # require 'kiwicourse' # for production
7
+ require './lib/coursesdesc/courses.rb' # for cmd line testing purposes
8
+ require './lib/coursesdesc/offline.rb' # for cmd line testing purposes
9
9
 
10
10
  class KiwiCLI < Thor
11
11
  desc 'search COURSENAME', 'Search a course on ShareCourse'
12
12
  def search(coursename)
13
- sc = KiwiDumper::Courses.new.get_instance
13
+ sc = KiwiScraper::OfflineCourses.new.get_instance
14
14
  result = FuzzyMatch.new(sc.course_name).find(coursename)
15
15
  input_key = Digest::SHA256.digest result
16
16
  id = sc.courses_name_to_id_mapping[input_key]
@@ -19,7 +19,7 @@ class KiwiCLI < Thor
19
19
 
20
20
  desc 'list', 'List all courses on ShareCourse'
21
21
  def list
22
- sc = KiwiDumper::Courses.new.get_instance
22
+ sc = KiwiScraper::OfflineCourses.new.get_instance
23
23
  sc.courses_id_to_all_mapping.each do |key, info|
24
24
  puts "#{key} - #{info['name']}"
25
25
  end
@@ -27,14 +27,14 @@ class KiwiCLI < Thor
27
27
 
28
28
  desc 'open ID', 'Open the course page on browser with course id'
29
29
  def open(id)
30
- sc = KiwiDumper::Courses.new.get_instance
30
+ sc = KiwiScraper::OfflineCourses.new.get_instance
31
31
  course = sc.courses_id_to_all_mapping[id]
32
32
  Launchy.open(course['url'])
33
33
  end
34
34
 
35
35
  desc 'info ID', 'Display information about course.'
36
36
  def info(id)
37
- sc = KiwiDumper::Courses.new.get_instance
37
+ sc = KiwiScraper::OfflineCourses.new.get_instance
38
38
  course = sc.courses_id_to_all_mapping[id]
39
39
  puts "Course ID: #{course['id']}"
40
40
  puts "Course: #{course['name']}"
@@ -0,0 +1,20 @@
1
+ require_relative './courses.rb'
2
+
3
+ DUMP_FILE_PATH = Dir.home + '/.kiwicourse.dump'
4
+
5
+ module KiwiScraper
6
+ class OfflineCourses
7
+ def initialize
8
+ if File.exist?(DUMP_FILE_PATH)
9
+ @sc = Marshal.load(File.read(DUMP_FILE_PATH))
10
+ else
11
+ @sc = KiwiScraper::ShareCourse.new
12
+ File.open(DUMP_FILE_PATH, 'w') { |f| f.write(Marshal.dump(@sc)) }
13
+ end
14
+ end
15
+
16
+ def get_instance
17
+ @sc
18
+ end
19
+ end
20
+ end
@@ -1,5 +1,5 @@
1
1
  # Versioning
2
2
  module CoursesDesc
3
- VERSION = '0.5.0'
3
+ VERSION = '0.5.1'
4
4
  DATE = '2015-10-24'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kiwicourse
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Lin
@@ -127,6 +127,7 @@ files:
127
127
  - bin/kiwicourse
128
128
  - kiwicourse.gemspec
129
129
  - lib/coursesdesc/courses.rb
130
+ - lib/coursesdesc/offline.rb
130
131
  - lib/coursesdesc/version.rb
131
132
  - lib/kiwicourse.rb
132
133
  - spec/courses_date_data.rb