
Untitled
By: a guest on
Aug 22nd, 2012 | syntax:
JavaScript | size: 1.31 KB | hits: 10 | expires: Never
Public static hourCount TimeCalcHr(DateTime StartTime, Datetime EndTime)
{
hourCount hours = new hourCount();
//everything is in minutes
integer morningMinutes = 0;
integer eveningMinutes = 0;
integer startMinutes = StartTime.Hour() * 60 + StartTime.Minute();
integer endMinutes = EndTime.Hour() * 60 + EndTime.Minute();
integer wholeDays = startTime.date().daysBetween(EndTime.date());
bool spansDays = false;
if (wholeDays > 0){
wholeDays --;
spansDays = true;
}
morningMinutes += wholeDays * 6 * 60;
eveningMinutes += wholeDays * 18 * 60;
if(startMinutes < 360) //minutes in the first half of the day
{
morningMinutes += math.MIN(endMinutes,360) - startMinutes;
}
else
{
eveningMinutes += math.MIN(endMinutes,1440) - startMinutes;
}
if (startMinutes < 360 || spansDays){
if(endMinutes > 360 && )
{
eveningMinutes += endMinutes - 360;
if(spansDays)
morningMinutes += 360;
}
else
{
morningMinutes += endMinutes;
}
}
hours.nightHours = math.ceil(morningMinutes / 60);
hours.dayHours = math.ceil(eveningMinutes/ 60);
return hours;
}