Featured Video Plus - Version 1.8

Version Description

= 1.6 = Smoothness

= 1.5 = AJAX!

= 1.4 = WP3.5 Media Manager, time-links...

= 1.3 = Internationalization! More user friendly, more customizations.

= 1.2 = Now featuring your local videos!

= 1.1 = Feature Dailymotion Videos on your posts!

Download this release

Release Info

Developer a.hoereth
Plugin Icon 128x128 Featured Video Plus
Version 1.8
Comparing to
See all releases

Code changes from version 1.7.1 to 1.8

css/font/vjs.eot ADDED
Binary file
css/font/vjs.svg ADDED
@@ -0,0 +1,40 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
3
+ <svg xmlns="http://www.w3.org/2000/svg">
4
+ <metadata>
5
+ This is a custom SVG font generated by IcoMoon.
6
+ <iconset grid="16"></iconset>
7
+ </metadata>
8
+ <defs>
9
+ <font id="VideoJS" horiz-adv-x="512" >
10
+ <font-face units-per-em="512" ascent="480" descent="-32" />
11
+ <missing-glyph horiz-adv-x="512" />
12
+ <glyph unicode="&#xe000;" d="M 512.00,480.00 L 512.00,272.00 L 432.00,352.00 L 336.00,256.00 L 288.00,304.00 L 384.00,400.00 L 304.00,480.00 ZM 224.00,144.00 L 128.00,48.00 L 208.00-32.00 L 0.00-32.00 L 0.00,176.00 L 80.00,96.00 L 176.00,192.00 Z" />
13
+ <glyph unicode="&#xe001;" d="M 96.00,416.00L 416.00,224.00L 96.00,32.00 z" />
14
+ <glyph unicode="&#xe002;" d="M 64.00,416.00L 224.00,416.00L 224.00,32.00L 64.00,32.00zM 288.00,416.00L 448.00,416.00L 448.00,32.00L 288.00,32.00z" />
15
+ <glyph unicode="&#xe003;" d="M 200.666,440.666 C 213.50,453.50 224.00,449.15 224.00,431.00 L 224.00,17.00 C 224.00-1.15 213.50-5.499 200.666,7.335 L 80.00,128.00 L 0.00,128.00 L 0.00,320.00 L 80.00,320.00 L 200.666,440.666 Z" />
16
+ <glyph unicode="&#xe004;" d="M 274.51,109.49c-6.143,0.00-12.284,2.343-16.971,7.029c-9.373,9.373-9.373,24.568,0.00,33.941
17
+ c 40.55,40.55, 40.55,106.529,0.00,147.078c-9.373,9.373-9.373,24.569,0.00,33.941c 9.373,9.372, 24.568,9.372, 33.941,0.00
18
+ c 59.265-59.265, 59.265-155.696,0.00-214.961C 286.794,111.833, 280.652,109.49, 274.51,109.49zM 200.666,440.666 C 213.50,453.50 224.00,449.15 224.00,431.00 L 224.00,17.00 C 224.00-1.15 213.50-5.499 200.666,7.335 L 80.00,128.00 L 0.00,128.00 L 0.00,320.00 L 80.00,320.00 L 200.666,440.666 Z" />
19
+ <glyph unicode="&#xe005;" d="M 359.765,64.235c-6.143,0.00-12.284,2.343-16.971,7.029c-9.372,9.372-9.372,24.568,0.00,33.941
20
+ c 65.503,65.503, 65.503,172.085,0.00,237.588c-9.372,9.373-9.372,24.569,0.00,33.941c 9.372,9.371, 24.569,9.372, 33.941,0.00
21
+ C 417.532,335.938, 440.00,281.696, 440.00,224.00c0.00-57.695-22.468-111.938-63.265-152.735C 372.049,66.578, 365.907,64.235, 359.765,64.235zM 274.51,109.49c-6.143,0.00-12.284,2.343-16.971,7.029c-9.373,9.373-9.373,24.568,0.00,33.941
22
+ c 40.55,40.55, 40.55,106.529,0.00,147.078c-9.373,9.373-9.373,24.569,0.00,33.941c 9.373,9.372, 24.568,9.372, 33.941,0.00
23
+ c 59.265-59.265, 59.265-155.696,0.00-214.961C 286.794,111.833, 280.652,109.49, 274.51,109.49zM 200.666,440.666 C 213.50,453.50 224.00,449.15 224.00,431.00 L 224.00,17.00 C 224.00-1.15 213.50-5.499 200.666,7.335 L 80.00,128.00 L 0.00,128.00 L 0.00,320.00 L 80.00,320.00 L 200.666,440.666 Z" />
24
+ <glyph unicode="&#xe006;" d="M 445.02,18.98c-6.143,0.00-12.284,2.343-16.971,7.029c-9.372,9.373-9.372,24.568,0.00,33.941
25
+ C 471.868,103.771, 496.001,162.03, 496.001,224.00c0.00,61.969-24.133,120.229-67.952,164.049c-9.372,9.373-9.372,24.569,0.00,33.941
26
+ c 9.372,9.372, 24.569,9.372, 33.941,0.00c 52.885-52.886, 82.011-123.20, 82.011-197.99c0.00-74.791-29.126-145.104-82.011-197.99
27
+ C 457.304,21.323, 451.162,18.98, 445.02,18.98zM 359.765,64.235c-6.143,0.00-12.284,2.343-16.971,7.029c-9.372,9.372-9.372,24.568,0.00,33.941
28
+ c 65.503,65.503, 65.503,172.085,0.00,237.588c-9.372,9.373-9.372,24.569,0.00,33.941c 9.372,9.371, 24.569,9.372, 33.941,0.00
29
+ C 417.532,335.938, 440.00,281.696, 440.00,224.00c0.00-57.695-22.468-111.938-63.265-152.735C 372.049,66.578, 365.907,64.235, 359.765,64.235zM 274.51,109.49c-6.143,0.00-12.284,2.343-16.971,7.029c-9.373,9.373-9.373,24.568,0.00,33.941
30
+ c 40.55,40.55, 40.55,106.529,0.00,147.078c-9.373,9.373-9.373,24.569,0.00,33.941c 9.373,9.372, 24.568,9.372, 33.941,0.00
31
+ c 59.265-59.265, 59.265-155.696,0.00-214.961C 286.794,111.833, 280.652,109.49, 274.51,109.49zM 200.666,440.666 C 213.50,453.50 224.00,449.15 224.00,431.00 L 224.00,17.00 C 224.00-1.15 213.50-5.499 200.666,7.335 L 80.00,128.00 L 0.00,128.00 L 0.00,320.00 L 80.00,320.00 L 200.666,440.666 Z" horiz-adv-x="544" />
32
+ <glyph unicode="&#xe007;" d="M 256.00,480.00L 96.00,224.00L 256.00-32.00L 416.00,224.00 z" />
33
+ <glyph unicode="&#xe008;" d="M 0.00,480.00 L 687.158,480.00 L 687.158-35.207 L 0.00-35.207 L 0.00,480.00 z M 622.731,224.638 C 621.878,314.664 618.46,353.922 597.131,381.656 C 593.291,387.629 586.038,391.042 580.065,395.304 C 559.158,410.669 460.593,416.211 346.247,416.211 C 231.896,416.211 128.642,410.669 108.162,395.304 C 101.762,391.042 94.504,387.629 90.242,381.656 C 69.331,353.922 66.349,314.664 65.069,224.638 C 66.349,134.607 69.331,95.353 90.242,67.62 C 94.504,61.22 101.762,58.233 108.162,53.967 C 128.642,38.18 231.896,33.06 346.247,32.207 C 460.593,33.06 559.158,38.18 580.065,53.967 C 586.038,58.233 593.291,61.22 597.131,67.62 C 618.46,95.353 621.878,134.607 622.731,224.638 z M 331.179,247.952 C 325.389,318.401 287.924,359.905 220.901,359.905 C 159.672,359.905 111.54,304.689 111.54,215.965 C 111.54,126.859 155.405,71.267 227.907,71.267 C 285.79,71.267 326.306,113.916 332.701,184.742 L 263.55,184.742 C 260.81,158.468 249.843,138.285 226.69,138.285 C 190.136,138.285 183.435,174.462 183.435,212.92 C 183.435,265.854 198.665,292.886 223.951,292.886 C 246.492,292.886 260.81,276.511 262.939,247.952 L 331.179,247.952 z M 570.013,247.952 C 564.228,318.401 526.758,359.905 459.74,359.905 C 398.507,359.905 350.379,304.689 350.379,215.965 C 350.379,126.859 394.244,71.267 466.746,71.267 C 524.625,71.267 565.14,113.916 571.536,184.742 L 502.384,184.742 C 499.649,158.468 488.682,138.285 465.529,138.285 C 428.971,138.285 422.27,174.462 422.27,212.92 C 422.27,265.854 437.504,292.886 462.785,292.886 C 485.327,292.886 499.649,276.511 501.778,247.952 L 570.013,247.952 z " horiz-adv-x="687.1578947368421" />
34
+ <glyph unicode="&#xe009;" d="M 64.00,416.00L 448.00,416.00L 448.00,32.00L 64.00,32.00z" />
35
+ <glyph unicode="&#xe00a;" d="M 192.00,416.00A64.00,64.00 12780.00 1 1 320.00,416A64.00,64.00 12780.00 1 1 192.00,416zM 327.765,359.765A64.00,64.00 12780.00 1 1 455.765,359.765A64.00,64.00 12780.00 1 1 327.765,359.765zM 416.00,224.00A32.00,32.00 12780.00 1 1 480.00,224A32.00,32.00 12780.00 1 1 416.00,224zM 359.765,88.235A32.00,32.00 12780.00 1 1 423.765,88.23500000000001A32.00,32.00 12780.00 1 1 359.765,88.23500000000001zM 224.001,32.00A32.00,32.00 12780.00 1 1 288.001,32A32.00,32.00 12780.00 1 1 224.001,32zM 88.236,88.235A32.00,32.00 12780.00 1 1 152.236,88.23500000000001A32.00,32.00 12780.00 1 1 88.236,88.23500000000001zM 72.236,359.765A48.00,48.00 12780.00 1 1 168.236,359.765A48.00,48.00 12780.00 1 1 72.236,359.765zM 28.00,224.00A36.00,36.00 12780.00 1 1 100.00,224A36.00,36.00 12780.00 1 1 28.00,224z" />
36
+ <glyph unicode="&#xe00b;" d="M 224.00,192.00 L 224.00-16.00 L 144.00,64.00 L 48.00-32.00 L 0.00,16.00 L 96.00,112.00 L 16.00,192.00 ZM 512.00,432.00 L 416.00,336.00 L 496.00,256.00 L 288.00,256.00 L 288.00,464.00 L 368.00,384.00 L 464.00,480.00 Z" />
37
+ <glyph unicode="&#xe00c;" d="M 256.00,448.00 C 397.385,448.00 512.00,354.875 512.00,240.00 C 512.00,125.124 397.385,32.00 256.00,32.00 C 242.422,32.00 229.095,32.867 216.088,34.522 C 161.099-20.467 95.463-30.328 32.00-31.776 L 32.00-18.318 C 66.268-1.529 96.00,29.052 96.00,64.00 C 96.00,68.877 95.621,73.665 94.918,78.348 C 37.02,116.48 0.00,174.725 0.00,240.00 C 0.00,354.875 114.615,448.00 256.00,448.00 Z" />
38
+ <glyph unicode="&#x20;" horiz-adv-x="256" />
39
+ <glyph class="hidden" unicode="&#xf000;" d="M0,480L 512 -32L0 -32 z" horiz-adv-x="0" />
40
+ </font></defs></svg>
css/font/vjs.ttf ADDED
Binary file
css/font/vjs.woff ADDED
Binary file
css/videojs.min.css CHANGED
@@ -1 +1 @@
1
- .video-js{background-color:#000;position:relative;padding:0;font-size:10px;vertical-align:middle}.video-js .vjs-tech{position:absolute;top:0;left:0;width:100%;height:100%}.video-js:-moz-full-screen{position:absolute}body.vjs-full-window{padding:0;margin:0;height:100%;overflow-y:auto}.video-js.vjs-fullscreen{position:fixed;overflow:hidden;z-index:1000;left:0;top:0;bottom:0;right:0;width:100%!important;height:100%!important;_position:absolute}.video-js:-webkit-full-screen{width:100%!important;height:100%!important}.vjs-poster{margin:0 auto;padding:0;cursor:pointer;position:relative;width:100%;max-height:100%}.video-js .vjs-text-track-display{text-align:center;position:absolute;bottom:4em;left:1em;right:1em;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}.video-js .vjs-text-track{display:none;color:#fff;font-size:1.4em;text-align:center;margin-bottom:.1em;background:#000;background:rgba(0,0,0,0.50)}.video-js .vjs-subtitles{color:#fff}.video-js .vjs-captions{color:#fc6}.vjs-tt-cue{display:block}.vjs-fade-in{visibility:visible!important;opacity:1!important;-webkit-transition:visibility 0s linear 0s,opacity .3s linear;-moz-transition:visibility 0s linear 0s,opacity .3s linear;-ms-transition:visibility 0s linear 0s,opacity .3s linear;-o-transition:visibility 0s linear 0s,opacity .3s linear;transition:visibility 0s linear 0s,opacity .3s linear}.vjs-fade-out{visibility:hidden!important;opacity:0!important;-webkit-transition:visibility 0s linear 1.5s,opacity 1.5s linear;-moz-transition:visibility 0s linear 1.5s,opacity 1.5s linear;-ms-transition:visibility 0s linear 1.5s,opacity 1.5s linear;-o-transition:visibility 0s linear 1.5s,opacity 1.5s linear;transition:visibility 0s linear 1.5s,opacity 1.5s linear}.vjs-default-skin .vjs-controls{position:absolute;bottom:0;left:0;right:0;margin:0;padding:0;height:2.6em;color:#fff;border-top:1px solid #404040;background:#242424;background:-moz-linear-gradient(top,#242424 50%,#1f1f1f 50%,#171717 100%);background:-webkit-gradient(linear,0% 0,0% 100%,color-stop(50%,#242424),color-stop(50%,#1f1f1f),color-stop(100%,#171717));background:-webkit-linear-gradient(top,#242424 50%,#1f1f1f 50%,#171717 100%);background:-o-linear-gradient(top,#242424 50%,#1f1f1f 50%,#171717 100%);background:-ms-linear-gradient(top,#242424 50%,#1f1f1f 50%,#171717 100%);background:linear-gradient(top,#242424 50%,#1f1f1f 50%,#171717 100%);visibility:hidden;opacity:0}.vjs-default-skin .vjs-control{position:relative;float:left;text-align:center;margin:0;padding:0;height:2.6em;width:2.6em}.vjs-default-skin .vjs-control:focus{outline:0}.vjs-default-skin .vjs-control-text{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.vjs-default-skin .vjs-play-control{width:5em;cursor:pointer!important}.vjs-default-skin.vjs-paused .vjs-play-control div{width:15px;height:17px;background:url('video-js.png');margin:.5em auto 0}.vjs-default-skin.vjs-playing .vjs-play-control div{width:15px;height:17px;background:url('video-js.png') -25px 0;margin:.5em auto 0}.vjs-default-skin .vjs-rewind-control{width:5em;cursor:pointer!important}.vjs-default-skin .vjs-rewind-control div{width:19px;height:16px;background:url('video-js.png');margin:.5em auto 0}.vjs-default-skin .vjs-mute-control{width:3.8em;cursor:pointer!important;float:right}.vjs-default-skin .vjs-mute-control div{width:22px;height:16px;background:url('video-js.png') -75px -25px;margin:.5em auto 0}.vjs-default-skin .vjs-mute-control.vjs-vol-0 div{background:url('video-js.png') 0 -25px}.vjs-default-skin .vjs-mute-control.vjs-vol-1 div{background:url('video-js.png') -25px -25px}.vjs-default-skin .vjs-mute-control.vjs-vol-2 div{background:url('video-js.png') -50px -25px}.vjs-default-skin .vjs-volume-control{width:5em;float:right}.vjs-default-skin .vjs-volume-bar{position:relative;width:5em;height:.6em;margin:1em auto 0;cursor:pointer!important;-moz-border-radius:.3em;-webkit-border-radius:.3em;border-radius:.3em;background:#666;background:-moz-linear-gradient(top,#333,#666);background:-webkit-gradient(linear,0% 0,0% 100%,from(#333),to(#666));background:-webkit-linear-gradient(top,#333,#666);background:-o-linear-gradient(top,#333,#666);background:-ms-linear-gradient(top,#333,#666);background:linear-gradient(top,#333,#666)}.vjs-default-skin .vjs-volume-level{position:absolute;top:0;left:0;height:.6em;-moz-border-radius:.3em;-webkit-border-radius:.3em;border-radius:.3em;background:#fff;background:-moz-linear-gradient(top,#fff,#ccc);background:-webkit-gradient(linear,0% 0,0% 100%,from(#fff),to(#ccc));background:-webkit-linear-gradient(top,#fff,#ccc);background:-o-linear-gradient(top,#fff,#ccc);background:-ms-linear-gradient(top,#fff,#ccc);background:linear-gradient(top,#fff,#ccc)}.vjs-default-skin .vjs-volume-handle{position:absolute;top:-0.2em;width:.8em;height:.8em;background:#ccc;left:0;border:1px solid #fff;-moz-border-radius:.6em;-webkit-border-radius:.6em;border-radius:.6em}.vjs-default-skin div.vjs-progress-control{position:absolute;left:4.8em;right:4.8em;height:1.0em;width:auto;top:-1.3em;border-bottom:1px solid #1f1f1f;border-top:1px solid #222;background:#333;background:-moz-linear-gradient(top,#222,#333);background:-webkit-gradient(linear,0% 0,0% 100%,from(#222),to(#333));background:-webkit-linear-gradient(top,#222,#333);background:-o-linear-gradient(top,#333,#222);background:-ms-linear-gradient(top,#333,#222);background:linear-gradient(top,#333,#222)}.vjs-default-skin .vjs-progress-holder{position:relative;cursor:pointer!important;padding:0;margin:0;height:1.0em;-moz-border-radius:.6em;-webkit-border-radius:.6em;border-radius:.6em;background:#111;background:-moz-linear-gradient(top,#111,#262626);background:-webkit-gradient(linear,0% 0,0% 100%,from(#111),to(#262626));background:-webkit-linear-gradient(top,#111,#262626);background:-o-linear-gradient(top,#111,#262626);background:-ms-linear-gradient(top,#111,#262626);background:linear-gradient(top,#111,#262626)}.vjs-default-skin .vjs-progress-holder .vjs-play-progress,.vjs-default-skin .vjs-progress-holder .vjs-load-progress{position:absolute;display:block;height:1.0em;margin:0;padding:0;left:0;top:0;-moz-border-radius:.6em;-webkit-border-radius:.6em;border-radius:.6em}.vjs-default-skin .vjs-play-progress{background:#fff;background:-moz-linear-gradient(top,#fff 0,#d6d6d6 50%,#fff 100%);background:-webkit-gradient(linear,0% 0,0% 100%,color-stop(0%,#fff),color-stop(50%,#d6d6d6),color-stop(100%,#fff));background:-webkit-linear-gradient(top,#fff 0,#d6d6d6 50%,#fff 100%);background:-o-linear-gradient(top,#fff 0,#d6d6d6 50%,#fff 100%);background:-ms-linear-gradient(top,#fff 0,#d6d6d6 50%,#fff 100%);background:linear-gradient(top,#fff 0,#d6d6d6 50%,#fff 100%);background:#efefef;background:-moz-linear-gradient(top,#efefef 0,#f5f5f5 50%,#dbdbdb 50%,#f1f1f1 100%);background:-webkit-gradient(linear,0% 0,0% 100%,color-stop(0%,#efefef),color-stop(50%,#f5f5f5),color-stop(50%,#dbdbdb),color-stop(100%,#f1f1f1));background:-webkit-linear-gradient(top,#efefef 0,#f5f5f5 50%,#dbdbdb 50%,#f1f1f1 100%);background:-o-linear-gradient(top,#efefef 0,#f5f5f5 50%,#dbdbdb 50%,#f1f1f1 100%);background:-ms-linear-gradient(top,#efefef 0,#f5f5f5 50%,#dbdbdb 50%,#f1f1f1 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#efefef',endColorstr='#f1f1f1',GradientType=0);background:linear-gradient(top,#efefef 0,#f5f5f5 50%,#dbdbdb 50%,#f1f1f1 100%)}.vjs-default-skin .vjs-load-progress{opacity:.8;background:#666;background:-moz-linear-gradient(top,#666,#333);background:-webkit-gradient(linear,0% 0,0% 100%,from(#666),to(#333));background:-webkit-linear-gradient(top,#666,#333);background:-o-linear-gradient(top,#666,#333);background:-ms-linear-gradient(top,#666,#333);background:linear-gradient(top,#666,#333)}.vjs-default-skin div.vjs-seek-handle{position:absolute;width:16px;height:16px;margin-top:-0.3em;left:0;top:0;background:url('video-js.png') 0 -50px;-moz-border-radius:.8em;-webkit-border-radius:.8em;border-radius:.8em;-webkit-box-shadow:0 2px 4px 0 #000;-moz-box-shadow:0 2px 4px 0 #000;box-shadow:0 2px 4px 0 #000}.vjs-default-skin .vjs-time-controls{position:absolute;right:0;height:1.0em;width:4.8em;top:-1.3em;border-bottom:1px solid #1f1f1f;border-top:1px solid #222;background-color:#333;font-size:1em;line-height:1.0em;font-weight:normal;font-family:Helvetica,Arial,sans-serif;background:#333;background:-moz-linear-gradient(top,#222,#333);background:-webkit-gradient(linear,0% 0,0% 100%,from(#222),to(#333));background:-webkit-linear-gradient(top,#222,#333);background:-o-linear-gradient(top,#333,#222);background:-ms-linear-gradient(top,#333,#222);background:linear-gradient(top,#333,#222)}.vjs-default-skin .vjs-current-time{left:0}.vjs-default-skin .vjs-duration{right:0;display:none}.vjs-default-skin .vjs-remaining-time{right:0}.vjs-time-divider{display:none}.vjs-default-skin .vjs-time-control{font-size:1em;line-height:1;font-weight:normal;font-family:Helvetica,Arial,sans-serif}.vjs-default-skin .vjs-time-control span{line-height:25px}.vjs-secondary-controls{float:right}.vjs-default-skin .vjs-fullscreen-control{width:3.8em;cursor:pointer!important;float:right}.vjs-default-skin .vjs-fullscreen-control div{width:16px;height:16px;background:url('video-js.png') -50px 0;margin:.5em auto 0}.vjs-default-skin.vjs-fullscreen .vjs-fullscreen-control div{background:url('video-js.png') -75px 0}.vjs-default-skin .vjs-big-play-button{display:block;z-index:2;position:absolute;top:50%;left:50%;width:8.0em;height:8.0em;margin:-42px 0 0 -42px;text-align:center;vertical-align:center;cursor:pointer!important;border:.2em solid #fff;opacity:.95;-webkit-border-radius:25px;-moz-border-radius:25px;border-radius:25px;background:#454545;background:-moz-linear-gradient(top,#454545 0,#232323 50%,#161616 50%,#3f3f3f 100%);background:-webkit-gradient(linear,0% 0,0% 100%,color-stop(0%,#454545),color-stop(50%,#232323),color-stop(50%,#161616),color-stop(100%,#3f3f3f));background:-webkit-linear-gradient(top,#454545 0,#232323 50%,#161616 50%,#3f3f3f 100%);background:-o-linear-gradient(top,#454545 0,#232323 50%,#161616 50%,#3f3f3f 100%);background:-ms-linear-gradient(top,#454545 0,#232323 50%,#161616 50%,#3f3f3f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#454545',endColorstr='#3f3f3f',GradientType=0);background:linear-gradient(top,#454545 0,#232323 50%,#161616 50%,#3f3f3f 100%);-webkit-box-shadow:4px 4px 8px #000;-moz-box-shadow:4px 4px 8px #000;box-shadow:4px 4px 8px #000}.vjs-default-skin div.vjs-big-play-button:hover{-webkit-box-shadow:0 0 80px #fff;-moz-box-shadow:0 0 80px #fff;box-shadow:0 0 80px #fff}.vjs-default-skin div.vjs-big-play-button span{position:absolute;top:50%;left:50%;display:block;width:35px;height:42px;margin:-20px 0 0 -15px;background:url('video-js.png') -100px 0}.vjs-loading-spinner{display:none;position:absolute;top:50%;left:50%;width:55px;height:55px;margin:-28px 0 0 -28px;-webkit-animation-name:rotatethis;-webkit-animation-duration:1s;-webkit-animation-iteration-count:infinite;-webkit-animation-timing-function:linear;-moz-animation-name:rotatethis;-moz-animation-duration:1s;-moz-animation-iteration-count:infinite;-moz-animation-timing-function:linear}@-webkit-keyframes rotatethis{0%{-webkit-transform:scale(0.6) rotate(0deg)}12.5%{-webkit-transform:scale(0.6) rotate(0deg)}12.51%{-webkit-transform:scale(0.6) rotate(45deg)}25%{-webkit-transform:scale(0.6) rotate(45deg)}25.01%{-webkit-transform:scale(0.6) rotate(90deg)}37.5%{-webkit-transform:scale(0.6) rotate(90deg)}37.51%{-webkit-transform:scale(0.6) rotate(135deg)}50%{-webkit-transform:scale(0.6) rotate(135deg)}50.01%{-webkit-transform:scale(0.6) rotate(180deg)}62.5%{-webkit-transform:scale(0.6) rotate(180deg)}62.51%{-webkit-transform:scale(0.6) rotate(225deg)}75%{-webkit-transform:scale(0.6) rotate(225deg)}75.01%{-webkit-transform:scale(0.6) rotate(270deg)}87.5%{-webkit-transform:scale(0.6) rotate(270deg)}87.51%{-webkit-transform:scale(0.6) rotate(315deg)}100%{-webkit-transform:scale(0.6) rotate(315deg)}}@-moz-keyframes rotatethis{0%{-moz-transform:scale(0.6) rotate(0deg)}12.5%{-moz-transform:scale(0.6) rotate(0deg)}12.51%{-moz-transform:scale(0.6) rotate(45deg)}25%{-moz-transform:scale(0.6) rotate(45deg)}25.01%{-moz-transform:scale(0.6) rotate(90deg)}37.5%{-moz-transform:scale(0.6) rotate(90deg)}37.51%{-moz-transform:scale(0.6) rotate(135deg)}50%{-moz-transform:scale(0.6) rotate(135deg)}50.01%{-moz-transform:scale(0.6) rotate(180deg)}62.5%{-moz-transform:scale(0.6) rotate(180deg)}62.51%{-moz-transform:scale(0.6) rotate(225deg)}75%{-moz-transform:scale(0.6) rotate(225deg)}75.01%{-moz-transform:scale(0.6) rotate(270deg)}87.5%{-moz-transform:scale(0.6) rotate(270deg)}87.51%{-moz-transform:scale(0.6) rotate(315deg)}100%{-moz-transform:scale(0.6) rotate(315deg)}}div.vjs-loading-spinner .ball1{opacity:.12;position:absolute;left:20px;top:0;width:13px;height:13px;background:#fff;border-radius:13px;-webkit-border-radius:13px;-moz-border-radius:13px;border:1px solid #ccc}div.vjs-loading-spinner .ball2{opacity:.25;position:absolute;left:34px;top:6px;width:13px;height:13px;background:#fff;border-radius:13px;-webkit-border-radius:13px;-moz-border-radius:13px;border:1px solid #ccc}div.vjs-loading-spinner .ball3{opacity:.37;position:absolute;left:40px;top:20px;width:13px;height:13px;background:#fff;border-radius:13px;-webkit-border-radius:13px;-moz-border-radius:13px;border:1px solid #ccc}div.vjs-loading-spinner .ball4{opacity:.50;position:absolute;left:34px;top:34px;width:13px;height:13px;background:#fff;border-radius:10px;-webkit-border-radius:10px;-moz-border-radius:15px;border:1px solid #ccc}div.vjs-loading-spinner .ball5{opacity:.62;position:absolute;left:20px;top:40px;width:13px;height:13px;background:#fff;border-radius:13px;-webkit-border-radius:13px;-moz-border-radius:13px;border:1px solid #ccc}div.vjs-loading-spinner .ball6{opacity:.75;position:absolute;left:6px;top:34px;width:13px;height:13px;background:#fff;border-radius:13px;-webkit-border-radius:13px;-moz-border-radius:13px;border:1px solid #ccc}div.vjs-loading-spinner .ball7{opacity:.87;position:absolute;left:0;top:20px;width:13px;height:13px;background:#fff;border-radius:13px;-webkit-border-radius:13px;-moz-border-radius:13px;border:1px solid #ccc}div.vjs-loading-spinner .ball8{opacity:1.00;position:absolute;left:6px;top:6px;width:13px;height:13px;background:#fff;border-radius:13px;-webkit-border-radius:13px;-moz-border-radius:13px;border:1px solid #ccc}.vjs-default-skin .vjs-menu-button{float:right;margin:.2em .5em 0 0;padding:0;width:3em;height:2em;cursor:pointer!important;border:1px solid #111;-moz-border-radius:.3em;-webkit-border-radius:.3em;border-radius:.3em;background:#4d4d4d;background:-moz-linear-gradient(top,#4d4d4d 0,#3f3f3f 50%,#333 50%,#252525 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#4d4d4d),color-stop(50%,#3f3f3f),color-stop(50%,#333),color-stop(100%,#252525));background:-webkit-linear-gradient(top,#4d4d4d 0,#3f3f3f 50%,#333 50%,#252525 100%);background:-o-linear-gradient(top,#4d4d4d 0,#3f3f3f 50%,#333 50%,#252525 100%);background:-ms-linear-gradient(top,#4d4d4d 0,#3f3f3f 50%,#333 50%,#252525 100%);background:linear-gradient(top,#4d4d4d 0,#3f3f3f 50%,#333 50%,#252525 100%)}.vjs-default-skin .vjs-menu-button div{background:url('video-js.png') 0 -75px no-repeat;width:16px;height:16px;margin:.2em auto 0;padding:0}.vjs-default-skin .vjs-menu-button ul{display:none;opacity:.8;padding:0;margin:0;position:absolute;width:10em;bottom:2em;max-height:15em;left:-3.5em;background-color:#111;border:2px solid #333;-moz-border-radius:.7em;-webkit-border-radius:1em;border-radius:.5em;-webkit-box-shadow:0 2px 4px 0 #000;-moz-box-shadow:0 2px 4px 0 #000;box-shadow:0 2px 4px 0 #000;overflow:auto}.vjs-default-skin .vjs-menu-button:focus ul,.vjs-default-skin .vjs-menu-button:hover ul{display:block;list-style:none}.vjs-default-skin .vjs-menu-button ul li{list-style:none;margin:0;padding:.3em 0 .3em 20px;line-height:1.4em;font-size:1.2em;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;text-align:left}.vjs-default-skin .vjs-menu-button ul li.vjs-selected{text-decoration:underline;background:url('video-js.png') -125px -50px no-repeat}.vjs-default-skin .vjs-menu-button ul li:focus,.vjs-default-skin .vjs-menu-button ul li:hover,.vjs-default-skin .vjs-menu-button ul li.vjs-selected:focus,.vjs-default-skin .vjs-menu-button ul li.vjs-selected:hover{background-color:#ccc;color:#111;outline:0}.vjs-default-skin .vjs-menu-button ul li.vjs-menu-title{text-align:center;text-transform:uppercase;font-size:1em;line-height:2em;padding:0;margin:0 0 .3em 0;color:#fff;font-weight:bold;cursor:default;background:#4d4d4d;background:-moz-linear-gradient(top,#4d4d4d 0,#3f3f3f 50%,#333 50%,#252525 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0%,#4d4d4d),color-stop(50%,#3f3f3f),color-stop(50%,#333),color-stop(100%,#252525));background:-webkit-linear-gradient(top,#4d4d4d 0,#3f3f3f 50%,#333 50%,#252525 100%);background:-o-linear-gradient(top,#4d4d4d 0,#3f3f3f 50%,#333 50%,#252525 100%);background:-ms-linear-gradient(top,#4d4d4d 0,#3f3f3f 50%,#333 50%,#252525 100%);background:linear-gradient(top,#4d4d4d 0,#3f3f3f 50%,#333 50%,#252525 100%)}.vjs-default-skin .vjs-captions-button div{background-position:-25px -75px}.vjs-default-skin .vjs-chapters-button div{background-position:-100px -75px}.vjs-default-skin .vjs-chapters-button ul{width:20em;left:-8.5em}
1
+ .video-js{background-color:#000;position:relative;padding:0;font-size:10px;vertical-align:middle}.video-js .vjs-tech{position:absolute;top:0;left:0;width:100%;height:100%}.video-js:-moz-full-screen{position:absolute}body.vjs-full-window{padding:0;margin:0;height:100%;overflow-y:auto}.video-js.vjs-fullscreen{position:fixed;overflow:hidden;z-index:1000;left:0;top:0;bottom:0;right:0;width:100%!important;height:100%!important;_position:absolute}.video-js:-webkit-full-screen{width:100%!important;height:100%!important}.vjs-poster{background-repeat:no-repeat;background-position:50% 50%;background-size:contain;cursor:pointer;height:100%;margin:0;padding:0;position:relative;width:100%}.vjs-poster img{display:block;margin:0 auto;max-height:100%;padding:0;width:100%}.video-js .vjs-text-track-display{text-align:center;position:absolute;bottom:4em;left:1em;right:1em;font-family:Arial,sans-serif}.video-js .vjs-text-track{display:none;font-size:1.4em;text-align:center;margin-bottom:.1em;background:#000;background:rgba(0,0,0,0.50)}.video-js .vjs-subtitles{color:#fff}.video-js .vjs-captions{color:#fc6}.vjs-tt-cue{display:block}.vjs-fade-in{display:block!important;visibility:visible;opacity:1;-webkit-transition:visibility .1s,opacity .1s;-moz-transition:visibility .1s,opacity .1s;-ms-transition:visibility .1s,opacity .1s;-o-transition:visibility .1s,opacity .1s;transition:visibility .1s,opacity .1s}.vjs-fade-out{display:block!important;visibility:hidden;opacity:0;-webkit-transition:visibility 1.5s,opacity 1.5s;-moz-transition:visibility 1.5s,opacity 1.5s;-ms-transition:visibility 1.5s,opacity 1.5s;-o-transition:visibility 1.5s,opacity 1.5s;transition:visibility 1.5s,opacity 1.5s;-webkit-transition-delay:2s;-moz-transition-delay:2s;-ms-transition-delay:2s;-o-transition-delay:2s;transition-delay:2s}.vjs-default-skin .vjs-hidden{display:none}.vjs-lock-showing{display:block!important;opacity:1;visibility:visible}@font-face{font-family:'VideoJS';src:url('font/vjs.eot');src:url('font/vjs.eot') format('embedded-opentype'),url('font/vjs.woff') format('woff'),url('font/vjs.ttf') format('truetype');font-weight:normal;font-style:normal}.vjs-default-skin{color:#ccc}.vjs-default-skin .vjs-slider{outline:0;position:relative;cursor:pointer;padding:0;background:#323232;background:rgba(100,100,100,0.5)}.vjs-default-skin .vjs-slider:focus{background:#464646;background:rgba(100,100,100,0.70);-webkit-box-shadow:0 0 2em rgba(255,255,255,1);-moz-box-shadow:0 0 2em rgba(255,255,255,1);box-shadow:0 0 2em rgba(255,255,255,1)}.vjs-default-skin .vjs-slider-handle{position:absolute;left:0;top:0}.vjs-default-skin .vjs-slider-handle:before{content:"\e009";font-family:VideoJS;font-size:1em;line-height:1;text-align:center;text-shadow:0 0 1em #fff;position:absolute;top:0;left:0;-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);-o-transform:rotate(-45deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2)}.vjs-default-skin .vjs-control-bar{display:none;position:absolute;bottom:0;left:0;right:0;padding:0;margin:0;height:3.0em;background-color:#000;background-color:rgba(7,40,50,0.7);font-style:normal;font-weight:normal;font-family:Arial,sans-serif}.vjs-default-skin .vjs-control{outline:0;position:relative;float:left;text-align:center;margin:0;padding:0;height:3.0em;width:4em}.vjs-default-skin .vjs-control:before{font-family:VideoJS;font-size:1.5em;line-height:2;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;text-shadow:1px 1px 1px rgba(0,0,0,0.5)}.vjs-default-skin .vjs-control:focus:before,.vjs-default-skin .vjs-control:hover:before{text-shadow:0 0 1em rgba(255,255,255,1)}.vjs-default-skin .vjs-control-text{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.vjs-default-skin .vjs-play-control{width:5em;cursor:pointer}.vjs-default-skin .vjs-play-control:before{content:"\e001"}.vjs-default-skin.vjs-playing .vjs-play-control:before{content:"\e002"}.vjs-default-skin .vjs-mute-control,.vjs-default-skin .vjs-volume-menu-button{cursor:pointer;float:right}.vjs-default-skin .vjs-mute-control:before,.vjs-default-skin .vjs-volume-menu-button:before{content:"\e006"}.vjs-default-skin .vjs-mute-control.vjs-vol-0:before,.vjs-default-skin .vjs-volume-menu-button.vjs-vol-0:before{content:"\e003"}.vjs-default-skin .vjs-mute-control.vjs-vol-1:before,.vjs-default-skin .vjs-volume-menu-button.vjs-vol-1:before{content:"\e004"}.vjs-default-skin .vjs-mute-control.vjs-vol-2:before,.vjs-default-skin .vjs-volume-menu-button.vjs-vol-2:before{content:"\e005"}.vjs-default-skin .vjs-volume-control{width:5em;float:right}.vjs-default-skin .vjs-volume-bar{width:5em;height:.6em;margin:1.1em auto 0}.vjs-default-skin .vjs-volume-menu-button .vjs-menu-content{height:2.9em}.vjs-default-skin .vjs-volume-level{position:absolute;top:0;left:0;height:.5em;background:#66a8cc url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAGCAYAAADgzO9IAAAAP0lEQVQIHWWMAQoAIAgDR/QJ/Ub//04+w7ZICBwcOg5FZi5iBB82AGzixEglJrd4TVK5XUJpskSTEvpdFzX9AB2pGziSQcvAAAAAAElFTkSuQmCC) -50% 0 repeat}.vjs-default-skin .vjs-volume-bar .vjs-volume-handle{width:.5em;height:.5em}.vjs-default-skin .vjs-volume-handle:before{font-size:.9em;top:-0.2em;left:-0.2em;width:1em;height:1em}.vjs-default-skin .vjs-volume-menu-button .vjs-menu .vjs-menu-content{width:6em;left:-4em}.vjs-default-skin .vjs-progress-control{position:absolute;left:0;right:0;width:auto;font-size:.3em;height:1em;top:-1em;-webkit-transition:top .4s,height .4s,font-size .4s,-webkit-transform .4s;-moz-transition:top .4s,height .4s,font-size .4s,-moz-transform .4s;-o-transition:top .4s,height .4s,font-size .4s,-o-transform .4s;transition:top .4s,height .4s,font-size .4s,transform .4s}.vjs-default-skin:hover .vjs-progress-control{font-size:.9em;-webkit-transition:top .2s,height .2s,font-size .2s,-webkit-transform .2s;-moz-transition:top .2s,height .2s,font-size .2s,-moz-transform .2s;-o-transition:top .2s,height .2s,font-size .2s,-o-transform .2s;transition:top .2s,height .2s,font-size .2s,transform .2s}.vjs-default-skin .vjs-progress-holder{height:100%}.vjs-default-skin .vjs-progress-holder .vjs-play-progress,.vjs-default-skin .vjs-progress-holder .vjs-load-progress{position:absolute;display:block;height:100%;margin:0;padding:0;left:0;top:0}.vjs-default-skin .vjs-play-progress{background:#66a8cc url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAGCAYAAADgzO9IAAAAP0lEQVQIHWWMAQoAIAgDR/QJ/Ub//04+w7ZICBwcOg5FZi5iBB82AGzixEglJrd4TVK5XUJpskSTEvpdFzX9AB2pGziSQcvAAAAAAElFTkSuQmCC) -50% 0 repeat}.vjs-default-skin .vjs-load-progress{background:#646464;background:rgba(255,255,255,0.4)}.vjs-default-skin .vjs-seek-handle{width:1.5em;height:100%}.vjs-default-skin .vjs-seek-handle:before{padding-top:.1em}.vjs-default-skin .vjs-time-controls{font-size:1em;line-height:3em}.vjs-default-skin .vjs-current-time{float:left}.vjs-default-skin .vjs-duration{float:left}.vjs-default-skin .vjs-remaining-time{display:none;float:left}.vjs-time-divider{float:left;line-height:3em}.vjs-default-skin .vjs-fullscreen-control{width:3.8em;cursor:pointer;float:right}.vjs-default-skin .vjs-fullscreen-control:before{content:"\e000"}.vjs-default-skin.vjs-fullscreen .vjs-fullscreen-control:before{content:"\e00b"}.vjs-default-skin .vjs-big-play-button{display:block;z-index:2;position:absolute;top:2em;left:2em;width:12.0em;height:8.0em;margin:0;text-align:center;vertical-align:middle;cursor:pointer;opacity:1;background-color:#282828;background-color:rgba(7,40,50,0.7);border:.3em solid #323232;border-color:rgba(255,255,255,0.25);-webkit-border-radius:25px;-moz-border-radius:25px;border-radius:25px;-webkit-box-shadow:0 0 1em rgba(255,255,255,0.25);-moz-box-shadow:0 0 1em rgba(255,255,255,0.25);box-shadow:0 0 1em rgba(255,255,255,0.25);-webkit-transition:border .4s,-webkit-box-shadow .4s,-webkit-transform .4s;-moz-transition:border .4s,-moz-box-shadow .4s,-moz-transform .4s;-o-transition:border .4s,-o-box-shadow .4s,-o-transform .4s;transition:border .4s,box-shadow .4s,transform .4s}.vjs-default-skin:hover .vjs-big-play-button,.vjs-default-skin .vjs-big-play-button:focus{outline:0;border-color:#fff;border-color:rgba(255,255,255,1);background-color:#505050;background-color:rgba(50,50,50,0.75);-webkit-box-shadow:0 0 3em #fff;-moz-box-shadow:0 0 3em #fff;box-shadow:0 0 3em #fff;-webkit-transition:border 0s,-webkit-box-shadow 0s,-webkit-transform 0s;-moz-transition:border 0s,-moz-box-shadow 0s,-moz-transform 0s;-o-transition:border 0s,-o-box-shadow 0s,-o-transform 0s;transition:border 0s,box-shadow 0s,transform 0s}.vjs-default-skin .vjs-big-play-button:before{content:"\e001";font-family:VideoJS;font-size:3em;line-height:2.66;text-shadow:.05em .05em .1em #000;text-align:center;position:absolute;left:0;width:100%;height:100%}.vjs-loading-spinner{display:none;position:absolute;top:50%;left:50%;font-size:5em;line-height:1;width:1em;height:1em;margin-left:-0.5em;margin-top:-0.5em;opacity:.75;-webkit-animation:spin 1.5s infinite linear;-moz-animation:spin 1.5s infinite linear;-o-animation:spin 1.5s infinite linear;animation:spin 1.5s infinite linear}.vjs-default-skin .vjs-loading-spinner:before{content:"\e00a";font-family:VideoJS;position:absolute;width:1em;height:1em;text-align:center;text-shadow:0 0 .1em #000}.vjs-default-skin .vjs-loading-spinner:after{content:"\e00a";font-family:VideoJS;position:absolute;width:1em;height:1em;text-align:center;-webkit-background-clip:text;-webkit-text-fill-color:transparent}@-moz-keyframes spin{0%{-moz-transform:rotate(0deg)}100%{-moz-transform:rotate(359deg)}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg)}}@-o-keyframes spin{0%{-o-transform:rotate(0deg)}100%{-o-transform:rotate(359deg)}}@-ms-keyframes spin{0%{-ms-transform:rotate(0deg)}100%{-ms-transform:rotate(359deg)}}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(359deg)}}.vjs-default-skin .vjs-menu-button{float:right;cursor:pointer}.vjs-default-skin .vjs-menu{display:none;position:absolute;bottom:0;left:0;width:0;height:0;margin-bottom:3em;border-left:2em solid transparent;border-right:2em solid transparent;border-top:1.55em solid #000;border-top-color:rgba(7,40,50,0.5)}.vjs-default-skin .vjs-menu-button .vjs-menu .vjs-menu-content{display:block;padding:0;margin:0;position:absolute;width:10em;bottom:1.5em;max-height:15em;overflow:auto;left:-5em;background-color:#000;background-color:rgba(7,40,50,0.7);-webkit-box-shadow:-20px -20px 0 rgba(255,255,255,0.5);-moz-box-shadow:0 0 1em rgba(255,255,255,0.5);box-shadow:-0.2em -0.2em .3em rgba(255,255,255,0.2)}.vjs-default-skin .vjs-menu-button:hover .vjs-menu{display:block}.vjs-default-skin .vjs-menu-button ul li{list-style:none;margin:0;padding:.3em 0 .3em 0;line-height:1.4em;font-size:1.2em;font-weight:normal;text-align:center;text-transform:lowercase}.vjs-default-skin .vjs-menu-button ul li.vjs-selected{background-color:#000}.vjs-default-skin .vjs-menu-button ul li:focus,.vjs-default-skin .vjs-menu-button ul li:hover,.vjs-default-skin .vjs-menu-button ul li.vjs-selected:focus,.vjs-default-skin .vjs-menu-button ul li.vjs-selected:hover{background-color:#fff;background-color:rgba(255,255,255,0.75);color:#111;outline:0;-webkit-box-shadow:0 0 1em rgba(255,255,255,1);-moz-box-shadow:0 0 1em rgba(255,255,255,1);box-shadow:0 0 1em rgba(255,255,255,1)}.vjs-default-skin .vjs-menu-button ul li.vjs-menu-title{text-align:center;text-transform:uppercase;font-size:1em;line-height:2em;padding:0;margin:0 0 .3em 0;font-weight:bold;cursor:default}.vjs-default-skin .vjs-subtitles-button:before{content:"\e00c"}.vjs-default-skin .vjs-captions-button{font-size:1em}.vjs-default-skin .vjs-captions-button:before{content:"\e008";font-family:VideoJS;font-size:1.5em;line-height:2;position:absolute;top:0;left:0;width:100%;height:100%;text-align:center;text-shadow:none}.vjs-default-skin .vjs-captions-button:focus .vjs-control-content:before,.vjs-default-skin .vjs-captions-button:hover .vjs-control-content:before{-webkit-box-shadow:0 0 1em rgba(255,255,255,1);-moz-box-shadow:0 0 1em rgba(255,255,255,1);box-shadow:0 0 1em rgba(255,255,255,1)}
featured-video-plus.php CHANGED
@@ -4,7 +4,7 @@ Plugin Name: Featured Video Plus
4
  Plugin URI: http://yrnxt.com/wordpress/featured-video-plus/
5
  Description: Add Featured Videos to your posts and pages.
6
  Author: Alexander Höreth
7
- Version: 1.7.1
8
  Author URI: http://yrnxt.com
9
  License: GPL2
10
 
@@ -27,7 +27,7 @@ License: GPL2
27
  */
28
 
29
  if (!defined('FVP_VERSION'))
30
- define('FVP_VERSION', '1.7.1');
31
 
32
  // symlink proof
33
  $pathinfo = pathinfo(dirname(plugin_basename(__FILE__)));
4
  Plugin URI: http://yrnxt.com/wordpress/featured-video-plus/
5
  Description: Add Featured Videos to your posts and pages.
6
  Author: Alexander Höreth
7
+ Version: 1.8
8
  Author URI: http://yrnxt.com
9
  License: GPL2
10
 
27
  */
28
 
29
  if (!defined('FVP_VERSION'))
30
+ define('FVP_VERSION', '1.8');
31
 
32
  // symlink proof
33
  $pathinfo = pathinfo(dirname(plugin_basename(__FILE__)));
js/backend.js CHANGED
@@ -5,7 +5,7 @@ jQuery(document).ready(function($){
5
  * @since 1.0
6
  */
7
  $('#fvp_video,#fvp_sec').blur(function() {
8
- var t = $(this); // required to make use of it in ajax callback
9
 
10
  t.val( $.trim( t.val()) );
11
 
@@ -24,7 +24,8 @@ jQuery(document).ready(function($){
24
  if( t.val() != t.siblings('.fvp_mirror').val() ) {
25
  bg = t.siblings('.fvp_video_choose').children('.fvp_media_icon').css('backgroundImage');
26
  t.siblings('.fvp_video_choose').children('.fvp_media_icon').css('backgroundImage', "url('"+fvp_backend_data.loading_gif+"')");
27
- $('#fvp_current_video').css({'backgroundImage':"url('"+fvp_backend_data.loading_gif+"')",'width':'256px'}).animate({'height':'144px'});
 
28
  $.post( ajaxurl,
29
  {
30
  'action' : 'fvp_ajax',
@@ -37,21 +38,21 @@ jQuery(document).ready(function($){
37
  t.siblings('.fvp_mirror').val( t.val() );
38
  t.siblings('.fvp_video_choose').children('.fvp_media_icon').css('backgroundImage', bg);
39
  if(data.typ == 'removed'){
40
- $('#fvp_current_video').html('').css({'backgroundImage':''}).animate({'height':'0px'});
41
  if( data.img != '' )
42
  $('#postimagediv .inside').html(data.img);
43
- }else
44
- if(data.valid) {
 
 
45
  $('#postimagediv .inside').html(data.img);
46
  $("#fvp_set_featimg_link, #fvp_featimg_warning").slideUp().addClass("fvp_hidden");
47
- $('#fvp_current_video').html(data.video);
48
  t.css('backgroundColor','#00FF00').animate({'backgroundColor':'white'}, 500, function() { t.css('backgroundColor',''); });
49
- $("#fvp_help_notice").slideUp('fast');
50
- }else{
51
- $('#fvp_current_video').html(data.video);
52
  t.addClass('fvp_invalid');
53
- $("#fvp_help_notice").slideUp('fast');
54
- }
55
  }, "json"
56
  );
57
  }
@@ -117,7 +118,7 @@ jQuery(document).ready(function($){
117
  }
118
 
119
  if ( value.match( fvp_backend_data.wp_upload_dir.replace(/\//g, "\\\/") ) ) {
120
- var file_extension = /^.*\/(.*)\.(.*)$/g;
121
  var match = file_extension.exec(value);
122
  if ( match[2] == 'webm' || match[2] == 'mp4' || match[2] == 'ogg' || match[2] == 'ogv' ) {
123
  $("#fvp_sec_wrapper").slideDown('fast');
@@ -276,6 +277,7 @@ jQuery(document).ready(function($){
276
  returnProperty = 'url';
277
 
278
  $( $control.data('target') ).val( selection.pluck( returnProperty ) ).trigger('autosize').change().removeClass("defaultTextActive");
 
279
  },
280
 
281
  updateFrame: function() {
5
  * @since 1.0
6
  */
7
  $('#fvp_video,#fvp_sec').blur(function() {
8
+ t = $(this); // required to make use of it in ajax callback
9
 
10
  t.val( $.trim( t.val()) );
11
 
24
  if( t.val() != t.siblings('.fvp_mirror').val() ) {
25
  bg = t.siblings('.fvp_video_choose').children('.fvp_media_icon').css('backgroundImage');
26
  t.siblings('.fvp_video_choose').children('.fvp_media_icon').css('backgroundImage', "url('"+fvp_backend_data.loading_gif+"')");
27
+ $('#fvp_current_video').css({'backgroundImage':"url('"+fvp_backend_data.loading_gif+"')",'width':'256px'}).animate({'height':'144px'})
28
+ .children().animate({'opacity':0});
29
  $.post( ajaxurl,
30
  {
31
  'action' : 'fvp_ajax',
38
  t.siblings('.fvp_mirror').val( t.val() );
39
  t.siblings('.fvp_video_choose').children('.fvp_media_icon').css('backgroundImage', bg);
40
  if(data.typ == 'removed'){
41
+ $('#fvp_current_video').css({'backgroundImage':''}).animate({'height':'0px'});
42
  if( data.img != '' )
43
  $('#postimagediv .inside').html(data.img);
44
+ } else {
45
+ $('#fvp_current_video').html(data.video).animate({'height':'144px'});
46
+ $("#fvp_help_notice").slideUp('fast');
47
+ if (data.valid) {
48
  $('#postimagediv .inside').html(data.img);
49
  $("#fvp_set_featimg_link, #fvp_featimg_warning").slideUp().addClass("fvp_hidden");
 
50
  t.css('backgroundColor','#00FF00').animate({'backgroundColor':'white'}, 500, function() { t.css('backgroundColor',''); });
51
+ if (data.prov == 'local' && fvp_backend_data.videojs)
52
+ vjs = videojs('videojs'+data.id,{},function(){});
53
+ } else
54
  t.addClass('fvp_invalid');
55
+ }
 
56
  }, "json"
57
  );
58
  }
118
  }
119
 
120
  if ( value.match( fvp_backend_data.wp_upload_dir.replace(/\//g, "\\\/") ) ) {
121
+ var file_extension = /^.*\/(.*)\.(.*)/g;
122
  var match = file_extension.exec(value);
123
  if ( match[2] == 'webm' || match[2] == 'mp4' || match[2] == 'ogg' || match[2] == 'ogv' ) {
124
  $("#fvp_sec_wrapper").slideDown('fast');
277
  returnProperty = 'url';
278
 
279
  $( $control.data('target') ).val( selection.pluck( returnProperty ) ).trigger('autosize').change().removeClass("defaultTextActive");
280
+ $('#fvp_video').blur();
281
  },
282
 
283
  updateFrame: function() {
js/backend.min.js CHANGED
@@ -1,11 +1,12 @@
1
- jQuery(document).ready(function(a){function g(){a.trim(a("#fvp_video").val())==a.trim(a("#fvp_sec").val())?(a("#fvp_sec").addClass("fvp_invalid"),a("#fvp_localvideo_notdistinct_warning").slideDown("fast")):(a("#fvp_localvideo_notdistinct_warning").slideUp("fast"),a("#fvp_sec").removeClass("fvp_invalid"))}a("#fvp_video,#fvp_sec").blur(function(){var c=a(this);c.val(a.trim(c.val()));d=c.val();if(0===d.length||d==fvp_backend_data.default_value||d==fvp_backend_data.default_value_sec)c.addClass("defaultTextActive"),
2
- c.is("#fvp_video")?c.val(fvp_backend_data.default_value):c.val(fvp_backend_data.default_value_sec);c.trigger("autosize");c.val()!=c.siblings(".fvp_mirror").val()&&(bg=c.siblings(".fvp_video_choose").children(".fvp_media_icon").css("backgroundImage"),c.siblings(".fvp_video_choose").children(".fvp_media_icon").css("backgroundImage","url('"+fvp_backend_data.loading_gif+"')"),a("#fvp_current_video").css({backgroundImage:"url('"+fvp_backend_data.loading_gif+"')",width:"256px"}).animate({height:"144px"}),
3
- a.post(ajaxurl,{action:"fvp_ajax",id:a("#post_ID").val(),fvp_nonce:a("#fvp_nonce").val(),fvp_video:a("#fvp_video").val(),fvp_sec:a("#fvp_sec").val()},function(b){c.siblings(".fvp_mirror").val(c.val());c.siblings(".fvp_video_choose").children(".fvp_media_icon").css("backgroundImage",bg);"removed"==b.typ?(a("#fvp_current_video").html("").css({backgroundImage:""}).animate({height:"0px"}),""!=b.img&&a("#postimagediv .inside").html(b.img)):(b.valid?(a("#postimagediv .inside").html(b.img),a("#fvp_set_featimg_link, #fvp_featimg_warning").slideUp().addClass("fvp_hidden"),
4
- a("#fvp_current_video").html(b.video),c.css("backgroundColor","#00FF00").animate({backgroundColor:"white"},500,function(){c.css("backgroundColor","")})):(a("#fvp_current_video").html(b.video),c.addClass("fvp_invalid")),a("#fvp_help_notice").slideUp("fast"))},"json"))});a(".fvp_input").focus(function(){d=a(this).val();if(d==fvp_backend_data.default_value||d==fvp_backend_data.default_value_sec)a(this).removeClass("defaultTextActive"),a(this).val("")});a(".fvp_input").autosize().trigger("blur").keypress(function(a){13==
5
- a.keyCode&&a.preventDefault()});a(".fvp_input").click(function(){a(this).select()});if(0<a("#fvp_video").length){var d=a("#fvp_video").val();if(0===d.length||d==fvp_backend_data.default_value||!d.match(fvp_backend_data.wp_upload_dir.replace(/\//g,"\\/")))a("#fvp_sec").val(fvp_backend_data.default_value_sec),a("#fvp_sec_wrapper").hide()}a("#fvp_video").bind("change paste keyup",function(){var c=setTimeout,b=a(this),b=a.trim(b.val());a.trim(a("#fvp_sec").val());a("#fvp_help_notice").slideDown("fast");
6
- if(0===b.length||b==fvp_backend_data.default_value)a("#fvp_video").removeClass("fvp_invalid"),a("#fvp_sec").val(fvp_backend_data.default_value_sec).blur(),a("#fvp_sec_wrapper").slideUp("fast"),a("#fvp_localvideo_format_warning").slideUp("fast");b.match(fvp_backend_data.wp_upload_dir.replace(/\//g,"\\/"))?(b=/^.*\/(.*)\.(.*)$/g.exec(b),"webm"==b[2]||"mp4"==b[2]||"ogg"==b[2]||"ogv"==b[2]?(a("#fvp_sec_wrapper").slideDown("fast"),a("#fvp_video").removeClass("fvp_invalid"),a("#fvp_localvideo_format_warning").slideUp("fast")):
7
- (a("#fvp_sec").val(fvp_backend_data.default_value_sec).blur(),a("#fvp_sec_wrapper").slideUp("fast"),a("#fvp_video").addClass("fvp_invalid"),a("#fvp_localvideo_format_warning").slideDown("fast","linear")),g()):(a("#fvp_sec_wrapper").slideUp("fast"),a("#fvp_video").removeClass("fvp_invalid"),a("#fvp_localvideo_format_warning").slideUp("fast"));c(void 0,200)});a("#fvp_sec").bind("change paste keyup",function(){var c=setTimeout,b=a(this),b=a.trim(b.val());a.trim(a("#fvp_video").val());if(0===b.length||
8
- b==fvp_backend_data.default_value)a("#fvp_localvideo_format_warning").slideUp("fast"),a("#fvp_sec").removeClass("fvp_invalid");b.match(fvp_backend_data.wp_upload_dir.replace(/\//g,"\\/"))?(b=/^.*\/(.*)\.(.*)$/g.exec(b),"webm"==b[2]||"mp4"==b[2]||"ogg"==b[2]||"ogv"==b[2]?(a("#fvp_sec").removeClass("fvp_invalid"),a("#fvp_localvideo_format_warning").slideUp("fast"),g()):(a("#fvp_sec").addClass("fvp_invalid"),a("#fvp_localvideo_format_warning").slideDown("fast"))):0!==b.length&&(a("#fvp_sec").addClass("fvp_invalid"),
9
- a("#fvp_localvideo_notdistinct_warning").slideDown("fast"));c(void 0,200)});a("#fvp_set_featimg_link").removeClass("fvp_hidden");a("#fvp_set_featimg_input").addClass("fvp_hidden");a("#fvp_set_featimg_link, #fvp_warning_set_featimg").click(function(){a("#fvp_set_featimg").attr("checked",!0);a.post(ajaxurl,{action:"fvp_ajax",id:a("#post_ID").val(),fvp_nonce:a("#fvp_nonce").val(),fvp_video:a("#fvp_video").val(),fvp_sec:a("#fvp_sec").val()},function(c){a("#postimagediv .inside").html(c.img);a("#fvp_set_featimg_link, #fvp_featimg_warning").slideUp().addClass("fvp_hidden")},
10
- "json");return!1});a("#remove-post-thumbnail").click(function(){a("#fvp_set_featimg_link, #fvp_featimg_warning").slideDown().removeClass("fvp_hidden")});a("#set-post-thumbnail").click(function(){a("#fvp_featimg_box_warning").addClass("fvp_hidden")});a("#fvp_help_toggle").bind("click",function(){a("#contextual-help-link").trigger("click")});var e,f;f={frame:function(){if(this._frame)return this._frame;this._frame=wp.media({title:e.data("title"),library:{type:"video"},button:{text:e.data("button")},
11
- multiple:!1});this._frame.on("open",this.updateFrame).state("library").on("select",this.select);return this._frame},select:function(){var c=this.get("selection");a(e.data("target")).val(c.pluck("url")).trigger("autosize").change().removeClass("defaultTextActive")},updateFrame:function(){},init:function(){a("#wpbody").on("click",".fvp_video_choose",function(c){c.preventDefault();e=a(this).closest(".fvp_input_wrapper");f.frame().open()})}};1==fvp_backend_data.wp_35&&f.init()});
 
1
+ jQuery(document).ready(function(a){function g(){a.trim(a("#fvp_video").val())==a.trim(a("#fvp_sec").val())?(a("#fvp_sec").addClass("fvp_invalid"),a("#fvp_localvideo_notdistinct_warning").slideDown("fast")):(a("#fvp_localvideo_notdistinct_warning").slideUp("fast"),a("#fvp_sec").removeClass("fvp_invalid"))}a("#fvp_video,#fvp_sec").blur(function(){t=a(this);t.val(a.trim(t.val()));d=t.val();if(0===d.length||d==fvp_backend_data.default_value||d==fvp_backend_data.default_value_sec)t.addClass("defaultTextActive"),
2
+ t.is("#fvp_video")?t.val(fvp_backend_data.default_value):t.val(fvp_backend_data.default_value_sec);t.trigger("autosize");t.val()!=t.siblings(".fvp_mirror").val()&&(bg=t.siblings(".fvp_video_choose").children(".fvp_media_icon").css("backgroundImage"),t.siblings(".fvp_video_choose").children(".fvp_media_icon").css("backgroundImage","url('"+fvp_backend_data.loading_gif+"')"),a("#fvp_current_video").css({backgroundImage:"url('"+fvp_backend_data.loading_gif+"')",width:"256px"}).animate({height:"144px"}).children().animate({opacity:0}),
3
+ a.post(ajaxurl,{action:"fvp_ajax",id:a("#post_ID").val(),fvp_nonce:a("#fvp_nonce").val(),fvp_video:a("#fvp_video").val(),fvp_sec:a("#fvp_sec").val()},function(c){t.siblings(".fvp_mirror").val(t.val());t.siblings(".fvp_video_choose").children(".fvp_media_icon").css("backgroundImage",bg);"removed"==c.typ?(a("#fvp_current_video").css({backgroundImage:""}).animate({height:"0px"}),""!=c.img&&a("#postimagediv .inside").html(c.img)):(a("#fvp_current_video").html(c.video).animate({height:"144px"}),a("#fvp_help_notice").slideUp("fast"),
4
+ c.valid?(a("#postimagediv .inside").html(c.img),a("#fvp_set_featimg_link, #fvp_featimg_warning").slideUp().addClass("fvp_hidden"),t.css("backgroundColor","#00FF00").animate({backgroundColor:"white"},500,function(){t.css("backgroundColor","")}),"local"==c.prov&&fvp_backend_data.videojs&&(vjs=videojs("videojs"+c.id,{},function(){}))):t.addClass("fvp_invalid"))},"json"))});a(".fvp_input").focus(function(){d=a(this).val();if(d==fvp_backend_data.default_value||d==fvp_backend_data.default_value_sec)a(this).removeClass("defaultTextActive"),
5
+ a(this).val("")});a(".fvp_input").autosize().trigger("blur").keypress(function(a){13==a.keyCode&&a.preventDefault()});a(".fvp_input").click(function(){a(this).select()});if(0<a("#fvp_video").length){var d=a("#fvp_video").val();if(0===d.length||d==fvp_backend_data.default_value||!d.match(fvp_backend_data.wp_upload_dir.replace(/\//g,"\\/")))a("#fvp_sec").val(fvp_backend_data.default_value_sec),a("#fvp_sec_wrapper").hide()}a("#fvp_video").bind("change paste keyup",function(){var c=setTimeout,b=a(this),
6
+ b=a.trim(b.val());a.trim(a("#fvp_sec").val());a("#fvp_help_notice").slideDown("fast");if(0===b.length||b==fvp_backend_data.default_value)a("#fvp_video").removeClass("fvp_invalid"),a("#fvp_sec").val(fvp_backend_data.default_value_sec).blur(),a("#fvp_sec_wrapper").slideUp("fast"),a("#fvp_localvideo_format_warning").slideUp("fast");b.match(fvp_backend_data.wp_upload_dir.replace(/\//g,"\\/"))?(b=/^.*\/(.*)\.(.*)/g.exec(b),"webm"==b[2]||"mp4"==b[2]||"ogg"==b[2]||"ogv"==b[2]?(a("#fvp_sec_wrapper").slideDown("fast"),
7
+ a("#fvp_video").removeClass("fvp_invalid"),a("#fvp_localvideo_format_warning").slideUp("fast")):(a("#fvp_sec").val(fvp_backend_data.default_value_sec).blur(),a("#fvp_sec_wrapper").slideUp("fast"),a("#fvp_video").addClass("fvp_invalid"),a("#fvp_localvideo_format_warning").slideDown("fast","linear")),g()):(a("#fvp_sec_wrapper").slideUp("fast"),a("#fvp_video").removeClass("fvp_invalid"),a("#fvp_localvideo_format_warning").slideUp("fast"));c(void 0,200)});a("#fvp_sec").bind("change paste keyup",function(){var c=
8
+ setTimeout,b=a(this),b=a.trim(b.val());a.trim(a("#fvp_video").val());if(0===b.length||b==fvp_backend_data.default_value)a("#fvp_localvideo_format_warning").slideUp("fast"),a("#fvp_sec").removeClass("fvp_invalid");b.match(fvp_backend_data.wp_upload_dir.replace(/\//g,"\\/"))?(b=/^.*\/(.*)\.(.*)$/g.exec(b),"webm"==b[2]||"mp4"==b[2]||"ogg"==b[2]||"ogv"==b[2]?(a("#fvp_sec").removeClass("fvp_invalid"),a("#fvp_localvideo_format_warning").slideUp("fast"),g()):(a("#fvp_sec").addClass("fvp_invalid"),a("#fvp_localvideo_format_warning").slideDown("fast"))):
9
+ 0!==b.length&&(a("#fvp_sec").addClass("fvp_invalid"),a("#fvp_localvideo_notdistinct_warning").slideDown("fast"));c(void 0,200)});a("#fvp_set_featimg_link").removeClass("fvp_hidden");a("#fvp_set_featimg_input").addClass("fvp_hidden");a("#fvp_set_featimg_link, #fvp_warning_set_featimg").click(function(){a("#fvp_set_featimg").attr("checked",!0);a.post(ajaxurl,{action:"fvp_ajax",id:a("#post_ID").val(),fvp_nonce:a("#fvp_nonce").val(),fvp_video:a("#fvp_video").val(),fvp_sec:a("#fvp_sec").val()},function(c){a("#postimagediv .inside").html(c.img);
10
+ a("#fvp_set_featimg_link, #fvp_featimg_warning").slideUp().addClass("fvp_hidden")},"json");return!1});a("#remove-post-thumbnail").click(function(){a("#fvp_set_featimg_link, #fvp_featimg_warning").slideDown().removeClass("fvp_hidden")});a("#set-post-thumbnail").click(function(){a("#fvp_featimg_box_warning").addClass("fvp_hidden")});a("#fvp_help_toggle").bind("click",function(){a("#contextual-help-link").trigger("click")});var e,f;f={frame:function(){if(this._frame)return this._frame;this._frame=wp.media({title:e.data("title"),
11
+ library:{type:"video"},button:{text:e.data("button")},multiple:!1});this._frame.on("open",this.updateFrame).state("library").on("select",this.select);return this._frame},select:function(){var c=this.get("selection");a(e.data("target")).val(c.pluck("url")).trigger("autosize").change().removeClass("defaultTextActive");a("#fvp_video").blur()},updateFrame:function(){},init:function(){a("#wpbody").on("click",".fvp_video_choose",function(c){c.preventDefault();e=a(this).closest(".fvp_input_wrapper");f.frame().open()})}};
12
+ 1==fvp_backend_data.wp_35&&f.init()});
js/backend_35.js CHANGED
@@ -23,4 +23,23 @@ jQuery(document).ready(function($){
23
  hide: true,
24
  palettes: new Array('#260F18', '#202226', '#493D27', '#232912', '#052880', '#000000')
25
  });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
26
  });
23
  hide: true,
24
  palettes: new Array('#260F18', '#202226', '#493D27', '#232912', '#052880', '#000000')
25
  });
26
+
27
+
28
+ $('#fvp-settings-local-foreground').wpColorPicker({
29
+ defaultColor: '#cccccc',
30
+ hide: true,
31
+ palettes: new Array('#E02C72', '#92ADE0', '#E8D9AC', '#C2E165', '#FF0099', '#CFCFCF')
32
+ });
33
+
34
+ $('#fvp-settings-local-highlight').wpColorPicker({
35
+ defaultColor: '#66a8cc',
36
+ hide: true,
37
+ palettes: new Array('#BF4B78', '#A2ACBF', '#FFF6D9', '#809443', '#C9A1FF', '#834596')
38
+ });
39
+
40
+ $('#fvp-settings-local-background').wpColorPicker({
41
+ defaultColor: '#000000',
42
+ hide: true,
43
+ palettes: new Array('#260F18', '#202226', '#493D27', '#232912', '#052880', '#000000')
44
+ });
45
  });
js/frontend.js CHANGED
@@ -1,6 +1,22 @@
1
- // dynamic
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
  function fvp_dynamic(id){
3
- var t = jQuery('.fvp_'+id);
4
  t.css({'position':'relative'})
5
  .prepend(jQuery('<div />', {
6
  'class':'fvp_loader',
@@ -17,22 +33,29 @@ function fvp_dynamic(id){
17
  function(data){
18
  if (data.success){
19
  t.replaceWith(data.html);
20
- if (fvpdata.fitvids=="1" && fvpdata.overlay=="0")
 
21
  jQuery(".featured_video_plus").fitVids({customSelector:["iframe", "object", "embed", ".video-js"]});
 
 
 
22
  }
23
  });//.fail(function() { alert("failed here"); });;
24
  }
25
 
26
  jQuery(document).ready(function($){
 
 
27
 
28
- if(fvpdata.overlay||fvpdata.dynamic){
 
29
  $('.fvp_overlay,.fvp_dynamic').hover(
30
  function(){ $(this).children('img').animate({opacity:0.65}); },
31
- function(){ $(this).children('img').animate({opacity:1}); }
32
  );
33
  }
34
 
35
- // overlay
36
  if(fvpdata.overlay){
37
  $('.fvp_overlay').click(function(){
38
  $(this).openDOMWindow({
@@ -53,12 +76,14 @@ jQuery(document).ready(function($){
53
  },
54
  function(data){
55
  if (data.success){
56
- $('#fvp_'+id[1]).html(data.html);
 
 
57
  $('#DOMWindow').html(data.html).css({'width':'auto','height':'auto','margin':'auto auto','overflow':'hidden'});
58
  $(window).trigger('scroll');
59
 
60
- if (fvpdata.fitvids)
61
- $(".featured_video_plus").fitVids({customSelector:["iframe", "object", "embed", ".video-js"]});
62
  }
63
  });//.fail(function() { alert("failed here"); });;
64
  }else{
@@ -69,7 +94,7 @@ jQuery(document).ready(function($){
69
  }
70
 
71
  // fitvids
72
- if (fvpdata.fitvids=="1" && fvpdata.dynamic=="0" && fvpdata.overlay=="0")
73
- $(".featured_video_plus").fitVids({customSelector:["iframe", "object", "embed", ".video-js"]});
74
 
75
  });
1
+ /**
2
+ * Used for removing anchors surrounding featured videos
3
+ *
4
+ * @since 1.8
5
+ */
6
+ function fvp_unwrap() {
7
+ jQuery('.featured_video_plus, a.fvp_overlay, a.fvp_dynamic').each(function() {
8
+ if( jQuery(this).parent().is('a') )
9
+ jQuery(this).unwrap();
10
+ });
11
+ }
12
+
13
+ /**
14
+ * Replace featured image with the featured video on click
15
+ *
16
+ * @since 1.7
17
+ */
18
  function fvp_dynamic(id){
19
+ var t = jQuery('#fvp_'+id);
20
  t.css({'position':'relative'})
21
  .prepend(jQuery('<div />', {
22
  'class':'fvp_loader',
33
  function(data){
34
  if (data.success){
35
  t.replaceWith(data.html);
36
+ fvp_unwrap();
37
+ if ( fvpdata.fitvids && fvpdata.overlay )
38
  jQuery(".featured_video_plus").fitVids({customSelector:["iframe", "object", "embed", ".video-js"]});
39
+
40
+ if ( fvpdata.videojs )
41
+ videojs('videojs'+data.id,{'autoplay':true},function(){});
42
  }
43
  });//.fail(function() { alert("failed here"); });;
44
  }
45
 
46
  jQuery(document).ready(function($){
47
+ // remove wrapping anchors
48
+ fvp_unwrap();
49
 
50
+ // add hover effect
51
+ if( fvpdata.overlay || fvpdata.dynamic ){
52
  $('.fvp_overlay,.fvp_dynamic').hover(
53
  function(){ $(this).children('img').animate({opacity:0.65}); },
54
+ function(){ $(this).children('img').animate({opacity:1 }); }
55
  );
56
  }
57
 
58
+ // overlay click handler
59
  if(fvpdata.overlay){
60
  $('.fvp_overlay').click(function(){
61
  $(this).openDOMWindow({
76
  },
77
  function(data){
78
  if (data.success){
79
+ // save the data to not reload when opened again
80
+ //$('#fvp_'+id[1]).html(data.html); // removed due to bugs with Video.js
81
+
82
  $('#DOMWindow').html(data.html).css({'width':'auto','height':'auto','margin':'auto auto','overflow':'hidden'});
83
  $(window).trigger('scroll');
84
 
85
+ if ( fvpdata.videojs )
86
+ videojs('videojs'+data.id,{'autoplay':true},function(){});
87
  }
88
  });//.fail(function() { alert("failed here"); });;
89
  }else{
94
  }
95
 
96
  // fitvids
97
+ if ( fvpdata.fitvids && ! fvpdata.dynamic && ! fvpdata.overlay )
98
+ $(".featured_video_plus").fitVids( { customSelector: ["iframe", "object", "embed", ".video-js"] } );
99
 
100
  });
js/frontend.min.js CHANGED
@@ -1,5 +1,6 @@
1
- function fvp_dynamic(a){var b=jQuery(".fvp_"+a);b.css({position:"relative"}).prepend(jQuery("<div />",{"class":"fvp_loader",style:"background:transparent url('"+fvpdata.loadingb+"') no-repeat center center;position: absolute; margin: "+b.children("img").css("margin")+";height:"+b.children("img").css("height")+";width:"+b.children("img").css("width")+"; z-index:1000;"}));jQuery.post(fvpdata.ajaxurl,{action:"fvp_get_embed",nonce:fvpdata.nonce,id:a},function(a){a.success&&(b.replaceWith(a.html),"1"==
2
- fvpdata.fitvids&&"0"==fvpdata.overlay&&jQuery(".featured_video_plus").fitVids({customSelector:["iframe","object","embed",".video-js"]}))})}
3
- jQuery(document).ready(function(a){(fvpdata.overlay||fvpdata.dynamic)&&a(".fvp_overlay,.fvp_dynamic").hover(function(){a(this).children("img").animate({opacity:0.65})},function(){a(this).children("img").animate({opacity:1})});fvpdata.overlay&&a(".fvp_overlay").click(function(){a(this).openDOMWindow({eventType:null,windowPadding:0,borderSize:0,windowBGColor:"transparent",overlayOpacity:fvpdata.opacity});a("#DOMWindow").css({background:"transparent url('"+fvpdata.loadingw+"') center center no-repeat"});
4
- var b=/[\?&amp;\#]fvp_([0-9]+)/.exec(a(this).attr("href"));0===a("#fvp_"+b[1]).html().length?jQuery.post(fvpdata.ajaxurl,{action:"fvp_get_embed",nonce:fvpdata.nonce,id:b[1]},function(c){c.success&&(a("#fvp_"+b[1]).html(c.html),a("#DOMWindow").html(c.html).css({width:"auto",height:"auto",margin:"auto auto",overflow:"hidden"}),a(window).trigger("scroll"),fvpdata.fitvids&&a(".featured_video_plus").fitVids({customSelector:["iframe","object","embed",".video-js"]}))}):(a("#DOMWindow").html(a("#fvp_"+b[1]).html()).css({width:"auto",
5
- height:"auto",margin:"auto auto",overflow:"hidden"}),a(window).trigger("scroll"))});"1"==fvpdata.fitvids&&("0"==fvpdata.dynamic&&"0"==fvpdata.overlay)&&a(".featured_video_plus").fitVids({customSelector:["iframe","object","embed",".video-js"]})});
 
1
+ function fvp_unwrap(){jQuery(".featured_video_plus, a.fvp_overlay, a.fvp_dynamic").each(function(){jQuery(this).parent().is("a")&&jQuery(this).unwrap()})}
2
+ function fvp_dynamic(a){var b=jQuery("#fvp_"+a);b.css({position:"relative"}).prepend(jQuery("<div />",{"class":"fvp_loader",style:"background:transparent url('"+fvpdata.loadingb+"') no-repeat center center;position: absolute; margin: "+b.children("img").css("margin")+";height:"+b.children("img").css("height")+";width:"+b.children("img").css("width")+"; z-index:1000;"}));jQuery.post(fvpdata.ajaxurl,{action:"fvp_get_embed",nonce:fvpdata.nonce,id:a},function(a){a.success&&(b.replaceWith(a.html),fvp_unwrap(),
3
+ fvpdata.fitvids&&fvpdata.overlay&&jQuery(".featured_video_plus").fitVids({customSelector:["iframe","object","embed",".video-js"]}),fvpdata.videojs&&videojs("videojs"+a.id,{autoplay:!0},function(){}))})}
4
+ jQuery(document).ready(function(a){fvp_unwrap();(fvpdata.overlay||fvpdata.dynamic)&&a(".fvp_overlay,.fvp_dynamic").hover(function(){a(this).children("img").animate({opacity:0.65})},function(){a(this).children("img").animate({opacity:1})});fvpdata.overlay&&a(".fvp_overlay").click(function(){a(this).openDOMWindow({eventType:null,windowPadding:0,borderSize:0,windowBGColor:"transparent",overlayOpacity:fvpdata.opacity});a("#DOMWindow").css({background:"transparent url('"+fvpdata.loadingw+"') center center no-repeat"});
5
+ var b=/[\?&amp;\#]fvp_([0-9]+)/.exec(a(this).attr("href"));0===a("#fvp_"+b[1]).html().length?jQuery.post(fvpdata.ajaxurl,{action:"fvp_get_embed",nonce:fvpdata.nonce,id:b[1]},function(b){b.success&&(a("#DOMWindow").html(b.html).css({width:"auto",height:"auto",margin:"auto auto",overflow:"hidden"}),a(window).trigger("scroll"),fvpdata.videojs&&videojs("videojs"+b.id,{autoplay:!0},function(){}))}):(a("#DOMWindow").html(a("#fvp_"+b[1]).html()).css({width:"auto",height:"auto",margin:"auto auto",overflow:"hidden"}),
6
+ a(window).trigger("scroll"))});fvpdata.fitvids&&(!fvpdata.dynamic&&!fvpdata.overlay)&&a(".featured_video_plus").fitVids({customSelector:["iframe","object","embed",".video-js"]})});
js/settings.js CHANGED
@@ -7,6 +7,22 @@ jQuery(document).ready(function($){
7
  input.removeAttr('readonly').removeClass('fvp_readonly');
8
  });
9
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10
  $('#fvp-settings-youtube-color').click(function() {
11
  if($('#fvp-settings-youtube-color:checked').length == 1)
12
  $('#youtube_logoinput_wrapper').fadeOut('slow', function() { $(this).addClass( 'fvp_hidden'); } );
7
  input.removeAttr('readonly').removeClass('fvp_readonly');
8
  });
9
 
10
+ $('#fvp-settings-local-enabled').bind('click change', function() {
11
+ var box = $('#fvp-settings-local-box');
12
+ if ($(this).attr('checked'))
13
+ box.slideDown();
14
+ else
15
+ box.slideUp();
16
+ });
17
+
18
+ $('#fvp-settings-local-controls').bind('click change', function() {
19
+ var box = $('#fvp-settings-local-box2');
20
+ if ($(this).attr('checked'))
21
+ box.slideDown();
22
+ else
23
+ box.slideUp();
24
+ });
25
+
26
  $('#fvp-settings-youtube-color').click(function() {
27
  if($('#fvp-settings-youtube-color:checked').length == 1)
28
  $('#youtube_logoinput_wrapper').fadeOut('slow', function() { $(this).addClass( 'fvp_hidden'); } );
js/video-js.swf CHANGED
Binary file
js/videojs.min.js CHANGED
@@ -1,21 +1,124 @@
1
- /*!
2
- Video.js - HTML5 Video Player
3
- Version 3.2.0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4
 
5
- LGPL v3 LICENSE INFO
6
- This file is part of Video.js. Copyright 2011 Zencoder, Inc.
7
 
8
- Video.js is free software: you can redistribute it and/or modify
9
- it under the terms of the GNU Lesser General Public License as published by
10
- the Free Software Foundation, either version 3 of the License, or
11
- (at your option) any later version.
12
-
13
- Video.js is distributed in the hope that it will be useful,
14
- but WITHOUT ANY WARRANTY; without even the implied warranty of
15
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
- GNU Lesser General Public License for more details.
17
-
18
- You should have received a copy of the GNU Lesser General Public License
19
- along with Video.js. If not, see <http://www.gnu.org/licenses/>.
20
- */
21
- (function(window,undefined){var document=window.document;document.createElement("video");document.createElement("audio");var VideoJS=function(id,addOptions,ready){var tag;if(typeof id=="string"){if(id.indexOf("#")===0){id=id.slice(1)}if(_V_.players[id]){return _V_.players[id]}else{tag=_V_.el(id)}}else{tag=id}if(!tag||!tag.nodeName){throw new TypeError("The element or ID supplied is not valid. (VideoJS)")}return tag.player||new _V_.Player(tag,addOptions,ready)},_V_=VideoJS,CDN_VERSION="3.2";VideoJS.players={};VideoJS.options={techOrder:["html5","flash"],html5:{},flash:{swf:"video-js.swf"},width:"auto",height:"auto",defaultVolume:0,components:{posterImage:{},textTrackDisplay:{},loadingSpinner:{},bigPlayButton:{},controlBar:{}}};if(CDN_VERSION!="GENERATED_CDN_VSN"){_V_.options.flash.swf="video-js.swf"}_V_.merge=function(obj1,obj2,safe){if(!obj2){obj2={}}for(var attrname in obj2){if(obj2.hasOwnProperty(attrname)&&(!safe||!obj1.hasOwnProperty(attrname))){obj1[attrname]=obj2[attrname]}}return obj1};_V_.extend=function(obj){this.merge(this,obj,true)};_V_.extend({tech:{},controlSets:{},isIE:function(){return !+"\v1"},isFF:function(){return !!_V_.ua.match("Firefox")},isIPad:function(){return navigator.userAgent.match(/iPad/i)!==null},isIPhone:function(){return navigator.userAgent.match(/iPhone/i)!==null},isIOS:function(){return VideoJS.isIPhone()||VideoJS.isIPad()},iOSVersion:function(){var match=navigator.userAgent.match(/OS (\d+)_/i);if(match&&match[1]){return match[1]}},isAndroid:function(){return navigator.userAgent.match(/Android.*AppleWebKit/i)!==null},androidVersion:function(){var match=navigator.userAgent.match(/Android (\d+)\./i);if(match&&match[1]){return match[1]}},testVid:document.createElement("video"),ua:navigator.userAgent,support:{},each:function(arr,fn){if(!arr||arr.length===0){return}for(var i=0,j=arr.length;i<j;i++){fn.call(this,arr[i],i)}},eachProp:function(obj,fn){if(!obj){return}for(var name in obj){if(obj.hasOwnProperty(name)){fn.call(this,name,obj[name])}}},el:function(id){return document.getElementById(id)},createElement:function(tagName,attributes){var el=document.createElement(tagName),attrname;for(attrname in attributes){if(attributes.hasOwnProperty(attrname)){if(attrname.indexOf("-")!==-1){el.setAttribute(attrname,attributes[attrname])}else{el[attrname]=attributes[attrname]}}}return el},insertFirst:function(node,parent){if(parent.firstChild){parent.insertBefore(node,parent.firstChild)}else{parent.appendChild(node)}},addClass:function(element,classToAdd){if((" "+element.className+" ").indexOf(" "+classToAdd+" ")==-1){element.className=element.className===""?classToAdd:element.className+" "+classToAdd}},removeClass:function(element,classToRemove){if(element.className.indexOf(classToRemove)==-1){return}var classNames=element.className.split(" ");classNames.splice(classNames.indexOf(classToRemove),1);element.className=classNames.join(" ")},remove:function(item,array){if(!array){return}var i=array.indexOf(item);if(i!=-1){return array.splice(i,1)}},blockTextSelection:function(){document.body.focus();document.onselectstart=function(){return false}},unblockTextSelection:function(){document.onselectstart=function(){return true}},formatTime:function(seconds,guide){guide=guide||seconds;var s=Math.floor(seconds%60),m=Math.floor(seconds/60%60),h=Math.floor(seconds/3600),gm=Math.floor(guide/60%60),gh=Math.floor(guide/3600);h=(h>0||gh>0)?h+":":"";m=(((h||gm>=10)&&m<10)?"0"+m:m)+":";s=(s<10)?"0"+s:s;return h+m+s},uc:function(string){return string.charAt(0).toUpperCase()+string.slice(1)},getRelativePosition:function(x,relativeElement){return Math.max(0,Math.min(1,(x-_V_.findPosX(relativeElement))/relativeElement.offsetWidth))},getComputedStyleValue:function(element,style){return window.getComputedStyle(element,null).getPropertyValue(style)},trim:function(string){return string.toString().replace(/^\s+/,"").replace(/\s+$/,"")},round:function(num,dec){if(!dec){dec=0}return Math.round(num*Math.pow(10,dec))/Math.pow(10,dec)},isEmpty:function(object){for(var prop in object){return false}return true},createTimeRange:function(start,end){return{length:1,start:function(){return start},end:function(){return end}}},cache:{},guid:1,expando:"vdata"+(new Date).getTime(),getData:function(elem){var id=elem[_V_.expando];if(!id){id=elem[_V_.expando]=_V_.guid++;_V_.cache[id]={}}return _V_.cache[id]},removeData:function(elem){var id=elem[_V_.expando];if(!id){return}delete _V_.cache[id];try{delete elem[_V_.expando]}catch(e){if(elem.removeAttribute){elem.removeAttribute(_V_.expando)}else{elem[_V_.expando]=null}}},proxy:function(context,fn,uid){if(!fn.guid){fn.guid=_V_.guid++}var ret=function(){return fn.apply(context,arguments)};ret.guid=(uid)?uid+"_"+fn.guid:fn.guid;return ret},get:function(url,onSuccess,onError){var local=(url.indexOf("file:")==0||(window.location.href.indexOf("file:")==0&&url.indexOf("http:")==-1));if(typeof XMLHttpRequest=="undefined"){XMLHttpRequest=function(){try{return new ActiveXObject("Msxml2.XMLHTTP.6.0")}catch(e){}try{return new ActiveXObject("Msxml2.XMLHTTP.3.0")}catch(f){}try{return new ActiveXObject("Msxml2.XMLHTTP")}catch(g){}throw new Error("This browser does not support XMLHttpRequest.")}}var request=new XMLHttpRequest();try{request.open("GET",url)}catch(e){_V_.log("VideoJS XMLHttpRequest (open)",e);return false}request.onreadystatechange=_V_.proxy(this,function(){if(request.readyState==4){if(request.status==200||local&&request.status==0){onSuccess(request.responseText)}else{if(onError){onError()}}}});try{request.send()}catch(e){_V_.log("VideoJS XMLHttpRequest (send)",e);if(onError){onError(e)}}},setLocalStorage:function(key,value){var localStorage=window.localStorage||false;if(!localStorage){return}try{localStorage[key]=value}catch(e){if(e.code==22||e.code==1014){_V_.log("LocalStorage Full (VideoJS)",e)}else{_V_.log("LocalStorage Error (VideoJS)",e)}}},getAbsoluteURL:function(url){if(!url.match(/^https?:\/\//)){url=_V_.createElement("div",{innerHTML:'<a href="'+url+'">x</a>'}).firstChild.href}return url}});_V_.log=function(){_V_.log.history=_V_.log.history||[];_V_.log.history.push(arguments);if(window.console){arguments.callee=arguments.callee.caller;var newarr=[].slice.call(arguments);(typeof console.log==="object"?_V_.log.apply.call(console.log,console,newarr):console.log.apply(console,newarr))}};(function(b){function c(){}for(var d="assert,count,debug,dir,dirxml,error,exception,group,groupCollapsed,groupEnd,info,log,timeStamp,profile,profileEnd,time,timeEnd,trace,warn".split(","),a;a=d.pop();){b[a]=b[a]||c}})((function(){try{console.log();return window.console}catch(err){return window.console={}}})());if("getBoundingClientRect" in document.documentElement){_V_.findPosX=function(el){var box;try{box=el.getBoundingClientRect()}catch(e){}if(!box){return 0}var docEl=document.documentElement,body=document.body,clientLeft=docEl.clientLeft||body.clientLeft||0,scrollLeft=window.pageXOffset||body.scrollLeft,left=box.left+scrollLeft-clientLeft;return left}}else{_V_.findPosX=function(el){var curleft=el.offsetLeft;while(el=obj.offsetParent){if(el.className.indexOf("video-js")==-1){}else{}curleft+=el.offsetLeft}return curleft}}(function(){var initializing=false,fnTest=/xyz/.test(function(){xyz})?/\b_super\b/:/.*/;_V_.Class=function(){};_V_.Class.extend=function(prop){var _super=this.prototype;initializing=true;var prototype=new this();initializing=false;for(var name in prop){prototype[name]=typeof prop[name]=="function"&&typeof _super[name]=="function"&&fnTest.test(prop[name])?(function(name,fn){return function(){var tmp=this._super;this._super=_super[name];var ret=fn.apply(this,arguments);this._super=tmp;return ret}})(name,prop[name]):prop[name]}function Class(){if(!initializing&&this.init){return this.init.apply(this,arguments)}else{if(!initializing){return arguments.callee.prototype.init()}}}Class.prototype=prototype;Class.constructor=Class;Class.extend=arguments.callee;return Class}})();_V_.Component=_V_.Class.extend({init:function(player,options){this.player=player;options=this.options=_V_.merge(this.options||{},options);if(options.el){this.el=options.el}else{this.el=this.createElement()}this.initComponents()},destroy:function(){},createElement:function(type,attrs){return _V_.createElement(type||"div",attrs)},buildCSSClass:function(){return""},initComponents:function(){var options=this.options;if(options&&options.components){this.eachProp(options.components,function(name,opts){var tempAdd=this.proxy(function(){this[name]=this.addComponent(name,opts)});if(opts.loadEvent){this.one(opts.loadEvent,tempAdd)}else{tempAdd()}})}},addComponent:function(name,options){var component,componentClass;if(typeof name=="string"){options=options||{};componentClass=options.componentClass||_V_.uc(name);component=new _V_[componentClass](this.player||this,options)}else{component=name}this.el.appendChild(component.el);return component},removeComponent:function(component){this.el.removeChild(component.el)},show:function(){this.el.style.display="block"},hide:function(){this.el.style.display="none"},fadeIn:function(){this.removeClass("vjs-fade-out");this.addClass("vjs-fade-in")},fadeOut:function(){this.removeClass("vjs-fade-in");this.addClass("vjs-fade-out")},lockShowing:function(){var style=this.el.style;style.display="block";style.opacity=1;style.visiblity="visible"},unlockShowing:function(){var style=this.el.style;style.display="";style.opacity="";style.visiblity=""},addClass:function(classToAdd){_V_.addClass(this.el,classToAdd)},removeClass:function(classToRemove){_V_.removeClass(this.el,classToRemove)},addEvent:function(type,fn,uid){return _V_.addEvent(this.el,type,_V_.proxy(this,fn))},removeEvent:function(type,fn){return _V_.removeEvent(this.el,type,fn)},triggerEvent:function(type,e){return _V_.triggerEvent(this.el,type,e)},one:function(type,fn){_V_.one(this.el,type,_V_.proxy(this,fn))},ready:function(fn){if(!fn){return this}if(this.isReady){fn.call(this)}else{if(this.readyQueue===undefined){this.readyQueue=[]}this.readyQueue.push(fn)}return this},triggerReady:function(){this.isReady=true;if(this.readyQueue&&this.readyQueue.length>0){this.each(this.readyQueue,function(fn){fn.call(this)});this.readyQueue=[];this.triggerEvent("ready")}},each:function(arr,fn){_V_.each.call(this,arr,fn)},eachProp:function(obj,fn){_V_.eachProp.call(this,obj,fn)},extend:function(obj){_V_.merge(this,obj)},proxy:function(fn,uid){return _V_.proxy(this,fn,uid)}});_V_.Control=_V_.Component.extend({buildCSSClass:function(){return"vjs-control "+this._super()}});_V_.ControlBar=_V_.Component.extend({options:{loadEvent:"play",components:{playToggle:{},fullscreenToggle:{},currentTimeDisplay:{},timeDivider:{},durationDisplay:{},remainingTimeDisplay:{},progressControl:{},volumeControl:{},muteToggle:{}}},init:function(player,options){this._super(player,options);player.addEvent("play",this.proxy(function(){this.fadeIn();this.player.addEvent("mouseover",this.proxy(this.fadeIn));this.player.addEvent("mouseout",this.proxy(this.fadeOut))}))},createElement:function(){return _V_.createElement("div",{className:"vjs-controls"})},fadeIn:function(){this._super();this.player.triggerEvent("controlsvisible")},fadeOut:function(){this._super();this.player.triggerEvent("controlshidden")},lockShowing:function(){this.el.style.opacity="1"}});_V_.Button=_V_.Control.extend({init:function(player,options){this._super(player,options);this.addEvent("click",this.onClick);this.addEvent("focus",this.onFocus);this.addEvent("blur",this.onBlur)},createElement:function(type,attrs){attrs=_V_.merge({className:this.buildCSSClass(),innerHTML:'<div><span class="vjs-control-text">'+(this.buttonText||"Need Text")+"</span></div>",role:"button",tabIndex:0},attrs);return this._super(type,attrs)},onClick:function(){},onFocus:function(){_V_.addEvent(document,"keyup",_V_.proxy(this,this.onKeyPress))},onKeyPress:function(event){if(event.which==32||event.which==13){event.preventDefault();this.onClick()}},onBlur:function(){_V_.removeEvent(document,"keyup",_V_.proxy(this,this.onKeyPress))}});_V_.PlayButton=_V_.Button.extend({buttonText:"Play",buildCSSClass:function(){return"vjs-play-button "+this._super()},onClick:function(){this.player.play()}});_V_.PauseButton=_V_.Button.extend({buttonText:"Pause",buildCSSClass:function(){return"vjs-pause-button "+this._super()},onClick:function(){this.player.pause()}});_V_.PlayToggle=_V_.Button.extend({buttonText:"Play",init:function(player,options){this._super(player,options);player.addEvent("play",_V_.proxy(this,this.onPlay));player.addEvent("pause",_V_.proxy(this,this.onPause))},buildCSSClass:function(){return"vjs-play-control "+this._super()},onClick:function(){if(this.player.paused()){this.player.play()}else{this.player.pause()}},onPlay:function(){_V_.removeClass(this.el,"vjs-paused");_V_.addClass(this.el,"vjs-playing")},onPause:function(){_V_.removeClass(this.el,"vjs-playing");_V_.addClass(this.el,"vjs-paused")}});_V_.FullscreenToggle=_V_.Button.extend({buttonText:"Fullscreen",buildCSSClass:function(){return"vjs-fullscreen-control "+this._super()},onClick:function(){if(!this.player.isFullScreen){this.player.requestFullScreen()}else{this.player.cancelFullScreen()}}});_V_.BigPlayButton=_V_.Button.extend({init:function(player,options){this._super(player,options);player.addEvent("play",_V_.proxy(this,this.hide));player.addEvent("ended",_V_.proxy(this,this.show))},createElement:function(){return this._super("div",{className:"vjs-big-play-button",innerHTML:"<span></span>"})},onClick:function(){if(this.player.currentTime()){this.player.currentTime(0)}this.player.play()}});_V_.LoadingSpinner=_V_.Component.extend({init:function(player,options){this._super(player,options);player.addEvent("canplay",_V_.proxy(this,this.hide));player.addEvent("canplaythrough",_V_.proxy(this,this.hide));player.addEvent("playing",_V_.proxy(this,this.hide));player.addEvent("seeking",_V_.proxy(this,this.show));player.addEvent("error",_V_.proxy(this,this.show));player.addEvent("waiting",_V_.proxy(this,this.show))},createElement:function(){var classNameSpinner,innerHtmlSpinner;if(typeof this.player.el.style.WebkitBorderRadius=="string"||typeof this.player.el.style.MozBorderRadius=="string"||typeof this.player.el.style.KhtmlBorderRadius=="string"||typeof this.player.el.style.borderRadius=="string"){classNameSpinner="vjs-loading-spinner";innerHtmlSpinner="<div class='ball1'></div><div class='ball2'></div><div class='ball3'></div><div class='ball4'></div><div class='ball5'></div><div class='ball6'></div><div class='ball7'></div><div class='ball8'></div>"}else{classNameSpinner="vjs-loading-spinner-fallback";innerHtmlSpinner=""}return this._super("div",{className:classNameSpinner,innerHTML:innerHtmlSpinner})}});_V_.CurrentTimeDisplay=_V_.Component.extend({init:function(player,options){this._super(player,options);player.addEvent("timeupdate",_V_.proxy(this,this.updateContent))},createElement:function(){var el=this._super("div",{className:"vjs-current-time vjs-time-controls vjs-control"});this.content=_V_.createElement("div",{className:"vjs-current-time-display",innerHTML:"0:00"});el.appendChild(_V_.createElement("div").appendChild(this.content));return el},updateContent:function(){var time=(this.player.scrubbing)?this.player.values.currentTime:this.player.currentTime();this.content.innerHTML=_V_.formatTime(time,this.player.duration())}});_V_.DurationDisplay=_V_.Component.extend({init:function(player,options){this._super(player,options);player.addEvent("timeupdate",_V_.proxy(this,this.updateContent))},createElement:function(){var el=this._super("div",{className:"vjs-duration vjs-time-controls vjs-control"});this.content=_V_.createElement("div",{className:"vjs-duration-display",innerHTML:"0:00"});el.appendChild(_V_.createElement("div").appendChild(this.content));return el},updateContent:function(){if(this.player.duration()){this.content.innerHTML=_V_.formatTime(this.player.duration())}}});_V_.TimeDivider=_V_.Component.extend({createElement:function(){return this._super("div",{className:"vjs-time-divider",innerHTML:"<div><span>/</span></div>"})}});_V_.RemainingTimeDisplay=_V_.Component.extend({init:function(player,options){this._super(player,options);player.addEvent("timeupdate",_V_.proxy(this,this.updateContent))},createElement:function(){var el=this._super("div",{className:"vjs-remaining-time vjs-time-controls vjs-control"});this.content=_V_.createElement("div",{className:"vjs-remaining-time-display",innerHTML:"-0:00"});el.appendChild(_V_.createElement("div").appendChild(this.content));return el},updateContent:function(){if(this.player.duration()){this.content.innerHTML="-"+_V_.formatTime(this.player.remainingTime())}}});_V_.Slider=_V_.Component.extend({init:function(player,options){this._super(player,options);player.addEvent(this.playerEvent,_V_.proxy(this,this.update));this.addEvent("mousedown",this.onMouseDown);this.addEvent("focus",this.onFocus);this.addEvent("blur",this.onBlur);this.player.addEvent("controlsvisible",this.proxy(this.update));this.update()},createElement:function(type,attrs){attrs=_V_.merge({role:"slider","aria-valuenow":0,"aria-valuemin":0,"aria-valuemax":100,tabIndex:0},attrs);return this._super(type,attrs)},onMouseDown:function(event){event.preventDefault();_V_.blockTextSelection();_V_.addEvent(document,"mousemove",_V_.proxy(this,this.onMouseMove));_V_.addEvent(document,"mouseup",_V_.proxy(this,this.onMouseUp));this.onMouseMove(event)},onMouseUp:function(event){_V_.unblockTextSelection();_V_.removeEvent(document,"mousemove",this.onMouseMove,false);_V_.removeEvent(document,"mouseup",this.onMouseUp,false);this.update()},update:function(){var barProgress,progress=this.getPercent();handle=this.handle,bar=this.bar;if(isNaN(progress)){progress=0}barProgress=progress;if(handle){var box=this.el,boxWidth=box.offsetWidth,handleWidth=handle.el.offsetWidth,handlePercent=(handleWidth)?handleWidth/boxWidth:0,boxAdjustedPercent=1-handlePercent;adjustedProgress=progress*boxAdjustedPercent,barProgress=adjustedProgress+(handlePercent/2);handle.el.style.left=_V_.round(adjustedProgress*100,2)+"%"}bar.el.style.width=_V_.round(barProgress*100,2)+"%"},calculateDistance:function(event){var box=this.el,boxX=_V_.findPosX(box),boxW=box.offsetWidth,handle=this.handle;if(handle){var handleW=handle.el.offsetWidth;boxX=boxX+(handleW/2);boxW=boxW-handleW}return Math.max(0,Math.min(1,(event.pageX-boxX)/boxW))},onFocus:function(event){_V_.addEvent(document,"keyup",_V_.proxy(this,this.onKeyPress))},onKeyPress:function(event){if(event.which==37){event.preventDefault();this.stepBack()}else{if(event.which==39){event.preventDefault();this.stepForward()}}},onBlur:function(event){_V_.removeEvent(document,"keyup",_V_.proxy(this,this.onKeyPress))}});_V_.ProgressControl=_V_.Component.extend({options:{components:{seekBar:{}}},createElement:function(){return this._super("div",{className:"vjs-progress-control vjs-control"})}});_V_.SeekBar=_V_.Slider.extend({options:{components:{loadProgressBar:{},bar:{componentClass:"PlayProgressBar"},handle:{componentClass:"SeekHandle"}}},playerEvent:"timeupdate",init:function(player,options){this._super(player,options)},createElement:function(){return this._super("div",{className:"vjs-progress-holder"})},getPercent:function(){return this.player.currentTime()/this.player.duration()},onMouseDown:function(event){this._super(event);this.player.scrubbing=true;this.videoWasPlaying=!this.player.paused();this.player.pause()},onMouseMove:function(event){var newTime=this.calculateDistance(event)*this.player.duration();if(newTime==this.player.duration()){newTime=newTime-0.1}this.player.currentTime(newTime)},onMouseUp:function(event){this._super(event);this.player.scrubbing=false;if(this.videoWasPlaying){this.player.play()}},stepForward:function(){this.player.currentTime(this.player.currentTime()+1)},stepBack:function(){this.player.currentTime(this.player.currentTime()-1)}});_V_.LoadProgressBar=_V_.Component.extend({init:function(player,options){this._super(player,options);player.addEvent("progress",_V_.proxy(this,this.update))},createElement:function(){return this._super("div",{className:"vjs-load-progress",innerHTML:'<span class="vjs-control-text">Loaded: 0%</span>'})},update:function(){if(this.el.style){this.el.style.width=_V_.round(this.player.bufferedPercent()*100,2)+"%"}}});_V_.PlayProgressBar=_V_.Component.extend({createElement:function(){return this._super("div",{className:"vjs-play-progress",innerHTML:'<span class="vjs-control-text">Progress: 0%</span>'})}});_V_.SeekHandle=_V_.Component.extend({createElement:function(){return this._super("div",{className:"vjs-seek-handle",innerHTML:'<span class="vjs-control-text">00:00</span>'})}});_V_.VolumeControl=_V_.Component.extend({options:{components:{volumeBar:{}}},createElement:function(){return this._super("div",{className:"vjs-volume-control vjs-control"})}});_V_.VolumeBar=_V_.Slider.extend({options:{components:{bar:{componentClass:"VolumeLevel"},handle:{componentClass:"VolumeHandle"}}},playerEvent:"volumechange",createElement:function(){return this._super("div",{className:"vjs-volume-bar"})},onMouseMove:function(event){this.player.volume(this.calculateDistance(event))},getPercent:function(){return this.player.volume()},stepForward:function(){this.player.volume(this.player.volume()+0.1)},stepBack:function(){this.player.volume(this.player.volume()-0.1)}});_V_.VolumeLevel=_V_.Component.extend({createElement:function(){return this._super("div",{className:"vjs-volume-level",innerHTML:'<span class="vjs-control-text"></span>'})}});_V_.VolumeHandle=_V_.Component.extend({createElement:function(){return this._super("div",{className:"vjs-volume-handle",innerHTML:'<span class="vjs-control-text"></span>'})}});_V_.MuteToggle=_V_.Button.extend({init:function(player,options){this._super(player,options);player.addEvent("volumechange",_V_.proxy(this,this.update))},createElement:function(){return this._super("div",{className:"vjs-mute-control vjs-control",innerHTML:'<div><span class="vjs-control-text">Mute</span></div>'})},onClick:function(event){this.player.muted(this.player.muted()?false:true)},update:function(event){var vol=this.player.volume(),level=3;if(vol==0||this.player.muted()){level=0}else{if(vol<0.33){level=1}else{if(vol<0.67){level=2}}}_V_.each.call(this,[0,1,2,3],function(i){_V_.removeClass(this.el,"vjs-vol-"+i)});_V_.addClass(this.el,"vjs-vol-"+level)}});_V_.PosterImage=_V_.Button.extend({init:function(player,options){this._super(player,options);if(!this.player.options.poster){this.hide()}player.addEvent("play",_V_.proxy(this,this.hide))},createElement:function(){return _V_.createElement("img",{className:"vjs-poster",src:this.player.options.poster,tabIndex:-1})},onClick:function(){this.player.play()}});_V_.Menu=_V_.Component.extend({init:function(player,options){this._super(player,options)},addItem:function(component){this.addComponent(component);component.addEvent("click",this.proxy(function(){this.unlockShowing()}))},createElement:function(){return this._super("ul",{className:"vjs-menu"})}});_V_.MenuItem=_V_.Button.extend({init:function(player,options){this._super(player,options);if(options.selected){this.addClass("vjs-selected")}},createElement:function(type,attrs){return this._super("li",_V_.merge({className:"vjs-menu-item",innerHTML:this.options.label},attrs))},onClick:function(){this.selected(true)},selected:function(selected){if(selected){this.addClass("vjs-selected")}else{this.removeClass("vjs-selected")}}});if(!Array.prototype.indexOf){Array.prototype.indexOf=function(searchElement){if(this===void 0||this===null){throw new TypeError()}var t=Object(this);var len=t.length>>>0;if(len===0){return -1}var n=0;if(arguments.length>0){n=Number(arguments[1]);if(n!==n){n=0}else{if(n!==0&&n!==(1/0)&&n!==-(1/0)){n=(n>0||-1)*Math.floor(Math.abs(n))}}}if(n>=len){return -1}var k=n>=0?n:Math.max(len-Math.abs(n),0);for(;k<len;k++){if(k in t&&t[k]===searchElement){return k}}return -1}}_V_.extend({addEvent:function(elem,type,fn){var data=_V_.getData(elem),handlers;if(data&&!data.handler){data.handler=function(event){event=_V_.fixEvent(event);var handlers=_V_.getData(elem).events[event.type];if(handlers){var handlersCopy=[];_V_.each(handlers,function(handler,i){handlersCopy[i]=handler});for(var i=0,l=handlersCopy.length;i<l;i++){handlersCopy[i].call(elem,event)}}}}if(!data.events){data.events={}}handlers=data.events[type];if(!handlers){handlers=data.events[type]=[];if(document.addEventListener){elem.addEventListener(type,data.handler,false)}else{if(document.attachEvent){elem.attachEvent("on"+type,data.handler)}}}if(!fn.guid){fn.guid=_V_.guid++}handlers.push(fn)},removeEvent:function(elem,type,fn){var data=_V_.getData(elem),handlers;if(!data.events){return}if(!type){for(type in data.events){_V_.cleanUpEvents(elem,type)}return}handlers=data.events[type];if(!handlers){return}if(fn&&fn.guid){for(var i=0;i<handlers.length;i++){if(handlers[i].guid===fn.guid){handlers.splice(i--,1)}}}_V_.cleanUpEvents(elem,type)},cleanUpEvents:function(elem,type){var data=_V_.getData(elem);if(data.events[type].length===0){delete data.events[type];if(document.removeEventListener){elem.removeEventListener(type,data.handler,false)}else{if(document.detachEvent){elem.detachEvent("on"+type,data.handler)}}}if(_V_.isEmpty(data.events)){delete data.events;delete data.handler}if(_V_.isEmpty(data)){_V_.removeData(elem)}},fixEvent:function(event){if(event[_V_.expando]){return event}var originalEvent=event;event=new _V_.Event(originalEvent);for(var i=_V_.Event.props.length,prop;i;){prop=_V_.Event.props[--i];event[prop]=originalEvent[prop]}if(!event.target){event.target=event.srcElement||document}if(event.target.nodeType===3){event.target=event.target.parentNode}if(!event.relatedTarget&&event.fromElement){event.relatedTarget=event.fromElement===event.target?event.toElement:event.fromElement}if(event.pageX==null&&event.clientX!=null){var eventDocument=event.target.ownerDocument||document,doc=eventDocument.documentElement,body=eventDocument.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc&&doc.clientLeft||body&&body.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc&&doc.clientTop||body&&body.clientTop||0)}if(event.which==null&&(event.charCode!=null||event.keyCode!=null)){event.which=event.charCode!=null?event.charCode:event.keyCode}if(!event.metaKey&&event.ctrlKey){event.metaKey=event.ctrlKey}if(!event.which&&event.button!==undefined){event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)))}return event},triggerEvent:function(elem,event){var data=_V_.getData(elem),parent=elem.parentNode||elem.ownerDocument,type=event.type||event,handler;if(data){handler=data.handler}event=typeof event==="object"?event[_V_.expando]?event:new _V_.Event(type,event):new _V_.Event(type);event.type=type;if(handler){handler.call(elem,event)}event.result=undefined;event.target=elem},one:function(elem,type,fn){_V_.addEvent(elem,type,function(){_V_.removeEvent(elem,type,arguments.callee);fn.apply(this,arguments)})}});_V_.Event=function(src,props){if(src&&src.type){this.originalEvent=src;this.type=src.type;this.isDefaultPrevented=(src.defaultPrevented||src.returnValue===false||src.getPreventDefault&&src.getPreventDefault())?returnTrue:returnFalse}else{this.type=src}if(props){_V_.merge(this,props)}this.timeStamp=(new Date).getTime();this[_V_.expando]=true};_V_.Event.prototype={preventDefault:function(){this.isDefaultPrevented=returnTrue;var e=this.originalEvent;if(!e){return}if(e.preventDefault){e.preventDefault()}else{e.returnValue=false}},stopPropagation:function(){this.isPropagationStopped=returnTrue;var e=this.originalEvent;if(!e){return}if(e.stopPropagation){e.stopPropagation()}e.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=returnTrue;this.stopPropagation()},isDefaultPrevented:returnFalse,isPropagationStopped:returnFalse,isImmediatePropagationStopped:returnFalse};_V_.Event.props="altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" ");function returnTrue(){return true}function returnFalse(){return false}var JSON;if(!JSON){JSON={}}(function(){var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g;if(typeof JSON.parse!=="function"){JSON.parse=function(text,reviver){var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==="object"){for(k in value){if(Object.prototype.hasOwnProperty.call(value,k)){v=walk(value,k);if(v!==undefined){value[k]=v}else{delete value[k]}}}}return reviver.call(holder,key,value)}text=String(text);cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)})}if(/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,""))){j=eval("("+text+")");return typeof reviver==="function"?walk({"":j},""):j}throw new SyntaxError("JSON.parse")}}}());_V_.Player=_V_.Component.extend({init:function(tag,addOptions,ready){this.tag=tag;var el=this.el=_V_.createElement("div"),options=this.options={},width=options.width=tag.getAttribute("width"),height=options.height=tag.getAttribute("height"),initWidth=width||300,initHeight=height||150;tag.player=el.player=this;this.ready(ready);tag.parentNode.insertBefore(el,tag);el.appendChild(tag);el.id=this.id=tag.id;el.className=tag.className;tag.id+="_html5_api";tag.className="vjs-tech";_V_.players[el.id]=this;el.setAttribute("width",initWidth);el.setAttribute("height",initHeight);el.style.width=initWidth+"px";el.style.height=initHeight+"px";tag.removeAttribute("width");tag.removeAttribute("height");_V_.merge(options,_V_.options);_V_.merge(options,this.getVideoTagSettings());_V_.merge(options,addOptions);tag.removeAttribute("controls");tag.removeAttribute("poster");if(tag.hasChildNodes()){for(var i=0,j=tag.childNodes;i<j.length;i++){if(j[i].nodeName=="SOURCE"||j[i].nodeName=="TRACK"){tag.removeChild(j[i])}}}this.values={};this.addClass("vjs-paused");this.addEvent("ended",this.onEnded);this.addEvent("play",this.onPlay);this.addEvent("pause",this.onPause);this.addEvent("progress",this.onProgress);this.addEvent("error",this.onError);if(options.controls){this.ready(function(){this.initComponents()})}this.textTracks=[];if(options.tracks&&options.tracks.length>0){this.addTextTracks(options.tracks)}if(!options.sources||options.sources.length==0){for(var i=0,j=options.techOrder;i<j.length;i++){var techName=j[i],tech=_V_[techName];if(tech.isSupported()){this.loadTech(techName);break}}}else{this.src(options.sources)}},values:{},destroy:function(){this.stopTrackingProgress();this.stopTrackingCurrentTime();_V_.players[this.id]=null;delete _V_.players[this.id];this.tech.destroy();this.el.parentNode.removeChild(this.el)},createElement:function(type,options){},getVideoTagSettings:function(){var options={sources:[],tracks:[]};options.src=this.tag.getAttribute("src");options.controls=this.tag.getAttribute("controls")!==null;options.poster=this.tag.getAttribute("poster");options.preload=this.tag.getAttribute("preload");options.autoplay=this.tag.getAttribute("autoplay")!==null;options.loop=this.tag.getAttribute("loop")!==null;options.muted=this.tag.getAttribute("muted")!==null;if(this.tag.hasChildNodes()){for(var c,i=0,j=this.tag.childNodes;i<j.length;i++){c=j[i];if(c.nodeName=="SOURCE"){options.sources.push({src:c.getAttribute("src"),type:c.getAttribute("type"),media:c.getAttribute("media"),title:c.getAttribute("title")})}if(c.nodeName=="TRACK"){options.tracks.push({src:c.getAttribute("src"),kind:c.getAttribute("kind"),srclang:c.getAttribute("srclang"),label:c.getAttribute("label"),"default":c.getAttribute("default")!==null,title:c.getAttribute("title")})}}}return options},loadTech:function(techName,source){if(this.tech){this.unloadTech()}else{if(techName!="html5"&&this.tag){this.el.removeChild(this.tag);this.tag=false}}this.techName=techName;this.isReady=false;var techReady=function(){this.player.triggerReady();if(!this.support.progressEvent){this.player.manualProgressOn()}if(!this.support.timeupdateEvent){this.player.manualTimeUpdatesOn()}};var techOptions=_V_.merge({source:source,parentEl:this.el},this.options[techName]);if(source){if(source.src==this.values.src&&this.values.currentTime>0){techOptions.startTime=this.values.currentTime}this.values.src=source.src}this.tech=new _V_[techName](this,techOptions);this.tech.ready(techReady)},unloadTech:function(){this.tech.destroy();if(this.manualProgress){this.manualProgressOff()}if(this.manualTimeUpdates){this.manualTimeUpdatesOff()}this.tech=false},manualProgressOn:function(){this.manualProgress=true;this.trackProgress();this.tech.addEvent("progress",function(){this.removeEvent("progress",arguments.callee);this.support.progressEvent=true;this.player.manualProgressOff()})},manualProgressOff:function(){this.manualProgress=false;this.stopTrackingProgress()},trackProgress:function(){this.progressInterval=setInterval(_V_.proxy(this,function(){if(this.values.bufferEnd<this.buffered().end(0)){this.triggerEvent("progress")}else{if(this.bufferedPercent()==1){this.stopTrackingProgress();this.triggerEvent("progress")}}}),500)},stopTrackingProgress:function(){clearInterval(this.progressInterval)},manualTimeUpdatesOn:function(){this.manualTimeUpdates=true;this.addEvent("play",this.trackCurrentTime);this.addEvent("pause",this.stopTrackingCurrentTime);this.tech.addEvent("timeupdate",function(){this.removeEvent("timeupdate",arguments.callee);this.support.timeupdateEvent=true;this.player.manualTimeUpdatesOff()})},manualTimeUpdatesOff:function(){this.manualTimeUpdates=false;this.stopTrackingCurrentTime();this.removeEvent("play",this.trackCurrentTime);this.removeEvent("pause",this.stopTrackingCurrentTime)},trackCurrentTime:function(){if(this.currentTimeInterval){this.stopTrackingCurrentTime()}this.currentTimeInterval=setInterval(_V_.proxy(this,function(){this.triggerEvent("timeupdate")}),250)},stopTrackingCurrentTime:function(){clearInterval(this.currentTimeInterval)},onEnded:function(){if(this.options.loop){this.currentTime(0);this.play()}else{this.pause();this.currentTime(0);this.pause()}},onPlay:function(){_V_.removeClass(this.el,"vjs-paused");_V_.addClass(this.el,"vjs-playing")},onPause:function(){_V_.removeClass(this.el,"vjs-playing");_V_.addClass(this.el,"vjs-paused")},onProgress:function(){if(this.bufferedPercent()==1){this.triggerEvent("loadedalldata")}},onError:function(e){_V_.log("Video Error",e)},techCall:function(method,arg){if(!this.tech.isReady){this.tech.ready(function(){this[method](arg)})}else{try{this.tech[method](arg)}catch(e){_V_.log(e)}}},techGet:function(method){if(this.tech.isReady){try{return this.tech[method]()}catch(e){if(this.tech[method]===undefined){_V_.log("Video.js: "+method+" method not defined for "+this.techName+" playback technology.",e)}else{if(e.name=="TypeError"){_V_.log("Video.js: "+method+" unavailable on "+this.techName+" playback technology element.",e);this.tech.isReady=false}else{_V_.log(e)}}}}return},play:function(){this.techCall("play");return this},pause:function(){this.techCall("pause");return this},paused:function(){return(this.techGet("paused")===false)?false:true},currentTime:function(seconds){if(seconds!==undefined){this.values.lastSetCurrentTime=seconds;this.techCall("setCurrentTime",seconds);if(this.manualTimeUpdates){this.triggerEvent("timeupdate")}return this}return this.values.currentTime=(this.techGet("currentTime")||0)},duration:function(){return parseFloat(this.techGet("duration"))},remainingTime:function(){return this.duration()-this.currentTime()},buffered:function(){var buffered=this.techGet("buffered"),start=0,end=this.values.bufferEnd=this.values.bufferEnd||0,timeRange;if(buffered&&buffered.length>0&&buffered.end(0)!==end){end=buffered.end(0);this.values.bufferEnd=end}return _V_.createTimeRange(start,end)},bufferedPercent:function(){return(this.duration())?this.buffered().end(0)/this.duration():0},volume:function(percentAsDecimal){var vol;if(percentAsDecimal!==undefined){vol=Math.max(0,Math.min(1,parseFloat(percentAsDecimal)));this.values.volume=vol;this.techCall("setVolume",vol);_V_.setLocalStorage("volume",vol);return this}vol=parseFloat(this.techGet("volume"));return(isNaN(vol))?1:vol},muted:function(muted){if(muted!==undefined){this.techCall("setMuted",muted);return this}return this.techGet("muted")||false},width:function(width,skipListeners){if(width!==undefined){this.el.width=width;this.el.style.width=width+"px";if(!skipListeners){this.triggerEvent("resize")}return this}return parseInt(this.el.getAttribute("width"))},height:function(height){if(height!==undefined){this.el.height=height;this.el.style.height=height+"px";this.triggerEvent("resize");return this}return parseInt(this.el.getAttribute("height"))},size:function(width,height){return this.width(width,true).height(height)},supportsFullScreen:function(){return this.techGet("supportsFullScreen")||false},requestFullScreen:function(){var requestFullScreen=_V_.support.requestFullScreen;this.isFullScreen=true;if(requestFullScreen){_V_.addEvent(document,requestFullScreen.eventName,this.proxy(function(){this.isFullScreen=document[requestFullScreen.isFullScreen];if(this.isFullScreen==false){_V_.removeEvent(document,requestFullScreen.eventName,arguments.callee)}this.triggerEvent("fullscreenchange")}));if(this.tech.support.fullscreenResize===false&&this.options.flash.iFrameMode!=true){this.pause();this.unloadTech();_V_.addEvent(document,requestFullScreen.eventName,this.proxy(function(){_V_.removeEvent(document,requestFullScreen.eventName,arguments.callee);this.loadTech(this.techName,{src:this.values.src})}));this.el[requestFullScreen.requestFn]()}else{this.el[requestFullScreen.requestFn]()}}else{if(this.tech.supportsFullScreen()){this.triggerEvent("fullscreenchange");this.techCall("enterFullScreen")}else{this.triggerEvent("fullscreenchange");this.enterFullWindow()}}return this},cancelFullScreen:function(){var requestFullScreen=_V_.support.requestFullScreen;this.isFullScreen=false;if(requestFullScreen){if(this.tech.support.fullscreenResize===false&&this.options.flash.iFrameMode!=true){this.pause();this.unloadTech();_V_.addEvent(document,requestFullScreen.eventName,this.proxy(function(){_V_.removeEvent(document,requestFullScreen.eventName,arguments.callee);this.loadTech(this.techName,{src:this.values.src})}));document[requestFullScreen.cancelFn]()}else{document[requestFullScreen.cancelFn]()}}else{if(this.tech.supportsFullScreen()){this.techCall("exitFullScreen");this.triggerEvent("fullscreenchange")}else{this.exitFullWindow();this.triggerEvent("fullscreenchange")}}return this},enterFullWindow:function(){this.isFullWindow=true;this.docOrigOverflow=document.documentElement.style.overflow;_V_.addEvent(document,"keydown",_V_.proxy(this,this.fullWindowOnEscKey));document.documentElement.style.overflow="hidden";_V_.addClass(document.body,"vjs-full-window");_V_.addClass(this.el,"vjs-fullscreen");this.triggerEvent("enterFullWindow")},fullWindowOnEscKey:function(event){if(event.keyCode==27){if(this.isFullScreen==true){this.cancelFullScreen()}else{this.exitFullWindow()}}},exitFullWindow:function(){this.isFullWindow=false;_V_.removeEvent(document,"keydown",this.fullWindowOnEscKey);document.documentElement.style.overflow=this.docOrigOverflow;_V_.removeClass(document.body,"vjs-full-window");_V_.removeClass(this.el,"vjs-fullscreen");this.triggerEvent("exitFullWindow")},selectSource:function(sources){for(var i=0,j=this.options.techOrder;i<j.length;i++){var techName=j[i],tech=_V_[techName];if(tech.isSupported()){for(var a=0,b=sources;a<b.length;a++){var source=b[a];if(tech.canPlaySource.call(this,source)){return{source:source,tech:techName}}}}}return false},src:function(source){if(source instanceof Array){var sourceTech=this.selectSource(source),source,techName;if(sourceTech){source=sourceTech.source;techName=sourceTech.tech;if(techName==this.techName){this.src(source)}else{this.loadTech(techName,source)}}else{_V_.log("No compatible source and playback technology were found.")}}else{if(source instanceof Object){if(_V_[this.techName].canPlaySource(source)){this.src(source.src)}else{this.src([source])}}else{this.values.src=source;if(!this.isReady){this.ready(function(){this.src(source)})}else{this.techCall("src",source);if(this.options.preload=="auto"){this.load()}if(this.options.autoplay){this.play()}}}}return this},load:function(){this.techCall("load");return this},currentSrc:function(){return this.techGet("currentSrc")||this.values.src||""},preload:function(value){if(value!==undefined){this.techCall("setPreload",value);this.options.preload=value;return this}return this.techGet("preload")},autoplay:function(value){if(value!==undefined){this.techCall("setAutoplay",value);this.options.autoplay=value;return this}return this.techGet("autoplay",value)},loop:function(value){if(value!==undefined){this.techCall("setLoop",value);this.options.loop=value;return this}return this.techGet("loop")},controls:function(){return this.options.controls},poster:function(){return this.techGet("poster")},error:function(){return this.techGet("error")},ended:function(){return this.techGet("ended")}});(function(){var requestFn,cancelFn,eventName,isFullScreen,playerProto=_V_.Player.prototype;if(document.cancelFullscreen!==undefined){requestFn="requestFullscreen";cancelFn="exitFullscreen";eventName="fullscreenchange";isFullScreen="fullScreen"}else{_V_.each(["moz","webkit"],function(prefix){if((prefix!="moz"||document.mozFullScreenEnabled)&&document[prefix+"CancelFullScreen"]!==undefined){requestFn=prefix+"RequestFullScreen";cancelFn=prefix+"CancelFullScreen";eventName=prefix+"fullscreenchange";if(prefix=="webkit"){isFullScreen=prefix+"IsFullScreen"}else{isFullScreen=prefix+"FullScreen"}}})}if(requestFn){_V_.support.requestFullScreen={requestFn:requestFn,cancelFn:cancelFn,eventName:eventName,isFullScreen:isFullScreen}}})();_V_.PlaybackTech=_V_.Component.extend({init:function(player,options){},onClick:function(){if(this.player.options.controls){_V_.PlayToggle.prototype.onClick.call(this)}}});_V_.apiMethods="play,pause,paused,currentTime,setCurrentTime,duration,buffered,volume,setVolume,muted,setMuted,width,height,supportsFullScreen,enterFullScreen,src,load,currentSrc,preload,setPreload,autoplay,setAutoplay,loop,setLoop,error,networkState,readyState,seeking,initialTime,startOffsetTime,played,seekable,ended,videoTracks,audioTracks,videoWidth,videoHeight,textTracks,defaultPlaybackRate,playbackRate,mediaGroup,controller,controls,defaultMuted".split(",");_V_.each(_V_.apiMethods,function(methodName){_V_.PlaybackTech.prototype[methodName]=function(){throw new Error("The '"+methodName+"' method is not available on the playback technology's API")}});_V_.html5=_V_.PlaybackTech.extend({init:function(player,options,ready){this.player=player;this.el=this.createElement();this.ready(ready);this.addEvent("click",this.proxy(this.onClick));var source=options.source;if(source&&this.el.currentSrc==source.src){player.triggerEvent("loadstart")}else{if(source){this.el.src=source.src}}player.ready(function(){if(this.options.autoplay&&this.paused()){this.tag.poster=null;this.play()}});this.setupTriggers();this.triggerReady()},destroy:function(){this.player.tag=false;this.removeTriggers();this.el.parentNode.removeChild(this.el)},createElement:function(){var html5=_V_.html5,player=this.player,el=player.tag,newEl;if(!el||this.support.movingElementInDOM===false){if(el){player.el.removeChild(el)}newEl=_V_.createElement("video",{id:el.id||player.el.id+"_html5_api",className:el.className||"vjs-tech"});el=newEl;_V_.insertFirst(el,player.el)}_V_.each(["autoplay","preload","loop","muted"],function(attr){if(player.options[attr]!==null){el[attr]=player.options[attr]}},this);return el},setupTriggers:function(){_V_.each.call(this,_V_.html5.events,function(type){_V_.addEvent(this.el,type,_V_.proxy(this.player,this.eventHandler))})},removeTriggers:function(){_V_.each.call(this,_V_.html5.events,function(type){_V_.removeEvent(this.el,type,_V_.proxy(this.player,this.eventHandler))})},eventHandler:function(e){e.stopPropagation();this.triggerEvent(e)},play:function(){this.el.play()},pause:function(){this.el.pause()},paused:function(){return this.el.paused},currentTime:function(){return this.el.currentTime},setCurrentTime:function(seconds){try{this.el.currentTime=seconds}catch(e){_V_.log(e,"Video isn't ready. (VideoJS)")}},duration:function(){return this.el.duration||0},buffered:function(){return this.el.buffered},volume:function(){return this.el.volume},setVolume:function(percentAsDecimal){this.el.volume=percentAsDecimal},muted:function(){return this.el.muted},setMuted:function(muted){this.el.muted=muted},width:function(){return this.el.offsetWidth},height:function(){return this.el.offsetHeight},supportsFullScreen:function(){if(typeof this.el.webkitEnterFullScreen=="function"){if(!navigator.userAgent.match("Chrome")&&!navigator.userAgent.match("Mac OS X 10.5")){return true}}return false},enterFullScreen:function(){try{this.el.webkitEnterFullScreen()}catch(e){if(e.code==11){_V_.log("VideoJS: Video not ready.")}}},src:function(src){this.el.src=src},load:function(){this.el.load()},currentSrc:function(){return this.el.currentSrc},preload:function(){return this.el.preload},setPreload:function(val){this.el.preload=val},autoplay:function(){return this.el.autoplay},setAutoplay:function(val){this.el.autoplay=val},loop:function(){return this.el.loop},setLoop:function(val){this.el.loop=val},error:function(){return this.el.error},seeking:function(){return this.el.seeking},ended:function(){return this.el.ended},controls:function(){return this.player.options.controls},defaultMuted:function(){return this.el.defaultMuted}});_V_.html5.isSupported=function(){return !!document.createElement("video").canPlayType};_V_.html5.canPlaySource=function(srcObj){return !!document.createElement("video").canPlayType(srcObj.type)};_V_.html5.events="loadstart,suspend,abort,error,emptied,stalled,loadedmetadata,loadeddata,canplay,canplaythrough,playing,waiting,seeking,seeked,ended,durationchange,timeupdate,progress,play,pause,ratechange,volumechange".split(",");_V_.html5.prototype.support={fullscreen:(typeof _V_.testVid.webkitEnterFullScreen!==undefined)?(!_V_.ua.match("Chrome")&&!_V_.ua.match("Mac OS X 10.5")?true:false):false,movingElementInDOM:!_V_.isIOS()};if(_V_.isAndroid()){if(_V_.androidVersion()<3){document.createElement("video").constructor.prototype.canPlayType=function(type){return(type&&type.toLowerCase().indexOf("video/mp4")!=-1)?"maybe":""}}}_V_.flash=_V_.PlaybackTech.extend({init:function(player,options){this.player=player;var source=options.source,parentEl=options.parentEl,placeHolder=this.el=_V_.createElement("div",{id:parentEl.id+"_temp_flash"}),objId=player.el.id+"_flash_api",playerOptions=player.options,flashVars=_V_.merge({readyFunction:"_V_.flash.onReady",eventProxyFunction:"_V_.flash.onEvent",errorEventProxyFunction:"_V_.flash.onError",autoplay:playerOptions.autoplay,preload:playerOptions.preload,loop:playerOptions.loop,muted:playerOptions.muted},options.flashVars),params=_V_.merge({wmode:"opaque",bgcolor:"#000000"},options.params),attributes=_V_.merge({id:objId,name:objId,"class":"vjs-tech"},options.attributes);if(source){flashVars.src=encodeURIComponent(_V_.getAbsoluteURL(source.src))}_V_.insertFirst(placeHolder,parentEl);if(options.startTime){this.ready(function(){this.load();this.play();this.currentTime(options.startTime)})}if(options.iFrameMode==true&&!_V_.isFF){var iFrm=_V_.createElement("iframe",{id:objId+"_iframe",name:objId+"_iframe",className:"vjs-tech",scrolling:"no",marginWidth:0,marginHeight:0,frameBorder:0});flashVars.readyFunction="ready";flashVars.eventProxyFunction="events";flashVars.errorEventProxyFunction="errors";_V_.addEvent(iFrm,"load",_V_.proxy(this,function(){var iDoc,objTag,swfLoc,iWin=iFrm.contentWindow,varString="";iDoc=iFrm.contentDocument?iFrm.contentDocument:iFrm.contentWindow.document;iDoc.write(_V_.flash.getEmbedCode(options.swf,flashVars,params,attributes));iWin.player=this.player;iWin.ready=_V_.proxy(this.player,function(currSwf){var el=iDoc.getElementById(currSwf),player=this,tech=player.tech;tech.el=el;_V_.addEvent(el,"click",tech.proxy(tech.onClick));_V_.flash.checkReady(tech)});iWin.events=_V_.proxy(this.player,function(swfID,eventName,other){var player=this;if(player&&player.techName=="flash"){player.triggerEvent(eventName)}});iWin.errors=_V_.proxy(this.player,function(swfID,eventName){_V_.log("Flash Error",eventName)})}));placeHolder.parentNode.replaceChild(iFrm,placeHolder)}else{_V_.flash.embed(options.swf,placeHolder,flashVars,params,attributes)}},destroy:function(){this.el.parentNode.removeChild(this.el)},play:function(){this.el.vjs_play()},pause:function(){this.el.vjs_pause()},src:function(src){src=_V_.getAbsoluteURL(src);this.el.vjs_src(src);if(this.player.autoplay()){var tech=this;setTimeout(function(){tech.play()},0)}},load:function(){this.el.vjs_load()},poster:function(){this.el.vjs_getProperty("poster")},buffered:function(){return _V_.createTimeRange(0,this.el.vjs_getProperty("buffered"))},supportsFullScreen:function(){return false},enterFullScreen:function(){return false}});(function(){var api=_V_.flash.prototype,readWrite="preload,currentTime,defaultPlaybackRate,playbackRate,autoplay,loop,mediaGroup,controller,controls,volume,muted,defaultMuted".split(","),readOnly="error,currentSrc,networkState,readyState,seeking,initialTime,duration,startOffsetTime,paused,played,seekable,ended,videoTracks,audioTracks,videoWidth,videoHeight,textTracks".split(","),callOnly="load,play,pause".split(",");createSetter=function(attr){var attrUpper=attr.charAt(0).toUpperCase()+attr.slice(1);api["set"+attrUpper]=function(val){return this.el.vjs_setProperty(attr,val)}},createGetter=function(attr){api[attr]=function(){return this.el.vjs_getProperty(attr)}};_V_.each(readWrite,function(attr){createGetter(attr);createSetter(attr)});_V_.each(readOnly,function(attr){createGetter(attr)})})();_V_.flash.isSupported=function(){return _V_.flash.version()[0]>=10};_V_.flash.canPlaySource=function(srcObj){if(srcObj.type in _V_.flash.prototype.support.formats){return"maybe"}};_V_.flash.prototype.support={formats:{"video/flv":"FLV","video/x-flv":"FLV","video/mp4":"MP4","video/m4v":"MP4"},progressEvent:false,timeupdateEvent:false,fullscreenResize:false,parentResize:!(_V_.ua.match("Firefox"))};_V_.flash.onReady=function(currSwf){var el=_V_.el(currSwf);var player=el.player||el.parentNode.player,tech=player.tech;el.player=player;tech.el=el;tech.addEvent("click",tech.onClick);_V_.flash.checkReady(tech)};_V_.flash.checkReady=function(tech){if(tech.el.vjs_getProperty){tech.triggerReady()}else{setTimeout(function(){_V_.flash.checkReady(tech)},50)}};_V_.flash.onEvent=function(swfID,eventName){var player=_V_.el(swfID).player;player.triggerEvent(eventName)};_V_.flash.onError=function(swfID,err){var player=_V_.el(swfID).player;player.triggerEvent("error");_V_.log("Flash Error",err,swfID)};_V_.flash.version=function(){var version="0,0,0";try{version=new ActiveXObject("ShockwaveFlash.ShockwaveFlash").GetVariable("$version").replace(/\D+/g,",").match(/^,?(.+),?$/)[1]}catch(e){try{if(navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin){version=(navigator.plugins["Shockwave Flash 2.0"]||navigator.plugins["Shockwave Flash"]).description.replace(/\D+/g,",").match(/^,?(.+),?$/)[1]}}catch(e){}}return version.split(",")};_V_.flash.embed=function(swf,placeHolder,flashVars,params,attributes){var code=_V_.flash.getEmbedCode(swf,flashVars,params,attributes),obj=_V_.createElement("div",{innerHTML:code}).childNodes[0],par=placeHolder.parentNode;placeHolder.parentNode.replaceChild(obj,placeHolder);if(_V_.isIE()){var newObj=par.childNodes[0];setTimeout(function(){newObj.style.display="block"},1000)}return obj};_V_.flash.getEmbedCode=function(swf,flashVars,params,attributes){var objTag='<object type="application/x-shockwave-flash"',flashVarsString="",paramsString="";attrsString="";if(flashVars){_V_.eachProp(flashVars,function(key,val){flashVarsString+=(key+"="+val+"&amp;")})}params=_V_.merge({movie:swf,flashvars:flashVarsString,allowScriptAccess:"always",allowNetworking:"all"},params);_V_.eachProp(params,function(key,val){paramsString+='<param name="'+key+'" value="'+val+'" />'});attributes=_V_.merge({data:swf,width:"100%",height:"100%"},attributes);_V_.eachProp(attributes,function(key,val){attrsString+=(key+'="'+val+'" ')});return objTag+attrsString+">"+paramsString+"</object>"};_V_.merge(_V_.Player.prototype,{addTextTracks:function(trackObjects){var tracks=this.textTracks=(this.textTracks)?this.textTracks:[],i=0,j=trackObjects.length,track,Kind;for(;i<j;i++){Kind=_V_.uc(trackObjects[i].kind||"subtitles");track=new _V_[Kind+"Track"](this,trackObjects[i]);tracks.push(track);if(track["default"]){this.ready(_V_.proxy(track,track.show))}}return this},showTextTrack:function(id,disableSameKind){var tracks=this.textTracks,i=0,j=tracks.length,track,showTrack,kind;for(;i<j;i++){track=tracks[i];if(track.id===id){track.show();showTrack=track}else{if(disableSameKind&&track.kind==disableSameKind&&track.mode>0){track.disable()}}}kind=(showTrack)?showTrack.kind:((disableSameKind)?disableSameKind:false);if(kind){this.triggerEvent(kind+"trackchange")}return this}});_V_.Track=_V_.Component.extend({init:function(player,options){this._super(player,options);_V_.merge(this,{id:options.id||("vjs_"+options.kind+"_"+options.language+"_"+_V_.guid++),src:options.src,"default":options["default"],title:options.title,language:options.srclang,label:options.label,cues:[],activeCues:[],readyState:0,mode:0})},createElement:function(){return this._super("div",{className:"vjs-"+this.kind+" vjs-text-track"})},show:function(){this.activate();this.mode=2;this._super()},hide:function(){this.activate();this.mode=1;this._super()},disable:function(){if(this.mode==2){this.hide()}this.deactivate();this.mode=0},activate:function(){if(this.readyState==0){this.load()}if(this.mode==0){this.player.addEvent("timeupdate",this.proxy(this.update,this.id));this.player.addEvent("ended",this.proxy(this.reset,this.id));if(this.kind=="captions"||this.kind=="subtitles"){this.player.textTrackDisplay.addComponent(this)}}},deactivate:function(){this.player.removeEvent("timeupdate",this.proxy(this.update,this.id));this.player.removeEvent("ended",this.proxy(this.reset,this.id));this.reset();this.player.textTrackDisplay.removeComponent(this)},load:function(){if(this.readyState==0){this.readyState=1;_V_.get(this.src,this.proxy(this.parseCues),this.proxy(this.onError))}},onError:function(err){this.error=err;this.readyState=3;this.triggerEvent("error")},parseCues:function(srcContent){var cue,time,text,lines=srcContent.split("\n"),line="",id;for(var i=1,j=lines.length;i<j;i++){line=_V_.trim(lines[i]);if(line){if(line.indexOf("-->")==-1){id=line;line=_V_.trim(lines[++i])}else{id=this.cues.length}cue={id:id,index:this.cues.length};time=line.split(" --> ");cue.startTime=this.parseCueTime(time[0]);cue.endTime=this.parseCueTime(time[1]);text=[];while(lines[++i]&&(line=_V_.trim(lines[i]))){text.push(line)}cue.text=text.join("<br/>");this.cues.push(cue)}}this.readyState=2;this.triggerEvent("loaded")},parseCueTime:function(timeText){var parts=timeText.split(":"),time=0,hours,minutes,other,seconds,ms,flags;if(parts.length==3){hours=parts[0];minutes=parts[1];other=parts[2]}else{hours=0;minutes=parts[0];other=parts[1]}other=other.split(/\s+/);seconds=other.splice(0,1)[0];seconds=seconds.split(/\.|,/);ms=parseFloat(seconds[1]);seconds=seconds[0];time+=parseFloat(hours)*3600;time+=parseFloat(minutes)*60;time+=parseFloat(seconds);if(ms){time+=ms/1000}return time},update:function(){if(this.cues.length>0){var time=this.player.currentTime();if(this.prevChange===undefined||time<this.prevChange||this.nextChange<=time){var cues=this.cues,newNextChange=this.player.duration(),newPrevChange=0,reverse=false,newCues=[],firstActiveIndex,lastActiveIndex,html="",cue,i,j;if(time>=this.nextChange||this.nextChange===undefined){i=(this.firstActiveIndex!==undefined)?this.firstActiveIndex:0}else{reverse=true;i=(this.lastActiveIndex!==undefined)?this.lastActiveIndex:cues.length-1}while(true){cue=cues[i];if(cue.endTime<=time){newPrevChange=Math.max(newPrevChange,cue.endTime);if(cue.active){cue.active=false}}else{if(time<cue.startTime){newNextChange=Math.min(newNextChange,cue.startTime);if(cue.active){cue.active=false}if(!reverse){break}}else{if(reverse){newCues.splice(0,0,cue);if(lastActiveIndex===undefined){lastActiveIndex=i}firstActiveIndex=i}else{newCues.push(cue);if(firstActiveIndex===undefined){firstActiveIndex=i}lastActiveIndex=i}newNextChange=Math.min(newNextChange,cue.endTime);newPrevChange=Math.max(newPrevChange,cue.startTime);cue.active=true}}if(reverse){if(i===0){break}else{i--}}else{if(i===cues.length-1){break}else{i++}}}this.activeCues=newCues;this.nextChange=newNextChange;this.prevChange=newPrevChange;this.firstActiveIndex=firstActiveIndex;this.lastActiveIndex=lastActiveIndex;this.updateDisplay();this.triggerEvent("cuechange")}}},updateDisplay:function(){var cues=this.activeCues,html="",i=0,j=cues.length;for(;i<j;i++){html+="<span class='vjs-tt-cue'>"+cues[i].text+"</span>"}this.el.innerHTML=html},reset:function(){this.nextChange=0;this.prevChange=this.player.duration();this.firstActiveIndex=0;this.lastActiveIndex=0}});_V_.CaptionsTrack=_V_.Track.extend({kind:"captions"});_V_.SubtitlesTrack=_V_.Track.extend({kind:"subtitles"});_V_.ChaptersTrack=_V_.Track.extend({kind:"chapters"});_V_.TextTrackDisplay=_V_.Component.extend({createElement:function(){return this._super("div",{className:"vjs-text-track-display"})}});_V_.TextTrackMenuItem=_V_.MenuItem.extend({init:function(player,options){var track=this.track=options.track;options.label=track.label;options.selected=track["default"];this._super(player,options);this.player.addEvent(track.kind+"trackchange",_V_.proxy(this,this.update))},onClick:function(){this._super();this.player.showTextTrack(this.track.id,this.track.kind)},update:function(){if(this.track.mode==2){this.selected(true)}else{this.selected(false)}}});_V_.OffTextTrackMenuItem=_V_.TextTrackMenuItem.extend({init:function(player,options){options.track={kind:options.kind,player:player,label:"Off"};this._super(player,options)},onClick:function(){this._super();this.player.showTextTrack(this.track.id,this.track.kind)},update:function(){var tracks=this.player.textTracks,i=0,j=tracks.length,track,off=true;for(;i<j;i++){track=tracks[i];if(track.kind==this.track.kind&&track.mode==2){off=false}}if(off){this.selected(true)}else{this.selected(false)}}});_V_.TextTrackButton=_V_.Button.extend({init:function(player,options){this._super(player,options);this.menu=this.createMenu();if(this.items.length===0){this.hide()}},createMenu:function(){var menu=new _V_.Menu(this.player);menu.el.appendChild(_V_.createElement("li",{className:"vjs-menu-title",innerHTML:_V_.uc(this.kind)}));menu.addItem(new _V_.OffTextTrackMenuItem(this.player,{kind:this.kind}));this.items=this.createItems();this.each(this.items,function(item){menu.addItem(item)});this.addComponent(menu);return menu},createItems:function(){var items=[];this.each(this.player.textTracks,function(track){if(track.kind===this.kind){items.push(new _V_.TextTrackMenuItem(this.player,{track:track}))}});return items},buildCSSClass:function(){return this.className+" vjs-menu-button "+this._super()},onFocus:function(){this.menu.lockShowing();_V_.one(this.menu.el.childNodes[this.menu.el.childNodes.length-1],"blur",this.proxy(function(){this.menu.unlockShowing()}))},onBlur:function(){},onClick:function(){this.one("mouseout",this.proxy(function(){this.menu.unlockShowing();this.el.blur()}))}});_V_.CaptionsButton=_V_.TextTrackButton.extend({kind:"captions",buttonText:"Captions",className:"vjs-captions-button"});_V_.SubtitlesButton=_V_.TextTrackButton.extend({kind:"subtitles",buttonText:"Subtitles",className:"vjs-subtitles-button"});_V_.ChaptersButton=_V_.TextTrackButton.extend({kind:"chapters",buttonText:"Chapters",className:"vjs-chapters-button",createItems:function(chaptersTrack){var items=[];this.each(this.player.textTracks,function(track){if(track.kind===this.kind){items.push(new _V_.TextTrackMenuItem(this.player,{track:track}))}});return items},createMenu:function(){var tracks=this.player.textTracks,i=0,j=tracks.length,track,chaptersTrack,items=this.items=[];for(;i<j;i++){track=tracks[i];if(track.kind==this.kind&&track["default"]){if(track.readyState<2){this.chaptersTrack=track;track.addEvent("loaded",this.proxy(this.createMenu));return}else{chaptersTrack=track;break}}}var menu=this.menu=new _V_.Menu(this.player);menu.el.appendChild(_V_.createElement("li",{className:"vjs-menu-title",innerHTML:_V_.uc(this.kind)}));if(chaptersTrack){var cues=chaptersTrack.cues,i=0,j=cues.length,cue,mi;for(;i<j;i++){cue=cues[i];mi=new _V_.ChaptersTrackMenuItem(this.player,{track:chaptersTrack,cue:cue});items.push(mi);menu.addComponent(mi)}}this.addComponent(menu);if(this.items.length>0){this.show()}return menu}});_V_.ChaptersTrackMenuItem=_V_.MenuItem.extend({init:function(player,options){var track=this.track=options.track,cue=this.cue=options.cue,currentTime=player.currentTime();options.label=cue.text;options.selected=(cue.startTime<=currentTime&&currentTime<cue.endTime);this._super(player,options);track.addEvent("cuechange",_V_.proxy(this,this.update))},onClick:function(){this._super();this.player.currentTime(this.cue.startTime);this.update(this.cue.startTime)},update:function(time){var cue=this.cue,currentTime=this.player.currentTime();if(cue.startTime<=currentTime&&currentTime<cue.endTime){this.selected(true)}else{this.selected(false)}}});_V_.merge(_V_.ControlBar.prototype.options.components,{subtitlesButton:{},captionsButton:{},chaptersButton:{}});_V_.autoSetup=function(){var options,vid,player,vids=document.getElementsByTagName("video");if(vids&&vids.length>0){for(var i=0,j=vids.length;i<j;i++){vid=vids[i];if(vid&&vid.getAttribute){if(vid.player===undefined){options=vid.getAttribute("data-setup");if(options!==null){options=JSON.parse(options||"{}");player=_V_(vid,options)}}}else{_V_.autoSetupTimeout(1);break}}}else{if(!_V_.windowLoaded){_V_.autoSetupTimeout(1)}}};_V_.autoSetupTimeout=function(wait){setTimeout(_V_.autoSetup,wait)};_V_.addEvent(window,"load",function(){_V_.windowLoaded=true});_V_.autoSetup();window.VideoJS=window._V_=VideoJS})(window);
1
+ /*! Copyright 2013 Brightcove, Inc. https://github.com/videojs/video.js/blob/master/LICENSE */
2
+ (function() {var b=void 0,f=!0,h=null,l=!1;function m(){return function(){}}function p(a){return function(){return this[a]}}function r(a){return function(){return a}}var t;document.createElement("video");document.createElement("audio");function u(a,c,d){if("string"===typeof a){0===a.indexOf("#")&&(a=a.slice(1));if(u.Na[a])return u.Na[a];a=u.s(a)}if(!a||!a.nodeName)throw new TypeError("The element or ID supplied is not valid. (videojs)");return a.player||new u.ga(a,c,d)}var v=u;window.xd=window.yd=u;u.Qb="GENERATED_CDN_VSN";
3
+ u.Pb="https:"==document.location.protocol?"https://":"http://";u.options={techOrder:["html5","flash"],html5:{},flash:{swf:u.Pb+"vjs.zencdn.net/c/video-js.swf"},width:300,height:150,defaultVolume:0,children:{mediaLoader:{},posterImage:{},textTrackDisplay:{},loadingSpinner:{},bigPlayButton:{},controlBar:{}}};u.Na={};"GENERATED_CDN_VSN"!=u.Qb&&(v.options.flash.swf=u.Pb+"vjs.zencdn.net/"+u.Qb+"/video-js.swf");u.ma=u.CoreObject=m();
4
+ u.ma.extend=function(a){var c,d;a=a||{};c=a.init||a.g||this.prototype.init||this.prototype.g||m();d=function(){c.apply(this,arguments)};d.prototype=u.i.create(this.prototype);d.prototype.constructor=d;d.extend=u.ma.extend;d.create=u.ma.create;for(var e in a)a.hasOwnProperty(e)&&(d.prototype[e]=a[e]);return d};u.ma.create=function(){var a=u.i.create(this.prototype);this.apply(a,arguments);return a};
5
+ u.d=function(a,c,d){var e=u.getData(a);e.z||(e.z={});e.z[c]||(e.z[c]=[]);d.u||(d.u=u.u++);e.z[c].push(d);e.S||(e.disabled=l,e.S=function(c){if(!e.disabled){c=u.hc(c);var d=e.z[c.type];if(d)for(var d=d.slice(0),k=0,q=d.length;k<q&&!c.mc();k++)d[k].call(a,c)}});1==e.z[c].length&&(document.addEventListener?a.addEventListener(c,e.S,l):document.attachEvent&&a.attachEvent("on"+c,e.S))};
6
+ u.t=function(a,c,d){if(u.lc(a)){var e=u.getData(a);if(e.z)if(c){var g=e.z[c];if(g){if(d){if(d.u)for(e=0;e<g.length;e++)g[e].u===d.u&&g.splice(e--,1)}else e.z[c]=[];u.ec(a,c)}}else for(g in e.z)c=g,e.z[c]=[],u.ec(a,c)}};u.ec=function(a,c){var d=u.getData(a);0===d.z[c].length&&(delete d.z[c],document.removeEventListener?a.removeEventListener(c,d.S,l):document.detachEvent&&a.detachEvent("on"+c,d.S));u.Ab(d.z)&&(delete d.z,delete d.S,delete d.disabled);u.Ab(d)&&u.sc(a)};
7
+ u.hc=function(a){function c(){return f}function d(){return l}if(!a||!a.Bb){var e=a||window.event;a={};for(var g in e)a[g]=e[g];a.target||(a.target=a.srcElement||document);a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement;a.preventDefault=function(){e.preventDefault&&e.preventDefault();a.returnValue=l;a.zb=c};a.zb=d;a.stopPropagation=function(){e.stopPropagation&&e.stopPropagation();a.cancelBubble=f;a.Bb=c};a.Bb=d;a.stopImmediatePropagation=function(){e.stopImmediatePropagation&&e.stopImmediatePropagation();
8
+ a.mc=c;a.stopPropagation()};a.mc=d;if(a.clientX!=h){g=document.documentElement;var j=document.body;a.pageX=a.clientX+(g&&g.scrollLeft||j&&j.scrollLeft||0)-(g&&g.clientLeft||j&&j.clientLeft||0);a.pageY=a.clientY+(g&&g.scrollTop||j&&j.scrollTop||0)-(g&&g.clientTop||j&&j.clientTop||0)}a.which=a.charCode||a.keyCode;a.button!=h&&(a.button=a.button&1?0:a.button&4?1:a.button&2?2:0)}return a};
9
+ u.k=function(a,c){var d=u.lc(a)?u.getData(a):{},e=a.parentNode||a.ownerDocument;"string"===typeof c&&(c={type:c,target:a});c=u.hc(c);d.S&&d.S.call(a,c);if(e&&!c.Bb())u.k(e,c);else if(!e&&!c.zb()&&(d=u.getData(c.target),c.target[c.type])){d.disabled=f;if("function"===typeof c.target[c.type])c.target[c.type]();d.disabled=l}return!c.zb()};u.Q=function(a,c,d){u.d(a,c,function(){u.t(a,c,arguments.callee);d.apply(this,arguments)})};var w=Object.prototype.hasOwnProperty;
10
+ u.e=function(a,c){var d=document.createElement(a||"div"),e;for(e in c)w.call(c,e)&&(-1!==e.indexOf("aria-")||"role"==e?d.setAttribute(e,c[e]):d[e]=c[e]);return d};u.Y=function(a){return a.charAt(0).toUpperCase()+a.slice(1)};u.i={};u.i.create=Object.create||function(a){function c(){}c.prototype=a;return new c};u.i.sa=function(a,c,d){for(var e in a)w.call(a,e)&&c.call(d||this,e,a[e])};u.i.B=function(a,c){if(!c)return a;for(var d in c)w.call(c,d)&&(a[d]=c[d]);return a};
11
+ u.i.gc=function(a,c){var d,e,g;a=u.i.copy(a);for(d in c)w.call(c,d)&&(e=a[d],g=c[d],a[d]=u.i.nc(e)&&u.i.nc(g)?u.i.gc(e,g):c[d]);return a};u.i.copy=function(a){return u.i.B({},a)};u.i.nc=function(a){return!!a&&"object"===typeof a&&"[object Object]"===a.toString()&&a.constructor===Object};u.bind=function(a,c,d){function e(){return c.apply(a,arguments)}c.u||(c.u=u.u++);e.u=d?d+"_"+c.u:c.u;return e};u.qa={};u.u=1;u.expando="vdata"+(new Date).getTime();
12
+ u.getData=function(a){var c=a[u.expando];c||(c=a[u.expando]=u.u++,u.qa[c]={});return u.qa[c]};u.lc=function(a){a=a[u.expando];return!(!a||u.Ab(u.qa[a]))};u.sc=function(a){var c=a[u.expando];if(c){delete u.qa[c];try{delete a[u.expando]}catch(d){a.removeAttribute?a.removeAttribute(u.expando):a[u.expando]=h}}};u.Ab=function(a){for(var c in a)if(a[c]!==h)return l;return f};u.p=function(a,c){-1==(" "+a.className+" ").indexOf(" "+c+" ")&&(a.className=""===a.className?c:a.className+" "+c)};
13
+ u.w=function(a,c){if(-1!=a.className.indexOf(c)){for(var d=a.className.split(" "),e=d.length-1;0<=e;e--)d[e]===c&&d.splice(e,1);a.className=d.join(" ")}};u.ib=u.e("video");u.O=navigator.userAgent;u.Bc=!!u.O.match(/iPhone/i);u.Ac=!!u.O.match(/iPad/i);u.Cc=!!u.O.match(/iPod/i);u.Ub=u.Bc||u.Ac||u.Cc;var aa=u,x;var y=u.O.match(/OS (\d+)_/i);x=y&&y[1]?y[1]:b;aa.qd=x;u.ab=!!u.O.match(/Android.*AppleWebKit/i);var ba=u,z=u.O.match(/Android (\d+)\./i);ba.yc=z&&z[1]?z[1]:h;u.zc=function(){return!!u.O.match("Firefox")};
14
+ u.wb=function(a){var c={};if(a&&a.attributes&&0<a.attributes.length)for(var d=a.attributes,e,g,j=d.length-1;0<=j;j--){e=d[j].name;g=d[j].value;if("boolean"===typeof a[e]||-1!==",autoplay,controls,loop,muted,default,".indexOf(","+e+","))g=g!==h?f:l;c[e]=g}return c};u.td=function(a,c){var d="";document.defaultView&&document.defaultView.getComputedStyle?d=document.defaultView.getComputedStyle(a,"").getPropertyValue(c):a.currentStyle&&(d=a["client"+c.substr(0,1).toUpperCase()+c.substr(1)]+"px");return d};
15
+ u.yb=function(a,c){c.firstChild?c.insertBefore(a,c.firstChild):c.appendChild(a)};u.Nb={};u.s=function(a){0===a.indexOf("#")&&(a=a.slice(1));return document.getElementById(a)};u.Ha=function(a,c){c=c||a;var d=Math.floor(a%60),e=Math.floor(a/60%60),g=Math.floor(a/3600),j=Math.floor(c/60%60),k=Math.floor(c/3600),g=0<g||0<k?g+":":"";return g+(((g||10<=j)&&10>e?"0"+e:e)+":")+(10>d?"0"+d:d)};u.Gc=function(){document.body.focus();document.onselectstart=r(l)};u.ld=function(){document.onselectstart=r(f)};
16
+ u.trim=function(a){return a.toString().replace(/^\s+/,"").replace(/\s+$/,"")};u.round=function(a,c){c||(c=0);return Math.round(a*Math.pow(10,c))/Math.pow(10,c)};u.tb=function(a,c){return{length:1,start:function(){return a},end:function(){return c}}};
17
+ u.get=function(a,c,d){var e=0===a.indexOf("file:")||0===window.location.href.indexOf("file:")&&-1===a.indexOf("http");"undefined"===typeof XMLHttpRequest&&(window.XMLHttpRequest=function(){try{return new window.ActiveXObject("Msxml2.XMLHTTP.6.0")}catch(a){}try{return new window.ActiveXObject("Msxml2.XMLHTTP.3.0")}catch(c){}try{return new window.ActiveXObject("Msxml2.XMLHTTP")}catch(d){}throw Error("This browser does not support XMLHttpRequest.");});var g=new XMLHttpRequest;try{g.open("GET",a)}catch(j){d(j)}g.onreadystatechange=
18
+ function(){4===g.readyState&&(200===g.status||e&&0===g.status?c(g.responseText):d&&d())};try{g.send()}catch(k){d&&d(k)}};u.dd=function(a){try{var c=window.localStorage||l;c&&(c.volume=a)}catch(d){22==d.code||1014==d.code?u.log("LocalStorage Full (VideoJS)",d):18==d.code?u.log("LocalStorage not allowed (VideoJS)",d):u.log("LocalStorage Error (VideoJS)",d)}};u.jc=function(a){a.match(/^https?:\/\//)||(a=u.e("div",{innerHTML:'<a href="'+a+'">x</a>'}).firstChild.href);return a};
19
+ u.log=function(){u.log.history=u.log.history||[];u.log.history.push(arguments);window.console&&window.console.log(Array.prototype.slice.call(arguments))};u.Oc=function(a){var c,d;a.getBoundingClientRect&&a.parentNode&&(c=a.getBoundingClientRect());if(!c)return{left:0,top:0};a=document.documentElement;d=document.body;return{left:c.left+(window.pageXOffset||d.scrollLeft)-(a.clientLeft||d.clientLeft||0),top:c.top+(window.pageYOffset||d.scrollTop)-(a.clientTop||d.clientTop||0)}};
20
+ u.c=u.ma.extend({g:function(a,c,d){this.a=a;this.f=u.i.copy(this.f);c=this.options(c);this.L=c.id||(c.el&&c.el.id?c.el.id:a.id()+"_component_"+u.u++);this.Tc=c.name||h;this.b=c.el||this.e();this.D=[];this.rb={};this.R={};if((a=this.f)&&a.children){var e=this;u.i.sa(a.children,function(a,c){c!==l&&!c.loadEvent&&(e[a]=e.X(a,c))})}this.M(d)}});t=u.c.prototype;
21
+ t.C=function(){if(this.D)for(var a=this.D.length-1;0<=a;a--)this.D[a].C&&this.D[a].C();this.R=this.rb=this.D=h;this.t();this.b.parentNode&&this.b.parentNode.removeChild(this.b);u.sc(this.b);this.b=h};t.pc=p("a");t.options=function(a){return a===b?this.f:this.f=u.i.gc(this.f,a)};t.e=function(a,c){return u.e(a,c)};t.s=p("b");t.id=p("L");t.name=p("Tc");t.children=p("D");
22
+ t.X=function(a,c){var d,e;"string"===typeof a?(e=a,c=c||{},d=c.componentClass||u.Y(e),c.name=e,d=new window.videojs[d](this.a||this,c)):d=a;this.D.push(d);"function"===typeof d.id&&(this.rb[d.id()]=d);(e=e||d.name&&d.name())&&(this.R[e]=d);"function"===typeof d.el&&d.el()&&(this.ra||this.b).appendChild(d.el());return d};
23
+ t.removeChild=function(a){"string"===typeof a&&(a=this.R[a]);if(a&&this.D){for(var c=l,d=this.D.length-1;0<=d;d--)if(this.D[d]===a){c=f;this.D.splice(d,1);break}c&&(this.rb[a.id]=h,this.R[a.name]=h,(c=a.s())&&c.parentNode===(this.ra||this.b)&&(this.ra||this.b).removeChild(a.s()))}};t.P=r("");t.d=function(a,c){u.d(this.b,a,u.bind(this,c));return this};t.t=function(a,c){u.t(this.b,a,c);return this};t.Q=function(a,c){u.Q(this.b,a,u.bind(this,c));return this};t.k=function(a,c){u.k(this.b,a,c);return this};
24
+ t.M=function(a){a&&(this.$?a.call(this):(this.Qa===b&&(this.Qa=[]),this.Qa.push(a)));return this};t.Ta=function(){this.$=f;var a=this.Qa;if(a&&0<a.length){for(var c=0,d=a.length;c<d;c++)a[c].call(this);this.Qa=[];this.k("ready")}};t.p=function(a){u.p(this.b,a);return this};t.w=function(a){u.w(this.b,a);return this};t.show=function(){this.b.style.display="block";return this};t.v=function(){this.b.style.display="none";return this};t.ja=function(){this.w("vjs-fade-out");this.p("vjs-fade-in");return this};
25
+ t.Ga=function(){this.w("vjs-fade-in");this.p("vjs-fade-out");return this};t.oc=function(){this.p("vjs-lock-showing");return this};t.Ua=function(){this.w("vjs-lock-showing");return this};t.disable=function(){this.v();this.show=m();this.ja=m()};t.width=function(a,c){return A(this,"width",a,c)};t.height=function(a,c){return A(this,"height",a,c)};t.Kc=function(a,c){return this.width(a,f).height(c)};
26
+ function A(a,c,d,e){if(d!==b)return a.b.style[c]=-1!==(""+d).indexOf("%")||-1!==(""+d).indexOf("px")?d:"auto"===d?"":d+"px",e||a.k("resize"),a;if(!a.b)return 0;d=a.b.style[c];e=d.indexOf("px");return-1!==e?parseInt(d.slice(0,e),10):parseInt(a.b["offset"+u.Y(c)],10)}
27
+ u.o=u.c.extend({g:function(a,c){u.c.call(this,a,c);var d=l;this.d("touchstart",function(){d=f});this.d("touchmove",function(){d=l});var e=this;this.d("touchend",function(a){d&&e.n(a);a.preventDefault();a.stopPropagation()});this.d("click",this.n);this.d("focus",this.La);this.d("blur",this.Ka)}});t=u.o.prototype;
28
+ t.e=function(a,c){c=u.i.B({className:this.P(),innerHTML:'<div class="vjs-control-content"><span class="vjs-control-text">'+(this.pa||"Need Text")+"</span></div>",ad:"button","aria-live":"polite",tabIndex:0},c);return u.c.prototype.e.call(this,a,c)};t.P=function(){return"vjs-control "+u.c.prototype.P.call(this)};t.n=m();t.La=function(){u.d(document,"keyup",u.bind(this,this.aa))};t.aa=function(a){if(32==a.which||13==a.which)a.preventDefault(),this.n()};
29
+ t.Ka=function(){u.t(document,"keyup",u.bind(this,this.aa))};u.J=u.c.extend({g:function(a,c){u.c.call(this,a,c);this.Fc=this.R[this.f.barName];this.handle=this.R[this.f.handleName];a.d(this.qc,u.bind(this,this.update));this.d("mousedown",this.Ma);this.d("touchstart",this.Ma);this.d("focus",this.La);this.d("blur",this.Ka);this.d("click",this.n);this.a.d("controlsvisible",u.bind(this,this.update));a.M(u.bind(this,this.update));this.K={}}});t=u.J.prototype;
30
+ t.e=function(a,c){c=c||{};c.className+=" vjs-slider";c=u.i.B({ad:"slider","aria-valuenow":0,"aria-valuemin":0,"aria-valuemax":100,tabIndex:0},c);return u.c.prototype.e.call(this,a,c)};t.Ma=function(a){a.preventDefault();u.Gc();this.K.move=u.bind(this,this.Gb);this.K.end=u.bind(this,this.Hb);u.d(document,"mousemove",this.K.move);u.d(document,"mouseup",this.K.end);u.d(document,"touchmove",this.K.move);u.d(document,"touchend",this.K.end);this.Gb(a)};
31
+ t.Hb=function(){u.ld();u.t(document,"mousemove",this.K.move,l);u.t(document,"mouseup",this.K.end,l);u.t(document,"touchmove",this.K.move,l);u.t(document,"touchend",this.K.end,l);this.update()};t.update=function(){if(this.b){var a,c=this.xb(),d=this.handle,e=this.Fc;isNaN(c)&&(c=0);a=c;if(d){a=this.b.offsetWidth;var g=d.s().offsetWidth;a=g?g/a:0;c*=1-a;a=c+a/2;d.s().style.left=u.round(100*c,2)+"%"}e.s().style.width=u.round(100*a,2)+"%"}};
32
+ function B(a,c){var d,e,g,j;d=a.b;e=u.Oc(d);j=g=d.offsetWidth;d=a.handle;if(a.f.md)return j=e.top,e=c.changedTouches?c.changedTouches[0].pageY:c.pageY,d&&(d=d.s().offsetHeight,j+=d/2,g-=d),Math.max(0,Math.min(1,(j-e+g)/g));g=e.left;e=c.changedTouches?c.changedTouches[0].pageX:c.pageX;d&&(d=d.s().offsetWidth,g+=d/2,j-=d);return Math.max(0,Math.min(1,(e-g)/j))}t.La=function(){u.d(document,"keyup",u.bind(this,this.aa))};
33
+ t.aa=function(a){37==a.which?(a.preventDefault(),this.vc()):39==a.which&&(a.preventDefault(),this.wc())};t.Ka=function(){u.t(document,"keyup",u.bind(this,this.aa))};t.n=function(a){a.stopImmediatePropagation();a.preventDefault()};u.ha=u.c.extend();u.ha.prototype.defaultValue=0;u.ha.prototype.e=function(a,c){c=c||{};c.className+=" vjs-slider-handle";c=u.i.B({innerHTML:'<span class="vjs-control-text">'+this.defaultValue+"</span>"},c);return u.c.prototype.e.call(this,"div",c)};u.na=u.c.extend();
34
+ function ca(a,c){a.X(c);c.d("click",u.bind(a,function(){this.Ua()}))}u.na.prototype.e=function(){var a=this.options().Ic||"ul";this.ra=u.e(a,{className:"vjs-menu-content"});a=u.c.prototype.e.call(this,"div",{append:this.ra,className:"vjs-menu"});a.appendChild(this.ra);u.d(a,"click",function(a){a.preventDefault();a.stopImmediatePropagation()});return a};u.I=u.o.extend({g:function(a,c){u.o.call(this,a,c);this.selected(c.selected)}});
35
+ u.I.prototype.e=function(a,c){return u.o.prototype.e.call(this,"li",u.i.B({className:"vjs-menu-item",innerHTML:this.f.label},c))};u.I.prototype.n=function(){this.selected(f)};u.I.prototype.selected=function(a){a?(this.p("vjs-selected"),this.b.setAttribute("aria-selected",f)):(this.w("vjs-selected"),this.b.setAttribute("aria-selected",l))};
36
+ u.ea=u.o.extend({g:function(a,c){u.o.call(this,a,c);this.ua=this.Fa();this.X(this.ua);this.G&&0===this.G.length&&this.v();this.d("keyup",this.aa);this.b.setAttribute("aria-haspopup",f);this.b.setAttribute("role","button")}});t=u.ea.prototype;t.oa=l;t.Fa=function(){var a=new u.na(this.a);this.options().title&&a.s().appendChild(u.e("li",{className:"vjs-menu-title",innerHTML:u.Y(this.A),jd:-1}));if(this.G=this.sb())for(var c=0;c<this.G.length;c++)ca(a,this.G[c]);return a};t.sb=m();
37
+ t.P=function(){return this.className+" vjs-menu-button "+u.o.prototype.P.call(this)};t.La=m();t.Ka=m();t.n=function(){this.Q("mouseout",u.bind(this,function(){this.ua.Ua();this.b.blur()}));this.oa?C(this):D(this)};t.aa=function(a){a.preventDefault();32==a.which||13==a.which?this.oa?C(this):D(this):27==a.which&&this.oa&&C(this)};function D(a){a.oa=f;a.ua.oc();a.b.setAttribute("aria-pressed",f);a.G&&0<a.G.length&&a.G[0].s().focus()}function C(a){a.oa=l;a.ua.Ua();a.b.setAttribute("aria-pressed",l)}
38
+ u.ga=u.c.extend({g:function(a,c,d){this.N=a;c=u.i.B(da(a),c);this.r={};this.rc=c.poster;this.Ea=c.controls;c.customControlsOnMobile!==f&&(u.Ub||u.ab)?(a.controls=c.controls,this.Ea=l):a.controls=l;u.c.call(this,this,c,d);this.Q("play",function(a){u.k(this.b,{type:"firstplay",target:this.b})||(a.preventDefault(),a.stopPropagation(),a.stopImmediatePropagation())});this.d("ended",this.Vc);this.d("play",this.Jb);this.d("firstplay",this.Wc);this.d("pause",this.Ib);this.d("progress",this.Yc);this.d("durationchange",
39
+ this.Uc);this.d("error",this.Fb);this.d("fullscreenchange",this.Xc);u.Na[this.L]=this;c.plugins&&u.i.sa(c.plugins,function(a,c){this[a](c)},this)}});t=u.ga.prototype;t.f=u.options;t.C=function(){u.Na[this.L]=h;this.N&&this.N.player&&(this.N.player=h);this.b&&this.b.player&&(this.b.player=h);clearInterval(this.Pa);this.va();this.h&&this.h.C();u.c.prototype.C.call(this)};
40
+ function da(a){var c={sources:[],tracks:[]};u.i.B(c,u.wb(a));if(a.hasChildNodes())for(var d,e=a.childNodes,g=0,j=e.length;g<j;g++)a=e[g],d=a.nodeName.toLowerCase(),"source"===d?c.sources.push(u.wb(a)):"track"===d&&c.tracks.push(u.wb(a));return c}
41
+ t.e=function(){var a=this.b=u.c.prototype.e.call(this,"div"),c=this.N;c.removeAttribute("width");c.removeAttribute("height");if(c.hasChildNodes())for(var d=c.childNodes.length,e=0,g=c.childNodes;e<d;e++)("source"==g[0].nodeName.toLowerCase()||"track"==g[0].nodeName.toLowerCase())&&c.removeChild(g[0]);c.id=c.id||"vjs_video_"+u.u++;a.id=c.id;a.className=c.className;c.id+="_html5_api";c.className="vjs-tech";c.player=a.player=this;this.p("vjs-paused");this.width(this.f.width,f);this.height(this.f.height,
42
+ f);c.parentNode&&c.parentNode.insertBefore(a,c);u.yb(c,a);return a};
43
+ function E(a,c,d){a.h?F(a):"Html5"!==c&&a.N&&(a.b.removeChild(a.N),a.N.pc=h,a.N=h);a.ba=c;a.$=l;var e=u.i.B({source:d,parentEl:a.b},a.f[c.toLowerCase()]);d&&(d.src==a.r.src&&0<a.r.currentTime&&(e.startTime=a.r.currentTime),a.r.src=d.src);a.h=new window.videojs[c](a,e);a.h.M(function(){this.a.Ta();if(!this.j.Lb){var a=this.a;a.Db=f;a.Pa=setInterval(u.bind(a,function(){this.r.nb<this.buffered().end(0)?this.k("progress"):1==G(this)&&(clearInterval(this.Pa),this.k("progress"))}),500);a.h.Q("progress",
44
+ function(){this.j.Lb=f;var a=this.a;a.Db=l;clearInterval(a.Pa)})}this.j.Ob||(a=this.a,a.Eb=f,a.d("play",a.xc),a.d("pause",a.va),a.h.Q("timeupdate",function(){this.j.Ob=f;H(this.a)}))})}function F(a){a.$=l;a.h.C();a.Db&&(a.Db=l,clearInterval(a.Pa));a.Eb&&H(a);a.h=l}function H(a){a.Eb=l;a.va();a.t("play",a.xc);a.t("pause",a.va)}t.xc=function(){this.fc&&this.va();this.fc=setInterval(u.bind(this,function(){this.k("timeupdate")}),250)};t.va=function(){clearInterval(this.fc)};
45
+ t.Vc=function(){this.f.loop&&(this.currentTime(0),this.play())};t.Jb=function(){u.w(this.b,"vjs-paused");u.p(this.b,"vjs-playing")};t.Wc=function(){this.f.starttime&&this.currentTime(this.f.starttime)};t.Ib=function(){u.w(this.b,"vjs-playing");u.p(this.b,"vjs-paused")};t.Yc=function(){1==G(this)&&this.k("loadedalldata")};t.Uc=function(){this.duration(I(this,"duration"))};t.Fb=function(a){u.log("Video Error",a)};t.Xc=function(){this.F?this.p("vjs-fullscreen"):this.w("vjs-fullscreen")};
46
+ function J(a,c,d){if(a.h&&a.h.$)a.h.M(function(){this[c](d)});else try{a.h[c](d)}catch(e){throw u.log(e),e;}}function I(a,c){if(a.h.$)try{return a.h[c]()}catch(d){throw a.h[c]===b?u.log("Video.js: "+c+" method not defined for "+a.ba+" playback technology.",d):"TypeError"==d.name?(u.log("Video.js: "+c+" unavailable on "+a.ba+" playback technology element.",d),a.h.$=l):u.log(d),d;}}t.play=function(){J(this,"play");return this};t.pause=function(){J(this,"pause");return this};
47
+ t.paused=function(){return I(this,"paused")===l?l:f};t.currentTime=function(a){return a!==b?(this.r.vd=a,J(this,"setCurrentTime",a),this.Eb&&this.k("timeupdate"),this):this.r.currentTime=I(this,"currentTime")||0};t.duration=function(a){return a!==b?(this.r.duration=parseFloat(a),this):this.r.duration};t.buffered=function(){var a=I(this,"buffered"),c=this.r.nb=this.r.nb||0;a&&(0<a.length&&a.end(0)!==c)&&(c=a.end(0),this.r.nb=c);return u.tb(0,c)};
48
+ function G(a){return a.duration()?a.buffered().end(0)/a.duration():0}t.volume=function(a){if(a!==b)return a=Math.max(0,Math.min(1,parseFloat(a))),this.r.volume=a,J(this,"setVolume",a),u.dd(a),this;a=parseFloat(I(this,"volume"));return isNaN(a)?1:a};t.muted=function(a){return a!==b?(J(this,"setMuted",a),this):I(this,"muted")||l};t.Sa=function(){return I(this,"supportsFullScreen")||l};
49
+ t.Ra=function(){var a=u.Nb.Ra;this.F=f;a?(u.d(document,a.Z,u.bind(this,function(){this.F=document[a.F];this.F===l&&u.t(document,a.Z,arguments.callee)})),this.h.j.Ia===l&&this.f.flash.iFrameMode!==f&&(this.pause(),F(this),u.d(document,a.Z,u.bind(this,function(){u.t(document,a.Z,arguments.callee);E(this,this.ba,{src:this.r.src})}))),this.b[a.tc](),this.k("fullscreenchange")):this.h.Sa()?J(this,"enterFullScreen"):(this.Qc=f,this.Lc=document.documentElement.style.overflow,u.d(document,"keydown",u.bind(this,
50
+ this.ic)),document.documentElement.style.overflow="hidden",u.p(document.body,"vjs-full-window"),this.k("enterFullWindow"),this.k("fullscreenchange"));return this};function K(a){var c=u.Nb.Ra;a.F=l;c?(a.h.j.Ia===l&&a.f.flash.iFrameMode!==f&&(a.pause(),F(a),u.d(document,c.Z,u.bind(a,function(){u.t(document,c.Z,arguments.callee);E(this,this.ba,{src:this.r.src})}))),document[c.pb](),a.k("fullscreenchange")):a.h.Sa()?J(a,"exitFullScreen"):(L(a),a.k("fullscreenchange"))}
51
+ t.ic=function(a){27===a.keyCode&&(this.F===f?K(this):L(this))};function L(a){a.Qc=l;u.t(document,"keydown",a.ic);document.documentElement.style.overflow=a.Lc;u.w(document.body,"vjs-full-window");a.k("exitFullWindow")}
52
+ t.src=function(a){if(a instanceof Array){var c;a:{c=a;for(var d=0,e=this.f.techOrder;d<e.length;d++){var g=u.Y(e[d]),j=window.videojs[g];if(j.isSupported())for(var k=0,q=c;k<q.length;k++){var n=q[k];if(j.canPlaySource(n)){c={source:n,h:g};break a}}}c=l}c?(a=c.source,c=c.h,c==this.ba?this.src(a):E(this,c,a)):this.b.appendChild(u.e("p",{innerHTML:'Sorry, no compatible source and playback technology were found for this video. Try using another browser like <a href="http://bit.ly/ccMUEC">Chrome</a> or download the latest <a href="http://adobe.ly/mwfN1">Adobe Flash Player</a>.'}))}else a instanceof
53
+ Object?window.videojs[this.ba].canPlaySource(a)?this.src(a.src):this.src([a]):(this.r.src=a,this.$?(J(this,"src",a),"auto"==this.f.preload&&this.load(),this.f.autoplay&&this.play()):this.M(function(){this.src(a)}));return this};t.load=function(){J(this,"load");return this};t.currentSrc=function(){return I(this,"currentSrc")||this.r.src||""};t.Oa=function(a){return a!==b?(J(this,"setPreload",a),this.f.preload=a,this):I(this,"preload")};
54
+ t.autoplay=function(a){return a!==b?(J(this,"setAutoplay",a),this.f.autoplay=a,this):I(this,"autoplay")};t.loop=function(a){return a!==b?(J(this,"setLoop",a),this.f.loop=a,this):I(this,"loop")};t.poster=function(a){a!==b&&(this.rc=a);return this.rc};t.controls=function(a){a!==b&&this.Ea!==a&&(this.Ea=!!a,this.k("controlschange"));return this.Ea};t.error=function(){return I(this,"error")};var M,N,O;O=document.createElement("div");N={};
55
+ O.rd!==b?(N.tc="requestFullscreen",N.pb="exitFullscreen",N.Z="fullscreenchange",N.F="fullScreen"):(document.mozCancelFullScreen?(M="moz",N.F=M+"FullScreen"):(M="webkit",N.F=M+"IsFullScreen"),O[M+"RequestFullScreen"]&&(N.tc=M+"RequestFullScreen",N.pb=M+"CancelFullScreen"),N.Z=M+"fullscreenchange");document[N.pb]&&(u.Nb.Ra=N);
56
+ u.da=u.c.extend({g:function(a,c){u.c.call(this,a,c);a.controls()||this.disable();a.Q("play",u.bind(this,function(){var a,c=u.bind(this,this.ja),g=u.bind(this,this.Ga);this.ja();"ontouchstart"in window||(this.a.d("mouseover",c),this.a.d("mouseout",g),this.a.d("pause",u.bind(this,this.oc)),this.a.d("play",u.bind(this,this.Ua)));a=l;this.a.d("touchstart",function(){a=f});this.a.d("touchmove",function(){a=l});this.a.d("touchend",u.bind(this,function(c){var e;a&&(e=this.s().className.search("fade-in"),
57
+ -1!==e?this.Ga():this.ja());a=l;this.a.paused()||c.preventDefault()}))}))}});u.da.prototype.f={wd:"play",children:{playToggle:{},currentTimeDisplay:{},timeDivider:{},durationDisplay:{},remainingTimeDisplay:{},progressControl:{},fullscreenToggle:{},volumeControl:{},muteToggle:{}}};u.da.prototype.e=function(){return u.e("div",{className:"vjs-control-bar"})};u.da.prototype.ja=function(){u.c.prototype.ja.call(this);this.a.k("controlsvisible")};
58
+ u.da.prototype.Ga=function(){u.c.prototype.Ga.call(this);this.a.k("controlshidden")};u.Xb=u.o.extend({g:function(a,c){u.o.call(this,a,c);a.d("play",u.bind(this,this.Jb));a.d("pause",u.bind(this,this.Ib))}});t=u.Xb.prototype;t.pa="Play";t.P=function(){return"vjs-play-control "+u.o.prototype.P.call(this)};t.n=function(){this.a.paused()?this.a.play():this.a.pause()};t.Jb=function(){u.w(this.b,"vjs-paused");u.p(this.b,"vjs-playing");this.b.children[0].children[0].innerHTML="Pause"};
59
+ t.Ib=function(){u.w(this.b,"vjs-playing");u.p(this.b,"vjs-paused");this.b.children[0].children[0].innerHTML="Play"};u.Ya=u.c.extend({g:function(a,c){u.c.call(this,a,c);a.d("timeupdate",u.bind(this,this.ya))}});
60
+ u.Ya.prototype.e=function(){var a=u.c.prototype.e.call(this,"div",{className:"vjs-current-time vjs-time-controls vjs-control"});this.content=u.e("div",{className:"vjs-current-time-display",innerHTML:'<span class="vjs-control-text">Current Time </span>0:00',"aria-live":"off"});a.appendChild(u.e("div").appendChild(this.content));return a};
61
+ u.Ya.prototype.ya=function(){var a=this.a.Mb?this.a.r.currentTime:this.a.currentTime();this.content.innerHTML='<span class="vjs-control-text">Current Time </span>'+u.Ha(a,this.a.duration())};u.Za=u.c.extend({g:function(a,c){u.c.call(this,a,c);a.d("timeupdate",u.bind(this,this.ya))}});
62
+ u.Za.prototype.e=function(){var a=u.c.prototype.e.call(this,"div",{className:"vjs-duration vjs-time-controls vjs-control"});this.content=u.e("div",{className:"vjs-duration-display",innerHTML:'<span class="vjs-control-text">Duration Time </span>0:00',"aria-live":"off"});a.appendChild(u.e("div").appendChild(this.content));return a};u.Za.prototype.ya=function(){this.a.duration()&&(this.content.innerHTML='<span class="vjs-control-text">Duration Time </span>'+u.Ha(this.a.duration()))};
63
+ u.ac=u.c.extend({g:function(a,c){u.c.call(this,a,c)}});u.ac.prototype.e=function(){return u.c.prototype.e.call(this,"div",{className:"vjs-time-divider",innerHTML:"<div><span>/</span></div>"})};u.gb=u.c.extend({g:function(a,c){u.c.call(this,a,c);a.d("timeupdate",u.bind(this,this.ya))}});
64
+ u.gb.prototype.e=function(){var a=u.c.prototype.e.call(this,"div",{className:"vjs-remaining-time vjs-time-controls vjs-control"});this.content=u.e("div",{className:"vjs-remaining-time-display",innerHTML:'<span class="vjs-control-text">Remaining Time </span>-0:00',"aria-live":"off"});a.appendChild(u.e("div").appendChild(this.content));return a};
65
+ u.gb.prototype.ya=function(){this.a.duration()&&this.a.duration()&&(this.content.innerHTML='<span class="vjs-control-text">Remaining Time </span>-'+u.Ha(this.a.duration()-this.a.currentTime()))};u.Aa=u.o.extend({g:function(a,c){u.o.call(this,a,c)}});u.Aa.prototype.pa="Fullscreen";u.Aa.prototype.P=function(){return"vjs-fullscreen-control "+u.o.prototype.P.call(this)};
66
+ u.Aa.prototype.n=function(){this.a.F?(K(this.a),this.b.children[0].children[0].innerHTML="Fullscreen"):(this.a.Ra(),this.b.children[0].children[0].innerHTML="Non-Fullscreen")};u.fb=u.c.extend({g:function(a,c){u.c.call(this,a,c)}});u.fb.prototype.f={children:{seekBar:{}}};u.fb.prototype.e=function(){return u.c.prototype.e.call(this,"div",{className:"vjs-progress-control vjs-control"})};u.Yb=u.J.extend({g:function(a,c){u.J.call(this,a,c);a.d("timeupdate",u.bind(this,this.xa));a.M(u.bind(this,this.xa))}});
67
+ t=u.Yb.prototype;t.f={children:{loadProgressBar:{},playProgressBar:{},seekHandle:{}},barName:"playProgressBar",handleName:"seekHandle"};t.qc="timeupdate";t.e=function(){return u.J.prototype.e.call(this,"div",{className:"vjs-progress-holder","aria-label":"video progress bar"})};t.xa=function(){var a=this.a.Mb?this.a.r.currentTime:this.a.currentTime();this.b.setAttribute("aria-valuenow",u.round(100*this.xb(),2));this.b.setAttribute("aria-valuetext",u.Ha(a,this.a.duration()))};
68
+ t.xb=function(){return this.a.currentTime()/this.a.duration()};t.Ma=function(a){u.J.prototype.Ma.call(this,a);this.a.Mb=f;this.nd=!this.a.paused();this.a.pause()};t.Gb=function(a){a=B(this,a)*this.a.duration();a==this.a.duration()&&(a-=0.1);this.a.currentTime(a)};t.Hb=function(a){u.J.prototype.Hb.call(this,a);this.a.Mb=l;this.nd&&this.a.play()};t.wc=function(){this.a.currentTime(this.a.currentTime()+5)};t.vc=function(){this.a.currentTime(this.a.currentTime()-5)};
69
+ u.bb=u.c.extend({g:function(a,c){u.c.call(this,a,c);a.d("progress",u.bind(this,this.update))}});u.bb.prototype.e=function(){return u.c.prototype.e.call(this,"div",{className:"vjs-load-progress",innerHTML:'<span class="vjs-control-text">Loaded: 0%</span>'})};u.bb.prototype.update=function(){this.b.style&&(this.b.style.width=u.round(100*G(this.a),2)+"%")};u.Wb=u.c.extend({g:function(a,c){u.c.call(this,a,c)}});
70
+ u.Wb.prototype.e=function(){return u.c.prototype.e.call(this,"div",{className:"vjs-play-progress",innerHTML:'<span class="vjs-control-text">Progress: 0%</span>'})};u.hb=u.ha.extend();u.hb.prototype.defaultValue="00:00";u.hb.prototype.e=function(){return u.ha.prototype.e.call(this,"div",{className:"vjs-seek-handle"})};u.kb=u.c.extend({g:function(a,c){u.c.call(this,a,c);a.h&&(a.h.j&&a.h.j.T===l)&&this.p("vjs-hidden");a.d("loadstart",u.bind(this,function(){a.h.j&&a.h.j.T===l?this.p("vjs-hidden"):this.w("vjs-hidden")}))}});
71
+ u.kb.prototype.f={children:{volumeBar:{}}};u.kb.prototype.e=function(){return u.c.prototype.e.call(this,"div",{className:"vjs-volume-control vjs-control"})};u.jb=u.J.extend({g:function(a,c){u.J.call(this,a,c);a.d("volumechange",u.bind(this,this.xa));a.M(u.bind(this,this.xa));setTimeout(u.bind(this,this.update),0)}});t=u.jb.prototype;t.xa=function(){this.b.setAttribute("aria-valuenow",u.round(100*this.a.volume(),2));this.b.setAttribute("aria-valuetext",u.round(100*this.a.volume(),2)+"%")};
72
+ t.f={children:{volumeLevel:{},volumeHandle:{}},barName:"volumeLevel",handleName:"volumeHandle"};t.qc="volumechange";t.e=function(){return u.J.prototype.e.call(this,"div",{className:"vjs-volume-bar","aria-label":"volume level"})};t.Gb=function(a){this.a.volume(B(this,a))};t.xb=function(){return this.a.muted()?0:this.a.volume()};t.wc=function(){this.a.volume(this.a.volume()+0.1)};t.vc=function(){this.a.volume(this.a.volume()-0.1)};u.bc=u.c.extend({g:function(a,c){u.c.call(this,a,c)}});
73
+ u.bc.prototype.e=function(){return u.c.prototype.e.call(this,"div",{className:"vjs-volume-level",innerHTML:'<span class="vjs-control-text"></span>'})};u.lb=u.ha.extend();u.lb.prototype.defaultValue="00:00";u.lb.prototype.e=function(){return u.ha.prototype.e.call(this,"div",{className:"vjs-volume-handle"})};
74
+ u.fa=u.o.extend({g:function(a,c){u.o.call(this,a,c);a.d("volumechange",u.bind(this,this.update));a.h&&(a.h.j&&a.h.j.T===l)&&this.p("vjs-hidden");a.d("loadstart",u.bind(this,function(){a.h.j&&a.h.j.T===l?this.p("vjs-hidden"):this.w("vjs-hidden")}))}});u.fa.prototype.e=function(){return u.o.prototype.e.call(this,"div",{className:"vjs-mute-control vjs-control",innerHTML:'<div><span class="vjs-control-text">Mute</span></div>'})};u.fa.prototype.n=function(){this.a.muted(this.a.muted()?l:f)};
75
+ u.fa.prototype.update=function(){var a=this.a.volume(),c=3;0===a||this.a.muted()?c=0:0.33>a?c=1:0.67>a&&(c=2);this.a.muted()?"Unmute"!=this.b.children[0].children[0].innerHTML&&(this.b.children[0].children[0].innerHTML="Unmute"):"Mute"!=this.b.children[0].children[0].innerHTML&&(this.b.children[0].children[0].innerHTML="Mute");for(a=0;4>a;a++)u.w(this.b,"vjs-vol-"+a);u.p(this.b,"vjs-vol-"+c)};
76
+ u.Ca=u.ea.extend({g:function(a,c){u.ea.call(this,a,c);a.d("volumechange",u.bind(this,this.update));a.h&&(a.h.j&&a.h.j.T===l)&&this.p("vjs-hidden");a.d("loadstart",u.bind(this,function(){a.h.j&&a.h.j.T===l?this.p("vjs-hidden"):this.w("vjs-hidden")}));this.p("vjs-menu-button")}});u.Ca.prototype.Fa=function(){var a=new u.na(this.a,{Ic:"div"}),c=new u.jb(this.a,u.i.B({md:f},this.f.zd));a.X(c);return a};u.Ca.prototype.n=function(){u.fa.prototype.n.call(this);u.ea.prototype.n.call(this)};
77
+ u.Ca.prototype.e=function(){return u.o.prototype.e.call(this,"div",{className:"vjs-volume-menu-button vjs-menu-button vjs-control",innerHTML:'<div><span class="vjs-control-text">Mute</span></div>'})};u.Ca.prototype.update=u.fa.prototype.update;u.eb=u.o.extend({g:function(a,c){u.o.call(this,a,c);(!a.poster()||!a.controls())&&this.v();a.d("play",u.bind(this,this.v))}});
78
+ u.eb.prototype.e=function(){var a=u.e("div",{className:"vjs-poster",tabIndex:-1}),c=this.a.poster();c&&("backgroundSize"in a.style?a.style.backgroundImage='url("'+c+'")':a.appendChild(u.e("img",{src:c})));return a};u.eb.prototype.n=function(){this.a.play()};
79
+ u.Vb=u.c.extend({g:function(a,c){u.c.call(this,a,c);a.d("canplay",u.bind(this,this.v));a.d("canplaythrough",u.bind(this,this.v));a.d("playing",u.bind(this,this.v));a.d("seeked",u.bind(this,this.v));a.d("seeking",u.bind(this,this.show));a.d("seeked",u.bind(this,this.v));a.d("error",u.bind(this,this.show));a.d("waiting",u.bind(this,this.show))}});u.Vb.prototype.e=function(){return u.c.prototype.e.call(this,"div",{className:"vjs-loading-spinner"})};
80
+ u.Wa=u.o.extend({g:function(a,c){u.o.call(this,a,c);a.controls()||this.v();a.d("play",u.bind(this,this.v))}});u.Wa.prototype.e=function(){return u.o.prototype.e.call(this,"div",{className:"vjs-big-play-button",innerHTML:"<span></span>","aria-label":"play video"})};u.Wa.prototype.n=function(){this.a.play()};u.q=u.c.extend({g:function(a,c,d){u.c.call(this,a,c,d)}});u.q.prototype.n=u.ab?m():function(){this.a.controls()&&(this.a.paused()?this.a.play():this.a.pause())};u.q.prototype.j={T:f,Ia:l,Lb:l,Ob:l};
81
+ u.media={};u.media.Va="play pause paused currentTime setCurrentTime duration buffered volume setVolume muted setMuted width height supportsFullScreen enterFullScreen src load currentSrc preload setPreload autoplay setAutoplay loop setLoop error networkState readyState seeking initialTime startOffsetTime played seekable ended videoTracks audioTracks videoWidth videoHeight textTracks defaultPlaybackRate playbackRate mediaGroup controller controls defaultMuted".split(" ");
82
+ function ea(){var a=u.media.Va[i];return function(){throw Error('The "'+a+"\" method is not available on the playback technology's API");}}for(var i=u.media.Va.length-1;0<=i;i--)u.q.prototype[u.media.Va[i]]=ea();
83
+ u.m=u.q.extend({g:function(a,c,d){this.j.T=u.m.Hc();this.j.Sc=!u.Ub;this.j.Ia=f;u.q.call(this,a,c,d);(c=c.source)&&this.b.currentSrc==c.src?a.k("loadstart"):c&&(this.b.src=c.src);a.M(function(){this.f.autoplay&&this.paused()&&(this.N.poster=h,this.play())});this.d("click",this.n);for(a=u.m.$a.length-1;0<=a;a--)u.d(this.b,u.m.$a[a],u.bind(this.a,this.Nc));this.Ta()}});t=u.m.prototype;t.C=function(){u.q.prototype.C.call(this)};
84
+ t.e=function(){var a=this.a,c=a.N;if(!c||this.j.Sc===l)c?(a.s().removeChild(c),c=c.cloneNode(l)):c=u.e("video",{id:a.id()+"_html5_api",className:"vjs-tech"}),c.player=a,u.yb(c,a.s());for(var d=["autoplay","preload","loop","muted"],e=d.length-1;0<=e;e--){var g=d[e];a.f[g]!==h&&(c[g]=a.f[g])}return c};t.Nc=function(a){this.k(a);a.stopPropagation()};t.play=function(){this.b.play()};t.pause=function(){this.b.pause()};t.paused=function(){return this.b.paused};t.currentTime=function(){return this.b.currentTime};
85
+ t.cd=function(a){try{this.b.currentTime=a}catch(c){u.log(c,"Video is not ready. (Video.js)")}};t.duration=function(){return this.b.duration||0};t.buffered=function(){return this.b.buffered};t.volume=function(){return this.b.volume};t.hd=function(a){this.b.volume=a};t.muted=function(){return this.b.muted};t.fd=function(a){this.b.muted=a};t.width=function(){return this.b.offsetWidth};t.height=function(){return this.b.offsetHeight};
86
+ t.Sa=function(){return"function"==typeof this.b.webkitEnterFullScreen&&(/Android/.test(u.O)||!/Chrome|Mac OS X 10.5/.test(u.O))?f:l};t.src=function(a){this.b.src=a};t.load=function(){this.b.load()};t.currentSrc=function(){return this.b.currentSrc};t.Oa=function(){return this.b.Oa};t.gd=function(a){this.b.Oa=a};t.autoplay=function(){return this.b.autoplay};t.bd=function(a){this.b.autoplay=a};t.loop=function(){return this.b.loop};t.ed=function(a){this.b.loop=a};t.error=function(){return this.b.error};
87
+ u.m.isSupported=function(){return!!document.createElement("video").canPlayType};u.m.ob=function(a){return!!document.createElement("video").canPlayType(a.type)};u.m.Hc=function(){var a=u.ib.volume;u.ib.volume=a/2+0.1;return a!==u.ib.volume};u.m.$a="loadstart suspend abort error emptied stalled loadedmetadata loadeddata canplay canplaythrough playing waiting seeking seeked ended durationchange timeupdate progress play pause ratechange volumechange".split(" ");
88
+ u.ab&&3>u.yc&&(document.createElement("video").constructor.prototype.canPlayType=function(a){return a&&-1!=a.toLowerCase().indexOf("video/mp4")?"maybe":""});
89
+ u.l=u.q.extend({g:function(a,c,d){u.q.call(this,a,c,d);d=c.source;var e=c.parentEl,g=this.b=u.e("div",{id:a.id()+"_temp_flash"}),j=a.id()+"_flash_api";a=a.f;var k=u.i.B({readyFunction:"videojs.Flash.onReady",eventProxyFunction:"videojs.Flash.onEvent",errorEventProxyFunction:"videojs.Flash.onError",autoplay:a.autoplay,preload:a.Oa,loop:a.loop,muted:a.muted},c.flashVars),q=u.i.B({wmode:"opaque",bgcolor:"#000000"},c.params),n=u.i.B({id:j,name:j,"class":"vjs-tech"},c.attributes);d&&(k.src=encodeURIComponent(u.jc(d.src)));
90
+ u.yb(g,e);c.startTime&&this.M(function(){this.load();this.play();this.currentTime(c.startTime)});if(c.iFrameMode===f&&!u.zc){var s=u.e("iframe",{id:j+"_iframe",name:j+"_iframe",className:"vjs-tech",scrolling:"no",marginWidth:0,marginHeight:0,frameBorder:0});k.readyFunction="ready";k.eventProxyFunction="events";k.errorEventProxyFunction="errors";u.d(s,"load",u.bind(this,function(){var a,d=s.contentWindow;a=s.contentDocument?s.contentDocument:s.contentWindow.document;a.write(u.l.kc(c.swf,k,q,n));d.player=
91
+ this.a;d.ready=u.bind(this.a,function(c){c=a.getElementById(c);var d=this.h;d.b=c;u.d(c,"click",d.bind(d.n));u.l.qb(d)});d.events=u.bind(this.a,function(a,c){this&&"flash"===this.ba&&this.k(c)});d.errors=u.bind(this.a,function(a,c){u.log("Flash Error",c)})}));g.parentNode.replaceChild(s,g)}else u.l.Mc(c.swf,g,k,q,n)}});t=u.l.prototype;t.C=function(){u.q.prototype.C.call(this)};t.play=function(){this.b.vjs_play()};t.pause=function(){this.b.vjs_pause()};
92
+ t.src=function(a){a=u.jc(a);this.b.vjs_src(a);if(this.a.autoplay()){var c=this;setTimeout(function(){c.play()},0)}};t.load=function(){this.b.vjs_load()};t.poster=function(){this.b.vjs_getProperty("poster")};t.buffered=function(){return u.tb(0,this.b.vjs_getProperty("buffered"))};t.Sa=r(l);var P=u.l.prototype,Q="preload currentTime defaultPlaybackRate playbackRate autoplay loop mediaGroup controller controls volume muted defaultMuted".split(" "),R="error currentSrc networkState readyState seeking initialTime duration startOffsetTime paused played seekable ended videoTracks audioTracks videoWidth videoHeight textTracks".split(" ");
93
+ function fa(){var a=Q[S],c=a.charAt(0).toUpperCase()+a.slice(1);P["set"+c]=function(c){return this.b.vjs_setProperty(a,c)}}function T(a){P[a]=function(){return this.b.vjs_getProperty(a)}}var S;for(S=0;S<Q.length;S++)T(Q[S]),fa();for(S=0;S<R.length;S++)T(R[S]);u.l.isSupported=function(){return 10<=u.l.version()[0]};u.l.ob=function(a){if(a.type in u.l.Pc)return"maybe"};u.l.Pc={"video/flv":"FLV","video/x-flv":"FLV","video/mp4":"MP4","video/m4v":"MP4"};
94
+ u.l.onReady=function(a){a=u.s(a);var c=a.player||a.parentNode.player,d=c.h;a.player=c;d.b=a;d.d("click",d.n);u.l.qb(d)};u.l.qb=function(a){a.s().vjs_getProperty?a.Ta():setTimeout(function(){u.l.qb(a)},50)};u.l.onEvent=function(a,c){u.s(a).player.k(c)};u.l.onError=function(a,c){u.s(a).player.k("error");u.log("Flash Error",c,a)};
95
+ u.l.version=function(){var a="0,0,0";try{a=(new window.ActiveXObject("ShockwaveFlash.ShockwaveFlash")).GetVariable("$version").replace(/\D+/g,",").match(/^,?(.+),?$/)[1]}catch(c){try{navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin&&(a=(navigator.plugins["Shockwave Flash 2.0"]||navigator.plugins["Shockwave Flash"]).description.replace(/\D+/g,",").match(/^,?(.+),?$/)[1])}catch(d){}}return a.split(",")};
96
+ u.l.Mc=function(a,c,d,e,g){a=u.l.kc(a,d,e,g);a=u.e("div",{innerHTML:a}).childNodes[0];d=c.parentNode;c.parentNode.replaceChild(a,c);var j=d.childNodes[0];setTimeout(function(){j.style.display="block"},1E3)};
97
+ u.l.kc=function(a,c,d,e){var g="",j="",k="";c&&u.i.sa(c,function(a,c){g+=a+"="+c+"&amp;"});d=u.i.B({movie:a,flashvars:g,allowScriptAccess:"always",allowNetworking:"all"},d);u.i.sa(d,function(a,c){j+='<param name="'+a+'" value="'+c+'" />'});e=u.i.B({data:a,width:"100%",height:"100%"},e);u.i.sa(e,function(a,c){k+=a+'="'+c+'" '});return'<object type="application/x-shockwave-flash"'+k+">"+j+"</object>"};
98
+ u.Dc=u.c.extend({g:function(a,c,d){u.c.call(this,a,c,d);if(!a.f.sources||0===a.f.sources.length){c=0;for(d=a.f.techOrder;c<d.length;c++){var e=u.Y(d[c]),g=window.videojs[e];if(g&&g.isSupported()){E(a,e);break}}}else a.src(a.f.sources)}});function U(a){a.wa=a.wa||[];return a.wa}function V(a,c,d){for(var e=a.wa,g=0,j=e.length,k,q;g<j;g++)k=e[g],k.id()===c?(k.show(),q=k):d&&(k.H()==d&&0<k.mode())&&k.disable();(c=q?q.H():d?d:l)&&a.k(c+"trackchange")}
99
+ u.U=u.c.extend({g:function(a,c){u.c.call(this,a,c);this.L=c.id||"vjs_"+c.kind+"_"+c.language+"_"+u.u++;this.uc=c.src;this.Jc=c["default"]||c.dflt;this.kd=c.title;this.ud=c.srclang;this.Rc=c.label;this.ia=[];this.cc=[];this.ka=this.la=0;this.a.d("fullscreenchange",u.bind(this,this.Ec))}});t=u.U.prototype;t.H=p("A");t.src=p("uc");t.ub=p("Jc");t.title=p("kd");t.label=p("Rc");t.readyState=p("la");t.mode=p("ka");t.Ec=function(){this.b.style.fontSize=this.a.F?140*(screen.width/this.a.width())+"%":""};
100
+ t.e=function(){return u.c.prototype.e.call(this,"div",{className:"vjs-"+this.A+" vjs-text-track"})};t.show=function(){W(this);this.ka=2;u.c.prototype.show.call(this)};t.v=function(){W(this);this.ka=1;u.c.prototype.v.call(this)};t.disable=function(){2==this.ka&&this.v();this.a.t("timeupdate",u.bind(this,this.update,this.L));this.a.t("ended",u.bind(this,this.reset,this.L));this.reset();this.a.R.textTrackDisplay.removeChild(this);this.ka=0};
101
+ function W(a){0===a.la&&a.load();0===a.ka&&(a.a.d("timeupdate",u.bind(a,a.update,a.L)),a.a.d("ended",u.bind(a,a.reset,a.L)),("captions"===a.A||"subtitles"===a.A)&&a.a.R.textTrackDisplay.X(a))}t.load=function(){0===this.la&&(this.la=1,u.get(this.uc,u.bind(this,this.Zc),u.bind(this,this.Fb)))};t.Fb=function(a){this.error=a;this.la=3;this.k("error")};
102
+ t.Zc=function(a){var c,d;a=a.split("\n");for(var e="",g=1,j=a.length;g<j;g++)if(e=u.trim(a[g])){-1==e.indexOf("--\x3e")?(c=e,e=u.trim(a[++g])):c=this.ia.length;c={id:c,index:this.ia.length};d=e.split(" --\x3e ");c.startTime=X(d[0]);c.ta=X(d[1]);for(d=[];a[++g]&&(e=u.trim(a[g]));)d.push(e);c.text=d.join("<br/>");this.ia.push(c)}this.la=2;this.k("loaded")};
103
+ function X(a){var c=a.split(":");a=0;var d,e,g;3==c.length?(d=c[0],e=c[1],c=c[2]):(d=0,e=c[0],c=c[1]);c=c.split(/\s+/);c=c.splice(0,1)[0];c=c.split(/\.|,/);g=parseFloat(c[1]);c=c[0];a+=3600*parseFloat(d);a+=60*parseFloat(e);a+=parseFloat(c);g&&(a+=g/1E3);return a}
104
+ t.update=function(){if(0<this.ia.length){var a=this.a.currentTime();if(this.Kb===b||a<this.Kb||this.Ja<=a){var c=this.ia,d=this.a.duration(),e=0,g=l,j=[],k,q,n,s;a>=this.Ja||this.Ja===b?s=this.vb!==b?this.vb:0:(g=f,s=this.Cb!==b?this.Cb:c.length-1);for(;;){n=c[s];if(n.ta<=a)e=Math.max(e,n.ta),n.Da&&(n.Da=l);else if(a<n.startTime){if(d=Math.min(d,n.startTime),n.Da&&(n.Da=l),!g)break}else g?(j.splice(0,0,n),q===b&&(q=s),k=s):(j.push(n),k===b&&(k=s),q=s),d=Math.min(d,n.ta),e=Math.max(e,n.startTime),
105
+ n.Da=f;if(g)if(0===s)break;else s--;else if(s===c.length-1)break;else s++}this.cc=j;this.Ja=d;this.Kb=e;this.vb=k;this.Cb=q;a=this.cc;c="";d=0;for(e=a.length;d<e;d++)c+='<span class="vjs-tt-cue">'+a[d].text+"</span>";this.b.innerHTML=c;this.k("cuechange")}}};t.reset=function(){this.Ja=0;this.Kb=this.a.duration();this.Cb=this.vb=0};u.Rb=u.U.extend();u.Rb.prototype.A="captions";u.Zb=u.U.extend();u.Zb.prototype.A="subtitles";u.Tb=u.U.extend();u.Tb.prototype.A="chapters";
106
+ u.$b=u.c.extend({g:function(a,c,d){u.c.call(this,a,c,d);if(a.f.tracks&&0<a.f.tracks.length){c=this.a;a=a.f.tracks;var e;for(d=0;d<a.length;d++){e=a[d];var g=c,j=e.kind,k=e.label,q=e.language,n=e;e=g.wa=g.wa||[];n=n||{};n.kind=j;n.label=k;n.language=q;j=u.Y(j||"subtitles");g=new window.videojs[j+"Track"](g,n);e.push(g)}}}});u.$b.prototype.e=function(){return u.c.prototype.e.call(this,"div",{className:"vjs-text-track-display"})};
107
+ u.W=u.I.extend({g:function(a,c){var d=this.ca=c.track;c.label=d.label();c.selected=d.ub();u.I.call(this,a,c);this.a.d(d.H()+"trackchange",u.bind(this,this.update))}});u.W.prototype.n=function(){u.I.prototype.n.call(this);V(this.a,this.ca.L,this.ca.H())};u.W.prototype.update=function(){2==this.ca.mode()?this.selected(f):this.selected(l)};u.cb=u.W.extend({g:function(a,c){c.track={H:function(){return c.kind},pc:a,label:function(){return c.kind+" off"},ub:r(l),mode:r(l)};u.W.call(this,a,c);this.selected(f)}});
108
+ u.cb.prototype.n=function(){u.W.prototype.n.call(this);V(this.a,this.ca.L,this.ca.H())};u.cb.prototype.update=function(){for(var a=U(this.a),c=0,d=a.length,e,g=f;c<d;c++)e=a[c],e.H()==this.ca.H()&&2==e.mode()&&(g=l);g?this.selected(f):this.selected(l)};u.V=u.ea.extend({g:function(a,c){u.ea.call(this,a,c);1>=this.G.length&&this.v()}});
109
+ u.V.prototype.sb=function(){var a=[],c;a.push(new u.cb(this.a,{kind:this.A}));for(var d=0;d<U(this.a).length;d++)c=U(this.a)[d],c.H()===this.A&&a.push(new u.W(this.a,{track:c}));return a};u.za=u.V.extend({g:function(a,c,d){u.V.call(this,a,c,d);this.b.setAttribute("aria-label","Captions Menu")}});u.za.prototype.A="captions";u.za.prototype.pa="Captions";u.za.prototype.className="vjs-captions-button";u.Ba=u.V.extend({g:function(a,c,d){u.V.call(this,a,c,d);this.b.setAttribute("aria-label","Subtitles Menu")}});
110
+ u.Ba.prototype.A="subtitles";u.Ba.prototype.pa="Subtitles";u.Ba.prototype.className="vjs-subtitles-button";u.Sb=u.V.extend({g:function(a,c,d){u.V.call(this,a,c,d);this.b.setAttribute("aria-label","Chapters Menu")}});t=u.Sb.prototype;t.A="chapters";t.pa="Chapters";t.className="vjs-chapters-button";t.sb=function(){for(var a=[],c,d=0;d<U(this.a).length;d++)c=U(this.a)[d],c.H()===this.A&&a.push(new u.W(this.a,{track:c}));return a};
111
+ t.Fa=function(){for(var a=U(this.a),c=0,d=a.length,e,g,j=this.G=[];c<d;c++)if(e=a[c],e.H()==this.A&&e.ub()){if(2>e.readyState()){this.sd=e;e.d("loaded",u.bind(this,this.Fa));return}g=e;break}a=this.ua=new u.na(this.a);a.b.appendChild(u.e("li",{className:"vjs-menu-title",innerHTML:u.Y(this.A),jd:-1}));if(g){e=g.ia;for(var k,c=0,d=e.length;c<d;c++)k=e[c],k=new u.Xa(this.a,{track:g,cue:k}),j.push(k),a.X(k)}0<this.G.length&&this.show();return a};
112
+ u.Xa=u.I.extend({g:function(a,c){var d=this.ca=c.track,e=this.cue=c.cue,g=a.currentTime();c.label=e.text;c.selected=e.startTime<=g&&g<e.ta;u.I.call(this,a,c);d.d("cuechange",u.bind(this,this.update))}});u.Xa.prototype.n=function(){u.I.prototype.n.call(this);this.a.currentTime(this.cue.startTime);this.update(this.cue.startTime)};u.Xa.prototype.update=function(){var a=this.cue,c=this.a.currentTime();a.startTime<=c&&c<a.ta?this.selected(f):this.selected(l)};
113
+ u.i.B(u.da.prototype.f.children,{subtitlesButton:{},captionsButton:{},chaptersButton:{}});
114
+ if("undefined"!==typeof window.JSON&&"function"===window.JSON.parse)u.JSON=window.JSON;else{u.JSON={};var Y=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g;u.JSON.parse=function(a,c){function d(a,e){var k,q,n=a[e];if(n&&"object"===typeof n)for(k in n)Object.prototype.hasOwnProperty.call(n,k)&&(q=d(n,k),q!==b?n[k]=q:delete n[k]);return c.call(a,e,n)}var e;a=String(a);Y.lastIndex=0;Y.test(a)&&(a=a.replace(Y,function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)}));
115
+ if(/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return e=eval("("+a+")"),"function"===typeof c?d({"":e},""):e;throw new SyntaxError("JSON.parse(): invalid or malformed JSON data");}}
116
+ u.dc=function(){var a,c,d=document.getElementsByTagName("video");if(d&&0<d.length)for(var e=0,g=d.length;e<g;e++)if((c=d[e])&&c.getAttribute)c.player===b&&(a=c.getAttribute("data-setup"),a!==h&&(a=u.JSON.parse(a||"{}"),v(c,a)));else{u.mb();break}else u.od||u.mb()};u.mb=function(){setTimeout(u.dc,1)};u.Q(window,"load",function(){u.od=f});u.mb();u.$c=function(a,c){u.ga.prototype[a]=c};var Z=this;Z.pd=f;function $(a,c){var d=a.split("."),e=Z;!(d[0]in e)&&e.execScript&&e.execScript("var "+d[0]);for(var g;d.length&&(g=d.shift());)!d.length&&c!==b?e[g]=c:e=e[g]?e[g]:e[g]={}};$("videojs",u);$("_V_",u);$("videojs.options",u.options);$("videojs.cache",u.qa);$("videojs.Component",u.c);u.c.prototype.dispose=u.c.prototype.C;u.c.prototype.createEl=u.c.prototype.e;u.c.prototype.el=u.c.prototype.s;u.c.prototype.addChild=u.c.prototype.X;u.c.prototype.children=u.c.prototype.children;u.c.prototype.on=u.c.prototype.d;u.c.prototype.off=u.c.prototype.t;u.c.prototype.one=u.c.prototype.Q;u.c.prototype.trigger=u.c.prototype.k;u.c.prototype.triggerReady=u.c.prototype.Ta;
117
+ u.c.prototype.show=u.c.prototype.show;u.c.prototype.hide=u.c.prototype.v;u.c.prototype.width=u.c.prototype.width;u.c.prototype.height=u.c.prototype.height;u.c.prototype.dimensions=u.c.prototype.Kc;u.c.prototype.ready=u.c.prototype.M;$("videojs.Player",u.ga);u.ga.prototype.dispose=u.ga.prototype.C;$("videojs.MediaLoader",u.Dc);$("videojs.TextTrackDisplay",u.$b);$("videojs.ControlBar",u.da);$("videojs.Button",u.o);$("videojs.PlayToggle",u.Xb);$("videojs.FullscreenToggle",u.Aa);
118
+ $("videojs.BigPlayButton",u.Wa);$("videojs.LoadingSpinner",u.Vb);$("videojs.CurrentTimeDisplay",u.Ya);$("videojs.DurationDisplay",u.Za);$("videojs.TimeDivider",u.ac);$("videojs.RemainingTimeDisplay",u.gb);$("videojs.Slider",u.J);$("videojs.ProgressControl",u.fb);$("videojs.SeekBar",u.Yb);$("videojs.LoadProgressBar",u.bb);$("videojs.PlayProgressBar",u.Wb);$("videojs.SeekHandle",u.hb);$("videojs.VolumeControl",u.kb);$("videojs.VolumeBar",u.jb);$("videojs.VolumeLevel",u.bc);
119
+ $("videojs.VolumeHandle",u.lb);$("videojs.MuteToggle",u.fa);$("videojs.PosterImage",u.eb);$("videojs.Menu",u.na);$("videojs.MenuItem",u.I);$("videojs.SubtitlesButton",u.Ba);$("videojs.CaptionsButton",u.za);$("videojs.ChaptersButton",u.Sb);$("videojs.MediaTechController",u.q);u.q.prototype.features=u.q.prototype.j;u.q.prototype.j.volumeControl=u.q.prototype.j.T;u.q.prototype.j.fullscreenResize=u.q.prototype.j.Ia;u.q.prototype.j.progressEvents=u.q.prototype.j.Lb;u.q.prototype.j.timeupdateEvents=u.q.prototype.j.Ob;
120
+ $("videojs.Html5",u.m);u.m.Events=u.m.$a;u.m.isSupported=u.m.isSupported;u.m.canPlaySource=u.m.ob;u.m.prototype.setCurrentTime=u.m.prototype.cd;u.m.prototype.setVolume=u.m.prototype.hd;u.m.prototype.setMuted=u.m.prototype.fd;u.m.prototype.setPreload=u.m.prototype.gd;u.m.prototype.setAutoplay=u.m.prototype.bd;u.m.prototype.setLoop=u.m.prototype.ed;$("videojs.Flash",u.l);u.l.isSupported=u.l.isSupported;u.l.canPlaySource=u.l.ob;u.l.onReady=u.l.onReady;$("videojs.TextTrack",u.U);u.U.prototype.label=u.U.prototype.label;
121
+ $("videojs.CaptionsTrack",u.Rb);$("videojs.SubtitlesTrack",u.Zb);$("videojs.ChaptersTrack",u.Tb);$("videojs.autoSetup",u.dc);$("videojs.plugin",u.$c);$("videojs.createTimeRange",u.tb);})();//@ sourceMappingURL=video.js.map
122
 
 
 
123
 
124
+ videojs.options.flash.swf = videojsdata.swf;
 
 
 
 
 
 
 
 
 
 
 
 
 
php/backend.php CHANGED
@@ -3,7 +3,6 @@
3
  * Class containing functions required WordPress administration panels. Metabox on post/page edit views and options section under settings->media.
4
  *
5
  * @author ahoereth
6
- * @version 2013/04/16
7
  * @see ../featured_video_plus.php
8
  * @see featured_video_plus in general.php
9
  * @since 1.0
@@ -64,14 +63,15 @@ class featured_video_plus_backend {
64
  wp_enqueue_script( 'fvp_backend', FVP_URL . 'js/backend.min.js', array( 'jquery','jquery.autosize' ), FVP_VERSION ); // production
65
  //wp_enqueue_script( 'fvp_backend', FVP_URL . 'js/backend.js', array( 'jquery','jquery.autosize'), FVP_VERSION ); // development
66
 
67
- $wp_35 = get_bloginfo('version') >= 3.5 ? true : false;
68
  $upload_dir = wp_upload_dir();
69
  wp_localize_script( 'fvp_backend', 'fvp_backend_data', array(
70
- 'wp_upload_dir' => $upload_dir['baseurl'],
71
- 'loading_gif' => get_admin_url(null,'images/loading.gif'),
72
- 'default_value' => $this->default_value,
73
  'default_value_sec' => $this->default_value_sec,
74
- 'wp_35' => $wp_35
 
75
  ) );
76
  }
77
 
@@ -123,7 +123,8 @@ class featured_video_plus_backend {
123
  printf ('<div class="fvp_warning"><p class="description"><strong>'.__('Outdated WordPress Version', 'featured-video-plus').':</strong>&nbsp'.__('There is WordPress 3.5 out there! The plugin supports older versions way back to 3.1 - but %s is defenitly to old!', 'featured-video-plus').'</p></div>', get_bloginfo('version') );
124
 
125
  // current featured video
126
- echo '<div id="fvp_current_video" style="background: no-repeat center center;">'; //url(\''.get_admin_url(null,'images/loading.gif').'\')
 
127
  if( $has_post_video )
128
  echo get_the_post_video( $post_id, array(256,144) );
129
  echo '</div>'."\n\n";
@@ -134,8 +135,9 @@ class featured_video_plus_backend {
134
  echo '<div class="fvp_input_wrapper" data-title="'.__('Set Featured Video', 'featured-video-plus').'" data-button="'.__('Set featured video', 'featured-video-plus').'" data-target="#fvp_video">'."\n\t";
135
  echo '<textarea class="fvp_input'.$legal.'" id="fvp_video" name="fvp_video" type="text">' . $full . '</textarea>' . "\n\t";
136
  echo '<input type="hidden" class="fvp_mirror" value="'.$full."\" />\n\t";
137
- if( !(get_bloginfo('version') < 3.5) )
138
- echo '<a href="#" class="fvp_video_choose"><span class="fvp_media_icon" style="background-image: url(\''.get_bloginfo('wpurl').'/wp-admin/images/media-button.png\');"></span></a>'."\n";
 
139
  echo "</div>\n";
140
 
141
  $sec = isset($meta['sec']) && !empty($meta['sec']) ? wp_get_attachment_url($meta['sec_id']) : $this->default_value_sec;
@@ -222,7 +224,7 @@ class featured_video_plus_backend {
222
 
223
  if (has_post_video($post['id'])){
224
  $video = get_the_post_video( $post['id'], array(256,144) );
225
- echo json_encode(array( 'typ' => 'updated', 'valid' => $meta['valid'], 'video' => $video, 'img' => $img ));
226
  } else
227
  echo json_encode(array( 'typ' => 'removed', 'valid' => $meta['valid'], 'img' => $img ));
228
  die();
@@ -634,8 +636,10 @@ class featured_video_plus_backend {
634
  }
635
 
636
  if (has_post_video($_POST['id'])){
 
 
637
  $video = get_the_post_video( $_POST['id'] );
638
- echo json_encode(array('success' => 'true', 'html' => $video));
639
  } else{
640
  $image = get_the_post_thumbnail($_POST['id']);
641
  echo json_encode(array('success' => 'false','html' => $image));
3
  * Class containing functions required WordPress administration panels. Metabox on post/page edit views and options section under settings->media.
4
  *
5
  * @author ahoereth
 
6
  * @see ../featured_video_plus.php
7
  * @see featured_video_plus in general.php
8
  * @since 1.0
63
  wp_enqueue_script( 'fvp_backend', FVP_URL . 'js/backend.min.js', array( 'jquery','jquery.autosize' ), FVP_VERSION ); // production
64
  //wp_enqueue_script( 'fvp_backend', FVP_URL . 'js/backend.js', array( 'jquery','jquery.autosize'), FVP_VERSION ); // development
65
 
66
+ $options = get_option('fvp-settings');
67
  $upload_dir = wp_upload_dir();
68
  wp_localize_script( 'fvp_backend', 'fvp_backend_data', array(
69
+ 'wp_upload_dir' => $upload_dir['baseurl'],
70
+ 'loading_gif' => get_admin_url(null,'images/loading.gif'),
71
+ 'default_value' => $this->default_value,
72
  'default_value_sec' => $this->default_value_sec,
73
+ 'wp_35' => get_bloginfo('version') >= 3.5,
74
+ 'videojs' => isset($options['local']['enabled']) && $options['local']['enabled']
75
  ) );
76
  }
77
 
123
  printf ('<div class="fvp_warning"><p class="description"><strong>'.__('Outdated WordPress Version', 'featured-video-plus').':</strong>&nbsp'.__('There is WordPress 3.5 out there! The plugin supports older versions way back to 3.1 - but %s is defenitly to old!', 'featured-video-plus').'</p></div>', get_bloginfo('version') );
124
 
125
  // current featured video
126
+ $hide = $has_post_video ? '' : ' height:0px;';
127
+ echo '<div id="fvp_current_video" style="background: no-repeat center center;'.$hide.'">'; //url(\''.get_admin_url(null,'images/loading.gif').'\')
128
  if( $has_post_video )
129
  echo get_the_post_video( $post_id, array(256,144) );
130
  echo '</div>'."\n\n";
135
  echo '<div class="fvp_input_wrapper" data-title="'.__('Set Featured Video', 'featured-video-plus').'" data-button="'.__('Set featured video', 'featured-video-plus').'" data-target="#fvp_video">'."\n\t";
136
  echo '<textarea class="fvp_input'.$legal.'" id="fvp_video" name="fvp_video" type="text">' . $full . '</textarea>' . "\n\t";
137
  echo '<input type="hidden" class="fvp_mirror" value="'.$full."\" />\n\t";
138
+
139
+ $style = get_bloginfo('version') >= 3.5 ? 'style="background-image: url(\''.get_bloginfo('wpurl').'/wp-admin/images/media-button.png\');"': '';
140
+ echo '<a href="#" class="fvp_video_choose"><span class="fvp_media_icon"'.$style.'></span></a>'."\n";
141
  echo "</div>\n";
142
 
143
  $sec = isset($meta['sec']) && !empty($meta['sec']) ? wp_get_attachment_url($meta['sec_id']) : $this->default_value_sec;
224
 
225
  if (has_post_video($post['id'])){
226
  $video = get_the_post_video( $post['id'], array(256,144) );
227
+ echo json_encode(array( 'typ' => 'updated', 'valid' => $meta['valid'], 'video' => $video, 'img' => $img, 'prov' => $meta['prov'], 'id' => $meta['id'] ));
228
  } else
229
  echo json_encode(array( 'typ' => 'removed', 'valid' => $meta['valid'], 'img' => $img ));
230
  die();
636
  }
637
 
638
  if (has_post_video($_POST['id'])){
639
+ $meta = get_post_meta($_POST['id'], '_fvp_video', true);
640
+
641
  $video = get_the_post_video( $_POST['id'] );
642
+ echo json_encode(array('success' => 'true', 'html' => $video, 'id' => $meta['id']));
643
  } else{
644
  $image = get_the_post_thumbnail($_POST['id']);
645
  echo json_encode(array('success' => 'false','html' => $image));
php/frontend.php CHANGED
@@ -35,28 +35,34 @@ class featured_video_plus_frontend {
35
  public function enqueue() {
36
  $options = get_option('fvp-settings');
37
 
 
 
38
  wp_enqueue_script('jquery');
39
 
40
- if ($options['sizing']['wmode'] == 'auto' && $options['usage']!='overlay')
41
  wp_enqueue_script('jquery.fitvids', FVP_URL . 'js/jquery.fitvids.min.js', array( 'jquery' ), FVP_VERSION, false ); // production
42
  //wp_enqueue_script('fvp_fitvids', FVP_URL . 'js/jquery.fitvids.js', array( 'jquery' ), FVP_VERSION, false ); // development
 
 
43
 
44
- if ($options['usage']=='overlay')
45
  wp_enqueue_script( 'jquery.domwindow', FVP_URL . 'js/jquery.domwindow.min.js', array( 'jquery' ), FVP_VERSION ); // production
46
  //wp_enqueue_script( 'jquery.domwindow', FVP_URL . 'js/jquery.domwindow.js', array( 'jquery' ), FVP_VERSION ); // development
 
 
 
 
47
 
48
- wp_enqueue_script( 'fvp_frontend', FVP_URL . 'js/frontend.min.js', array( 'jquery' ), FVP_VERSION ); // production
49
  //wp_enqueue_script( 'fvp_frontend', FVP_URL . 'js/frontend.js', array( 'jquery' ), FVP_VERSION ); // development
50
 
51
  wp_localize_script( 'fvp_frontend', 'fvpdata', array(
52
  'ajaxurl' => admin_url( 'admin-ajax.php' ),
53
  'nonce' => wp_create_nonce( 'featured-video-plus-nonce' ),
54
- 'fitvids' => isset($options['sizing']['wmode']) &&
55
- $options['sizing']['wmode']=='auto' ? 1 : 0,
56
- 'dynamic' => isset($options['usage']) &&
57
- $options['usage']=='dynamic' ? 1 : 0,
58
- 'overlay' => isset($options['usage']) &&
59
- $options['usage']=='overlay' ? 1 : 0,
60
  'opacity' => '75',
61
  'loadingw'=> FVP_URL . 'css/loading_w.gif',
62
  'loadingb'=> FVP_URL . 'css/loading_b.gif'
@@ -94,7 +100,7 @@ class featured_video_plus_frontend {
94
  return '<a href="#fvp_'.$post_id.'" class="fvp_overlay" onclick="return false;">'.$html.'</a><div id="fvp_'.$post_id.'" style="display: none;"></div>';
95
 
96
  else//if ($options['usage']=='dynamic')
97
- return '<a href="#fvp_'.$post_id.'" class="fvp_dynamic" onclick="fvp_dynamic('.$post_id.');return false;">'.$html.'</a>';
98
 
99
  }
100
 
35
  public function enqueue() {
36
  $options = get_option('fvp-settings');
37
 
38
+ $deps = array('jquery');
39
+
40
  wp_enqueue_script('jquery');
41
 
42
+ if ($options['sizing']['wmode'] == 'auto' && $options['usage']!='overlay') {
43
  wp_enqueue_script('jquery.fitvids', FVP_URL . 'js/jquery.fitvids.min.js', array( 'jquery' ), FVP_VERSION, false ); // production
44
  //wp_enqueue_script('fvp_fitvids', FVP_URL . 'js/jquery.fitvids.js', array( 'jquery' ), FVP_VERSION, false ); // development
45
+ $deps[] = 'jquery.fitvids';
46
+ }
47
 
48
+ if ($options['usage']=='overlay') {
49
  wp_enqueue_script( 'jquery.domwindow', FVP_URL . 'js/jquery.domwindow.min.js', array( 'jquery' ), FVP_VERSION ); // production
50
  //wp_enqueue_script( 'jquery.domwindow', FVP_URL . 'js/jquery.domwindow.js', array( 'jquery' ), FVP_VERSION ); // development
51
+ $deps[] = 'jquery.domwindow';
52
+ }
53
+
54
+ $deps[] = 'videojs';
55
 
56
+ wp_enqueue_script( 'fvp_frontend', FVP_URL . 'js/frontend.min.js', $deps, FVP_VERSION ); // production
57
  //wp_enqueue_script( 'fvp_frontend', FVP_URL . 'js/frontend.js', array( 'jquery' ), FVP_VERSION ); // development
58
 
59
  wp_localize_script( 'fvp_frontend', 'fvpdata', array(
60
  'ajaxurl' => admin_url( 'admin-ajax.php' ),
61
  'nonce' => wp_create_nonce( 'featured-video-plus-nonce' ),
62
+ 'fitvids' => isset($options['sizing']['wmode']) && $options['sizing']['wmode']=='auto',
63
+ 'dynamic' => isset($options['usage']) && $options['usage']=='dynamic',
64
+ 'overlay' => isset($options['usage']) && $options['usage']=='overlay',
65
+ 'videojs' => isset($options['local']['enabled']) && $options['local']['enabled'],
 
 
66
  'opacity' => '75',
67
  'loadingw'=> FVP_URL . 'css/loading_w.gif',
68
  'loadingb'=> FVP_URL . 'css/loading_b.gif'
100
  return '<a href="#fvp_'.$post_id.'" class="fvp_overlay" onclick="return false;">'.$html.'</a><div id="fvp_'.$post_id.'" style="display: none;"></div>';
101
 
102
  else//if ($options['usage']=='dynamic')
103
+ return '<a href="#fvp_'.$post_id.'" id="fvp_'.$post_id.'" class="fvp_dynamic" onclick="fvp_dynamic('.$post_id.');return false;">'.$html.'</a>';
104
 
105
  }
106
 
php/general.php CHANGED
@@ -3,7 +3,6 @@
3
  * Class containing all functions needed on front- AND backend. Functions only needed on one of those are found in distinct classes.
4
  *
5
  * @author ahoereth
6
- * @version 2013/04/16
7
  * @see ../featured_video_plus.php
8
  * @see featured_video_plus_backend in backend.php
9
  * @see featured_video_plus_frontend in frontend.php
@@ -11,6 +10,12 @@
11
  */
12
  class featured_video_plus {
13
 
 
 
 
 
 
 
14
  /**
15
  * Enqueue all scripts and styles needed when viewing the frontend and backend.
16
  *
@@ -23,17 +28,38 @@ class featured_video_plus {
23
  $options = get_option( 'fvp-settings' );
24
 
25
  // http://videojs.com/
26
- if( $options['local']['videojs']['js'] )
27
- if( $options['local']['videojs']['cdn'] )
28
- wp_enqueue_script( 'videojs', 'http://vjs.zencdn.net/c/video.js', array(), FVP_VERSION, false );
29
- else wp_enqueue_script( 'videojs', FVP_URL . 'js/videojs.min.js', array(), FVP_VERSION, false );
30
- if( $options['local']['videojs']['css'] )
31
- if( $options['local']['videojs']['cdn'] )
32
- wp_enqueue_style( 'videojs', 'http://vjs.zencdn.net/c/video-js.css', array(), FVP_VERSION, false );
33
- else wp_enqueue_style( 'videojs', FVP_URL . 'css/videojs.min.css', array(), FVP_VERSION, false );
 
 
34
  }
35
  }
36
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
37
  /**
38
  * Returns the featured video html, ready to echo.
39
  *
@@ -56,94 +82,104 @@ class featured_video_plus {
56
  $size = $this->get_size($size);
57
  $size = array( 'width' => $size[0], 'height' => $size[1] );
58
 
59
- $autoplay = '&autoplay=';
60
- if ($options['usage']=='dynamic' && defined('DOING_AJAX') && DOING_AJAX && isset($_POST['action']) && $_POST['action']=='fvp_get_embed')
61
- $autoplay.= '1';
62
- elseif (is_single())
63
- $autoplay.= isset($options['autoplay']) ? $options['autoplay'] : '0';
 
 
 
 
 
 
 
 
 
 
 
 
64
 
65
  $valid = $meta['valid'];
66
 
67
- if ($meta['prov'] == 'local'){
68
- if (isset($options['local']['videojs']['poster']) && $options['local']['videojs']['poster'])
69
- $poster = has_post_thumbnail($post_id) ? ' poster="'.wp_get_attachment_url( get_post_thumbnail_id($post_id) ).'"' : '';
70
- else
71
- $poster = ' poster=""';
 
 
 
 
 
 
 
 
 
 
 
 
 
72
 
73
- $a = wp_get_attachment_url($meta['id']);
74
- $ext = pathinfo( $a, PATHINFO_EXTENSION );
75
- if( $ext != 'mp4' && $ext != 'ogv' && $ext != 'webm' && $ext != 'ogg' )
 
 
 
 
 
 
76
  break;
77
 
78
- $ext = $ext == 'ogv' ? 'ogg' : $ext;
79
- $embed = "\n\t".'<video class="video-js vjs-default-skin" controls preload="auto" width="'.$size['width'].'" height="'.$size['height'].'"'.$poster.' data-setup="{}">';
80
- $embed .= "\n\t\t".'<source src="' . $a . '" type="video/'.$ext.'">';
 
 
81
 
82
- if( isset($meta['sec_id']) && !empty($meta['sec_id']) && $meta['sec_id'] != $meta['id'] ) {
83
- $b = wp_get_attachment_url($meta['sec_id']);
84
- $ext2 = pathinfo( $b, PATHINFO_EXTENSION );
85
- $ext2 = $ext2 == 'ogv' ? 'ogg' : $ext2;
86
- if( $ext2 == 'mp4' || $ext2 == 'ogv' || $ext2 == 'webm' || $ext2 == 'ogg' )
87
- $embed .= "\n\t\t".'<source src="' . $b . '" type="video/'.$ext2.'">';
88
- }
 
 
89
 
90
- $embed .= "\n\t</video>\n";
91
- }else{
92
- switch ($meta['prov']){
93
- case 'vimeo':
94
- if (!$valid) return '';
95
 
96
- $options = get_option( 'fvp-settings' );
97
- $src = 'http://player.vimeo.com/video/'.$meta['id'].'?badge=0&amp;portrait='.$options['vimeo']['portrait'].'&amp;title='.$options['vimeo']['title'].'&amp;byline='.$options['vimeo']['byline'].'&amp;color='.$options['vimeo']['color'].$autoplay;
98
- $embed = "\n\t" . '<iframe src="'.$src.'" width="'.$size['width'].'" height="'.$size['height'].'" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>' . "\n";
99
- break;
 
 
 
100
 
101
- case 'youtube':
102
- $youtube['theme'] = isset($options['youtube']['theme']) ? $options['youtube']['theme'] : 'dark';
103
- $youtube['color'] = isset($options['youtube']['color']) ? $options['youtube']['color'] : 'red';
104
- $youtube['jsapi'] = isset($options['youtube']['jsapi']) ? $options['youtube']['jsapi'] : '0&playerapiid=fvpyt'.$post_id;
105
- $youtube['info'] = isset($options['youtube']['info']) ? $options['youtube']['info'] : 1;
106
- $youtube['logo'] = isset($options['youtube']['logo']) ? $options['youtube']['logo'] : 1;
107
- $youtube['rel'] = isset($options['youtube']['rel']) ? $options['youtube']['rel'] : 1;
108
- $youtube['fs'] = isset($options['youtube']['fs']) ? $options['youtube']['fs'] : 1;
109
- $youtube['wmode'] = isset($options['youtube']['wmode']) && $options['youtube']['wmode'] != 'auto' ? '&wmode='.$options['youtube']['wmode'] : '';
110
-
111
- //$embed = wp_oembed_get('http://youtu.be/'.$meta['id'], $size);
112
- $src = 'http://www.youtube.com/embed/'.$meta['id'].'?theme='.$youtube['theme'].$youtube['wmode'].'&color='.$youtube['color'].'&showinfo='.$youtube['info'].'&modestbranding='.$youtube['logo'].'&enablejsapi='.$youtube['jsapi'].'&origin='.esc_attr(home_url()).'&rel='.$youtube['rel'].'&fs='.$youtube['fs'].'&start='.$meta['time'].$autoplay;
113
- $embed = "\n\t" . '<iframe width="'.$size['width'].'" height="'.$size['height'].'" src="'.$src.'" type="text/html" frameborder="0" id="fvpyt'.$post_id.'"></iframe>' . "\n";
114
- break;
115
- case 'dailymotion':
116
- $dm['foreground'] = isset($options['dailymotion']['foreground']) ? $options['dailymotion']['foreground'] : 'F7FFFD';
117
- $dm['highlight'] = isset($options['dailymotion']['highlight']) ? $options['dailymotion']['highlight'] : 'FFC300';
118
- $dm['background'] = isset($options['dailymotion']['background']) ? $options['dailymotion']['background'] : '171D1B';
119
- $dm['logo'] = isset($options['dailymotion']['logo']) ? $options['dailymotion']['logo'] : 1;
120
- $dm['hideinfo'] = isset($options['dailymotion']['info']) ? 1-$options['dailymotion']['info'] : 0;
121
- $dm['syndication']= isset($options['dailymotion']['syndication']) ? $options['dailymotion']['syndication']: '';
122
- $dm['synd'] = !empty($dm['syndication']) ? '&syndication='.$dm['syndication'] : '';
123
-
124
- $dm['src'] = 'http://www.dailymotion.com/embed/video/'.$meta['id'].'?logo='.$dm['logo'].'&hideInfos='.$dm['hideinfo'].'&foreground=%23'.$dm['foreground'].'&highlight=%23'.$dm['highlight'].'&background=%23'.$dm['background'].$dm['synd'].'&start='.$meta['time'].$autoplay;
125
- $embed = "\n" . '<iframe width="'.$size['width'].'" height="'.$size['height'].'" src="'.$dm['src'].'" frameborder="0"></iframe>' . "\n";
126
- break;
127
 
128
- case 'liveleak':
129
- $embed = "\n" . '<iframe width="'.$size['width'].'" height="'.$size['height'].'" src="http://www.liveleak.com/ll_embed?f='.$meta['id'].'" frameborder="0" allowfullscreen></iframe>';
130
- break;
131
 
132
- case 'prochan':
133
- $embed = "\n" . '<iframe width="'.$size['width'].'" height="'.$size['height'].'" src="http://www.prochan.com/embed?f='.$meta['id'].'" frameborder="0" allowfullscreen></iframe>';
134
- break;
135
 
136
- /*default:
137
- $embed = wp_oembed_get($meta['url'], $size);
138
- if (!$embed)
139
- return false;
140
- break;*/
141
- }
142
  }
143
 
144
  $containerstyle = isset($options['sizing']['align']) ? ' style="text-align: '.$options['sizing']['align'].'"' : '';
145
  $embed = "<div class=\"featured_video_plus\"{$containerstyle}>{$embed}</div>\n\n";
146
- $embed = "\n\n<!-- Featured Video Plus v".FVP_VERSION."--".$size['width'].$size['height']."-->\n" . $embed;
147
 
148
  return $embed;
149
  }
3
  * Class containing all functions needed on front- AND backend. Functions only needed on one of those are found in distinct classes.
4
  *
5
  * @author ahoereth
 
6
  * @see ../featured_video_plus.php
7
  * @see featured_video_plus_backend in backend.php
8
  * @see featured_video_plus_frontend in frontend.php
10
  */
11
  class featured_video_plus {
12
 
13
+ public function __construct() {
14
+ add_action('wp_head', array( &$this, 'videojs_css') );
15
+ add_action('admin_head-post.php', array( &$this, 'videojs_css') );
16
+ add_action('admin_head-post-new.php', array( &$this, 'videojs_css') );
17
+ }
18
+
19
  /**
20
  * Enqueue all scripts and styles needed when viewing the frontend and backend.
21
  *
28
  $options = get_option( 'fvp-settings' );
29
 
30
  // http://videojs.com/
31
+ if( $options['local']['enabled'] ) {
32
+ if( $options['local']['cdn'] ) {
33
+ wp_enqueue_script( 'videojs', 'http://vjs.zencdn.net/4.0/video.js',array(), FVP_VERSION, false );
34
+ wp_enqueue_style( 'videojs', 'http://vjs.zencdn.net/4.0/video-js.css',array(), FVP_VERSION, false );
35
+ } else {
36
+ wp_enqueue_script( 'videojs', FVP_URL . 'js/videojs.min.js', array(), FVP_VERSION, false );
37
+ wp_enqueue_style( 'videojs', FVP_URL . 'css/videojs.min.css', array(), FVP_VERSION, false );
38
+ wp_localize_script( 'videojs', 'videojsdata', array( 'swf' => FVP_URL . 'js/video-js.swf' ));
39
+ }
40
+ }
41
  }
42
  }
43
 
44
+ public function videojs_css() {
45
+ $options = get_option( 'fvp-settings' );
46
+ extract($options['local']);
47
+ if( ! $enabled )
48
+ return;
49
+
50
+ $r = hexdec(substr($background, 0, 2));
51
+ $g = hexdec(substr($background, 2, 2));
52
+ $b = hexdec(substr($background, 4, 2));
53
+
54
+ $style = "<style type='text/css'>"
55
+ .".vjs-default-skin{color:#$foreground}"
56
+ .".vjs-play-progress,.vjs-volume-level{background-color:#$highlight!important}"
57
+ .".vjs-control-bar,.vjs-big-play-button{background:rgba($r,$g,$b,0.7)!important}"
58
+ .".vjs-slider{background:rgba($r,$g,$b,0.2333)!important}"
59
+ ."</style>\n";
60
+ echo $style;
61
+ }
62
+
63
  /**
64
  * Returns the featured video html, ready to echo.
65
  *
82
  $size = $this->get_size($size);
83
  $size = array( 'width' => $size[0], 'height' => $size[1] );
84
 
85
+ if( ! is_admin() ) {
86
+ switch ( $options['autoplay'] ) {
87
+ case 'yes':
88
+ $autoplay = '1';
89
+ break;
90
+ case 'auto':
91
+ if (( is_single() ) ||
92
+ ( defined('DOING_AJAX') && DOING_AJAX &&
93
+ ( $options['usage'] == 'dynamic' || $options['usage'] == 'overlay')))
94
+ $autoplay = '1';
95
+ case 'no':
96
+ default:
97
+ $autoplay = '0';
98
+ break;
99
+ }
100
+ } else
101
+ $autoplay = '0';
102
 
103
  $valid = $meta['valid'];
104
 
105
+ switch ( $meta['prov'] ) {
106
+ case 'local':
107
+ $a = wp_get_attachment_url($meta['id']);
108
+ $ext = pathinfo( $a, PATHINFO_EXTENSION );
109
+ if( $ext != 'mp4' && $ext != 'ogv' && $ext != 'webm' && $ext != 'ogg' )
110
+ break;
111
+
112
+ $poster = '';
113
+ if (isset($options['local']['videojs']['poster']) && $options['local']['videojs']['poster'])
114
+ $poster = has_post_thumbnail($post_id) ? ' poster="'.wp_get_attachment_url( get_post_thumbnail_id($post_id) ).'"' : '';
115
+ $autoplay = $autoplay == '1' ? ' autoplay' : '';
116
+
117
+ $controls = $options['local']['controls'] ? ' controls' : '';
118
+ $loop = $options['local']['loop'] ? ' loop' : '';
119
+
120
+ $ext = $ext == 'ogv' ? 'ogg' : $ext;
121
+ $embed = "\n\t".'<video id="videojs'.esc_attr($meta['id']).'" class="video-js vjs-default-skin"width="'.$size['width'].'" height="'.$size['height'].'" preload="metadata" data-setup="{}"'.$controls.$loop.$autoplay.$poster.'>';
122
+ $embed .= "\n\t\t".'<source src="' . $a . '" type="video/'.$ext.'">';
123
 
124
+ if( isset($meta['sec_id']) && !empty($meta['sec_id']) && $meta['sec_id'] != $meta['id'] ) {
125
+ $b = wp_get_attachment_url($meta['sec_id']);
126
+ $ext2 = pathinfo( $b, PATHINFO_EXTENSION );
127
+ $ext2 = $ext2 == 'ogv' ? 'ogg' : $ext2;
128
+ if( $ext2 == 'mp4' || $ext2 == 'ogv' || $ext2 == 'webm' || $ext2 == 'ogg' )
129
+ $embed .= "\n\t\t".'<source src="' . $b . '" type="video/'.$ext2.'">';
130
+ }
131
+
132
+ $embed .= "\n\t</video>\n";
133
  break;
134
 
135
+ case 'vimeo':
136
+ $options = get_option( 'fvp-settings' );
137
+ $src = 'http://player.vimeo.com/video/'.$meta['id'].'?badge=0&amp;portrait='.$options['vimeo']['portrait'].'&amp;title='.$options['vimeo']['title'].'&amp;byline='.$options['vimeo']['byline'].'&amp;color='.$options['vimeo']['color'].'&autoplay='.$autoplay;
138
+ $embed = "\n\t" . '<iframe src="'.$src.'" width="'.$size['width'].'" height="'.$size['height'].'" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>' . "\n";
139
+ break;
140
 
141
+ case 'youtube':
142
+ $theme = isset($options['youtube']['theme']) ? $options['youtube']['theme'] : 'dark';
143
+ $color = isset($options['youtube']['color']) ? $options['youtube']['color'] : 'red';
144
+ $jsapi = isset($options['youtube']['jsapi']) ? $options['youtube']['jsapi'] : '0&playerapiid=fvpyt'.$post_id;
145
+ $info = isset($options['youtube']['info']) ? $options['youtube']['info'] : 1;
146
+ $logo = isset($options['youtube']['logo']) ? $options['youtube']['logo'] : 1;
147
+ $rel = isset($options['youtube']['rel']) ? $options['youtube']['rel'] : 1;
148
+ $fs = isset($options['youtube']['fs']) ? $options['youtube']['fs'] : 1;
149
+ $wmode = isset($options['youtube']['wmode'])&& $options['youtube']['wmode'] != 'auto' ? '&wmode='.$options['youtube']['wmode'] : '';
150
 
151
+ $src = 'http://www.youtube.com/embed/'.$meta['id'].'?theme='.$theme.$wmode.'&color='.$color.'&showinfo='.$info.'&modestbranding='.$logo.'&enablejsapi='.$jsapi.'&origin='.esc_attr(home_url()).'&rel='.$rel.'&fs='.$fs.'&start='.$meta['time'].'&autoplay='.$autoplay;
152
+ $embed = "\n\t" . '<iframe width="'.$size['width'].'" height="'.$size['height'].'" src="'.$src.'" type="text/html" frameborder="0" id="fvpyt'.$post_id.'"></iframe>' . "\n";
153
+ break;
 
 
154
 
155
+ case 'dailymotion':
156
+ $foreground = isset($options['dailymotion']['foreground']) ? $options['dailymotion']['foreground'] : 'F7FFFD';
157
+ $highlight = isset($options['dailymotion']['highlight']) ? $options['dailymotion']['highlight'] : 'FFC300';
158
+ $background = isset($options['dailymotion']['background']) ? $options['dailymotion']['background'] : '171D1B';
159
+ $logo = isset($options['dailymotion']['logo']) ? $options['dailymotion']['logo'] : 1;
160
+ $hideinfo = isset($options['dailymotion']['info']) ?1-$options['dailymotion']['info'] : 0;
161
+ $syndication = empty($options['dailymotion']['syndication']) ? '' : '&syndication='.$options['dailymotion']['syndication'];
162
 
163
+ $dm['src'] = 'http://www.dailymotion.com/embed/video/'.$meta['id'].'?logo='.$logo.'&hideInfos='.$hideinfo.'&foreground=%23'.$foreground.'&highlight=%23'.$highlight.'&background=%23'.$background.$syndication.'&start='.$meta['time'].'&autoplay='.$autoplay;
164
+ $embed = "\n" . '<iframe width="'.$size['width'].'" height="'.$size['height'].'" src="'.$dm['src'].'" frameborder="0"></iframe>' . "\n";
165
+ break;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
166
 
167
+ case 'liveleak':
168
+ $embed = "\n" . '<iframe width="'.$size['width'].'" height="'.$size['height'].'" src="http://www.liveleak.com/ll_embed?f='.$meta['id'].'" frameborder="0" allowfullscreen></iframe>';
169
+ break;
170
 
171
+ case 'prochan':
172
+ $embed = "\n" . '<iframe width="'.$size['width'].'" height="'.$size['height'].'" src="http://www.prochan.com/embed?f='.$meta['id'].'" frameborder="0" allowfullscreen></iframe>';
173
+ break;
174
 
175
+ default:
176
+ $embed = wp_oembed_get($meta['full'], $size);
177
+ break;
 
 
 
178
  }
179
 
180
  $containerstyle = isset($options['sizing']['align']) ? ' style="text-align: '.$options['sizing']['align'].'"' : '';
181
  $embed = "<div class=\"featured_video_plus\"{$containerstyle}>{$embed}</div>\n\n";
182
+ $embed = "\n\n<!-- Featured Video Plus v".FVP_VERSION."-->\n" . $embed;
183
 
184
  return $embed;
185
  }
php/settings.php CHANGED
@@ -55,7 +55,7 @@ class featured_video_plus_settings {
55
  */
56
  function settings_usage() {
57
  $options = get_option( 'fvp-settings' );
58
- $usage = isset($options['usage']) ? $options['usage'] : false;
59
  ?>
60
 
61
 
@@ -66,9 +66,8 @@ class featured_video_plus_settings {
66
  <p class="description"><?php printf(__('The first three options require your theme to make use of WordPress\' %sfeatured image%s capabilities.', 'featured-video-plus'),'<a href="http://codex.wordpress.org/Post_Thumbnails" target="_blank">','</a>'); ?></p>
67
 
68
  <?php
69
- $class = $overwrite ? 'fvp_warning ' : 'fvp_notice ';
70
  if( !current_theme_supports('post-thumbnails') )
71
- echo '<p class="'.$class.'description"><span style="font-weight: bold;">'.__('The current theme does not support featured images', 'featured-video-plus').':</span>&nbsp;'.__('To display Featured Videos you need to use the <code>Shortcode</code> or <code>PHP functions</code>.', 'featured-video-plus').'</p>'."\n";
72
 
73
  }
74
 
@@ -80,14 +79,19 @@ if( !current_theme_supports('post-thumbnails') )
80
  */
81
  function settings_autoplay() {
82
  $options = get_option( 'fvp-settings' );
83
- $autoplay = isset($options['autoplay']) ? $options['autoplay'] : 0;
84
  ?>
85
 
86
- <span class="fvp_radio_bumper">
87
- <input type="radio" name="fvp-settings[autoplay]" id="fvp-settings-autoplay-1" value="true" <?php checked( 1, $autoplay ) ?>/><label for="fvp-settings-autoplay-1">&nbsp;<?php _e('yes', 'featured-video-plus'); ?></label>
88
- </span>
89
- <input type="radio" name="fvp-settings[autoplay]" id="fvp-settings-autoplay-2" value="false" <?php checked( 0, $autoplay ) ?>/><label for="fvp-settings-autoplay-2">&nbsp;<?php _e('no', 'featured-video-plus'); ?>&nbsp;<span style="font-style: italic;">(<?php _e('default', 'featured-video-plus'); ?>)</span></label>
90
- <p class="description"><?php _e('YouTube, Vimeo and Dailymotion videos can autoplay when a single post/page is being viewed.', 'featured-video-plus'); ?></p>
 
 
 
 
 
91
 
92
  <?php }
93
 
@@ -154,17 +158,39 @@ if( !current_theme_supports('post-thumbnails') )
154
  */
155
  function settings_local() {
156
  $options = get_option( 'fvp-settings' );
157
- $videojs['js'] = isset($options['local']['videojs']['js']) ? $options['local']['videojs']['js'] : true;
158
- $videojs['css'] = isset($options['local']['videojs']['css']) ? $options['local']['videojs']['css'] : true;
159
- $videojs['cdn'] = isset($options['local']['videojs']['cdn']) ? $options['local']['videojs']['cdn'] : false;
160
- $videojs['poster']= isset($options['local']['videojs']['poster'])? $options['local']['videojs']['poster'] : false; ?>
161
-
162
- VideoJS:&nbsp;
163
- <input type="checkbox" name="fvp-settings[local][videojs][cdn]" id="fvp-settings-local-videojs-cdn" value="true" <?php checked( true, $videojs['cdn'], 1 ) ?>/><label for="fvp-settings-local-videojs-cdn">&nbsp;<?php _e('Use CDN', 'featured-video-plus'); ?></label>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
164
- <input type="checkbox" name="fvp-settings[local][videojs][js]" id="fvp-settings-local-videojs-js" value="true" <?php checked( true, $videojs['js'], 1 ) ?>/><label for="fvp-settings-local-videojs-js">&nbsp;<?php _e('Include JS', 'featured-video-plus'); ?></label>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
165
- <input type="checkbox" name="fvp-settings[local][videojs][css]" id="fvp-settings-local-videojs-css" value="true" <?php checked( true, $videojs['css'], 1 ) ?>/><label for="fvp-settings-local-videojs-css">&nbsp;<?php _e('Include CSS', 'featured-video-plus'); ?></label><br />
166
- <p class="description"><?php _e('Disabling JS and/or CSS will break the local video player. Disable only when you want to replace VideoJS with a different script and know what you are doing.', 'featured-video-plus'); ?></p>
167
- <input type="checkbox" name="fvp-settings[local][videojs][poster]" id="fvp-settings-local-videojs-poster" value="true" <?php checked( true, $videojs['poster'], 1 ) ?>/><label for="fvp-settings-local-videojs-poster">&nbsp;<?php _e('Use featured image as video thumbnail', 'featured-video-plus'); ?></label>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
168
 
169
  <?php }
170
 
@@ -322,13 +348,21 @@ VideoJS:&nbsp;
322
  $options['align' ] = isset($input['align']) ? $input['align'] : 'center';
323
 
324
  // Autoplay
325
- $options['autoplay'] = isset($input['autoplay']) && $input['autoplay'] == 'true' ? 1 : 0;
326
 
327
  // Local
328
- $options['local']['videojs']['js'] = isset( $input['local']['videojs']['js'] ) ? true : false;
329
- $options['local']['videojs']['css'] = isset( $input['local']['videojs']['css'] ) ? true : false;
330
- $options['local']['videojs']['cdn'] = isset( $input['local']['videojs']['cdn'] ) ? true : false;
331
- $options['local']['videojs']['poster']= isset( $input['local']['videojs']['poster'] ) ? true : false;
 
 
 
 
 
 
 
 
332
 
333
  // YouTube
334
  $options['youtube']['theme'] = isset($input['youtube']['theme']) && ( $input['youtube']['theme'] == 'light') ? 'light' : 'dark';
55
  */
56
  function settings_usage() {
57
  $options = get_option( 'fvp-settings' );
58
+ $usage = isset($options['usage']) ? $options['usage'] : 'replace';
59
  ?>
60
 
61
 
66
  <p class="description"><?php printf(__('The first three options require your theme to make use of WordPress\' %sfeatured image%s capabilities.', 'featured-video-plus'),'<a href="http://codex.wordpress.org/Post_Thumbnails" target="_blank">','</a>'); ?></p>
67
 
68
  <?php
 
69
  if( !current_theme_supports('post-thumbnails') )
70
+ echo '<p class="fvp_warning description"><span style="font-weight: bold;">'.__('The current theme does not support featured images', 'featured-video-plus').':</span>&nbsp;'.__('To display Featured Videos you need to use the <code>Shortcode</code> or <code>PHP functions</code>.', 'featured-video-plus').'</p>'."\n";
71
 
72
  }
73
 
79
  */
80
  function settings_autoplay() {
81
  $options = get_option( 'fvp-settings' );
82
+ $autoplay = isset($options['autoplay']) ? $options['autoplay'] : 'no';
83
  ?>
84
 
85
+ <input type="radio" name="fvp-settings[autoplay]" id="fvp-settings-autoplay-1" value="yes" <?php checked( 'yes', $autoplay ) ?>/>
86
+ <label for="fvp-settings-autoplay-1">&nbsp;<?php _e('yes', 'featured-video-plus'); ?></label>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
87
+ <input type="radio" name="fvp-settings[autoplay]" id="fvp-settings-autoplay-2" value="auto" <?php checked( 'auto', $autoplay ) ?>/>
88
+ <label for="fvp-settings-autoplay-2">&nbsp;<?php _e('auto', 'featured-video-plus'); ?></label>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
89
+ <input type="radio" name="fvp-settings[autoplay]" id="fvp-settings-autoplay-3" value="no" <?php checked( 'no', $autoplay ) ?>/>
90
+ <label for="fvp-settings-autoplay-2">&nbsp;<?php _e('no', 'featured-video-plus'); ?>&nbsp;<span style="font-style: italic;">(<?php _e('default', 'featured-video-plus'); ?>)</span></label>
91
+
92
+ <p class="description"><?php printf(__('%1$syes%2$s is only relevant with manual usage or usage set to default. %1$sauto%2$s behaves differently depending on the usage case (set-able above):', 'featured-video-plus'),'<code>','</code>'); ?><br />
93
+ <?php _e( 'Autoplay when only a single post is being displayed, the video overlay is opened or the featured image is dynamically replaced with the featured video.', 'featured-video-plus' ); ?></li>
94
+ </p>
95
 
96
  <?php }
97
 
158
  */
159
  function settings_local() {
160
  $options = get_option( 'fvp-settings' );
161
+ $local['enabled'] = isset($options['local']['enabled']) ? $options['local']['enabled'] : true;
162
+ $local['cdn'] = isset($options['local']['cdn']) ? $options['local']['cdn'] : false;
163
+ $local['poster'] = isset($options['local']['poster']) ? $options['local']['poster'] : false;
164
+ $local['loop'] = isset($options['local']['loop']) ? $options['local']['loop'] : false;
165
+ $local['controls'] = isset($options['local']['controls'])? $options['local']['controls']: true;
166
+ $local['foreground']= isset($options['local']['foreground'])? $options['local']['foreground'] : 'cccccc';
167
+ $local['highlight' ]= isset($options['local']['highlight' ])? $options['local']['highlight' ] : '66a8cc';
168
+ $local['background']= isset($options['local']['background'])? $options['local']['background'] : '000000'; ?>
169
+
170
+ <input type="checkbox" name="fvp-settings[local][enabled]" id="fvp-settings-local-enabled" value="true" <?php checked( true, $local['enabled'], 1 ) ?>/><label for="fvp-settings-local-enabled">&nbsp;<?php _e('Enable', 'featured-video-plus'); ?></label>&nbsp;<a href="http://www.videojs.com/" target="_blank">Video.js</a>
171
+ <div id="fvp-settings-local-box"<?php if( !$local['enabled'] ) echo ' style="display: none;"'; ?>>
172
+ <input type="checkbox" name="fvp-settings[local][cdn]" id="fvp-settings-local-cdn" value="true" <?php checked( true, $local['cdn'], 1 ) ?>/><label for="fvp-settings-local-cdn">&nbsp;<?php _e('Use CDN', 'featured-video-plus'); ?></label>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
173
+ <input type="checkbox" name="fvp-settings[local][poster]" id="fvp-settings-local-poster" value="true" <?php checked( true, $local['poster'], 1 ) ?>/><label for="fvp-settings-local-poster">&nbsp;<?php _e('Use featured image as video thumbnail', 'featured-video-plus'); ?></label>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
174
+ <input type="checkbox" name="fvp-settings[local][loop]" id="fvp-settings-local-loop" value="true" <?php checked( true, $local['loop'], 1 ) ?>/><label for="fvp-settings-local-loop">&nbsp;<?php _e('Loop videos', 'featured-video-plus'); ?></label>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
175
+ <input type="checkbox" name="fvp-settings[local][controls]" id="fvp-settings-local-controls" value="true" <?php checked( true, $local['controls'],1 ) ?>/><label for="fvp-settings-local-controls">&nbsp;<?php _e('Show controls', 'featured-video-plus'); ?></label>
176
+ <div id="fvp-settings-local-box2"<?php if( !$local['controls'] ) echo ' style="display: none;"'; ?>>
177
+ <span class="color-picker" style="position: relative;<?php if( wp_style_is( 'wp-color-picker', 'done' ) ) echo ' top: .6em;'; ?>" >
178
+ <input type="text" name="fvp-settings[local][foreground]" id="fvp-settings-local-foreground" class="fvp_colorpicker_input" value="#<?php echo $local['foreground'] ?>" data-default-color="#cccccc" />
179
+ <label for="fvp-settings-local-foreground" style="display: none;">&nbsp;<?php _e('Foreground', 'featured-video-plus'); ?></label>
180
+ <?php if( !wp_style_is('wp-color-picker', 'registered' ) ) { ?><div class="fvp_colorpicker" id="fvp-settings-local-foreground-colorpicker"></div><?php } ?>
181
+ </span>
182
+ <span class="color-picker" style="position: relative;<?php if( wp_style_is( 'wp-color-picker', 'done' ) ) echo ' top: .6em;'; ?>" >
183
+ <input type="text" name="fvp-settings[local][highlight]" id="fvp-settings-local-highlight" class="fvp_colorpicker_input" value="#<?php echo $local['highlight'] ?>" data-default-color="#66a8cc" />
184
+ <label for="fvp-settings-local-highlight" style="display: none;">&nbsp;<?php _e('Highlight', 'featured-video-plus'); ?></label>
185
+ <?php if( !wp_style_is('wp-color-picker', 'registered' ) ) { ?><div class="fvp_colorpicker" id="fvp-settings-local-highlight-colorpicker"></div><?php } ?>
186
+ </span>
187
+ <span class="color-picker" style="position: relative;<?php if( wp_style_is( 'wp-color-picker', 'done' ) ) echo ' top: .6em;'; ?>" >
188
+ <input type="text" name="fvp-settings[local][background]" id="fvp-settings-local-background" class="fvp_colorpicker_input" value="#<?php echo $local['background'] ?>" data-default-color="#000000" />
189
+ <label for="fvp-settings-local-background" style="display: none;">&nbsp;<?php _e('Background', 'featured-video-plus'); ?></label>
190
+ <?php if( !wp_style_is('wp-color-picker', 'registered' ) ) { ?><div class="fvp_colorpicker" id="fvp-settings-local-background-colorpicker"></div><?php } ?>
191
+ </span>
192
+ </div>
193
+ </div>
194
 
195
  <?php }
196
 
348
  $options['align' ] = isset($input['align']) ? $input['align'] : 'center';
349
 
350
  // Autoplay
351
+ $options['autoplay'] = isset( $input['autoplay'] ) ? $input['autoplay'] : 'no'; //yes/auto/no
352
 
353
  // Local
354
+ $options['local']['enabled'] = isset( $input['local']['enabled'] ) ? true : false;
355
+ $options['local']['cdn'] = isset( $input['local']['cdn'] ) ? true : false;
356
+ $options['local']['poster'] = isset( $input['local']['poster'] ) ? true : false;
357
+ $options['local']['controls'] = isset( $input['local']['controls'] ) ? true : false;
358
+ $options['local']['loop'] = isset( $input['local']['loop'] ) ? true : false;
359
+
360
+ if( isset($options['local']['foreground']) ) preg_match($hexcolor, $input['local']['foreground'], $local_foreground);
361
+ if( isset($options['local']['highlight']) ) preg_match($hexcolor, $input['local']['highlight'], $local_highlight);
362
+ if( isset($options['local']['background']) ) preg_match($hexcolor, $input['local']['background'], $local_background);
363
+ $options['local']['foreground'] = isset($local_foreground[1]) && !empty($local_foreground[1])? $local_foreground[1] : 'cccccc';
364
+ $options['local']['highlight'] = isset($local_highlight[ 1]) && !empty($local_highlight[ 1])? $local_highlight[ 1] : '66a8cc';
365
+ $options['local']['background'] = isset($local_background[1]) && !empty($local_background[1])? $local_background[1] : '000000';
366
 
367
  // YouTube
368
  $options['youtube']['theme'] = isset($input['youtube']['theme']) && ( $input['youtube']['theme'] == 'light') ? 'light' : 'dark';
php/upgrade.php CHANGED
@@ -17,8 +17,6 @@ function featured_video_plus_upgrade() {
17
  if( $version != FVP_VERSION ) {
18
  switch( $version ) {
19
  case '0':
20
- $notice = 'initial_activation';
21
-
22
  $options = array(
23
  'overwrite' => true,
24
  'width' => 'auto',
@@ -34,8 +32,6 @@ function featured_video_plus_upgrade() {
34
 
35
  case '1.0':
36
  case '1.1':
37
- $notice = isset($notice) ? $notice : 'upgrade_11';
38
-
39
  if( $version == '1.0' || $version == '1.1' ) {
40
  // removed this user meta in 1.2
41
  $users = array_merge( get_users( array( 'role' => 'Administrator' ) ),
@@ -46,8 +42,6 @@ function featured_video_plus_upgrade() {
46
 
47
 
48
  case '1.2':
49
- $notice = isset($notice) ? $notice : 'upgrade_12';
50
-
51
  $options['videojs'] = array(
52
  'skin' => 'videojs' //videojs,moonfy,tubejs
53
  );
@@ -74,9 +68,8 @@ function featured_video_plus_upgrade() {
74
  );
75
  unset( $options['width'], $options['height'] );
76
 
77
- case '1.3':
78
- $notice = isset($notice) ? $notice : 'upgrade_13';
79
 
 
80
  $options['out'] = 0;
81
  $options['autoplay'] = 0;
82
  $options['youtube']['logo'] = 1;
@@ -85,9 +78,8 @@ function featured_video_plus_upgrade() {
85
  $options['align'] = $options['sizing']['wmode'] == 'auto' ? 'center' : $options['sizing']['align'];
86
  unset( $options['sizing']['align'] );
87
 
88
- case '1.4':
89
- $notice = isset($notice) ? $notice : 'upgrade_14';
90
 
 
91
  $options['youtube']['wmode'] = 'auto';
92
  $options['local']['videojs']['js'] = true;
93
  $options['local']['videojs']['css'] = true;
@@ -105,121 +97,43 @@ function featured_video_plus_upgrade() {
105
  }
106
  }
107
 
 
108
  case '1.5':
109
  case '1.5.1':
110
- $notice = isset($notice) ? $notice : 'upgrade_15';
111
-
112
  $options['youtube']['jsapi'] = 0;
113
  $options['local']['videojs']['poster'] = false;
114
  unset($options['reged'], $options['out']);
115
 
 
116
  case '1.6':
117
  case '1.6.1':
118
  $options['usage'] = $options['overwrite'] ? 'replace' : 'manual'; // replace;manual;overlay
119
  unset($options['overwrite']);
120
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
121
  // *************************************************************
122
- //default:
123
  $options['version'] = FVP_VERSION;
124
  break;
125
  }
126
-
127
- $featured_video_plus_notices = new featured_video_plus_notices();
128
- if( isset($notice) )
129
- add_action('admin_notices', array( &$featured_video_plus_notices, $notice ) );
130
  }
131
 
132
  if( $options != $options_org )
133
  update_option( 'fvp-settings', $options );
134
 
135
  }
136
-
137
- /**
138
- * Class containing notices for upgrading the plugin
139
- *
140
- * @author ahoereth
141
- * @version 2013/01/08
142
- * @see http://wptheming.com/2011/08/admin-notices-in-wordpress/
143
- * @since 1.2
144
- */
145
- class featured_video_plus_notices {
146
- private $pluginpage;
147
-
148
- /**
149
- * Initialize class variables.
150
- *
151
- * @since 1.4
152
- */
153
- function __construct(){
154
- $this->pluginpage = 'http://wordpress.org/extend/plugins/featured-video-plus#plugin-title';
155
- }
156
-
157
- /**
158
- * Upgrade notification 1.4 to current version
159
- *
160
- * @since 1.5
161
- */
162
- function upgrade_15() {
163
- echo "\n" . '<div class="updated" id="fvp_activation_notification"><p>';
164
- printf(__('Featured Video Plus was <strong>upgraded</strong>.', 'featured-video-plus').'&nbsp'.__('%s brings new options for YouTube and local videos, fixes a whole bunch of glitches and introduces a new PHP-function.', 'featured-video-plus').'&nbsp;'.__('If you like the plugin, please %srate it%s.', 'featured-video-plus'), '<strong>Version&nbsp;'.FVP_VERSION.'</strong>', '<a href="'.$this->pluginpage.'" target="_blank">', '</a>');
165
- echo "</p></div>\n";
166
- }
167
-
168
- /**
169
- * Upgrade notification 1.4 to current version
170
- *
171
- * @since 1.5
172
- */
173
- function upgrade_14() {
174
- echo "\n" . '<div class="updated" id="fvp_activation_notification"><p>';
175
- printf(__('Featured Video Plus was <strong>upgraded</strong>.', 'featured-video-plus').'&nbsp'.__('%s <strong>ajax</strong>ifies the Featured Video box, introduces new options for YouTube and local videos and a new PHP-function.', 'featured-video-plus').'&nbsp;'.__('If you like the plugin, please %srate it%s.', 'featured-video-plus'), '<strong>Version&nbsp;'.FVP_VERSION.'</strong>', '<a href="'.$this->pluginpage.'" target="_blank">', '</a>');
176
- echo "</p></div>\n";
177
- }
178
-
179
- /**
180
- * Upgrade notification 1.3 to current version
181
- *
182
- * @since 1.4
183
- */
184
- function upgrade_13() {
185
- echo "\n" . '<div class="updated" id="fvp_activation_notification"><p>';
186
- printf(__('Featured Video Plus was <strong>upgraded</strong>.', 'featured-video-plus').'&nbsp'.__('%s features a seamless <strong>WP3.5 Media Manager</strong> integration, an all new <strong>ajax</strong>ified metabox, time-links (#t=4m2s) for YouTube and Dailymotion, new PHP functions for developers and more.', 'featured-video-plus').'&nbsp;'.__('If you like the plugin, please %srate it%s.', 'featured-video-plus'), '<strong>Version&nbsp;'.FVP_VERSION.'</strong>', '<a href="'.$this->pluginpage.'" target="_blank">', '</a>');
187
- echo "</p></div>\n";
188
- }
189
-
190
- /**
191
- * Upgrade notification 1.2 to current version
192
- *
193
- * @since 1.3
194
- */
195
- function upgrade_12() {
196
- echo "\n" . '<div class="updated" id="fvp_activation_notification"><p>';
197
- printf(__('Featured Video Plus was <strong>upgraded</strong>.', 'featured-video-plus').'&nbsp'.__('%s features a seamless WP3.5 Media Manager integration, an ajaxified metabox, time-links (#t=4m2s) for YouTube and Dailymotion, more customization settings and internationalization.', 'featured-video-plus').'&nbsp;'.__('If you like the plugin, please %srate it%s.', 'featured-video-plus'), '<strong>Version&nbsp;'.FVP_VERSION.'</strong>', '<a href="'.$this->pluginpage.'" target="_blank">', '</a>');
198
- echo "</p></div>\n";
199
- }
200
-
201
- /**
202
- * Upgrade notification 1.1 to current version
203
- *
204
- * @since 1.2
205
- */
206
- function upgrade_11() {
207
- echo "\n" . '<div class="updated" id="fvp_activation_notification"><p>';
208
- printf(__('Featured Video Plus was <strong>upgraded</strong>.', 'featured-video-plus').'&nbsp;'.__('%s features support for <strong>Local Videos</strong>, a seamless WP3.5 Media Manager integration, an ajaxified metabox, time-links (#t=4m2s) for YouTube and Dailymotion and many more customization settings.', 'featured-video-plus').'&nbsp;'.__('If you like the plugin, please %srate it%s.', 'featured-video-plus'), '<strong>Version&nbsp;'.FVP_VERSION.'</strong>', '<a href="'.$this->pluginpage.'" traget="_blank">','</a>');
209
- echo "</p></div>\n";
210
- }
211
-
212
- /**
213
- * Notification shown when plugin is newly activated.
214
- * Upgrade from 0 to current version
215
- *
216
- * @since 1.0
217
- */
218
- function initial_activation() {
219
- echo "\n" . '<div class="updated" id="fvp_activation_notification"><p>';
220
- printf(__('Featured Video Plus is <strong>ready to use</strong>. There is a new box on post & page edit screens for you to add videos. <strong>Take a look at your new %sMedia Settings%s</strong>.', 'featured-video-plus'), '<a href="'.get_admin_url(null, '/options-media.php').'" title="Media Settings">', '</a>');
221
- echo "</p></div>\n";
222
- }
223
-
224
- }
225
- ?>
17
  if( $version != FVP_VERSION ) {
18
  switch( $version ) {
19
  case '0':
 
 
20
  $options = array(
21
  'overwrite' => true,
22
  'width' => 'auto',
32
 
33
  case '1.0':
34
  case '1.1':
 
 
35
  if( $version == '1.0' || $version == '1.1' ) {
36
  // removed this user meta in 1.2
37
  $users = array_merge( get_users( array( 'role' => 'Administrator' ) ),
42
 
43
 
44
  case '1.2':
 
 
45
  $options['videojs'] = array(
46
  'skin' => 'videojs' //videojs,moonfy,tubejs
47
  );
68
  );
69
  unset( $options['width'], $options['height'] );
70
 
 
 
71
 
72
+ case '1.3':
73
  $options['out'] = 0;
74
  $options['autoplay'] = 0;
75
  $options['youtube']['logo'] = 1;
78
  $options['align'] = $options['sizing']['wmode'] == 'auto' ? 'center' : $options['sizing']['align'];
79
  unset( $options['sizing']['align'] );
80
 
 
 
81
 
82
+ case '1.4':
83
  $options['youtube']['wmode'] = 'auto';
84
  $options['local']['videojs']['js'] = true;
85
  $options['local']['videojs']['css'] = true;
97
  }
98
  }
99
 
100
+
101
  case '1.5':
102
  case '1.5.1':
 
 
103
  $options['youtube']['jsapi'] = 0;
104
  $options['local']['videojs']['poster'] = false;
105
  unset($options['reged'], $options['out']);
106
 
107
+
108
  case '1.6':
109
  case '1.6.1':
110
  $options['usage'] = $options['overwrite'] ? 'replace' : 'manual'; // replace;manual;overlay
111
  unset($options['overwrite']);
112
 
113
+
114
+ case '1.7':
115
+ case '1.7.1':
116
+ $options['local']['cdn'] = $options['local']['videojs']['cdn'];
117
+ $options['local']['enabled'] = $options['local']['videojs']['js'];
118
+ $options['local']['poster'] = $options['local']['videojs']['poster'];
119
+ unset($options['local']['videojs']);
120
+
121
+ $options['local']['foreground'] = "cccccc";
122
+ $options['local']['highlight'] = "66a8cc";
123
+ $options['local']['background'] = "000000";
124
+ $options['local']['controls'] = true;
125
+ $options['local']['loop'] = false;
126
+ $options['autoplay'] = $options['autoplay'] ? 'yes' : 'no'; //yes/auto/no
127
+
128
+
129
  // *************************************************************
130
+ default:
131
  $options['version'] = FVP_VERSION;
132
  break;
133
  }
 
 
 
 
134
  }
135
 
136
  if( $options != $options_org )
137
  update_option( 'fvp-settings', $options );
138
 
139
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
readme.txt CHANGED
@@ -10,7 +10,7 @@ License: GPLv2 or later
10
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
11
  Requires at least: 3.1
12
  Tested up to: 3.6
13
- Stable tag: 1.7.1
14
 
15
  Add Featured Videos to your posts and pages. Works like magic with most themes which use Featured Images. Local Media, YouTube, Vimeo, Dailymotion.
16
 
@@ -64,6 +64,13 @@ The plugin is ready to go. Now edit your posts and add video links to the "Featu
64
 
65
  == Changelog ==
66
 
 
 
 
 
 
 
 
67
  = 1.7.1: 2013-04-30 =
68
  * Fixed manual usage option ([*](http://wordpress.org/support/topic/lightbox-video-on-featured-image-click))
69
  * Added featured image mouse over effect for featured video AJAX usage
10
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
11
  Requires at least: 3.1
12
  Tested up to: 3.6
13
+ Stable tag: 1.8
14
 
15
  Add Featured Videos to your posts and pages. Works like magic with most themes which use Featured Images. Local Media, YouTube, Vimeo, Dailymotion.
16
 
64
 
65
  == Changelog ==
66
 
67
+ = 1.8: 2013-05-16 =
68
+ * Video.js [4.0](http://blog.videojs.com/post/50021214078/video-js-4-0-now-available)
69
+ * Customize the local video player
70
+ * Better autoplay handling
71
+ * Remove anchors wrapping videos
72
+ * General bug fixes
73
+
74
  = 1.7.1: 2013-04-30 =
75
  * Fixed manual usage option ([*](http://wordpress.org/support/topic/lightbox-video-on-featured-image-click))
76
  * Added featured image mouse over effect for featured video AJAX usage