webshims-rails 1.12.3 → 1.12.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. checksums.yaml +4 -4
  2. data/lib/webshims-rails/version.rb +2 -2
  3. data/vendor/assets/javascripts/webshims/polyfiller.js +75 -31
  4. data/vendor/assets/javascripts/webshims/shims/color-picker.js +14 -14
  5. data/vendor/assets/javascripts/webshims/shims/combos/1.js +83 -459
  6. data/vendor/assets/javascripts/webshims/shims/combos/10.js +92 -69
  7. data/vendor/assets/javascripts/webshims/shims/combos/11.js +90 -54
  8. data/vendor/assets/javascripts/webshims/shims/combos/12.js +104 -494
  9. data/vendor/assets/javascripts/webshims/shims/combos/13.js +66 -228
  10. data/vendor/assets/javascripts/webshims/shims/combos/14.js +2 -0
  11. data/vendor/assets/javascripts/webshims/shims/combos/15.js +42 -40
  12. data/vendor/assets/javascripts/webshims/shims/combos/16.js +105 -494
  13. data/vendor/assets/javascripts/webshims/shims/combos/17.js +90 -54
  14. data/vendor/assets/javascripts/webshims/shims/combos/18.js +90 -54
  15. data/vendor/assets/javascripts/webshims/shims/combos/19.js +123 -471
  16. data/vendor/assets/javascripts/webshims/shims/combos/2.js +85 -474
  17. data/vendor/assets/javascripts/webshims/shims/combos/20.js +85 -205
  18. data/vendor/assets/javascripts/webshims/shims/combos/21.js +103 -45
  19. data/vendor/assets/javascripts/webshims/shims/combos/22.js +41 -40
  20. data/vendor/assets/javascripts/webshims/shims/combos/23.js +63 -454
  21. data/vendor/assets/javascripts/webshims/shims/combos/24.js +52 -36
  22. data/vendor/assets/javascripts/webshims/shims/combos/25.js +123 -471
  23. data/vendor/assets/javascripts/webshims/shims/combos/26.js +2 -15
  24. data/vendor/assets/javascripts/webshims/shims/combos/27.js +38 -266
  25. data/vendor/assets/javascripts/webshims/shims/combos/28.js +20 -20
  26. data/vendor/assets/javascripts/webshims/shims/combos/3.js +24 -20
  27. data/vendor/assets/javascripts/webshims/shims/combos/30.js +24 -20
  28. data/vendor/assets/javascripts/webshims/shims/combos/31.js +22 -20
  29. data/vendor/assets/javascripts/webshims/shims/combos/4.js +4 -15
  30. data/vendor/assets/javascripts/webshims/shims/combos/5.js +90 -54
  31. data/vendor/assets/javascripts/webshims/shims/combos/6.js +90 -54
  32. data/vendor/assets/javascripts/webshims/shims/combos/7.js +87 -474
  33. data/vendor/assets/javascripts/webshims/shims/combos/8.js +87 -474
  34. data/vendor/assets/javascripts/webshims/shims/combos/9.js +92 -69
  35. data/vendor/assets/javascripts/webshims/shims/combos/99.js +1724 -0
  36. data/vendor/assets/javascripts/webshims/shims/dom-extend.js +2 -15
  37. data/vendor/assets/javascripts/webshims/shims/form-core.js +19 -4
  38. data/vendor/assets/javascripts/webshims/shims/form-datalist-lazy.js +39 -5
  39. data/vendor/assets/javascripts/webshims/shims/form-message.js +2 -0
  40. data/vendor/assets/javascripts/webshims/shims/form-number-date-ui.js +69 -37
  41. data/vendor/assets/javascripts/webshims/shims/form-shim-extend.js +18 -20
  42. data/vendor/assets/javascripts/webshims/shims/form-shim-extend2.js +34 -16
  43. data/vendor/assets/javascripts/webshims/shims/form-validation.js +12 -9
  44. data/vendor/assets/javascripts/webshims/shims/form-validators.js +21 -5
  45. data/vendor/assets/javascripts/webshims/shims/forms-picker.js +16 -13
  46. data/vendor/assets/javascripts/webshims/shims/geolocation.js +3 -3
  47. data/vendor/assets/javascripts/webshims/shims/jajax.js +1262 -0
  48. data/vendor/assets/javascripts/webshims/shims/jme/b.js +576 -0
  49. data/vendor/assets/javascripts/webshims/shims/jme/c.js +1148 -0
  50. data/vendor/assets/javascripts/webshims/shims/jme/controls.css +373 -0
  51. data/vendor/assets/javascripts/webshims/shims/jme/controls.scss +711 -0
  52. data/vendor/assets/javascripts/webshims/shims/jme/jme.eot +0 -0
  53. data/vendor/assets/javascripts/webshims/shims/jme/jme.svg +36 -0
  54. data/vendor/assets/javascripts/webshims/shims/jme/jme.ttf +0 -0
  55. data/vendor/assets/javascripts/webshims/shims/jme/jme.woff +0 -0
  56. data/vendor/assets/javascripts/webshims/shims/jpicker/jpicker.css +16 -18
  57. data/vendor/assets/javascripts/webshims/shims/mediaelement-core.js +25 -188
  58. data/vendor/assets/javascripts/webshims/shims/mediaelement-jaris.js +58 -2
  59. data/vendor/assets/javascripts/webshims/shims/mediaelement-native-fix.js +130 -66
  60. data/vendor/assets/javascripts/webshims/shims/range-ui.js +21 -17
  61. data/vendor/assets/javascripts/webshims/shims/sizzle.js +1634 -1613
  62. data/vendor/assets/javascripts/webshims/shims/styles/forms-ext.css +5 -5
  63. data/vendor/assets/javascripts/webshims/shims/styles/scss/shim.scss +5 -1
  64. data/vendor/assets/javascripts/webshims/shims/styles/shim.css +13 -9
  65. data/vendor/assets/javascripts/webshims/shims/swfmini-embed.js +136 -0
  66. data/vendor/assets/javascripts/webshims/shims/swfmini.js +38 -266
  67. data/vendor/assets/javascripts/webshims/shims/track-ui.js +1 -3
  68. data/vendor/assets/javascripts/webshims/shims/track.js +41 -40
  69. metadata +13 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 4a2cd305c4543c3f88f05a7507c8994158874883
4
- data.tar.gz: a47f33704f1475c5f7362d547c9ad15ced2f6827
3
+ metadata.gz: bf9250f01df02ab7750a79be2f509fc898993f61
4
+ data.tar.gz: eb32f94fe00dd8ca6dc22bc42d5bb2177cf5dbab
5
5
  SHA512:
