add_to_calendar 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b1fba2b9dfdd72ba02d3d29413d1035c6f726569610e18227802cfd85f11e7af
4
- data.tar.gz: ab89af6a02c276049dbbcac88fca397e37c3305084836a5e8467629064d414f2
3
+ metadata.gz: 789ef2611f13b5cef3a81aa059cd0f414a5fe55ab741f875973e33d06519240a
4
+ data.tar.gz: 4f9158d43cc9eeb7ab470b2847df479a73e4f439245678f5f9153b7ac4c48353
5
5
  SHA512:
6
- metadata.gz: ddc95426b93e001ea114f67b587b721ddea084d2f7607316181ee8c56e002a5c881ae10653d0a4ba9f4fdfee57c918f92e3d3320f54e4cbf9a9bf79faea59b8d
7
- data.tar.gz: 4b0015473216a8da08b990ee5e290e80e8e2b8b873971a2197c84da30aaa1489d6878a10c03ed5efbffa5f719148b60434ca99dbeee1eee6cdbd3fccdf3a3a03
6
+ metadata.gz: c4018b1bff230e0c5c280e2d06160cc3698f30641c436ce31dbb99f15bfe381748fad1cc42a3049c93941b245ca7df57149f5404c8fcd70f1290f9c8d56c43fa
7
+ data.tar.gz: f410a0121363a5a4cb506ff9abbeef6bdeeee99fb641d7b0099d8029139a2b212b64c2cacee44e43653e9019fc63212bf694bef9d1a5c8ae7fd814342ccb7453
@@ -1,9 +1,9 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- add_to_calendar (0.2.0)
5
- tzinfo (~> 2.0.2)
6
- tzinfo-data (~> 1.2020.1)
4
+ add_to_calendar (0.2.1)
5
+ tzinfo (>= 1.1, < 3)
6
+ tzinfo-data (~> 1.2020)
7
7
 
8
8
  GEM
9
9
  remote: https://rubygems.org/
@@ -8,7 +8,7 @@ Gem::Specification.new do |spec|
8
8
  spec.authors = ["Jared Turner"]
9
9
  spec.email = ["jaredlt01@gmail.com"]
10
10
 
11
- spec.summary = "Generate 'Add To Calendar' URLs for Google, Apple, Office 365, Outlook, Yahoo calendars"
11
+ spec.summary = "Generate 'Add To Calendar' URLs for Apple, Google, Office 365, Outlook, Outlook.com and Yahoo calendars"
12
12
  # spec.description = %q{TODO: Write a longer description or delete this line.}
13
13
  spec.homepage = "https://github.com/jaredlt/add_to_calendar"
14
14
  spec.license = "MIT"
@@ -28,8 +28,8 @@ Gem::Specification.new do |spec|
28
28
 
29
29
  spec.required_ruby_version = '>= 2.0'
30
30
 
31
- spec.add_dependency "tzinfo", "~> 2.0.2"
32
- spec.add_dependency "tzinfo-data", "~> 1.2020.1"
31
+ spec.add_dependency "tzinfo", ">= 1.1", "< 3"
32
+ spec.add_dependency "tzinfo-data", "~> 1.2020"
33
33
 
34
34
  spec.add_development_dependency "bundler", "~> 2.0"
35
35
  spec.add_development_dependency "rake", "~> 13.0.1"
@@ -118,7 +118,7 @@ module AddToCalendar
118
118
  params[:LOCATION] = url_encode(location) if location
119
119
  params[:UID] = "-#{url_encode(url)}" if url
120
120
  params[:UID] = "-#{utc_datetime(start_datetime)}-#{url_encode(title)}" unless params[:UID] # set uid based on starttime and title only if url is unavailable
121
-
121
+
122
122
  new_line = "%0A"
123
123
  params.each do |key, value|
124
124
  calendar_url << "#{new_line}#{key}=#{value}"
@@ -176,10 +176,10 @@ module AddToCalendar
176
176
  else
177
177
  params[:enddt] = utc_datetime_microsoft(start_datetime + 60*60) # 1 hour later
178
178
  end
179
- params[:body] = url_encode(description) if description
179
+ params[:body] = url_encode(newlines_to_html_br(description)) if description
180
180
  if add_url_to_description && url
181
181
  if params[:body]
182
- params[:body] << url_encode("\n\n#{url}")
182
+ params[:body] << url_encode(newlines_to_html_br("\n\n#{url}"))
183
183
  else
