Skip to content

Commit

Permalink
day related updates
Browse files Browse the repository at this point in the history
  • Loading branch information
tvroom committed Mar 1, 2007
1 parent 44efbd9 commit 6fdbb6f
Show file tree
Hide file tree
Showing 3 changed files with 58 additions and 1 deletion.
14 changes: 14 additions & 0 deletions Slash/DB/MySQL/MySQL.pm
Expand Up @@ -8,6 +8,7 @@ use strict;
use Socket;
use Digest::MD5 'md5_hex';
use Time::HiRes;
use Time::Local;
use Date::Format qw(time2str);
use Data::Dumper;
use Slash::Utility;
Expand Down Expand Up @@ -8304,6 +8305,19 @@ sub getDay {
return $day;
}

sub getDayFromDay {
my($self, $day, $days_back) = @_;
$day =~ s/-//g;
my ($y, $m, $d) = $day =~ /(\d{4})(\d{2})(\d{2})/;
my $return_day;
if ($y) {
$return_day = timeCalc(scalar localtime(timelocal(0, 0, 0, $d, $m - 1, $y - 1900) - 86400 * $days_back), "%Y%m%d");
} else {
$return_day = $self->getDay(0) if !$y;
}
return $return_day;
}

##################################################################
# XXXSECTIONTOPICS this should be working fine now 2004/07/08
sub getStoryList {
Expand Down
1 change: 1 addition & 0 deletions Slash/DB/Static/MySQL/MySQL.pm
Expand Up @@ -1900,6 +1900,7 @@ sub getUrlsNeedingRefresh {
);
}


1;

__END__
Expand Down
44 changes: 43 additions & 1 deletion Slash/Slash.pm
Expand Up @@ -46,7 +46,7 @@ $VERSION = '2.005000'; # v2.5.0
gensym
dispComment displayStory displayRelatedStories displayThread dispStory
getOlderStories getOlderDays printComments
getOlderStories getOlderDays getOlderDaysFromDay printComments
jsSelectComments
tempUofmLinkGenerate tempUofmCipherObj
Expand Down Expand Up @@ -1660,6 +1660,48 @@ sub getOlderDays {
return($today, $tomorrow, $yesterday, $week_ago);
}

sub getOlderDaysFromDay {
my ($day, $start, $end, $options) = @_;
my $slashdb = getCurrentDB();
$day ||= $slashdb->getDay(0);
$start ||= 0;
$end ||= 0;
$options ||= {};
my $days = [];

my $today = $slashdb->getDay(0);
my $yesterday = $slashdb->getDay(1);
my $weekago = $slashdb->getDay(7);

for ($start..$end) {
my $the_day = $slashdb->getDayFromDay($day, $_);
push @$days, $the_day if $the_day < $today;
}
if ($today > $days->[0]) {
unshift @$days, "$today";
}

my ($ty, $tm, $td) = $today =~ /(\d{4})(\d{2})(\d{2})/;
my $ret_array = [];
foreach (@$days) {
my $label;
my ($y, $m, $d) = $_ =~ /(\d{4})(\d{2})(\d{2})/;
if ($_ eq $today) {
$label = "Today";
} elsif ($_ eq $yesterday) {
$label = "Yesterday";
} elsif ($_ <= $today && $_ >= $weekago) {
$label = timeCalc($_, "%A", 0);
} elsif ($ty == $y) {
$label = timeCalc($_, "%B %e", 0);
} else {
$label = timeCalc($_, "%b. %e, %Y", 0);
}
push @$ret_array, [ $_, $label ];
}
return $ret_array;
}

#========================================================================

=head2 getData(VALUE [, PARAMETERS, PAGE])
Expand Down

0 comments on commit 6fdbb6f

Please sign in to comment.