You are here

final class DatexPersianIntlCalendar in Datex 7.3

Persian implementation of DatexInterface.

Hierarchy

Expanded class hierarchy of DatexPersianIntlCalendar

File

src/Datex/DatexPersianIntlCalendar.php, line 11
Persian implementation of DatexInterface.

View source
final class DatexPersianIntlCalendar extends DatexIntlCalendar {

  /**
   * Check to see if date granularities given in the array are valid dates.
   */
  function validate(array $arr) {
    if ((!isset($arr['year']) || empty($arr['year'])) && (!isset($arr['month']) || empty($arr['month'])) && (!isset($arr['day']) || empty($arr['day']))) {
      return NULL;
    }
    $zero = TRUE;
    $year = intval($arr['year']);
    $month = intval($arr['month']);
    $day = intval($arr['day']);
    if ($year < 0 || $year === 0 && $zero) {
      return t('Year out of range');
    }
    if ($month < 0 || 12 < $month || $month === 0 && $zero) {
      return t('Month out of range');
    }
    if ($day === 0 && $zero || $day < 0 || 31 < $day || $month > 6 && $day > 30 || $month === 12 && $day > 29) {
      return t('Day out of range');
    }
    return FALSE;
  }

  /**
   * Creates a clone of this object.
   */
  function copy() {
    return new DatexPersianIntlCalendar($this->timezone, $this->calendar, $this->langCode);
  }
  protected function formatHook($format, $value) {
    return $value;
  }
  function getBaseYear() {
    return 1390;
  }

}

Members

Namesort descending Modifiers Type Description Overrides
DatexIntlCalendar::$intlFormatter protected property
DatexIntlCalendar::$locale protected property
DatexIntlCalendar::$php2intl_format_map private static property php's date format modifiers differ from Intl's. This is a mapping of the two.
DatexIntlCalendar::$remove_pattern private static property Some format modifiers are not supported in intl. They are simply removed.
DatexIntlCalendar::format public function Format this object's date according to format string. Overrides DatexInterface::format
DatexIntlCalendar::format2pattern private static function
DatexIntlCalendar::intl private static function
DatexIntlCalendar::parse public function Parses a date string into date and sets this objects date accordingly. Overrides DatexInterface::parse
DatexIntlCalendar::setDateLocale public function Set date of this object from a local date. Overrides DatexInterface::setDateLocale
DatexIntlCalendar::toGregorian private static function
DatexIntlCalendar::__construct public function Creates a new DatexIntlCalendar. Overrides DatexPartialImplementation::__construct
DatexPartialImplementation::$calendar protected property
DatexPartialImplementation::$langCode protected property
DatexPartialImplementation::$origin protected property
DatexPartialImplementation::$timezone protected property
DatexPartialImplementation::formatArray final function Format date parts into an array. Overrides DatexInterface::formatArray
DatexPartialImplementation::getCalendarName final function Get name of the calendar, such as gregorian or persian. Overrides DatexInterface::getCalendarName
DatexPartialImplementation::getLangcode function Get two letter language code of this object. Overrides DatexInterface::getLangcode
DatexPartialImplementation::getOrigin protected function
DatexPartialImplementation::getTimestamp final function Get timestamp of this object. Overrides DatexInterface::getTimestamp
DatexPartialImplementation::listOptions function Get various list options, such as month names for a form select element. Overrides DatexInterface::listOptions
DatexPartialImplementation::setTime final function Set time on this object. Overrides DatexInterface::setTime
DatexPartialImplementation::setTimestamp final function Set timestamp on this object. Overrides DatexInterface::setTimestamp
DatexPartialImplementation::tz final protected function
DatexPartialImplementation::xFormat final function Format date time, in gregorian. Overrides DatexInterface::xFormat
DatexPartialImplementation::xFormatArray final function Put all day and time parts in an array, in gregorian. Overrides DatexInterface::xFormatArray
DatexPartialImplementation::xSetDate final function Set date (in Gregorian) on this object. Overrides DatexInterface::xSetDate
DatexPersianIntlCalendar::copy function Creates a clone of this object. Overrides DatexIntlCalendar::copy
DatexPersianIntlCalendar::formatHook protected function Overrides DatexIntlCalendar::formatHook
DatexPersianIntlCalendar::getBaseYear function Overrides DatexIntlCalendar::getBaseYear
DatexPersianIntlCalendar::validate function Check to see if date granularities given in the array are valid dates. Overrides DatexPartialImplementation::validate