Sha256: 328fc4eb07eb78092c8caf37f608b2db1806ad7012ef5d3c3f6ae7cda08e1ba3

Contents?: true

Size: 1.28 KB

Versions: 4

Compression:

Stored size: 1.28 KB

Contents

import { translate as __, sprintf } from 'foremanReact/common/I18n';
import { getWeekDays } from '../Schedule/RepeatWeek';
import { repeatTypes } from '../../JobWizardConstants';

export const parseEnd = (ends, isNeverEnds, repeatAmount) => {
  if (isNeverEnds) {
    return __('Never');
  }
  if (ends) {
    const endsDate = new Date(ends);
    return endsDate.toString();
  }
  return sprintf(__('After %s occurences'), repeatAmount);
};

export const parseRepeat = (repeatType, repeatData) => {
  switch (repeatType) {
    case repeatTypes.hourly:
      return sprintf(__('Every hour at minute %s'), repeatData.minute);
    case repeatTypes.daily:
      return sprintf(__('Every day at %s'), repeatData.at);
    case repeatTypes.weekly: {
      const daysKeys = Object.keys(repeatData.daysOfWeek).filter(
        k => repeatData.daysOfWeek[k]
      );
      const days = getWeekDays()
        .filter((d, index) => index in daysKeys)
        .join(', ');
      return sprintf(__('Every week on %s at %s'), days, repeatData.at);
    }
    case repeatTypes.monthly:
      return sprintf(
        __('Every month on %s at %s'),
        repeatData.days,
        repeatData.at
      );
    case repeatTypes.cronline:
      return `${__('Cron line')} - ${repeatData.cronline}`;

    default:
      return '';
  }
};

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
foreman_remote_execution-10.0.3 webpack/JobWizard/steps/ReviewDetails/helpers.js
foreman_remote_execution-10.0.2 webpack/JobWizard/steps/ReviewDetails/helpers.js
foreman_remote_execution-10.0.1 webpack/JobWizard/steps/ReviewDetails/helpers.js
foreman_remote_execution-10.0.0 webpack/JobWizard/steps/ReviewDetails/helpers.js