webshims-rails 1.11.3.1 → 1.11.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/webshims-rails/version.rb +2 -2
- data/vendor/assets/javascripts/webshims/extras/modernizr-custom.js +114 -104
- data/vendor/assets/javascripts/webshims/extras/mousepress.js +5 -5
- data/vendor/assets/javascripts/webshims/polyfiller.js +156 -207
- data/vendor/assets/javascripts/webshims/shims/$ajax.js +862 -0
- data/vendor/assets/javascripts/webshims/shims/FlashCanvas/flashcanvas.js +20 -0
- data/vendor/assets/javascripts/webshims/shims/FlashCanvasPro/flashcanvas.js +20 -0
- data/vendor/assets/javascripts/webshims/shims/color-picker.js +12 -12
- data/vendor/assets/javascripts/webshims/shims/combos/1.js +62 -32
- data/vendor/assets/javascripts/webshims/shims/combos/10.js +192 -509
- data/vendor/assets/javascripts/webshims/shims/combos/11.js +96 -415
- data/vendor/assets/javascripts/webshims/shims/combos/12.js +36 -26
- data/vendor/assets/javascripts/webshims/shims/combos/13.js +36 -26
- data/vendor/assets/javascripts/webshims/shims/combos/14.js +1007 -359
- data/vendor/assets/javascripts/webshims/shims/combos/15.js +310 -235
- data/vendor/assets/javascripts/webshims/shims/combos/16.js +313 -237
- data/vendor/assets/javascripts/webshims/shims/combos/17.js +96 -415
- data/vendor/assets/javascripts/webshims/shims/combos/18.js +1003 -678
- data/vendor/assets/javascripts/webshims/shims/combos/19.js +1085 -387
- data/vendor/assets/javascripts/webshims/shims/combos/2.js +161 -127
- data/vendor/assets/javascripts/webshims/shims/combos/20.js +1086 -388
- data/vendor/assets/javascripts/webshims/shims/combos/21.js +168 -96
- data/vendor/assets/javascripts/webshims/shims/combos/22.js +36 -27
- data/vendor/assets/javascripts/webshims/shims/combos/23.js +2 -1
- data/vendor/assets/javascripts/webshims/shims/combos/24.js +411 -172
- data/vendor/assets/javascripts/webshims/shims/combos/25.js +1085 -387
- data/vendor/assets/javascripts/webshims/shims/combos/26.js +96 -94
- data/vendor/assets/javascripts/webshims/shims/combos/3.js +163 -140
- data/vendor/assets/javascripts/webshims/shims/combos/30.js +166 -141
- data/vendor/assets/javascripts/webshims/shims/combos/31.js +159 -126
- data/vendor/assets/javascripts/webshims/shims/combos/4.js +103 -109
- data/vendor/assets/javascripts/webshims/shims/combos/5.js +98 -417
- data/vendor/assets/javascripts/webshims/shims/combos/6.js +101 -418
- data/vendor/assets/javascripts/webshims/shims/combos/7.js +168 -142
- data/vendor/assets/javascripts/webshims/shims/combos/8.js +165 -141
- data/vendor/assets/javascripts/webshims/shims/combos/9.js +195 -510
- data/vendor/assets/javascripts/webshims/shims/details.js +2 -2
- data/vendor/assets/javascripts/webshims/shims/dom-extend.js +96 -94
- data/vendor/assets/javascripts/webshims/shims/es5.js +908 -264
- data/vendor/assets/javascripts/webshims/shims/excanvas.js +16 -1
- data/vendor/assets/javascripts/webshims/shims/form-combat.js +147 -0
- data/vendor/assets/javascripts/webshims/shims/form-core.js +60 -31
- data/vendor/assets/javascripts/webshims/shims/form-datalist-lazy.js +114 -33
- data/vendor/assets/javascripts/webshims/shims/form-datalist.js +3 -1
- data/vendor/assets/javascripts/webshims/shims/form-message.js +7 -15
- data/vendor/assets/javascripts/webshims/shims/form-native-extend.js +2 -2
- data/vendor/assets/javascripts/webshims/shims/form-number-date-ui.js +88 -410
- data/vendor/assets/javascripts/webshims/shims/form-shim-extend.js +143 -93
- data/vendor/assets/javascripts/webshims/shims/form-shim-extend2.js +268 -79
- data/vendor/assets/javascripts/webshims/shims/form-validation.js +116 -81
- data/vendor/assets/javascripts/webshims/shims/form-validators.js +23 -10
- data/vendor/assets/javascripts/webshims/shims/forms-picker.js +605 -9
- data/vendor/assets/javascripts/webshims/shims/geolocation.js +51 -39
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-de.js +78 -33
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-en.js +24 -6
- data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-nl.js +110 -49
- data/vendor/assets/javascripts/webshims/shims/json-storage.js +3 -1
- data/vendor/assets/javascripts/webshims/shims/mediaelement-core.js +2 -1
- data/vendor/assets/javascripts/webshims/shims/mediaelement-jaris.js +81 -30
- data/vendor/assets/javascripts/webshims/shims/mediaelement-yt.js +131 -54
- data/vendor/assets/javascripts/webshims/shims/plugins/jquery.ui.position.js +497 -0
- data/vendor/assets/javascripts/webshims/shims/range-ui.js +8 -5
- data/vendor/assets/javascripts/webshims/shims/sizzle.js +2026 -0
- data/vendor/assets/javascripts/webshims/shims/styles/forms-ext.css +401 -521
- data/vendor/assets/javascripts/webshims/shims/styles/scss/forms-ext.scss +1 -1
- data/vendor/assets/javascripts/webshims/shims/styles/scss/shim.scss +94 -82
- data/vendor/assets/javascripts/webshims/shims/styles/shim.css +250 -321
- data/vendor/assets/javascripts/webshims/shims/swf/JarisFLVPlayer.swf +0 -0
- data/vendor/assets/javascripts/webshims/shims/track-ui.js +1 -1
- data/vendor/assets/javascripts/webshims/shims/track.js +34 -25
- metadata +7 -3
@@ -454,9 +454,9 @@ webshims.register('mediaelement-jaris', function($, webshims, window, document,
|
|
454
454
|
})();
|
455
455
|
|
456
456
|
|
457
|
-
var
|
457
|
+
var getComputedDimension = (function(){
|
458
458
|
var dimCache = {};
|
459
|
-
var
|
459
|
+
var getVideoDims = function(data){
|
460
460
|
var ret, poster, img;
|
461
461
|
if(dimCache[data.currentSrc]){
|
462
462
|
ret = dimCache[data.currentSrc];
|
@@ -481,54 +481,102 @@ webshims.register('mediaelement-jaris', function($, webshims, window, document,
|
|
481
481
|
} else {
|
482
482
|
delete dimCache[poster];
|
483
483
|
}
|
484
|
+
img.onload = null;
|
484
485
|
};
|
485
486
|
img.src = poster;
|
486
|
-
if(img.complete){
|
487
|
+
if(img.complete && img.onload){
|
487
488
|
img.onload();
|
488
489
|
}
|
489
490
|
}
|
490
491
|
}
|
491
492
|
return ret || {width: 300, height: data._elemNodeName == 'video' ? 150 : 50};
|
492
493
|
};
|
493
|
-
|
494
|
-
|
495
|
-
|
494
|
+
|
495
|
+
var getCssStyle = function(elem, style){
|
496
|
+
return elem.style[style] || (elem.currentStyle && elem.currentStyle[style]) || (window.getComputedStyle && (window.getComputedStyle( elem, null ) || {} )[style]) || '';
|
497
|
+
};
|
498
|
+
var minMaxProps = ['minWidth', 'maxWidth', 'minHeight', 'maxHeight'];
|
499
|
+
|
500
|
+
var addMinMax = function(elem, ret){
|
501
|
+
var i, prop;
|
502
|
+
var hasMinMax = false;
|
503
|
+
for (i = 0; i < 4; i++) {
|
504
|
+
prop = getCssStyle(elem, minMaxProps[i]);
|
505
|
+
if(parseFloat(prop, 10)){
|
506
|
+
hasMinMax = true;
|
507
|
+
ret[minMaxProps[i]] = prop;
|
508
|
+
}
|
509
|
+
}
|
510
|
+
return hasMinMax;
|
511
|
+
};
|
512
|
+
var retFn = function(data){
|
513
|
+
var videoDims, ratio, hasMinMax;
|
514
|
+
var elem = data._elem;
|
515
|
+
var autos = {
|
516
|
+
width: getCssStyle(elem, 'width') == 'auto',
|
517
|
+
height: getCssStyle(elem, 'height') == 'auto'
|
518
|
+
};
|
519
|
+
var ret = {
|
520
|
+
width: !autos.width && $(elem).width(),
|
521
|
+
height: !autos.height && $(elem).height()
|
522
|
+
};
|
496
523
|
|
497
|
-
if(
|
498
|
-
|
499
|
-
|
500
|
-
ratio = realDims.width / realDims.height;
|
524
|
+
if(autos.width || autos.height){
|
525
|
+
videoDims = getVideoDims(data);
|
526
|
+
ratio = videoDims.width / videoDims.height;
|
501
527
|
|
502
|
-
if(
|
503
|
-
ret =
|
504
|
-
|
505
|
-
|
506
|
-
ret.width =
|
507
|
-
} else {
|
508
|
-
|
509
|
-
|
528
|
+
if(autos.width && autos.height){
|
529
|
+
ret.width = videoDims.width;
|
530
|
+
ret.height = videoDims.height;
|
531
|
+
} else if(autos.width){
|
532
|
+
ret.width = ret.height * ratio;
|
533
|
+
} else if(autos.height){
|
534
|
+
ret.height = ret.width / ratio;
|
535
|
+
}
|
536
|
+
|
537
|
+
if(addMinMax(elem, ret)){
|
538
|
+
data.shadowElem.css(ret);
|
539
|
+
if(autos.width){
|
540
|
+
ret.width = data.shadowElem.height() * ratio;
|
541
|
+
}
|
542
|
+
if(autos.height){
|
543
|
+
ret.height = ((autos.width) ? ret.width : data.shadowElem.width()) / ratio;
|
544
|
+
}
|
545
|
+
if(autos.width && autos.height){
|
546
|
+
data.shadowElem.css(ret);
|
547
|
+
ret.height = data.shadowElem.width() / ratio;
|
548
|
+
ret.width = ret.height * ratio;
|
549
|
+
|
550
|
+
data.shadowElem.css(ret);
|
551
|
+
ret.width = data.shadowElem.height() * ratio;
|
552
|
+
ret.height = ret.width / ratio;
|
553
|
+
|
554
|
+
}
|
555
|
+
if(!Modernizr.video){
|
556
|
+
ret.width = data.shadowElem.width();
|
557
|
+
ret.height = data.shadowElem.height();
|
558
|
+
}
|
510
559
|
}
|
511
560
|
}
|
512
561
|
return ret;
|
513
562
|
};
|
563
|
+
|
564
|
+
return retFn;
|
514
565
|
})();
|
566
|
+
|
515
567
|
var setElementDimension = function(data, hasControls){
|
516
568
|
var dims;
|
517
|
-
|
569
|
+
|
518
570
|
var box = data.shadowElem;
|
519
|
-
$(
|
571
|
+
$(data._elem)[hasControls ? 'addClass' : 'removeClass']('webshims-controls');
|
520
572
|
|
521
|
-
if(data.isActive == 'third'){
|
573
|
+
if(data.isActive == 'third' || data.activating == 'third'){
|
522
574
|
if(data._elemNodeName == 'audio' && !hasControls){
|
523
575
|
box.css({width: 0, height: 0});
|
524
576
|
} else {
|
525
|
-
data.
|
526
|
-
|
527
|
-
|
528
|
-
};
|
529
|
-
dims = transformDimension(data);
|
530
|
-
dims.minWidth = elem.style.minWidth;
|
531
|
-
dims.minHeight = elem.style.minHeight;
|
577
|
+
data._elem.style.display = '';
|
578
|
+
dims = getComputedDimension(data);
|
579
|
+
data._elem.style.display = 'none';
|
532
580
|
box.css(dims);
|
533
581
|
}
|
534
582
|
}
|
@@ -587,6 +635,8 @@ webshims.register('mediaelement-jaris', function($, webshims, window, document,
|
|
587
635
|
}, 1);
|
588
636
|
return;
|
589
637
|
}
|
638
|
+
|
639
|
+
var attrStyle = {};
|
590
640
|
|
591
641
|
if(loadedSwf < 1){
|
592
642
|
loadedSwf = 1;
|
@@ -597,7 +647,8 @@ webshims.register('mediaelement-jaris', function($, webshims, window, document,
|
|
597
647
|
data = webshims.data(elem, 'mediaelement');
|
598
648
|
}
|
599
649
|
|
600
|
-
if($.attr(elem, 'height') || $.attr(elem, 'width')){
|
650
|
+
if((attrStyle.height = $.attr(elem, 'height') || '') || (attrStyle.width = $.attr(elem, 'width') || '')){
|
651
|
+
$(elem).css(attrStyle);
|
601
652
|
webshims.warn("width or height content attributes used. Webshims prefers the usage of CSS (computed styles or inline styles) to detect size of a video/audio. It's really more powerfull.");
|
602
653
|
}
|
603
654
|
|
@@ -704,7 +755,7 @@ webshims.register('mediaelement-jaris', function($, webshims, window, document,
|
|
704
755
|
box.insertBefore(elem);
|
705
756
|
|
706
757
|
if(hasNative){
|
707
|
-
$.extend(data, {volume: $.prop(elem, 'volume'), muted: $.prop(elem, 'muted')
|
758
|
+
$.extend(data, {volume: $.prop(elem, 'volume'), muted: $.prop(elem, 'muted')});
|
708
759
|
}
|
709
760
|
|
710
761
|
webshims.addShadowDom(elem, box);
|
@@ -85,9 +85,9 @@ var resetSwfProps = (function(){
|
|
85
85
|
})();
|
86
86
|
|
87
87
|
|
88
|
-
var
|
88
|
+
var getComputedDimension = (function(){
|
89
89
|
var dimCache = {};
|
90
|
-
var
|
90
|
+
var getVideoDims = function(data){
|
91
91
|
var ret, poster, img;
|
92
92
|
if(dimCache[data.currentSrc]){
|
93
93
|
ret = dimCache[data.currentSrc];
|
@@ -108,61 +108,108 @@ var transformDimension = (function(){
|
|
108
108
|
};
|
109
109
|
|
110
110
|
if(dimCache[poster].height && dimCache[poster].width){
|
111
|
-
setElementDimension(data);
|
111
|
+
setElementDimension(data, $.prop(data._elem, 'controls'));
|
112
112
|
} else {
|
113
113
|
delete dimCache[poster];
|
114
114
|
}
|
115
|
+
img.onload = null;
|
115
116
|
};
|
116
117
|
img.src = poster;
|
117
|
-
if(img.complete){
|
118
|
+
if(img.complete && img.onload){
|
118
119
|
img.onload();
|
119
120
|
}
|
120
121
|
}
|
121
122
|
}
|
122
123
|
return ret || {width: 300, height: data._elemNodeName == 'video' ? 150 : 50};
|
123
124
|
};
|
124
|
-
|
125
|
-
|
126
|
-
|
125
|
+
|
126
|
+
var getCssStyle = function(elem, style){
|
127
|
+
return elem.style[style] || (elem.currentStyle && elem.currentStyle[style]) || (window.getComputedStyle && (window.getComputedStyle( elem, null ) || {} )[style]) || '';
|
128
|
+
};
|
129
|
+
var minMaxProps = ['minWidth', 'maxWidth', 'minHeight', 'maxHeight'];
|
130
|
+
|
131
|
+
var addMinMax = function(elem, ret){
|
132
|
+
var i, prop;
|
133
|
+
var hasMinMax = false;
|
134
|
+
for (i = 0; i < 4; i++) {
|
135
|
+
prop = getCssStyle(elem, minMaxProps[i]);
|
136
|
+
if(parseFloat(prop, 10)){
|
137
|
+
hasMinMax = true;
|
138
|
+
ret[minMaxProps[i]] = prop;
|
139
|
+
}
|
140
|
+
}
|
141
|
+
return hasMinMax;
|
142
|
+
};
|
143
|
+
var retFn = function(data){
|
144
|
+
var videoDims, ratio, hasMinMax;
|
145
|
+
var elem = data._elem;
|
146
|
+
var autos = {
|
147
|
+
width: getCssStyle(elem, 'width') == 'auto',
|
148
|
+
height: getCssStyle(elem, 'height') == 'auto'
|
149
|
+
};
|
150
|
+
var ret = {
|
151
|
+
width: !autos.width && $(elem).width(),
|
152
|
+
height: !autos.height && $(elem).height()
|
153
|
+
};
|
127
154
|
|
128
|
-
if(
|
129
|
-
|
130
|
-
|
131
|
-
|
155
|
+
if(autos.width || autos.height){
|
156
|
+
videoDims = getVideoDims(data);
|
157
|
+
ratio = videoDims.width / videoDims.height;
|
158
|
+
|
159
|
+
if(autos.width && autos.height){
|
160
|
+
ret.width = videoDims.width;
|
161
|
+
ret.height = videoDims.height;
|
162
|
+
} else if(autos.width){
|
163
|
+
ret.width = ret.height * ratio;
|
164
|
+
} else if(autos.height){
|
165
|
+
ret.height = ret.width / ratio;
|
166
|
+
}
|
132
167
|
|
133
|
-
if(
|
134
|
-
ret
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
168
|
+
if(addMinMax(elem, ret)){
|
169
|
+
data.shadowElem.css(ret);
|
170
|
+
if(autos.width){
|
171
|
+
ret.width = data.shadowElem.height() * ratio;
|
172
|
+
}
|
173
|
+
if(autos.height){
|
174
|
+
ret.height = ((autos.width) ? ret.width : data.shadowElem.width()) / ratio;
|
175
|
+
}
|
176
|
+
if(autos.width && autos.height){
|
177
|
+
data.shadowElem.css(ret);
|
178
|
+
ret.height = data.shadowElem.width() / ratio;
|
179
|
+
ret.width = ret.height * ratio;
|
180
|
+
|
181
|
+
data.shadowElem.css(ret);
|
182
|
+
ret.width = data.shadowElem.height() * ratio;
|
183
|
+
ret.height = ret.width / ratio;
|
184
|
+
|
185
|
+
}
|
186
|
+
if(!Modernizr.video){
|
187
|
+
ret.width = data.shadowElem.width();
|
188
|
+
ret.height = data.shadowElem.height();
|
189
|
+
}
|
141
190
|
}
|
142
191
|
}
|
143
192
|
return ret;
|
144
193
|
};
|
194
|
+
|
195
|
+
return retFn;
|
145
196
|
})();
|
146
197
|
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
if(data.
|
153
|
-
|
154
|
-
window.ytapi = data._ytAPI
|
155
|
-
}
|
156
|
-
data.elemDimensions = {
|
157
|
-
width: elem.style.width || $.attr(elem, 'width') || $(elem).width(),
|
158
|
-
height: elem.style.height || $.attr(elem, 'height') || $(elem).height()
|
159
|
-
};
|
160
|
-
dims = transformDimension(data);
|
161
|
-
dims.minWidth = elem.style.minWidth;
|
162
|
-
dims.minHeight = elem.style.minHeight;
|
163
|
-
box.css(dims);
|
198
|
+
var setElementDimension = function(data){
|
199
|
+
var dims;
|
200
|
+
var elem = data._elem;
|
201
|
+
var box = data.shadowElem;
|
202
|
+
if(data.isActive == 'third'){
|
203
|
+
if(data && data._ytAPI && data._ytAPI.getPlaybackQuality){
|
204
|
+
window.ytapi = data._ytAPI;
|
164
205
|
}
|
165
|
-
|
206
|
+
|
207
|
+
data._elem.style.display = '';
|
208
|
+
dims = getComputedDimension(data);
|
209
|
+
data._elem.style.display = 'none';
|
210
|
+
box.css(dims);
|
211
|
+
}
|
212
|
+
};
|
166
213
|
|
167
214
|
var getYtDataFromElem = function(elem){
|
168
215
|
try {
|
@@ -174,8 +221,10 @@ var getYtDataFromElem = function(elem){
|
|
174
221
|
return (data && data.isActive == 'third') ? data : null;
|
175
222
|
};
|
176
223
|
|
177
|
-
var
|
224
|
+
var qualReg = /vq\=(small|medium|large|hd720|hd1080|highres)/i;
|
225
|
+
var getYtParams = function(src){
|
178
226
|
var found;
|
227
|
+
var qual = (src.match(qualReg) || ['', ''])[1].toLowerCase();;
|
179
228
|
src = src.split('?');
|
180
229
|
if(src[0].indexOf('youtube.com/watch') != -1 && src[1]){
|
181
230
|
src = src[1].split('&');
|
@@ -201,9 +250,12 @@ var getYtId = function(src){
|
|
201
250
|
});
|
202
251
|
}
|
203
252
|
if(!found){
|
204
|
-
webshims.
|
253
|
+
webshims.error('no youtube id found: '+ src);
|
205
254
|
}
|
206
|
-
return
|
255
|
+
return {
|
256
|
+
videoId: src,
|
257
|
+
suggestedQuality: qual
|
258
|
+
};
|
207
259
|
};
|
208
260
|
|
209
261
|
var startAutoPlay = function(data){
|
@@ -325,10 +377,14 @@ var qualityLevels = {
|
|
325
377
|
hd1080: {
|
326
378
|
height: 1080,
|
327
379
|
width: 1920 // 1440
|
380
|
+
},
|
381
|
+
highres: {
|
382
|
+
height: 1080,
|
383
|
+
width: 1920 // 1440
|
328
384
|
}
|
329
385
|
};
|
330
386
|
|
331
|
-
var addYtAPI = function(mediaElm, elemId, data,
|
387
|
+
var addYtAPI = function(mediaElm, elemId, data, ytParams){
|
332
388
|
ytAPI.done(function(){
|
333
389
|
var handleBuffered = function(){
|
334
390
|
var buffered, bufFac;
|
@@ -391,6 +447,9 @@ var addYtAPI = function(mediaElm, elemId, data, ytID){
|
|
391
447
|
}
|
392
448
|
}, 350);
|
393
449
|
};
|
450
|
+
|
451
|
+
data._metatrys = 0;
|
452
|
+
|
394
453
|
data._ytAPI = new YT.Player(elemId, {
|
395
454
|
height: '100%',
|
396
455
|
width: '100%',
|
@@ -405,7 +464,7 @@ var addYtAPI = function(mediaElm, elemId, data, ytID){
|
|
405
464
|
controls: $.prop(mediaElm, 'controls') ? 1:0
|
406
465
|
},
|
407
466
|
|
408
|
-
videoId:
|
467
|
+
videoId: ytParams.videoId,
|
409
468
|
events: {
|
410
469
|
'onReady': function(e){
|
411
470
|
startAutoPlay(data);
|
@@ -414,11 +473,17 @@ var addYtAPI = function(mediaElm, elemId, data, ytID){
|
|
414
473
|
},
|
415
474
|
|
416
475
|
'onStateChange': function(e){
|
417
|
-
if(!e.target.getDuration){
|
476
|
+
if(!e.target.getDuration){
|
477
|
+
return;
|
478
|
+
}
|
418
479
|
var callMeta;
|
419
480
|
if(!data._metadata){
|
481
|
+
if(ytParams.suggestedQuality){
|
482
|
+
data._ytAPI.setPlaybackQuality(ytParams.suggestedQuality);
|
483
|
+
}
|
420
484
|
var duration = e.target.getDuration();
|
421
485
|
var quality = e.target.getPlaybackQuality();
|
486
|
+
|
422
487
|
if(duration){
|
423
488
|
data._metadata = true;
|
424
489
|
data.duration = duration;
|
@@ -431,14 +496,21 @@ var addYtAPI = function(mediaElm, elemId, data, ytID){
|
|
431
496
|
|
432
497
|
callMeta = true;
|
433
498
|
if(!qualityLevels[quality]){
|
434
|
-
quality = '
|
499
|
+
quality = 'medium';
|
435
500
|
}
|
436
501
|
data.videoHeight = qualityLevels[quality].height;
|
437
502
|
data.videoWidth = qualityLevels[quality].width;
|
438
503
|
}
|
439
|
-
|
504
|
+
if( duration && data._metatrys < 3 && (quality == 'unknown' || (ytParams.suggestedQuality && quality != ytParams.suggestedQuality)) ){
|
505
|
+
data._metatrys++;
|
506
|
+
data._metadata = false;
|
507
|
+
callMeta = false;
|
508
|
+
} else {
|
509
|
+
data._metatrys = 0;
|
510
|
+
}
|
440
511
|
}
|
441
512
|
|
513
|
+
|
442
514
|
if(callMeta){
|
443
515
|
$(mediaElm)
|
444
516
|
.trigger('durationchange')
|
@@ -498,19 +570,26 @@ mediaelement.createSWF = function(mediaElem, src, data){
|
|
498
570
|
data = webshims.data(mediaElem, 'mediaelement');
|
499
571
|
}
|
500
572
|
var elemId = 'yt-'+ webshims.getID(mediaElem);
|
501
|
-
var
|
573
|
+
var ytParams = getYtParams(src.src);
|
502
574
|
var hasControls = $.prop(mediaElem, 'controls');
|
575
|
+
var attrStyle = {};
|
576
|
+
|
577
|
+
if((attrStyle.height = $.attr(mediaElem, 'height') || '') || (attrStyle.width = $.attr(mediaElem, 'width') || '')){
|
578
|
+
$(mediaElem).css(attrStyle);
|
579
|
+
webshims.warn("width or height content attributes used. Webshims prefers the usage of CSS (computed styles or inline styles) to detect size of a video/audio. It's really more powerfull.");
|
580
|
+
}
|
581
|
+
|
503
582
|
if(data){
|
504
583
|
mediaelement.setActive(mediaElem, 'third', data);
|
505
584
|
resetSwfProps(data);
|
506
585
|
data.currentSrc = src.srcProp;
|
507
586
|
if(hasControls != data._hasControls){
|
508
587
|
data.shadowElem.html('<div id="'+ elemId +'">');
|
509
|
-
addYtAPI(mediaElem, elemId, data,
|
588
|
+
addYtAPI(mediaElem, elemId, data, ytParams);
|
510
589
|
} else {
|
511
590
|
ytAPI.done(function(){
|
512
|
-
if(data._ytAPI.
|
513
|
-
data._ytAPI.
|
591
|
+
if(data._ytAPI.cueVideoById){
|
592
|
+
data._ytAPI.cueVideoById(ytParams);
|
514
593
|
}
|
515
594
|
});
|
516
595
|
}
|
@@ -566,17 +645,15 @@ mediaelement.createSWF = function(mediaElem, src, data){
|
|
566
645
|
}));
|
567
646
|
|
568
647
|
|
569
|
-
|
570
|
-
setElementDimension(data);
|
571
|
-
|
572
|
-
|
573
648
|
webshims.addShadowDom(mediaElem, box);
|
574
649
|
mediaelement.setActive(mediaElem, 'third', data);
|
575
650
|
addMediaToStopEvents(mediaElem);
|
576
651
|
|
577
652
|
box.insertBefore(mediaElem);
|
578
653
|
|
579
|
-
|
654
|
+
setElementDimension(data);
|
655
|
+
|
656
|
+
addYtAPI(mediaElem, elemId, data, ytParams);
|
580
657
|
$(mediaElem)
|
581
658
|
.on('updatemediaelementdimensions loadedmetadata emptied', setDimension)
|
582
659
|
.onWSOff('updateshadowdom', setDimension)
|