6
- metadata.gz: 55bed905a5a943dfa132d9c86e8aadb6a59a1b4085f73786c752e16fe8c113b3d9cdd268a86caa97d860a98933235949563696eeeee41bf1eb86db1c185b4c87
7
- data.tar.gz: 49ce052c26a6381f669267718b5f5d9dddc6362ccae5d6e1c0e43510f7622dcfb80b487489e8f37137b73c2be50e939b1c7822d676f9855d96cb643aba3dc97b
6
+ metadata.gz: 05260607e2870fcd730f475ea8b8cbfa6fd674bde183f184d9aa031281d4f62a19c69ddd33519f7cb663a58be7b91a965d1176aaa15bd5532e766b21c7267b35
7
+ data.tar.gz: 7406fdde1e7a97bb55335e831b1d658b524bfb5c4dee07cd42b73951a990058f0122af4a5b8284282f96634bf72341f042f201e3fbcd1451e8592f1cb81356c1
@@ -1,6 +1,6 @@
1
1
  module Webshims
2
2
  module Rails
3
- VERSION = "1.12.3"
4
- WEBSHIMS_VERSION = "1.12.3"
3
+ VERSION = "1.12.5"
4
+ WEBSHIMS_VERSION = "1.12.5"
5
5
  end
6
6
  end
@@ -11,7 +11,7 @@
11
11
  }
12
12
  };
