NAME
Time::Avail - A Perl module to calculate time availability.
SYNOPSIS
use Time::Avail;
$minRemaining = timeAvailable( $timeStartStr, $timeEndStr, $dayMask );
DESCRIPTION
The timeAvailable function compares the time interval specified by timeStartStr, timeEndStr, and dayMask with the current day and time. timeAvailable returns 0 if the current day and time do not fall within the specified time interval, otherwise the number of minutes remaining is returned. timeStartStr and timeEndStr are string parameters that must adhere to a HH:MM 24 hour format, where HH represents a two digit hour value and MM represents a two digit minute value. dayMask is a bitmask which specifies the valid days for the time interval.
The dayMask parameter is constructed by OR'ing together one or more of the following dayMask constants:
Time::Avail::DAY_MONDAY
Time::Avail::DAY_TUESDAY
Time::Avail::DAY_WEDNESDAY
Time::Avail::DAY_THURSDAY
Time::Avail::DAY_FRIDAY
Time::Avail::DAY_SATURDAY
Time::Avail::DAY_SUNDAY
Time::Avail::DAY_WEEKDAY
Time::Avail::DAY_WEEKEND
Time::Avail::DAY_EVERYDAY
EXAMPLES
To calculate the time remaining given a starting time of 5am and an ending time of 5pm for Sunday and Monday, the call to timeAvailable can be coded as follows:
$minRemaining = timeAvailable( "05:00", "17:00", Time::Avail::DAY_SUNDAY | Time::Avail::DAY_MONDAY );
To calculate the time remaining given a starting time of 10:30am and an ending time of 7:45pm for Saturday, Sunday, and Monday, the call to timeAvailable can be coded as follows:
$minRemaining = timeAvailable( "10:30", "19:45", Time::Avail::DAY_SATURDAY | Time::Avail::DAY_SUNDAY |Time::Avail::DAY_MONDAY );
or
$minRemaining = timeAvailable( "10:30", "19:45", Time::Avail::DAY_WEEKEND | Time::Avail::DAY_MONDAY );
To calculate the time remaining given a starting time of 7am and an ending time of 7pm for everyday but Saturday and Sunday, the call to timeAvailable can be coded as follows:
$minRemaining = timeAvailable( "07:00", "19:00", Time::Avail::DAY_WEEKDAY );
To calculate the time remaining given a starting time of 10pm and an ending time of 2am for everyday, the call to timeAvailable can be coded as follows:
$minRemaining = timeAvailable( "22:00", "02:00", Time::Avail::DAY_EVERYDAY );
VERSION
1.00
HISTORY
Version 1.00
------------
- Released.
AUTHOR
Peter Santoro peter@pscomp.com
COPYRIGHT
Copyright (c) 1998 Peter Santoro. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself; however, you must leave this copyright statement intact.
DATE
December 19, 1998
SOURCE
This distribution can be also be found at the author's web site:
http://www.connix.com/~psantoro/