rails_pdate 0.0.2 → 0.0.3
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 +5 -13
- data/README.rdoc +52 -1
- data/lib/core_string.rb +13 -3
- data/lib/rails_pdate/version.rb +1 -1
- data/test/dummy/log/test.log +33 -10723
- metadata +9 -9
checksums.yaml
CHANGED
@@ -1,15 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
ZWY4YTFkZmNlOThmYTM4NDllMzcwNWJjNjY1OTE4MDU3YzgxNzlhNg==
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 90947e0fa28720b304d9047a786df4a75fb44ffb
|
4
|
+
data.tar.gz: dfb2c7548876c67646bc4e2351d82eb6c32ee7f0
|
7
5
|
SHA512:
|
8
|
-
metadata.gz:
|
9
|
-
|
10
|
-
NmJlYjQwOGIzOTU4ZWI0ZDM5YzJkNjg3YmNjNDFiZjc5ZmY4OWZjNGE1ODBk
|
11
|
-
NjhjMTE0OTNiMzBlMGI1YzEzMGUzYjBiNGQ3MzQxMThhYmNlNTM=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
MTQ5MzMzMmI5MzRlYjlhYmRkY2Y5ZWQ3NjYyYzVmMWQzNDQ4YzE2YjM5OWI5
|
14
|
-
MzEyYWZkNGQzZmUyMWFjMWVmYTE4MTRlNzA2MjQxYzI5ZmVjOGQ2MTI1N2U2
|
15
|
-
ZTQ2ZDg2YjYxYWQ3ZDEwZDQyMWM4ZWFiMTIwODU0YWU2MGM2YWE=
|
6
|
+
metadata.gz: 6064cd98d1efb075abe8645a5d9b46fc9e5437380d56a56690bc0cc65429db7b3259cabc3e6aff521400c36822aa366bb3cc47363ad250580eb8876650e8a0bc
|
7
|
+
data.tar.gz: 059afac43cc89cea3c126f9a3495060d4e8b611d95cfbd3795226bcfee783444d12a7e6772468062b8e55e307fe2be6c2d2c77cf4bc7dff9315efd19f7d1f6c8
|
data/README.rdoc
CHANGED
@@ -1,3 +1,54 @@
|
|
1
1
|
= RailsPdate
|
2
2
|
|
3
|
-
|
3
|
+
rails_pdate is very simple and easy gem library that can used in rails application.
|
4
|
+
|
5
|
+
rails_pdate gem has written in rails 4.0.0 but maybe work in previous versions of rails
|
6
|
+
|
7
|
+
== install
|
8
|
+
* put rails_pdate in Gemfile like this
|
9
|
+
|
10
|
+
gem 'rails_pdate'
|
11
|
+
|
12
|
+
* run bunle install
|
13
|
+
|
14
|
+
bundle install
|
15
|
+
|
16
|
+
|
17
|
+
== Examples
|
18
|
+
|
19
|
+
* parse string to PDate object
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
"1368-11-09".to_pdate # => 1368-11-09
|
24
|
+
|
25
|
+
"1368/11/09".to_pdate # => 1368-11-09
|
26
|
+
|
27
|
+
"1368/11/09".to_pdate.class # => PDate
|
28
|
+
|
29
|
+
|
30
|
+
* convert Date object to PDate object ( Convert from gregorian to persian )
|
31
|
+
|
32
|
+
Date.today.to_pdate # => 1392-09-23
|
33
|
+
|
34
|
+
Date.new(1990, 1, 29).to_pdate # => 1368-11-09
|
35
|
+
|
36
|
+
* convert PDate object to Date object ( convert from persian to gregorian )
|
37
|
+
|
38
|
+
PDate.new(1367, 8, 29).to_date # => Sun, 20 Nov 1988
|
39
|
+
PDate.new(1367, 8, 29).to_date.class # => Date
|
40
|
+
|
41
|
+
|
42
|
+
* convert PDate object to formatted string
|
43
|
+
|
44
|
+
PDate.new(1368, 11, 9).strftime("%Y %m %d") # => "1368 11 09"
|
45
|
+
# '%Y' => year
|
46
|
+
# '%m' => zero padding two digit month
|
47
|
+
# '%d' => zero padding two digit day
|
48
|
+
# '%C' => year / 100
|
49
|
+
# '%y' => year % 100
|
50
|
+
# '%B' => persian month name in finglish
|
51
|
+
# '%b' => persian month name
|
52
|
+
# '%e' => day
|
53
|
+
|
54
|
+
|
data/lib/core_string.rb
CHANGED
@@ -1,7 +1,17 @@
|
|
1
1
|
String.class_eval do
|
2
2
|
def to_pdate
|
3
3
|
|
4
|
-
|
5
|
-
|
4
|
+
if result = self.match(/(\d{2,4})(\/|-)(\d{1,2})(\/|-)(\d{1,2})/)
|
5
|
+
|
6
|
+
year, sp, week, sp, day = result.captures
|
7
|
+
|
8
|
+
if year.to_i < 100
|
9
|
+
year = 1300 + year.to_i
|
10
|
+
end
|
11
|
+
|
12
|
+
return PDate.new(year.to_i, week.to_i, day.to_i)
|
13
|
+
else
|
14
|
+
return nil
|
15
|
+
end
|
6
16
|
end
|
7
|
-
end
|
17
|
+
end
|
data/lib/rails_pdate/version.rb
CHANGED