13
13
  var start = function(){
14
- if(window.jQuery){
14
+ if(window.jQuery && window.Modernizr){
15
15
  factory(jQuery);
16
16
  factory = function(){return window.webshims;};
17
17
  }
@@ -83,7 +83,7 @@
83
83
  window.webshims.timer = setInterval(start, 0);
84
84
  start();
85
85
 
86
- if (typeof define === 'function' && define.amd && define.amd.jQuery) {
86
+ if (typeof define === 'function' && define.amd) {
87
87
  define('polyfiller', ['jquery'], factory);
88
88
  }
89
89
  }(function($){
@@ -97,39 +97,49 @@
97
97
  var asyncWebshims = window.asyncWebshims;
98
98
  var addTest = Modernizr.addTest;
99
99
  var Object = window.Object;
100
- var html5 = window.html5 || {};
101
100
  var addSource = function(text){
102
101
  return text +"\n//# sourceURL="+this.url;
103
102
  };
103
+ var getAutoEnhance = function(prop){
104
+ return !webCFG.enhanceAuto && prop == 'auto' ? false : prop;
105
+ };
106
+
107
+ clearInterval(webshims.timer);
104
108
  Modernizr.advancedObjectProperties = Modernizr.objectAccessor = Modernizr.ES5 = !!('create' in Object && 'seal' in Object);
105
-
109
+
106
110
  if(Modernizr.ES5 && !('toJSON' in Date.prototype)){
107
111
  Modernizr.ES5 = false;
108
112
  }
109
-
110
- clearInterval(webshims.timer);
113
+
111
114
 
112
115
  path = ($.support.hrefNormalized === false) ? webshims._curScript.getAttribute("src", 4) : webshims._curScript.src;
113
116
  path = path.split('?')[0].slice(0, path.lastIndexOf("/") + 1) + 'shims/';
114
117
 
115
118
  $.extend(webshims, {
116
- version: '1.12.3',
119
+ version: '1.12.5',
117
120
  cfg: {
118
-
121
+ enhanceAuto: window.Audio && (!window.matchMedia || matchMedia('(min-device-width: 719px)').matches),
119
122
  //addCacheBuster: false,
120
123
  waitReady: true,
121
124
  // extendNative: false,
122
125
  loadStyles: true,
123
- disableShivMethods: true,
124
126
  wsdoc: document,
125
127
  wspopover: {appendTo: 'auto', hideOnBlur: true},
126
128
  ajax: {},
127
- loadScript: function(src, success, fail){
128
- $.ajax($.extend({}, webCFG.ajax, {url: src, success: success, dataType: 'script', cache: true, global: false, dataFilter: addSource}));
129
+ loadScript: function(src, success){
130
+ if(!$.ajax){
131
+ if(window.yepnope){
132
+ yepnope.injectJs(src, success);
133
+ } else if(window.require){
134
+ require([src], success);
135
+ }
136
+ } else {
137
+ $.ajax($.extend({}, webCFG.ajax, {url: src, success: success, dataType: 'script', cache: true, global: false, dataFilter: addSource}));
138
+ }
129
139
  },
130
-
131
140
  basePath: path
132
141
  },
142
+
133
143
  bugs: {},
134
144
  /*
135
145
  * some data
@@ -144,6 +154,7 @@
144
154
  $.extend(true, webCFG, name);
145
155
  }
146
156
  },
157
+ _getAutoEnhance: getAutoEnhance,
147
158
  addPolyfill: function(name, cfg){
148
159
  cfg = cfg || {};
149
160
  var feature = cfg.f || name;
@@ -437,7 +448,7 @@
437
448
  }
438
449
  };
439
450
 
440
- return function(list, combo){
451
+ return function(list){
441
452
  var module;
442
453
  var loadCombos = [];
443
454
  var i;
@@ -530,7 +541,6 @@
530
541
 
531
542
  loadScript: (function(){
532
543
  var loadedSrcs = {};
533
- var scriptLoader;
534
544
  return function(src, callback, name, noShimPath){
535
545
  if(!noShimPath){
536
546
  src = loader.makePath(src);
@@ -601,6 +611,7 @@
601
611
  return this.callProp(prop, arguments);
602
612
  };
603
613
  };
614
+
604
615
  $.fn.callProp = function(prop, args){
605
616
  var ret;
606
617
  if(!args){
@@ -679,7 +690,7 @@
679
690
  (function(){
680
691
  //Overwrite DOM-Ready and implement a new ready-method
681
692
  $.isDOMReady = $.isReady;
682
- var onReady = function(e){
693
+ var onReady = function(){
683
694
 
684
695
  $.isDOMReady = true;
685
696
  isReady('DOM', true);
@@ -900,7 +911,7 @@
900
911
  modules.swfmini.test();
901
912
 
902
913
  addModule('sizzle', {test: $.expr.filters});
903
- addModule('$ajax', {test: $.ajax});
914
+ addModule('jajax', {test: $.ajax && $.ajaxSettings.xhr});
904
915
  /*
905
916
  * polyfill-Modules
906
917
  */
@@ -988,7 +999,9 @@
988
999
 
989
1000
  if(Modernizr[formvalidation]){
990
1001
  bustedWidgetUi = !Modernizr.fieldsetdisabled ||!Modernizr.fieldsetelements || !('value' in document.createElement('progress')) || !('value' in document.createElement('output'));
991
- bugs.bustedValidity = bustedValidity = window.opera || bustedWidgetUi || !modernizrInputAttrs.list;
1002
+ bugs.bustedValidity = bustedValidity = window.opera || bugs.bustedValidity || bustedWidgetUi || !modernizrInputAttrs.list;
1003
+ } else {
1004
+ bugs.bustedValidity = false;
992
1005
  }
993
1006
 
994
1007
  formExtend = Modernizr[formvalidation] && !bustedValidity ? 'form-native-extend' : fShim;
@@ -997,10 +1010,7 @@
997
1010
  initialFormTest.run = true;
998
1011
  return false;
999
1012
  };
1000
-
1001
- if(modernizrInputAttrs && modernizrInputTypes){
1002
- initialFormTest();
1003
- }
1013
+
1004
1014
  document.createElement('datalist');
1005
1015
 
1006
1016
 
@@ -1128,6 +1138,9 @@
1128
1138
  test: function(){
1129
1139
  var o = this.options;
1130
1140
  initialFormTest();
1141
+
1142
+ o.replaceUI = getAutoEnhance(o.replaceUI);
1143
+
1131
1144
  //input widgets on old androids can't be trusted
1132
1145
  if(bustedWidgetUi && !o.replaceUI && (/Android/i).test(navigator.userAgent)){
1133
1146
  o.replaceUI = true;
@@ -1195,8 +1208,22 @@
1195
1208
  addPolyfill('mediaelement-core', {
1196
1209
  f: 'mediaelement',
1197
1210
  noAutoCallback: true,
1211
+ loadInit: function(){
1212
+ //
1213
+ var o = this.options;
1214
+ o.replaceUI = getAutoEnhance(o.replaceUI);
1215
+
1216
+ if(o.replaceUI){
1217
+ o.plugins.unshift('mediacontrols');
1218
+ }
1219
+ setTimeout(function(){
1220
+ loadList(o.plugins);
1221
+ });
1222
+ },
1198
1223
  options: {
1199
- preferFlash: false,
1224
+ //replaceUI: false,
1225
+ jme: {},
1226
+ plugins: [],
1200
1227
  vars: {},
1201
1228
  params: {},
1202
1229
  attrs: {},
@@ -1211,13 +1238,14 @@
1211
1238
 
1212
1239
  addPolyfill('mediaelement-jaris', {
1213
1240
  f: 'mediaelement',
1214
- d: ['mediaelement-core', 'swfmini', DOMSUPPORT],
1241
+ d: ['mediaelement-core', DOMSUPPORT],
1215
1242
  test: function(){
1243
+ var options = this.options;
1244
+
1216
1245
  if(!Modernizr.audio || !Modernizr.video || webshims.mediaelement.loadSwf){
1217
1246
  return false;
1218
1247
  }
1219
-
1220
- var options = this.options;
1248
+
1221
1249
  if(options.preferFlash && !modules.swfmini.test()){
1222
1250
  options.preferFlash = false;
1223
1251
  }
@@ -1225,23 +1253,39 @@
1225
1253
  },
1226
1254
  c: [21, 19, 25, 20]
1227
1255
  });
1228
-
1229
- bugs.track = !Modernizr.texttrackapi;
1230
-
1256
+
1257
+
1258
+ bugs.track = !window.TextTrackCue || !Modernizr.texttrackapi;
1259
+
1231
1260
  addPolyfill('track', {
1232
1261
  options: {
1233
1262
  positionDisplay: true,
1234
1263
  override: bugs.track
1235
1264
  },
1236
1265
  test: function(){
1237
- return !this.options.override && !bugs.track;
1266
+ var o = this.options;
1267
+ o.override = getAutoEnhance(o.override);
1268
+ return !o.override && !bugs.track;
1238
1269
  },
1239
1270
  d: ['mediaelement', DOMSUPPORT],
1240
1271
  methodNames: ['addTextTrack'],
1241
1272
  c: [21, 12, 13, 22]
1242
1273
  });
1243
-
1244
-
1274
+
1275
+ //if(WSDEBUG){
1276
+ addModule('jme', {
1277
+ src: 'jme/b',
1278
+ c: [99]
1279
+ });
1280
+
1281
+ addModule('mediacontrols', {
1282
+ src: 'jme/c',
1283
+ css: 'jme/controls.css',
1284
+ d: ['jme'],
1285
+ c: [99]
1286
+ });
1287
+ //}
1288
+
1245
1289
  addModule('track-ui', {
1246
1290
  d: ['track', DOMSUPPORT]
1247
1291
  });
@@ -67,7 +67,7 @@
67
67
  setValuesFromMousePosition.call($this, e);
68
68
  }, 0);
69
69
  // Bind mousemove and mouseup event to the document so it responds when dragged of of the bar - we will unbind these when on mouseup to save processing
70
- $(document).bind('mousemove', mouseMove).bind('mouseup', mouseUp);
70
+ $(document).on('mousemove', mouseMove).on('mouseup', mouseUp);
71
71
  e.preventDefault(); // don't try to select anything or drag the image to the desktop
72
72
  },
73
73
  mouseMove = // set the values as the mouse moves
@@ -315,7 +315,7 @@
315
315
  bar.w = options.map && options.map.width || bar.width();
316
316
  bar.h = options.map && options.map.height || bar.height();
317
317
  // bind mousedown event
318
- bar.bind('mousedown', mouseDown);
318
+ bar.on('mousedown', mouseDown);
319
319
  bind.call($this, draw);
320
320
  },
321
321
  ColorValuePicker = // controls for all the input elements for the typing in color values
@@ -567,8 +567,8 @@
567
567
  {
568
568
  destroy: destroy
569
569
  });
570
- red.add(green).add(blue).add(alpha).add(hue).add(saturation).add(value).add(hex).add(bindedHex).add(ahex).bind('keyup', keyUp).bind('blur', blur);
571
- red.add(green).add(blue).add(alpha).add(hue).add(saturation).add(value).bind('keydown', keyDown);
570
+ red.add(green).add(blue).add(alpha).add(hue).add(saturation).add(value).add(hex).add(bindedHex).add(ahex).on('keyup', keyUp).on('blur', blur);
571
+ red.add(green).add(blue).add(alpha).add(hue).add(saturation).add(value).on('keydown', keyDown);
572
572
  color.bind(colorChanged);
573
573
  };
574
574
  $.wsjPicker = {
@@ -1583,7 +1583,7 @@
1583
1583
  color.current.val('ahex', color.active.val('ahex'));
1584
1584
  },
1585
1585
  radioClicked = function (e) {
1586
- container.find('input[type="radio"][value!="' + e.target.value + '"]').prop('checked', false);
1586
+ container.find('input[type="radio"]:not([value="' + e.target.value + '"])').prop('checked', false);
1587
1587
  setColorMode.call($this, e.target.value);
1588
1588
  },
1589
1589
  currentClicked = function () {
@@ -1610,7 +1610,7 @@
1610
1610
  pageStartX = e.pageX;
1611
1611
  pageStartY = e.pageY;
1612
1612
  // bind events to document to move window - we will unbind these on mouseup
1613
- $(document).bind('mousemove', documentMouseMove).bind('mouseup', documentMouseUp);
1613
+ $(document).on('mousemove', documentMouseMove).on('mouseup', documentMouseUp);
1614
1614
  e.preventDefault(); // prevent attempted dragging of the column
1615
1615
  },
1616
1616
  documentMouseMove = function (e) {
@@ -1702,16 +1702,16 @@
1702
1702
  var hex = all != null ? all.hex : null,
1703
1703
  preview = tbody.find('.Preview'),
1704
1704
  button = tbody.find('.Button');
1705
- activePreview = preview.find('.Active:first').css({
1705
+ activePreview = preview.find('.Active').eq(0).css({
1706
1706
  backgroundColor: hex && '#' + hex || 'transparent'
1707
1707
  });
1708
- currentPreview = preview.find('.Current:first').css({
1708
+ currentPreview = preview.find('.Current').eq(0).css({
1709
1709
  backgroundColor: hex && '#' + hex || 'transparent'
1710
- }).bind('click', currentClicked);
1710
+ }).on('click', currentClicked);
1711
1711
  setAlpha.call($this, currentPreview, mPrecision(color.current.val('a') * 100) / 255, 4);
1712
- okButton = button.find('.Ok:first').bind('click', okClicked);
1713
- cancelButton = button.find('.Cancel:first').bind('click', cancelClicked);
1714
- grid = button.find('.Grid:first');
1712
+ okButton = button.find('.Ok').eq(0).on('click', okClicked);
1713
+ cancelButton = button.find('.Cancel').eq(0).on('click', cancelClicked);
1714
+ grid = button.find('.Grid').eq(0);
1715
1715
  setTimeout(function () {
1716
1716
  setImg.call($this, colorMapL1, images.clientPath + 'Maps.png');
1717
1717
  setImg.call($this, colorMapL2, images.clientPath + 'Maps.png');
@@ -1724,7 +1724,7 @@
1724
1724
  setImg.call($this, colorBarL6, images.clientPath + 'AlphaBar.png');
1725
1725
  setImg.call($this, preview.find('div').eq(0), images.clientPath + 'preview-opacity.png');
1726
1726
  }, 0);
1727
- tbody.find('td.Radio input').bind('click', radioClicked);
1727
+ tbody.find('td.Radio input').on('click', radioClicked);
1728
1728
  // initialize quick list
1729
1729
  if (color.quickList && color.quickList.length > 0) {
1730
1730
  var html = '', i;
@@ -1741,7 +1741,7 @@
1741
1741
  }
1742
1742
  setImg.call($this, grid, images.clientPath + 'bar-opacity.png');
1743
1743
  grid.html(html);
1744
- grid.find('.QuickColor').click(quickPickClicked);
1744
+ grid.find('.QuickColor').on('click', quickPickClicked);
1745
1745
  }
1746
1746
  setColorMode.call($this, settings.color.mode);
1747
1747
  color.active.bind(activeColorChanged);
@@ -5,7 +5,7 @@
5
5
  */
6
6
 
7
7
  var swfmini = function() {
8
-
8
+ var wasRemoved = function(){webshims.error('This method was removed from swfmini');};
9
9
  var UNDEF = "undefined",
10
10
  OBJECT = "object",
11
11
  webshims = window.webshims,
@@ -19,15 +19,8 @@ var swfmini = function() {
19
19
 
20
20
  plugin = false,
21
21
  domLoadFnArr = [main],
22
- objIdArr = [],
23
- listenersArr = [],
24
- storedAltContent,
25
- storedAltContentId,
26
- storedCallbackFn,
27
- storedCallbackObj,
22
+
28
23
  isDomLoaded = false,
29
- dynamicStylesheet,
30
- dynamicStylesheetMedia,
31
24
  autoHideShow = true,
32
25
 
33
26
  /* Centralized function for browser feature detection
@@ -75,11 +68,6 @@ var swfmini = function() {
75
68
 
76
69
  function callDomLoadFunctions() {
77
70
  if (isDomLoaded) { return; }
78
- try { // test if we can really add/remove elements to/from the DOM; we don't want to fire it too early
79
- var t = doc.getElementsByTagName("body")[0].appendChild(createElement("span"));
80
- t.parentNode.removeChild(t);
81
- }
82
- catch (e) { return; }
83
71
  isDomLoaded = true;
84
72
  var dl = domLoadFnArr.length;
85
73
  for (var i = 0; i < dl; i++) {
@@ -95,14 +83,7 @@ var swfmini = function() {
95
83
  domLoadFnArr[domLoadFnArr.length] = fn; // Array.push() is only available in IE5.5+
96
84
  }
97
85
  }
98
-
99
- /* Cross-browser onload
100
- - Based on James Edwards' solution: http://brothercake.com/site/resources/scripts/onload/
101
- - Will fire an event as soon as a web page including all of its assets are loaded
102
- */
103
- function addLoadEvent(fn) {
104
-
105
- }
86
+
106
87
 
107
88
  /* Main function
108
89
  - Will preferably execute onDomLoad, otherwise onload (as a fallback)
@@ -145,150 +126,13 @@ var swfmini = function() {
145
126
  })();
146
127
  }
147
128
  }
148
-
149
-
150
- function getObjectById(objectIdStr) {
151
- var r = null;
152
- var o = getElementById(objectIdStr);
153
- if (o && o.nodeName == "OBJECT") {
154
- if (typeof o.SetVariable != UNDEF) {
155
- r = o;
156
- }
157
- else {
158
- var n = o.getElementsByTagName(OBJECT)[0];
159
- if (n) {
160
- r = n;
161
- }
162
- }
163
- }
164
- return r;
165
- }
166
-
167
-
168
- /* Cross-browser dynamic SWF creation
169
- */
170
- function createSWF(attObj, parObj, id) {
171
- var r, el = getElementById(id);
172
- if (ua.wk && ua.wk < 312) { return r; }
173
- if (el) {
174
- if (typeof attObj.id == UNDEF) { // if no 'id' is defined for the object element, it will inherit the 'id' from the alternative content
175
- attObj.id = id;
176
- }
177
- if (ua.ie && ua.win) { // Internet Explorer + the HTML object element + W3C DOM methods do not combine: fall back to outerHTML
178
- var att = "";
179
- for (var i in attObj) {
180
- if (attObj[i] != Object.prototype[i]) { // filter out prototype additions from other potential libraries
181
- if (i.toLowerCase() == "data") {
182
- parObj.movie = attObj[i];
183
- }
184
- else if (i.toLowerCase() == "styleclass") { // 'class' is an ECMA4 reserved keyword
185
- att += ' class="' + attObj[i] + '"';
186
- }
187
- else if (i.toLowerCase() != "classid") {
188
- att += ' ' + i + '="' + attObj[i] + '"';
189
- }
190
- }
191
- }
192
- var par = "";
193
- for (var j in parObj) {
194
- if (parObj[j] != Object.prototype[j]) { // filter out prototype additions from other potential libraries
195
- par += '<param name="' + j + '" value="' + parObj[j] + '" />';
196
- }
197
- }
198
- el.outerHTML = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"' + att + '>' + par + '</object>';
199
- objIdArr[objIdArr.length] = attObj.id; // stored to fix object 'leaks' on unload (dynamic publishing only)
200
- r = getElementById(attObj.id);
201
- }
202
- else { // well-behaving browsers
203
- var o = createElement(OBJECT);
204
- o.setAttribute("type", FLASH_MIME_TYPE);
205
- for (var m in attObj) {
206
- if (attObj[m] != Object.prototype[m]) { // filter out prototype additions from other potential libraries
207
- if (m.toLowerCase() == "styleclass") { // 'class' is an ECMA4 reserved keyword
208
- o.setAttribute("class", attObj[m]);
209
- }
210
- else if (m.toLowerCase() != "classid") { // filter out IE specific attribute
211
- o.setAttribute(m, attObj[m]);
212
- }
213
- }
214
- }
215
- for (var n in parObj) {
216
- if (parObj[n] != Object.prototype[n] && n.toLowerCase() != "movie") { // filter out prototype additions from other potential libraries and IE specific param element
217
- createObjParam(o, n, parObj[n]);
218
- }
219
- }
220
- el.parentNode.replaceChild(o, el);
221
- r = o;
222
- }
223
- }
224
- return r;
225
- }
226
-
227
- function createObjParam(el, pName, pValue) {
228
- var p = createElement("param");
229
- p.setAttribute("name", pName);
230
- p.setAttribute("value", pValue);
231
- el.appendChild(p);
232
- }
233
-
234
- /* Cross-browser SWF removal
235
- - Especially needed to safely and completely remove a SWF in Internet Explorer
236
- */
237
- function removeSWF(id) {
238
- var obj = getElementById(id);
239
- if (obj && obj.nodeName == "OBJECT") {
240
- if (ua.ie && ua.win) {
241
- obj.style.display = "none";
242
- (function(){
243
- if (obj.readyState == 4) {
244
- removeObjectInIE(id);
245
- }
246
- else {
247
- setTimeout(arguments.callee, 10);
248
- }
249
- })();
250
- }
251
- else {
252
- obj.parentNode.removeChild(obj);
253
- }
254
- }
255
- }
256
-
257
- function removeObjectInIE(id) {
258
- var obj = getElementById(id);
259
- if (obj) {
260
- for (var i in obj) {
261
- if (typeof obj[i] == "function") {
262
- obj[i] = null;
263
- }
264
- }
265
- obj.parentNode.removeChild(obj);
266
- }
267
- }
268
-
269
- /* Functions to optimize JavaScript compression
270
- */
271
- function getElementById(id) {
272
- var el = null;
273
- try {
274
- el = doc.getElementById(id);
275
- }
276
- catch (e) {}
277
- return el;
278
- }
129
+
279
130
 
280
131
  function createElement(el) {
281
132
  return doc.createElement(el);
282
133
  }
283
134
 
284
- /* Updated attachEvent function for Internet Explorer
285
- - Stores attachEvent information in an Array, so on unload the detachEvent functions can be called to avoid memory leaks
286
- */
287
- function addListener(target, eventType, fn) {
288
- target.attachEvent(eventType, fn);
289
- listenersArr[listenersArr.length] = [target, eventType, fn];
290
- }
291
-
135
+
292
136
  /* Flash Player and SWF content version matching
293
137
  */
294
138
  function hasPlayerVersion(rv) {
@@ -300,107 +144,43 @@ var swfmini = function() {
300
144
  }
301
145
 
302
146
 
303
-
304
- function setVisibility(id, isVisible) {
305
- if (!autoHideShow) { return; }
306
- var elem;
307
- var v = isVisible ? "visible" : "hidden";
308
- if (isDomLoaded && (elem && getElementById(id))) {
309
- getElementById(id).style.visibility = v;
310
- }
311
- }
312
147
 
313
- /* Release memory to avoid memory leaks caused by closures, fix hanging audio/video threads and force open sockets/NetConnections to disconnect (Internet Explorer only)
314
- */
315
- var cleanup = function() {
316
- if (ua.ie && ua.win && window.attachEvent) {
317
- window.attachEvent("onunload", function() {
318
- // remove listeners to avoid memory leaks
319
- var ll = listenersArr.length;
320
- for (var i = 0; i < ll; i++) {
321
- listenersArr[i][0].detachEvent(listenersArr[i][1], listenersArr[i][2]);
322
- }
323
- // cleanup dynamically embedded objects to fix audio/video threads and force open sockets and NetConnections to disconnect
324
- var il = objIdArr.length;
325
- for (var j = 0; j < il; j++) {
326
- removeSWF(objIdArr[j]);
327
- }
328
- // cleanup library's main closures to avoid memory leaks
329
- for (var k in ua) {
330
- ua[k] = null;
331
- }
332
- ua = null;
333
- for (var l in swfmini) {
334
- swfmini[l] = null;
335
- }
336
- swfmini = null;
337
- });
338
- }
339
- }();
340
-
148
+
149
+
341
150
  webshims.ready('DOM', callDomLoadFunctions);
342
-
151
+
152
+ webshims.loader.addModule('swfmini-embed', {d: ['swfmini']});
153
+ var loadEmbed = hasPlayerVersion('9.0.0') ?
154
+ function(){
155
+ webshims.loader.loadList(['swfmini-embed']);
156
+ return true;
157
+ } :
158
+ webshims.$.noop
159
+ ;
160
+
161
+ if(!Modernizr.video){
162
+ loadEmbed();
163
+ } else {
164
+ webshims.ready('WINDOWLOAD', loadEmbed);
165
+ }
166
+
343
167
  return {
344
168
  /* Public API
345
169
  - Reference: http://code.google.com/p/swfobject/wiki/documentation
346
170
  */
347
- registerObject: function() {
348
-
349
- },
171
+ registerObject: wasRemoved,
350
172
 
351
- getObjectById: function(objectIdStr) {
352
- if (ua.w3) {
353
- return getObjectById(objectIdStr);
354
- }
355
- },
173
+ getObjectById: wasRemoved,
356
174
 
357
175
  embedSWF: function(swfUrlStr, replaceElemIdStr, widthStr, heightStr, swfVersionStr, xiSwfUrlStr, flashvarsObj, parObj, attObj, callbackFn) {
358
- var callbackObj = {success:false, id:replaceElemIdStr};
359
- if (ua.w3 && !(ua.wk && ua.wk < 312) && swfUrlStr && replaceElemIdStr && widthStr && heightStr && swfVersionStr) {
360
- setVisibility(replaceElemIdStr, false);
361
- addDomLoadEvent(function() {
362
- widthStr += ""; // auto-convert to string
363
- heightStr += "";
364
- var att = {};
365
- if (attObj && typeof attObj === OBJECT) {
366
- for (var i in attObj) { // copy object to avoid the use of references, because web authors often reuse attObj for multiple SWFs
367
- att[i] = attObj[i];
368
- }
369
- }
370
- att.data = swfUrlStr;
371
- att.width = widthStr;
372
- att.height = heightStr;
373
- var par = {};
374
- if (parObj && typeof parObj === OBJECT) {
375
- for (var j in parObj) { // copy object to avoid the use of references, because web authors often reuse parObj for multiple SWFs
376
- par[j] = parObj[j];
377
- }
378
- }
379
- if (flashvarsObj && typeof flashvarsObj === OBJECT) {
380
- for (var k in flashvarsObj) { // copy object to avoid the use of references, because web authors often reuse flashvarsObj for multiple SWFs
381
- if (typeof par.flashvars != UNDEF) {
382
- par.flashvars += "&" + k + "=" + flashvarsObj[k];
383
- }
384
- else {
385
- par.flashvars = k + "=" + flashvarsObj[k];
386
- }
387
- }
388
- }
389
- if (hasPlayerVersion(swfVersionStr)) { // create SWF
390
- var obj = createSWF(att, par, replaceElemIdStr);
391
- if (att.id == replaceElemIdStr) {
392
- setVisibility(replaceElemIdStr, true);
393
- }
394
- callbackObj.success = true;
395
- callbackObj.ref = obj;
396
- }
397
- else { // show alternative content
398
- setVisibility(replaceElemIdStr, true);
399
- }
400
- if (callbackFn) { callbackFn(callbackObj); }
176
+ var args = arguments;
177
+ if(loadEmbed()){
178
+ webshims.ready('swfmini-embed', function(){
179
+ swfmini.embedSWF.apply(swfmini, args);
401
180
  });
181
+ } else if(callbackFn) {
182
+ callbackFn({success:false, id:replaceElemIdStr});
402
183
  }
403
- else if (callbackFn) { callbackFn(callbackObj); }
404
184
  },
405
185
 
406
186
  switchOffAutoHideShow: function() {
@@ -424,33 +204,24 @@ var swfmini = function() {
424
204
  }
425
205
  },
426
206
 
427
- showExpressInstall: function() {
428
-
429
- },
207
+ showExpressInstall: wasRemoved,
430
208
 
431
- removeSWF: function(objElemIdStr) {
432
- if (ua.w3) {
433
- removeSWF(objElemIdStr);
434
- }
435
- },
209
+ removeSWF: wasRemoved,
436
210
 
437
- createCSS: function() {
438
-
439
- },
211
+ createCSS: wasRemoved,
440
212
 
441
213
  addDomLoadEvent: addDomLoadEvent,
442
214
 
443
- addLoadEvent: addLoadEvent,
215
+ addLoadEvent: wasRemoved,
444
216
 
445
217
 
446
218
  // For internal usage only
447
- expressInstallCallback: function() {
448
-
449
- }
219
+ expressInstallCallback: wasRemoved
450
220
  };
451
221
  }();
452
- ;
453
- webshims.register('form-core', function($, webshims, window, document, undefined, options){
222
+
223
+ webshims.isReady('swfmini', true);
224
+ ;webshims.register('form-core', function($, webshims, window, document, undefined, options){
454
225
  "use strict";
455
226
 
456
227
  webshims.capturingEventPrevented = function(e){
@@ -476,6 +247,7 @@ webshims.register('form-core', function($, webshims, window, document, undefined
476
247
  webshims.capturingEvents(['invalid'], true);
477
248
  }
478
249
 
250
+ var modules = webshims.modules;
479
251
  var isValid = function(elem){
480
252
  return ($.prop(elem, 'validity') || {valid: 1}).valid;
481
253
  };
@@ -485,10 +257,12 @@ webshims.register('form-core', function($, webshims, window, document, undefined
485
257
  options.customMessages = true;
486
258
  toLoad.push('form-message');
487
259
  }
488
- if(options.customDatalist){
260
+
261
+ if(webshims._getAutoEnhance(options.customDatalist)){
489
262
  options.fD = true;
490
263
  toLoad.push('form-datalist');
491
264
  }
265
+
492
266
  if(options.addValidators){
493
267
  toLoad.push('form-validators');
494
268
  }
@@ -502,7 +276,7 @@ webshims.register('form-core', function($, webshims, window, document, undefined
502
276
  var hasInvalid = function(elem){
503
277
  var ret = false;
504
278
  $(elem).jProp('elements').each(function(){
505
- if(!rElementsGroup.test(elem.nodeName || '')){
279
+ if(!rElementsGroup.test(this.nodeName || '')){
506
280
  ret = $(this).is(':invalid');
507
281
  if(ret){
508
282
  return false;
@@ -697,18 +471,30 @@ webshims.register('form-core', function($, webshims, window, document, undefined
697
471
  }
698
472
  return message;
699
473
  };
700
-
474
+
475
+ $.event.special.valuevalidation = {
476
+ setup: function(){
477
+ var data = $(this).data() || $.data(this, {});
478
+ if(!('valuevalidation' in data)){
479
+ data.valuevalidation = true;
480
+ }
481
+ }
482
+ };
701
483
 
702
484
  $(document).on('focusin.lazyloadvalidation', function(e){
703
485
  if('form' in e.target){
704
486
  lazyLoad();
705
487
  }
706
488
  });
489
+
707
490
  webshims.ready('WINDOWLOAD', lazyLoad);
491
+
492
+ if(modules['form-number-date-ui'].loaded && modules['form-number-date-api'].test()){
493
+ webshims.isReady('form-number-date-ui', true);
494
+ }
708
495
  });
709
496
  ;(function(Modernizr, webshims){
710
497
  "use strict";
711
- var $ = webshims.$;
712
498
  var hasNative = Modernizr.audio && Modernizr.video;
713
499
  var supportsLoop = false;
714
500
  var bugs = webshims.bugs;
@@ -721,6 +507,7 @@ webshims.register('form-core', function($, webshims, window, document, undefined
721
507
  }
722
508
  });
723
509
  };
510
+
724
511
  var wsCfg = webshims.cfg;
725
512
  var options = wsCfg.mediaelement;
726
513
  var hasFullTrackSupport;
@@ -729,74 +516,36 @@ webshims.register('form-core', function($, webshims, window, document, undefined
729
516
  webshims.error("mediaelement wasn't implemented but loaded");
730
517
  return;
731
518
  }
519
+
732
520
  if(hasNative){
733
521
  var videoElem = document.createElement('video');
734
522
  Modernizr.videoBuffered = ('buffered' in videoElem);
735
523
  Modernizr.mediaDefaultMuted = ('defaultMuted' in videoElem);
736
524
  supportsLoop = ('loop' in videoElem);
737
-
525
+ Modernizr.mediaLoop = supportsLoop;
526
+
738
527
  webshims.capturingEvents(['play', 'playing', 'waiting', 'paused', 'ended', 'durationchange', 'loadedmetadata', 'canplay', 'volumechange']);
739
528
 
740
- if(!Modernizr.videoBuffered ){
529
+ if( !Modernizr.videoBuffered || !supportsLoop || (!Modernizr.mediaDefaultMuted && navigator.userAgent.indexOf('MSIE') != -1 && 'ActiveXObject' in window) ){
741
530
  webshims.addPolyfill('mediaelement-native-fix', {
742
531
  d: ['dom-support']
743
532
  });
744
533
  webshims.loader.loadList(['mediaelement-native-fix']);
745
534
  }
746
-
747
- if(!options.preferFlash){
748
- var noSwitch = {
749
- 1: 1
750
- };
751
- var switchOptions = function(e){
752
- var media, error, parent;
753
- if(!options.preferFlash &&
754
- ($(e.target).is('audio, video') || ((parent = e.target.parentNode) && $('source', parent).last()[0] == e.target)) &&
755
- (media = $(e.target).closest('audio, video')) && (error = media.prop('error')) && !noSwitch[error.code]
756
- ){
757
-
758
- $(function(){
759
- if(hasSwf && !options.preferFlash){
760
- loadSwf();
761
- webshims.ready('WINDOWLOAD '+swfType, function(){
762
- setTimeout(function(){
763
- if(!options.preferFlash && webshims.mediaelement.createSWF && !media.is('.nonnative-api-active')){
764
- options.preferFlash = true;
765
- document.removeEventListener('error', switchOptions, true);
766
- $('audio, video').each(function(){
767
- webshims.mediaelement.selectSource(this);
768
- });
769
- webshims.error("switching mediaelements option to 'preferFlash', due to an error with native player: "+e.target.src+" Mediaerror: "+ media.prop('error')+ 'first error: '+ error);
770
- }
771
- }, 9);
772
- });
773
- } else{
774
- document.removeEventListener('error', switchOptions, true);
775
- }
776
- });
777
- }
778
- };
779
- document.addEventListener('error', switchOptions, true);
780
- $('audio, video').each(function(){
781
- var error = $.prop(this, 'error');
782
- if(error && !noSwitch[error]){
783
- switchOptions({target: this});
784
- return false;
785
- }
786
- });
787
- }
788
535
  }
789
536
 
790
537
  if(Modernizr.track && !bugs.track){
791
538
  (function(){
792
-
793
- if(!bugs.track){
794
- bugs.track = typeof $('<track />')[0].readyState != 'number';
795
- }
796
-
797
539
  if(!bugs.track){
540
+
541
+ if(window.VTTCue && !window.TextTrackCue){
542
+ window.TextTrackCue = window.VTTCue;
543
+ } else if(!window.VTTCue){
544
+ window.VTTCue = window.TextTrackCue;
545
+ }
546
+
798
547
  try {
799
- new TextTrackCue(2, 3, '');
548
+ new VTTCue(2, 3, '');
800
549
  } catch(e){
801
550
  bugs.track = true;
802
551
  }
@@ -832,6 +581,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
832
581
  }
833
582
  data.streamId = data.streamId.join('/');
834
583
  };
584
+
835
585
  var getSrcObj = function(elem, nodeName){
836
586
  elem = $(elem);
837
587
  var src = {src: elem.attr('src') || '', elem: elem, srcProp: elem.prop('src')};
@@ -901,14 +651,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
901
651
  });
902
652
  }
903
653
  };
904
- // var loadMediaGroup = function(){
905
- // if(!loadMediaGroup.loaded){
906
- // loadMediaGroup.loaded = true;
907
- // webshims.ready(window.MediaController ? 'WINDOWLOAD' : 'DOM', function(){
908
- // webshims.loader.loadList(['mediagroup']);
909
- // });
910
- // }
911
- // };
654
+
912
655
  var loadYt = (function(){
913
656
  var loaded;
914
657
  return function(){
@@ -933,10 +676,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
933
676
  d: ['dom-support']
934
677
  });
935
678
 
936
-
937
- // webshims.addModule('mediagroup', {
938
- // d: ['mediaelement', 'dom-support']
939
- // });
679
+
940
680
 
941
681
  mediaelement.mimeTypes = {
942
682
  audio: {
@@ -970,7 +710,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
970
710
 
971
711
  mediaelement.mimeTypes.source = $.extend({}, mediaelement.mimeTypes.audio, mediaelement.mimeTypes.video);
972
712
 
973
- mediaelement.getTypeForSrc = function(src, nodeName, data){
713
+ mediaelement.getTypeForSrc = function(src, nodeName){
974
714
  if(src.indexOf('youtube.com/watch?') != -1 || src.indexOf('youtube.com/v/') != -1){
975
715
  return 'video/youtube';
976
716
  }
@@ -1008,32 +748,13 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
1008
748
  }
1009
749
  return srces;
1010
750
  } else {
1011
- mediaElem.removeAttr('src').removeAttr('type').find('source').remove();
1012
- if(!$.isArray(srces)){
1013
- srces = [srces];
1014
- }
1015
- srces.forEach(function(src){
1016
- if(typeof src == 'string'){
1017
- src = {src: src};
1018
- }
1019
- mediaElem.append($(document.createElement('source')).attr(src));
1020
- });
1021
-
751
+ webshims.error('setting sources was removed.');
1022
752
  }
1023
753
  };
1024
754
 
1025
755
 
1026
- $.fn.loadMediaSrc = function(srces, poster){
1027
- return this.each(function(){
1028
- if(poster !== undefined){
1029
- $(this).removeAttr('poster');
1030
- if(poster){
1031
- $.attr(this, 'poster', poster);
1032
- }
1033
- }
1034
- mediaelement.srces(this, srces);
1035
- $(this).mediaLoad();
1036
- });
756
+ $.fn.loadMediaSrc = function(){
757
+ webshims.error('loadMediaSrc was removed.');
1037
758
  };
1038
759
 
1039
760
  mediaelement.swfMimeTypes = ['video/3gpp', 'video/x-msvideo', 'video/quicktime', 'video/x-m4v', 'video/mp4', 'video/m4p', 'video/x-flv', 'video/flv', 'audio/mpeg', 'audio/aac', 'audio/mp4', 'audio/x-m4a', 'audio/m4a', 'audio/mp3', 'audio/x-fla', 'audio/fla', 'youtube/flv', 'video/jarisplayer', 'jarisplayer/jarisplayer', 'video/youtube', 'video/rtmp', 'audio/rtmp'];
@@ -1109,8 +830,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
1109
830
  var readyType = hasSwf ? swfType : 'mediaelement-yt';
1110
831
  return function( mediaElem, ret, data ){
1111
832
  //readd to ready
1112
-
1113
-
833
+
1114
834
  webshims.ready(readyType, function(){
1115
835
  if(mediaelement.createSWF && $(mediaElem).parent()[0]){
1116
836
  mediaelement.createSWF( mediaElem, ret, data );
@@ -1186,7 +906,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
1186
906
 
1187
907
  });
1188
908
 
1189
- var handleMedia = false;
909
+ var handleMedia = false;
1190
910
  var initMediaElements = function(){
1191
911
  var testFixMedia = function(){
1192
912
  if(webshims.implement(this, 'mediaelement')){
@@ -1194,50 +914,6 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
1194
914
  if(!Modernizr.mediaDefaultMuted && $.attr(this, 'muted') != null){
1195
915
  $.prop(this, 'muted', true);
1196
916
  }
1197
- //fixes for FF 12 and IE9/10 || does not hurt, if run in other browsers
1198
- if(hasNative && (!supportsLoop || ('ActiveXObject' in window))){
1199
- var bufferTimer;
1200
- var lastBuffered;
1201
- var elem = this;
1202
- var getBufferedString = function(){
1203
- var buffered = $.prop(elem, 'buffered');
1204
- if(!buffered){return;}
1205
- var bufferString = "";
1206
- for(var i = 0, len = buffered.length; i < len;i++){
1207
- bufferString += buffered.end(i);
1208
- }
1209
- return bufferString;
1210
- };
1211
- var testBuffer = function(){
1212
- var buffered = getBufferedString();
1213
- if(buffered != lastBuffered){
1214
- lastBuffered = buffered;
1215
- webshims.info('needed to trigger progress manually');
1216
- $(elem).triggerHandler('progress');
1217
- }
1218
- };
1219
-
1220
- $(this)
1221
- .on({
1222
- 'play loadstart progress': function(e){
1223
- if(e.type == 'progress'){
1224
- lastBuffered = getBufferedString();
1225
- }
1226
- clearTimeout(bufferTimer);
1227
- bufferTimer = setTimeout(testBuffer, 400);
1228
- },
1229
- 'emptied stalled mediaerror abort suspend': function(e){
1230
- if(e.type == 'emptied'){
1231
- lastBuffered = false;
1232
- }
1233
- clearTimeout(bufferTimer);
1234
- }
1235
- })
1236
- ;
1237
- if('ActiveXObject' in window && $.prop(this, 'paused') && !$.prop(this, 'readyState') && $(this).is('audio[preload="none"][controls]:not([autoplay],.nonnative-api-active)')){
1238
- $(this).prop('preload', 'metadata').mediaLoad();
1239
- }
1240
- }
1241
917
  }
1242
918
 
1243
919
  };
@@ -1250,7 +926,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
1250
926
  }
1251
927
 
1252
928
  ['audio', 'video'].forEach(function(nodeName){
1253
- var supLoad, supController;
929
+ var supLoad;
1254
930
  supLoad = webshims.defineNodeNameProperty(nodeName, 'load', {
1255
931
  prop: {
1256
932
  value: function(){
@@ -1283,58 +959,8 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
1283
959
  }
1284
960
  }
1285
961
  });
1286
-
1287
- // supController = webshims.defineNodeNameProperty(nodeName, 'controller', {
1288
- // prop: {
1289
- // get: function(type){
1290
- // if(!loadMediaGroup.loaded){
1291
- // loadMediaGroup();
1292
- // }
1293
- // if(mediaelement.controller){
1294
- // return mediaelement.controller[nodeName].get.apply(this, arguments);
1295
- // }
1296
- // return supController.prop._supget && supController.prop._supget.apply(this, arguments);
1297
- // },
1298
- // set: function(){
1299
- // var that = this;
1300
- // var args = arguments;
1301
- // if(!loadMediaGroup.loaded){
1302
- // loadMediaGroup();
1303
- // }
1304
- // if(mediaelement.controller){
1305
- // return mediaelement.controller[nodeName].set.apply(that, args);
1306
- // } else {
1307
- // webshims.ready('mediagroup', function(){
1308
- // mediaelement.controller[nodeName].set.apply(that, args);
1309
- // });
1310
- // }
1311
- // return supController.prop._supset && supController.prop._supset.apply(this, arguments);
1312
- // }
1313
- // }
1314
- // });
1315
-
1316
- // webshims.ready('mediagroup', function(){
1317
- // mediaelement.controller[nodeName].sup = supController;
1318
- // });
1319
962
  });
1320
-
1321
- // webshims.onNodeNamesPropertyModify(['audio', 'video'], ['mediaGroup'], {
1322
- // set: function(){
1323
- // var that = this;
1324
- // var args = arguments;
1325
- // if(!loadMediaGroup.loaded){
1326
- // loadMediaGroup();
1327
- // }
1328
- // if(mediaelement.mediagroup){
1329
- // mediaelement.mediagroup.set.apply(that, args);
1330
- // } else {
1331
- // webshims.ready('mediagroup', function(){
1332
- // mediaelement.mediagroup.set.apply(that, args);
1333
- // });
1334
- // }
1335
- // },
1336
- // initAttr: true
1337
- // });
963
+
1338
964
 
1339
965
  webshims.onNodeNamesPropertyModify(['audio', 'video'], ['src', 'poster'], {
1340
966
  set: function(){
@@ -1357,9 +983,6 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
1357
983
  if(!loadTrackUi.loaded && $('track', media).length){
1358
984
  loadTrackUi();
1359
985
  }
1360
- // if(!loadMediaGroup.loaded && this.getAttribute('mediagroup')){
1361
- // loadMediaGroup();
1362
- // }
1363
986
  media = null;
1364
987
  });
1365
988
  });
@@ -1399,4 +1022,5 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
1399
1022
  }
1400
1023
  webshims.ready('track', loadTrackUi);
1401
1024
  });
1025
+
1402
1026
  })(Modernizr, webshims);