jquery.ui.datepicker-1.13.0-backport.js 1.0 KB

123456789101112131415161718192021222324252627282930313233343536
  1. /**
  2. * Backport of security fixes from:
  3. * https://github.com/jquery/jquery-ui/pull/1953
  4. * https://github.com/jquery/jquery-ui/pull/1954
  5. */
  6. (function ($, Drupal) {
  7. // No backport is needed if we're already on jQuery UI 1.13 or higher.
  8. var versionParts = $.ui.datepicker.version.split('.');
  9. var majorVersion = parseInt(versionParts[0]);
  10. var minorVersion = parseInt(versionParts[1]);
  11. if ( (majorVersion > 1) || (majorVersion === 1 && minorVersion >= 13) ) {
  12. return;
  13. }
  14. var fnOriginalGet = $.datepicker._get;
  15. $.extend($.datepicker, {
  16. _get: function( inst, name ) {
  17. var val = fnOriginalGet.call(this, inst, name);
  18. // @see https://github.com/jquery/jquery-ui/pull/1954
  19. if (name === 'altField') {
  20. val = $(document).find(val);
  21. }
  22. // @see https://github.com/jquery/jquery-ui/pull/1953
  23. else if ($.inArray(name, ['appendText', 'buttonText', 'prevText', 'currentText', 'nextText', 'closeText']) !== -1) {
  24. val = Drupal.checkPlain(val);
  25. }
  26. return val;
  27. }
  28. })
  29. })(jQuery, Drupal);