Security update to Drupal 8.4.6
[yaffs-website] / web / core / misc / timezone.js
1 /**
2 * DO NOT EDIT THIS FILE.
3 * See the following change record for more information,
4 * https://www.drupal.org/node/2815083
5 * @preserve
6 **/
7
8 (function ($, Drupal) {
9   Drupal.behaviors.setTimezone = {
10     attach: function attach(context, settings) {
11       var $timezone = $(context).find('.timezone-detect').once('timezone');
12       if ($timezone.length) {
13         var dateString = Date();
14
15         var matches = dateString.match(/\(([A-Z]{3,5})\)/);
16         var abbreviation = matches ? matches[1] : 0;
17
18         var dateNow = new Date();
19         var offsetNow = dateNow.getTimezoneOffset() * -60;
20
21         var dateJan = new Date(dateNow.getFullYear(), 0, 1, 12, 0, 0, 0);
22         var dateJul = new Date(dateNow.getFullYear(), 6, 1, 12, 0, 0, 0);
23         var offsetJan = dateJan.getTimezoneOffset() * -60;
24         var offsetJul = dateJul.getTimezoneOffset() * -60;
25
26         var isDaylightSavingTime = void 0;
27
28         if (offsetJan === offsetJul) {
29           isDaylightSavingTime = '';
30         } else if (Math.max(offsetJan, offsetJul) === offsetNow) {
31             isDaylightSavingTime = 1;
32           } else {
33               isDaylightSavingTime = 0;
34             }
35
36         var path = 'system/timezone/' + abbreviation + '/' + offsetNow + '/' + isDaylightSavingTime;
37         $.ajax({
38           async: false,
39           url: Drupal.url(path),
40           data: { date: dateString },
41           dataType: 'json',
42           success: function success(data) {
43             if (data) {
44               $timezone.val(data);
45             }
46           }
47         });
48       }
49     }
50   };
51 })(jQuery, Drupal);