webshims-rails 1.14.5 → 1.14.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (60) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +2 -0
  3. data/lib/webshims-rails/version.rb +2 -2
  4. data/readme.textile +7 -0
  5. data/vendor/assets/javascripts/webshims/polyfiller.js +38 -6
  6. data/vendor/assets/javascripts/webshims/shims/combos/1.js +26 -20
  7. data/vendor/assets/javascripts/webshims/shims/combos/10.js +54 -19
  8. data/vendor/assets/javascripts/webshims/shims/combos/11.js +32 -15
  9. data/vendor/assets/javascripts/webshims/shims/combos/12.js +45 -21
  10. data/vendor/assets/javascripts/webshims/shims/combos/13.js +45 -21
  11. data/vendor/assets/javascripts/webshims/shims/combos/15.js +22 -4
  12. data/vendor/assets/javascripts/webshims/shims/combos/16.js +48 -24
  13. data/vendor/assets/javascripts/webshims/shims/combos/17.js +32 -15
  14. data/vendor/assets/javascripts/webshims/shims/combos/18.js +18 -81
  15. data/vendor/assets/javascripts/webshims/shims/combos/2.js +48 -24
  16. data/vendor/assets/javascripts/webshims/shims/combos/21.js +286 -179
  17. data/vendor/assets/javascripts/webshims/shims/combos/22.js +19 -1
  18. data/vendor/assets/javascripts/webshims/shims/combos/23.js +26 -20
  19. data/vendor/assets/javascripts/webshims/shims/combos/25.js +311 -199
  20. data/vendor/assets/javascripts/webshims/shims/combos/26.js +22 -17
  21. data/vendor/assets/javascripts/webshims/shims/combos/27.js +22 -17
  22. data/vendor/assets/javascripts/webshims/shims/combos/3.js +22 -4
  23. data/vendor/assets/javascripts/webshims/shims/combos/30.js +22 -4
  24. data/vendor/assets/javascripts/webshims/shims/combos/31.js +22 -4
  25. data/vendor/assets/javascripts/webshims/shims/combos/34.js +41 -5
  26. data/vendor/assets/javascripts/webshims/shims/combos/4.js +22 -4
  27. data/vendor/assets/javascripts/webshims/shims/combos/5.js +32 -15
  28. data/vendor/assets/javascripts/webshims/shims/combos/6.js +32 -15
  29. data/vendor/assets/javascripts/webshims/shims/combos/7.js +48 -24
  30. data/vendor/assets/javascripts/webshims/shims/combos/8.js +48 -24
  31. data/vendor/assets/javascripts/webshims/shims/combos/9.js +54 -19
  32. data/vendor/assets/javascripts/webshims/shims/combos/98.js +24 -7
  33. data/vendor/assets/javascripts/webshims/shims/combos/99.js +24 -7
  34. data/vendor/assets/javascripts/webshims/shims/dom-extend.js +22 -4
  35. data/vendor/assets/javascripts/webshims/shims/es5.js +3 -1
  36. data/vendor/assets/javascripts/webshims/shims/es6.js +1 -5
  37. data/vendor/assets/javascripts/webshims/shims/filereader.js +22 -17
  38. data/vendor/assets/javascripts/webshims/shims/form-number-date-ui.js +32 -15
  39. data/vendor/assets/javascripts/webshims/shims/forms-picker.js +18 -8
  40. data/vendor/assets/javascripts/webshims/shims/i18n/formcfg-fa.js +1 -1
  41. data/vendor/assets/javascripts/webshims/shims/jme/controls.css +11 -0
  42. data/vendor/assets/javascripts/webshims/shims/jme/controls.scss +16 -0
  43. data/vendor/assets/javascripts/webshims/shims/jme/mediacontrols-lazy.js +3 -20
  44. data/vendor/assets/javascripts/webshims/shims/jme/mediacontrols.js +24 -7
  45. data/vendor/assets/javascripts/webshims/shims/mediaelement-core.js +26 -20
  46. data/vendor/assets/javascripts/webshims/shims/mediaelement-debug.js +9 -1
  47. data/vendor/assets/javascripts/webshims/shims/mediaelement-jaris.js +267 -178
  48. data/vendor/assets/javascripts/webshims/shims/picture.js +18 -81
  49. data/vendor/assets/javascripts/webshims/shims/plugins/jquery.ui.position.js +1 -9
  50. data/vendor/assets/javascripts/webshims/shims/sizzle.js +1 -8
  51. data/vendor/assets/javascripts/webshims/shims/styles/forms-ext.css +4 -0
  52. data/vendor/assets/javascripts/webshims/shims/styles/scss/forms-ext.scss +5 -0
  53. data/vendor/assets/javascripts/webshims/shims/styles/shim-ext.css +4 -0
  54. data/vendor/assets/javascripts/webshims/shims/swf/JarisFLVPlayer.swf +0 -0
  55. data/vendor/assets/javascripts/webshims/shims/track.js +19 -1
  56. data/vendor/assets/javascripts/webshims/shims/url.js +316 -0
  57. data/vendor/assets/javascripts/webshims/shims/usermedia-core.js +28 -0
  58. data/vendor/assets/javascripts/webshims/shims/usermedia-shim.js +179 -0
  59. metadata +5 -3
  60. data/vendor/assets/javascripts/webshims/extras/modernizr-custom.js +0 -511
