summaryrefslogtreecommitdiff
path: root/FS/FS
diff options
context:
space:
mode:
authorIvan Kohler <ivan@freeside.biz>2014-04-05 16:46:31 -0700
committerIvan Kohler <ivan@freeside.biz>2014-04-05 16:46:31 -0700
commit08669c947afaeb4ac355e9cbd68ee82567d32f42 (patch)
tree6ef4ca1f7458da1e17bf6accd20ecd075c89e597 /FS/FS
parent2b6e316202d647312a479b72e95aaea373628d3f (diff)
installers, RT#16584
Diffstat (limited to 'FS/FS')
-rw-r--r--FS/FS/sched_avail.pm34
1 files changed, 34 insertions, 0 deletions
diff --git a/FS/FS/sched_avail.pm b/FS/FS/sched_avail.pm
index 5d9f8dfba..912ad543d 100644
--- a/FS/FS/sched_avail.pm
+++ b/FS/FS/sched_avail.pm
@@ -112,6 +112,40 @@ sub check {
$self->SUPER::check;
}
+=item stime_pretty
+
+=item etime_pretty
+
+=cut
+
+sub stime_pretty { shift->_time_pretty('stime', @_); }
+sub etime_pretty { shift->_time_pretty('etime', @_); }
+
+sub _time_pretty {
+ my( $self, $field ) = @_;
+
+ pretty_time( $self->$field() );
+}
+
+#helper sub
+sub pretty_time {
+ my $t = shift;
+
+ return 'Midnight' if $t == 0 || $t == 1440;
+ return 'Noon' if $t == 720;
+
+ my $h = int( $t / 60 );
+ my $m = $t % 60;
+
+ my $ap = 'AM';
+ if ( $h == 0 || $h == 24 ) { $h = 12; }
+ elsif ( $h == 12 ) { $ap = 'PM'; }
+ elsif ( $h > 12 ) { $ap = 'PM'; $h -= 12; }
+
+ sprintf('%02d:%02d'." $ap", $h, $m);
+
+}
+
=back
=head1 BUGS