git-fit 0.16.0 → 0.16.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
  SHA256:
3
- metadata.gz: 96f07075fbc309422c6d22333b450da57b2027720bc5600ac4fe8f186bd0a02e
4
- data.tar.gz: d4402443354e15c63139a209f8ab8dac1b8a14b4b06de2bcf591c305d077d946
3
+ metadata.gz: b6d2e554e3fbd61794daf4d15fe4a934d20e1bf8f988fbe13778e925eb26bb91
4
+ data.tar.gz: 83550dc8b0bb9ada27501fab66a5d9fd0e8f5dd5aadb846de9dfdbb46e5ccedb
5
5
  SHA512:
6
- metadata.gz: 3bed1beb9ac7ac48482acda16ebf7cc24aa79a75d4b66a94b291ae9ec30434de2a2f5d8aa535cb4cfc4f0685fe10f27be8c753e9f71c8159d18376efa612858a
7
- data.tar.gz: 29503c3c03b0373dea84e6335a8abb8be0be846e46e6a77453132b692dfe85b70dd6ff8d12c69319caa4421ab7e9b55029fe89bad444a7788530da071ce24303
6
+ metadata.gz: 5f288c5a834bff0877a6949d2b79a642f6599b51188f653b9fed9f6699d5d5fab63a48a725c5088935d26d6fb2a90ae1984032add551cb303cacbd3ef6851aae
7
+ data.tar.gz: 54494ec90b395bf6417c9a437beb128661522b4ebed0421d1129c0a3e9b9ad17e5acda8ec1524643b66dae70028bc6ba22e5686ef51ab57b8f839b4aab528a39
@@ -69,12 +69,13 @@ module GitFit
69
69
  return [[], points] if times.empty?
70
70
 
71
71
  sport = classify_sport(ti['tracktype'], header)
72
+ distance = ti['totaldistance'].to_f
72
73
  attrs = build_activity_attrs({
73
74
  run_id: build_run_id('2bulu', SecureRandom.hex(8)),
74
75
  name: ti['title'],
75
- distance: total_distance(points),
76
- moving_time: moving_time_from_points(points),
77
- elapsed_time: elapsed_time_from_points(points),
76
+ distance: distance.positive? ? distance : total_distance(points),
77
+ moving_time: header_moving_time(ti) || moving_time_from_points(points),
78
+ elapsed_time: header_elapsed_time(ti) || elapsed_time_from_points(points),
78
79
  sport_category: sport,
79
80
  sport_type: ti['tracktype'],
80
81
  start_date: times.min,
@@ -104,6 +105,18 @@ module GitFit
104
105
  attrs[:total_down] = track_info['totaldown']
105
106
  end
106
107
 
108
+ def header_elapsed_time(track_info)
109
+ return nil unless track_info['starttime'] && track_info['endtime']
110
+ v = (track_info['endtime'] - track_info['starttime']) / 1000.0
111
+ v.positive? ? v.round : nil
112
+ end
113
+
114
+ def header_moving_time(track_info)
115
+ return nil unless track_info['totaltime'] && track_info['pausetime']
116
+ v = (track_info['totaltime'] - track_info['pausetime']) / 1000.0
117
+ v.positive? ? v.round : nil
118
+ end
119
+
107
120
  def extract_2tk_header(content)
108
121
  pos = content.index('{')
109
122
  return {} unless pos
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module GitFit
4
- VERSION = '0.16.0'
4
+ VERSION = '0.16.1'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: git-fit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.16.0
4
+ version: 0.16.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lax