Version Description
Smoothness
Download this release
Release Info
Developer | a.hoereth |
Plugin | Featured Video Plus |
Version | 1.6 |
Comparing to | |
See all releases |
Code changes from version 1.5.1 to 1.6
- css/backend-min.css +0 -13
- css/backend.min.css +1 -0
- css/frontend.css +7 -0
- css/video-js.png +0 -0
- css/{videojs-min.css → videojs.min.css} +0 -0
- featured-video-plus.php +2 -2
- js/backend-min.js +0 -11
- js/backend.js +6 -2
- js/backend.min.js +11 -0
- js/{jquery.autosize-min.js → jquery.autosize.min.js} +0 -0
- js/jquery.fitvids_fvp.js +8 -6
- js/{jquery.fitvids_fvp-min.js → jquery.fitvids_fvp.min.js} +1 -1
- js/video-js.swf +0 -0
- js/videojs-min.js +0 -21
- js/videojs.min.js +21 -0
- lng/featured-video-plus-de_DE.mo +0 -0
- lng/featured-video-plus-de_DE.po +631 -615
- lng/featured-video-plus.pot +490 -487
- php/backend.php +61 -75
- php/frontend.php +2 -2
- php/functions.php +37 -21
- php/general.php +29 -21
- php/settings.php +59 -64
- php/upgrade.php +21 -7
- readme.txt +23 -3
css/backend-min.css
DELETED
@@ -1,13 +0,0 @@
|
|
1 |
-
.wp-picker-holder{position:absolute;bottom:2.5em;left:-1em;z-index:1;-webkit-box-shadow:3px 3px 5px #ddd;-moz-box-shadow:3px 3px 5px #ddd;box-shadow:3px 3px 5px #ddd;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}
|
2 |
-
.fvp_colorpicker{position:absolute;bottom:0;right:-197px;background-color:#fff;z-index:100;border:1px solid #ccc;}
|
3 |
-
.defaultTextActive{color:#a1a1a1;font-style:italic;}#fvp_activation_notification{border-color:#00adef!important;background-color:whiteSmoke!important;}
|
4 |
-
.fvp_hidden{display:none;}.fvp_notice{-webkit-border-radius:3px;border-radius:3px;border-width:1px;border-style:solid;background-color:white;border-color:gray;margin:.5em 0;padding:.4em .6em .2em;}
|
5 |
-
.fvp_warning{-webkit-border-radius:3px;border-radius:3px;border-width:1px;border-style:solid;background-color:lightYellow;border-color:#E6DB55;margin:.5em 0;padding:.4em .6em .2em;}
|
6 |
-
#featured_video_plus-box textarea{resize:none;width:100%;height:1.1em;line-height:1.1em;font-size:1em;}
|
7 |
-
.fvp_grouplable{width:100px;float:left;padding-top:2px;}.fvp_grouppart1{width:200px;float:left;padding-top:2px;}
|
8 |
-
.fvp_readonly{color:gray!important;}.fvp_invalid{background-color:#FA8072;}.fvp_radio_bumper{float:left;width:100px;}
|
9 |
-
.fvp_input_wrapper{position:relative;}#featured_video_plus-box .fvp_input{padding-right:21px;}
|
10 |
-
.fvp_media_icon{background:transparent no-repeat top left;display:block;width:15px;height:15px;position:absolute;top:4px;right:4px;}
|
11 |
-
.fvp_code_list li{margin-bottom:0;}.box_topright{float:right;width:20px;height:30px;line-height:30px;text-align:center;}
|
12 |
-
.box_topright #fvp_remove{display:block;height:10px;width:10px;margin-top:10px;background:url('/wordpress/wp-admin/images/xit.gif') no-repeat center left;}
|
13 |
-
.box_topright #fvp_remove:hover{background:url('/wordpress/wp-admin/images/xit.gif') no-repeat center right;}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
css/backend.min.css
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
.wp-picker-holder{position:absolute;bottom:2.5em;left:-1em;z-index:1;-webkit-box-shadow:3px 3px 5px #ddd;-moz-box-shadow:3px 3px 5px #ddd;box-shadow:3px 3px 5px #ddd;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.fvp_colorpicker{position:absolute;bottom:0;right:-197px;background-color:#fff;z-index:100;border:1px solid #ccc}.defaultTextActive{color:#a1a1a1;font-style:italic}#fvp_activation_notification{border-color:#00adef!important;background-color:whiteSmoke!important}.fvp_hidden{display:none}.fvp_notice{-webkit-border-radius:3px;border-radius:3px;border-width:1px;border-style:solid;background-color:white;border-color:gray;margin:.5em 0;padding:.4em .6em .2em}.fvp_warning{-webkit-border-radius:3px;border-radius:3px;border-width:1px;border-style:solid;background-color:lightYellow;border-color:#e6db55;margin:.5em 0;padding:.4em .6em .2em}#featured_video_plus-box textarea{resize:none;width:100%;height:1.1em;line-height:1.1em;font-size:1em}.fvp_grouplable{width:100px;float:left;padding-top:2px}.fvp_grouppart1{width:200px;float:left;padding-top:2px}.fvp_readonly{color:gray!important}.fvp_invalid{background-color:#fa8072}.fvp_radio_bumper{float:left;width:100px}.fvp_input_wrapper{position:relative}#featured_video_plus-box .fvp_input{padding-right:21px}.fvp_media_icon{background:transparent no-repeat top left;display:block;width:15px;height:15px;position:absolute;top:4px;right:4px}.fvp_code_list li{margin-bottom:0}.box_topright{float:right;width:20px;height:30px;line-height:30px;text-align:center}.box_topright #fvp_remove{display:block;height:10px;width:10px;margin-top:10px;background:url('/wordpress/wp-admin/images/xit.gif') no-repeat center left}.box_topright #fvp_remove:hover{background:url('/wordpress/wp-admin/images/xit.gif') no-repeat center right}
|
css/frontend.css
ADDED
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.fluid-width-video-wrapper .video-js {
|
2 |
+
position: absolute;
|
3 |
+
top: 0;
|
4 |
+
left: 0;
|
5 |
+
width: 100% !important;
|
6 |
+
height: 100% !important;
|
7 |
+
}
|
css/video-js.png
ADDED
Binary file
|
css/{videojs-min.css → videojs.min.css}
RENAMED
File without changes
|
featured-video-plus.php
CHANGED
@@ -4,7 +4,7 @@ Plugin Name: Featured Video Plus
|
|
4 |
Plugin URI: https://github.com/ahoereth/featured-video-plus
|
5 |
Description: Add Featured Videos to your posts and pages.
|
6 |
Author: Alexander Höreth
|
7 |
-
Version: 1.
|
8 |
Author URI: http://ahoereth.yrnxt.com
|
9 |
License: GPL2
|
10 |
|
@@ -27,7 +27,7 @@ License: GPL2
|
|
27 |
*/
|
28 |
|
29 |
if (!defined('FVP_VERSION'))
|
30 |
-
define('FVP_VERSION', '1.
|
31 |
|
32 |
// symlink proof
|
33 |
$pathinfo = pathinfo(dirname(plugin_basename(__FILE__)));
|
4 |
Plugin URI: https://github.com/ahoereth/featured-video-plus
|
5 |
Description: Add Featured Videos to your posts and pages.
|
6 |
Author: Alexander Höreth
|
7 |
+
Version: 1.6
|
8 |
Author URI: http://ahoereth.yrnxt.com
|
9 |
License: GPL2
|
10 |
|
27 |
*/
|
28 |
|
29 |
if (!defined('FVP_VERSION'))
|
30 |
+
define('FVP_VERSION', '1.6');
|
31 |
|
32 |
// symlink proof
|
33 |
$pathinfo = pathinfo(dirname(plugin_basename(__FILE__)));
|
js/backend-min.js
DELETED
@@ -1,11 +0,0 @@
|
|
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",height:"144px"}),a.post(ajaxurl,
|
3 |
-
{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:"",width:"",height:""}),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_help_notice").slideUp("fast")):c.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"),a(this).val("")});a(".fvp_input").autosize().trigger("blur").keypress(function(a){13==a.keyCode&&a.preventDefault()});
|
5 |
-
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");if(0===b.length||b==fvp_backend_data.default_value)a("#fvp_video").removeClass("fvp_invalid"),
|
6 |
-
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")):(a("#fvp_sec").val(fvp_backend_data.default_value_sec).blur(),a("#fvp_sec_wrapper").slideUp("fast"),
|
7 |
-
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||b==fvp_backend_data.default_value)a("#fvp_localvideo_format_warning").slideUp("fast"),a("#fvp_sec").removeClass("fvp_invalid");
|
8 |
-
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"),a("#fvp_localvideo_notdistinct_warning").slideDown("fast"));c(void 0,200)});a("#fvp_set_featimg_link").removeClass("fvp_hidden");
|
9 |
-
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")},"json");return!1});a("#remove-post-thumbnail").click(function(){a("#fvp_set_featimg_link, #fvp_featimg_warning").slideDown().removeClass("fvp_hidden")});
|
10 |
-
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")},multiple:!1});this._frame.on("open",this.updateFrame).state("library").on("select",this.select);return this._frame},select:function(){var c=this.get("selection");
|
11 |
-
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()});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
js/backend.js
CHANGED
@@ -38,7 +38,8 @@ jQuery(document).ready(function($){
|
|
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':'','width':'','height':''});
|
41 |
-
|
|
|
42 |
} else
|
43 |
if(data.valid) {
|
44 |
$('#postimagediv .inside').html(data.img);
|
@@ -46,8 +47,11 @@ jQuery(document).ready(function($){
|
|
46 |
$('#fvp_current_video').html(data.video);
|
47 |
t.css('backgroundColor','#00FF00').animate({'backgroundColor':'white'}, 500, function() { t.css('backgroundColor',''); });
|
48 |
$("#fvp_help_notice").slideUp('fast');
|
49 |
-
} else
|
|
|
50 |
t.addClass('fvp_invalid');
|
|
|
|
|
51 |
}, "json"
|
52 |
);
|
53 |
}
|
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':'','width':'','height':''});
|
41 |
+
if( data.img != '' )
|
42 |
+
$('#postimagediv .inside').html(data.img);
|
43 |
} else
|
44 |
if(data.valid) {
|
45 |
$('#postimagediv .inside').html(data.img);
|
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 |
}
|
js/backend.min.js
ADDED
@@ -0,0 +1,11 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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",height:"144px"}),a.post(ajaxurl,
|
3 |
+
{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:"",width:"",height:""}),""!=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()});
|
js/{jquery.autosize-min.js → jquery.autosize.min.js}
RENAMED
File without changes
|
js/jquery.fitvids_fvp.js
CHANGED
@@ -50,13 +50,15 @@
|
|
50 |
return this.each(function(){
|
51 |
var selectors = [
|
52 |
"iframe[src*='player.vimeo.com']",
|
53 |
-
"iframe[src*='
|
54 |
-
"iframe[src*='
|
55 |
-
"iframe[src*='
|
56 |
-
"iframe[src*='
|
57 |
-
"iframe[src*='
|
|
|
58 |
"object",
|
59 |
-
"embed"
|
|
|
60 |
];
|
61 |
|
62 |
if (settings.customSelector) {
|
50 |
return this.each(function(){
|
51 |
var selectors = [
|
52 |
"iframe[src*='player.vimeo.com']",
|
53 |
+
"iframe[src*='youtube.com']",
|
54 |
+
"iframe[src*='youtube-nocookie.com']",
|
55 |
+
"iframe[src*='kickstarter.com']",
|
56 |
+
"iframe[src*='liveleak.com']",
|
57 |
+
"iframe[src*='prochan.com']",
|
58 |
+
"iframe[src*='dailymotion.com']",
|
59 |
"object",
|
60 |
+
"embed",
|
61 |
+
".video-js"
|
62 |
];
|
63 |
|
64 |
if (settings.customSelector) {
|
js/{jquery.fitvids_fvp-min.js → jquery.fitvids_fvp.min.js}
RENAMED
@@ -1,3 +1,3 @@
|
|
1 |
(function(d){d.fn.fitVids=function(e){var c={customSelector:null},b=document.createElement("div"),f=document.getElementsByTagName("base")[0]||document.getElementsByTagName("script")[0];b.className="fit-vids-style";b.innerHTML="­<style> .fluid-width-video-wrapper { width: 100%; position: relative; padding: 0; } .fluid-width-video-wrapper iframe, .fluid-width-video-wrapper object, .fluid-width-video-wrapper embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } </style>";
|
2 |
-
f.parentNode.insertBefore(b,f);e&&d.extend(c,e);return this.each(function(){var b="iframe[src*='player.vimeo.com'] iframe[src*='
|
3 |
"object"===this.tagName.toLowerCase()||a.attr("height")&&!isNaN(parseInt(a.attr("height"),10))?parseInt(a.attr("height"),10):a.height(),c=!isNaN(parseInt(a.attr("width"),10))?parseInt(a.attr("width"),10):a.width(),b=b/c;a.attr("id")||(c="fitvid"+Math.floor(999999*Math.random()),a.attr("id",c));a.wrap('<div class="fluid-width-video-wrapper"></div>').parent(".fluid-width-video-wrapper").css("padding-top",100*b+"%");a.removeAttr("height").removeAttr("width")}})})}})(jQuery);jQuery(document).ready(function(d){d(".featured_video_plus").fitVids()});
|
1 |
(function(d){d.fn.fitVids=function(e){var c={customSelector:null},b=document.createElement("div"),f=document.getElementsByTagName("base")[0]||document.getElementsByTagName("script")[0];b.className="fit-vids-style";b.innerHTML="­<style> .fluid-width-video-wrapper { width: 100%; position: relative; padding: 0; } .fluid-width-video-wrapper iframe, .fluid-width-video-wrapper object, .fluid-width-video-wrapper embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } </style>";
|
2 |
+
f.parentNode.insertBefore(b,f);e&&d.extend(c,e);return this.each(function(){var b="iframe[src*='player.vimeo.com'] iframe[src*='youtube.com'] iframe[src*='youtube-nocookie.com'] iframe[src*='kickstarter.com'] iframe[src*='liveleak.com'] iframe[src*='prochan.com'] iframe[src*='dailymotion.com'] object embed .video-js".split(" ");c.customSelector&&b.push(c.customSelector);d(this).find(b.join(",")).each(function(){var a=d(this);if(!("embed"===this.tagName.toLowerCase()&&a.parent("object").length||a.parent(".fluid-width-video-wrapper").length)){var b=
|
3 |
"object"===this.tagName.toLowerCase()||a.attr("height")&&!isNaN(parseInt(a.attr("height"),10))?parseInt(a.attr("height"),10):a.height(),c=!isNaN(parseInt(a.attr("width"),10))?parseInt(a.attr("width"),10):a.width(),b=b/c;a.attr("id")||(c="fitvid"+Math.floor(999999*Math.random()),a.attr("id",c));a.wrap('<div class="fluid-width-video-wrapper"></div>').parent(".fluid-width-video-wrapper").css("padding-top",100*b+"%");a.removeAttr("height").removeAttr("width")}})})}})(jQuery);jQuery(document).ready(function(d){d(".featured_video_plus").fitVids()});
|
js/video-js.swf
ADDED
Binary file
|
js/videojs-min.js
DELETED
@@ -1,21 +0,0 @@
|
|
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="c";VideoJS.players={};VideoJS.options={techOrder:["html5","flash"],html5:{},flash:{swf:"http://vjs.zencdn.net/c/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="http://vjs.zencdn.net/"+CDN_VERSION+"/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+"&")})}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&¤tTime<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&¤tTime<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);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
js/videojs.min.js
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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+"&")})}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&¤tTime<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&¤tTime<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);
|
lng/featured-video-plus-de_DE.mo
CHANGED
Binary file
|
lng/featured-video-plus-de_DE.po
CHANGED
@@ -1,615 +1,631 @@
|
|
1 |
-
msgid ""
|
2 |
-
msgstr ""
|
3 |
-
"Project-Id-Version: featured-video-plus 1.3 de_DE\n"
|
4 |
-
"POT-Creation-Date: 2013-
|
5 |
-
"PO-Revision-Date: 2013-
|
6 |
-
"Last-Translator: Alexander Höreth <a.hoereth@gmail.com>\n"
|
7 |
-
"Language-Team: a.hoereth <a.hoereth@gmail.com>\n"
|
8 |
-
"Language: de_DE\n"
|
9 |
-
"MIME-Version: 1.0\n"
|
10 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
-
"Content-Transfer-Encoding: 8bit\n"
|
12 |
-
"X-Generator: Poedit 1.5.4\n"
|
13 |
-
"X-Poedit-KeywordsList: __;_e\n"
|
14 |
-
"X-Poedit-Basepath: ..\n"
|
15 |
-
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
-
"X-Poedit-SearchPath-0: php\n"
|
17 |
-
|
18 |
-
#: php/backend.php:32
|
19 |
-
msgid "Video URL"
|
20 |
-
msgstr "Video URL"
|
21 |
-
|
22 |
-
#: php/backend.php:33
|
23 |
-
msgid "Fallback: same video, different format"
|
24 |
-
msgstr "Fallback: gleiche Video, anderes Format"
|
25 |
-
|
26 |
-
#: php/backend.php:92 php/backend.php:
|
27 |
-
#: php/backend.php:
|
28 |
-
msgid "Featured Video"
|
29 |
-
msgstr "Beitragsvideo"
|
30 |
-
|
31 |
-
#: php/backend.php:123
|
32 |
-
msgid "Outdated WordPress Version"
|
33 |
-
msgstr "Veraltete WordPress Version"
|
34 |
-
|
35 |
-
#: php/backend.php:123
|
36 |
-
#, php-format
|
37 |
-
msgid ""
|
38 |
-
"There is WordPress 3.5 out there! The plugin supports older versions way "
|
39 |
-
"back to 3.1 - but %s is defenitly to old!"
|
40 |
-
msgstr ""
|
41 |
-
"Es gibt schon WordPress 3.5! Das Plugin unterstützt alle Versionen ab 3.1 - "
|
42 |
-
"aber %s ist wirklich zu alt!"
|
43 |
-
|
44 |
-
#: php/backend.php:134
|
45 |
-
msgid "Set Featured Video"
|
46 |
-
msgstr "Beitragsvideo festlegen"
|
47 |
-
|
48 |
-
#: php/backend.php:134
|
49 |
-
msgid "Set featured video"
|
50 |
-
msgstr "Beitragsvideo festlegen"
|
51 |
-
|
52 |
-
#: php/backend.php:143
|
53 |
-
msgid "Set Featured Video Fallback"
|
54 |
-
msgstr "Beitragsvideo-Ersatz festlegen"
|
55 |
-
|
56 |
-
#: php/backend.php:143
|
57 |
-
msgid "Set featured video fallback"
|
58 |
-
msgstr "Beitragsvideo Fallback festlegen"
|
59 |
-
|
60 |
-
#: php/backend.php:152 php/backend.php:
|
61 |
-
msgid "Supported Video Formats"
|
62 |
-
msgstr "Unterstützte Videoformate"
|
63 |
-
|
64 |
-
#: php/backend.php:152
|
65 |
-
msgid "or"
|
66 |
-
msgstr "oder"
|
67 |
-
|
68 |
-
#: php/backend.php:152 php/backend.php:
|
69 |
-
msgid "More information"
|
70 |
-
msgstr "Mehr Informationen"
|
71 |
-
|
72 |
-
#: php/backend.php:157
|
73 |
-
msgid "Fallback Video"
|
74 |
-
msgstr "Fallback Video"
|
75 |
-
|
76 |
-
#: php/backend.php:157
|
77 |
-
msgid ""
|
78 |
-
"The two input fields should contain the same video but in distinct formats."
|
79 |
-
msgstr ""
|
80 |
-
"Die zwei Eingabefelder sollen das gleiche Video in unterschiedlichen "
|
81 |
-
"Formaten enthalten."
|
82 |
-
|
83 |
-
#: php/backend.php:164
|
84 |
-
msgid "Hint"
|
85 |
-
msgstr "Hinweis"
|
86 |
-
|
87 |
-
#: php/backend.php:164
|
88 |
-
#, php-format
|
89 |
-
msgid "Take a look into the %sContextual Help%s."
|
90 |
-
msgstr "Wirf einen Blick in die %sHilfe%s."
|
91 |
-
|
92 |
-
#: php/backend.php:170 php/settings.php:
|
93 |
-
msgid "Featured Image"
|
94 |
-
msgstr ""
|
95 |
-
|
96 |
-
#: php/backend.php:170
|
97 |
-
msgid ""
|
98 |
-
"For automatically displaying the Featured Video a Featured Image is required."
|
99 |
-
msgstr ""
|
100 |
-
"Um das Artikelvideo automatisch im Theme anzeigen zu können, muss ein "
|
101 |
-
"Artikelbild festgelegt werden."
|
102 |
-
|
103 |
-
#: php/backend.php:175
|
104 |
-
msgid "Set as Featured Image"
|
105 |
-
msgstr "Als Beitragsbild festlegen"
|
106 |
-
|
107 |
-
#: php/backend.php:179 php/settings.php:70
|
108 |
-
msgid "The current theme does not support Featured Images"
|
109 |
-
msgstr "Das aktuelle Theme nutzt keine Beitragsbilder."
|
110 |
-
|
111 |
-
#: php/backend.php:179
|
112 |
-
#, php-format
|
113 |
-
msgid ""
|
114 |
-
"To display Featured Videos you need to use the <code>Shortcode</code> or "
|
115 |
-
"<code>PHP functions</code>. To hide this notice deactivate "<em>Replace "
|
116 |
-
"Featured Images</em>" in the %sMedia Settings%s."
|
117 |
-
msgstr ""
|
118 |
-
"Damit Beitragsvideos in deinem Theme angezeigt werden, musst du den "
|
119 |
-
"<code>Shortcode</code> oder die <code>PHP-Funktionen</code> verwenden. Um "
|
120 |
-
"diese Warnung zu verstecken, deaktiviere "<em>Artikelbilder ersetzen</"
|
121 |
-
"em>" in deinen %sMedien Einstellungen%s."
|
122 |
-
|
123 |
-
#: php/backend.php:
|
124 |
-
#, php-format
|
125 |
-
msgid ""
|
126 |
-
"To use local videos, copy the <code>Link To Media File</code> from your "
|
127 |
-
"%sMedia Library%s and paste it into the text field."
|
128 |
-
msgstr ""
|
129 |
-
"Um lokale Videos zu nutzen, kopiere den <code>Link zur Medien-Datei</code> "
|
130 |
-
"aus deiner %sMediathek%s und füge ihn in das Textfeld ein."
|
131 |
-
|
132 |
-
#: php/backend.php:
|
133 |
-
#, php-format
|
134 |
-
msgid ""
|
135 |
-
"To use local videos, copy the <code>File URL</code> from your %sMedia Library"
|
136 |
-
"%s and paste it into the text field."
|
137 |
-
msgstr ""
|
138 |
-
"Um lokale Videos zu nutzen, kopiere die <code>Datei-URL</code> aus deiner "
|
139 |
-
"%sMediathek%s und füge sie in das Textfeld ein."
|
140 |
-
|
141 |
-
#: php/backend.php:
|
142 |
-
msgid ""
|
143 |
-
"The second text field is intended to hold the URL to the same video in a "
|
144 |
-
"different format. It will be used as fallback if the primary file can not be "
|
145 |
-
"played."
|
146 |
-
msgstr ""
|
147 |
-
"Das zweite Textfeld ist für eine URL zu dem gleichen Video in einem anderen "
|
148 |
-
"Videoformat gedacht. Dieses zweite Video wird dann als Fallback benutzt, "
|
149 |
-
"falls das erste Video nicht kompatibel ist."
|
150 |
-
|
151 |
-
#: php/backend.php:
|
152 |
-
msgid "Converting your videos"
|
153 |
-
msgstr "Videos konvertieren"
|
154 |
-
|
155 |
-
#: php/backend.php:
|
156 |
-
#, php-format
|
157 |
-
msgid ""
|
158 |
-
"Take a look at the %sMiro Video Converter%s. It is open source, lightweight "
|
159 |
-
"and compatible with Windows, Mac and Linux."
|
160 |
-
msgstr ""
|
161 |
-
"Schau dir den %sMiro Video Converter%s an. Er is Open Source, klein, einfach "
|
162 |
-
"zu verwenden und mit Windows, Mac und Linux kompatibel."
|
163 |
-
|
164 |
-
#: php/backend.php:
|
165 |
-
msgid "Fixing upload errors"
|
166 |
-
msgstr "Videoupload Fehler beheben"
|
167 |
-
|
168 |
-
#: php/backend.php:
|
169 |
-
#, php-format
|
170 |
-
msgid ""
|
171 |
-
"Read %sthis%s on how to increase the <strong>maximum file upload size</"
|
172 |
-
"strong>."
|
173 |
-
msgstr ""
|
174 |
-
"Lies %sdas hier%s, um zu erfahren, wie man das <strong>Dateigrößenlimit</"
|
175 |
-
"strong> erhöht."
|
176 |
-
|
177 |
-
#: php/backend.php:
|
178 |
-
#, php-format
|
179 |
-
msgid ""
|
180 |
-
"WordPress by default does not support <code>webM</code>. The plugin "
|
181 |
-
"activates it, but under some conditions this might not be enough. %sHere%s "
|
182 |
-
"you can get more information on this."
|
183 |
-
msgstr ""
|
184 |
-
"Normalerweise unterstützt WordPress kein <code>webM</code>. Das Plugin "
|
185 |
-
"aktiviert die unterstützung, aber manchmal reicht das noch nicht. %sHier%s "
|
186 |
-
"gibt es mehr Informationen."
|
187 |
-
|
188 |
-
#: php/backend.php:
|
189 |
-
msgid "Flash Fallback"
|
190 |
-
msgstr "Flash Fallback"
|
191 |
-
|
192 |
-
#: php/backend.php:
|
193 |
-
#, php-format
|
194 |
-
msgid ""
|
195 |
-
"The video player, %sVIDEOJS%s, features an Adobe Flash fallback. All you "
|
196 |
-
"need to do is provide an <code>mp4</code>-video."
|
197 |
-
msgstr ""
|
198 |
-
"Der Video Player, %sVIDEOJS%s, bietet einen Adobe Flash Fallback. Du musst "
|
199 |
-
"einfach nur ein <code>mp4</code>-Video einbinden."
|
200 |
-
|
201 |
-
#: php/backend.php:
|
202 |
-
msgid ""
|
203 |
-
"These are some of the tested URL formats. Everything in bold is required, "
|
204 |
-
"everything in brackets is optional."
|
205 |
-
msgstr ""
|
206 |
-
"Das hier sind einige getestete URL Formate. Alles fettgedruckte ist "
|
207 |
-
"notwendig, alles in Klammern optional."
|
208 |
-
|
209 |
-
#: php/backend.php:
|
210 |
-
msgid "Local Media"
|
211 |
-
msgstr "Lokale Medien"
|
212 |
-
|
213 |
-
#: php/backend.php:
|
214 |
-
msgid "Valid URLs"
|
215 |
-
msgstr "Video URLs"
|
216 |
-
|
217 |
-
#: php/settings.php:21
|
218 |
-
msgid "Featured Videos"
|
219 |
-
msgstr "Beitragsvideos"
|
220 |
-
|
221 |
-
#: php/settings.php:23
|
222 |
-
msgid "Replace Featured Images"
|
223 |
-
msgstr "Beitragsbilder ersetzen"
|
224 |
-
|
225 |
-
#: php/settings.php:24
|
226 |
-
msgid "Autoplay"
|
227 |
-
msgstr ""
|
228 |
-
|
229 |
-
#: php/settings.php:25
|
230 |
-
msgid "Video Sizing"
|
231 |
-
msgstr "Videogröße"
|
232 |
-
|
233 |
-
#: php/settings.php:26
|
234 |
-
msgid "Video Align"
|
235 |
-
msgstr "Video-Ausrichtung"
|
236 |
-
|
237 |
-
#: php/settings.php:27
|
238 |
-
msgid "Local Video Options"
|
239 |
-
msgstr "Lokale Videos"
|
240 |
-
|
241 |
-
#: php/settings.php:28
|
242 |
-
msgid "YouTube Options"
|
243 |
-
msgstr "YouTube Optionen"
|
244 |
-
|
245 |
-
#: php/settings.php:29
|
246 |
-
msgid "Vimeo Options"
|
247 |
-
msgstr "Vimeo Optionen"
|
248 |
-
|
249 |
-
#: php/settings.php:30
|
250 |
-
msgid "Dailymotion Options"
|
251 |
-
msgstr "Dailymotion Optionen"
|
252 |
-
|
253 |
-
#: php/settings.php:31
|
254 |
-
msgid "Support"
|
255 |
-
msgstr "Support"
|
256 |
-
|
257 |
-
#: php/settings.php:45
|
258 |
-
#, php-format
|
259 |
-
msgid ""
|
260 |
-
"To display your featured videos you can either make use of the automatic "
|
261 |
-
"replacement, use the %s or manually edit your theme's source files to make "
|
262 |
-
"use of the plugins PHP-functions."
|
263 |
-
msgstr ""
|
264 |
-
"Um die Artikelvideos anzuzeigen kannst du entweder das automatische Ersetzen "
|
265 |
-
"der Artikelbilder nutzen, auf den %s zurückgreifen oder manuel die PHP-"
|
266 |
-
"Funktionen in deine Theme Dateien integrieren."
|
267 |
-
|
268 |
-
#: php/settings.php:46
|
269 |
-
#, php-format
|
270 |
-
msgid ""
|
271 |
-
"For more information about Shortcode and PHP functions see the %sContextual "
|
272 |
-
"Help%s."
|
273 |
-
msgstr ""
|
274 |
-
"Für mehr Informationen über den Shortcode und die PHP-Funktionen schaue in "
|
275 |
-
"die %sHilfe%s."
|
276 |
-
|
277 |
-
#: php/settings.php:62 php/settings.php:86
|
278 |
-
msgid "yes"
|
279 |
-
msgstr "ja"
|
280 |
-
|
281 |
-
#: php/settings.php:62 php/settings.php:88 php/settings.php:111
|
282 |
-
#: php/settings.php:121 php/settings.php:142
|
283 |
-
msgid "default"
|
284 |
-
msgstr "default"
|
285 |
-
|
286 |
-
#: php/settings.php:64 php/settings.php:88
|
287 |
-
msgid "no"
|
288 |
-
msgstr "nein"
|
289 |
-
|
290 |
-
#: php/settings.php:65
|
291 |
-
msgid ""
|
292 |
-
"If a Featured Video is available it can be displayed in place of the "
|
293 |
-
"Featured Image. Still, a Featured Image is required."
|
294 |
-
msgstr ""
|
295 |
-
"Wenn ein Artikelvideo vorhanden ist kann es anstelle des Artikelbildes "
|
296 |
-
"angezeigt werden. Dafür muss trotzdem ein Artikelbild gesetzt sein!"
|
297 |
-
|
298 |
-
#: php/settings.php:70
|
299 |
-
msgid ""
|
300 |
-
"To display Featured Videos you need to use the <code>Shortcode</code> or "
|
301 |
-
"<code>PHP functions</code>."
|
302 |
-
msgstr ""
|
303 |
-
"Um Artikelvideos anzuzeigen musst du den <code>Shortcode</code> oder die "
|
304 |
-
"<code>PHP-Funktionen</code> nutzen."
|
305 |
-
|
306 |
-
#: php/settings.php:89
|
307 |
-
msgid ""
|
308 |
-
"YouTube, Vimeo and Dailymotion videos can autoplay when a single post/page "
|
309 |
-
"is being viewed."
|
310 |
-
msgstr ""
|
311 |
-
"Wenn gesetzt, starten YouTube, Vimeo und Dailymotion Videos automatisch wenn "
|
312 |
-
"sie auf der Seite eines einzelnen Beitrags angezeigt werden."
|
313 |
-
|
314 |
-
#: php/settings.php:108
|
315 |
-
msgid "Width"
|
316 |
-
msgstr "Breite"
|
317 |
-
|
318 |
-
#: php/settings.php:118
|
319 |
-
msgid "Height"
|
320 |
-
msgstr "Höhe"
|
321 |
-
|
322 |
-
#: php/settings.php:127
|
323 |
-
msgid ""
|
324 |
-
"When using <code>auto</code> the video will be adjusted to fit it's parent "
|
325 |
-
"element while sticking to it's ratio. Using a <code>fixed</code> height and "
|
326 |
-
"width might result in <em>not so pretty</em> black bars."
|
327 |
-
msgstr ""
|
328 |
-
"Wenn <code>auto</code> gesetzt ist, wird das jeweilige Video automatisch an "
|
329 |
-
"das Elternelement angepasst. Dabei wird versucht, die Seitenverhältnisse "
|
330 |
-
"beizubehalten. Feste Breite und/oder Höhe kann zu <em>nicht so schönen</em> "
|
331 |
-
"schwarzen Balken führen."
|
332 |
-
|
333 |
-
#: php/settings.php:141
|
334 |
-
msgid "left"
|
335 |
-
msgstr "links"
|
336 |
-
|
337 |
-
#: php/settings.php:142
|
338 |
-
msgid "center"
|
339 |
-
msgstr "zentriert"
|
340 |
-
|
341 |
-
#: php/settings.php:143
|
342 |
-
msgid "right"
|
343 |
-
msgstr "rechts"
|
344 |
-
|
345 |
-
#: php/settings.php:
|
346 |
-
msgid "Use CDN"
|
347 |
-
msgstr "Nutze CDN"
|
348 |
-
|
349 |
-
#: php/settings.php:
|
350 |
-
msgid "Include JS"
|
351 |
-
msgstr "JS einbinden"
|
352 |
-
|
353 |
-
#: php/settings.php:
|
354 |
-
msgid "Include CSS"
|
355 |
-
msgstr "CSS einbinden"
|
356 |
-
|
357 |
-
#: php/settings.php:165
|
358 |
-
msgid ""
|
359 |
-
"Disabling JS and/or CSS will break the local video player. Disable only when "
|
360 |
-
"you want to replace VideoJS with a different script and know what you are "
|
361 |
-
"doing."
|
362 |
-
msgstr ""
|
363 |
-
"JS und/oder CSS einbindung ist für die richtige Darstellung von lokalen "
|
364 |
-
"Videos notwendig. Nutze diese funktionen nur wenn du VideoJS durch ein "
|
365 |
-
"anderes Skript austauschen willst und weißt was du tust."
|
366 |
-
|
367 |
-
#: php/settings.php:
|
368 |
-
msgid "
|
369 |
-
msgstr "
|
370 |
-
|
371 |
-
#: php/settings.php:
|
372 |
-
msgid "
|
373 |
-
msgstr "
|
374 |
-
|
375 |
-
#: php/settings.php:
|
376 |
-
msgid "
|
377 |
-
msgstr "
|
378 |
-
|
379 |
-
#: php/settings.php:
|
380 |
-
msgid "
|
381 |
-
msgstr "
|
382 |
-
|
383 |
-
#: php/settings.php:
|
384 |
-
msgid "
|
385 |
-
msgstr "
|
386 |
-
|
387 |
-
#: php/settings.php:
|
388 |
-
msgid "
|
389 |
-
msgstr "
|
390 |
-
|
391 |
-
#: php/settings.php:
|
392 |
-
msgid "
|
393 |
-
msgstr "
|
394 |
-
|
395 |
-
#: php/settings.php:
|
396 |
-
msgid "
|
397 |
-
msgstr "
|
398 |
-
|
399 |
-
#: php/settings.php:
|
400 |
-
msgid "
|
401 |
-
msgstr "
|
402 |
-
|
403 |
-
#: php/settings.php:224
|
404 |
-
msgid "
|
405 |
-
msgstr "
|
406 |
-
|
407 |
-
#: php/settings.php:
|
408 |
-
msgid "
|
409 |
-
msgstr "
|
410 |
-
|
411 |
-
#: php/settings.php:
|
412 |
-
msgid "
|
413 |
-
msgstr "
|
414 |
-
|
415 |
-
#: php/settings.php:
|
416 |
-
msgid "
|
417 |
-
msgstr "
|
418 |
-
|
419 |
-
#: php/settings.php:
|
420 |
-
msgid "
|
421 |
-
msgstr "
|
422 |
-
|
423 |
-
#: php/settings.php:
|
424 |
-
msgid "
|
425 |
-
msgstr "
|
426 |
-
|
427 |
-
#: php/settings.php:
|
428 |
-
msgid "
|
429 |
-
msgstr "
|
430 |
-
|
431 |
-
#: php/settings.php:
|
432 |
-
|
433 |
-
|
434 |
-
|
435 |
-
|
436 |
-
|
437 |
-
msgstr ""
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
"
|
445 |
-
|
446 |
-
|
447 |
-
"
|
448 |
-
"
|
449 |
-
|
450 |
-
#: php/settings.php:
|
451 |
-
msgid ""
|
452 |
-
"
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
"
|
457 |
-
|
458 |
-
|
459 |
-
|
460 |
-
|
461 |
-
|
462 |
-
#: php/settings.php:
|
463 |
-
msgid ""
|
464 |
-
"
|
465 |
-
|
466 |
-
|
467 |
-
|
468 |
-
|
469 |
-
|
470 |
-
|
471 |
-
|
472 |
-
msgstr "
|
473 |
-
|
474 |
-
|
475 |
-
|
476 |
-
|
477 |
-
|
478 |
-
|
479 |
-
|
480 |
-
|
481 |
-
"
|
482 |
-
"
|
483 |
-
"
|
484 |
-
"
|
485 |
-
|
486 |
-
|
487 |
-
|
488 |
-
|
489 |
-
|
490 |
-
|
491 |
-
|
492 |
-
|
493 |
-
|
494 |
-
|
495 |
-
"
|
496 |
-
|
497 |
-
|
498 |
-
|
499 |
-
|
500 |
-
|
501 |
-
|
502 |
-
|
503 |
-
|
504 |
-
|
505 |
-
|
506 |
-
|
507 |
-
|
508 |
-
|
509 |
-
|
510 |
-
"
|
511 |
-
msgstr ""
|
512 |
-
|
513 |
-
|
514 |
-
|
515 |
-
|
516 |
-
|
517 |
-
|
518 |
-
|
519 |
-
|
520 |
-
|
521 |
-
|
522 |
-
|
523 |
-
|
524 |
-
|
525 |
-
|
526 |
-
"
|
527 |
-
"
|
528 |
-
|
529 |
-
|
530 |
-
"
|
531 |
-
"
|
532 |
-
|
533 |
-
|
534 |
-
|
535 |
-
|
536 |
-
|
537 |
-
"
|
538 |
-
"
|
539 |
-
|
540 |
-
|
541 |
-
"
|
542 |
-
"und
|
543 |
-
|
544 |
-
|
545 |
-
|
546 |
-
|
547 |
-
|
548 |
-
"
|
549 |
-
"
|
550 |
-
|
551 |
-
|
552 |
-
"
|
553 |
-
"
|
554 |
-
|
555 |
-
|
556 |
-
|
557 |
-
|
558 |
-
|
559 |
-
"
|
560 |
-
"
|
561 |
-
|
562 |
-
|
563 |
-
"
|
564 |
-
"
|
565 |
-
|
566 |
-
|
567 |
-
#~
|
568 |
-
|
569 |
-
#~
|
570 |
-
#~ "
|
571 |
-
#~
|
572 |
-
#~
|
573 |
-
#~ "
|
574 |
-
|
575 |
-
|
576 |
-
#~
|
577 |
-
#~
|
578 |
-
|
579 |
-
#~
|
580 |
-
#~
|
581 |
-
|
582 |
-
#~ "
|
583 |
-
|
584 |
-
|
585 |
-
#~
|
586 |
-
|
587 |
-
#~
|
588 |
-
#~ msgstr "
|
589 |
-
|
590 |
-
#~
|
591 |
-
|
592 |
-
#~
|
593 |
-
#~
|
594 |
-
|
595 |
-
|
596 |
-
#~
|
597 |
-
#~ "
|
598 |
-
#~ "strong
|
599 |
-
|
600 |
-
#~
|
601 |
-
#~ "
|
602 |
-
|
603 |
-
#~ "
|
604 |
-
|
605 |
-
|
606 |
-
#~
|
607 |
-
#~ "
|
608 |
-
#~
|
609 |
-
#~
|
610 |
-
#~ "
|
611 |
-
|
612 |
-
#~
|
613 |
-
|
614 |
-
#~
|
615 |
-
#~
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: featured-video-plus 1.3 de_DE\n"
|
4 |
+
"POT-Creation-Date: 2013-04-16 11:06+0100\n"
|
5 |
+
"PO-Revision-Date: 2013-04-16 11:08+0100\n"
|
6 |
+
"Last-Translator: Alexander Höreth <a.hoereth@gmail.com>\n"
|
7 |
+
"Language-Team: a.hoereth <a.hoereth@gmail.com>\n"
|
8 |
+
"Language: de_DE\n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"X-Generator: Poedit 1.5.4\n"
|
13 |
+
"X-Poedit-KeywordsList: __;_e\n"
|
14 |
+
"X-Poedit-Basepath: ..\n"
|
15 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
+
"X-Poedit-SearchPath-0: php\n"
|
17 |
+
|
18 |
+
#: php/backend.php:32
|
19 |
+
msgid "Video URL"
|
20 |
+
msgstr "Video URL"
|
21 |
+
|
22 |
+
#: php/backend.php:33
|
23 |
+
msgid "Fallback: same video, different format"
|
24 |
+
msgstr "Fallback: gleiche Video, anderes Format"
|
25 |
+
|
26 |
+
#: php/backend.php:92 php/backend.php:674 php/backend.php:681
|
27 |
+
#: php/backend.php:698 php/backend.php:700
|
28 |
+
msgid "Featured Video"
|
29 |
+
msgstr "Beitragsvideo"
|
30 |
+
|
31 |
+
#: php/backend.php:123
|
32 |
+
msgid "Outdated WordPress Version"
|
33 |
+
msgstr "Veraltete WordPress Version"
|
34 |
+
|
35 |
+
#: php/backend.php:123
|
36 |
+
#, php-format
|
37 |
+
msgid ""
|
38 |
+
"There is WordPress 3.5 out there! The plugin supports older versions way "
|
39 |
+
"back to 3.1 - but %s is defenitly to old!"
|
40 |
+
msgstr ""
|
41 |
+
"Es gibt schon WordPress 3.5! Das Plugin unterstützt alle Versionen ab 3.1 - "
|
42 |
+
"aber %s ist wirklich zu alt!"
|
43 |
+
|
44 |
+
#: php/backend.php:134
|
45 |
+
msgid "Set Featured Video"
|
46 |
+
msgstr "Beitragsvideo festlegen"
|
47 |
+
|
48 |
+
#: php/backend.php:134
|
49 |
+
msgid "Set featured video"
|
50 |
+
msgstr "Beitragsvideo festlegen"
|
51 |
+
|
52 |
+
#: php/backend.php:143
|
53 |
+
msgid "Set Featured Video Fallback"
|
54 |
+
msgstr "Beitragsvideo-Ersatz festlegen"
|
55 |
+
|
56 |
+
#: php/backend.php:143
|
57 |
+
msgid "Set featured video fallback"
|
58 |
+
msgstr "Beitragsvideo Fallback festlegen"
|
59 |
+
|
60 |
+
#: php/backend.php:152 php/backend.php:626
|
61 |
+
msgid "Supported Video Formats"
|
62 |
+
msgstr "Unterstützte Videoformate"
|
63 |
+
|
64 |
+
#: php/backend.php:152
|
65 |
+
msgid "or"
|
66 |
+
msgstr "oder"
|
67 |
+
|
68 |
+
#: php/backend.php:152 php/backend.php:625
|
69 |
+
msgid "More information"
|
70 |
+
msgstr "Mehr Informationen"
|
71 |
+
|
72 |
+
#: php/backend.php:157
|
73 |
+
msgid "Fallback Video"
|
74 |
+
msgstr "Fallback Video"
|
75 |
+
|
76 |
+
#: php/backend.php:157
|
77 |
+
msgid ""
|
78 |
+
"The two input fields should contain the same video but in distinct formats."
|
79 |
+
msgstr ""
|
80 |
+
"Die zwei Eingabefelder sollen das gleiche Video in unterschiedlichen "
|
81 |
+
"Formaten enthalten."
|
82 |
+
|
83 |
+
#: php/backend.php:164
|
84 |
+
msgid "Hint"
|
85 |
+
msgstr "Hinweis"
|
86 |
+
|
87 |
+
#: php/backend.php:164
|
88 |
+
#, php-format
|
89 |
+
msgid "Take a look into the %sContextual Help%s."
|
90 |
+
msgstr "Wirf einen Blick in die %sHilfe%s."
|
91 |
+
|
92 |
+
#: php/backend.php:170 php/settings.php:399
|
93 |
+
msgid "Featured Image"
|
94 |
+
msgstr ""
|
95 |
+
|
96 |
+
#: php/backend.php:170
|
97 |
+
msgid ""
|
98 |
+
"For automatically displaying the Featured Video a Featured Image is required."
|
99 |
+
msgstr ""
|
100 |
+
"Um das Artikelvideo automatisch im Theme anzeigen zu können, muss ein "
|
101 |
+
"Artikelbild festgelegt werden."
|
102 |
+
|
103 |
+
#: php/backend.php:175
|
104 |
+
msgid "Set as Featured Image"
|
105 |
+
msgstr "Als Beitragsbild festlegen"
|
106 |
+
|
107 |
+
#: php/backend.php:179 php/settings.php:70
|
108 |
+
msgid "The current theme does not support Featured Images"
|
109 |
+
msgstr "Das aktuelle Theme nutzt keine Beitragsbilder."
|
110 |
+
|
111 |
+
#: php/backend.php:179
|
112 |
+
#, php-format
|
113 |
+
msgid ""
|
114 |
+
"To display Featured Videos you need to use the <code>Shortcode</code> or "
|
115 |
+
"<code>PHP functions</code>. To hide this notice deactivate "<em>Replace "
|
116 |
+
"Featured Images</em>" in the %sMedia Settings%s."
|
117 |
+
msgstr ""
|
118 |
+
"Damit Beitragsvideos in deinem Theme angezeigt werden, musst du den "
|
119 |
+
"<code>Shortcode</code> oder die <code>PHP-Funktionen</code> verwenden. Um "
|
120 |
+
"diese Warnung zu verstecken, deaktiviere "<em>Artikelbilder ersetzen</"
|
121 |
+
"em>" in deinen %sMedien Einstellungen%s."
|
122 |
+
|
123 |
+
#: php/backend.php:620
|
124 |
+
#, php-format
|
125 |
+
msgid ""
|
126 |
+
"To use local videos, copy the <code>Link To Media File</code> from your "
|
127 |
+
"%sMedia Library%s and paste it into the text field."
|
128 |
+
msgstr ""
|
129 |
+
"Um lokale Videos zu nutzen, kopiere den <code>Link zur Medien-Datei</code> "
|
130 |
+
"aus deiner %sMediathek%s und füge ihn in das Textfeld ein."
|
131 |
+
|
132 |
+
#: php/backend.php:621
|
133 |
+
#, php-format
|
134 |
+
msgid ""
|
135 |
+
"To use local videos, copy the <code>File URL</code> from your %sMedia Library"
|
136 |
+
"%s and paste it into the text field."
|
137 |
+
msgstr ""
|
138 |
+
"Um lokale Videos zu nutzen, kopiere die <code>Datei-URL</code> aus deiner "
|
139 |
+
"%sMediathek%s und füge sie in das Textfeld ein."
|
140 |
+
|
141 |
+
#: php/backend.php:625
|
142 |
+
msgid ""
|
143 |
+
"The second text field is intended to hold the URL to the same video in a "
|
144 |
+
"different format. It will be used as fallback if the primary file can not be "
|
145 |
+
"played."
|
146 |
+
msgstr ""
|
147 |
+
"Das zweite Textfeld ist für eine URL zu dem gleichen Video in einem anderen "
|
148 |
+
"Videoformat gedacht. Dieses zweite Video wird dann als Fallback benutzt, "
|
149 |
+
"falls das erste Video nicht kompatibel ist."
|
150 |
+
|
151 |
+
#: php/backend.php:628
|
152 |
+
msgid "Converting your videos"
|
153 |
+
msgstr "Videos konvertieren"
|
154 |
+
|
155 |
+
#: php/backend.php:629
|
156 |
+
#, php-format
|
157 |
+
msgid ""
|
158 |
+
"Take a look at the %sMiro Video Converter%s. It is open source, lightweight "
|
159 |
+
"and compatible with Windows, Mac and Linux."
|
160 |
+
msgstr ""
|
161 |
+
"Schau dir den %sMiro Video Converter%s an. Er is Open Source, klein, einfach "
|
162 |
+
"zu verwenden und mit Windows, Mac und Linux kompatibel."
|
163 |
+
|
164 |
+
#: php/backend.php:630
|
165 |
+
msgid "Fixing upload errors"
|
166 |
+
msgstr "Videoupload Fehler beheben"
|
167 |
+
|
168 |
+
#: php/backend.php:632
|
169 |
+
#, php-format
|
170 |
+
msgid ""
|
171 |
+
"Read %sthis%s on how to increase the <strong>maximum file upload size</"
|
172 |
+
"strong>."
|
173 |
+
msgstr ""
|
174 |
+
"Lies %sdas hier%s, um zu erfahren, wie man das <strong>Dateigrößenlimit</"
|
175 |
+
"strong> erhöht."
|
176 |
+
|
177 |
+
#: php/backend.php:633
|
178 |
+
#, php-format
|
179 |
+
msgid ""
|
180 |
+
"WordPress by default does not support <code>webM</code>. The plugin "
|
181 |
+
"activates it, but under some conditions this might not be enough. %sHere%s "
|
182 |
+
"you can get more information on this."
|
183 |
+
msgstr ""
|
184 |
+
"Normalerweise unterstützt WordPress kein <code>webM</code>. Das Plugin "
|
185 |
+
"aktiviert die unterstützung, aber manchmal reicht das noch nicht. %sHier%s "
|
186 |
+
"gibt es mehr Informationen."
|
187 |
+
|
188 |
+
#: php/backend.php:635
|
189 |
+
msgid "Flash Fallback"
|
190 |
+
msgstr "Flash Fallback"
|
191 |
+
|
192 |
+
#: php/backend.php:636
|
193 |
+
#, php-format
|
194 |
+
msgid ""
|
195 |
+
"The video player, %sVIDEOJS%s, features an Adobe Flash fallback. All you "
|
196 |
+
"need to do is provide an <code>mp4</code>-video."
|
197 |
+
msgstr ""
|
198 |
+
"Der Video Player, %sVIDEOJS%s, bietet einen Adobe Flash Fallback. Du musst "
|
199 |
+
"einfach nur ein <code>mp4</code>-Video einbinden."
|
200 |
+
|
201 |
+
#: php/backend.php:640
|
202 |
+
msgid ""
|
203 |
+
"These are some of the tested URL formats. Everything in bold is required, "
|
204 |
+
"everything in brackets is optional."
|
205 |
+
msgstr ""
|
206 |
+
"Das hier sind einige getestete URL Formate. Alles fettgedruckte ist "
|
207 |
+
"notwendig, alles in Klammern optional."
|
208 |
+
|
209 |
+
#: php/backend.php:674 php/backend.php:698
|
210 |
+
msgid "Local Media"
|
211 |
+
msgstr "Lokale Medien"
|
212 |
+
|
213 |
+
#: php/backend.php:681 php/backend.php:700
|
214 |
+
msgid "Valid URLs"
|
215 |
+
msgstr "Video URLs"
|
216 |
+
|
217 |
+
#: php/settings.php:21
|
218 |
+
msgid "Featured Videos"
|
219 |
+
msgstr "Beitragsvideos"
|
220 |
+
|
221 |
+
#: php/settings.php:23
|
222 |
+
msgid "Replace Featured Images"
|
223 |
+
msgstr "Beitragsbilder ersetzen"
|
224 |
+
|
225 |
+
#: php/settings.php:24
|
226 |
+
msgid "Autoplay"
|
227 |
+
msgstr ""
|
228 |
+
|
229 |
+
#: php/settings.php:25
|
230 |
+
msgid "Video Sizing"
|
231 |
+
msgstr "Videogröße"
|
232 |
+
|
233 |
+
#: php/settings.php:26
|
234 |
+
msgid "Video Align"
|
235 |
+
msgstr "Video-Ausrichtung"
|
236 |
+
|
237 |
+
#: php/settings.php:27
|
238 |
+
msgid "Local Video Options"
|
239 |
+
msgstr "Lokale Videos"
|
240 |
+
|
241 |
+
#: php/settings.php:28
|
242 |
+
msgid "YouTube Options"
|
243 |
+
msgstr "YouTube Optionen"
|
244 |
+
|
245 |
+
#: php/settings.php:29
|
246 |
+
msgid "Vimeo Options"
|
247 |
+
msgstr "Vimeo Optionen"
|
248 |
+
|
249 |
+
#: php/settings.php:30
|
250 |
+
msgid "Dailymotion Options"
|
251 |
+
msgstr "Dailymotion Optionen"
|
252 |
+
|
253 |
+
#: php/settings.php:31
|
254 |
+
msgid "Support"
|
255 |
+
msgstr "Support"
|
256 |
+
|
257 |
+
#: php/settings.php:45
|
258 |
+
#, php-format
|
259 |
+
msgid ""
|
260 |
+
"To display your featured videos you can either make use of the automatic "
|
261 |
+
"replacement, use the %s or manually edit your theme's source files to make "
|
262 |
+
"use of the plugins PHP-functions."
|
263 |
+
msgstr ""
|
264 |
+
"Um die Artikelvideos anzuzeigen kannst du entweder das automatische Ersetzen "
|
265 |
+
"der Artikelbilder nutzen, auf den %s zurückgreifen oder manuel die PHP-"
|
266 |
+
"Funktionen in deine Theme Dateien integrieren."
|
267 |
+
|
268 |
+
#: php/settings.php:46
|
269 |
+
#, php-format
|
270 |
+
msgid ""
|
271 |
+
"For more information about Shortcode and PHP functions see the %sContextual "
|
272 |
+
"Help%s."
|
273 |
+
msgstr ""
|
274 |
+
"Für mehr Informationen über den Shortcode und die PHP-Funktionen schaue in "
|
275 |
+
"die %sHilfe%s."
|
276 |
+
|
277 |
+
#: php/settings.php:62 php/settings.php:86
|
278 |
+
msgid "yes"
|
279 |
+
msgstr "ja"
|
280 |
+
|
281 |
+
#: php/settings.php:62 php/settings.php:88 php/settings.php:111
|
282 |
+
#: php/settings.php:121 php/settings.php:142
|
283 |
+
msgid "default"
|
284 |
+
msgstr "default"
|
285 |
+
|
286 |
+
#: php/settings.php:64 php/settings.php:88
|
287 |
+
msgid "no"
|
288 |
+
msgstr "nein"
|
289 |
+
|
290 |
+
#: php/settings.php:65
|
291 |
+
msgid ""
|
292 |
+
"If a Featured Video is available it can be displayed in place of the "
|
293 |
+
"Featured Image. Still, a Featured Image is required."
|
294 |
+
msgstr ""
|
295 |
+
"Wenn ein Artikelvideo vorhanden ist kann es anstelle des Artikelbildes "
|
296 |
+
"angezeigt werden. Dafür muss trotzdem ein Artikelbild gesetzt sein!"
|
297 |
+
|
298 |
+
#: php/settings.php:70
|
299 |
+
msgid ""
|
300 |
+
"To display Featured Videos you need to use the <code>Shortcode</code> or "
|
301 |
+
"<code>PHP functions</code>."
|
302 |
+
msgstr ""
|
303 |
+
"Um Artikelvideos anzuzeigen musst du den <code>Shortcode</code> oder die "
|
304 |
+
"<code>PHP-Funktionen</code> nutzen."
|
305 |
+
|
306 |
+
#: php/settings.php:89
|
307 |
+
msgid ""
|
308 |
+
"YouTube, Vimeo and Dailymotion videos can autoplay when a single post/page "
|
309 |
+
"is being viewed."
|
310 |
+
msgstr ""
|
311 |
+
"Wenn gesetzt, starten YouTube, Vimeo und Dailymotion Videos automatisch wenn "
|
312 |
+
"sie auf der Seite eines einzelnen Beitrags angezeigt werden."
|
313 |
+
|
314 |
+
#: php/settings.php:108
|
315 |
+
msgid "Width"
|
316 |
+
msgstr "Breite"
|
317 |
+
|
318 |
+
#: php/settings.php:118
|
319 |
+
msgid "Height"
|
320 |
+
msgstr "Höhe"
|
321 |
+
|
322 |
+
#: php/settings.php:127
|
323 |
+
msgid ""
|
324 |
+
"When using <code>auto</code> the video will be adjusted to fit it's parent "
|
325 |
+
"element while sticking to it's ratio. Using a <code>fixed</code> height and "
|
326 |
+
"width might result in <em>not so pretty</em> black bars."
|
327 |
+
msgstr ""
|
328 |
+
"Wenn <code>auto</code> gesetzt ist, wird das jeweilige Video automatisch an "
|
329 |
+
"das Elternelement angepasst. Dabei wird versucht, die Seitenverhältnisse "
|
330 |
+
"beizubehalten. Feste Breite und/oder Höhe kann zu <em>nicht so schönen</em> "
|
331 |
+
"schwarzen Balken führen."
|
332 |
+
|
333 |
+
#: php/settings.php:141
|
334 |
+
msgid "left"
|
335 |
+
msgstr "links"
|
336 |
+
|
337 |
+
#: php/settings.php:142
|
338 |
+
msgid "center"
|
339 |
+
msgstr "zentriert"
|
340 |
+
|
341 |
+
#: php/settings.php:143
|
342 |
+
msgid "right"
|
343 |
+
msgstr "rechts"
|
344 |
+
|
345 |
+
#: php/settings.php:162
|
346 |
+
msgid "Use CDN"
|
347 |
+
msgstr "Nutze CDN"
|
348 |
+
|
349 |
+
#: php/settings.php:163
|
350 |
+
msgid "Include JS"
|
351 |
+
msgstr "JS einbinden"
|
352 |
+
|
353 |
+
#: php/settings.php:164
|
354 |
+
msgid "Include CSS"
|
355 |
+
msgstr "CSS einbinden"
|
356 |
+
|
357 |
+
#: php/settings.php:165
|
358 |
+
msgid ""
|
359 |
+
"Disabling JS and/or CSS will break the local video player. Disable only when "
|
360 |
+
"you want to replace VideoJS with a different script and know what you are "
|
361 |
+
"doing."
|
362 |
+
msgstr ""
|
363 |
+
"JS und/oder CSS einbindung ist für die richtige Darstellung von lokalen "
|
364 |
+
"Videos notwendig. Nutze diese funktionen nur wenn du VideoJS durch ein "
|
365 |
+
"anderes Skript austauschen willst und weißt was du tust."
|
366 |
+
|
367 |
+
#: php/settings.php:166
|
368 |
+
msgid "Use featured image as video thumbnail"
|
369 |
+
msgstr "Artikelbild als video thumbnail nutzen"
|
370 |
+
|
371 |
+
#: php/settings.php:187
|
372 |
+
msgid "Light Theme"
|
373 |
+
msgstr "Helles Design"
|
374 |
+
|
375 |
+
#: php/settings.php:188
|
376 |
+
msgid "Fullscreen Button"
|
377 |
+
msgstr "Vollbildschalter"
|
378 |
+
|
379 |
+
#: php/settings.php:196
|
380 |
+
msgid "Info"
|
381 |
+
msgstr "Info"
|
382 |
+
|
383 |
+
#: php/settings.php:198
|
384 |
+
msgid "Related Videos"
|
385 |
+
msgstr "Verwandte Videos"
|
386 |
+
|
387 |
+
#: php/settings.php:199
|
388 |
+
msgid "Javascript API"
|
389 |
+
msgstr ""
|
390 |
+
|
391 |
+
#: php/settings.php:200
|
392 |
+
msgid "White Progressbar"
|
393 |
+
msgstr "Weißer Fortschrittsbalken"
|
394 |
+
|
395 |
+
#: php/settings.php:202 php/settings.php:254
|
396 |
+
msgid "Logo"
|
397 |
+
msgstr "Logo"
|
398 |
+
|
399 |
+
#: php/settings.php:223
|
400 |
+
msgid "Portrait"
|
401 |
+
msgstr "Portrait"
|
402 |
+
|
403 |
+
#: php/settings.php:224
|
404 |
+
msgid "Title"
|
405 |
+
msgstr "Titel"
|
406 |
+
|
407 |
+
#: php/settings.php:225
|
408 |
+
msgid "Byline"
|
409 |
+
msgstr "Author"
|
410 |
+
|
411 |
+
#: php/settings.php:228
|
412 |
+
msgid "Color"
|
413 |
+
msgstr "Farbe"
|
414 |
+
|
415 |
+
#: php/settings.php:232
|
416 |
+
msgid "Vimeo Plus Videos might ignore these settings."
|
417 |
+
msgstr "Vimeo Plus Videos können diese Einstellungen ignorieren."
|
418 |
+
|
419 |
+
#: php/settings.php:255
|
420 |
+
msgid "Videoinfo"
|
421 |
+
msgstr "Videoinfo"
|
422 |
+
|
423 |
+
#: php/settings.php:256
|
424 |
+
msgid "Syndication Key"
|
425 |
+
msgstr "Syndication Schlüssel"
|
426 |
+
|
427 |
+
#: php/settings.php:260
|
428 |
+
msgid "Foreground"
|
429 |
+
msgstr "Vordergrund"
|
430 |
+
|
431 |
+
#: php/settings.php:265
|
432 |
+
msgid "Highlight"
|
433 |
+
msgstr "Hervorhebung"
|
434 |
+
|
435 |
+
#: php/settings.php:270
|
436 |
+
msgid "Background"
|
437 |
+
msgstr "Hintergrund"
|
438 |
+
|
439 |
+
#: php/settings.php:287
|
440 |
+
#, php-format
|
441 |
+
msgid ""
|
442 |
+
"If you have found a bug or are missing a specific video service, please "
|
443 |
+
"%slet me know%s in the support forum. Elsewise, if you like the plugin: "
|
444 |
+
"Please %srate it!%s"
|
445 |
+
msgstr ""
|
446 |
+
"Wenn du einen Fehler gefunden hast oder einen bestimmten Video-Anbieter "
|
447 |
+
"vermisst, %ssag bescheid%s; Ansonsten, wenn dir das Plugin gefällt, bitte "
|
448 |
+
"%sbewerte es!%s"
|
449 |
+
|
450 |
+
#: php/settings.php:374
|
451 |
+
msgid "Displays the video in its default size."
|
452 |
+
msgstr "Stellt das Video in seiner Standardgröße dar."
|
453 |
+
|
454 |
+
#: php/settings.php:378
|
455 |
+
msgid ""
|
456 |
+
"Displays the video with an width of 300 pixel. Height will be fitted to the "
|
457 |
+
"aspect ratio."
|
458 |
+
msgstr ""
|
459 |
+
"Stellt das Video mit einer breite von 300 Pixeln dar. Die Höhe wird "
|
460 |
+
"automatisch angepasst, so dass das Seitenverhältniss erhalten bleibt."
|
461 |
+
|
462 |
+
#: php/settings.php:382
|
463 |
+
msgid "Displays the video with an fixed width and height."
|
464 |
+
msgstr "Stellt das Video mit fester Breite und Höhe dar."
|
465 |
+
|
466 |
+
#: php/settings.php:396
|
467 |
+
#, php-format
|
468 |
+
msgid ""
|
469 |
+
"All parameters are optional. If %s the current post's id will be used. %s is "
|
470 |
+
"either a string keyword (thumbnail, medium, large or full) or a 2-item array "
|
471 |
+
"representing width and height in pixels, e.g. array(32,32)."
|
472 |
+
msgstr ""
|
473 |
+
"Alle Parameter sind optional. Wenn %s gilt, wird die ID des aktuellen "
|
474 |
+
"Beitrags genutzt. %s ist entweder ein String (thumbnail, medium, large oder "
|
475 |
+
"full) oder ein Array mit zwei Stellen (Breite und Höhe); Zum Beispiel array"
|
476 |
+
"(32,32)."
|
477 |
+
|
478 |
+
#: php/settings.php:399
|
479 |
+
#, php-format
|
480 |
+
msgid ""
|
481 |
+
"The functions are implemented corresponding to the original %sfunctions%s: "
|
482 |
+
"They are intended to be used and to act the same way. Take a look into the "
|
483 |
+
"WordPress Codex for further guidance:"
|
484 |
+
msgstr ""
|
485 |
+
"Die Funktionen sind nach den original %sFunktionen%s implementiert. Sie "
|
486 |
+
"sollten genauso genutzt werden können und sich genauso verhalten. Schau dir "
|
487 |
+
"für mehr Informationen den WordPress Codex an:"
|
488 |
+
|
489 |
+
#: php/settings.php:422 php/settings.php:445
|
490 |
+
msgid "PHP-Functions"
|
491 |
+
msgstr "PHP-Funktionen"
|
492 |
+
|
493 |
+
#: php/upgrade.php:160 php/upgrade.php:171 php/upgrade.php:182
|
494 |
+
#: php/upgrade.php:193 php/upgrade.php:204
|
495 |
+
msgid "Featured Video Plus was <strong>upgraded</strong>."
|
496 |
+
msgstr "Featured Video Plus wurde <strong>aktualisiert</strong>."
|
497 |
+
|
498 |
+
#: php/upgrade.php:160
|
499 |
+
#, php-format
|
500 |
+
msgid ""
|
501 |
+
"%s brings new options for YouTube and local videos, fixes a whole bunch of "
|
502 |
+
"glitches and introduces a new PHP-function."
|
503 |
+
msgstr ""
|
504 |
+
"%s bringt neue Einstellungsmöglichkeiten für YouTube und lokale Videos, "
|
505 |
+
"behebt einige Fehler und baut eine neue PHP-Funktion ein."
|
506 |
+
|
507 |
+
#: php/upgrade.php:160 php/upgrade.php:171 php/upgrade.php:182
|
508 |
+
#: php/upgrade.php:193 php/upgrade.php:204
|
509 |
+
#, php-format
|
510 |
+
msgid "If you like the plugin, please %srate it%s."
|
511 |
+
msgstr "Wenn dir das Plugin gefällt, bitte %sbewerte es%s."
|
512 |
+
|
513 |
+
#: php/upgrade.php:171
|
514 |
+
#, php-format
|
515 |
+
msgid ""
|
516 |
+
"%s <strong>ajax</strong>ifies the Featured Video box, introduces new options "
|
517 |
+
"for YouTube and local videos and a new PHP-function."
|
518 |
+
msgstr ""
|
519 |
+
"In %s wurde die Featured Video box überarbeitet und unterstützt nun AJAX. "
|
520 |
+
"Außerdem gibt es neue Optionen in den Medieneinstellungen, besonders für "
|
521 |
+
"YouTube und lokale Videos."
|
522 |
+
|
523 |
+
#: php/upgrade.php:182
|
524 |
+
#, php-format
|
525 |
+
msgid ""
|
526 |
+
"%s features a seamless <strong>WP3.5 Media Manager</strong> integration, an "
|
527 |
+
"all new <strong>ajax</strong>ified metabox, time-links (#t=4m2s) for YouTube "
|
528 |
+
"and Dailymotion, new PHP functions for developers and more."
|
529 |
+
msgstr ""
|
530 |
+
"%s integriert den <strong>WP3.5 Media Manager</strong> nahtlos, unterstützt "
|
531 |
+
"nun AJAX, bietet time-links für YouTube und Dailymotion(#t=4m2s), einige "
|
532 |
+
"neue Einstellungen und neue PHP Funktionen für Entwickler."
|
533 |
+
|
534 |
+
#: php/upgrade.php:193
|
535 |
+
#, php-format
|
536 |
+
msgid ""
|
537 |
+
"%s features a seamless WP3.5 Media Manager integration, an ajaxified "
|
538 |
+
"metabox, time-links (#t=4m2s) for YouTube and Dailymotion, more "
|
539 |
+
"customization settings and internationalization."
|
540 |
+
msgstr ""
|
541 |
+
"%s integriert den <strong>WP3.5 Media Manager</strong> nahtlos, bringt AJAX, "
|
542 |
+
"bietet time-links für YouTube und Dailymotion(#t=4m2s), mehr Einstellungen "
|
543 |
+
"und Internationalisierung."
|
544 |
+
|
545 |
+
#: php/upgrade.php:204
|
546 |
+
#, php-format
|
547 |
+
msgid ""
|
548 |
+
"%s features support for <strong>Local Videos</strong>, a seamless WP3.5 "
|
549 |
+
"Media Manager integration, an ajaxified metabox, time-links (#t=4m2s) for "
|
550 |
+
"YouTube and Dailymotion and many more customization settings."
|
551 |
+
msgstr ""
|
552 |
+
"%s integriert unterstützung für <strong>lokale Videos</strong>, den neuen "
|
553 |
+
"WP3.5 Media Manager, eine überarbeitete AJAX-Metabox, time-links (#t=4m2s) "
|
554 |
+
"für YouTube und Dailymotion und viele neue Einstellungsmöglichkeiten."
|
555 |
+
|
556 |
+
#: php/upgrade.php:216
|
557 |
+
#, php-format
|
558 |
+
msgid ""
|
559 |
+
"Featured Video Plus is <strong>ready to use</strong>. There is a new box on "
|
560 |
+
"post & page edit screens for you to add videos. <strong>Take a look at your "
|
561 |
+
"new %sMedia Settings%s</strong>."
|
562 |
+
msgstr ""
|
563 |
+
"Featured Video Plus wurde <strong>aktiviert</strong>. Beim bearbeiten deiner "
|
564 |
+
"Einträge gibt es eine neue Box um Artikelvideos hinzuzufügen. Außerdem: "
|
565 |
+
"<strong>Schau in deine %sMedien Einstellungen%s</strong>."
|
566 |
+
|
567 |
+
#~ msgid ""
|
568 |
+
#~ "The plugin logs it's version, the WordPress version and WordPress "
|
569 |
+
#~ "language for internal statistics. Those help for future plugin "
|
570 |
+
#~ "development."
|
571 |
+
#~ msgstr ""
|
572 |
+
#~ "Das Plugin speichert seine Version, die WordPress Version und WordPress "
|
573 |
+
#~ "Spracheinstellung für eigene Statistiken."
|
574 |
+
|
575 |
+
#~ msgid ""
|
576 |
+
#~ "No personal user information is being collected. Still, you can easily "
|
577 |
+
#~ "Opt-Out and have the data deleted:"
|
578 |
+
#~ msgstr ""
|
579 |
+
#~ "Es werden keine persönlichen Nutzerinformationen gespeichert. Wenn du "
|
580 |
+
#~ "willst kannst du dich abmelden und deine Daten werden gelöscht:"
|
581 |
+
|
582 |
+
#~ msgid "VIDEOJS Player Options"
|
583 |
+
#~ msgstr "VIDEOJS Player Optionen"
|
584 |
+
|
585 |
+
#~ msgid ""
|
586 |
+
#~ "%s features more customization settings, internationalization, better "
|
587 |
+
#~ "error handling and experimental LiveLeak integration."
|
588 |
+
#~ msgstr ""
|
589 |
+
#~ "%s integriert mehr Einstellungsmöglichkeiten, Internationalisierung, "
|
590 |
+
#~ "bessere Fehlerbehandlung und experimentelle LiveLeak Integration."
|
591 |
+
|
592 |
+
#~ msgid "Align"
|
593 |
+
#~ msgstr "Ausrichtung"
|
594 |
+
|
595 |
+
#~ msgid "Found a bug or <strong>missing a specific video service</strong>?"
|
596 |
+
#~ msgstr ""
|
597 |
+
#~ "Hast du einen Fehler gefunden oder <strong>fehlt dir eine bestimmte Video "
|
598 |
+
#~ "Plattform</strong>?"
|
599 |
+
|
600 |
+
#~ msgid "Do you like the plugin?"
|
601 |
+
#~ msgstr "Gefällt dir das Plugin?"
|
602 |
+
|
603 |
+
#~ msgid "rate it"
|
604 |
+
#~ msgstr "bewerte es"
|
605 |
+
|
606 |
+
#~ msgid ""
|
607 |
+
#~ "All parameters are optional. If %s the current post's id will be used."
|
608 |
+
#~ msgstr ""
|
609 |
+
#~ "Alle Parameter sind optional. Wenn %s gilt, wird die ID vom aktuellen "
|
610 |
+
#~ "Eintrag verwendet."
|
611 |
+
|
612 |
+
#~ msgid ""
|
613 |
+
#~ "Featured Video Plus was <strong>upgraded</strong>. Version <strong>%s</"
|
614 |
+
#~ "strong> features more customization settings and a more dynamic admin "
|
615 |
+
#~ "interface."
|
616 |
+
#~ msgstr ""
|
617 |
+
#~ "Version %s integriert mehr Einstellungsmöglichkeiten, "
|
618 |
+
#~ "Internationalisierung, besseres Fehlerbehandlung und LiveLeak Videos "
|
619 |
+
#~ "(experimentell)."
|
620 |
+
|
621 |
+
#~ msgid ""
|
622 |
+
#~ "Featured Video Plus was <strong>upgraded</strong>. Version <strong>%s</"
|
623 |
+
#~ "strong> now supports <strong>local videos</strong> and many more "
|
624 |
+
#~ "customization settings."
|
625 |
+
#~ msgstr ""
|
626 |
+
#~ "Version %s integriert <strong>lokale Videos</strong>, LiveLeak Videos "
|
627 |
+
#~ "(experimentell), mehr Einstellungsmöglichkeiten, Internationalisierung "
|
628 |
+
#~ "und besseres Fehlerbehandlung."
|
629 |
+
|
630 |
+
#~ msgid "YouTube, Vimeo, Dailymotion; Local Media"
|
631 |
+
#~ msgstr "Video Formate"
|
lng/featured-video-plus.pot
CHANGED
@@ -1,487 +1,490 @@
|
|
1 |
-
msgid ""
|
2 |
-
msgstr ""
|
3 |
-
"Project-Id-Version: featured-video-plus 1.3\n"
|
4 |
-
"POT-Creation-Date: 2013-
|
5 |
-
"PO-Revision-Date: 2013-
|
6 |
-
"Last-Translator: Alexander Höreth <a.hoereth@gmail.com>\n"
|
7 |
-
"Language-Team: a.hoereth <a.hoereth@gmail.com>\n"
|
8 |
-
"Language: en\n"
|
9 |
-
"MIME-Version: 1.0\n"
|
10 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
-
"Content-Transfer-Encoding: 8bit\n"
|
12 |
-
"X-Generator: Poedit 1.5.4\n"
|
13 |
-
"X-Poedit-KeywordsList: __;_e\n"
|
14 |
-
"X-Poedit-Basepath: ..\n"
|
15 |
-
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
-
"X-Poedit-SearchPath-0: php\n"
|
17 |
-
|
18 |
-
#: php/backend.php:32
|
19 |
-
msgid "Video URL"
|
20 |
-
msgstr ""
|
21 |
-
|
22 |
-
#: php/backend.php:33
|
23 |
-
msgid "Fallback: same video, different format"
|
24 |
-
msgstr ""
|
25 |
-
|
26 |
-
#: php/backend.php:92 php/backend.php:
|
27 |
-
#: php/backend.php:
|
28 |
-
msgid "Featured Video"
|
29 |
-
msgstr ""
|
30 |
-
|
31 |
-
#: php/backend.php:123
|
32 |
-
msgid "Outdated WordPress Version"
|
33 |
-
msgstr ""
|
34 |
-
|
35 |
-
#: php/backend.php:123
|
36 |
-
#, php-format
|
37 |
-
msgid ""
|
38 |
-
"There is WordPress 3.5 out there! The plugin supports older versions way "
|
39 |
-
"back to 3.1 - but %s is defenitly to old!"
|
40 |
-
msgstr ""
|
41 |
-
|
42 |
-
#: php/backend.php:134
|
43 |
-
msgid "Set Featured Video"
|
44 |
-
msgstr ""
|
45 |
-
|
46 |
-
#: php/backend.php:134
|
47 |
-
msgid "Set featured video"
|
48 |
-
msgstr ""
|
49 |
-
|
50 |
-
#: php/backend.php:143
|
51 |
-
msgid "Set Featured Video Fallback"
|
52 |
-
msgstr ""
|
53 |
-
|
54 |
-
#: php/backend.php:143
|
55 |
-
msgid "Set featured video fallback"
|
56 |
-
msgstr ""
|
57 |
-
|
58 |
-
#: php/backend.php:152 php/backend.php:
|
59 |
-
msgid "Supported Video Formats"
|
60 |
-
msgstr ""
|
61 |
-
|
62 |
-
#: php/backend.php:152
|
63 |
-
msgid "or"
|
64 |
-
msgstr ""
|
65 |
-
|
66 |
-
#: php/backend.php:152 php/backend.php:
|
67 |
-
msgid "More information"
|
68 |
-
msgstr ""
|
69 |
-
|
70 |
-
#: php/backend.php:157
|
71 |
-
msgid "Fallback Video"
|
72 |
-
msgstr ""
|
73 |
-
|
74 |
-
#: php/backend.php:157
|
75 |
-
msgid ""
|
76 |
-
"The two input fields should contain the same video but in distinct formats."
|
77 |
-
msgstr ""
|
78 |
-
|
79 |
-
#: php/backend.php:164
|
80 |
-
msgid "Hint"
|
81 |
-
msgstr ""
|
82 |
-
|
83 |
-
#: php/backend.php:164
|
84 |
-
#, php-format
|
85 |
-
msgid "Take a look into the %sContextual Help%s."
|
86 |
-
msgstr ""
|
87 |
-
|
88 |
-
#: php/backend.php:170 php/settings.php:
|
89 |
-
msgid "Featured Image"
|
90 |
-
msgstr ""
|
91 |
-
|
92 |
-
#: php/backend.php:170
|
93 |
-
msgid ""
|
94 |
-
"For automatically displaying the Featured Video a Featured Image is required."
|
95 |
-
msgstr ""
|
96 |
-
|
97 |
-
#: php/backend.php:175
|
98 |
-
msgid "Set as Featured Image"
|
99 |
-
msgstr ""
|
100 |
-
|
101 |
-
#: php/backend.php:179 php/settings.php:70
|
102 |
-
msgid "The current theme does not support Featured Images"
|
103 |
-
msgstr ""
|
104 |
-
|
105 |
-
#: php/backend.php:179
|
106 |
-
#, php-format
|
107 |
-
msgid ""
|
108 |
-
"To display Featured Videos you need to use the <code>Shortcode</code> or "
|
109 |
-
"<code>PHP functions</code>. To hide this notice deactivate "<em>Replace "
|
110 |
-
"Featured Images</em>" in the %sMedia Settings%s."
|
111 |
-
msgstr ""
|
112 |
-
|
113 |
-
#: php/backend.php:
|
114 |
-
#, php-format
|
115 |
-
msgid ""
|
116 |
-
"To use local videos, copy the <code>Link To Media File</code> from your "
|
117 |
-
"%sMedia Library%s and paste it into the text field."
|
118 |
-
msgstr ""
|
119 |
-
|
120 |
-
#: php/backend.php:
|
121 |
-
#, php-format
|
122 |
-
msgid ""
|
123 |
-
"To use local videos, copy the <code>File URL</code> from your %sMedia Library"
|
124 |
-
"%s and paste it into the text field."
|
125 |
-
msgstr ""
|
126 |
-
|
127 |
-
#: php/backend.php:
|
128 |
-
msgid ""
|
129 |
-
"The second text field is intended to hold the URL to the same video in a "
|
130 |
-
"different format. It will be used as fallback if the primary file can not be "
|
131 |
-
"played."
|
132 |
-
msgstr ""
|
133 |
-
|
134 |
-
#: php/backend.php:
|
135 |
-
msgid "Converting your videos"
|
136 |
-
msgstr ""
|
137 |
-
|
138 |
-
#: php/backend.php:
|
139 |
-
#, php-format
|
140 |
-
msgid ""
|
141 |
-
"Take a look at the %sMiro Video Converter%s. It is open source, lightweight "
|
142 |
-
"and compatible with Windows, Mac and Linux."
|
143 |
-
msgstr ""
|
144 |
-
|
145 |
-
#: php/backend.php:
|
146 |
-
msgid "Fixing upload errors"
|
147 |
-
msgstr ""
|
148 |
-
|
149 |
-
#: php/backend.php:
|
150 |
-
#, php-format
|
151 |
-
msgid ""
|
152 |
-
"Read %sthis%s on how to increase the <strong>maximum file upload size</"
|
153 |
-
"strong>."
|
154 |
-
msgstr ""
|
155 |
-
|
156 |
-
#: php/backend.php:
|
157 |
-
#, php-format
|
158 |
-
msgid ""
|
159 |
-
"WordPress by default does not support <code>webM</code>. The plugin "
|
160 |
-
"activates it, but under some conditions this might not be enough. %sHere%s "
|
161 |
-
"you can get more information on this."
|
162 |
-
msgstr ""
|
163 |
-
|
164 |
-
#: php/backend.php:
|
165 |
-
msgid "Flash Fallback"
|
166 |
-
msgstr ""
|
167 |
-
|
168 |
-
#: php/backend.php:
|
169 |
-
#, php-format
|
170 |
-
msgid ""
|
171 |
-
"The video player, %sVIDEOJS%s, features an Adobe Flash fallback. All you "
|
172 |
-
"need to do is provide an <code>mp4</code>-video."
|
173 |
-
msgstr ""
|
174 |
-
|
175 |
-
#: php/backend.php:
|
176 |
-
msgid ""
|
177 |
-
"These are some of the tested URL formats. Everything in bold is required, "
|
178 |
-
"everything in brackets is optional."
|
179 |
-
msgstr ""
|
180 |
-
|
181 |
-
#: php/backend.php:
|
182 |
-
msgid "Local Media"
|
183 |
-
msgstr ""
|
184 |
-
|
185 |
-
#: php/backend.php:
|
186 |
-
msgid "Valid URLs"
|
187 |
-
msgstr ""
|
188 |
-
|
189 |
-
#: php/settings.php:21
|
190 |
-
msgid "Featured Videos"
|
191 |
-
msgstr ""
|
192 |
-
|
193 |
-
#: php/settings.php:23
|
194 |
-
msgid "Replace Featured Images"
|
195 |
-
msgstr ""
|
196 |
-
|
197 |
-
#: php/settings.php:24
|
198 |
-
msgid "Autoplay"
|
199 |
-
msgstr ""
|
200 |
-
|
201 |
-
#: php/settings.php:25
|
202 |
-
msgid "Video Sizing"
|
203 |
-
msgstr ""
|
204 |
-
|
205 |
-
#: php/settings.php:26
|
206 |
-
msgid "Video Align"
|
207 |
-
msgstr ""
|
208 |
-
|
209 |
-
#: php/settings.php:27
|
210 |
-
msgid "Local Video Options"
|
211 |
-
msgstr ""
|
212 |
-
|
213 |
-
#: php/settings.php:28
|
214 |
-
msgid "YouTube Options"
|
215 |
-
msgstr ""
|
216 |
-
|
217 |
-
#: php/settings.php:29
|
218 |
-
msgid "Vimeo Options"
|
219 |
-
msgstr ""
|
220 |
-
|
221 |
-
#: php/settings.php:30
|
222 |
-
msgid "Dailymotion Options"
|
223 |
-
msgstr ""
|
224 |
-
|
225 |
-
#: php/settings.php:31
|
226 |
-
msgid "Support"
|
227 |
-
msgstr ""
|
228 |
-
|
229 |
-
#: php/settings.php:45
|
230 |
-
#, php-format
|
231 |
-
msgid ""
|
232 |
-
"To display your featured videos you can either make use of the automatic "
|
233 |
-
"replacement, use the %s or manually edit your theme's source files to make "
|
234 |
-
"use of the plugins PHP-functions."
|
235 |
-
msgstr ""
|
236 |
-
|
237 |
-
#: php/settings.php:46
|
238 |
-
#, php-format
|
239 |
-
msgid ""
|
240 |
-
"For more information about Shortcode and PHP functions see the %sContextual "
|
241 |
-
"Help%s."
|
242 |
-
msgstr ""
|
243 |
-
|
244 |
-
#: php/settings.php:62 php/settings.php:86
|
245 |
-
msgid "yes"
|
246 |
-
msgstr ""
|
247 |
-
|
248 |
-
#: php/settings.php:62 php/settings.php:88 php/settings.php:111
|
249 |
-
#: php/settings.php:121 php/settings.php:142
|
250 |
-
msgid "default"
|
251 |
-
msgstr ""
|
252 |
-
|
253 |
-
#: php/settings.php:64 php/settings.php:88
|
254 |
-
msgid "no"
|
255 |
-
msgstr ""
|
256 |
-
|
257 |
-
#: php/settings.php:65
|
258 |
-
msgid ""
|
259 |
-
"If a Featured Video is available it can be displayed in place of the "
|
260 |
-
"Featured Image. Still, a Featured Image is required."
|
261 |
-
msgstr ""
|
262 |
-
|
263 |
-
#: php/settings.php:70
|
264 |
-
msgid ""
|
265 |
-
"To display Featured Videos you need to use the <code>Shortcode</code> or "
|
266 |
-
"<code>PHP functions</code>."
|
267 |
-
msgstr ""
|
268 |
-
|
269 |
-
#: php/settings.php:89
|
270 |
-
msgid ""
|
271 |
-
"YouTube, Vimeo and Dailymotion videos can autoplay when a single post/page "
|
272 |
-
"is being viewed."
|
273 |
-
msgstr ""
|
274 |
-
|
275 |
-
#: php/settings.php:108
|
276 |
-
msgid "Width"
|
277 |
-
msgstr ""
|
278 |
-
|
279 |
-
#: php/settings.php:118
|
280 |
-
msgid "Height"
|
281 |
-
msgstr ""
|
282 |
-
|
283 |
-
#: php/settings.php:127
|
284 |
-
msgid ""
|
285 |
-
"When using <code>auto</code> the video will be adjusted to fit it's parent "
|
286 |
-
"element while sticking to it's ratio. Using a <code>fixed</code> height and "
|
287 |
-
"width might result in <em>not so pretty</em> black bars."
|
288 |
-
msgstr ""
|
289 |
-
|
290 |
-
#: php/settings.php:141
|
291 |
-
msgid "left"
|
292 |
-
msgstr ""
|
293 |
-
|
294 |
-
#: php/settings.php:142
|
295 |
-
msgid "center"
|
296 |
-
msgstr ""
|
297 |
-
|
298 |
-
#: php/settings.php:143
|
299 |
-
msgid "right"
|
300 |
-
msgstr ""
|
301 |
-
|
302 |
-
#: php/settings.php:
|
303 |
-
msgid "Use CDN"
|
304 |
-
msgstr ""
|
305 |
-
|
306 |
-
#: php/settings.php:
|
307 |
-
msgid "Include JS"
|
308 |
-
msgstr ""
|
309 |
-
|
310 |
-
#: php/settings.php:
|
311 |
-
msgid "Include CSS"
|
312 |
-
msgstr ""
|
313 |
-
|
314 |
-
#: php/settings.php:165
|
315 |
-
msgid ""
|
316 |
-
"Disabling JS and/or CSS will break the local video player. Disable only when "
|
317 |
-
"you want to replace VideoJS with a different script and know what you are "
|
318 |
-
"doing."
|
319 |
-
msgstr ""
|
320 |
-
|
321 |
-
#: php/settings.php:
|
322 |
-
msgid "
|
323 |
-
msgstr ""
|
324 |
-
|
325 |
-
#: php/settings.php:
|
326 |
-
msgid "
|
327 |
-
msgstr ""
|
328 |
-
|
329 |
-
#: php/settings.php:
|
330 |
-
msgid "
|
331 |
-
msgstr ""
|
332 |
-
|
333 |
-
#: php/settings.php:
|
334 |
-
msgid "
|
335 |
-
msgstr ""
|
336 |
-
|
337 |
-
#: php/settings.php:
|
338 |
-
msgid "
|
339 |
-
msgstr ""
|
340 |
-
|
341 |
-
#: php/settings.php:
|
342 |
-
msgid "
|
343 |
-
msgstr ""
|
344 |
-
|
345 |
-
#: php/settings.php:
|
346 |
-
msgid "
|
347 |
-
msgstr ""
|
348 |
-
|
349 |
-
#: php/settings.php:
|
350 |
-
msgid "
|
351 |
-
msgstr ""
|
352 |
-
|
353 |
-
#: php/settings.php:
|
354 |
-
msgid "
|
355 |
-
msgstr ""
|
356 |
-
|
357 |
-
#: php/settings.php:224
|
358 |
-
msgid "
|
359 |
-
msgstr ""
|
360 |
-
|
361 |
-
#: php/settings.php:
|
362 |
-
msgid "
|
363 |
-
msgstr ""
|
364 |
-
|
365 |
-
#: php/settings.php:
|
366 |
-
msgid "
|
367 |
-
msgstr ""
|
368 |
-
|
369 |
-
#: php/settings.php:
|
370 |
-
msgid "
|
371 |
-
msgstr ""
|
372 |
-
|
373 |
-
#: php/settings.php:
|
374 |
-
msgid "
|
375 |
-
msgstr ""
|
376 |
-
|
377 |
-
#: php/settings.php:
|
378 |
-
msgid "
|
379 |
-
msgstr ""
|
380 |
-
|
381 |
-
#: php/settings.php:
|
382 |
-
msgid "
|
383 |
-
msgstr ""
|
384 |
-
|
385 |
-
#: php/settings.php:
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
msgstr ""
|
392 |
-
|
393 |
-
#: php/settings.php:
|
394 |
-
|
395 |
-
|
396 |
-
"
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
"
|
403 |
-
msgstr ""
|
404 |
-
|
405 |
-
#: php/settings.php:
|
406 |
-
msgid "
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
"
|
413 |
-
msgstr ""
|
414 |
-
|
415 |
-
#: php/settings.php:
|
416 |
-
|
417 |
-
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
|
430 |
-
|
431 |
-
|
432 |
-
|
433 |
-
msgstr ""
|
434 |
-
|
435 |
-
#: php/
|
436 |
-
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
#: php/upgrade.php:
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
-
|
447 |
-
|
448 |
-
|
449 |
-
|
450 |
-
|
451 |
-
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
458 |
-
|
459 |
-
|
460 |
-
|
461 |
-
|
462 |
-
|
463 |
-
|
464 |
-
|
465 |
-
|
466 |
-
|
467 |
-
|
468 |
-
|
469 |
-
|
470 |
-
|
471 |
-
|
472 |
-
|
473 |
-
|
474 |
-
|
475 |
-
|
476 |
-
|
477 |
-
|
478 |
-
|
479 |
-
|
480 |
-
|
481 |
-
|
482 |
-
|
483 |
-
|
484 |
-
|
485 |
-
|
486 |
-
|
487 |
-
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: featured-video-plus 1.3\n"
|
4 |
+
"POT-Creation-Date: 2013-04-16 11:06+0100\n"
|
5 |
+
"PO-Revision-Date: 2013-04-16 11:06+0100\n"
|
6 |
+
"Last-Translator: Alexander Höreth <a.hoereth@gmail.com>\n"
|
7 |
+
"Language-Team: a.hoereth <a.hoereth@gmail.com>\n"
|
8 |
+
"Language: en\n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"X-Generator: Poedit 1.5.4\n"
|
13 |
+
"X-Poedit-KeywordsList: __;_e\n"
|
14 |
+
"X-Poedit-Basepath: ..\n"
|
15 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
+
"X-Poedit-SearchPath-0: php\n"
|
17 |
+
|
18 |
+
#: php/backend.php:32
|
19 |
+
msgid "Video URL"
|
20 |
+
msgstr ""
|
21 |
+
|
22 |
+
#: php/backend.php:33
|
23 |
+
msgid "Fallback: same video, different format"
|
24 |
+
msgstr ""
|
25 |
+
|
26 |
+
#: php/backend.php:92 php/backend.php:674 php/backend.php:681
|
27 |
+
#: php/backend.php:698 php/backend.php:700
|
28 |
+
msgid "Featured Video"
|
29 |
+
msgstr ""
|
30 |
+
|
31 |
+
#: php/backend.php:123
|
32 |
+
msgid "Outdated WordPress Version"
|
33 |
+
msgstr ""
|
34 |
+
|
35 |
+
#: php/backend.php:123
|
36 |
+
#, php-format
|
37 |
+
msgid ""
|
38 |
+
"There is WordPress 3.5 out there! The plugin supports older versions way "
|
39 |
+
"back to 3.1 - but %s is defenitly to old!"
|
40 |
+
msgstr ""
|
41 |
+
|
42 |
+
#: php/backend.php:134
|
43 |
+
msgid "Set Featured Video"
|
44 |
+
msgstr ""
|
45 |
+
|
46 |
+
#: php/backend.php:134
|
47 |
+
msgid "Set featured video"
|
48 |
+
msgstr ""
|
49 |
+
|
50 |
+
#: php/backend.php:143
|
51 |
+
msgid "Set Featured Video Fallback"
|
52 |
+
msgstr ""
|
53 |
+
|
54 |
+
#: php/backend.php:143
|
55 |
+
msgid "Set featured video fallback"
|
56 |
+
msgstr ""
|
57 |
+
|
58 |
+
#: php/backend.php:152 php/backend.php:626
|
59 |
+
msgid "Supported Video Formats"
|
60 |
+
msgstr ""
|
61 |
+
|
62 |
+
#: php/backend.php:152
|
63 |
+
msgid "or"
|
64 |
+
msgstr ""
|
65 |
+
|
66 |
+
#: php/backend.php:152 php/backend.php:625
|
67 |
+
msgid "More information"
|
68 |
+
msgstr ""
|
69 |
+
|
70 |
+
#: php/backend.php:157
|
71 |
+
msgid "Fallback Video"
|
72 |
+
msgstr ""
|
73 |
+
|
74 |
+
#: php/backend.php:157
|
75 |
+
msgid ""
|
76 |
+
"The two input fields should contain the same video but in distinct formats."
|
77 |
+
msgstr ""
|
78 |
+
|
79 |
+
#: php/backend.php:164
|
80 |
+
msgid "Hint"
|
81 |
+
msgstr ""
|
82 |
+
|
83 |
+
#: php/backend.php:164
|
84 |
+
#, php-format
|
85 |
+
msgid "Take a look into the %sContextual Help%s."
|
86 |
+
msgstr ""
|
87 |
+
|
88 |
+
#: php/backend.php:170 php/settings.php:399
|
89 |
+
msgid "Featured Image"
|
90 |
+
msgstr ""
|
91 |
+
|
92 |
+
#: php/backend.php:170
|
93 |
+
msgid ""
|
94 |
+
"For automatically displaying the Featured Video a Featured Image is required."
|
95 |
+
msgstr ""
|
96 |
+
|
97 |
+
#: php/backend.php:175
|
98 |
+
msgid "Set as Featured Image"
|
99 |
+
msgstr ""
|
100 |
+
|
101 |
+
#: php/backend.php:179 php/settings.php:70
|
102 |
+
msgid "The current theme does not support Featured Images"
|
103 |
+
msgstr ""
|
104 |
+
|
105 |
+
#: php/backend.php:179
|
106 |
+
#, php-format
|
107 |
+
msgid ""
|
108 |
+
"To display Featured Videos you need to use the <code>Shortcode</code> or "
|
109 |
+
"<code>PHP functions</code>. To hide this notice deactivate "<em>Replace "
|
110 |
+
"Featured Images</em>" in the %sMedia Settings%s."
|
111 |
+
msgstr ""
|
112 |
+
|
113 |
+
#: php/backend.php:620
|
114 |
+
#, php-format
|
115 |
+
msgid ""
|
116 |
+
"To use local videos, copy the <code>Link To Media File</code> from your "
|
117 |
+
"%sMedia Library%s and paste it into the text field."
|
118 |
+
msgstr ""
|
119 |
+
|
120 |
+
#: php/backend.php:621
|
121 |
+
#, php-format
|
122 |
+
msgid ""
|
123 |
+
"To use local videos, copy the <code>File URL</code> from your %sMedia Library"
|
124 |
+
"%s and paste it into the text field."
|
125 |
+
msgstr ""
|
126 |
+
|
127 |
+
#: php/backend.php:625
|
128 |
+
msgid ""
|
129 |
+
"The second text field is intended to hold the URL to the same video in a "
|
130 |
+
"different format. It will be used as fallback if the primary file can not be "
|
131 |
+
"played."
|
132 |
+
msgstr ""
|
133 |
+
|
134 |
+
#: php/backend.php:628
|
135 |
+
msgid "Converting your videos"
|
136 |
+
msgstr ""
|
137 |
+
|
138 |
+
#: php/backend.php:629
|
139 |
+
#, php-format
|
140 |
+
msgid ""
|
141 |
+
"Take a look at the %sMiro Video Converter%s. It is open source, lightweight "
|
142 |
+
"and compatible with Windows, Mac and Linux."
|
143 |
+
msgstr ""
|
144 |
+
|
145 |
+
#: php/backend.php:630
|
146 |
+
msgid "Fixing upload errors"
|
147 |
+
msgstr ""
|
148 |
+
|
149 |
+
#: php/backend.php:632
|
150 |
+
#, php-format
|
151 |
+
msgid ""
|
152 |
+
"Read %sthis%s on how to increase the <strong>maximum file upload size</"
|
153 |
+
"strong>."
|
154 |
+
msgstr ""
|
155 |
+
|
156 |
+
#: php/backend.php:633
|
157 |
+
#, php-format
|
158 |
+
msgid ""
|
159 |
+
"WordPress by default does not support <code>webM</code>. The plugin "
|
160 |
+
"activates it, but under some conditions this might not be enough. %sHere%s "
|
161 |
+
"you can get more information on this."
|
162 |
+
msgstr ""
|
163 |
+
|
164 |
+
#: php/backend.php:635
|
165 |
+
msgid "Flash Fallback"
|
166 |
+
msgstr ""
|
167 |
+
|
168 |
+
#: php/backend.php:636
|
169 |
+
#, php-format
|
170 |
+
msgid ""
|
171 |
+
"The video player, %sVIDEOJS%s, features an Adobe Flash fallback. All you "
|
172 |
+
"need to do is provide an <code>mp4</code>-video."
|
173 |
+
msgstr ""
|
174 |
+
|
175 |
+
#: php/backend.php:640
|
176 |
+
msgid ""
|
177 |
+
"These are some of the tested URL formats. Everything in bold is required, "
|
178 |
+
"everything in brackets is optional."
|
179 |
+
msgstr ""
|
180 |
+
|
181 |
+
#: php/backend.php:674 php/backend.php:698
|
182 |
+
msgid "Local Media"
|
183 |
+
msgstr ""
|
184 |
+
|
185 |
+
#: php/backend.php:681 php/backend.php:700
|
186 |
+
msgid "Valid URLs"
|
187 |
+
msgstr ""
|
188 |
+
|
189 |
+
#: php/settings.php:21
|
190 |
+
msgid "Featured Videos"
|
191 |
+
msgstr ""
|
192 |
+
|
193 |
+
#: php/settings.php:23
|
194 |
+
msgid "Replace Featured Images"
|
195 |
+
msgstr ""
|
196 |
+
|
197 |
+
#: php/settings.php:24
|
198 |
+
msgid "Autoplay"
|
199 |
+
msgstr ""
|
200 |
+
|
201 |
+
#: php/settings.php:25
|
202 |
+
msgid "Video Sizing"
|
203 |
+
msgstr ""
|
204 |
+
|
205 |
+
#: php/settings.php:26
|
206 |
+
msgid "Video Align"
|
207 |
+
msgstr ""
|
208 |
+
|
209 |
+
#: php/settings.php:27
|
210 |
+
msgid "Local Video Options"
|
211 |
+
msgstr ""
|
212 |
+
|
213 |
+
#: php/settings.php:28
|
214 |
+
msgid "YouTube Options"
|
215 |
+
msgstr ""
|
216 |
+
|
217 |
+
#: php/settings.php:29
|
218 |
+
msgid "Vimeo Options"
|
219 |
+
msgstr ""
|
220 |
+
|
221 |
+
#: php/settings.php:30
|
222 |
+
msgid "Dailymotion Options"
|
223 |
+
msgstr ""
|
224 |
+
|
225 |
+
#: php/settings.php:31
|
226 |
+
msgid "Support"
|
227 |
+
msgstr ""
|
228 |
+
|
229 |
+
#: php/settings.php:45
|
230 |
+
#, php-format
|
231 |
+
msgid ""
|
232 |
+
"To display your featured videos you can either make use of the automatic "
|
233 |
+
"replacement, use the %s or manually edit your theme's source files to make "
|
234 |
+
"use of the plugins PHP-functions."
|
235 |
+
msgstr ""
|
236 |
+
|
237 |
+
#: php/settings.php:46
|
238 |
+
#, php-format
|
239 |
+
msgid ""
|
240 |
+
"For more information about Shortcode and PHP functions see the %sContextual "
|
241 |
+
"Help%s."
|
242 |
+
msgstr ""
|
243 |
+
|
244 |
+
#: php/settings.php:62 php/settings.php:86
|
245 |
+
msgid "yes"
|
246 |
+
msgstr ""
|
247 |
+
|
248 |
+
#: php/settings.php:62 php/settings.php:88 php/settings.php:111
|
249 |
+
#: php/settings.php:121 php/settings.php:142
|
250 |
+
msgid "default"
|
251 |
+
msgstr ""
|
252 |
+
|
253 |
+
#: php/settings.php:64 php/settings.php:88
|
254 |
+
msgid "no"
|
255 |
+
msgstr ""
|
256 |
+
|
257 |
+
#: php/settings.php:65
|
258 |
+
msgid ""
|
259 |
+
"If a Featured Video is available it can be displayed in place of the "
|
260 |
+
"Featured Image. Still, a Featured Image is required."
|
261 |
+
msgstr ""
|
262 |
+
|
263 |
+
#: php/settings.php:70
|
264 |
+
msgid ""
|
265 |
+
"To display Featured Videos you need to use the <code>Shortcode</code> or "
|
266 |
+
"<code>PHP functions</code>."
|
267 |
+
msgstr ""
|
268 |
+
|
269 |
+
#: php/settings.php:89
|
270 |
+
msgid ""
|
271 |
+
"YouTube, Vimeo and Dailymotion videos can autoplay when a single post/page "
|
272 |
+
"is being viewed."
|
273 |
+
msgstr ""
|
274 |
+
|
275 |
+
#: php/settings.php:108
|
276 |
+
msgid "Width"
|
277 |
+
msgstr ""
|
278 |
+
|
279 |
+
#: php/settings.php:118
|
280 |
+
msgid "Height"
|
281 |
+
msgstr ""
|
282 |
+
|
283 |
+
#: php/settings.php:127
|
284 |
+
msgid ""
|
285 |
+
"When using <code>auto</code> the video will be adjusted to fit it's parent "
|
286 |
+
"element while sticking to it's ratio. Using a <code>fixed</code> height and "
|
287 |
+
"width might result in <em>not so pretty</em> black bars."
|
288 |
+
msgstr ""
|
289 |
+
|
290 |
+
#: php/settings.php:141
|
291 |
+
msgid "left"
|
292 |
+
msgstr ""
|
293 |
+
|
294 |
+
#: php/settings.php:142
|
295 |
+
msgid "center"
|
296 |
+
msgstr ""
|
297 |
+
|
298 |
+
#: php/settings.php:143
|
299 |
+
msgid "right"
|
300 |
+
msgstr ""
|
301 |
+
|
302 |
+
#: php/settings.php:162
|
303 |
+
msgid "Use CDN"
|
304 |
+
msgstr ""
|
305 |
+
|
306 |
+
#: php/settings.php:163
|
307 |
+
msgid "Include JS"
|
308 |
+
msgstr ""
|
309 |
+
|
310 |
+
#: php/settings.php:164
|
311 |
+
msgid "Include CSS"
|
312 |
+
msgstr ""
|
313 |
+
|
314 |
+
#: php/settings.php:165
|
315 |
+
msgid ""
|
316 |
+
"Disabling JS and/or CSS will break the local video player. Disable only when "
|
317 |
+
"you want to replace VideoJS with a different script and know what you are "
|
318 |
+
"doing."
|
319 |
+
msgstr ""
|
320 |
+
|
321 |
+
#: php/settings.php:166
|
322 |
+
msgid "Use featured image as video thumbnail"
|
323 |
+
msgstr ""
|
324 |
+
|
325 |
+
#: php/settings.php:187
|
326 |
+
msgid "Light Theme"
|
327 |
+
msgstr ""
|
328 |
+
|
329 |
+
#: php/settings.php:188
|
330 |
+
msgid "Fullscreen Button"
|
331 |
+
msgstr ""
|
332 |
+
|
333 |
+
#: php/settings.php:196
|
334 |
+
msgid "Info"
|
335 |
+
msgstr ""
|
336 |
+
|
337 |
+
#: php/settings.php:198
|
338 |
+
msgid "Related Videos"
|
339 |
+
msgstr ""
|
340 |
+
|
341 |
+
#: php/settings.php:199
|
342 |
+
msgid "Javascript API"
|
343 |
+
msgstr ""
|
344 |
+
|
345 |
+
#: php/settings.php:200
|
346 |
+
msgid "White Progressbar"
|
347 |
+
msgstr ""
|
348 |
+
|
349 |
+
#: php/settings.php:202 php/settings.php:254
|
350 |
+
msgid "Logo"
|
351 |
+
msgstr ""
|
352 |
+
|
353 |
+
#: php/settings.php:223
|
354 |
+
msgid "Portrait"
|
355 |
+
msgstr ""
|
356 |
+
|
357 |
+
#: php/settings.php:224
|
358 |
+
msgid "Title"
|
359 |
+
msgstr ""
|
360 |
+
|
361 |
+
#: php/settings.php:225
|
362 |
+
msgid "Byline"
|
363 |
+
msgstr ""
|
364 |
+
|
365 |
+
#: php/settings.php:228
|
366 |
+
msgid "Color"
|
367 |
+
msgstr ""
|
368 |
+
|
369 |
+
#: php/settings.php:232
|
370 |
+
msgid "Vimeo Plus Videos might ignore these settings."
|
371 |
+
msgstr ""
|
372 |
+
|
373 |
+
#: php/settings.php:255
|
374 |
+
msgid "Videoinfo"
|
375 |
+
msgstr ""
|
376 |
+
|
377 |
+
#: php/settings.php:256
|
378 |
+
msgid "Syndication Key"
|
379 |
+
msgstr ""
|
380 |
+
|
381 |
+
#: php/settings.php:260
|
382 |
+
msgid "Foreground"
|
383 |
+
msgstr ""
|
384 |
+
|
385 |
+
#: php/settings.php:265
|
386 |
+
msgid "Highlight"
|
387 |
+
msgstr ""
|
388 |
+
|
389 |
+
#: php/settings.php:270
|
390 |
+
msgid "Background"
|
391 |
+
msgstr ""
|
392 |
+
|
393 |
+
#: php/settings.php:287
|
394 |
+
#, php-format
|
395 |
+
msgid ""
|
396 |
+
"If you have found a bug or are missing a specific video service, please "
|
397 |
+
"%slet me know%s in the support forum. Elsewise, if you like the plugin: "
|
398 |
+
"Please %srate it!%s"
|
399 |
+
msgstr ""
|
400 |
+
|
401 |
+
#: php/settings.php:374
|
402 |
+
msgid "Displays the video in its default size."
|
403 |
+
msgstr ""
|
404 |
+
|
405 |
+
#: php/settings.php:378
|
406 |
+
msgid ""
|
407 |
+
"Displays the video with an width of 300 pixel. Height will be fitted to the "
|
408 |
+
"aspect ratio."
|
409 |
+
msgstr ""
|
410 |
+
|
411 |
+
#: php/settings.php:382
|
412 |
+
msgid "Displays the video with an fixed width and height."
|
413 |
+
msgstr ""
|
414 |
+
|
415 |
+
#: php/settings.php:396
|
416 |
+
#, php-format
|
417 |
+
msgid ""
|
418 |
+
"All parameters are optional. If %s the current post's id will be used. %s is "
|
419 |
+
"either a string keyword (thumbnail, medium, large or full) or a 2-item array "
|
420 |
+
"representing width and height in pixels, e.g. array(32,32)."
|
421 |
+
msgstr ""
|
422 |
+
|
423 |
+
#: php/settings.php:399
|
424 |
+
#, php-format
|
425 |
+
msgid ""
|
426 |
+
"The functions are implemented corresponding to the original %sfunctions%s: "
|
427 |
+
"They are intended to be used and to act the same way. Take a look into the "
|
428 |
+
"WordPress Codex for further guidance:"
|
429 |
+
msgstr ""
|
430 |
+
|
431 |
+
#: php/settings.php:422 php/settings.php:445
|
432 |
+
msgid "PHP-Functions"
|
433 |
+
msgstr ""
|
434 |
+
|
435 |
+
#: php/upgrade.php:160 php/upgrade.php:171 php/upgrade.php:182
|
436 |
+
#: php/upgrade.php:193 php/upgrade.php:204
|
437 |
+
msgid "Featured Video Plus was <strong>upgraded</strong>."
|
438 |
+
msgstr ""
|
439 |
+
|
440 |
+
#: php/upgrade.php:160
|
441 |
+
#, php-format
|
442 |
+
msgid ""
|
443 |
+
"%s brings new options for YouTube and local videos, fixes a whole bunch of "
|
444 |
+
"glitches and introduces a new PHP-function."
|
445 |
+
msgstr ""
|
446 |
+
|
447 |
+
#: php/upgrade.php:160 php/upgrade.php:171 php/upgrade.php:182
|
448 |
+
#: php/upgrade.php:193 php/upgrade.php:204
|
449 |
+
#, php-format
|
450 |
+
msgid "If you like the plugin, please %srate it%s."
|
451 |
+
msgstr ""
|
452 |
+
|
453 |
+
#: php/upgrade.php:171
|
454 |
+
#, php-format
|
455 |
+
msgid ""
|
456 |
+
"%s <strong>ajax</strong>ifies the Featured Video box, introduces new options "
|
457 |
+
"for YouTube and local videos and a new PHP-function."
|
458 |
+
msgstr ""
|
459 |
+
|
460 |
+
#: php/upgrade.php:182
|
461 |
+
#, php-format
|
462 |
+
msgid ""
|
463 |
+
"%s features a seamless <strong>WP3.5 Media Manager</strong> integration, an "
|
464 |
+
"all new <strong>ajax</strong>ified metabox, time-links (#t=4m2s) for YouTube "
|
465 |
+
"and Dailymotion, new PHP functions for developers and more."
|
466 |
+
msgstr ""
|
467 |
+
|
468 |
+
#: php/upgrade.php:193
|
469 |
+
#, php-format
|
470 |
+
msgid ""
|
471 |
+
"%s features a seamless WP3.5 Media Manager integration, an ajaxified "
|
472 |
+
"metabox, time-links (#t=4m2s) for YouTube and Dailymotion, more "
|
473 |
+
"customization settings and internationalization."
|
474 |
+
msgstr ""
|
475 |
+
|
476 |
+
#: php/upgrade.php:204
|
477 |
+
#, php-format
|
478 |
+
msgid ""
|
479 |
+
"%s features support for <strong>Local Videos</strong>, a seamless WP3.5 "
|
480 |
+
"Media Manager integration, an ajaxified metabox, time-links (#t=4m2s) for "
|
481 |
+
"YouTube and Dailymotion and many more customization settings."
|
482 |
+
msgstr ""
|
483 |
+
|
484 |
+
#: php/upgrade.php:216
|
485 |
+
#, php-format
|
486 |
+
msgid ""
|
487 |
+
"Featured Video Plus is <strong>ready to use</strong>. There is a new box on "
|
488 |
+
"post & page edit screens for you to add videos. <strong>Take a look at your "
|
489 |
+
"new %sMedia Settings%s</strong>."
|
490 |
+
msgstr ""
|
php/backend.php
CHANGED
@@ -3,7 +3,7 @@
|
|
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/
|
7 |
* @see ../featured_video_plus.php
|
8 |
* @see featured_video_plus in general.php
|
9 |
* @since 1.0
|
@@ -28,9 +28,9 @@ class featured_video_plus_backend {
|
|
28 |
if ( !isset($featured_video_plus_instance) )
|
29 |
wp_die( 'featured_video_plus general instance required!', 'Error!' );
|
30 |
|
31 |
-
$this->featured_video_plus
|
32 |
-
$this->default_value
|
33 |
-
$this->default_value_sec
|
34 |
}
|
35 |
|
36 |
/**
|
@@ -60,8 +60,8 @@ class featured_video_plus_backend {
|
|
60 |
|
61 |
// just required on post.php
|
62 |
if( ($hook_suffix == 'post.php' && isset($_GET['post'])) || $hook_suffix == 'post-new.php' ) {
|
63 |
-
wp_enqueue_script( 'jquery.autosize', FVP_URL . 'js/jquery.autosize
|
64 |
-
wp_enqueue_script( 'fvp_backend', FVP_URL . 'js/backend
|
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;
|
@@ -76,7 +76,7 @@ class featured_video_plus_backend {
|
|
76 |
}
|
77 |
|
78 |
if( $hook_suffix == 'options-media.php' || (($hook_suffix == 'post.php' && isset($_GET['post'])) || $hook_suffix == 'post-new.php') )
|
79 |
-
wp_enqueue_style( 'fvp_backend', FVP_URL . 'css/backend
|
80 |
//wp_enqueue_style( 'fvp_backend', FVP_URL . 'css/backend.css', array(), FVP_VERSION ); // development
|
81 |
}
|
82 |
|
@@ -129,7 +129,7 @@ class featured_video_plus_backend {
|
|
129 |
echo '</div>'."\n\n";
|
130 |
|
131 |
// input box containing the featured video URL
|
132 |
-
$legal= isset($meta['valid']) && !$meta['valid'] ? ' fvp_invalid' : '';
|
133 |
$full = isset($meta['prov']) && $meta['prov'] == 'local' ? wp_get_attachment_url($meta['id']) : isset($meta['full']) ? $meta['full'] : $this->default_value;
|
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";
|
@@ -210,11 +210,11 @@ class featured_video_plus_backend {
|
|
210 |
|
211 |
public function ajax() {
|
212 |
$post = array(
|
213 |
-
'id'
|
214 |
-
'fvp_nonce'
|
215 |
-
'fvp_set_featimg'
|
216 |
-
'fvp_video'
|
217 |
-
'fvp_sec'
|
218 |
);
|
219 |
$meta = $this->save($post);
|
220 |
|
@@ -226,7 +226,7 @@ class featured_video_plus_backend {
|
|
226 |
|
227 |
echo json_encode(array( 'typ' => 'updated', 'valid' => $meta['valid'], 'video' => $video, 'img' => $img ));
|
228 |
} else
|
229 |
-
echo json_encode(array( 'typ' => 'removed', 'img' => $img ));
|
230 |
die();
|
231 |
}
|
232 |
|
@@ -272,11 +272,13 @@ class featured_video_plus_backend {
|
|
272 |
|
273 |
$data = $this->get_video_data($url, $sec);
|
274 |
|
275 |
-
$
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
|
|
|
|
280 |
} else {
|
281 |
|
282 |
// Do we have a screen capture to pull?
|
@@ -286,14 +288,14 @@ class featured_video_plus_backend {
|
|
286 |
}
|
287 |
|
288 |
$meta = array(
|
289 |
-
'full' => isset($data['url'])
|
290 |
-
'id'
|
291 |
-
'sec' => isset($data['sec']) ?
|
292 |
-
'sec_id'=> isset($data['sec_id']) && !empty($data['sec_id'])
|
293 |
'img' => isset($img) ? $img : '',
|
294 |
-
'prov' => isset($data['provider'])
|
295 |
-
'time' => isset($data['time']) ?
|
296 |
-
'valid' =>
|
297 |
);
|
298 |
|
299 |
}
|
@@ -357,8 +359,15 @@ class featured_video_plus_backend {
|
|
357 |
if( is_wp_error( $response ) )
|
358 |
break;
|
359 |
parse_str( $response['body'], $result );
|
360 |
-
if(
|
|
|
|
|
|
|
|
|
|
|
|
|
361 |
break;
|
|
|
362 |
|
363 |
// extract info of a time-link
|
364 |
preg_match('/t=(?:(\d+)m)?(?:(\d+)s)?/', $url, $attr);
|
@@ -376,11 +385,11 @@ class featured_video_plus_backend {
|
|
376 |
|
377 |
// generate video metadata
|
378 |
$data = array(
|
379 |
-
'id'
|
380 |
-
'provider'
|
381 |
'time' => $video_time,
|
382 |
'title' => $result['title'],
|
383 |
-
'description'
|
384 |
'filename' => sanitize_file_name($result['title']),
|
385 |
'timestamp' => $result['timestamp'],
|
386 |
'author' => $result['author'],
|
@@ -506,16 +515,16 @@ class featured_video_plus_backend {
|
|
506 |
$result['title'] = isset($title[1]) ? $title[1] : '';
|
507 |
|
508 |
$data = array(
|
509 |
-
'id'
|
510 |
'provider' => $provider,
|
511 |
-
'title'
|
512 |
-
'description'
|
513 |
'filename' => sanitize_file_name($result['title']),
|
514 |
'timestamp' => time(),
|
515 |
//'author' => '', // <strong>By:</strong> <a href="http://www.liveleak.com/c/k-doe">k-doe</a>
|
516 |
//'tags' => '', // <strong>Tags:</strong> <a href="browse?q=Drive By">Drive By</a>, <a href="browse?q=Fire Extinguisher">Fire Extinguisher</a><br />
|
517 |
-
'img'
|
518 |
-
'url'
|
519 |
);
|
520 |
break;
|
521 |
}
|
@@ -536,6 +545,9 @@ class featured_video_plus_backend {
|
|
536 |
);
|
537 |
}
|
538 |
break;
|
|
|
|
|
|
|
539 |
}
|
540 |
return isset($data) ? $data : false;
|
541 |
}
|
@@ -553,7 +565,7 @@ class featured_video_plus_backend {
|
|
553 |
|
554 |
// Generate attachment post metadata
|
555 |
$img_data = array(
|
556 |
-
'post_content'
|
557 |
'post_title' => $data['title'],
|
558 |
'post_name' => $data['filename']
|
559 |
);
|
@@ -565,16 +577,16 @@ class featured_video_plus_backend {
|
|
565 |
// generate picture metadata
|
566 |
$img_meta = wp_get_attachment_metadata( $img );
|
567 |
$img_meta['image_meta'] = array(
|
568 |
-
'aperture'
|
569 |
-
'credit'
|
570 |
-
'camera'
|
571 |
-
'caption'
|
572 |
'created_timestamp' => $data['timestamp'],
|
573 |
-
'copyright'
|
574 |
-
'focal_length'
|
575 |
-
'iso'
|
576 |
-
'shutter_speed'
|
577 |
-
'title'
|
578 |
);
|
579 |
|
580 |
// save picture metadata
|
@@ -591,7 +603,7 @@ class featured_video_plus_backend {
|
|
591 |
}
|
592 |
|
593 |
/**
|
594 |
-
* Removes the old featured
|
595 |
* Used since 1.0, got it own function in 1.4
|
596 |
*
|
597 |
* @since 1.4
|
@@ -610,34 +622,7 @@ class featured_video_plus_backend {
|
|
610 |
}
|
611 |
}
|
612 |
|
613 |
-
|
614 |
-
* Plugin Version, WordPress Version and WordPress Language.
|
615 |
-
* Less than WordPress.org, but much more informative for future development.
|
616 |
-
*
|
617 |
-
* @since 1.4
|
618 |
-
*
|
619 |
-
* @param bool $out set to true when oppting out
|
620 |
-
*/
|
621 |
-
function featured_video_plus_notify($options, $out = null) {
|
622 |
-
if($options['out'] == 1 && $out != 0)
|
623 |
-
return $options;
|
624 |
-
|
625 |
-
if( ($out !== null && $out != $options['out']) || isset($notice) || !isset($options['reged']) || !is_numeric($options['reged']) || ($options['reged']<strtotime("-1 week")) ) {
|
626 |
-
$options['out'] = $out == 1 ? 1 : 0;
|
627 |
-
$attr = array('body'=> array(
|
628 |
-
'fvp_version' => FVP_VERSION,
|
629 |
-
'wp_version' => get_bloginfo('version'),
|
630 |
-
'wp_language' => get_bloginfo('language'),
|
631 |
-
'out' => $options['out']
|
632 |
-
));
|
633 |
-
$response = wp_remote_post( 'http://fvp.ahoereth.yrnxt.com/fvp.php', $attr);
|
634 |
-
if( !is_wp_error( $response ) )
|
635 |
-
$options['reged'] = is_numeric($response['body']) ? $response['body'] : time();
|
636 |
-
}
|
637 |
-
return $options;
|
638 |
-
}
|
639 |
-
|
640 |
-
/**
|
641 |
* Initializes the help texts.
|
642 |
*
|
643 |
* @since 1.3
|
@@ -679,6 +664,7 @@ function featured_video_plus_notify($options, $out = null) {
|
|
679 |
<li>Liveleak:
|
680 |
<ul><li><code>(http(s)://)(www.)<strong>liveleak.com/view?i=<em>LIV_ELEAKUNQID</em></strong></code></li></ul></li>
|
681 |
</ul>'."\n";
|
|
|
682 |
}
|
683 |
|
684 |
/**
|
@@ -773,5 +759,5 @@ function featured_video_plus_notify($options, $out = null) {
|
|
773 |
);
|
774 |
return $id;
|
775 |
}
|
|
|
776 |
}
|
777 |
-
?>
|
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
|
28 |
if ( !isset($featured_video_plus_instance) )
|
29 |
wp_die( 'featured_video_plus general instance required!', 'Error!' );
|
30 |
|
31 |
+
$this->featured_video_plus = $featured_video_plus_instance;
|
32 |
+
$this->default_value = __('Video URL', 'featured-video-plus');
|
33 |
+
$this->default_value_sec = __('Fallback: same video, different format', 'featured-video-plus');
|
34 |
}
|
35 |
|
36 |
/**
|
60 |
|
61 |
// just required on post.php
|
62 |
if( ($hook_suffix == 'post.php' && isset($_GET['post'])) || $hook_suffix == 'post-new.php' ) {
|
63 |
+
wp_enqueue_script( 'jquery.autosize', FVP_URL . 'js/jquery.autosize.min.js', array( 'jquery' ), FVP_VERSION );
|
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;
|
76 |
}
|
77 |
|
78 |
if( $hook_suffix == 'options-media.php' || (($hook_suffix == 'post.php' && isset($_GET['post'])) || $hook_suffix == 'post-new.php') )
|
79 |
+
wp_enqueue_style( 'fvp_backend', FVP_URL . 'css/backend.min.css', array(), FVP_VERSION ); // production
|
80 |
//wp_enqueue_style( 'fvp_backend', FVP_URL . 'css/backend.css', array(), FVP_VERSION ); // development
|
81 |
}
|
82 |
|
129 |
echo '</div>'."\n\n";
|
130 |
|
131 |
// input box containing the featured video URL
|
132 |
+
$legal= isset($meta['valid']) && !$meta['valid'] && isset($meta['full']) && !empty($meta['full']) ? ' fvp_invalid' : '';
|
133 |
$full = isset($meta['prov']) && $meta['prov'] == 'local' ? wp_get_attachment_url($meta['id']) : isset($meta['full']) ? $meta['full'] : $this->default_value;
|
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";
|
210 |
|
211 |
public function ajax() {
|
212 |
$post = array(
|
213 |
+
'id' => $_POST['id'],
|
214 |
+
'fvp_nonce' => isset($_POST['fvp_nonce']) ? $_POST['fvp_nonce'] : '',
|
215 |
+
'fvp_set_featimg' => isset($_POST['fvp_set_featimg']) ? $_POST['fvp_set_featimg'] : '',
|
216 |
+
'fvp_video' => isset($_POST['fvp_video']) ? $_POST['fvp_video'] : '',
|
217 |
+
'fvp_sec' => isset($_POST['fvp_sec']) ? $_POST['fvp_sec'] : ''
|
218 |
);
|
219 |
$meta = $this->save($post);
|
220 |
|
226 |
|
227 |
echo json_encode(array( 'typ' => 'updated', 'valid' => $meta['valid'], 'video' => $video, 'img' => $img ));
|
228 |
} else
|
229 |
+
echo json_encode(array( 'typ' => 'removed', 'valid' => $meta['valid'], 'img' => $img ));
|
230 |
die();
|
231 |
}
|
232 |
|
272 |
|
273 |
$data = $this->get_video_data($url, $sec);
|
274 |
|
275 |
+
if (isset($data['api'])&&!$data['api']){
|
276 |
+
$meta = array(
|
277 |
+
'full' => isset($data['url']) && !empty($data['url']) ? $data['url'] : $url,
|
278 |
+
'id' => isset($data['id']) ? $data['id'] : '',
|
279 |
+
'prov' => isset($data['provider']) ? $data['provider'] : '',
|
280 |
+
'valid' => false
|
281 |
+
);
|
282 |
} else {
|
283 |
|
284 |
// Do we have a screen capture to pull?
|
288 |
}
|
289 |
|
290 |
$meta = array(
|
291 |
+
'full' => isset($data['url']) && !empty($data['url']) ? $data['url'] : $url,
|
292 |
+
'id' => isset($data['id']) ? $data['id'] : '',
|
293 |
+
'sec' => isset($data['sec']) ? $data['sec'] : '',
|
294 |
+
'sec_id'=> isset($data['sec_id']) && !empty($data['sec_id'])? $data['sec_id']: '',
|
295 |
'img' => isset($img) ? $img : '',
|
296 |
+
'prov' => isset($data['provider']) ? $data['provider'] : '',
|
297 |
+
'time' => isset($data['time']) ? $data['time'] : '',
|
298 |
+
'valid' => true
|
299 |
);
|
300 |
|
301 |
}
|
359 |
if( is_wp_error( $response ) )
|
360 |
break;
|
361 |
parse_str( $response['body'], $result );
|
362 |
+
if (isset($result['status']) && $result['status'] == 'fail'){
|
363 |
+
$data = array(
|
364 |
+
'id' => $video_id,
|
365 |
+
'provider' => $provider,
|
366 |
+
'url' => $url,
|
367 |
+
'api' => false
|
368 |
+
);
|
369 |
break;
|
370 |
+
}
|
371 |
|
372 |
// extract info of a time-link
|
373 |
preg_match('/t=(?:(\d+)m)?(?:(\d+)s)?/', $url, $attr);
|
385 |
|
386 |
// generate video metadata
|
387 |
$data = array(
|
388 |
+
'id' => $video_id,
|
389 |
+
'provider' => $provider,
|
390 |
'time' => $video_time,
|
391 |
'title' => $result['title'],
|
392 |
+
'description' => $result['keywords'],
|
393 |
'filename' => sanitize_file_name($result['title']),
|
394 |
'timestamp' => $result['timestamp'],
|
395 |
'author' => $result['author'],
|
515 |
$result['title'] = isset($title[1]) ? $title[1] : '';
|
516 |
|
517 |
$data = array(
|
518 |
+
'id' => $video_id,
|
519 |
'provider' => $provider,
|
520 |
+
'title' => $result['title'],
|
521 |
+
'description' => isset($desc[1]) ? $desc[1] : '',
|
522 |
'filename' => sanitize_file_name($result['title']),
|
523 |
'timestamp' => time(),
|
524 |
//'author' => '', // <strong>By:</strong> <a href="http://www.liveleak.com/c/k-doe">k-doe</a>
|
525 |
//'tags' => '', // <strong>Tags:</strong> <a href="browse?q=Drive By">Drive By</a>, <a href="browse?q=Fire Extinguisher">Fire Extinguisher</a><br />
|
526 |
+
'img' => isset($result['image']) ? trim($result['image'],"\"") : '',
|
527 |
+
'url' => 'http://liveleak.com/view?i='.$video_data[1]
|
528 |
);
|
529 |
break;
|
530 |
}
|
545 |
);
|
546 |
}
|
547 |
break;
|
548 |
+
|
549 |
+
default:
|
550 |
+
break;
|
551 |
}
|
552 |
return isset($data) ? $data : false;
|
553 |
}
|
565 |
|
566 |
// Generate attachment post metadata
|
567 |
$img_data = array(
|
568 |
+
'post_content'=> $data['description'],
|
569 |
'post_title' => $data['title'],
|
570 |
'post_name' => $data['filename']
|
571 |
);
|
577 |
// generate picture metadata
|
578 |
$img_meta = wp_get_attachment_metadata( $img );
|
579 |
$img_meta['image_meta'] = array(
|
580 |
+
'aperture' => 0,
|
581 |
+
'credit' => $data['id'],
|
582 |
+
'camera' => $data['provider'],
|
583 |
+
'caption' => $data['description'],
|
584 |
'created_timestamp' => $data['timestamp'],
|
585 |
+
'copyright' => $data['author'],
|
586 |
+
'focal_length' => 0,
|
587 |
+
'iso' => 0,
|
588 |
+
'shutter_speed' => 0,
|
589 |
+
'title' => $data['title']
|
590 |
);
|
591 |
|
592 |
// save picture metadata
|
603 |
}
|
604 |
|
605 |
/**
|
606 |
+
* Removes the old featured image
|
607 |
* Used since 1.0, got it own function in 1.4
|
608 |
*
|
609 |
* @since 1.4
|
622 |
}
|
623 |
}
|
624 |
|
625 |
+
/*
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
626 |
* Initializes the help texts.
|
627 |
*
|
628 |
* @since 1.3
|
664 |
<li>Liveleak:
|
665 |
<ul><li><code>(http(s)://)(www.)<strong>liveleak.com/view?i=<em>LIV_ELEAKUNQID</em></strong></code></li></ul></li>
|
666 |
</ul>'."\n";
|
667 |
+
|
668 |
}
|
669 |
|
670 |
/**
|
759 |
);
|
760 |
return $id;
|
761 |
}
|
762 |
+
|
763 |
}
|
|
php/frontend.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
* Class containing functions required on frontend. Enqueue scripts/styles, replace featured images by featured videos.
|
4 |
*
|
5 |
* @author ahoereth
|
6 |
-
* @version 2013/
|
7 |
* @see ../featured_video_plus.php
|
8 |
* @see featured_video_plus in general.php
|
9 |
* @since 1.0
|
@@ -69,7 +69,7 @@ class featured_video_plus_frontend {
|
|
69 |
$h = isset($atts['height']) ? $atts['height'] : '';
|
70 |
|
71 |
if(has_post_video())
|
72 |
-
|
73 |
}
|
74 |
}
|
75 |
?>
|
3 |
* Class containing functions required on frontend. Enqueue scripts/styles, replace featured images by featured videos.
|
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
|
69 |
$h = isset($atts['height']) ? $atts['height'] : '';
|
70 |
|
71 |
if(has_post_video())
|
72 |
+
return get_the_post_video(null, array($w, $h));
|
73 |
}
|
74 |
}
|
75 |
?>
|
php/functions.php
CHANGED
@@ -1,19 +1,20 @@
|
|
1 |
<?php
|
2 |
-
/* Requires a featured_video_plus class instance, located in php/general.php
|
3 |
-
*
|
4 |
-
* @see featured-video-plus.php
|
5 |
-
* @see php/general.php
|
6 |
-
*/
|
7 |
|
8 |
/**
|
9 |
-
*
|
10 |
*
|
11 |
* @since 1.0
|
12 |
*
|
13 |
-
* @param
|
14 |
*/
|
15 |
-
function
|
16 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
17 |
}
|
18 |
|
19 |
/**
|
@@ -26,24 +27,18 @@ function the_post_video($size = null) {
|
|
26 |
*/
|
27 |
function get_the_post_video($post_id = null, $size = null) {
|
28 |
global $featured_video_plus;
|
29 |
-
return $featured_video_plus->get_the_post_video($post_id, $size);
|
30 |
}
|
31 |
|
32 |
/**
|
33 |
-
*
|
34 |
*
|
35 |
* @since 1.0
|
36 |
*
|
37 |
-
* @param
|
38 |
*/
|
39 |
-
function
|
40 |
-
|
41 |
-
|
42 |
-
$meta = get_post_meta( $post_id, '_fvp_video', true );
|
43 |
-
if( !isset($meta) || empty($meta['id']) )
|
44 |
-
return false;
|
45 |
-
|
46 |
-
return true;
|
47 |
}
|
48 |
|
49 |
/**
|
@@ -86,4 +81,25 @@ function get_the_post_video_image($post_id = null, $size = null) {
|
|
86 |
return wp_get_attachment_image($id, $size);
|
87 |
}
|
88 |
|
89 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
<?php
|
|
|
|
|
|
|
|
|
|
|
2 |
|
3 |
/**
|
4 |
+
* Checks if post has a featured video
|
5 |
*
|
6 |
* @since 1.0
|
7 |
*
|
8 |
+
* @param post_id
|
9 |
*/
|
10 |
+
function has_post_video($post_id = null){
|
11 |
+
$post_id = ( null === $post_id ) ? get_the_ID() : $post_id;
|
12 |
+
|
13 |
+
$meta = get_post_meta( $post_id, '_fvp_video', true );
|
14 |
+
if( !isset($meta) || empty($meta['id']) )
|
15 |
+
return false;
|
16 |
+
|
17 |
+
return true;
|
18 |
}
|
19 |
|
20 |
/**
|
27 |
*/
|
28 |
function get_the_post_video($post_id = null, $size = null) {
|
29 |
global $featured_video_plus;
|
30 |
+
return apply_filters( 'get_the_post_video_filter', $featured_video_plus->get_the_post_video($post_id, $size) );
|
31 |
}
|
32 |
|
33 |
/**
|
34 |
+
* Echos the current posts featured video
|
35 |
*
|
36 |
* @since 1.0
|
37 |
*
|
38 |
+
* @param size
|
39 |
*/
|
40 |
+
function the_post_video($size = null) {
|
41 |
+
echo get_the_post_video(null, $size);
|
|
|
|
|
|
|
|
|
|
|
|
|
42 |
}
|
43 |
|
44 |
/**
|
81 |
return wp_get_attachment_image($id, $size);
|
82 |
}
|
83 |
|
84 |
+
/**
|
85 |
+
* Retruns the post video url.
|
86 |
+
*
|
87 |
+
* @since 1.6
|
88 |
+
*
|
89 |
+
* @param int $post_id
|
90 |
+
* @return mixed boolean (false) when no url/ string with url
|
91 |
+
*/
|
92 |
+
function get_the_post_video_url($post_id){
|
93 |
+
$post_id = ( null === $post_id ) ? get_the_ID() : $post_id;
|
94 |
+
|
95 |
+
$meta = get_post_meta($post_id, '_fvp_video', true );
|
96 |
+
if (!isset($meta) || empty($meta['id']))
|
97 |
+
return false;
|
98 |
+
|
99 |
+
if (isset($meta['prov']) && $meta['prov'] == 'local')
|
100 |
+
return wp_get_attachment_url($meta['id']);
|
101 |
+
else if (isset($meta['full']))
|
102 |
+
return $meta['full'];
|
103 |
+
else
|
104 |
+
return false;
|
105 |
+
}
|
php/general.php
CHANGED
@@ -3,7 +3,7 @@
|
|
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/
|
7 |
* @see ../featured_video_plus.php
|
8 |
* @see featured_video_plus_backend in backend.php
|
9 |
* @see featured_video_plus_frontend in frontend.php
|
@@ -18,7 +18,7 @@ class featured_video_plus {
|
|
18 |
* @since 1.2
|
19 |
*/
|
20 |
public function enqueue($hook_suffix) {
|
21 |
-
// just required on post.php
|
22 |
if( !is_admin() || ( ($hook_suffix == 'post.php' && isset($_GET['post'])) || $hook_suffix == 'post-new.php') ) {
|
23 |
$options = get_option( 'fvp-settings' );
|
24 |
|
@@ -26,15 +26,17 @@ class featured_video_plus {
|
|
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
|
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
|
34 |
|
35 |
if( $options['sizing']['wmode'] == 'auto' )
|
36 |
-
wp_enqueue_script('fvp_fitvids', FVP_URL . 'js/jquery.fitvids_fvp
|
37 |
//wp_enqueue_script('fvp_fitvids', FVP_URL . 'js/jquery.fitvids_fvp.js', array( 'jquery' ), FVP_VERSION, true ); // development
|
|
|
|
|
38 |
}
|
39 |
}
|
40 |
|
@@ -64,10 +66,14 @@ class featured_video_plus {
|
|
64 |
$autoplay = is_single() ? '&autoplay='.$options['autoplay'] : '';
|
65 |
|
66 |
if( isset($meta['id']) && !empty($meta['id']) ) {
|
|
|
67 |
switch( $meta['prov'] ) {
|
68 |
|
69 |
case 'local':
|
70 |
-
|
|
|
|
|
|
|
71 |
|
72 |
$a = wp_get_attachment_url($meta['id']);
|
73 |
$ext = pathinfo( $a, PATHINFO_EXTENSION );
|
@@ -75,7 +81,7 @@ class featured_video_plus {
|
|
75 |
break;
|
76 |
|
77 |
$ext = $ext == 'ogv' ? 'ogg' : $ext;
|
78 |
-
$embed = "\n\t".'<video class="video-js vjs-default-skin" controls preload="auto" width="'.$width.'" height="'.$height.'"
|
79 |
$embed .= "\n\t\t".'<source src="' . $a . '" type="video/'.$ext.'">';
|
80 |
|
81 |
if( isset($meta['sec_id']) && !empty($meta['sec_id']) && $meta['sec_id'] != $meta['id'] ) {
|
@@ -90,32 +96,35 @@ class featured_video_plus {
|
|
90 |
break;
|
91 |
|
92 |
case 'vimeo':
|
|
|
|
|
93 |
$options = get_option( 'fvp-settings' );
|
94 |
$src = 'http://player.vimeo.com/video/'.$meta['id'].'?badge=0&portrait='.$options['vimeo']['portrait'].'&title='.$options['vimeo']['title'].'&byline='.$options['vimeo']['byline'].'&color='.$options['vimeo']['color'].$autoplay;
|
95 |
$embed = "\n\t" . '<iframe src="'.$src.'" width="'.$width.'" height="'.$height.'" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>' . "\n";
|
96 |
break;
|
97 |
|
98 |
case 'youtube':
|
99 |
-
$youtube['theme']
|
100 |
-
$youtube['color']
|
|
|
101 |
$youtube['info'] = isset($options['youtube']['info']) ? $options['youtube']['info'] : 1;
|
102 |
$youtube['logo'] = isset($options['youtube']['logo']) ? $options['youtube']['logo'] : 1;
|
103 |
-
$youtube['rel'] = isset($options['youtube']['rel']) ? $options['youtube']['rel']
|
104 |
-
$youtube['fs'] = isset($options['youtube']['fs']) ? $options['youtube']['fs']
|
105 |
-
$youtube['wmode']
|
106 |
|
107 |
-
$src = 'http://www.youtube.com/embed/'.$meta['id'].'?theme='.$youtube['theme'].$youtube['wmode'].'&color='.$youtube['color'].'&showinfo='.$youtube['info'].'&modestbranding='.$youtube['logo'].'&origin='.esc_attr(home_url()).'&rel='.$youtube['rel'].'&fs='.$youtube['fs'].'&start='.$meta['time'].$autoplay;
|
108 |
-
$embed = "\n\t" . '<iframe width="'.$width.'" height="'.$height.'" src="'.$src.'" type="text/html" frameborder="0"></iframe>' . "\n";
|
109 |
break;
|
110 |
|
111 |
case 'dailymotion':
|
112 |
-
$dm['foreground']
|
113 |
$dm['highlight'] = isset($options['dailymotion']['highlight']) ? $options['dailymotion']['highlight'] : 'FFC300';
|
114 |
-
$dm['background']
|
115 |
-
$dm['logo']
|
116 |
-
$dm['hideinfo'] = isset($options['dailymotion']['info'])
|
117 |
-
$dm['syndication']
|
118 |
-
$dm['synd']
|
119 |
|
120 |
$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;
|
121 |
$embed = "\n" . '<iframe width="'.$width.'" height="'.$height.'" src="'.$dm['src'].'" frameborder="0"></iframe>' . "\n";
|
@@ -215,4 +224,3 @@ class featured_video_plus {
|
|
215 |
load_plugin_textdomain('featured-video-plus', FVP_DIR . 'lng/', FVP_NAME . '/lng/' );
|
216 |
}
|
217 |
}
|
218 |
-
?>
|
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
|
18 |
* @since 1.2
|
19 |
*/
|
20 |
public function enqueue($hook_suffix) {
|
21 |
+
// just required on frontend, post.php and post-new.php
|
22 |
if( !is_admin() || ( ($hook_suffix == 'post.php' && isset($_GET['post'])) || $hook_suffix == 'post-new.php') ) {
|
23 |
$options = get_option( 'fvp-settings' );
|
24 |
|
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 |
if( $options['sizing']['wmode'] == 'auto' )
|
36 |
+
wp_enqueue_script('fvp_fitvids', FVP_URL . 'js/jquery.fitvids_fvp.min.js', array( 'jquery' ), FVP_VERSION, true ); // production
|
37 |
//wp_enqueue_script('fvp_fitvids', FVP_URL . 'js/jquery.fitvids_fvp.js', array( 'jquery' ), FVP_VERSION, true ); // development
|
38 |
+
|
39 |
+
wp_enqueue_style('fvp_frontend', FVP_URL . 'css/frontend.css', array(), FVP_VERSION, false );
|
40 |
}
|
41 |
}
|
42 |
|
66 |
$autoplay = is_single() ? '&autoplay='.$options['autoplay'] : '';
|
67 |
|
68 |
if( isset($meta['id']) && !empty($meta['id']) ) {
|
69 |
+
$valid = $meta['valid'];
|
70 |
switch( $meta['prov'] ) {
|
71 |
|
72 |
case 'local':
|
73 |
+
if (isset($options['local']['videojs']['poster']) && $options['local']['videojs']['poster'])
|
74 |
+
$poster = has_post_thumbnail($post_id) ? ' poster="'.wp_get_attachment_url( get_post_thumbnail_id($post_id) ).'"' : '';
|
75 |
+
else
|
76 |
+
$poster = ' poster=""';
|
77 |
|
78 |
$a = wp_get_attachment_url($meta['id']);
|
79 |
$ext = pathinfo( $a, PATHINFO_EXTENSION );
|
81 |
break;
|
82 |
|
83 |
$ext = $ext == 'ogv' ? 'ogg' : $ext;
|
84 |
+
$embed = "\n\t".'<video class="video-js vjs-default-skin" controls preload="auto" width="'.$width.'" height="'.$height.'"'.$poster.' data-setup="{}">';
|
85 |
$embed .= "\n\t\t".'<source src="' . $a . '" type="video/'.$ext.'">';
|
86 |
|
87 |
if( isset($meta['sec_id']) && !empty($meta['sec_id']) && $meta['sec_id'] != $meta['id'] ) {
|
96 |
break;
|
97 |
|
98 |
case 'vimeo':
|
99 |
+
if (!$valid) return '';
|
100 |
+
|
101 |
$options = get_option( 'fvp-settings' );
|
102 |
$src = 'http://player.vimeo.com/video/'.$meta['id'].'?badge=0&portrait='.$options['vimeo']['portrait'].'&title='.$options['vimeo']['title'].'&byline='.$options['vimeo']['byline'].'&color='.$options['vimeo']['color'].$autoplay;
|
103 |
$embed = "\n\t" . '<iframe src="'.$src.'" width="'.$width.'" height="'.$height.'" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>' . "\n";
|
104 |
break;
|
105 |
|
106 |
case 'youtube':
|
107 |
+
$youtube['theme'] = isset($options['youtube']['theme']) ? $options['youtube']['theme'] : 'dark';
|
108 |
+
$youtube['color'] = isset($options['youtube']['color']) ? $options['youtube']['color'] : 'red';
|
109 |
+
$youtube['jsapi'] = isset($options['youtube']['jsapi']) ? $options['youtube']['jsapi'] : '0&playerapiid=fvpyt'.$post_id;
|
110 |
$youtube['info'] = isset($options['youtube']['info']) ? $options['youtube']['info'] : 1;
|
111 |
$youtube['logo'] = isset($options['youtube']['logo']) ? $options['youtube']['logo'] : 1;
|
112 |
+
$youtube['rel'] = isset($options['youtube']['rel']) ? $options['youtube']['rel'] : 1;
|
113 |
+
$youtube['fs'] = isset($options['youtube']['fs']) ? $options['youtube']['fs'] : 1;
|
114 |
+
$youtube['wmode'] = isset($options['youtube']['wmode']) && $options['youtube']['wmode'] != 'auto' ? '&wmode='.$options['youtube']['wmode'] : '';
|
115 |
|
116 |
+
$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;
|
117 |
+
$embed = "\n\t" . '<iframe width="'.$width.'" height="'.$height.'" src="'.$src.'" type="text/html" frameborder="0" id="fvpyt'.$post_id.'"></iframe>' . "\n";
|
118 |
break;
|
119 |
|
120 |
case 'dailymotion':
|
121 |
+
$dm['foreground'] = isset($options['dailymotion']['foreground']) ? $options['dailymotion']['foreground'] : 'F7FFFD';
|
122 |
$dm['highlight'] = isset($options['dailymotion']['highlight']) ? $options['dailymotion']['highlight'] : 'FFC300';
|
123 |
+
$dm['background'] = isset($options['dailymotion']['background']) ? $options['dailymotion']['background'] : '171D1B';
|
124 |
+
$dm['logo'] = isset($options['dailymotion']['logo']) ? $options['dailymotion']['logo'] : 1;
|
125 |
+
$dm['hideinfo'] = isset($options['dailymotion']['info']) ? 1-$options['dailymotion']['info'] : 0;
|
126 |
+
$dm['syndication']= isset($options['dailymotion']['syndication']) ? $options['dailymotion']['syndication']: '';
|
127 |
+
$dm['synd'] = !empty($dm['syndication']) ? '&syndication='.$dm['syndication'] : '';
|
128 |
|
129 |
$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;
|
130 |
$embed = "\n" . '<iframe width="'.$width.'" height="'.$height.'" src="'.$dm['src'].'" frameborder="0"></iframe>' . "\n";
|
224 |
load_plugin_textdomain('featured-video-plus', FVP_DIR . 'lng/', FVP_NAME . '/lng/' );
|
225 |
}
|
226 |
}
|
|
php/settings.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
* Class containing everything regarding plugin settings on media-settings.php
|
4 |
*
|
5 |
* @author ahoereth
|
6 |
-
* @version 2013/
|
7 |
* @see ../featured_video_plus.php
|
8 |
* @since 1.3
|
9 |
*/
|
@@ -18,17 +18,17 @@ class featured_video_plus_settings {
|
|
18 |
* @since 1.0
|
19 |
*/
|
20 |
function settings_init() {
|
21 |
-
add_settings_section('fvp-settings-section', __('Featured Videos', 'featured-video-plus'),
|
22 |
-
|
23 |
-
add_settings_field('fvp-settings-overwrite', __('Replace Featured Images', 'featured-video-plus'),
|
24 |
-
add_settings_field('fvp-settings-autoplay', __('Autoplay', 'featured-video-plus'),
|
25 |
-
add_settings_field('fvp-settings-sizing', __('Video Sizing', 'featured-video-plus'),
|
26 |
-
add_settings_field('fvp-settings-align',
|
27 |
-
add_settings_field('fvp-settings-local',
|
28 |
-
add_settings_field('fvp-settings-youtube', __('YouTube Options', 'featured-video-plus'),
|
29 |
-
add_settings_field('fvp-settings-vimeo',
|
30 |
-
add_settings_field('fvp-settings-dailymotion',
|
31 |
-
add_settings_field('fvp-settings-rate',
|
32 |
|
33 |
register_setting('media', 'fvp-settings', array( &$this, 'settings_save' ));
|
34 |
}
|
@@ -153,16 +153,18 @@ if( !current_theme_supports('post-thumbnails') )
|
|
153 |
*/
|
154 |
function settings_local() {
|
155 |
$options = get_option( 'fvp-settings' );
|
156 |
-
$videojs['js']
|
157 |
-
$videojs['css']
|
158 |
-
$videojs['cdn']
|
|
|
159 |
|
160 |
VideoJS:
|
161 |
<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"> <?php _e('Use CDN', 'featured-video-plus'); ?></label>
|
162 |
<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"> <?php _e('Include JS', 'featured-video-plus'); ?></label>
|
163 |
-
<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"> <?php _e('Include CSS', 'featured-video-plus'); ?></label
|
164 |
-
|
165 |
<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>
|
|
|
|
|
166 |
<?php }
|
167 |
|
168 |
/**
|
@@ -176,27 +178,30 @@ VideoJS:
|
|
176 |
$youtube['theme'] = isset($options['youtube']['theme']) ? $options['youtube']['theme'] : 'dark';
|
177 |
$youtube['color'] = isset($options['youtube']['color']) ? $options['youtube']['color'] : 'red';
|
178 |
$youtube['wmode'] = isset($options['youtube']['wmode']) ? $options['youtube']['wmode'] : 'auto';
|
|
|
179 |
$youtube['info'] = isset($options['youtube']['info']) ? $options['youtube']['info'] : 1;
|
180 |
$youtube['logo'] = isset($options['youtube']['logo']) ? $options['youtube']['logo'] : 1;
|
181 |
$youtube['rel'] = isset($options['youtube']['rel']) ? $options['youtube']['rel'] : 1;
|
182 |
$youtube['fs'] = isset($options['youtube']['fs']) ? $options['youtube']['fs'] : 1; ?>
|
183 |
|
184 |
-
<input type="checkbox" name="fvp-settings[youtube][theme]"
|
185 |
-
<input type="checkbox" name="fvp-settings[youtube][fs]"
|
186 |
<select name="fvp-settings[youtube][wmode]" id="fvp-settings-youtube-wmode" size="1">
|
187 |
-
<option<?php selected($youtube['wmode'],'auto');
|
188 |
<option<?php selected($youtube['wmode'],'transparent'); ?>>transparent</option>
|
189 |
-
<option<?php selected($youtube['wmode'],'opaque');
|
190 |
</select>
|
191 |
<label for="fvp-settings-youtube-wmode">"wmode"</label>
|
192 |
<br />
|
193 |
-
<input type="checkbox" name="fvp-settings[youtube][info]" id="fvp-settings-youtube-info" value="true" <?php checked( 1,
|
194 |
|
195 |
-
<input type="checkbox" name="fvp-settings[youtube][rel]"
|
196 |
-
<input type="checkbox" name="fvp-settings[youtube][
|
|
|
197 |
<span id="youtube_logoinput_wrapper"<?php if($youtube['color'] != 'red') echo ' class="fvp_hidden"'; ?>>
|
198 |
-
<input type="checkbox" name="fvp-settings[youtube][logo]"
|
199 |
</span>
|
|
|
200 |
<?php
|
201 |
}
|
202 |
|
@@ -210,14 +215,14 @@ VideoJS:
|
|
210 |
*/
|
211 |
function settings_vimeo() {
|
212 |
$options = get_option( 'fvp-settings' );
|
213 |
-
$vimeo['portrait']
|
214 |
$vimeo['title' ] = isset($options['vimeo']['title' ]) ? $options['vimeo']['title' ] : 1;
|
215 |
$vimeo['byline'] = isset($options['vimeo']['byline']) ? $options['vimeo']['byline'] : 1;
|
216 |
$vimeo['color' ] = isset($options['vimeo']['color' ]) ? $options['vimeo']['color' ] : '00adef'; ?>
|
217 |
|
218 |
<div style="position: relative; bottom: .6em;">
|
219 |
<input type="checkbox" name="fvp-settings[vimeo][portrait]" id="fvp-settings-vimeo-1" value="display" <?php checked( 1, $vimeo['portrait'], 1 ) ?>/><label for="fvp-settings-vimeo-1"> <?php _e('Portrait', 'featured-video-plus'); ?></label>
|
220 |
-
<input type="checkbox" name="fvp-settings[vimeo][title]"
|
221 |
<input type="checkbox" name="fvp-settings[vimeo][byline]" id="fvp-settings-vimeo-3" value="display" <?php checked( 1, $vimeo['byline'], 1 ) ?>/><label for="fvp-settings-vimeo-3"> <?php _e('Byline', 'featured-video-plus'); ?></label>
|
222 |
<span class="color-picker" style="position: relative;<?php if( wp_style_is( 'wp-color-picker', 'done' ) ) echo ' top: .6em;'; ?>" >
|
223 |
<input type="text" name="fvp-settings[vimeo][color]" id="fvp-settings-vimeo-color" class="fvp_colorpicker_input" value="#<?php echo $vimeo['color'] ?>" data-default-color="#00adef" />
|
@@ -240,12 +245,12 @@ VideoJS:
|
|
240 |
*/
|
241 |
function settings_dailymotion() {
|
242 |
$options = get_option( 'fvp-settings' );
|
243 |
-
$dailymotion['logo']
|
244 |
-
$dailymotion['info']
|
245 |
-
$dailymotion['synd']
|
246 |
-
$dailymotion['foreground']
|
247 |
-
$dailymotion['highlight' ]
|
248 |
-
$dailymotion['background']
|
249 |
|
250 |
<input type="checkbox" name="fvp-settings[dailymotion][logo]" id="fvp-settings-dailymotion-logo" value="display" <?php checked( 1, $dailymotion['logo'], 1 ) ?>/> <label for="fvp-settings-dailymotion-logo"> <?php _e('Logo', 'featured-video-plus'); ?></label>
|
251 |
<input type="checkbox" name="fvp-settings[dailymotion][info]" id="fvp-settings-dailymotion-info" value="display" <?php checked( 1, $dailymotion['info'], 1 ) ?>/> <label for="fvp-settings-dailymotion-info"> <?php _e('Videoinfo', 'featured-video-plus'); ?></label>
|
@@ -285,12 +290,6 @@ VideoJS:
|
|
285 |
'<a href="http://wordpress.org/support/view/plugin-reviews/featured-video-plus#plugin-title" title="Rate Featured Video Plus on WordPress.org" target="_blank" style="font-weight: bold;">', '</a>'
|
286 |
);
|
287 |
echo '</p>';
|
288 |
-
echo '<p>';
|
289 |
-
_e('The plugin logs it\'s version, the WordPress version and WordPress language for internal statistics. Those help for future plugin development.', 'featured-video-plus');
|
290 |
-
echo '<br />';
|
291 |
-
_e('No personal user information is being collected. Still, you can easily Opt-Out and have the data deleted:', 'featured-video-plus');
|
292 |
-
echo ' <input type="checkbox" name="fvp-settings[out]" id="fvp-settings-out" value="true"'.checked( 1, $optout, false ).' />';
|
293 |
-
|
294 |
}
|
295 |
|
296 |
/**
|
@@ -325,21 +324,23 @@ VideoJS:
|
|
325 |
$options['autoplay'] = isset($input['autoplay']) && $input['autoplay'] == 'true' ? 1 : 0;
|
326 |
|
327 |
// Local
|
328 |
-
$options['local']['videojs']['js']
|
329 |
-
$options['local']['videojs']['css']
|
330 |
-
$options['local']['videojs']['cdn']
|
|
|
331 |
|
332 |
// YouTube
|
333 |
-
$options['youtube']['theme'] = isset($input['youtube']['theme']) && ( $input['youtube']['theme']
|
334 |
-
$options['youtube']['color'] = isset($input['youtube']['color']) && ( $input['youtube']['color']
|
335 |
-
$options['youtube']['wmode'] = isset($input['youtube']['wmode']) ? $input['youtube']['wmode']
|
336 |
-
$options['youtube']['
|
337 |
-
$options['youtube']['
|
338 |
-
$options['youtube']['
|
339 |
-
$options['youtube']['
|
|
|
340 |
|
341 |
// Vimeo
|
342 |
-
$options['vimeo']['portrait']
|
343 |
$options['vimeo']['title'] = isset($input['vimeo']['title']) && ( $input['vimeo']['title'] == 'display' ) ? 1 : 0;
|
344 |
$options['vimeo']['byline'] = isset($input['vimeo']['byline']) && ( $input['vimeo']['byline'] == 'display' ) ? 1 : 0;
|
345 |
|
@@ -347,22 +348,16 @@ VideoJS:
|
|
347 |
$options['vimeo']['color'] = isset($vimeocolor[1]) && !empty($vimeocolor[1]) ? $vimeocolor[1] : '00adef';
|
348 |
|
349 |
// Dailymotion
|
350 |
-
$options['dailymotion']['logo']
|
351 |
-
$options['dailymotion']['info']
|
352 |
-
$options['dailymotion']['syndication']
|
353 |
|
354 |
if( isset($options['dailymotion']['foreground']) ) preg_match($hexcolor, $input['dailymotion']['foreground'], $dm_foreground);
|
355 |
if( isset($options['dailymotion']['highlight']) ) preg_match($hexcolor, $input['dailymotion']['highlight'], $dm_highlight);
|
356 |
if( isset($options['dailymotion']['background']) ) preg_match($hexcolor, $input['dailymotion']['background'], $dm_background);
|
357 |
-
$options['dailymotion']['foreground']
|
358 |
$options['dailymotion']['highlight'] = isset($dm_highlight[ 1]) && !empty($dm_highlight[ 1])? $dm_highlight[ 1] : 'ffc300';
|
359 |
-
$options['dailymotion']['background']
|
360 |
-
|
361 |
-
// Opt-Out
|
362 |
-
if( isset($input['out']) && $input['out'] == 'true' && !$options['out'] )
|
363 |
-
$options = $GLOBALS['featured_video_plus_backend']->featured_video_plus_notify($options, 1 );
|
364 |
-
elseif( !isset($input['out']) && isset($options['out']) && $options['out'] )
|
365 |
-
$options = $GLOBALS['featured_video_plus_backend']->featured_video_plus_notify($options, 0 );
|
366 |
|
367 |
return $options;
|
368 |
}
|
@@ -394,6 +389,7 @@ VideoJS:
|
|
394 |
<li><code>the_post_video( $size )</code></li>
|
395 |
<li><code>has_post_video( $post_id )</code></li>
|
396 |
<li><code>get_the_post_video( $post_id, $size )</code></li>
|
|
|
397 |
<li><code>get_the_post_video_image_url( $post_id )</code></li>
|
398 |
<li><code>get_the_post_video_image( $post_id )</code></li>
|
399 |
</ul>
|
@@ -423,14 +419,14 @@ VideoJS:
|
|
423 |
|
424 |
// PHP FUNCTIONS HELP TAB
|
425 |
$screen->add_help_tab( array(
|
426 |
-
'id'
|
427 |
'title' => 'Featured Video Plus: '.__('PHP-Functions','featured-video-plus'),
|
428 |
'content' => $this->help_functions
|
429 |
));
|
430 |
|
431 |
// SHORTCODE HELP TAB
|
432 |
$screen->add_help_tab( array(
|
433 |
-
'id'
|
434 |
'title' => 'Featured Video Plus: Shortcode',
|
435 |
'content' => $this->help_shortcode
|
436 |
));
|
@@ -456,4 +452,3 @@ VideoJS:
|
|
456 |
}
|
457 |
|
458 |
}
|
459 |
-
?>
|
3 |
* Class containing everything regarding plugin settings on media-settings.php
|
4 |
*
|
5 |
* @author ahoereth
|
6 |
+
* @version 2013/04/16
|
7 |
* @see ../featured_video_plus.php
|
8 |
* @since 1.3
|
9 |
*/
|
18 |
* @since 1.0
|
19 |
*/
|
20 |
function settings_init() {
|
21 |
+
add_settings_section('fvp-settings-section', __('Featured Videos', 'featured-video-plus'), array( &$this, 'settings_content' ), 'media');
|
22 |
+
|
23 |
+
add_settings_field('fvp-settings-overwrite', __('Replace Featured Images', 'featured-video-plus'),array( &$this, 'settings_overwrite' ), 'media', 'fvp-settings-section');
|
24 |
+
add_settings_field('fvp-settings-autoplay', __('Autoplay', 'featured-video-plus'), array( &$this, 'settings_autoplay' ), 'media', 'fvp-settings-section');
|
25 |
+
add_settings_field('fvp-settings-sizing', __('Video Sizing', 'featured-video-plus'), array( &$this, 'settings_sizing' ), 'media', 'fvp-settings-section');
|
26 |
+
add_settings_field('fvp-settings-align', __('Video Align', 'featured-video-plus'), array( &$this, 'settings_align' ), 'media', 'fvp-settings-section');
|
27 |
+
add_settings_field('fvp-settings-local', __('Local Video Options', 'featured-video-plus'), array( &$this, 'settings_local' ), 'media', 'fvp-settings-section');
|
28 |
+
add_settings_field('fvp-settings-youtube', __('YouTube Options', 'featured-video-plus'), array( &$this, 'settings_youtube' ), 'media', 'fvp-settings-section');
|
29 |
+
add_settings_field('fvp-settings-vimeo', __('Vimeo Options', 'featured-video-plus'), array( &$this, 'settings_vimeo' ), 'media', 'fvp-settings-section');
|
30 |
+
add_settings_field('fvp-settings-dailymotion',__('Dailymotion Options', 'featured-video-plus'), array( &$this, 'settings_dailymotion' ),'media', 'fvp-settings-section');
|
31 |
+
add_settings_field('fvp-settings-rate', __('Support', 'featured-video-plus'), array( &$this, 'settings_rate' ), 'media', 'fvp-settings-section');
|
32 |
|
33 |
register_setting('media', 'fvp-settings', array( &$this, 'settings_save' ));
|
34 |
}
|
153 |
*/
|
154 |
function settings_local() {
|
155 |
$options = get_option( 'fvp-settings' );
|
156 |
+
$videojs['js'] = isset($options['local']['videojs']['js']) ? $options['local']['videojs']['js'] : true;
|
157 |
+
$videojs['css'] = isset($options['local']['videojs']['css']) ? $options['local']['videojs']['css'] : true;
|
158 |
+
$videojs['cdn'] = isset($options['local']['videojs']['cdn']) ? $options['local']['videojs']['cdn'] : false;
|
159 |
+
$videojs['poster']= isset($options['local']['videojs']['poster'])? $options['local']['videojs']['poster'] : false; ?>
|
160 |
|
161 |
VideoJS:
|
162 |
<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"> <?php _e('Use CDN', 'featured-video-plus'); ?></label>
|
163 |
<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"> <?php _e('Include JS', 'featured-video-plus'); ?></label>
|
164 |
+
<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"> <?php _e('Include CSS', 'featured-video-plus'); ?></label><br />
|
|
|
165 |
<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>
|
166 |
+
<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"> <?php _e('Use featured image as video thumbnail', 'featured-video-plus'); ?></label>
|
167 |
+
|
168 |
<?php }
|
169 |
|
170 |
/**
|
178 |
$youtube['theme'] = isset($options['youtube']['theme']) ? $options['youtube']['theme'] : 'dark';
|
179 |
$youtube['color'] = isset($options['youtube']['color']) ? $options['youtube']['color'] : 'red';
|
180 |
$youtube['wmode'] = isset($options['youtube']['wmode']) ? $options['youtube']['wmode'] : 'auto';
|
181 |
+
$youtube['jsapi'] = isset($options['youtube']['jsapi']) ? $options['youtube']['jsapi'] : 0;
|
182 |
$youtube['info'] = isset($options['youtube']['info']) ? $options['youtube']['info'] : 1;
|
183 |
$youtube['logo'] = isset($options['youtube']['logo']) ? $options['youtube']['logo'] : 1;
|
184 |
$youtube['rel'] = isset($options['youtube']['rel']) ? $options['youtube']['rel'] : 1;
|
185 |
$youtube['fs'] = isset($options['youtube']['fs']) ? $options['youtube']['fs'] : 1; ?>
|
186 |
|
187 |
+
<input type="checkbox" name="fvp-settings[youtube][theme]" id="fvp-settings-youtube-theme" value="light" <?php checked( 'light', $youtube['theme'],1 ) ?>/><label for="fvp-settings-youtube-theme"> <?php _e('Light Theme', 'featured-video-plus'); ?></label>
|
188 |
+
<input type="checkbox" name="fvp-settings[youtube][fs]" id="fvp-settings-youtube-fs" value="true" <?php checked( 1, $youtube['fs'], 1 ) ?>/><label for="fvp-settings-youtube-fs"> <?php _e('Fullscreen Button', 'featured-video-plus'); ?></label>
|
189 |
<select name="fvp-settings[youtube][wmode]" id="fvp-settings-youtube-wmode" size="1">
|
190 |
+
<option<?php selected($youtube['wmode'],'auto'); ?>>auto</option>
|
191 |
<option<?php selected($youtube['wmode'],'transparent'); ?>>transparent</option>
|
192 |
+
<option<?php selected($youtube['wmode'],'opaque'); ?>>opaque</option>
|
193 |
</select>
|
194 |
<label for="fvp-settings-youtube-wmode">"wmode"</label>
|
195 |
<br />
|
196 |
+
<input type="checkbox" name="fvp-settings[youtube][info]" id="fvp-settings-youtube-info" value="true" <?php checked( 1, $youtube['info'], 1 ) ?>/><label for="fvp-settings-youtube-info"> <?php _e('Info', 'featured-video-plus'); ?></label>
|
197 |
|
198 |
+
<input type="checkbox" name="fvp-settings[youtube][rel]" id="fvp-settings-youtube-rel" value="true" <?php checked( 1, $youtube['rel'], 1 ) ?>/><label for="fvp-settings-youtube-rel"> <?php _e('Related Videos', 'featured-video-plus'); ?></label>
|
199 |
+
<input type="checkbox" name="fvp-settings[youtube][jsapi]" id="fvp-settings-youtube-jsapi" value="true" <?php checked( 1, $youtube['jsapi'],1 ) ?>/><label for="fvp-settings-youtube-jsapi"> <?php _e('Javascript API', 'featured-video-plus'); ?></label>
|
200 |
+
<input type="checkbox" name="fvp-settings[youtube][color]" id="fvp-settings-youtube-color" value="white" <?php checked( 'white',$youtube['color'],1 ) ?>/><label for="fvp-settings-youtube-color"> <?php _e('White Progressbar','featured-video-plus'); ?></label>
|
201 |
<span id="youtube_logoinput_wrapper"<?php if($youtube['color'] != 'red') echo ' class="fvp_hidden"'; ?>>
|
202 |
+
<input type="checkbox" name="fvp-settings[youtube][logo]" id="fvp-settings-youtube-logo" value="true" <?php checked( 1, $youtube['logo'], 1 ) ?>/><label for="fvp-settings-youtube-logo"> <?php _e('Logo', 'featured-video-plus'); ?></label>
|
203 |
</span>
|
204 |
+
|
205 |
<?php
|
206 |
}
|
207 |
|
215 |
*/
|
216 |
function settings_vimeo() {
|
217 |
$options = get_option( 'fvp-settings' );
|
218 |
+
$vimeo['portrait']= isset($options['vimeo']['portrait'])? $options['vimeo']['portrait'] : 0;
|
219 |
$vimeo['title' ] = isset($options['vimeo']['title' ]) ? $options['vimeo']['title' ] : 1;
|
220 |
$vimeo['byline'] = isset($options['vimeo']['byline']) ? $options['vimeo']['byline'] : 1;
|
221 |
$vimeo['color' ] = isset($options['vimeo']['color' ]) ? $options['vimeo']['color' ] : '00adef'; ?>
|
222 |
|
223 |
<div style="position: relative; bottom: .6em;">
|
224 |
<input type="checkbox" name="fvp-settings[vimeo][portrait]" id="fvp-settings-vimeo-1" value="display" <?php checked( 1, $vimeo['portrait'], 1 ) ?>/><label for="fvp-settings-vimeo-1"> <?php _e('Portrait', 'featured-video-plus'); ?></label>
|
225 |
+
<input type="checkbox" name="fvp-settings[vimeo][title]" id="fvp-settings-vimeo-2" value="display" <?php checked( 1, $vimeo['title'], 1 ) ?>/><label for="fvp-settings-vimeo-2"> <?php _e('Title', 'featured-video-plus'); ?></label>
|
226 |
<input type="checkbox" name="fvp-settings[vimeo][byline]" id="fvp-settings-vimeo-3" value="display" <?php checked( 1, $vimeo['byline'], 1 ) ?>/><label for="fvp-settings-vimeo-3"> <?php _e('Byline', 'featured-video-plus'); ?></label>
|
227 |
<span class="color-picker" style="position: relative;<?php if( wp_style_is( 'wp-color-picker', 'done' ) ) echo ' top: .6em;'; ?>" >
|
228 |
<input type="text" name="fvp-settings[vimeo][color]" id="fvp-settings-vimeo-color" class="fvp_colorpicker_input" value="#<?php echo $vimeo['color'] ?>" data-default-color="#00adef" />
|
245 |
*/
|
246 |
function settings_dailymotion() {
|
247 |
$options = get_option( 'fvp-settings' );
|
248 |
+
$dailymotion['logo'] = isset($options['dailymotion']['logo']) ? $options['dailymotion']['logo'] : 1;
|
249 |
+
$dailymotion['info'] = isset($options['dailymotion']['info']) ? $options['dailymotion']['info'] : 1;
|
250 |
+
$dailymotion['synd'] = isset($options['dailymotion']['synd']) ? $options['dailymotion']['syndication']: '';
|
251 |
+
$dailymotion['foreground']= isset($options['dailymotion']['foreground'])? $options['dailymotion']['foreground'] : 'f7fffd';
|
252 |
+
$dailymotion['highlight' ]= isset($options['dailymotion']['highlight' ])? $options['dailymotion']['highlight' ] : 'ffc300';
|
253 |
+
$dailymotion['background']= isset($options['dailymotion']['background'])? $options['dailymotion']['background'] : '171d1b'; ?>
|
254 |
|
255 |
<input type="checkbox" name="fvp-settings[dailymotion][logo]" id="fvp-settings-dailymotion-logo" value="display" <?php checked( 1, $dailymotion['logo'], 1 ) ?>/> <label for="fvp-settings-dailymotion-logo"> <?php _e('Logo', 'featured-video-plus'); ?></label>
|
256 |
<input type="checkbox" name="fvp-settings[dailymotion][info]" id="fvp-settings-dailymotion-info" value="display" <?php checked( 1, $dailymotion['info'], 1 ) ?>/> <label for="fvp-settings-dailymotion-info"> <?php _e('Videoinfo', 'featured-video-plus'); ?></label>
|
290 |
'<a href="http://wordpress.org/support/view/plugin-reviews/featured-video-plus#plugin-title" title="Rate Featured Video Plus on WordPress.org" target="_blank" style="font-weight: bold;">', '</a>'
|
291 |
);
|
292 |
echo '</p>';
|
|
|
|
|
|
|
|
|
|
|
|
|
293 |
}
|
294 |
|
295 |
/**
|
324 |
$options['autoplay'] = isset($input['autoplay']) && $input['autoplay'] == 'true' ? 1 : 0;
|
325 |
|
326 |
// Local
|
327 |
+
$options['local']['videojs']['js'] = isset( $input['local']['videojs']['js'] ) ? true : false;
|
328 |
+
$options['local']['videojs']['css'] = isset( $input['local']['videojs']['css'] ) ? true : false;
|
329 |
+
$options['local']['videojs']['cdn'] = isset( $input['local']['videojs']['cdn'] ) ? true : false;
|
330 |
+
$options['local']['videojs']['poster']= isset( $input['local']['videojs']['poster'] ) ? true : false;
|
331 |
|
332 |
// YouTube
|
333 |
+
$options['youtube']['theme'] = isset($input['youtube']['theme']) && ( $input['youtube']['theme'] == 'light') ? 'light' : 'dark';
|
334 |
+
$options['youtube']['color'] = isset($input['youtube']['color']) && ( $input['youtube']['color'] == 'white') ? 'white' : 'red';
|
335 |
+
$options['youtube']['wmode'] = isset($input['youtube']['wmode']) ? $input['youtube']['wmode'] : 'auto';
|
336 |
+
$options['youtube']['jsapi'] = isset($input['youtube']['jsapi']) && ( $input['youtube']['jsapi'] == 'true' ) ? 1 : 0;
|
337 |
+
$options['youtube']['info'] = isset($input['youtube']['info']) && ( $input['youtube']['info'] == 'true' ) ? 1 : 0;
|
338 |
+
$options['youtube']['logo'] = isset($input['youtube']['logo']) && ( $input['youtube']['logo'] == 'true' ) ? 1 : 0;
|
339 |
+
$options['youtube']['rel'] = isset($input['youtube']['rel']) && ( $input['youtube']['rel'] == 'true' ) ? 1 : 0;
|
340 |
+
$options['youtube']['fs'] = isset($input['youtube']['fs']) && ( $input['youtube']['fs'] == 'true' ) ? 1 : 0;
|
341 |
|
342 |
// Vimeo
|
343 |
+
$options['vimeo']['portrait'] = isset($input['vimeo']['portrait'])&& ( $input['vimeo']['portrait'] == 'display' ) ? 1 : 0;
|
344 |
$options['vimeo']['title'] = isset($input['vimeo']['title']) && ( $input['vimeo']['title'] == 'display' ) ? 1 : 0;
|
345 |
$options['vimeo']['byline'] = isset($input['vimeo']['byline']) && ( $input['vimeo']['byline'] == 'display' ) ? 1 : 0;
|
346 |
|
348 |
$options['vimeo']['color'] = isset($vimeocolor[1]) && !empty($vimeocolor[1]) ? $vimeocolor[1] : '00adef';
|
349 |
|
350 |
// Dailymotion
|
351 |
+
$options['dailymotion']['logo'] = isset($input['dailymotion']['logo']) && ( $input['dailymotion']['logo'] == 'display' ) ? 1 : 0;
|
352 |
+
$options['dailymotion']['info'] = isset($input['dailymotion']['info']) && ( $input['dailymotion']['info'] == 'display' ) ? 1 : 0;
|
353 |
+
$options['dailymotion']['syndication']= isset($input['dailymotion']['synd']) && !empty($input['dailymotion']['synd']) ? $input['dailymotion']['synd'] : '';
|
354 |
|
355 |
if( isset($options['dailymotion']['foreground']) ) preg_match($hexcolor, $input['dailymotion']['foreground'], $dm_foreground);
|
356 |
if( isset($options['dailymotion']['highlight']) ) preg_match($hexcolor, $input['dailymotion']['highlight'], $dm_highlight);
|
357 |
if( isset($options['dailymotion']['background']) ) preg_match($hexcolor, $input['dailymotion']['background'], $dm_background);
|
358 |
+
$options['dailymotion']['foreground'] = isset($dm_foreground[1]) && !empty($dm_foreground[1])? $dm_foreground[1] : 'f7fffd';
|
359 |
$options['dailymotion']['highlight'] = isset($dm_highlight[ 1]) && !empty($dm_highlight[ 1])? $dm_highlight[ 1] : 'ffc300';
|
360 |
+
$options['dailymotion']['background'] = isset($dm_background[1]) && !empty($dm_background[1])? $dm_background[1] : '171d1b';
|
|
|
|
|
|
|
|
|
|
|
|
|
361 |
|
362 |
return $options;
|
363 |
}
|
389 |
<li><code>the_post_video( $size )</code></li>
|
390 |
<li><code>has_post_video( $post_id )</code></li>
|
391 |
<li><code>get_the_post_video( $post_id, $size )</code></li>
|
392 |
+
<li><code>get_the_post_video_url( $post_id )</code></li>
|
393 |
<li><code>get_the_post_video_image_url( $post_id )</code></li>
|
394 |
<li><code>get_the_post_video_image( $post_id )</code></li>
|
395 |
</ul>
|
419 |
|
420 |
// PHP FUNCTIONS HELP TAB
|
421 |
$screen->add_help_tab( array(
|
422 |
+
'id' => 'fvp_help_functions',
|
423 |
'title' => 'Featured Video Plus: '.__('PHP-Functions','featured-video-plus'),
|
424 |
'content' => $this->help_functions
|
425 |
));
|
426 |
|
427 |
// SHORTCODE HELP TAB
|
428 |
$screen->add_help_tab( array(
|
429 |
+
'id' => 'fvp_help_shortcode',
|
430 |
'title' => 'Featured Video Plus: Shortcode',
|
431 |
'content' => $this->help_shortcode
|
432 |
));
|
452 |
}
|
453 |
|
454 |
}
|
|
php/upgrade.php
CHANGED
@@ -106,13 +106,18 @@ function featured_video_plus_upgrade() {
|
|
106 |
}
|
107 |
|
108 |
case '1.5':
|
109 |
-
|
|
|
|
|
|
|
|
|
|
|
110 |
|
111 |
|
112 |
// *************************************************************
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
}
|
117 |
|
118 |
$featured_video_plus_notices = new featured_video_plus_notices();
|
@@ -120,8 +125,6 @@ function featured_video_plus_upgrade() {
|
|
120 |
add_action('admin_notices', array( &$featured_video_plus_notices, $notice ) );
|
121 |
}
|
122 |
|
123 |
-
$options = $GLOBALS['featured_video_plus_backend']->featured_video_plus_notify($options, $options['out']);
|
124 |
-
|
125 |
if( $options != $options_org )
|
126 |
update_option( 'fvp-settings', $options );
|
127 |
|
@@ -147,6 +150,17 @@ class featured_video_plus_notices {
|
|
147 |
$this->pluginpage = 'http://wordpress.org/extend/plugins/featured-video-plus#plugin-title';
|
148 |
}
|
149 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
150 |
/**
|
151 |
* Upgrade notification 1.4 to current version
|
152 |
*
|
@@ -154,7 +168,7 @@ class featured_video_plus_notices {
|
|
154 |
*/
|
155 |
function upgrade_14() {
|
156 |
echo "\n" . '<div class="updated" id="fvp_activation_notification"><p>';
|
157 |
-
printf(__('Featured Video Plus was <strong>upgraded</strong>.', 'featured-video-plus').' '.__('%s <strong>ajax</strong>ifies the Featured Video box
|
158 |
echo "</p></div>\n";
|
159 |
}
|
160 |
|
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 |
|
117 |
// *************************************************************
|
118 |
+
default:
|
119 |
+
$options['version'] = FVP_VERSION;
|
120 |
+
break;
|
121 |
}
|
122 |
|
123 |
$featured_video_plus_notices = new featured_video_plus_notices();
|
125 |
add_action('admin_notices', array( &$featured_video_plus_notices, $notice ) );
|
126 |
}
|
127 |
|
|
|
|
|
128 |
if( $options != $options_org )
|
129 |
update_option( 'fvp-settings', $options );
|
130 |
|
150 |
$this->pluginpage = 'http://wordpress.org/extend/plugins/featured-video-plus#plugin-title';
|
151 |
}
|
152 |
|
153 |
+
/**
|
154 |
+
* Upgrade notification 1.4 to current version
|
155 |
+
*
|
156 |
+
* @since 1.5
|
157 |
+
*/
|
158 |
+
function upgrade_15() {
|
159 |
+
echo "\n" . '<div class="updated" id="fvp_activation_notification"><p>';
|
160 |
+
printf(__('Featured Video Plus was <strong>upgraded</strong>.', 'featured-video-plus').' '.__('%s brings new options for YouTube and local videos, fixes a whole bunch of glitches and introduces a new PHP-function.', 'featured-video-plus').' '.__('If you like the plugin, please %srate it%s.', 'featured-video-plus'), '<strong>Version '.FVP_VERSION.'</strong>', '<a href="'.$this->pluginpage.'" target="_blank">', '</a>');
|
161 |
+
echo "</p></div>\n";
|
162 |
+
}
|
163 |
+
|
164 |
/**
|
165 |
* Upgrade notification 1.4 to current version
|
166 |
*
|
168 |
*/
|
169 |
function upgrade_14() {
|
170 |
echo "\n" . '<div class="updated" id="fvp_activation_notification"><p>';
|
171 |
+
printf(__('Featured Video Plus was <strong>upgraded</strong>.', 'featured-video-plus').' '.__('%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').' '.__('If you like the plugin, please %srate it%s.', 'featured-video-plus'), '<strong>Version '.FVP_VERSION.'</strong>', '<a href="'.$this->pluginpage.'" target="_blank">', '</a>');
|
172 |
echo "</p></div>\n";
|
173 |
}
|
174 |
|
readme.txt
CHANGED
@@ -1,16 +1,16 @@
|
|
1 |
=== Featured Video Plus ===
|
2 |
Contributors: a.hoereth
|
3 |
Plugin Name: Featured Video Plus
|
4 |
-
Plugin URI:
|
5 |
Tags: featured, post, video, image, thumbnail, html5, flash, youtube, vimeo, dailymotion, mp4, webm, ogg, embed, ajax
|
6 |
Author: Alexander Höreth
|
7 |
-
Author URI: http://
|
8 |
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=a%2ehoereth%40gmail%2ecom
|
9 |
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.5.1
|
13 |
-
Stable tag: 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 |
|
@@ -37,6 +37,7 @@ The plugin adds customization options to your Media Settings. Beside aesthetic i
|
|
37 |
the_post_video( $size )
|
38 |
has_post_video( $post_id )
|
39 |
get_the_post_video( $post_id, $size )
|
|
|
40 |
get_the_post_video_image_url( $post_id )
|
41 |
get_the_post_video_image( $post_id )
|
42 |
|
@@ -59,6 +60,15 @@ The plugin is ready to go. Now edit your posts and add video links to the "Featu
|
|
59 |
|
60 |
== Changelog ==
|
61 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
62 |
= 1.5.1: 2013-03-27 =
|
63 |
* Fixed Featured Video box on new-post.php
|
64 |
* Enhanced Featured Image ajax behavior
|
@@ -101,6 +111,9 @@ The plugin is ready to go. Now edit your posts and add video links to the "Featu
|
|
101 |
|
102 |
== Upgrade Notice ==
|
103 |
|
|
|
|
|
|
|
104 |
= 1.5 =
|
105 |
AJAX!
|
106 |
|
@@ -129,6 +142,13 @@ Feature Dailymotion Videos on your posts!
|
|
129 |
= After adding the URL and saving the post I do not get any video? =
|
130 |
Maybe the plugin does not recognize the URL. Take a look into the contextual help (button on the top right of the post edit screen). There is a list what the URLs should look like. If this does not help leave a note in the support forum.
|
131 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
132 |
= How do I use my local videos? =
|
133 |
Take a look into the contextual help (button on the top right of the post edit screen).
|
134 |
|
1 |
=== Featured Video Plus ===
|
2 |
Contributors: a.hoereth
|
3 |
Plugin Name: Featured Video Plus
|
4 |
+
Plugin URI: http://yrnxt.com/category/wordpress/featured-video-plus/
|
5 |
Tags: featured, post, video, image, thumbnail, html5, flash, youtube, vimeo, dailymotion, mp4, webm, ogg, embed, ajax
|
6 |
Author: Alexander Höreth
|
7 |
+
Author URI: http://yrnxt.com/
|
8 |
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=a%2ehoereth%40gmail%2ecom
|
9 |
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.5.1
|
13 |
+
Stable tag: 1.6
|
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 |
|
37 |
the_post_video( $size )
|
38 |
has_post_video( $post_id )
|
39 |
get_the_post_video( $post_id, $size )
|
40 |
+
get_the_post_video_url( $post_id )
|
41 |
get_the_post_video_image_url( $post_id )
|
42 |
get_the_post_video_image( $post_id )
|
43 |
|
60 |
|
61 |
== Changelog ==
|
62 |
|
63 |
+
= 1.6: 2013-04-16 =
|
64 |
+
* Added `get_the_post_video_url($post_id)` PHP-Function
|
65 |
+
* Added YouTube `enablejsapi` parameter with `playerapiid` (`fvpid + $post_id`) and iframe id ([*](http://wordpress.org/support/topic/need-filter-for-iframe-and-embed-code-manipulation)
|
66 |
+
* Added a filter for `get_the_post_video`: `get_the_post_video_filter` ([*](http://wordpress.org/support/topic/need-filter-for-iframe-and-embed-code-manipulation)
|
67 |
+
* Added option for using the featured image as video thumbnail for local videos
|
68 |
+
* Fixed local videoJS ([*](http://wordpress.org/support/topic/how-to-style-the-player-play-button-pause-button-etc))
|
69 |
+
* Fixed auto width and height for the Dailymotion and videoJS players
|
70 |
+
* Fixed YouTube videos for which the plugin cannot access the YouTube API ([*](http://wordpress.org/support/topic/link-appearing-red-in-featured-video-section))
|
71 |
+
|
72 |
= 1.5.1: 2013-03-27 =
|
73 |
* Fixed Featured Video box on new-post.php
|
74 |
* Enhanced Featured Image ajax behavior
|
111 |
|
112 |
== Upgrade Notice ==
|
113 |
|
114 |
+
= 1.6 =
|
115 |
+
Smoothness
|
116 |
+
|
117 |
= 1.5 =
|
118 |
AJAX!
|
119 |
|
142 |
= After adding the URL and saving the post I do not get any video? =
|
143 |
Maybe the plugin does not recognize the URL. Take a look into the contextual help (button on the top right of the post edit screen). There is a list what the URLs should look like. If this does not help leave a note in the support forum.
|
144 |
|
145 |
+
= The input box has a red background - but the video works just fine. Whats going on? =
|
146 |
+
With every video you insert into the meta box the plugin tries to access the API of the
|
147 |
+
according video provider to grab information about the video and pull an image. When this API
|
148 |
+
access fails the input box gets a red background. When for example the server you are using is
|
149 |
+
located in Germany it cannot access the YouTube API for videos blocked in this country - still
|
150 |
+
you and your visitors might be able to watch the videos as normal. The plugin cannot test for this.
|
151 |
+
|
152 |
= How do I use my local videos? =
|
153 |
Take a look into the contextual help (button on the top right of the post edit screen).
|
154 |
|