/**
  * Gets the time zone offset, for current date, modified in case of
  * daylight savings. This is the offset to add *to* UTC to get local time.
  * 
  * @param      int The era of the given date.
  * @param      int The year in the given date.
  * @param      int The month in the given date.
  *                 Month is 0-based. e.g., 0 for January.
  * @param      int The day-in-month of the given date.
  * @param      int The day-of-week of the given date.
  * @param      int The millis in day in <em>standard</em> local time.
  * @param      int The length of the given month in days.
  * 
  * @return     int The offset to add *to* GMT to get local time.
  * 
  * @author     Dominik del Bondio <*****@*****.**>
  * @author     The ICU Project
  * @since      0.11.0
  */
 public function getOffsetIIIIIII($era, $year, $month, $day, $dayOfWeek, $millis, $monthLength)
 {
     // Check the month before calling Grego::monthLength(). This
     // duplicates a test that occurs in the 9-argument getOffset(),
     // however, this is unavoidable. We don't mind because this method, in
     // fact, should not be called; internal code should always call the
     // 9-argument getOffset(), and outside code should use Calendar.get(int
     // field) with fields ZONE_OFFSET and DST_OFFSET. We can't get rid of
     // this method because it's public API. - liu 8/10/98
     if ($month < AgaviDateDefinitions::JANUARY || $month > AgaviDateDefinitions::DECEMBER) {
         throw new InvalidArgumentException('Month out of range');
         return -1;
     }
     // We ignore monthLength because it can be derived from year and month.
     // This is so that February in leap years is calculated correctly.
     // We keep this argument in this function for backwards compatibility.
     return $this->getOffsetIIIIIIII($era, $year, $month, $day, $dayOfWeek, $millis, AgaviCalendarGrego::monthLength($year, $month), AgaviCalendarGrego::previousMonthLength($year, $month));
 }