@@ -1869,22 +1869,36 @@ webshims.register('form-native-extend', function($, webshims, window, doc, undef
1869
1869
  }
1870
1870
  return val;
1871
1871
  },
1872
- time: function(val){
1873
- var fVal;
1874
- if(val && curCfg.meridian){
1872
+ time: function(val, o, noCorrect){
1873
+ var fVal, i;
1874
+ if(val){
1875
+
1875
1876
  val = val.split(':');
1876
- fVal = (val[0] * 1);
1877
- if(fVal && fVal >= 12){
1878
- val[0] = addZero(fVal - 12+'');
1879
- fVal = 1;
1880
-
1881
- } else {
1882
- fVal = 0;
1877
+ if(curCfg.meridian){
1878
+ fVal = (val[0] * 1);
1879
+ if(fVal && fVal >= 12){
1880
+ val[0] = addZero(fVal - 12+'');
1881
+ fVal = 1;
1882
+ } else {
1883
+ fVal = 0;
1884
+ }
1885
+ if(val[0] === '00'){
1886
+ val[0] = '12';
1887
+ }
1888
+ }
1889
+ if(!noCorrect){
1890
+ for(i = 0; i < val.length; i++){
1891
+ val[i] = addZero(val[i]);
1892
+ }
1893
+
1894
+ if(!val[1]){
1895
+ val[1] = '00';
1896
+ }
1883
1897
  }
1884
- if(val[0] === '00'){
1885
- val[0] = '12';
1898
+ val = $.trim(val.join(':'));
1899
+ if(fVal != null && curCfg.meridian){
1900
+ val += ' '+curCfg.meridian[fVal];
1886
1901
  }
1887
- val = $.trim(val.join(':')) + ' '+ curCfg.meridian[fVal];
1888
1902
  }
1889
1903
  return val;
1890
1904
  },
@@ -1973,12 +1987,15 @@ webshims.register('form-native-extend', function($, webshims, window, doc, undef
1973
1987
  var fVal;
1974
1988
  if(val && curCfg.meridian){
1975
1989
  val = val.toUpperCase();
1976
- if(val.substr(0,2) === "12"){
1990
+ if(val.substr(0,2) === "12"){
1977
1991
  val = "00" + val.substr(2);
1978
1992
  }
1993
+
1979
1994
  if(val.indexOf(curCfg.meridian[1]) != -1){
1995
+
1980
1996
  val = val.split(':');
1981
- fVal = (val[0] * 1);
1997
+ fVal = (val[0].replace(curCfg.meridian[1], '') * 1);
1998
+
1982
1999
  if(!isNaN(fVal)){
1983
2000
  val[0] = fVal + 12;
1984
2001
  }
@@ -283,7 +283,6 @@ webshims.isReady('swfmini', true);
283
283
  webshims.register('dom-extend', function($, webshims, window, document, undefined){
284
284
  "use strict";
285
285
  var supportHrefNormalized = !('hrefNormalized' in $.support) || $.support.hrefNormalized;
286
- var supportGetSetAttribute = !('getSetAttribute' in $.support) || $.support.getSetAttribute;
287
286
  var has = Object.prototype.hasOwnProperty;
288
287
  webshims.assumeARIA = true;
289
288
 
@@ -314,7 +313,6 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
314
313
  }
315
314
 
316
315
  //shortcus
317
- var modules = webshims.modules;
318
316
  var listReg = /\s*,\s*/;
319
317
 
320
318
  //proxying attribute
@@ -699,8 +697,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
699
697
  (tempCache || $( document.getElementsByTagName(nodeName) )).each(fn);
700
698
  }
701
699
  };
702
-
703
- var elementExtends = {};
700
+
704
701
  return {
705
702
  createTmpCache: function(nodeName){
706
703
  if($.isDOMReady){
@@ -752,6 +749,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
752
749
  };
753
750
 
754
751
  $.extend(webshims, {
752
+ xProps: havePolyfill,
755
753
  getID: (function(){
756
754
  var ID = new Date().getTime();
757
755
  return function(elem){
@@ -765,6 +763,26 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
765
763
  return id;
766
764
  };
767
765
  })(),
766
+ domPrefixes: ["ws", "webkit", "moz", "ms", "o"],
767
+
768
+ prefixed: function (prop, obj){
769
+ var i, testProp;
770
+ var ret = false;
771
+ if(obj[prop]){
772
+ ret = prop;
773
+ }
774
+ if(!ret){
775
+ prop = prop.charAt(0).toUpperCase() + prop.slice(1);
776
+ for(i = 0; i < webshims.domPrefixes.length; i++){
777
+ testProp = webshims.domPrefixes[i]+prop;
778
+ if(testProp in obj){
779
+ ret = testProp;
780
+ break;
781
+ }
782
+ }
783
+ }
784
+ return ret;
785
+ },
768
786
  shadowClass: 'wsshadow-'+(Date.now()),
769
787
  implement: function(elem, type){
770
788
  var data = elementData(elem, 'implemented') || elementData(elem, 'implemented', {});
@@ -2429,7 +2447,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
2429
2447
  }
2430
2448
 
2431
2449
  webshims.register('mediaelement-core', function($, webshims, window, document, undefined, options){
2432
- var hasSwf = swfmini.hasFlashPlayerVersion('10.0.3');
2450
+ var hasSwf = swfmini.hasFlashPlayerVersion('11.3');
2433
2451
  var mediaelement = webshims.mediaelement;
2434
2452
 
2435
2453
  mediaelement.parseRtmp = function(data){
@@ -2539,6 +2557,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
2539
2557
  loadYt();
2540
2558
  }
2541
2559
  };
2560
+
2542
2561
 
2543
2562
  webshims.addPolyfill('mediaelement-yt', {
2544
2563
  test: !hasYt,
@@ -2583,7 +2602,16 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
2583
2602
  if(src.indexOf('youtube.com/watch?') != -1 || src.indexOf('youtube.com/v/') != -1){
2584
2603
  return 'video/youtube';
2585
2604
  }
2586
- if(src.indexOf('rtmp') === 0){
2605
+
2606
+ if(!src.indexOf('mediastream:') || !src.indexOf('blob:http')){
2607
+ return 'usermedia';
2608
+ }
2609
+
2610
+ if(!src.indexOf('webshimstream')){
2611
+ return 'jarisplayer/stream';
2612
+ }
2613
+
2614
+ if(!src.indexOf('rtmp')){
2587
2615
  return nodeName+'/rtmp';
2588
2616
  }
2589
2617
  src = src.split('?')[0].split('#')[0].split('.');
@@ -2600,28 +2628,24 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
2600
2628
  };
2601
2629
 
2602
2630
 
2603
- mediaelement.srces = function(mediaElem, srces){
2631
+ mediaelement.srces = function(mediaElem){
2632
+ var srces = [];
2604
2633
  mediaElem = $(mediaElem);
2605
- if(!srces){
2606
- srces = [];
2607
- var nodeName = mediaElem[0].nodeName.toLowerCase();
2608
- var src = getSrcObj(mediaElem, nodeName);
2609
-
2610
- if(!src.src){
2611
- $('source', mediaElem).each(function(){
2612
- src = getSrcObj(this, nodeName);
2613
- if(src.src){srces.push(src);}
2614
- });
2615
- } else {
2616
- srces.push(src);
2617
- }
2618
- return srces;
2634
+ var nodeName = mediaElem[0].nodeName.toLowerCase();
2635
+ var src = getSrcObj(mediaElem, nodeName);
2636
+
2637
+ if(!src.src){
2638
+ $('source', mediaElem).each(function(){
2639
+ src = getSrcObj(this, nodeName);
2640
+ if(src.src){srces.push(src);}
2641
+ });
2619
2642
  } else {
2620
- webshims.error('setting sources was removed.');
2643
+ srces.push(src);
2621
2644
  }
2645
+ return srces;
2622
2646
  };
2623
2647
 
2624
- 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'];
2648
+ 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', 'jarisplayer/stream', 'video/youtube', 'video/rtmp', 'audio/rtmp'];
2625
2649
 
2626
2650
  mediaelement.canThirdPlaySrces = function(mediaElem, srces){
2627
2651
  var ret = '';
@@ -2651,7 +2675,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
2651
2675
  srces = srces || mediaelement.srces(mediaElem);
2652
2676
 
2653
2677
  $.each(srces, function(i, src){
2654
- if(src.type && nativeCanPlay.call(mediaElem[0], src.type) ){
2678
+ if(src.type == 'usermedia' || (src.type && nativeCanPlay.call(mediaElem[0], src.type)) ){
2655
2679
  ret = src;
2656
2680
  return false;
2657
2681
  }
@@ -283,7 +283,6 @@ webshims.isReady('swfmini', true);
283
283
  webshims.register('dom-extend', function($, webshims, window, document, undefined){
284
284
  "use strict";
285
285
  var supportHrefNormalized = !('hrefNormalized' in $.support) || $.support.hrefNormalized;
286
- var supportGetSetAttribute = !('getSetAttribute' in $.support) || $.support.getSetAttribute;
287
286
  var has = Object.prototype.hasOwnProperty;
288
287
  webshims.assumeARIA = true;
289
288
 
@@ -314,7 +313,6 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
314
313
  }
315
314
 
316
315
  //shortcus
317
- var modules = webshims.modules;
318
316
  var listReg = /\s*,\s*/;
319
317
 
320
318
  //proxying attribute
@@ -699,8 +697,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
699
697
  (tempCache || $( document.getElementsByTagName(nodeName) )).each(fn);
700
698
  }
701
699
  };
702
-
703
- var elementExtends = {};
700
+
704
701
  return {
705
702
  createTmpCache: function(nodeName){
706
703
  if($.isDOMReady){
@@ -752,6 +749,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
752
749
  };
753
750
 
754
751
  $.extend(webshims, {
752
+ xProps: havePolyfill,
755
753
  getID: (function(){
756
754
  var ID = new Date().getTime();
757
755
  return function(elem){
@@ -765,6 +763,26 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
765
763
  return id;
766
764
  };
767
765
  })(),
766
+ domPrefixes: ["ws", "webkit", "moz", "ms", "o"],
767
+
768
+ prefixed: function (prop, obj){
769
+ var i, testProp;
770
+ var ret = false;
771
+ if(obj[prop]){
772
+ ret = prop;
773
+ }
774
+ if(!ret){
775
+ prop = prop.charAt(0).toUpperCase() + prop.slice(1);
776
+ for(i = 0; i < webshims.domPrefixes.length; i++){
777
+ testProp = webshims.domPrefixes[i]+prop;
778
+ if(testProp in obj){
779
+ ret = testProp;
780
+ break;
781
+ }
782
+ }
783
+ }
784
+ return ret;
785
+ },
768
786
  shadowClass: 'wsshadow-'+(Date.now()),
769
787
  implement: function(elem, type){
770
788
  var data = elementData(elem, 'implemented') || elementData(elem, 'implemented', {});
@@ -2132,7 +2150,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
2132
2150
  }
2133
2151
 
2134
2152
  webshims.register('mediaelement-core', function($, webshims, window, document, undefined, options){
2135
- var hasSwf = swfmini.hasFlashPlayerVersion('10.0.3');
2153
+ var hasSwf = swfmini.hasFlashPlayerVersion('11.3');
2136
2154
  var mediaelement = webshims.mediaelement;
2137
2155
 
2138
2156
  mediaelement.parseRtmp = function(data){
@@ -2242,6 +2260,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
2242
2260
  loadYt();
2243
2261
  }
2244
2262
  };
2263
+
2245
2264
 
2246
2265
  webshims.addPolyfill('mediaelement-yt', {
2247
2266
  test: !hasYt,
@@ -2286,7 +2305,16 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
2286
2305
  if(src.indexOf('youtube.com/watch?') != -1 || src.indexOf('youtube.com/v/') != -1){
2287
2306
  return 'video/youtube';
2288
2307
  }
2289
- if(src.indexOf('rtmp') === 0){
2308
+
2309
+ if(!src.indexOf('mediastream:') || !src.indexOf('blob:http')){
2310
+ return 'usermedia';
2311
+ }
2312
+
2313
+ if(!src.indexOf('webshimstream')){
2314
+ return 'jarisplayer/stream';
2315
+ }
2316
+
2317
+ if(!src.indexOf('rtmp')){
2290
2318
  return nodeName+'/rtmp';
2291
2319
  }
2292
2320
  src = src.split('?')[0].split('#')[0].split('.');
@@ -2303,28 +2331,24 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
2303
2331
  };
2304
2332
 
2305
2333
 
2306
- mediaelement.srces = function(mediaElem, srces){
2334
+ mediaelement.srces = function(mediaElem){
2335
+ var srces = [];
2307
2336
  mediaElem = $(mediaElem);
2308
- if(!srces){
2309
- srces = [];
2310
- var nodeName = mediaElem[0].nodeName.toLowerCase();
2311
- var src = getSrcObj(mediaElem, nodeName);
2312
-
2313
- if(!src.src){
2314
- $('source', mediaElem).each(function(){
2315
- src = getSrcObj(this, nodeName);
2316
- if(src.src){srces.push(src);}
2317
- });
2318
- } else {
2319
- srces.push(src);
2320
- }
2321
- return srces;
2337
+ var nodeName = mediaElem[0].nodeName.toLowerCase();
2338
+ var src = getSrcObj(mediaElem, nodeName);
2339
+
2340
+ if(!src.src){
2341
+ $('source', mediaElem).each(function(){
2342
+ src = getSrcObj(this, nodeName);
2343
+ if(src.src){srces.push(src);}
2344
+ });
2322
2345
  } else {
2323
- webshims.error('setting sources was removed.');
2346
+ srces.push(src);
2324
2347
  }
2348
+ return srces;
2325
2349
  };
2326
2350
 
2327
- 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'];
2351
+ 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', 'jarisplayer/stream', 'video/youtube', 'video/rtmp', 'audio/rtmp'];
2328
2352
 
2329
2353
  mediaelement.canThirdPlaySrces = function(mediaElem, srces){
2330
2354
  var ret = '';
@@ -2354,7 +2378,7 @@ webshims.register('mediaelement-core', function($, webshims, window, document, u
2354
2378
  srces = srces || mediaelement.srces(mediaElem);
2355
2379
 
2356
2380
  $.each(srces, function(i, src){
2357
- if(src.type && nativeCanPlay.call(mediaElem[0], src.type) ){
2381
+ if(src.type == 'usermedia' || (src.type && nativeCanPlay.call(mediaElem[0], src.type)) ){
2358
2382
  ret = src;
2359
2383
  return false;
2360
2384
  }
@@ -60,7 +60,6 @@
60
60
  webshims.register('dom-extend', function($, webshims, window, document, undefined){
61
61
  "use strict";
62
62
  var supportHrefNormalized = !('hrefNormalized' in $.support) || $.support.hrefNormalized;
63
- var supportGetSetAttribute = !('getSetAttribute' in $.support) || $.support.getSetAttribute;
64
63
  var has = Object.prototype.hasOwnProperty;
65
64
  webshims.assumeARIA = true;
66
65
 
@@ -91,7 +90,6 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
91
90
  }
92
91
 
93
92
  //shortcus
94
- var modules = webshims.modules;
95
93
  var listReg = /\s*,\s*/;
96
94
 
97
95
  //proxying attribute
@@ -476,8 +474,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
476
474
  (tempCache || $( document.getElementsByTagName(nodeName) )).each(fn);
477
475
  }
478
476
  };
479
-
480
- var elementExtends = {};
477
+
481
478
  return {
482
479
  createTmpCache: function(nodeName){
483
480
  if($.isDOMReady){
@@ -529,6 +526,7 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
529
526
  };
530
527
 
531
528
  $.extend(webshims, {
529
+ xProps: havePolyfill,
532
530
  getID: (function(){
533
531
  var ID = new Date().getTime();
534
532
  return function(elem){
@@ -542,6 +540,26 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
542
540
  return id;
543
541
  };
544
542
  })(),
543
+ domPrefixes: ["ws", "webkit", "moz", "ms", "o"],
544
+
545
+ prefixed: function (prop, obj){
546
+ var i, testProp;
547
+ var ret = false;
548
+ if(obj[prop]){
549
+ ret = prop;
550
+ }
551
+ if(!ret){
552
+ prop = prop.charAt(0).toUpperCase() + prop.slice(1);
553
+ for(i = 0; i < webshims.domPrefixes.length; i++){
554
+ testProp = webshims.domPrefixes[i]+prop;
555
+ if(testProp in obj){
556
+ ret = testProp;
557
+ break;
558
+ }
559
+ }
560
+ }
561
+ return ret;
562
+ },
545
563
  shadowClass: 'wsshadow-'+(Date.now()),
546
564
  implement: function(elem, type){
547
565
  var data = elementData(elem, 'implemented') || elementData(elem, 'implemented', {});
@@ -2255,22 +2273,36 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
2255
2273
  }
2256
2274
  return val;
2257
2275
  },
2258
- time: function(val){
2259
- var fVal;
2260
- if(val && curCfg.meridian){
2276
+ time: function(val, o, noCorrect){
2277
+ var fVal, i;
2278
+ if(val){
2279
+
2261
2280
  val = val.split(':');
2262
- fVal = (val[0] * 1);
2263
- if(fVal && fVal >= 12){
2264
- val[0] = addZero(fVal - 12+'');
2265
- fVal = 1;
2266
-
2267
- } else {
2268
- fVal = 0;
2281
+ if(curCfg.meridian){
2282
+ fVal = (val[0] * 1);
2283
+ if(fVal && fVal >= 12){
2284
+ val[0] = addZero(fVal - 12+'');
2285
+ fVal = 1;
2286
+ } else {
2287
+ fVal = 0;
2288
+ }
2289
+ if(val[0] === '00'){
2290
+ val[0] = '12';
2291
+ }
2292
+ }
2293
+ if(!noCorrect){
2294
+ for(i = 0; i < val.length; i++){
2295
+ val[i] = addZero(val[i]);
2296
+ }
2297
+
2298
+ if(!val[1]){
2299
+ val[1] = '00';
2300
+ }
2269
2301
  }
2270
- if(val[0] === '00'){
2271
- val[0] = '12';
2302
+ val = $.trim(val.join(':'));
2303
+ if(fVal != null && curCfg.meridian){
2304
+ val += ' '+curCfg.meridian[fVal];
2272
2305
  }
2273
- val = $.trim(val.join(':')) + ' '+ curCfg.meridian[fVal];
2274
2306
  }
2275
2307
  return val;
2276
2308
  },
@@ -2359,12 +2391,15 @@ webshims.register('dom-extend', function($, webshims, window, document, undefine
2359
2391
  var fVal;
2360
2392
  if(val && curCfg.meridian){
2361
2393
  val = val.toUpperCase();
2362
- if(val.substr(0,2) === "12"){
2394
+ if(val.substr(0,2) === "12"){
2363
2395
  val = "00" + val.substr(2);
2364
2396
  }
2397
+
2365
2398
  if(val.indexOf(curCfg.meridian[1]) != -1){
2399
+
2366
2400
  val = val.split(':');
2367
- fVal = (val[0] * 1);
2401
+ fVal = (val[0].replace(curCfg.meridian[1], '') * 1);
2402
+
2368
2403
  if(!isNaN(fVal)){
2369
2404
  val[0] = fVal + 12;
2370
2405
  }