hanreki 1.0.0 → 1.1.0
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 +4 -4
- data/lib/hanreki/event.rb +9 -6
- data/lib/hanreki/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e19a99e96ee72d1f6259a403d3be1b18aa8141f2
|
4
|
+
data.tar.gz: 61b77c384c40eb397c0ca071cecbeac193332de7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: dc07f84b3368ffe36618ce9d39918cc4e8fd89c79b67d7b0719a5b8d34626bb76189046b6179090e083b8173b73165a16d47344a14da60042c3da11ab196f978
|
7
|
+
data.tar.gz: c9737f48c8221baaf4e50c4b7d0545d9469db75237041697eab1c5548d501e6020630857e7c2d8f5b1c51200ac2021b722574bfcc23872b96060d93c2540702a
|
data/lib/hanreki/event.rb
CHANGED
@@ -4,7 +4,7 @@ require 'hanreki/time_util'
|
|
4
4
|
# Event of CAMPHOR- Schedule
|
5
5
|
class Event
|
6
6
|
using ExtendTime
|
7
|
-
|
7
|
+
DOWS = %w(日 月 火 水 木 金 土)
|
8
8
|
attr_accessor :start, :end
|
9
9
|
attr_accessor :public_summary, :private_summary
|
10
10
|
attr_accessor :url
|
@@ -26,16 +26,19 @@ class Event
|
|
26
26
|
def self.from_master(month, line)
|
27
27
|
event = Event.new({})
|
28
28
|
first_day = Date.parse("#{month}01")
|
29
|
-
day,
|
29
|
+
day, dow, hour_start, hour_end, public_summary, private_summary, url = line.fields.map { |c| c.to_s.strip }
|
30
30
|
# Zero-fill (eg. 1 -> 01, 02 -> 02)
|
31
31
|
day = day.rjust(2, "0")
|
32
32
|
raise ArgumentError, 'invalid day' unless day.length == 2
|
33
33
|
raise ArgumentError, 'invalid day' unless (first_day...first_day.next_month).include?(Date.parse("#{month}#{day}"))
|
34
|
-
event.start = Time.parse("#{month}#{day} #{hour_start} +09:00")
|
35
|
-
event.end = Time.parse("#{month}#{day} #{hour_end} +09:00")
|
34
|
+
event.start = Time.parse("#{month}#{day} #{hour_start} +09:00").getlocal("+09:00")
|
35
|
+
event.end = Time.parse("#{month}#{day} #{hour_end} +09:00").getlocal("+09:00")
|
36
36
|
event.public_summary = public_summary unless public_summary.empty?
|
37
37
|
event.private_summary = private_summary unless private_summary.empty?
|
38
38
|
event.url = url unless url.empty?
|
39
|
+
# 曜日はインスタンス変数に保持しないのでここでチェックする
|
40
|
+
raise ArgumentError, 'invalid day of the week' unless DOWS.include? dow
|
41
|
+
raise ArgumentError, 'invalid day of the week' unless DOWS[event.start.wday] == dow
|
39
42
|
event.validate
|
40
43
|
event
|
41
44
|
end
|
@@ -61,11 +64,11 @@ class Event
|
|
61
64
|
|
62
65
|
# Format for master CSV files
|
63
66
|
def to_master
|
64
|
-
|
67
|
+
dow = DOWS[@start.wday]
|
65
68
|
date_str = @start.strftime('%d')
|
66
69
|
start_string = @start.strftime('%R')
|
67
70
|
end_string = @end.strftime('%R')
|
68
|
-
[date_str,
|
71
|
+
[date_str, dow, start_string, end_string, @public_summary, @private_summary, @url]
|
69
72
|
end
|
70
73
|
|
71
74
|
def private?
|
data/lib/hanreki/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hanreki
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- CAMPHOR-
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-03-
|
11
|
+
date: 2017-03-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
@@ -126,7 +126,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
126
126
|
version: '0'
|
127
127
|
requirements: []
|
128
128
|
rubyforge_project:
|
129
|
-
rubygems_version: 2.
|
129
|
+
rubygems_version: 2.2.0
|
130
130
|
signing_key:
|
131
131
|
specification_version: 4
|
132
132
|
summary: Simple schedule manager for CAMPHOR-
|