184
184
  params[:body] = url_encode(url)
185
185
  end
@@ -194,27 +194,31 @@ module AddToCalendar
194
194
  end
195
195
 
196
196
  def utc_datetime(datetime)
197
- t = timezone.local_time(
198
- datetime.strftime("%Y").to_i,
199
- datetime.strftime("%m").to_i,
200
- datetime.strftime("%d").to_i,
201
- datetime.strftime("%H").to_i,
202
- datetime.strftime("%M").to_i,
203
- datetime.strftime("%S").to_i
204
- ).utc
197
+ t = timezone.local_to_utc(
198
+ Time.new(
199
+ datetime.strftime("%Y").to_i,
200
+ datetime.strftime("%m").to_i,
201
+ datetime.strftime("%d").to_i,
202
+ datetime.strftime("%H").to_i,
203
+ datetime.strftime("%M").to_i,
204
+ datetime.strftime("%S").to_i
205
+ )
206
+ )
205
207
 
206
208
  return t.strftime('%Y%m%dT%H%M%SZ')
207
209
  end
208
210
 
209
211
  def utc_datetime_microsoft(datetime)
210
- t = timezone.local_time(
211
- datetime.strftime("%Y").to_i,
212
- datetime.strftime("%m").to_i,
213
- datetime.strftime("%d").to_i,
214
- datetime.strftime("%H").to_i,
215
- datetime.strftime("%M").to_i,
216
- datetime.strftime("%S").to_i
217
- ).utc
212
+ t = timezone.local_to_utc(
213
+ Time.new(
214
+ datetime.strftime("%Y").to_i,
215
+ datetime.strftime("%m").to_i,
216
+ datetime.strftime("%d").to_i,
217
+ datetime.strftime("%H").to_i,
218
+ datetime.strftime("%M").to_i,
219
+ datetime.strftime("%S").to_i
220
+ )
221
+ )
218
222
 
219
223
  return t.strftime('%Y-%m-%dT%H:%M:%SZ')
220
224
  end
@@ -230,5 +234,9 @@ module AddToCalendar
230
234
  def seconds_to_hours_minutes(sec)
231
235
  "%02d%02d" % [sec / 3600, sec / 60 % 60]
232
236
  end
237
+
238
+ def newlines_to_html_br(string)
239
+ string.gsub(/(?:\n\r?|\r\n?)/, '<br>')
240
+ end
233
241
  end
234
242
  end
@@ -1,3 +1,3 @@
1
1
  module AddToCalendar
2
- VERSION = "0.2.0"
2
+ VERSION = "0.2.1"
3
3
  end
metadata CHANGED
@@ -1,43 +1,49 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: add_to_calendar
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jared Turner
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-06-08 00:00:00.000000000 Z
11
+ date: 2020-06-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: tzinfo
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '1.1'
20
+ - - "<"
18
21
  - !ruby/object:Gem::Version
19
- version: 2.0.2
22
+ version: '3'
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
- - - "~>"
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ version: '1.1'
30
+ - - "<"
25
31
  - !ruby/object:Gem::Version
26
- version: 2.0.2
32
+ version: '3'
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: tzinfo-data
29
35
  requirement: !ruby/object:Gem::Requirement
30
36
  requirements:
31
37
  - - "~>"
32
38
  - !ruby/object:Gem::Version
33
- version: 1.2020.1
39
+ version: '1.2020'
34
40
  type: :runtime
35
41
  prerelease: false
36
42
  version_requirements: !ruby/object:Gem::Requirement
37
43
  requirements:
38
44
  - - "~>"
39
45
  - !ruby/object:Gem::Version
40
- version: 1.2020.1
46
+ version: '1.2020'
41
47
  - !ruby/object:Gem::Dependency
42
48
  name: bundler
43
49
  requirement: !ruby/object:Gem::Requirement
@@ -139,6 +145,6 @@ requirements: []
139
145
  rubygems_version: 3.0.6
140
146
  signing_key:
141
147
  specification_version: 4
142
- summary: Generate 'Add To Calendar' URLs for Google, Apple, Office 365, Outlook, Yahoo
143
- calendars
148
+ summary: Generate 'Add To Calendar' URLs for Apple, Google, Office 365, Outlook, Outlook.com
149
+ and Yahoo calendars
144
150
  test_files: []