You are here

public static function JobSchedulerCronTab::translateNames in Job Scheduler 8.3

Same name and namespace in other branches
  1. 8.2 src/JobSchedulerCronTab.php \Drupal\job_scheduler\JobSchedulerCronTab::translateNames()

Replaces element names with values.

Parameters

string $type: The element type. One of 'wday' or 'mon'.

string $string: The element string to translate.

Return value

string The translated string.

Overrides JobSchedulerCronTabInterface::translateNames

1 call to JobSchedulerCronTab::translateNames()
JobSchedulerCronTab::parseElement in src/JobSchedulerCronTab.php
Parses each text element. Recursive up to some point.

File

src/JobSchedulerCronTab.php, line 137

Class

JobSchedulerCronTab
Class for job scheduler crontab.

Namespace

Drupal\job_scheduler

Code

public static function translateNames($type, $string) {
  switch ($type) {
    case 'wday':
      $replace = array_merge([
        '-sunday' => '-7',
        '-sun' => '-7',
        'sunday-' => '0-',
        'sun-' => '0-',
      ], array_flip([
        'sunday',
        'monday',
        'tuesday',
        'wednesday',
        'thursday',
        'friday',
        'saturday',
      ]), array_flip([
        'sun',
        'mon',
        'tue',
        'wed',
        'thu',
        'fri',
        'sat',
      ]));
      break;
    case 'mon':
      $replace = array_merge(array_flip([
        'nomonth1',
        'january',
        'february',
        'march',
        'april',
        'may',
        'june',
        'july',
        'august',
        'september',
        'october',
        'november',
        'december',
      ]), array_flip([
        'nomonth2',
        'jan',
        'feb',
        'mar',
        'apr',
        'may',
        'jun',
        'jul',
        'aug',
        'sep',
        'oct',
        'nov',
        'dec',
      ]), [
        'sept' => 9,
      ]);
      break;
  }
  if (empty($replace)) {
    return $string;
  }
  else {
    return strtr($string, $replace);
  }
}