date_range_covers 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.
- data/date_range_covers.gemspec +1 -1
- data/lib/date_range_covers/version.rb +1 -1
- data/lib/date_range_covers.rb +13 -14
- data/spec/date_range_covers_spec.rb +38 -32
- metadata +7 -10
- data/lib/a_date.rb +0 -26
- data/spec/a_date_spec.rb +0 -86
data/date_range_covers.gemspec
CHANGED
@@ -21,5 +21,5 @@ Gem::Specification.new do |spec|
|
|
21
21
|
spec.add_development_dependency "bundler", "~> 1.3"
|
22
22
|
spec.add_development_dependency "rake"
|
23
23
|
spec.add_development_dependency "rspec"
|
24
|
-
spec.add_development_dependency "
|
24
|
+
spec.add_development_dependency "activesupport", "~> 3.2"
|
25
25
|
end
|
data/lib/date_range_covers.rb
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
require "date_range_covers/version"
|
2
2
|
require 'date'
|
3
|
-
require 'active_support'
|
4
|
-
require 'a_date'
|
3
|
+
require 'active_support/all'
|
5
4
|
|
6
5
|
module DateRangeCovers
|
7
6
|
class DateRange
|
@@ -140,21 +139,21 @@ module DateRangeCovers
|
|
140
139
|
unless options.empty?
|
141
140
|
case options[:include]
|
142
141
|
when :both
|
143
|
-
s_date =
|
144
|
-
e_date =
|
142
|
+
s_date = s_date.beginning_of_week(beginning_of_week_day)
|
143
|
+
e_date = e_date.end_of_week(beginning_of_week_day)
|
145
144
|
|
146
|
-
start_of_e_week =
|
145
|
+
start_of_e_week = e_date.beginning_of_week(beginning_of_week_day)
|
147
146
|
|
148
147
|
weeks << s_date unless is_covered?(s_date)
|
149
148
|
weeks << start_of_e_week unless is_covered?(start_of_e_week)
|
150
149
|
|
151
150
|
when :start_week
|
152
|
-
s_date =
|
151
|
+
s_date = s_date.beginning_of_week(beginning_of_week_day)
|
153
152
|
weeks << s_date unless is_covered?(s_date)
|
154
153
|
|
155
154
|
when :end_week
|
156
|
-
e_date =
|
157
|
-
start_of_e_week =
|
155
|
+
e_date = e_date.end_of_week(beginning_of_week_day)
|
156
|
+
start_of_e_week = e_date.beginning_of_week(beginning_of_week_day)
|
158
157
|
|
159
158
|
weeks << start_of_e_week unless is_covered?(start_of_e_week)
|
160
159
|
end
|
@@ -163,16 +162,16 @@ module DateRangeCovers
|
|
163
162
|
#We need to iterate through every week and
|
164
163
|
#see if the week is wholly contained in the
|
165
164
|
#date range
|
166
|
-
bottom_of_week =
|
167
|
-
top_of_week =
|
165
|
+
bottom_of_week = s_date.beginning_of_week(beginning_of_week_day)
|
166
|
+
top_of_week = s_date.end_of_week(beginning_of_week_day)
|
168
167
|
|
169
168
|
while bottom_of_week < e_date do
|
170
169
|
if (s_date..e_date).include?(bottom_of_week..top_of_week)\
|
171
170
|
and !date_range_flows_into_selected_months?(bottom_of_week, top_of_week) # if part of a week already belongs to a covered month, we should not add that week to the list
|
172
171
|
weeks << bottom_of_week unless is_covered?(bottom_of_week)
|
173
172
|
end
|
174
|
-
bottom_of_week
|
175
|
-
top_of_week = bottom_of_week
|
173
|
+
bottom_of_week = bottom_of_week.next_week(beginning_of_week_day)
|
174
|
+
top_of_week = bottom_of_week.end_of_week(beginning_of_week_day)
|
176
175
|
end
|
177
176
|
|
178
177
|
covs[:weeks] = weeks.compact.uniq.sort
|
@@ -259,8 +258,8 @@ module DateRangeCovers
|
|
259
258
|
|
260
259
|
if !is_covered and covs[:weeks] and !covs[:weeks].empty?
|
261
260
|
covs[:weeks].each do |week_date|
|
262
|
-
start_week =
|
263
|
-
end_week =
|
261
|
+
start_week = week_date.beginning_of_week(beginning_of_week_day)
|
262
|
+
end_week = week_date.end_of_week(beginning_of_week_day)
|
264
263
|
is_covered = (start_week..end_week).include?(dates) ? true : false
|
265
264
|
break if is_covered
|
266
265
|
end
|
@@ -481,7 +481,8 @@ describe DateRangeCovers do
|
|
481
481
|
context "when dates in the same week" do
|
482
482
|
context 'when dates are the same' do
|
483
483
|
let(:date) { Date.today }
|
484
|
-
let(:
|
484
|
+
let(:start_of_week) { :sunday }
|
485
|
+
let(:drange) { DateRangeCovers::DateRange.new(date, date, start_of_week) }
|
485
486
|
|
486
487
|
context 'when include is nil' do
|
487
488
|
let(:weeks) { drange.weeks_covered }
|
@@ -494,7 +495,7 @@ describe DateRangeCovers do
|
|
494
495
|
let(:weeks) { drange.weeks_covered(:include => :start_week) }
|
495
496
|
it 'should return week containing the start date' do
|
496
497
|
weeks.should_not be_empty
|
497
|
-
weeks.should include
|
498
|
+
weeks.should include date.beginning_of_week(start_of_week)
|
498
499
|
end
|
499
500
|
end
|
500
501
|
|
@@ -502,7 +503,7 @@ describe DateRangeCovers do
|
|
502
503
|
let(:weeks) { drange.weeks_covered(:include => :end_week) }
|
503
504
|
it 'should return week containing the end date' do
|
504
505
|
weeks.should_not be_empty
|
505
|
-
weeks.should include
|
506
|
+
weeks.should include date.beginning_of_week(start_of_week)
|
506
507
|
end
|
507
508
|
end
|
508
509
|
|
@@ -510,7 +511,7 @@ describe DateRangeCovers do
|
|
510
511
|
let(:weeks) { drange.weeks_covered(:include => :both) }
|
511
512
|
it 'should return weeks containing the start date and the end date' do
|
512
513
|
weeks.should_not be_empty
|
513
|
-
weeks.should include
|
514
|
+
weeks.should include date.beginning_of_week(start_of_week)
|
514
515
|
end
|
515
516
|
end
|
516
517
|
end
|
@@ -520,7 +521,8 @@ describe DateRangeCovers do
|
|
520
521
|
context '2013-03-02(Saturday) to 2013-03-03(Sunday)' do
|
521
522
|
let(:start_date) { Date.parse('2013-03-02') }
|
522
523
|
let(:end_date) { Date.parse('2013-03-03') }
|
523
|
-
let(:
|
524
|
+
let(:start_of_week) { :sunday }
|
525
|
+
let(:drange) { DateRangeCovers::DateRange.new(start_date, end_date, start_of_week) }
|
524
526
|
|
525
527
|
context 'when include is nil' do
|
526
528
|
let(:weeks) { drange.weeks_covered }
|
@@ -533,7 +535,7 @@ describe DateRangeCovers do
|
|
533
535
|
let(:weeks) { drange.weeks_covered(:include => :start_week) }
|
534
536
|
it 'should return beginning of start week' do
|
535
537
|
weeks.should_not be_empty
|
536
|
-
weeks.should include
|
538
|
+
weeks.should include start_date.beginning_of_week(start_of_week)
|
537
539
|
end
|
538
540
|
end
|
539
541
|
|
@@ -541,7 +543,7 @@ describe DateRangeCovers do
|
|
541
543
|
let(:weeks) { drange.weeks_covered(:include => :end_week) }
|
542
544
|
it 'should return beginning of end week' do
|
543
545
|
weeks.should_not be_empty
|
544
|
-
weeks.should include
|
546
|
+
weeks.should include end_date.beginning_of_week(start_of_week)
|
545
547
|
end
|
546
548
|
end
|
547
549
|
|
@@ -549,8 +551,8 @@ describe DateRangeCovers do
|
|
549
551
|
let(:weeks) { drange.weeks_covered(:include => :both) }
|
550
552
|
it 'should return beginning of start week and end week' do
|
551
553
|
weeks.should_not be_empty
|
552
|
-
weeks.should include
|
553
|
-
weeks.should include
|
554
|
+
weeks.should include start_date.beginning_of_week(start_of_week)
|
555
|
+
weeks.should include end_date.beginning_of_week(start_of_week)
|
554
556
|
end
|
555
557
|
end
|
556
558
|
end
|
@@ -558,12 +560,13 @@ describe DateRangeCovers do
|
|
558
560
|
context '2013-03-03(Sunday) to 2013-03-09(Saturday)' do
|
559
561
|
let(:start_date) { Date.parse('2013-03-03') }
|
560
562
|
let(:end_date) { Date.parse('2013-03-09') }
|
561
|
-
let(:
|
563
|
+
let(:start_of_week) { :sunday }
|
564
|
+
let(:drange) { DateRangeCovers::DateRange.new(start_date, end_date, start_of_week) }
|
562
565
|
context 'when include is nil' do
|
563
566
|
let(:weeks) { drange.weeks_covered }
|
564
567
|
it 'should return week with 2013-03-03 as the date' do
|
565
568
|
weeks.should_not be_empty
|
566
|
-
weeks.should include
|
569
|
+
weeks.should include start_date.beginning_of_week(start_of_week)
|
567
570
|
end
|
568
571
|
end
|
569
572
|
|
@@ -571,7 +574,7 @@ describe DateRangeCovers do
|
|
571
574
|
let(:weeks) { drange.weeks_covered(:include => :start_week) }
|
572
575
|
it 'should return beginning of start week' do
|
573
576
|
weeks.should_not be_empty
|
574
|
-
weeks.should include
|
577
|
+
weeks.should include start_date.beginning_of_week(start_of_week)
|
575
578
|
end
|
576
579
|
end
|
577
580
|
|
@@ -579,7 +582,7 @@ describe DateRangeCovers do
|
|
579
582
|
let(:weeks) { drange.weeks_covered(:include => :end_week) }
|
580
583
|
it 'should return beginning of end week' do
|
581
584
|
weeks.should_not be_empty
|
582
|
-
weeks.should include
|
585
|
+
weeks.should include end_date.beginning_of_week(start_of_week)
|
583
586
|
end
|
584
587
|
end
|
585
588
|
|
@@ -587,8 +590,8 @@ describe DateRangeCovers do
|
|
587
590
|
let(:weeks) { drange.weeks_covered(:include => :both) }
|
588
591
|
it 'should return beginning of start week and end week' do
|
589
592
|
weeks.should_not be_empty
|
590
|
-
weeks.should include
|
591
|
-
weeks.should include
|
593
|
+
weeks.should include end_date.beginning_of_week(start_of_week)
|
594
|
+
weeks.should include start_date.beginning_of_week(start_of_week)
|
592
595
|
end
|
593
596
|
end
|
594
597
|
end
|
@@ -596,13 +599,14 @@ describe DateRangeCovers do
|
|
596
599
|
context '2013-03-03(Sunday) to 2013-03-10(Sunday)' do
|
597
600
|
let(:start_date) { Date.parse('2013-03-03') }
|
598
601
|
let(:end_date) { Date.parse('2013-03-10') }
|
599
|
-
let(:
|
602
|
+
let(:start_of_week) { :sunday }
|
603
|
+
let(:drange) { DateRangeCovers::DateRange.new(start_date, end_date, start_of_week) }
|
600
604
|
context 'when include is nil' do
|
601
605
|
let(:weeks) { drange.weeks_covered }
|
602
606
|
it 'should return week with 2013-03-03 as the date' do
|
603
607
|
weeks.should_not be_empty
|
604
|
-
weeks.should include
|
605
|
-
weeks.should_not include
|
608
|
+
weeks.should include start_date.beginning_of_week(start_of_week)
|
609
|
+
weeks.should_not include end_date.beginning_of_week(start_of_week)
|
606
610
|
end
|
607
611
|
end
|
608
612
|
|
@@ -610,8 +614,8 @@ describe DateRangeCovers do
|
|
610
614
|
let(:weeks) { drange.weeks_covered(:include => :start_week) }
|
611
615
|
it 'should return beginning of start week' do
|
612
616
|
weeks.should_not be_empty
|
613
|
-
weeks.should include
|
614
|
-
weeks.should_not include
|
617
|
+
weeks.should include start_date.beginning_of_week(start_of_week)
|
618
|
+
weeks.should_not include end_date.beginning_of_week(start_of_week)
|
615
619
|
end
|
616
620
|
end
|
617
621
|
|
@@ -619,8 +623,8 @@ describe DateRangeCovers do
|
|
619
623
|
let(:weeks) { drange.weeks_covered(:include => :end_week) }
|
620
624
|
it 'should return beginning of end week' do
|
621
625
|
weeks.should_not be_empty
|
622
|
-
weeks.should include
|
623
|
-
weeks.should include
|
626
|
+
weeks.should include end_date.beginning_of_week(start_of_week)
|
627
|
+
weeks.should include start_date.beginning_of_week(start_of_week)
|
624
628
|
end
|
625
629
|
end
|
626
630
|
|
@@ -628,8 +632,8 @@ describe DateRangeCovers do
|
|
628
632
|
let(:weeks) { drange.weeks_covered(:include => :both) }
|
629
633
|
it 'should return beginning of start week and end week' do
|
630
634
|
weeks.should_not be_empty
|
631
|
-
weeks.should include
|
632
|
-
weeks.should include
|
635
|
+
weeks.should include end_date.beginning_of_week(start_of_week)
|
636
|
+
weeks.should include start_date.beginning_of_week(start_of_week)
|
633
637
|
end
|
634
638
|
end
|
635
639
|
end
|
@@ -637,7 +641,8 @@ describe DateRangeCovers do
|
|
637
641
|
context '2013-03-05(Tuesday) to 2013-03-31(Sunday)' do
|
638
642
|
let(:start_date) { Date.parse('2013-03-05') }
|
639
643
|
let(:end_date) { Date.parse('2013-03-31') }
|
640
|
-
let(:
|
644
|
+
let(:start_of_week) { :sunday }
|
645
|
+
let(:drange) { DateRangeCovers::DateRange.new(start_date, end_date, start_of_week) }
|
641
646
|
context 'when include is nil' do
|
642
647
|
let(:weeks) { drange.weeks_covered }
|
643
648
|
it 'should return weeks of 10, 17 and 24' do
|
@@ -652,11 +657,11 @@ describe DateRangeCovers do
|
|
652
657
|
let(:weeks) { drange.weeks_covered(:include => :start_week) }
|
653
658
|
it 'should return beginning of start week' do
|
654
659
|
weeks.length.should == 4
|
655
|
-
weeks.should include
|
660
|
+
weeks.should include start_date.beginning_of_week(start_of_week)
|
656
661
|
weeks.should include Date.parse('2013-03-10')
|
657
662
|
weeks.should include Date.parse('2013-03-17')
|
658
663
|
weeks.should include Date.parse('2013-03-24')
|
659
|
-
weeks.should_not include
|
664
|
+
weeks.should_not include end_date.beginning_of_week(start_of_week)
|
660
665
|
end
|
661
666
|
end
|
662
667
|
|
@@ -664,11 +669,11 @@ describe DateRangeCovers do
|
|
664
669
|
let(:weeks) { drange.weeks_covered(:include => :end_week) }
|
665
670
|
it 'should return beginning of end week' do
|
666
671
|
weeks.length.should == 4
|
667
|
-
weeks.should_not include
|
672
|
+
weeks.should_not include start_date.beginning_of_week(start_of_week)
|
668
673
|
weeks.should include Date.parse('2013-03-10')
|
669
674
|
weeks.should include Date.parse('2013-03-17')
|
670
675
|
weeks.should include Date.parse('2013-03-24')
|
671
|
-
weeks.should include
|
676
|
+
weeks.should include end_date.beginning_of_week(start_of_week)
|
672
677
|
end
|
673
678
|
end
|
674
679
|
|
@@ -676,11 +681,11 @@ describe DateRangeCovers do
|
|
676
681
|
let(:weeks) { drange.weeks_covered(:include => :both) }
|
677
682
|
it 'should return beginning of start week and end week' do
|
678
683
|
weeks.length.should == 5
|
679
|
-
weeks.should include
|
684
|
+
weeks.should include start_date.beginning_of_week(start_of_week)
|
680
685
|
weeks.should include Date.parse('2013-03-10')
|
681
686
|
weeks.should include Date.parse('2013-03-17')
|
682
687
|
weeks.should include Date.parse('2013-03-24')
|
683
|
-
weeks.should include
|
688
|
+
weeks.should include end_date.beginning_of_week(start_of_week)
|
684
689
|
end
|
685
690
|
end
|
686
691
|
end
|
@@ -690,7 +695,8 @@ describe DateRangeCovers do
|
|
690
695
|
describe "#dates_covered" do
|
691
696
|
context "when start_date and end_date are the same" do
|
692
697
|
let(:date) { Date.today }
|
693
|
-
let(:
|
698
|
+
let(:start_of_week) { :sunday }
|
699
|
+
let(:drange) { DateRangeCovers::DateRange.new(date, date, start_of_week) }
|
694
700
|
|
695
701
|
context 'when include is nil' do
|
696
702
|
let(:dates) { drange.dates_covered }
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: date_range_covers
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 25
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 3
|
10
|
+
version: 0.0.3
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Antall Fernandes
|
@@ -61,18 +61,18 @@ dependencies:
|
|
61
61
|
type: :development
|
62
62
|
version_requirements: *id003
|
63
63
|
- !ruby/object:Gem::Dependency
|
64
|
-
name:
|
64
|
+
name: activesupport
|
65
65
|
prerelease: false
|
66
66
|
requirement: &id004 !ruby/object:Gem::Requirement
|
67
67
|
none: false
|
68
68
|
requirements:
|
69
69
|
- - ~>
|
70
70
|
- !ruby/object:Gem::Version
|
71
|
-
hash:
|
71
|
+
hash: 3
|
72
72
|
segments:
|
73
|
-
- 2
|
74
73
|
- 3
|
75
|
-
|
74
|
+
- 2
|
75
|
+
version: "3.2"
|
76
76
|
type: :development
|
77
77
|
version_requirements: *id004
|
78
78
|
description: The gem helps find the years, months, weeks and days covered by a date range
|
@@ -92,10 +92,8 @@ files:
|
|
92
92
|
- README.md
|
93
93
|
- Rakefile
|
94
94
|
- date_range_covers.gemspec
|
95
|
-
- lib/a_date.rb
|
96
95
|
- lib/date_range_covers.rb
|
97
96
|
- lib/date_range_covers/version.rb
|
98
|
-
- spec/a_date_spec.rb
|
99
97
|
- spec/date_range_covers_spec.rb
|
100
98
|
homepage: ""
|
101
99
|
licenses:
|
@@ -131,5 +129,4 @@ signing_key:
|
|
131
129
|
specification_version: 3
|
132
130
|
summary: ""
|
133
131
|
test_files:
|
134
|
-
- spec/a_date_spec.rb
|
135
132
|
- spec/date_range_covers_spec.rb
|
data/lib/a_date.rb
DELETED
@@ -1,26 +0,0 @@
|
|
1
|
-
module ADate
|
2
|
-
|
3
|
-
@@DAYS_OF_WEEK = [
|
4
|
-
:sunday,
|
5
|
-
:monday,
|
6
|
-
:tuesday,
|
7
|
-
:wednesday,
|
8
|
-
:thursday,
|
9
|
-
:friday,
|
10
|
-
:saturday
|
11
|
-
]
|
12
|
-
|
13
|
-
def self.beginning_of_week(date, beginning_of_week_day = :sunday)
|
14
|
-
beginning_of_week_adj = @@DAYS_OF_WEEK.index beginning_of_week_day
|
15
|
-
|
16
|
-
current_day_number = 0
|
17
|
-
current_day_number = date.wday if date.wday != 0
|
18
|
-
current_day_number = 7 if date.wday == 0 and beginning_of_week_adj == 1
|
19
|
-
|
20
|
-
date = date - current_day_number + beginning_of_week_adj
|
21
|
-
end
|
22
|
-
|
23
|
-
def self.end_of_week(date, beginning_of_week_day = :sunday)
|
24
|
-
beginning_of_week(date, beginning_of_week_day) + 6
|
25
|
-
end
|
26
|
-
end
|
data/spec/a_date_spec.rb
DELETED
@@ -1,86 +0,0 @@
|
|
1
|
-
require 'lib/a_date'
|
2
|
-
require 'date'
|
3
|
-
|
4
|
-
describe Date do
|
5
|
-
describe '#beginning_of_week and #end_of_week' do
|
6
|
-
|
7
|
-
context 'when beginning_of_week day is sunday' do
|
8
|
-
context 'when date is a sunday' do
|
9
|
-
let(:date) { Date.parse('2013-03-03') }
|
10
|
-
|
11
|
-
it 'should return 2013-03-03' do
|
12
|
-
ADate.beginning_of_week(date).should == date
|
13
|
-
end
|
14
|
-
|
15
|
-
it 'should return 2013-03-09' do
|
16
|
-
ADate.end_of_week(date).should == Date.parse('2013-03-09')
|
17
|
-
end
|
18
|
-
end
|
19
|
-
|
20
|
-
context 'when date is a monday' do
|
21
|
-
let(:date) { Date.parse('2013-03-04') }
|
22
|
-
|
23
|
-
it 'should return 2013-03-03' do
|
24
|
-
ADate.beginning_of_week(date).should == Date.parse('2013-03-03')
|
25
|
-
end
|
26
|
-
|
27
|
-
it 'should return 2013-03-09' do
|
28
|
-
ADate.end_of_week(date).should == Date.parse('2013-03-09')
|
29
|
-
end
|
30
|
-
end
|
31
|
-
|
32
|
-
context 'when date is a saturday' do
|
33
|
-
let(:date) { Date.parse('2013-03-09') }
|
34
|
-
|
35
|
-
it 'should return 2013-03-03' do
|
36
|
-
ADate.beginning_of_week(date).should == Date.parse('2013-03-03')
|
37
|
-
end
|
38
|
-
|
39
|
-
it 'should return 2013-03-09' do
|
40
|
-
ADate.end_of_week(date).should == Date.parse('2013-03-09')
|
41
|
-
end
|
42
|
-
end
|
43
|
-
end
|
44
|
-
|
45
|
-
context 'when beginning_of_week day is monday' do
|
46
|
-
context 'when date is a sunday' do
|
47
|
-
let(:date) { Date.parse('2013-03-03') }
|
48
|
-
|
49
|
-
it 'should return 2013-02-25' do
|
50
|
-
ADate.beginning_of_week(date, :monday).should == Date.parse('2013-02-25')
|
51
|
-
end
|
52
|
-
|
53
|
-
it 'should return 2013-03-03' do
|
54
|
-
ADate.end_of_week(date, :monday).should == Date.parse('2013-03-03')
|
55
|
-
end
|
56
|
-
end
|
57
|
-
|
58
|
-
context 'when date is a monday' do
|
59
|
-
let(:date) { Date.parse('2013-03-04') }
|
60
|
-
|
61
|
-
it 'should return 2013-03-04' do
|
62
|
-
ADate.beginning_of_week(date, :monday).should == Date.parse('2013-03-04')
|
63
|
-
end
|
64
|
-
|
65
|
-
it 'should return 2013-03-10' do
|
66
|
-
ADate.end_of_week(date, :monday).should == Date.parse('2013-03-10')
|
67
|
-
end
|
68
|
-
end
|
69
|
-
|
70
|
-
context 'when date is a saturday' do
|
71
|
-
let(:date) { Date.parse('2013-03-09') }
|
72
|
-
|
73
|
-
it 'should return 2013-03-04' do
|
74
|
-
ADate.beginning_of_week(date, :monday).should == Date.parse('2013-03-04')
|
75
|
-
end
|
76
|
-
|
77
|
-
it 'should return 2013-03-10' do
|
78
|
-
ADate.end_of_week(date, :monday).should == Date.parse('2013-03-10')
|
79
|
-
end
|
80
|
-
end
|
81
|
-
end
|
82
|
-
|
83
|
-
end
|
84
|
-
end
|
85
|
-
|
86
|
-
|