# Idle time display in days/hours/minutes/seconds instead of just minutes # and/or seconds. # Source: Written by Wizzu # Date: 6th Jul 1995 # Modified: 3rd Dc 1995, added DALnet support (display signon time too) on ^317 * if (index(012345679 $3) != -1) {echo ### Idle: $calctime($2), signon at $stime($3)} {echo ### Idle: $calctime($2)} #on ^317 * echo ### Idle: $calctime($2) #on ^317 * echo ### Idle: ${[$2]/60} minutes ${[$2]-([$2]/60)*60} seconds # returns s if argument is not equal to 1 alias plural { if ( [$0] == [1] ) { @ function_return = [] } { @ function_return = [s] } } # returns time as days/hours/minutes/seconds alias calctime { ^assign days ${[$0]/86400} ^assign hours ${([$0]/3600)-([$days]*24)} ^assign minutes ${([$0]/60)-(([$days]*24+[$hours])*60)} ^assign seconds ${[$0]-((([$days]*24+[$hours])*60+[$minutes])*60)} # DEBUG: echo --- Calctime: $days d, $hours h, $minutes min, $seconds s if ( [$0] < [60] ) { @ function_return = [$seconds second$plural($seconds)] } { if ( [$0] < [3600] ) { @ function_return = [$minutes minute$plural($minutes) $seconds second$plural($seconds)] } { if ( [$0] < [86400] ) { @ function_return = [$hours hour$plural($hours) $minutes minute$plural($minutes)] } { @ function_return = [$days day$plural($days) $hours hour$plural($hours)] } } } ^assign -days ^assign -hours ^assign -minutes ^assign -seconds } # # -- Old calctime, simpler, doesn't put plural/singular right # # -- "1 seconds" # alias oldcalctime { # if ( [$0] < [60] ) # { @ function_return = [$0 seconds] } # { if ( [$0] < [3600] ) # { @ function_return = [${[$0]/60} minutes ${[$0]-([$0]/60)*60} seconds] } # { if ( [$0] < [86400] ) # { @ function_return = [${[$0]/3600} hours ${([$0]-([$0]/3600)*3600)/60} minutes] } # { @ function_return = [${[$0]/86400} days ${([$0]-([$0]/86400)*86400)/3600} hours] } # } # } # }