datetime_diff 0.3.5 → 0.3.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/datetime_diff.rb +23 -6
- data/lib/datetime_diff/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e90c28f83a23dda05a4dd059242ca70674a15ae8
|
4
|
+
data.tar.gz: 3a8f087c6c03359d38b4a57473888d4497e98aa3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7ec5607e888b67d92290d922cd74c7f711d2ad92e2a8f454557508bad9fcb5a4a7b72cdd830c1bd6042c2fa53b378044b6b29acf9a407a663bdf0a5d3c7c0f49
|
7
|
+
data.tar.gz: 1323e568e6da511f2d396cf12c21d66b34c78d18d96b71d7e474761cdef99d4713c614f3dc5d0e5e6c0ad52c824d7392f542e6b76e7c53ab465598b67fb9ab95
|
data/lib/datetime_diff.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
require "datetime_diff/version"
|
2
|
+
|
1
3
|
module DateTimeDiff
|
2
4
|
|
3
5
|
def self.diff_to_s mls, format=nil, options
|
@@ -43,16 +45,31 @@ module DateTimeDiff
|
|
43
45
|
#values = format.scan(/\%\S[\S|\s]{1,3}*?(?!%)/)
|
44
46
|
values = format.scan(/\%\w{1,3}/)
|
45
47
|
|
46
|
-
zero_left = options[:zero_left] || false
|
48
|
+
zero_left = !options[:zero_left] || false
|
47
49
|
|
48
50
|
for xV in values
|
49
|
-
number = t[xV.gsub("%","").to_sym]
|
50
|
-
zero_left = false if number
|
51
|
-
unless zero_left && number
|
51
|
+
number = t[xV.gsub("%","").to_sym].to_i
|
52
|
+
zero_left = false if number > 0
|
53
|
+
unless zero_left && number == 0
|
52
54
|
if values.index(xV) + 1 == values.size
|
53
|
-
|
55
|
+
x = format.scan(/(?<=#{xV})[\s|\S]*?$/)[0]
|
56
|
+
else
|
57
|
+
x = "#{format.scan(/(?<=#{xV})[\s|\S]*?(?=\%)/)[0]}"
|
58
|
+
end
|
59
|
+
if x.strip[0] == "[" && x.strip[-1] == "]"
|
60
|
+
values_ = x.gsub(/\[|\]/, '').split(',')
|
61
|
+
while values_.size < 3
|
62
|
+
values_.unshift nil
|
63
|
+
end
|
64
|
+
if number == 0 && values_[0]
|
65
|
+
r += "#{number}#{values_[0]}"
|
66
|
+
elsif number == 1 && values_[1]
|
67
|
+
r += "#{number}#{values_[1]}"
|
68
|
+
elsif number > 1 && values_[2]
|
69
|
+
r += "#{number}#{values_[2]}"
|
70
|
+
end
|
54
71
|
else
|
55
|
-
r += "#{number}#{
|
72
|
+
r += "#{number}#{x}"
|
56
73
|
end
|
57
74
|
else
|
58
75
|
zero_left = true
|