Commit 1d64fbe3 authored by Joseph Olstad's avatar Joseph Olstad Committed by Pravin Gaikwad
Browse files

Issue #3339013 by joseph.olstad: implement datepicker localisation in...

parent 137c341a
Loading
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -12,3 +12,10 @@ mouse:
position:
  js: {}

# For functionality related to setting regions with datepicker.
locale:
  js:
    js/locale.js: { }
  dependencies:
    - core/drupal
    - core/drupalSettings
+9 −0
Original line number Diff line number Diff line
@@ -50,4 +50,13 @@ function jquery_ui_library_info_alter(array &$libraries, string $module): void {
    }
    $libraries = array_merge($libraries, $module_libraries);
  }

  if ($module === 'jquery_ui_datepicker' && isset($libraries['datepicker']) && \Drupal::moduleHandler()->moduleExists('locale')) {
    $libraries['datepicker']['dependencies'][] = 'jquery_ui/locale';
    $libraries['datepicker']['drupalSettings']['jquery']['ui']['datepicker'] = [
      'isRTL' => NULL,
      'firstDay' => NULL,
      'langCode' => 'drupal-locale',
    ];
  }
}

js/locale.js

0 → 100644
+21 −0
Original line number Diff line number Diff line
(function ($, Drupal, drupalSettings) {
  Drupal.behaviors.jqueryUiDatepickerLocale = {
    attach: function attach(context, settings) {
      $.datepicker.regional['drupal-locale'] = $.extend({
        closeText: Drupal.t('Done'),
        prevText: Drupal.t('Prev'),
        nextText: Drupal.t('Next'),
        currentText: Drupal.t('Today'),
        monthNames: [Drupal.t('January', {}, { context: 'Long month name' }), Drupal.t('February', {}, { context: 'Long month name' }), Drupal.t('March', {}, { context: 'Long month name' }), Drupal.t('April', {}, { context: 'Long month name' }), Drupal.t('May', {}, { context: 'Long month name' }), Drupal.t('June', {}, { context: 'Long month name' }), Drupal.t('July', {}, { context: 'Long month name' }), Drupal.t('August', {}, { context: 'Long month name' }), Drupal.t('September', {}, { context: 'Long month name' }), Drupal.t('October', {}, { context: 'Long month name' }), Drupal.t('November', {}, { context: 'Long month name' }), Drupal.t('December', {}, { context: 'Long month name' })],
        monthNamesShort: [Drupal.t('Jan'), Drupal.t('Feb'), Drupal.t('Mar'), Drupal.t('Apr'), Drupal.t('May'), Drupal.t('Jun'), Drupal.t('Jul'), Drupal.t('Aug'), Drupal.t('Sep'), Drupal.t('Oct'), Drupal.t('Nov'), Drupal.t('Dec')],
        dayNames: [Drupal.t('Sunday'), Drupal.t('Monday'), Drupal.t('Tuesday'), Drupal.t('Wednesday'), Drupal.t('Thursday'), Drupal.t('Friday'), Drupal.t('Saturday')],
        dayNamesShort: [Drupal.t('Sun'), Drupal.t('Mon'), Drupal.t('Tue'), Drupal.t('Wed'), Drupal.t('Thu'), Drupal.t('Fri'), Drupal.t('Sat')],
        dayNamesMin: [Drupal.t('Su'), Drupal.t('Mo'), Drupal.t('Tu'), Drupal.t('We'), Drupal.t('Th'), Drupal.t('Fr'), Drupal.t('Sa')],
        dateFormat: Drupal.t('mm/dd/yy'),
        firstDay: 0,
        isRTL: 0
      }, drupalSettings.jquery.ui.datepicker);
      $.datepicker.setDefaults($.datepicker.regional[settings.jquery.ui.datepicker.langCode]);
    }
  };
})(jQuery, Drupal, drupalSettings);