Question is, who's getting you right...
I assumed you want a script to have your away time shown in a whois on you, which is not related to your theme or whois reply raws (= manipulation of the local display of the data you receive from the network, but yet not manipulating the data the network keeps end sends to whoissing users - aka your actual away reason).

If I got you right, replace the code you pasted above with the following:

Code:
menu status,channel,query {
  $iif(($status == connected),&Simple Away $iif($away,[you're away]))
  .$iif(($away && %awaywithtime.msg),Turn Back $+([gone $awaywithtime.duration,]),Go Away) : { 
    $iif(($away && %awaywithtime.msg),awaywithtime.back,awaywithtime.away)
  }
  .$iif(($away && %awaywithtime.msg),Turn Back $+([gone $awaywithtime.duration,]),Go Away) Silently : { 
    $iif(($away && %awaywithtime.msg),awaywithtime.back,awaywithtime.away) silent
  }
  .-
  .$iif(($away && %awaywithtime.msg),Change Away Reason $+([,%awaywithtime.msg,])) : {
    awaywithtime.change
  }
}

raw 305:*: { awaywithtime.unset } 
on *:disconnect: { awaywithtime.unset }

; go away
alias -l awaywithtime.away {
  away $$input(Enter away reason:,qeg,$iif(($1 == silent),Silent) Set Away)
  if ($1 == silent) { echo -agc info * You're now away $+([,$!,]) } 
  else { ame ladies and gentlemen! have to go now... see you soon $+([,$!,]) }
  set -e %awaywithtime.msg $!
  set -e %awaywithtime.time $ctime
  .timer.awaywithtime 0 60 away $(%awaywithtime.msg,0) - duration: $!awaywithtime.duration
}

; go back
alias -l awaywithtime.back {
  if ($1 == silent) { echo -agc info * You're now back form away $+([,$awaymsg,]) }
  else { ame is back from away $+([,$awaymsg,]) }
  away
  awaywithtime.unset
}

; change away reason
alias -l awaywithtime.change {
  set -e %awaywithtime.msg $$input(Enter new away reason:,qeg,Change Away Reason)
  away %awaywithtime.msg - duration: $awaywithtime.duration
}

; return away time (not resetting if reason is changed via script)
alias -l awaywithtime.duration { return $duration($calc($ctime - %awaywithtime.time),2) }

; stop updating and unset stored data (manual back/script back/disconnect)
alias -l awaywithtime.unset { .timer.awaywithtime off | unset %awaywithtime.* }

__________
Edit: Note that because the "away duration" is part of the away message sent to the network itself, you'll likely have to undo the changes you made to your theme. You'll never see other user's away duration in a whois, if they don't add it to their away reason like this script does. Also note that the script above isn't cappable of multiple server connections. smile