Version Description
- First commit
Download this release
Release Info
Developer | naa986 |
Plugin | Easy Video Player |
Version | 1.0.1 |
Comparing to | |
See all releases |
Version 1.0.1
- easy-video-player.php +129 -0
- lib/all-skins.css +475 -0
- lib/flowplayer.js +2222 -0
- lib/flowplayer.swf +0 -0
- lib/functional.css +158 -0
- lib/img/Thumbs.db +0 -0
- lib/img/black.png +0 -0
- lib/img/black@x2.png +0 -0
- lib/img/play_black.png +0 -0
- lib/img/play_black@x2.png +0 -0
- lib/img/play_white.png +0 -0
- lib/img/play_white@x2.png +0 -0
- lib/img/playful_black.png +0 -0
- lib/img/playful_black@x2.png +0 -0
- lib/img/playful_white.png +0 -0
- lib/img/playful_white@x2.png +0 -0
- lib/img/white.png +0 -0
- lib/img/white@x2.png +0 -0
- lib/minimalist.css +158 -0
- lib/playful.css +159 -0
- readme.txt +65 -0
easy-video-player.php
ADDED
@@ -0,0 +1,129 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
Plugin Name: Easy Video Player
|
4 |
+
Version: 1.0.1
|
5 |
+
Plugin URI: http://easywpguide.wordpress.com/?p=25
|
6 |
+
Author: naa986
|
7 |
+
Author URI: http://easywpguide.wordpress.com/
|
8 |
+
Description: Easily embed videos into your WordPress blog
|
9 |
+
*/
|
10 |
+
|
11 |
+
if(!defined('ABSPATH')) exit;
|
12 |
+
if(!class_exists('EASY_VIDEO_PLAYER'))
|
13 |
+
{
|
14 |
+
class EASY_VIDEO_PLAYER
|
15 |
+
{
|
16 |
+
var $plugin_version = '1.0.1';
|
17 |
+
function __construct()
|
18 |
+
{
|
19 |
+
define('EASY_VIDEO_PLAYER_VERSION', $this->plugin_version);
|
20 |
+
$this->plugin_includes();
|
21 |
+
}
|
22 |
+
function plugin_includes()
|
23 |
+
{
|
24 |
+
if(is_admin( ) )
|
25 |
+
{
|
26 |
+
add_filter('plugin_action_links', array(&$this,'easy_video_player_plugin_action_links'), 10, 2 );
|
27 |
+
}
|
28 |
+
add_action('wp_enqueue_scripts', 'easy_video_player_enqueue_scripts');
|
29 |
+
add_action('admin_menu', array( &$this, 'easy_video_player_add_options_menu' ));
|
30 |
+
add_shortcode('evp_embed_video','evp_embed_video_handler');
|
31 |
+
}
|
32 |
+
function plugin_url()
|
33 |
+
{
|
34 |
+
if($this->plugin_url) return $this->plugin_url;
|
35 |
+
return $this->plugin_url = plugins_url( basename( plugin_dir_path(__FILE__) ), basename( __FILE__ ) );
|
36 |
+
}
|
37 |
+
function easy_video_player_plugin_action_links($links, $file)
|
38 |
+
{
|
39 |
+
if ( $file == plugin_basename( dirname( __FILE__ ) . '/easy-video-player.php' ) )
|
40 |
+
{
|
41 |
+
$links[] = '<a href="options-general.php?page=easy-video-player-settings">Settings</a>';
|
42 |
+
}
|
43 |
+
return $links;
|
44 |
+
}
|
45 |
+
|
46 |
+
function easy_video_player_add_options_menu()
|
47 |
+
{
|
48 |
+
if(is_admin())
|
49 |
+
{
|
50 |
+
add_options_page('Easy Video Player Settings', 'Easy Video Player', 'manage_options', 'easy-video-player-settings', array(&$this, 'easy_video_player_options_page'));
|
51 |
+
}
|
52 |
+
add_action('admin_init', array(&$this, 'easy_video_player_add_settings'));
|
53 |
+
}
|
54 |
+
function easy_video_player_add_settings()
|
55 |
+
{
|
56 |
+
register_setting('easy-video-player-settings-group', 'evp_enable_jquery');
|
57 |
+
}
|
58 |
+
function easy_video_player_options_page()
|
59 |
+
{
|
60 |
+
|
61 |
+
?>
|
62 |
+
<div class="wrap">
|
63 |
+
<div id="poststuff"><div id="post-body">
|
64 |
+
|
65 |
+
<h2>Easy Video Player - v<?php echo $this->plugin_version;?></h2>
|
66 |
+
<div class="postbox">
|
67 |
+
<h3><label for="title">Setup Guide</label></h3>
|
68 |
+
<div class="inside">
|
69 |
+
<p>For detailed documentation please visit the plugin homepage <a href="http://easywpguide.wordpress.com/?p=25" target="_blank">here</a></p>
|
70 |
+
</div></div>
|
71 |
+
<div class="postbox">
|
72 |
+
<h3><label for="title">General Settings</label></h3>
|
73 |
+
<div class="inside">
|
74 |
+
<form method="post" action="options.php">
|
75 |
+
<?php settings_fields('easy-video-player-settings-group'); ?>
|
76 |
+
<table class="form-table">
|
77 |
+
<tr valign="top">
|
78 |
+
<th scope="row">Enable jQuery</th>
|
79 |
+
<td><input type="checkbox" id="evp_enable_jquery" name="evp_enable_jquery" value="1" <?php echo checked(1, get_option('evp_enable_jquery'), false) ?> />
|
80 |
+
<p><i>By default this option should always be checked.</i></p>
|
81 |
+
</td>
|
82 |
+
</tr>
|
83 |
+
</table>
|
84 |
+
|
85 |
+
<p class="submit">
|
86 |
+
<input type="submit" class="button-primary" value="<?php _e('Save Changes') ?>" />
|
87 |
+
</p>
|
88 |
+
</form>
|
89 |
+
</div></div>
|
90 |
+
|
91 |
+
</div></div>
|
92 |
+
</div>
|
93 |
+
<?php
|
94 |
+
}
|
95 |
+
}
|
96 |
+
$GLOBALS['easy_video_player'] = new EASY_VIDEO_PLAYER();
|
97 |
+
}
|
98 |
+
|
99 |
+
function easy_video_player_enqueue_scripts()
|
100 |
+
{
|
101 |
+
if (!is_admin())
|
102 |
+
{
|
103 |
+
$plugin_url = plugins_url('',__FILE__);
|
104 |
+
$enable_jquery = get_option('evp_enable_jquery');
|
105 |
+
if($enable_jquery)
|
106 |
+
{
|
107 |
+
wp_enqueue_script('jquery');
|
108 |
+
}
|
109 |
+
wp_register_script('flowplayer-js', $plugin_url.'/lib/flowplayer.js');
|
110 |
+
wp_enqueue_script('flowplayer-js');
|
111 |
+
wp_register_style('flowplayer-css', $plugin_url.'/lib/minimalist.css');
|
112 |
+
wp_enqueue_style('flowplayer-css');
|
113 |
+
}
|
114 |
+
}
|
115 |
+
|
116 |
+
function evp_embed_video_handler($atts)
|
117 |
+
{
|
118 |
+
extract(shortcode_atts(array(
|
119 |
+
'url' => '',
|
120 |
+
), $atts));
|
121 |
+
$output = <<<EOT
|
122 |
+
<div data-ratio="0.417" class="flowplayer">
|
123 |
+
<video>
|
124 |
+
<source type="video/mp4" src="$url"/>
|
125 |
+
</video>
|
126 |
+
</div>
|
127 |
+
EOT;
|
128 |
+
return $output;
|
129 |
+
}
|
lib/all-skins.css
ADDED
@@ -0,0 +1,475 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.minimalist{position:relative;width:100%;text-align:left;background-size:contain;background-repeat:no-repeat;background-position:center center;display:inline-block;}
|
2 |
+
.minimalist *{font-weight:inherit;font-family:inherit;font-style:inherit;text-decoration:inherit;font-size:100%;padding:0;border:0;margin:0;list-style-type:none}
|
3 |
+
.minimalist a:focus{outline:0}
|
4 |
+
.minimalist video{width:100%}
|
5 |
+
.minimalist.is-ipad video{-webkit-transform:translateX(-2048px);}
|
6 |
+
.is-ready.minimalist.is-ipad video{-webkit-transform:translateX(0)}
|
7 |
+
.minimalist .fp-engine,.minimalist .fp-ui,.minimalist .fp-message{position:absolute;top:0;left:0;width:100%;height:100%;cursor:pointer;z-index:1}
|
8 |
+
.minimalist .fp-message{display:none;text-align:center;padding-top:5%;cursor:default;}
|
9 |
+
.minimalist .fp-message h2{font-size:120%;margin-bottom:1em}
|
10 |
+
.minimalist .fp-message p{color:#666;font-size:95%}
|
11 |
+
.minimalist .fp-controls{position:absolute;bottom:0;width:100%;}
|
12 |
+
.no-background.minimalist .fp-controls{background-color:transparent !important;background-image:-moz-linear-gradient(transparent,transparent) !important;background-image:-webkit-gradient(linear,0 0,0 100%,from(transparent),to(transparent)) !important}
|
13 |
+
.is-fullscreen.minimalist .fp-controls{bottom:3px}
|
14 |
+
.is-mouseover.minimalist .fp-controls{bottom:0}
|
15 |
+
.minimalist .fp-waiting{display:none;margin:19% auto;text-align:center;}
|
16 |
+
.minimalist .fp-waiting *{-webkit-box-shadow:0 0 5px #333;-moz-box-shadow:0 0 5px #333;box-shadow:0 0 5px #333}
|
17 |
+
.minimalist .fp-waiting em{width:1em;height:1em;-webkit-border-radius:1em;-moz-border-radius:1em;border-radius:1em;background-color:rgba(255,255,255,0.8);display:inline-block;-webkit-animation:pulse .6s infinite;-moz-animation:pulse .6s infinite;animation:pulse .6s infinite;margin:.3em;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);}
|
18 |
+
.minimalist .fp-waiting em:nth-child(1){-webkit-animation-delay:.3s;-moz-animation-delay:.3s;animation-delay:.3s}
|
19 |
+
.minimalist .fp-waiting em:nth-child(2){-webkit-animation-delay:.45s;-moz-animation-delay:.45s;animation-delay:.45s}
|
20 |
+
.minimalist .fp-waiting em:nth-child(3){-webkit-animation-delay:.6s;-moz-animation-delay:.6s;animation-delay:.6s}
|
21 |
+
.minimalist .fp-waiting p{color:#ccc;font-weight:bold}
|
22 |
+
.minimalist .fp-speed{font-size:30px;background-color:#333;background-color:rgba(51,51,51,0.8);color:#eee;margin:0 auto;text-align:center;width:120px;padding:.1em 0 0;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .5s;-moz-transition:opacity .5s;transition:opacity .5s;}
|
23 |
+
.minimalist .fp-speed.fp-hilite{opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
24 |
+
.minimalist .fp-help{position:absolute;top:0;left:-9999em;z-index:100;background-color:#333;background-color:rgba(51,51,51,0.9);width:100%;height:100%;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .2s;-moz-transition:opacity .2s;transition:opacity .2s;text-align:center;}
|
25 |
+
.is-help.minimalist .fp-help{left:0;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
26 |
+
.minimalist .fp-help .fp-help-section{margin:3%}
|
27 |
+
.minimalist .fp-help .fp-help-basics{margin-top:6%}
|
28 |
+
.minimalist .fp-help p{color:#eee;margin:.5em 0;font-size:14px;line-height:1.5;display:inline-block;margin:1% 2%}
|
29 |
+
.minimalist .fp-help em{background:#eee;-webkit-border-radius:.3em;-moz-border-radius:.3em;border-radius:.3em;margin-right:.4em;padding:.3em .6em;color:#333}
|
30 |
+
.minimalist .fp-help small{font-size:90%;color:#aaa}
|
31 |
+
.minimalist .fp-help .fp-close{display:block}
|
32 |
+
@media (max-width: 600px){.minimalist .fp-help p{font-size:9px}
|
33 |
+
}.minimalist .fp-subtitle{position:absolute;bottom:40px;left:-99999em;z-index:10;text-align:center;width:100%;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .3s;-moz-transition:opacity .3s;transition:opacity .3s;}
|
34 |
+
.minimalist .fp-subtitle p{display:inline;background-color:#333;background-color:rgba(51,51,51,0.9);color:#eee;padding:.1em .4em;font-size:16px;line-height:1.6;}
|
35 |
+
.minimalist .fp-subtitle p:after{content:'';clear:both}
|
36 |
+
.minimalist .fp-subtitle.fp-active{left:0;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
37 |
+
.minimalist .fp-fullscreen,.minimalist .fp-unload,.minimalist .fp-mute,.minimalist .fp-embed,.minimalist .fp-close,.minimalist .fp-play{background-image:url(img/white.png);background-size:37px 300px;}
|
38 |
+
.color-light.minimalist .fp-fullscreen,.color-light.minimalist .fp-unload,.color-light.minimalist .fp-mute,.color-light.minimalist .fp-embed,.color-light.minimalist .fp-close,.color-light.minimalist .fp-play{background-image:url(img/black.png);}
|
39 |
+
@media (-webkit-min-device-pixel-ratio: 2){.color-light.minimalist .fp-fullscreen,.color-light.minimalist .fp-unload,.color-light.minimalist .fp-mute,.color-light.minimalist .fp-embed,.color-light.minimalist .fp-close,.color-light.minimalist .fp-play{background-image:url(img/black@x2.png)}
|
40 |
+
}@media (-webkit-min-device-pixel-ratio: 2){.minimalist .fp-fullscreen,.minimalist .fp-unload,.minimalist .fp-mute,.minimalist .fp-embed,.minimalist .fp-close,.minimalist .fp-play{background-image:url(img/white@x2.png)}
|
41 |
+
}.is-splash.minimalist .fp-ui,.is-paused.minimalist .fp-ui{background:url(img/play_white.png) center no-repeat;background-size:12%;}
|
42 |
+
@media (-webkit-min-device-pixel-ratio: 2){.is-splash.minimalist .fp-ui,.is-paused.minimalist .fp-ui{background:url(img/play_white@x2.png) center no-repeat;background-size:12%}
|
43 |
+
}.color-light.is-splash.minimalist .fp-ui,.color-light.is-paused.minimalist .fp-ui{background-image:url(img/play_black.png)}
|
44 |
+
@media (-webkit-min-device-pixel-ratio: 2){.color-light.is-splash.minimalist .fp-ui,.color-light.is-paused.minimalist .fp-ui{background-image:url(img/play_black@x2.png)}
|
45 |
+
}.is-fullscreen.minimalist .fp-ui{background-size:auto}
|
46 |
+
.is-seeking.minimalist .fp-ui,.is-loading.minimalist .fp-ui{background-image:none}
|
47 |
+
.minimalist .fp-logo{position:absolute;top:auto;left:15px;bottom:30px;cursor:pointer;display:none;z-index:100;}
|
48 |
+
.minimalist .fp-logo img{width:100%}
|
49 |
+
.is-embedded.minimalist .fp-logo{display:block}
|
50 |
+
.fixed-controls.minimalist .fp-logo{bottom:15px}
|
51 |
+
.minimalist .fp-fullscreen,.minimalist .fp-unload,.minimalist .fp-close{position:absolute;top:5px;left:auto;right:5px;display:block;width:30px;height:23px;background-position:12px -197px;cursor:pointer}
|
52 |
+
.minimalist .fp-unload,.minimalist .fp-close{background-position:14px -175px;display:none}
|
53 |
+
.minimalist .fp-play{display:none;width:27px;height:20px;background-position:9px -24px;position:absolute;bottom:0;left:0;}
|
54 |
+
.play-button.minimalist .fp-play{display:block}
|
55 |
+
.is-paused.minimalist .fp-play{background-position:9px 7px}
|
56 |
+
.minimalist.is-ready.is-closeable .fp-unload{display:block}
|
57 |
+
.minimalist.is-ready.is-closeable .fp-fullscreen{display:none}
|
58 |
+
.minimalist.is-fullscreen .fp-fullscreen{background-position:10px -217px;display:block !important}
|
59 |
+
.minimalist.is-fullscreen .fp-unload,.minimalist.is-fullscreen .fp-close{display:none !important}
|
60 |
+
.minimalist .fp-timeline{height:3px;position:relative;overflow:hidden;top:5px;height:10px;margin:0 150px 0 45px;}
|
61 |
+
.no-volume.minimalist .fp-timeline{margin-right:60px}
|
62 |
+
.no-mute.minimalist .fp-timeline{margin-right:45px}
|
63 |
+
.play-button.minimalist .fp-timeline{margin-left:67px}
|
64 |
+
.is-long.minimalist .fp-timeline{margin:0 180px 0 75px;}
|
65 |
+
.no-volume.is-long.minimalist .fp-timeline{margin-right:90px}
|
66 |
+
.no-mute.is-long.minimalist .fp-timeline{margin-right:75px}
|
67 |
+
.play-button.is-long.minimalist .fp-timeline{margin-left:97px}
|
68 |
+
.aside-time.minimalist .fp-timeline,.no-time.minimalist .fp-timeline{margin:0 110px 0 5px}
|
69 |
+
.aside-time.no-volume.minimalist .fp-timeline,.no-time.no-volume.minimalist .fp-timeline{margin-right:20px}
|
70 |
+
.aside-time.no-mute.minimalist .fp-timeline,.no-time.no-mute.minimalist .fp-timeline{margin-right:5px}
|
71 |
+
.play-button.no-time.minimalist .fp-timeline,.play-button.aside-time.minimalist .fp-timeline{margin-left:27px}
|
72 |
+
.minimalist .fp-buffer,.minimalist .fp-progress{position:absolute;top:0;left:auto;height:100%;cursor:col-resize}
|
73 |
+
.minimalist .fp-buffer{-webkit-transition:width .25s linear;-moz-transition:width .25s linear;transition:width .25s linear}
|
74 |
+
.minimalist .fp-volume{position:absolute;top:7.5px;right:5px}
|
75 |
+
.minimalist .fp-mute{width:10px;height:15px;float:left;position:relative;top:-5px;left:;cursor:pointer;background-position:-2px -99px;}
|
76 |
+
.no-mute.minimalist .fp-mute{display:none}
|
77 |
+
.minimalist .fp-volumeslider{width:90px;height:5px;cursor:col-resize;float:left;}
|
78 |
+
.no-volume.minimalist .fp-volumeslider{display:none}
|
79 |
+
.minimalist .fp-volumelevel{height:100%}
|
80 |
+
.minimalist .fp-time{text-shadow:0 0 1px #000;font-size:12px;font-weight:bold;color:#fff;width:100%;}
|
81 |
+
.minimalist .fp-time.is-inverted .fp-duration{display:none}
|
82 |
+
.minimalist .fp-time.is-inverted .fp-remaining{display:inline}
|
83 |
+
.minimalist .fp-time em{width:35px;height:10px;line-height:10px;text-align:center;position:absolute;bottom:5px}
|
84 |
+
.no-time.minimalist .fp-time{display:none}
|
85 |
+
.is-long.minimalist .fp-time em{width:65px}
|
86 |
+
.minimalist .fp-elapsed{left:5px;}
|
87 |
+
.play-button.minimalist .fp-elapsed{left:27px}
|
88 |
+
.minimalist .fp-remaining,.minimalist .fp-duration{right:110px;color:#eee;}
|
89 |
+
.no-volume.minimalist .fp-remaining,.no-volume.minimalist .fp-duration{right:20px}
|
90 |
+
.no-mute.minimalist .fp-remaining,.no-mute.minimalist .fp-duration{right:5px}
|
91 |
+
.minimalist .fp-remaining{display:none}
|
92 |
+
.minimalist.color-light .fp-time{color:#222;text-shadow:0 0 1px #fff}
|
93 |
+
.minimalist.color-light .fp-remaining,.minimalist.color-light .fp-duration{color:#666}
|
94 |
+
.minimalist.aside-time .fp-time{position:absolute;top:5px;left:5px;bottom:auto !important;width:85px;}
|
95 |
+
.minimalist.aside-time .fp-time strong,.minimalist.aside-time .fp-time em{position:static}
|
96 |
+
.minimalist.aside-time .fp-time .fp-elapsed{margin-right:5px}
|
97 |
+
.minimalist.is-long.aside-time .fp-time{width:130px}
|
98 |
+
.minimalist.is-splash,.minimalist.is-poster{cursor:pointer;}
|
99 |
+
.minimalist.is-splash .fp-controls,.minimalist.is-poster .fp-controls,.minimalist.is-splash .fp-fullscreen,.minimalist.is-poster .fp-fullscreen,.minimalist.is-splash .fp-unload,.minimalist.is-poster .fp-unload,.minimalist.is-splash .fp-time,.minimalist.is-poster .fp-time,.minimalist.is-splash .fp-embed,.minimalist.is-poster .fp-embed{display:none !important}
|
100 |
+
.minimalist.is-poster .fp-engine{top:-9999em}
|
101 |
+
.minimalist.is-loading .fp-waiting{display:block}
|
102 |
+
.minimalist.is-loading .fp-controls,.minimalist.is-loading .fp-time{display:none}
|
103 |
+
.minimalist.is-loading .fp-ui{background-position:-9999em}
|
104 |
+
.minimalist.is-seeking .fp-waiting{display:block}
|
105 |
+
.minimalist.is-fullscreen{position:fixed !important;top:0 !important;left:0 !important;border:0 !important;margin:0 !important;width:100% !important;height:100% !important;max-width:100% !important;z-index:99999 !important;-webkit-box-shadow:0 !important;-moz-box-shadow:0 !important;box-shadow:0 !important;background-image:none !important;background-color:#333}
|
106 |
+
.minimalist.is-error{border:1px solid #909090;background:#fdfdfd !important;}
|
107 |
+
.minimalist.is-error h2{font-weight:bold;font-size:large;margin-top:10%}
|
108 |
+
.minimalist.is-error .fp-message{display:block}
|
109 |
+
.minimalist.is-error object,.minimalist.is-error video,.minimalist.is-error .fp-controls,.minimalist.is-error .fp-time,.minimalist.is-error .fp-subtitle{display:none}
|
110 |
+
.minimalist.is-ready.is-muted .fp-mute{opacity:.5;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=50)}
|
111 |
+
.minimalist.is-mouseout .fp-controls{height:0;-webkit-transition:height .15s .3s;-moz-transition:height .15s .3s;transition:height .15s .3s}
|
112 |
+
.minimalist.is-mouseout .fp-timeline{margin:0 !important}
|
113 |
+
.minimalist.is-mouseout .fp-timeline{-webkit-transition:height .15s .3s,top .15s .3s,margin .15s .3s;-moz-transition:height .15s .3s,top .15s .3s,margin .15s .3s;transition:height .15s .3s,top .15s .3s,margin .15s .3s;height:4px;top:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}
|
114 |
+
.minimalist.is-mouseout .fp-fullscreen,.minimalist.is-mouseout .fp-unload,.minimalist.is-mouseout .fp-elapsed,.minimalist.is-mouseout .fp-remaining,.minimalist.is-mouseout .fp-duration,.minimalist.is-mouseout .fp-embed,.minimalist.is-mouseout .fp-volume,.minimalist.is-mouseout .fp-play{opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .15s .3s;-moz-transition:opacity .15s .3s;transition:opacity .15s .3s}
|
115 |
+
.minimalist.is-mouseover .fp-controls,.minimalist.fixed-controls .fp-controls{height:20px}
|
116 |
+
.minimalist.is-mouseover .fp-fullscreen,.minimalist.fixed-controls .fp-fullscreen,.minimalist.is-mouseover .fp-unload,.minimalist.fixed-controls .fp-unload,.minimalist.is-mouseover .fp-elapsed,.minimalist.fixed-controls .fp-elapsed,.minimalist.is-mouseover .fp-remaining,.minimalist.fixed-controls .fp-remaining,.minimalist.is-mouseover .fp-duration,.minimalist.fixed-controls .fp-duration,.minimalist.is-mouseover .fp-embed,.minimalist.fixed-controls .fp-embed,.minimalist.is-mouseover .fp-logo,.minimalist.fixed-controls .fp-logo,.minimalist.is-mouseover .fp-volume,.minimalist.fixed-controls .fp-volume,.minimalist.is-mouseover .fp-play,.minimalist.fixed-controls .fp-play{opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
117 |
+
.minimalist.fixed-controls .fp-volume{display:block}
|
118 |
+
.minimalist.fixed-controls .fp-controls{bottom:-20px;}
|
119 |
+
.is-fullscreen.minimalist.fixed-controls .fp-controls{bottom:0}
|
120 |
+
.minimalist.fixed-controls .fp-time em{bottom:-15px;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);}
|
121 |
+
.is-fullscreen.minimalist.fixed-controls .fp-time em{bottom:5px}
|
122 |
+
.minimalist.is-disabled .fp-progress{background-color:#999}
|
123 |
+
.minimalist .fp-embed{position:absolute;top:5px;left:5px;display:block;width:25px;height:20px;background-position:3px -237px}
|
124 |
+
.minimalist .fp-embed-code{position:absolute;display:none;top:10px;left:40px;background-color:#333;padding:3px 5px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 3px #ccc;-moz-box-shadow:0 0 3px #ccc;box-shadow:0 0 3px #ccc;font-size:12px;}
|
125 |
+
.minimalist .fp-embed-code:before{content:'';width:0;height:0;position:absolute;top:2px;left:-10px;border:5px solid transparent;border-right-color:#333}
|
126 |
+
.minimalist .fp-embed-code textarea{width:400px;height:16px;font-family:monaco,"courier new",verdana;color:#777;white-space:nowrap;resize:none;overflow:hidden;border:0;outline:0;background-color:transparent;color:#ccc}
|
127 |
+
.minimalist .fp-embed-code label{display:block;color:#999}
|
128 |
+
.minimalist.is-embedding .fp-embed,.minimalist.is-embedding .fp-embed-code{display:block;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
129 |
+
.minimalist.aside-time .fp-embed{left:85px}
|
130 |
+
.minimalist.aside-time .fp-embed-code{left:115px}
|
131 |
+
.minimalist.aside-time.is-embedding .fp-time{opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
132 |
+
.minimalist.is-long.aside-time .fp-embed{left:130px}
|
133 |
+
.minimalist.no-time .fp-embed{left:5px !important}
|
134 |
+
@-moz-keyframes pulse{0%{opacity:0}
|
135 |
+
100%{opacity:1}
|
136 |
+
}@-webkit-keyframes pulse{0%{opacity:0}
|
137 |
+
100%{opacity:1}
|
138 |
+
}@-o-keyframes pulse{0%{opacity:0}
|
139 |
+
100%{opacity:1}
|
140 |
+
}@-ms-keyframes pulse{0%{opacity:0}
|
141 |
+
100%{opacity:1}
|
142 |
+
}@keyframes pulse{0%{opacity:0}
|
143 |
+
100%{opacity:1}
|
144 |
+
}.minimalist .fp-controls{background-color:#333;background-color:rgba(51,51,51,0.6)}
|
145 |
+
.minimalist.fixed-controls .fp-controls{background-color:#333}
|
146 |
+
.minimalist .fp-timeline{background-color:#666}
|
147 |
+
.minimalist .fp-buffer{background-color:#eee}
|
148 |
+
.minimalist .fp-progress{background-color:#00a7c8}
|
149 |
+
.minimalist .fp-volumeslider{background-color:#000}
|
150 |
+
.minimalist .fp-volumelevel{background-color:#fff}
|
151 |
+
.minimalist .fp-play{height:24px}
|
152 |
+
.minimalist.color-light .fp-controls{background-color:rgba(255,255,255,0.6)}
|
153 |
+
.minimalist.color-light.fixed-controls .fp-controls{background-color:#fff}
|
154 |
+
.minimalist.color-light .fp-volumeslider{background-color:#ddd}
|
155 |
+
.minimalist.color-light .fp-volumelevel{background-color:#222}
|
156 |
+
.minimalist.color-alt .fp-progress{background-color:#fff}
|
157 |
+
.minimalist.color-alt .fp-buffer{background-color:#999}
|
158 |
+
.minimalist.color-alt2 .fp-progress{background-color:#900}
|
159 |
+
.functional{position:relative;width:100%;text-align:left;background-size:contain;background-repeat:no-repeat;background-position:center center;display:inline-block;}
|
160 |
+
.functional *{font-weight:inherit;font-family:inherit;font-style:inherit;text-decoration:inherit;font-size:100%;padding:0;border:0;margin:0;list-style-type:none}
|
161 |
+
.functional a:focus{outline:0}
|
162 |
+
.functional video{width:100%}
|
163 |
+
.functional.is-ipad video{-webkit-transform:translateX(-2048px);}
|
164 |
+
.is-ready.functional.is-ipad video{-webkit-transform:translateX(0)}
|
165 |
+
.functional .fp-engine,.functional .fp-ui,.functional .fp-message{position:absolute;top:0;left:0;width:100%;height:100%;cursor:pointer;z-index:1}
|
166 |
+
.functional .fp-message{display:none;text-align:center;padding-top:5%;cursor:default;}
|
167 |
+
.functional .fp-message h2{font-size:120%;margin-bottom:1em}
|
168 |
+
.functional .fp-message p{color:#666;font-size:95%}
|
169 |
+
.functional .fp-controls{position:absolute;bottom:0;width:100%;}
|
170 |
+
.no-background.functional .fp-controls{background-color:transparent !important;background-image:-moz-linear-gradient(transparent,transparent) !important;background-image:-webkit-gradient(linear,0 0,0 100%,from(transparent),to(transparent)) !important}
|
171 |
+
.is-fullscreen.functional .fp-controls{bottom:3px}
|
172 |
+
.is-mouseover.functional .fp-controls{bottom:0}
|
173 |
+
.functional .fp-waiting{display:none;margin:19% auto;text-align:center;}
|
174 |
+
.functional .fp-waiting *{-webkit-box-shadow:0 0 5px #333;-moz-box-shadow:0 0 5px #333;box-shadow:0 0 5px #333}
|
175 |
+
.functional .fp-waiting em{width:1em;height:1em;-webkit-border-radius:1em;-moz-border-radius:1em;border-radius:1em;background-color:rgba(255,255,255,0.8);display:inline-block;-webkit-animation:pulse .6s infinite;-moz-animation:pulse .6s infinite;animation:pulse .6s infinite;margin:.3em;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);}
|
176 |
+
.functional .fp-waiting em:nth-child(1){-webkit-animation-delay:.3s;-moz-animation-delay:.3s;animation-delay:.3s}
|
177 |
+
.functional .fp-waiting em:nth-child(2){-webkit-animation-delay:.45s;-moz-animation-delay:.45s;animation-delay:.45s}
|
178 |
+
.functional .fp-waiting em:nth-child(3){-webkit-animation-delay:.6s;-moz-animation-delay:.6s;animation-delay:.6s}
|
179 |
+
.functional .fp-waiting p{color:#ccc;font-weight:bold}
|
180 |
+
.functional .fp-speed{font-size:30px;background-color:#333;background-color:rgba(51,51,51,0.8);color:#eee;margin:0 auto;text-align:center;width:120px;padding:.1em 0 0;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .5s;-moz-transition:opacity .5s;transition:opacity .5s;}
|
181 |
+
.functional .fp-speed.fp-hilite{opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
182 |
+
.functional .fp-help{position:absolute;top:0;left:-9999em;z-index:100;background-color:#333;background-color:rgba(51,51,51,0.9);width:100%;height:100%;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .2s;-moz-transition:opacity .2s;transition:opacity .2s;text-align:center;}
|
183 |
+
.is-help.functional .fp-help{left:0;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
184 |
+
.functional .fp-help .fp-help-section{margin:3%}
|
185 |
+
.functional .fp-help .fp-help-basics{margin-top:6%}
|
186 |
+
.functional .fp-help p{color:#eee;margin:.5em 0;font-size:14px;line-height:1.5;display:inline-block;margin:1% 2%}
|
187 |
+
.functional .fp-help em{background:#eee;-webkit-border-radius:.3em;-moz-border-radius:.3em;border-radius:.3em;margin-right:.4em;padding:.3em .6em;color:#333}
|
188 |
+
.functional .fp-help small{font-size:90%;color:#aaa}
|
189 |
+
.functional .fp-help .fp-close{display:block}
|
190 |
+
@media (max-width: 600px){.functional .fp-help p{font-size:9px}
|
191 |
+
}.functional .fp-subtitle{position:absolute;bottom:40px;left:-99999em;z-index:10;text-align:center;width:100%;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .3s;-moz-transition:opacity .3s;transition:opacity .3s;}
|
192 |
+
.functional .fp-subtitle p{display:inline;background-color:#333;background-color:rgba(51,51,51,0.9);color:#eee;padding:.1em .4em;font-size:16px;line-height:1.6;}
|
193 |
+
.functional .fp-subtitle p:after{content:'';clear:both}
|
194 |
+
.functional .fp-subtitle.fp-active{left:0;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
195 |
+
.functional .fp-fullscreen,.functional .fp-unload,.functional .fp-mute,.functional .fp-embed,.functional .fp-close,.functional .fp-play{background-image:url(img/white.png);background-size:37px 300px;}
|
196 |
+
.color-light.functional .fp-fullscreen,.color-light.functional .fp-unload,.color-light.functional .fp-mute,.color-light.functional .fp-embed,.color-light.functional .fp-close,.color-light.functional .fp-play{background-image:url(img/black.png);}
|
197 |
+
@media (-webkit-min-device-pixel-ratio: 2){.color-light.functional .fp-fullscreen,.color-light.functional .fp-unload,.color-light.functional .fp-mute,.color-light.functional .fp-embed,.color-light.functional .fp-close,.color-light.functional .fp-play{background-image:url(img/black@x2.png)}
|
198 |
+
}@media (-webkit-min-device-pixel-ratio: 2){.functional .fp-fullscreen,.functional .fp-unload,.functional .fp-mute,.functional .fp-embed,.functional .fp-close,.functional .fp-play{background-image:url(img/white@x2.png)}
|
199 |
+
}.is-splash.functional .fp-ui,.is-paused.functional .fp-ui{background:url(img/play_white.png) center no-repeat;background-size:12%;}
|
200 |
+
@media (-webkit-min-device-pixel-ratio: 2){.is-splash.functional .fp-ui,.is-paused.functional .fp-ui{background:url(img/play_white@x2.png) center no-repeat;background-size:12%}
|
201 |
+
}.color-light.is-splash.functional .fp-ui,.color-light.is-paused.functional .fp-ui{background-image:url(img/play_black.png)}
|
202 |
+
@media (-webkit-min-device-pixel-ratio: 2){.color-light.is-splash.functional .fp-ui,.color-light.is-paused.functional .fp-ui{background-image:url(img/play_black@x2.png)}
|
203 |
+
}.is-fullscreen.functional .fp-ui{background-size:auto}
|
204 |
+
.is-seeking.functional .fp-ui,.is-loading.functional .fp-ui{background-image:none}
|
205 |
+
.functional .fp-logo{position:absolute;top:auto;left:15px;bottom:40px;cursor:pointer;display:none;z-index:100;}
|
206 |
+
.functional .fp-logo img{width:100%}
|
207 |
+
.is-embedded.functional .fp-logo{display:block}
|
208 |
+
.fixed-controls.functional .fp-logo{bottom:15px}
|
209 |
+
.functional .fp-fullscreen,.functional .fp-unload,.functional .fp-close{position:absolute;top:10px;left:auto;right:10px;display:block;width:30px;height:23px;background-position:12px -197px;cursor:pointer}
|
210 |
+
.functional .fp-unload,.functional .fp-close{background-position:14px -175px;display:none}
|
211 |
+
.functional .fp-play{display:none;width:27px;height:30px;background-position:9px -24px;position:absolute;bottom:0;left:0;}
|
212 |
+
.play-button.functional .fp-play{display:block}
|
213 |
+
.is-paused.functional .fp-play{background-position:9px 7px}
|
214 |
+
.functional.is-ready.is-closeable .fp-unload{display:block}
|
215 |
+
.functional.is-ready.is-closeable .fp-fullscreen{display:none}
|
216 |
+
.functional.is-fullscreen .fp-fullscreen{background-position:10px -217px;display:block !important}
|
217 |
+
.functional.is-fullscreen .fp-unload,.functional.is-fullscreen .fp-close{display:none !important}
|
218 |
+
.functional .fp-timeline{height:3px;position:relative;overflow:hidden;top:10px;height:10px;margin:0 165px 0 55px;}
|
219 |
+
.no-volume.functional .fp-timeline{margin-right:75px}
|
220 |
+
.no-mute.functional .fp-timeline{margin-right:55px}
|
221 |
+
.play-button.functional .fp-timeline{margin-left:72px}
|
222 |
+
.is-long.functional .fp-timeline{margin:0 195px 0 85px;}
|
223 |
+
.no-volume.is-long.functional .fp-timeline{margin-right:105px}
|
224 |
+
.no-mute.is-long.functional .fp-timeline{margin-right:85px}
|
225 |
+
.play-button.is-long.functional .fp-timeline{margin-left:102px}
|
226 |
+
.aside-time.functional .fp-timeline,.no-time.functional .fp-timeline{margin:0 120px 0 10px}
|
227 |
+
.aside-time.no-volume.functional .fp-timeline,.no-time.no-volume.functional .fp-timeline{margin-right:30px}
|
228 |
+
.aside-time.no-mute.functional .fp-timeline,.no-time.no-mute.functional .fp-timeline{margin-right:10px}
|
229 |
+
.play-button.no-time.functional .fp-timeline,.play-button.aside-time.functional .fp-timeline{margin-left:27px}
|
230 |
+
.functional .fp-buffer,.functional .fp-progress{position:absolute;top:0;left:auto;height:100%;cursor:col-resize}
|
231 |
+
.functional .fp-buffer{-webkit-transition:width .25s linear;-moz-transition:width .25s linear;transition:width .25s linear}
|
232 |
+
.functional .fp-volume{position:absolute;top:11px;right:10px}
|
233 |
+
.functional .fp-mute{width:10px;height:15px;float:left;position:relative;top:-3.5px;left:;cursor:pointer;background-position:-2px -99px;}
|
234 |
+
.no-mute.functional .fp-mute{display:none}
|
235 |
+
.functional .fp-volumeslider{width:90px;height:8px;cursor:col-resize;float:left;}
|
236 |
+
.no-volume.functional .fp-volumeslider{display:none}
|
237 |
+
.functional .fp-volumelevel{height:100%}
|
238 |
+
.functional .fp-time{text-shadow:0 0 1px #000;font-size:12px;font-weight:bold;color:#fff;width:100%;}
|
239 |
+
.functional .fp-time.is-inverted .fp-duration{display:none}
|
240 |
+
.functional .fp-time.is-inverted .fp-remaining{display:inline}
|
241 |
+
.functional .fp-time em{width:35px;height:10px;line-height:10px;text-align:center;position:absolute;bottom:10px}
|
242 |
+
.no-time.functional .fp-time{display:none}
|
243 |
+
.is-long.functional .fp-time em{width:65px}
|
244 |
+
.functional .fp-elapsed{left:10px;}
|
245 |
+
.play-button.functional .fp-elapsed{left:27px}
|
246 |
+
.functional .fp-remaining,.functional .fp-duration{right:120px;color:#eee;}
|
247 |
+
.no-volume.functional .fp-remaining,.no-volume.functional .fp-duration{right:30px}
|
248 |
+
.no-mute.functional .fp-remaining,.no-mute.functional .fp-duration{right:10px}
|
249 |
+
.functional .fp-remaining{display:none}
|
250 |
+
.functional.color-light .fp-time{color:#222;text-shadow:0 0 1px #fff}
|
251 |
+
.functional.color-light .fp-remaining,.functional.color-light .fp-duration{color:#666}
|
252 |
+
.functional.aside-time .fp-time{position:absolute;top:10px;left:10px;bottom:auto !important;width:100px;}
|
253 |
+
.functional.aside-time .fp-time strong,.functional.aside-time .fp-time em{position:static}
|
254 |
+
.functional.aside-time .fp-time .fp-elapsed{margin-right:10px}
|
255 |
+
.functional.is-long.aside-time .fp-time{width:130px}
|
256 |
+
.functional.is-splash,.functional.is-poster{cursor:pointer;}
|
257 |
+
.functional.is-splash .fp-controls,.functional.is-poster .fp-controls,.functional.is-splash .fp-fullscreen,.functional.is-poster .fp-fullscreen,.functional.is-splash .fp-unload,.functional.is-poster .fp-unload,.functional.is-splash .fp-time,.functional.is-poster .fp-time,.functional.is-splash .fp-embed,.functional.is-poster .fp-embed{display:none !important}
|
258 |
+
.functional.is-poster .fp-engine{top:-9999em}
|
259 |
+
.functional.is-loading .fp-waiting{display:block}
|
260 |
+
.functional.is-loading .fp-controls,.functional.is-loading .fp-time{display:none}
|
261 |
+
.functional.is-loading .fp-ui{background-position:-9999em}
|
262 |
+
.functional.is-seeking .fp-waiting{display:block}
|
263 |
+
.functional.is-fullscreen{position:fixed !important;top:0 !important;left:0 !important;border:0 !important;margin:0 !important;width:100% !important;height:100% !important;max-width:100% !important;z-index:99999 !important;-webkit-box-shadow:0 !important;-moz-box-shadow:0 !important;box-shadow:0 !important;background-image:none !important;background-color:#333}
|
264 |
+
.functional.is-error{border:1px solid #909090;background:#fdfdfd !important;}
|
265 |
+
.functional.is-error h2{font-weight:bold;font-size:large;margin-top:10%}
|
266 |
+
.functional.is-error .fp-message{display:block}
|
267 |
+
.functional.is-error object,.functional.is-error video,.functional.is-error .fp-controls,.functional.is-error .fp-time,.functional.is-error .fp-subtitle{display:none}
|
268 |
+
.functional.is-ready.is-muted .fp-mute{opacity:.5;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=50)}
|
269 |
+
.functional.is-mouseout .fp-controls{height:0;-webkit-transition:height .15s .3s;-moz-transition:height .15s .3s;transition:height .15s .3s}
|
270 |
+
.functional.is-mouseout .fp-timeline{margin:0 !important}
|
271 |
+
.functional.is-mouseout .fp-timeline{-webkit-transition:height .15s .3s,top .15s .3s,margin .15s .3s;-moz-transition:height .15s .3s,top .15s .3s,margin .15s .3s;transition:height .15s .3s,top .15s .3s,margin .15s .3s;height:4px;top:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}
|
272 |
+
.functional.is-mouseout .fp-fullscreen,.functional.is-mouseout .fp-unload,.functional.is-mouseout .fp-elapsed,.functional.is-mouseout .fp-remaining,.functional.is-mouseout .fp-duration,.functional.is-mouseout .fp-embed,.functional.is-mouseout .fp-volume,.functional.is-mouseout .fp-play{opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .15s .3s;-moz-transition:opacity .15s .3s;transition:opacity .15s .3s}
|
273 |
+
.functional.is-mouseover .fp-controls,.functional.fixed-controls .fp-controls{height:30px}
|
274 |
+
.functional.is-mouseover .fp-fullscreen,.functional.fixed-controls .fp-fullscreen,.functional.is-mouseover .fp-unload,.functional.fixed-controls .fp-unload,.functional.is-mouseover .fp-elapsed,.functional.fixed-controls .fp-elapsed,.functional.is-mouseover .fp-remaining,.functional.fixed-controls .fp-remaining,.functional.is-mouseover .fp-duration,.functional.fixed-controls .fp-duration,.functional.is-mouseover .fp-embed,.functional.fixed-controls .fp-embed,.functional.is-mouseover .fp-logo,.functional.fixed-controls .fp-logo,.functional.is-mouseover .fp-volume,.functional.fixed-controls .fp-volume,.functional.is-mouseover .fp-play,.functional.fixed-controls .fp-play{opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
275 |
+
.functional.fixed-controls .fp-volume{display:block}
|
276 |
+
.functional.fixed-controls .fp-controls{bottom:-30px;}
|
277 |
+
.is-fullscreen.functional.fixed-controls .fp-controls{bottom:0}
|
278 |
+
.functional.fixed-controls .fp-time em{bottom:-20px;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);}
|
279 |
+
.is-fullscreen.functional.fixed-controls .fp-time em{bottom:10px}
|
280 |
+
.functional.is-disabled .fp-progress{background-color:#999}
|
281 |
+
.functional .fp-embed{position:absolute;top:10px;left:10px;display:block;width:25px;height:20px;background-position:3px -237px}
|
282 |
+
.functional .fp-embed-code{position:absolute;display:none;top:10px;left:40px;background-color:#333;padding:3px 5px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 3px #ccc;-moz-box-shadow:0 0 3px #ccc;box-shadow:0 0 3px #ccc;font-size:12px;}
|
283 |
+
.functional .fp-embed-code:before{content:'';width:0;height:0;position:absolute;top:2px;left:-10px;border:5px solid transparent;border-right-color:#333}
|
284 |
+
.functional .fp-embed-code textarea{width:400px;height:16px;font-family:monaco,"courier new",verdana;color:#777;white-space:nowrap;resize:none;overflow:hidden;border:0;outline:0;background-color:transparent;color:#ccc}
|
285 |
+
.functional .fp-embed-code label{display:block;color:#999}
|
286 |
+
.functional.is-embedding .fp-embed,.functional.is-embedding .fp-embed-code{display:block;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
287 |
+
.functional.aside-time .fp-embed{left:100px}
|
288 |
+
.functional.aside-time .fp-embed-code{left:130px}
|
289 |
+
.functional.aside-time.is-embedding .fp-time{opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
290 |
+
.functional.is-long.aside-time .fp-embed{left:130px}
|
291 |
+
.functional.no-time .fp-embed{left:10px !important}
|
292 |
+
@-moz-keyframes pulse{0%{opacity:0}
|
293 |
+
100%{opacity:1}
|
294 |
+
}@-webkit-keyframes pulse{0%{opacity:0}
|
295 |
+
100%{opacity:1}
|
296 |
+
}@-o-keyframes pulse{0%{opacity:0}
|
297 |
+
100%{opacity:1}
|
298 |
+
}@-ms-keyframes pulse{0%{opacity:0}
|
299 |
+
100%{opacity:1}
|
300 |
+
}@keyframes pulse{0%{opacity:0}
|
301 |
+
100%{opacity:1}
|
302 |
+
}.functional .fp-controls{background-color:#111}
|
303 |
+
.functional .fp-timeline{background-color:#555}
|
304 |
+
.functional .fp-buffer{background-color:#eee}
|
305 |
+
.functional .fp-progress{background-color:#4da5d8}
|
306 |
+
.functional .fp-volumelevel{background-color:#fff}
|
307 |
+
.functional .fp-volumeslider{background-color:#555}
|
308 |
+
.functional .fp-timeline,.functional .fp-volumeslider{border:1px inset;border-color:rgba(0,0,0,0.2) rgba(17,17,17,0.05)}
|
309 |
+
.functional .fp-controls,.functional .fp-progress{background-image:-moz-linear-gradient(rgba(255,255,255,0.4),rgba(255,255,255,0.01));background-image:-webkit-gradient(linear,0 0,0 100%,from(rgba(255,255,255,0.4)),to(rgba(255,255,255,0.01)))}
|
310 |
+
.functional .fp-timeline,.functional .fp-buffer,.functional .fp-progress,.functional .fp-volumeslider,.functional .fp-volumelevel{-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}
|
311 |
+
.functional.color-light .fp-controls{background-color:#eee;background-image:-moz-linear-gradient(rgba(0,0,0,0.01),rgba(0,0,0,0.3));background-image:-webkit-gradient(linear,0 0,0 100%,from(rgba(0,0,0,0.01)),to(rgba(0,0,0,0.3)))}
|
312 |
+
.functional.color-light .fp-timeline,.functional.color-light .fp-volumeslider{border-color:#eee #ccc}
|
313 |
+
.functional.color-light .fp-timeline,.functional.color-light .fp-volumeslider{background-color:#ccc;font-size:10px}
|
314 |
+
.functional.color-alt .fp-progress{background-image:-moz-linear-gradient(#999,#111);background-image:-webkit-gradient(linear,0 0,0 100%,from(#999),to(#111))}
|
315 |
+
.functional.color-alt .fp-timeline,.functional.color-alt .fp-volumeslider{background-color:#111}
|
316 |
+
.functional.color-alt2 .fp-progress{background-color:#900}
|
317 |
+
.playful{position:relative;width:100%;text-align:left;background-size:contain;background-repeat:no-repeat;background-position:center center;display:inline-block;}
|
318 |
+
.playful *{font-weight:inherit;font-family:inherit;font-style:inherit;text-decoration:inherit;font-size:100%;padding:0;border:0;margin:0;list-style-type:none}
|
319 |
+
.playful a:focus{outline:0}
|
320 |
+
.playful video{width:100%}
|
321 |
+
.playful.is-ipad video{-webkit-transform:translateX(-2048px);}
|
322 |
+
.is-ready.playful.is-ipad video{-webkit-transform:translateX(0)}
|
323 |
+
.playful .fp-engine,.playful .fp-ui,.playful .fp-message{position:absolute;top:0;left:0;width:100%;height:100%;cursor:pointer;z-index:1}
|
324 |
+
.playful .fp-message{display:none;text-align:center;padding-top:5%;cursor:default;}
|
325 |
+
.playful .fp-message h2{font-size:120%;margin-bottom:1em}
|
326 |
+
.playful .fp-message p{color:#666;font-size:95%}
|
327 |
+
.playful .fp-controls{position:absolute;bottom:0;width:100%;}
|
328 |
+
.no-background.playful .fp-controls{background-color:transparent !important;background-image:-moz-linear-gradient(transparent,transparent) !important;background-image:-webkit-gradient(linear,0 0,0 100%,from(transparent),to(transparent)) !important}
|
329 |
+
.is-fullscreen.playful .fp-controls{bottom:3px}
|
330 |
+
.is-mouseover.playful .fp-controls{bottom:0}
|
331 |
+
.playful .fp-waiting{display:none;margin:19% auto;text-align:center;}
|
332 |
+
.playful .fp-waiting *{-webkit-box-shadow:0 0 5px #333;-moz-box-shadow:0 0 5px #333;box-shadow:0 0 5px #333}
|
333 |
+
.playful .fp-waiting em{width:1em;height:1em;-webkit-border-radius:1em;-moz-border-radius:1em;border-radius:1em;background-color:rgba(255,255,255,0.8);display:inline-block;-webkit-animation:pulse .6s infinite;-moz-animation:pulse .6s infinite;animation:pulse .6s infinite;margin:.3em;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);}
|
334 |
+
.playful .fp-waiting em:nth-child(1){-webkit-animation-delay:.3s;-moz-animation-delay:.3s;animation-delay:.3s}
|
335 |
+
.playful .fp-waiting em:nth-child(2){-webkit-animation-delay:.45s;-moz-animation-delay:.45s;animation-delay:.45s}
|
336 |
+
.playful .fp-waiting em:nth-child(3){-webkit-animation-delay:.6s;-moz-animation-delay:.6s;animation-delay:.6s}
|
337 |
+
.playful .fp-waiting p{color:#ccc;font-weight:bold}
|
338 |
+
.playful .fp-speed{font-size:30px;background-color:#333;background-color:rgba(51,51,51,0.8);color:#eee;margin:0 auto;text-align:center;width:120px;padding:.1em 0 0;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .5s;-moz-transition:opacity .5s;transition:opacity .5s;}
|
339 |
+
.playful .fp-speed.fp-hilite{opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
340 |
+
.playful .fp-help{position:absolute;top:0;left:-9999em;z-index:100;background-color:#333;background-color:rgba(51,51,51,0.9);width:100%;height:100%;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .2s;-moz-transition:opacity .2s;transition:opacity .2s;text-align:center;}
|
341 |
+
.is-help.playful .fp-help{left:0;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
342 |
+
.playful .fp-help .fp-help-section{margin:3%}
|
343 |
+
.playful .fp-help .fp-help-basics{margin-top:6%}
|
344 |
+
.playful .fp-help p{color:#eee;margin:.5em 0;font-size:14px;line-height:1.5;display:inline-block;margin:1% 2%}
|
345 |
+
.playful .fp-help em{background:#eee;-webkit-border-radius:.3em;-moz-border-radius:.3em;border-radius:.3em;margin-right:.4em;padding:.3em .6em;color:#333}
|
346 |
+
.playful .fp-help small{font-size:90%;color:#aaa}
|
347 |
+
.playful .fp-help .fp-close{display:block}
|
348 |
+
@media (max-width: 600px){.playful .fp-help p{font-size:9px}
|
349 |
+
}.playful .fp-subtitle{position:absolute;bottom:40px;left:-99999em;z-index:10;text-align:center;width:100%;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .3s;-moz-transition:opacity .3s;transition:opacity .3s;}
|
350 |
+
.playful .fp-subtitle p{display:inline;background-color:#333;background-color:rgba(51,51,51,0.9);color:#eee;padding:.1em .4em;font-size:16px;line-height:1.6;}
|
351 |
+
.playful .fp-subtitle p:after{content:'';clear:both}
|
352 |
+
.playful .fp-subtitle.fp-active{left:0;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
353 |
+
.playful .fp-fullscreen,.playful .fp-unload,.playful .fp-mute,.playful .fp-embed,.playful .fp-close,.playful .fp-play{background-image:url(img/playful_white.png);background-size:37px 300px;}
|
354 |
+
.color-light.playful .fp-fullscreen,.color-light.playful .fp-unload,.color-light.playful .fp-mute,.color-light.playful .fp-embed,.color-light.playful .fp-close,.color-light.playful .fp-play{background-image:url(img/playful_black.png);}
|
355 |
+
@media (-webkit-min-device-pixel-ratio: 2){.color-light.playful .fp-fullscreen,.color-light.playful .fp-unload,.color-light.playful .fp-mute,.color-light.playful .fp-embed,.color-light.playful .fp-close,.color-light.playful .fp-play{background-image:url(img/playful_black@x2.png)}
|
356 |
+
}@media (-webkit-min-device-pixel-ratio: 2){.playful .fp-fullscreen,.playful .fp-unload,.playful .fp-mute,.playful .fp-embed,.playful .fp-close,.playful .fp-play{background-image:url(img/playful_white@x2.png)}
|
357 |
+
}.is-splash.playful .fp-ui,.is-paused.playful .fp-ui{background:url(img/play_white.png) center no-repeat;background-size:12%;}
|
358 |
+
@media (-webkit-min-device-pixel-ratio: 2){.is-splash.playful .fp-ui,.is-paused.playful .fp-ui{background:url(img/play_white@x2.png) center no-repeat;background-size:12%}
|
359 |
+
}.color-light.is-splash.playful .fp-ui,.color-light.is-paused.playful .fp-ui{background-image:url(img/play_black.png)}
|
360 |
+
@media (-webkit-min-device-pixel-ratio: 2){.color-light.is-splash.playful .fp-ui,.color-light.is-paused.playful .fp-ui{background-image:url(img/play_black@x2.png)}
|
361 |
+
}.is-fullscreen.playful .fp-ui{background-size:auto}
|
362 |
+
.is-seeking.playful .fp-ui,.is-loading.playful .fp-ui{background-image:none}
|
363 |
+
.playful .fp-logo{position:absolute;top:auto;left:15px;bottom:45px;cursor:pointer;display:none;z-index:100;}
|
364 |
+
.playful .fp-logo img{width:100%}
|
365 |
+
.is-embedded.playful .fp-logo{display:block}
|
366 |
+
.fixed-controls.playful .fp-logo{bottom:15px}
|
367 |
+
.playful .fp-fullscreen,.playful .fp-unload,.playful .fp-close{position:absolute;top:12px;left:auto;right:12px;display:block;width:30px;height:23px;background-position:12px -197px;cursor:pointer}
|
368 |
+
.playful .fp-unload,.playful .fp-close{background-position:14px -175px;display:none}
|
369 |
+
.playful .fp-play{display:none;width:27px;height:35px;background-position:9px -24px;position:absolute;bottom:0;left:0;}
|
370 |
+
.play-button.playful .fp-play{display:block}
|
371 |
+
.is-paused.playful .fp-play{background-position:9px 7px}
|
372 |
+
.playful.is-ready.is-closeable .fp-unload{display:block}
|
373 |
+
.playful.is-ready.is-closeable .fp-fullscreen{display:none}
|
374 |
+
.playful.is-fullscreen .fp-fullscreen{background-position:10px -217px;display:block !important}
|
375 |
+
.playful.is-fullscreen .fp-unload,.playful.is-fullscreen .fp-close{display:none !important}
|
376 |
+
.playful .fp-timeline{height:3px;position:relative;overflow:hidden;top:12px;height:11px;margin:0 199px 0 59px;}
|
377 |
+
.no-volume.playful .fp-timeline{margin-right:109px}
|
378 |
+
.no-mute.playful .fp-timeline{margin-right:59px}
|
379 |
+
.play-button.playful .fp-timeline{margin-left:74px}
|
380 |
+
.is-long.playful .fp-timeline{margin:0 229px 0 89px;}
|
381 |
+
.no-volume.is-long.playful .fp-timeline{margin-right:139px}
|
382 |
+
.no-mute.is-long.playful .fp-timeline{margin-right:89px}
|
383 |
+
.play-button.is-long.playful .fp-timeline{margin-left:104px}
|
384 |
+
.aside-time.playful .fp-timeline,.no-time.playful .fp-timeline{margin:0 152px 0 12px}
|
385 |
+
.aside-time.no-volume.playful .fp-timeline,.no-time.no-volume.playful .fp-timeline{margin-right:62px}
|
386 |
+
.aside-time.no-mute.playful .fp-timeline,.no-time.no-mute.playful .fp-timeline{margin-right:12px}
|
387 |
+
.play-button.no-time.playful .fp-timeline,.play-button.aside-time.playful .fp-timeline{margin-left:27px}
|
388 |
+
.playful .fp-buffer,.playful .fp-progress{position:absolute;top:0;left:auto;height:100%;cursor:col-resize}
|
389 |
+
.playful .fp-buffer{-webkit-transition:width .25s linear;-moz-transition:width .25s linear;transition:width .25s linear}
|
390 |
+
.playful .fp-volume{position:absolute;top:12px;right:12px}
|
391 |
+
.playful .fp-mute{width:38px;height:20px;float:left;position:relative;top:-4.5px;left:;cursor:pointer;background-position:-2px -99px;}
|
392 |
+
.no-mute.playful .fp-mute{display:none}
|
393 |
+
.playful .fp-volumeslider{width:90px;height:11px;cursor:col-resize;float:left;}
|
394 |
+
.no-volume.playful .fp-volumeslider{display:none}
|
395 |
+
.playful .fp-volumelevel{height:100%}
|
396 |
+
.playful .fp-time{text-shadow:0 0 1px #000;font-size:12px;font-weight:bold;color:#fff;width:100%;}
|
397 |
+
.playful .fp-time.is-inverted .fp-duration{display:none}
|
398 |
+
.playful .fp-time.is-inverted .fp-remaining{display:inline}
|
399 |
+
.playful .fp-time em{width:35px;height:11px;line-height:11px;text-align:center;position:absolute;bottom:12px}
|
400 |
+
.no-time.playful .fp-time{display:none}
|
401 |
+
.is-long.playful .fp-time em{width:65px}
|
402 |
+
.playful .fp-elapsed{left:12px;}
|
403 |
+
.play-button.playful .fp-elapsed{left:27px}
|
404 |
+
.playful .fp-remaining,.playful .fp-duration{right:152px;color:#eee;}
|
405 |
+
.no-volume.playful .fp-remaining,.no-volume.playful .fp-duration{right:62px}
|
406 |
+
.no-mute.playful .fp-remaining,.no-mute.playful .fp-duration{right:12px}
|
407 |
+
.playful .fp-remaining{display:none}
|
408 |
+
.playful.color-light .fp-time{color:#222;text-shadow:0 0 1px #fff}
|
409 |
+
.playful.color-light .fp-remaining,.playful.color-light .fp-duration{color:#666}
|
410 |
+
.playful.aside-time .fp-time{position:absolute;top:12px;left:12px;bottom:auto !important;width:110px;}
|
411 |
+
.playful.aside-time .fp-time strong,.playful.aside-time .fp-time em{position:static}
|
412 |
+
.playful.aside-time .fp-time .fp-elapsed{margin-right:12px}
|
413 |
+
.playful.is-long.aside-time .fp-time{width:130px}
|
414 |
+
.playful.is-splash,.playful.is-poster{cursor:pointer;}
|
415 |
+
.playful.is-splash .fp-controls,.playful.is-poster .fp-controls,.playful.is-splash .fp-fullscreen,.playful.is-poster .fp-fullscreen,.playful.is-splash .fp-unload,.playful.is-poster .fp-unload,.playful.is-splash .fp-time,.playful.is-poster .fp-time,.playful.is-splash .fp-embed,.playful.is-poster .fp-embed{display:none !important}
|
416 |
+
.playful.is-poster .fp-engine{top:-9999em}
|
417 |
+
.playful.is-loading .fp-waiting{display:block}
|
418 |
+
.playful.is-loading .fp-controls,.playful.is-loading .fp-time{display:none}
|
419 |
+
.playful.is-loading .fp-ui{background-position:-9999em}
|
420 |
+
.playful.is-seeking .fp-waiting{display:block}
|
421 |
+
.playful.is-fullscreen{position:fixed !important;top:0 !important;left:0 !important;border:0 !important;margin:0 !important;width:100% !important;height:100% !important;max-width:100% !important;z-index:99999 !important;-webkit-box-shadow:0 !important;-moz-box-shadow:0 !important;box-shadow:0 !important;background-image:none !important;background-color:#333}
|
422 |
+
.playful.is-error{border:1px solid #909090;background:#fdfdfd !important;}
|
423 |
+
.playful.is-error h2{font-weight:bold;font-size:large;margin-top:10%}
|
424 |
+
.playful.is-error .fp-message{display:block}
|
425 |
+
.playful.is-error object,.playful.is-error video,.playful.is-error .fp-controls,.playful.is-error .fp-time,.playful.is-error .fp-subtitle{display:none}
|
426 |
+
.playful.is-ready.is-muted .fp-mute{opacity:.5;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=50)}
|
427 |
+
.playful.is-mouseout .fp-controls{height:0;-webkit-transition:height .15s .3s;-moz-transition:height .15s .3s;transition:height .15s .3s}
|
428 |
+
.playful.is-mouseout .fp-timeline{margin:0 !important}
|
429 |
+
.playful.is-mouseout .fp-timeline{-webkit-transition:height .15s .3s,top .15s .3s,margin .15s .3s;-moz-transition:height .15s .3s,top .15s .3s,margin .15s .3s;transition:height .15s .3s,top .15s .3s,margin .15s .3s;height:4px;top:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}
|
430 |
+
.playful.is-mouseout .fp-fullscreen,.playful.is-mouseout .fp-unload,.playful.is-mouseout .fp-elapsed,.playful.is-mouseout .fp-remaining,.playful.is-mouseout .fp-duration,.playful.is-mouseout .fp-embed,.playful.is-mouseout .fp-volume,.playful.is-mouseout .fp-play{opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .15s .3s;-moz-transition:opacity .15s .3s;transition:opacity .15s .3s}
|
431 |
+
.playful.is-mouseover .fp-controls,.playful.fixed-controls .fp-controls{height:35px}
|
432 |
+
.playful.is-mouseover .fp-fullscreen,.playful.fixed-controls .fp-fullscreen,.playful.is-mouseover .fp-unload,.playful.fixed-controls .fp-unload,.playful.is-mouseover .fp-elapsed,.playful.fixed-controls .fp-elapsed,.playful.is-mouseover .fp-remaining,.playful.fixed-controls .fp-remaining,.playful.is-mouseover .fp-duration,.playful.fixed-controls .fp-duration,.playful.is-mouseover .fp-embed,.playful.fixed-controls .fp-embed,.playful.is-mouseover .fp-logo,.playful.fixed-controls .fp-logo,.playful.is-mouseover .fp-volume,.playful.fixed-controls .fp-volume,.playful.is-mouseover .fp-play,.playful.fixed-controls .fp-play{opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
433 |
+
.playful.fixed-controls .fp-volume{display:block}
|
434 |
+
.playful.fixed-controls .fp-controls{bottom:-35px;}
|
435 |
+
.is-fullscreen.playful.fixed-controls .fp-controls{bottom:0}
|
436 |
+
.playful.fixed-controls .fp-time em{bottom:-23px;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);}
|
437 |
+
.is-fullscreen.playful.fixed-controls .fp-time em{bottom:12px}
|
438 |
+
.playful.is-disabled .fp-progress{background-color:#999}
|
439 |
+
.playful .fp-embed{position:absolute;top:12px;left:12px;display:block;width:25px;height:20px;background-position:3px -237px}
|
440 |
+
.playful .fp-embed-code{position:absolute;display:none;top:10px;left:40px;background-color:#333;padding:3px 5px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 3px #ccc;-moz-box-shadow:0 0 3px #ccc;box-shadow:0 0 3px #ccc;font-size:12px;}
|
441 |
+
.playful .fp-embed-code:before{content:'';width:0;height:0;position:absolute;top:2px;left:-10px;border:5px solid transparent;border-right-color:#333}
|
442 |
+
.playful .fp-embed-code textarea{width:400px;height:16px;font-family:monaco,"courier new",verdana;color:#777;white-space:nowrap;resize:none;overflow:hidden;border:0;outline:0;background-color:transparent;color:#ccc}
|
443 |
+
.playful .fp-embed-code label{display:block;color:#999}
|
444 |
+
.playful.is-embedding .fp-embed,.playful.is-embedding .fp-embed-code{display:block;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
445 |
+
.playful.aside-time .fp-embed{left:110px}
|
446 |
+
.playful.aside-time .fp-embed-code{left:140px}
|
447 |
+
.playful.aside-time.is-embedding .fp-time{opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
448 |
+
.playful.is-long.aside-time .fp-embed{left:130px}
|
449 |
+
.playful.no-time .fp-embed{left:12px !important}
|
450 |
+
@-moz-keyframes pulse{0%{opacity:0}
|
451 |
+
100%{opacity:1}
|
452 |
+
}@-webkit-keyframes pulse{0%{opacity:0}
|
453 |
+
100%{opacity:1}
|
454 |
+
}@-o-keyframes pulse{0%{opacity:0}
|
455 |
+
100%{opacity:1}
|
456 |
+
}@-ms-keyframes pulse{0%{opacity:0}
|
457 |
+
100%{opacity:1}
|
458 |
+
}@keyframes pulse{0%{opacity:0}
|
459 |
+
100%{opacity:1}
|
460 |
+
}.playful .fp-controls{background-color:#111}
|
461 |
+
.playful .fp-timeline,.playful .fp-volumeslider{background-color:#555;background-image:-moz-linear-gradient(rgba(255,255,255,0.01),rgba(255,255,255,0.3));background-image:-webkit-gradient(linear,0 0,0 100%,from(rgba(255,255,255,0.01)),to(rgba(255,255,255,0.3)))}
|
462 |
+
.playful .fp-buffer{background-color:#eee}
|
463 |
+
.playful .fp-progress{background-color:#008000}
|
464 |
+
.playful .fp-volumelevel{background-color:#fff}
|
465 |
+
.playful .fp-mute{display:block;width:38px;height:20px;background-position:0 -79px;}
|
466 |
+
.is-muted.playful .fp-mute{background-position:0 -109px;opacity:.85;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=85)}
|
467 |
+
.playful .fp-play{background-position:9px -20px;}
|
468 |
+
.is-paused.playful .fp-play{background-position:9px 11px}
|
469 |
+
.playful .fp-timeline,.playful .fp-volumeslider{border:1px inset;border-color:rgba(0,0,0,0.3) rgba(17,17,17,0.05)}
|
470 |
+
.playful .fp-controls,.playful .fp-progress{background-image:-moz-linear-gradient(rgba(255,255,255,0.3),rgba(255,255,255,0.01));background-image:-webkit-gradient(linear,0 0,0 100%,from(rgba(255,255,255,0.3)),to(rgba(255,255,255,0.01)))}
|
471 |
+
.playful .fp-timeline,.playful .fp-progress,.playful .fp-buffer,.playful .fp-volumeslider,.playful .fp-volumelevel{-webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px}
|
472 |
+
.playful.color-light .fp-controls{background-color:#eee;background-image:-moz-linear-gradient(rgba(0,0,0,0.01),rgba(0,0,0,0.3));background-image:-webkit-gradient(linear,0 0,0 100%,from(rgba(0,0,0,0.01)),to(rgba(0,0,0,0.3)))}
|
473 |
+
.playful.color-light .fp-timeline,.playful.color-light .fp-volumeslider{border-color:#eee #ccc}
|
474 |
+
.playful.color-alt .fp-progress,.playful.color-alt .fp-volumelevel{background-color:#111}
|
475 |
+
.playful.color-alt2 .fp-progress,.playful.color-alt2 .fp-volumelevel{background-color:#900}
|
lib/flowplayer.js
ADDED
@@ -0,0 +1,2222 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*!
|
2 |
+
|
3 |
+
Flowplayer v5.3.2 (Monday, 28. January 2013 10:02AM) | flowplayer.org/license
|
4 |
+
|
5 |
+
*/
|
6 |
+
!function($) {
|
7 |
+
|
8 |
+
/*
|
9 |
+
jQuery.browser for 1.9+
|
10 |
+
|
11 |
+
We all love feature detection but that's sometimes not enough.
|
12 |
+
|
13 |
+
@author Tero Piirainen
|
14 |
+
*/
|
15 |
+
!function($) {
|
16 |
+
|
17 |
+
if (!$.browser) {
|
18 |
+
|
19 |
+
var b = $.browser = {},
|
20 |
+
ua = navigator.userAgent.toLowerCase(),
|
21 |
+
match = /(chrome)[ \/]([\w.]+)/.exec(ua) ||
|
22 |
+
/(webkit)[ \/]([\w.]+)/.exec(ua) ||
|
23 |
+
/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) ||
|
24 |
+
/(msie) ([\w.]+)/.exec(ua) ||
|
25 |
+
ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) || [];
|
26 |
+
|
27 |
+
if (match[1]) {
|
28 |
+
b[match[1]] = true;
|
29 |
+
b.version = match[2] || "0";
|
30 |
+
}
|
31 |
+
|
32 |
+
}
|
33 |
+
|
34 |
+
}(jQuery);
|
35 |
+
// auto-install (any video tag with parent .flowplayer)
|
36 |
+
$(function() {
|
37 |
+
if (typeof $.fn.flowplayer == 'function') {
|
38 |
+
$("video").parent(".flowplayer").flowplayer();
|
39 |
+
}
|
40 |
+
});
|
41 |
+
|
42 |
+
var instances = [],
|
43 |
+
extensions = [],
|
44 |
+
UA = navigator.userAgent,
|
45 |
+
use_native = /Android/.test(UA) && /Firefox/.test(UA);
|
46 |
+
|
47 |
+
|
48 |
+
/* flowplayer() */
|
49 |
+
window.flowplayer = function(fn) {
|
50 |
+
return use_native ? 0 :
|
51 |
+
$.isFunction(fn) ? extensions.push(fn) :
|
52 |
+
typeof fn == 'number' || fn === undefined ? instances[fn || 0] :
|
53 |
+
$(fn).data("flowplayer");
|
54 |
+
};
|
55 |
+
|
56 |
+
|
57 |
+
$.extend(flowplayer, {
|
58 |
+
|
59 |
+
version: '5.3.2',
|
60 |
+
|
61 |
+
engine: {},
|
62 |
+
|
63 |
+
conf: {},
|
64 |
+
|
65 |
+
support: {},
|
66 |
+
|
67 |
+
defaults: {
|
68 |
+
|
69 |
+
debug: false,
|
70 |
+
|
71 |
+
// true = forced playback
|
72 |
+
disabled: false,
|
73 |
+
|
74 |
+
// first engine to try
|
75 |
+
engine: 'html5',
|
76 |
+
|
77 |
+
fullscreen: window == window.top,
|
78 |
+
|
79 |
+
// keyboard shortcuts
|
80 |
+
keyboard: true,
|
81 |
+
|
82 |
+
// default aspect ratio
|
83 |
+
ratio: 9 / 16,
|
84 |
+
|
85 |
+
// scale flash object to video's aspect ratio in normal mode?
|
86 |
+
flashfit: false,
|
87 |
+
|
88 |
+
rtmp: 0,
|
89 |
+
|
90 |
+
splash: false,
|
91 |
+
|
92 |
+
swf: "http://releases.flowplayer.org/5.3.2/flowplayer.swf",
|
93 |
+
|
94 |
+
speeds: [0.25, 0.5, 1, 1.5, 2],
|
95 |
+
|
96 |
+
tooltip: true,
|
97 |
+
|
98 |
+
// initial volume level
|
99 |
+
volume: 1,
|
100 |
+
|
101 |
+
// http://www.whatwg.org/specs/web-apps/current-work/multipage/the-video-element.html#error-codes
|
102 |
+
errors: [
|
103 |
+
|
104 |
+
// video exceptions
|
105 |
+
'',
|
106 |
+
'Video loading aborted',
|
107 |
+
'Network error',
|
108 |
+
'Video not properly encoded',
|
109 |
+
'Video file not found',
|
110 |
+
|
111 |
+
// player exceptions
|
112 |
+
'Unsupported video',
|
113 |
+
'Skin not found',
|
114 |
+
'SWF file not found',
|
115 |
+
'Subtitles not found',
|
116 |
+
'Invalid RTMP URL',
|
117 |
+
'Unsupported video format. Try installing Adobe Flash.'
|
118 |
+
],
|
119 |
+
errorUrls: ['','','','','','','','','','',
|
120 |
+
'http://get.adobe.com/flashplayer/'
|
121 |
+
]
|
122 |
+
|
123 |
+
}
|
124 |
+
|
125 |
+
});
|
126 |
+
|
127 |
+
// smartphones simply use native controls
|
128 |
+
if (use_native) {
|
129 |
+
return $(function() { $("video").attr("controls", "controls"); });
|
130 |
+
}
|
131 |
+
|
132 |
+
// keep track of players
|
133 |
+
var playerCount = 0;
|
134 |
+
|
135 |
+
// jQuery plugin
|
136 |
+
$.fn.flowplayer = function(opts, callback) {
|
137 |
+
|
138 |
+
if (typeof opts == 'string') opts = { swf: opts }
|
139 |
+
if ($.isFunction(opts)) { callback = opts; opts = {} }
|
140 |
+
|
141 |
+
return !opts && this.data("flowplayer") || this.each(function() {
|
142 |
+
|
143 |
+
// private variables
|
144 |
+
var root = $(this).addClass("is-loading"),
|
145 |
+
conf = $.extend({}, flowplayer.defaults, flowplayer.conf, opts, root.data()),
|
146 |
+
videoTag = $("video", root).addClass("fp-engine").removeAttr("controls"),
|
147 |
+
urlResolver = new URLResolver(videoTag),
|
148 |
+
storage = {},
|
149 |
+
lastSeekPosition,
|
150 |
+
engine;
|
151 |
+
|
152 |
+
root.data('fp-player_id', root.data('fp-player_id') || playerCount++);
|
153 |
+
|
154 |
+
try {
|
155 |
+
storage = window.localStorage || storage;
|
156 |
+
} catch(e) {}
|
157 |
+
|
158 |
+
/*** API ***/
|
159 |
+
var api = {
|
160 |
+
|
161 |
+
// properties
|
162 |
+
conf: conf,
|
163 |
+
currentSpeed: 1,
|
164 |
+
volumeLevel: storage.volume * 1 || conf.volume,
|
165 |
+
video: {},
|
166 |
+
|
167 |
+
// states
|
168 |
+
disabled: false,
|
169 |
+
finished: false,
|
170 |
+
loading: false,
|
171 |
+
muted: storage.muted == "true" || conf.muted,
|
172 |
+
paused: false,
|
173 |
+
playing: false,
|
174 |
+
ready: false,
|
175 |
+
splash: false,
|
176 |
+
|
177 |
+
// methods
|
178 |
+
load: function(video, callback) {
|
179 |
+
|
180 |
+
if (api.error || api.loading || api.disabled) return;
|
181 |
+
|
182 |
+
// resolve URL
|
183 |
+
video = urlResolver.resolve(video);
|
184 |
+
$.extend(video, engine.pick(video.sources));
|
185 |
+
|
186 |
+
if (video.src) {
|
187 |
+
var e = $.Event("load");
|
188 |
+
root.trigger(e, [api, video, engine]);
|
189 |
+
|
190 |
+
if (!e.isDefaultPrevented()) {
|
191 |
+
engine.load(video);
|
192 |
+
|
193 |
+
// callback
|
194 |
+
if ($.isFunction(video)) callback = video;
|
195 |
+
if (callback) root.one("ready", callback);
|
196 |
+
}
|
197 |
+
}
|
198 |
+
|
199 |
+
return api;
|
200 |
+
},
|
201 |
+
|
202 |
+
pause: function(fn) {
|
203 |
+
if (api.ready && !api.seeking && !api.disabled && !api.loading) {
|
204 |
+
engine.pause();
|
205 |
+
api.one("pause", fn);
|
206 |
+
}
|
207 |
+
return api;
|
208 |
+
},
|
209 |
+
|
210 |
+
resume: function() {
|
211 |
+
|
212 |
+
if (api.ready && api.paused && !api.disabled) {
|
213 |
+
engine.resume();
|
214 |
+
|
215 |
+
// Firefox (+others?) does not fire "resume" after finish
|
216 |
+
if (api.finished) {
|
217 |
+
api.trigger("resume");
|
218 |
+
api.finished = false;
|
219 |
+
}
|
220 |
+
}
|
221 |
+
|
222 |
+
return api;
|
223 |
+
},
|
224 |
+
|
225 |
+
toggle: function() {
|
226 |
+
return api.ready ? api.paused ? api.resume() : api.pause() : api.load();
|
227 |
+
},
|
228 |
+
|
229 |
+
/*
|
230 |
+
seek(1.4) -> 1.4s time
|
231 |
+
seek(true) -> 10% forward
|
232 |
+
seek(false) -> 10% backward
|
233 |
+
*/
|
234 |
+
seek: function(time, callback) {
|
235 |
+
if (api.ready) {
|
236 |
+
|
237 |
+
if (typeof time == "boolean") {
|
238 |
+
var delta = api.video.duration * 0.1;
|
239 |
+
time = api.video.time + (time ? delta : -delta);
|
240 |
+
}
|
241 |
+
|
242 |
+
time = lastSeekPosition = Math.min(Math.max(time, 0), api.video.duration);
|
243 |
+
engine.seek(time);
|
244 |
+
if ($.isFunction(callback)) root.one("seek", callback);
|
245 |
+
}
|
246 |
+
return api;
|
247 |
+
},
|
248 |
+
|
249 |
+
/*
|
250 |
+
seekTo(1) -> 10%
|
251 |
+
seekTo(2) -> 20%
|
252 |
+
seekTo(3) -> 30%
|
253 |
+
...
|
254 |
+
seekTo() -> last position
|
255 |
+
*/
|
256 |
+
seekTo: function(position, fn) {
|
257 |
+
var time = position === undefined ? lastSeekPosition : api.video.duration * 0.1 * position;
|
258 |
+
return api.seek(time, fn);
|
259 |
+
},
|
260 |
+
|
261 |
+
mute: function(flag) {
|
262 |
+
if (flag == undefined) flag = !api.muted;
|
263 |
+
storage.muted = api.muted = flag;
|
264 |
+
api.volume(flag ? 0 : storage.volume);
|
265 |
+
api.trigger("mute", flag);
|
266 |
+
},
|
267 |
+
|
268 |
+
volume: function(level) {
|
269 |
+
if (api.ready) {
|
270 |
+
level = Math.min(Math.max(level, 0), 1);
|
271 |
+
storage.volume = level;
|
272 |
+
engine.volume(level);
|
273 |
+
}
|
274 |
+
|
275 |
+
return api;
|
276 |
+
},
|
277 |
+
|
278 |
+
speed: function(val, callback) {
|
279 |
+
|
280 |
+
if (api.ready) {
|
281 |
+
|
282 |
+
// increase / decrease
|
283 |
+
if (typeof val == "boolean") {
|
284 |
+
val = conf.speeds[$.inArray(api.currentSpeed, conf.speeds) + (val ? 1 : -1)] || api.currentSpeed;
|
285 |
+
}
|
286 |
+
|
287 |
+
engine.speed(val);
|
288 |
+
if (callback) root.one("speed", callback);
|
289 |
+
}
|
290 |
+
|
291 |
+
return api;
|
292 |
+
},
|
293 |
+
|
294 |
+
|
295 |
+
stop: function() {
|
296 |
+
if (api.ready) {
|
297 |
+
api.pause();
|
298 |
+
api.seek(0, function() {
|
299 |
+
root.trigger("stop");
|
300 |
+
});
|
301 |
+
}
|
302 |
+
return api;
|
303 |
+
},
|
304 |
+
|
305 |
+
unload: function() {
|
306 |
+
if (!root.hasClass("is-embedding")) {
|
307 |
+
|
308 |
+
if (conf.splash) {
|
309 |
+
api.trigger("unload");
|
310 |
+
engine.unload();
|
311 |
+
} else {
|
312 |
+
api.stop();
|
313 |
+
}
|
314 |
+
}
|
315 |
+
return api;
|
316 |
+
},
|
317 |
+
|
318 |
+
disable: function(flag) {
|
319 |
+
if (flag === undefined) flag = !api.disabled;
|
320 |
+
|
321 |
+
if (flag != api.disabled) {
|
322 |
+
api.disabled = flag;
|
323 |
+
api.trigger("disable", flag);
|
324 |
+
}
|
325 |
+
}
|
326 |
+
|
327 |
+
};
|
328 |
+
|
329 |
+
|
330 |
+
/* event binding / unbinding */
|
331 |
+
$.each(['bind', 'one', 'unbind'], function(i, key) {
|
332 |
+
api[key] = function(type, fn) {
|
333 |
+
root[key](type, fn);
|
334 |
+
return api;
|
335 |
+
};
|
336 |
+
});
|
337 |
+
|
338 |
+
api.trigger = function(event, arg) {
|
339 |
+
root.trigger(event, [api, arg]);
|
340 |
+
return api;
|
341 |
+
};
|
342 |
+
|
343 |
+
|
344 |
+
/*** Behaviour ***/
|
345 |
+
|
346 |
+
root.bind("boot", function() {
|
347 |
+
|
348 |
+
// conf
|
349 |
+
$.each(['autoplay', 'loop', 'preload', 'poster'], function(i, key) {
|
350 |
+
var val = videoTag.attr(key);
|
351 |
+
if (val !== undefined) conf[key] = val ? val : true;
|
352 |
+
});
|
353 |
+
|
354 |
+
// splash
|
355 |
+
if (conf.splash || root.hasClass("is-splash") || !flowplayer.support.firstframe) {
|
356 |
+
api.splash = conf.splash = conf.autoplay = true;
|
357 |
+
root.addClass("is-splash");
|
358 |
+
videoTag.attr("preload", "none");
|
359 |
+
}
|
360 |
+
|
361 |
+
// extensions
|
362 |
+
$.each(extensions, function(i) {
|
363 |
+
this(api, root);
|
364 |
+
});
|
365 |
+
|
366 |
+
// 1. use the configured engine
|
367 |
+
engine = flowplayer.engine[conf.engine];
|
368 |
+
if (engine) engine = engine(api, root);
|
369 |
+
|
370 |
+
if (engine.pick(urlResolver.initialSources)) {
|
371 |
+
api.engine = conf.engine;
|
372 |
+
|
373 |
+
// 2. failed -> try another
|
374 |
+
} else {
|
375 |
+
$.each(flowplayer.engine, function(name, impl) {
|
376 |
+
if (name != conf.engine) {
|
377 |
+
engine = this(api, root);
|
378 |
+
if (engine.pick(urlResolver.initialSources)) api.engine = name;
|
379 |
+
return false;
|
380 |
+
}
|
381 |
+
});
|
382 |
+
}
|
383 |
+
|
384 |
+
// no engine
|
385 |
+
if (!api.engine) return api.trigger("error", { code: flowplayer.support.flash ? 5 : 10 });
|
386 |
+
|
387 |
+
// start
|
388 |
+
conf.splash ? api.unload() : api.load();
|
389 |
+
|
390 |
+
// disabled
|
391 |
+
if (conf.disabled) api.disable();
|
392 |
+
|
393 |
+
// initial callback
|
394 |
+
root.one("ready", callback);
|
395 |
+
|
396 |
+
// instances
|
397 |
+
instances.push(api);
|
398 |
+
|
399 |
+
|
400 |
+
}).bind("load", function(e, api, video) {
|
401 |
+
|
402 |
+
// unload others
|
403 |
+
if (conf.splash) {
|
404 |
+
$(".flowplayer").filter(".is-ready, .is-loading").not(root).each(function() {
|
405 |
+
var api = $(this).data("flowplayer");
|
406 |
+
if (api.conf.splash) api.unload();
|
407 |
+
});
|
408 |
+
}
|
409 |
+
|
410 |
+
// loading
|
411 |
+
root.addClass("is-loading");
|
412 |
+
api.loading = true;
|
413 |
+
|
414 |
+
|
415 |
+
}).bind("ready", function(e, api, video) {
|
416 |
+
video.time = 0;
|
417 |
+
api.video = video;
|
418 |
+
|
419 |
+
function notLoading() {
|
420 |
+
root.removeClass("is-loading");
|
421 |
+
api.loading = false;
|
422 |
+
}
|
423 |
+
|
424 |
+
if (conf.splash) root.one("progress", notLoading);
|
425 |
+
else notLoading();
|
426 |
+
|
427 |
+
// saved state
|
428 |
+
if (api.muted) api.mute(true);
|
429 |
+
else api.volume(api.volumeLevel);
|
430 |
+
|
431 |
+
|
432 |
+
}).bind("unload", function(e) {
|
433 |
+
if (conf.splash) videoTag.remove();
|
434 |
+
root.removeClass("is-loading");
|
435 |
+
api.loading = false;
|
436 |
+
|
437 |
+
|
438 |
+
}).bind("ready unload", function(e) {
|
439 |
+
var is_ready = e.type == "ready";
|
440 |
+
root.toggleClass("is-splash", !is_ready).toggleClass("is-ready", is_ready);
|
441 |
+
api.ready = is_ready;
|
442 |
+
api.splash = !is_ready;
|
443 |
+
|
444 |
+
|
445 |
+
}).bind("progress", function(e, api, time) {
|
446 |
+
api.video.time = time;
|
447 |
+
|
448 |
+
|
449 |
+
}).bind("speed", function(e, api, val) {
|
450 |
+
api.currentSpeed = val;
|
451 |
+
|
452 |
+
}).bind("volume", function(e, api, level) {
|
453 |
+
api.volumeLevel = Math.round(level * 100) / 100;
|
454 |
+
if (!api.muted) storage.volume = level;
|
455 |
+
else if (level) api.mute(false);
|
456 |
+
|
457 |
+
|
458 |
+
}).bind("beforeseek seek", function(e) {
|
459 |
+
api.seeking = e.type == "beforeseek";
|
460 |
+
root.toggleClass("is-seeking", api.seeking);
|
461 |
+
|
462 |
+
}).bind("ready pause resume unload finish stop", function(e, _api, video) {
|
463 |
+
|
464 |
+
// PAUSED: pause / finish
|
465 |
+
api.paused = /pause|finish|unload|stop/.test(e.type);
|
466 |
+
|
467 |
+
// SHAKY HACK: first-frame / preload=none
|
468 |
+
if (e.type == "ready") {
|
469 |
+
if (video) {
|
470 |
+
api.paused = !video.duration || !conf.autoplay && (conf.preload != 'none' || api.engine == 'flash');
|
471 |
+
}
|
472 |
+
}
|
473 |
+
|
474 |
+
// the opposite
|
475 |
+
api.playing = !api.paused;
|
476 |
+
|
477 |
+
// CSS classes
|
478 |
+
root.toggleClass("is-paused", api.paused).toggleClass("is-playing", api.playing);
|
479 |
+
|
480 |
+
// sanity check
|
481 |
+
if (!api.load.ed) api.pause();
|
482 |
+
|
483 |
+
}).bind("finish", function(e) {
|
484 |
+
api.finished = true;
|
485 |
+
|
486 |
+
}).bind("error", function() {
|
487 |
+
videoTag.remove();
|
488 |
+
});
|
489 |
+
|
490 |
+
// boot
|
491 |
+
root.trigger("boot", [api, root]).data("flowplayer", api);
|
492 |
+
|
493 |
+
});
|
494 |
+
|
495 |
+
};
|
496 |
+
|
497 |
+
!function() {
|
498 |
+
|
499 |
+
var s = flowplayer.support,
|
500 |
+
browser = $.browser,
|
501 |
+
video = $("<video loop autoplay preload/>")[0],
|
502 |
+
IS_IE = browser.msie,
|
503 |
+
UA = navigator.userAgent,
|
504 |
+
IS_IPAD = /iPad|MeeGo/.test(UA),
|
505 |
+
IS_IPHONE = /iP(hone|od)/i.test(UA),
|
506 |
+
IS_ANDROID = /Android/.test(UA),
|
507 |
+
IS_SILK = /Silk/.test(UA),
|
508 |
+
IPAD_VER = IS_IPAD ? parseFloat(/Version\/(\d\.\d)/.exec(UA)[1], 10) : 0;
|
509 |
+
|
510 |
+
|
511 |
+
$.extend(s, {
|
512 |
+
video: !!video.canPlayType,
|
513 |
+
subtitles: !!video.addTextTrack,
|
514 |
+
fullscreen: typeof document.webkitCancelFullScreen == 'function'
|
515 |
+
&& !/Mac OS X 10_5.+Version\/5\.0\.\d Safari/.test(UA) || document.mozFullScreenEnabled,
|
516 |
+
fullscreen_keyboard: !browser.safari || browser.version > "536",
|
517 |
+
inlineBlock: !(IS_IE && browser.version < 8),
|
518 |
+
touch: ('ontouchstart' in window),
|
519 |
+
dataload: !IS_IPAD && !IS_IPHONE,
|
520 |
+
zeropreload: !IS_IE && !IS_ANDROID, // IE supports only preload=metadata
|
521 |
+
volume: !IS_IPAD && !IS_ANDROID && !IS_IPHONE && !IS_SILK,
|
522 |
+
cachedVideoTag: !IS_IPAD && !IS_IPHONE,
|
523 |
+
firstframe: !IS_IPHONE && !IS_IPAD && !IS_ANDROID && !IS_SILK
|
524 |
+
});
|
525 |
+
|
526 |
+
// flashVideo
|
527 |
+
try {
|
528 |
+
var ver = IS_IE ? new ActiveXObject("ShockwaveFlash.ShockwaveFlash").GetVariable('$version') :
|
529 |
+
navigator.plugins["Shockwave Flash"].description;
|
530 |
+
|
531 |
+
ver = ver.split(/\D+/);
|
532 |
+
if (ver.length && !ver[0]) ver = ver.slice(1);
|
533 |
+
|
534 |
+
s.flashVideo = ver[0] > 9 || ver[0] == 9 && ver[3] >= 115;
|
535 |
+
|
536 |
+
} catch (ignored) {}
|
537 |
+
|
538 |
+
// animation
|
539 |
+
s.animation = (function() {
|
540 |
+
var vendors = ['','Webkit','Moz','O','ms','Khtml'], el = $("<p/>")[0];
|
541 |
+
|
542 |
+
for (var i = 0; i < vendors.length; i++) {
|
543 |
+
if (el.style[vendors[i] + 'AnimationName'] !== 'undefined') return true;
|
544 |
+
}
|
545 |
+
})();
|
546 |
+
|
547 |
+
|
548 |
+
|
549 |
+
}();
|
550 |
+
|
551 |
+
|
552 |
+
/* The most minimal Flash embedding */
|
553 |
+
|
554 |
+
// movie required in opts
|
555 |
+
function embed(swf, flashvars) {
|
556 |
+
|
557 |
+
var id = "obj" + ("" + Math.random()).slice(2, 15),
|
558 |
+
tag = '<object class="fp-engine" id="' + id+ '" name="' + id + '" ';
|
559 |
+
|
560 |
+
tag += $.browser.msie ? 'classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000">' :
|
561 |
+
' data="' + swf + '" type="application/x-shockwave-flash">';
|
562 |
+
|
563 |
+
var opts = {
|
564 |
+
width: "100%",
|
565 |
+
height: "100%",
|
566 |
+
allowscriptaccess: "always",
|
567 |
+
wmode: "transparent",
|
568 |
+
quality: "high",
|
569 |
+
flashvars: "",
|
570 |
+
|
571 |
+
// https://github.com/flowplayer/flowplayer/issues/13#issuecomment-9369919
|
572 |
+
movie: swf + ($.browser.msie ? "?" + id : ""),
|
573 |
+
name: id
|
574 |
+
};
|
575 |
+
|
576 |
+
// flashvars
|
577 |
+
$.each(flashvars, function(key, value) {
|
578 |
+
opts.flashvars += key + "=" + value + "&";
|
579 |
+
});
|
580 |
+
|
581 |
+
// parameters
|
582 |
+
$.each(opts, function(key, value) {
|
583 |
+
tag += '<param name="' + key + '" value="'+ value +'"/>';
|
584 |
+
});
|
585 |
+
|
586 |
+
tag += "</object>";
|
587 |
+
|
588 |
+
return $(tag);
|
589 |
+
}
|
590 |
+
|
591 |
+
|
592 |
+
// Flash is buggy allover
|
593 |
+
if (window.attachEvent) {
|
594 |
+
window.attachEvent("onbeforeunload", function() {
|
595 |
+
__flash_savedUnloadHandler = __flash_unloadHandler = function() {};
|
596 |
+
});
|
597 |
+
}
|
598 |
+
|
599 |
+
|
600 |
+
flowplayer.engine.flash = function(player, root) {
|
601 |
+
|
602 |
+
var conf = player.conf,
|
603 |
+
video = player.video,
|
604 |
+
callbackId,
|
605 |
+
objectTag,
|
606 |
+
api;
|
607 |
+
|
608 |
+
var engine = {
|
609 |
+
|
610 |
+
pick: function(sources) {
|
611 |
+
|
612 |
+
if (flowplayer.support.flashVideo) {
|
613 |
+
|
614 |
+
// always pick video/flash first
|
615 |
+
var flash = $.grep(sources, function(source) { return source.type == 'flash'; })[0];
|
616 |
+
if (flash) return flash;
|
617 |
+
|
618 |
+
for (var i = 0, source; i < sources.length; i++) {
|
619 |
+
source = sources[i];
|
620 |
+
if (/mp4|flv/.test(source.type)) return source;
|
621 |
+
}
|
622 |
+
}
|
623 |
+
},
|
624 |
+
|
625 |
+
load: function(video) {
|
626 |
+
|
627 |
+
var html5Tag = $("video", root),
|
628 |
+
url = video.src.replace(/&/g, '%26').replace(/&/g, '%26').replace(/=/g, '%3D'),
|
629 |
+
is_absolute = /^https?:/.test(url);
|
630 |
+
|
631 |
+
// html5 tag not needed (pause needed for firefox)
|
632 |
+
if (html5Tag.length > 0 && flowplayer.support.video) html5Tag[0].pause();
|
633 |
+
html5Tag.remove();
|
634 |
+
|
635 |
+
// convert to absolute
|
636 |
+
if (!is_absolute && !conf.rtmp) url = $("<a/>").attr("href", url)[0].href;
|
637 |
+
|
638 |
+
if (api) {
|
639 |
+
api.__play(url);
|
640 |
+
|
641 |
+
} else {
|
642 |
+
|
643 |
+
callbackId = "fp" + ("" + Math.random()).slice(3, 15);
|
644 |
+
|
645 |
+
var opts = {
|
646 |
+
hostname: conf.embedded ? conf.hostname : location.hostname,
|
647 |
+
url: url,
|
648 |
+
callback: "jQuery."+ callbackId
|
649 |
+
};
|
650 |
+
|
651 |
+
if (is_absolute) delete conf.rtmp;
|
652 |
+
|
653 |
+
// optional conf
|
654 |
+
$.each(['key', 'autoplay', 'preload', 'rtmp', 'loop', 'debug'], function(i, key) {
|
655 |
+
if (conf[key]) opts[key] = conf[key];
|
656 |
+
});
|
657 |
+
|
658 |
+
objectTag = embed(conf.swf, opts);
|
659 |
+
|
660 |
+
objectTag.prependTo(root);
|
661 |
+
|
662 |
+
api = objectTag[0];
|
663 |
+
|
664 |
+
// throw error if no loading occurs
|
665 |
+
setTimeout(function() {
|
666 |
+
try {
|
667 |
+
if (!api.PercentLoaded()) {
|
668 |
+
return root.trigger("error", [player, { code: 7, url: conf.swf }]);
|
669 |
+
}
|
670 |
+
} catch (e) {}
|
671 |
+
}, 5000);
|
672 |
+
|
673 |
+
// listen
|
674 |
+
$[callbackId] = function(type, arg) {
|
675 |
+
|
676 |
+
if (conf.debug && type != "status") console.log("--", type, arg);
|
677 |
+
|
678 |
+
var event = $.Event(type);
|
679 |
+
|
680 |
+
switch (type) {
|
681 |
+
|
682 |
+
// RTMP sends a lot of finish events in vain
|
683 |
+
// case "finish": if (conf.rtmp) return;
|
684 |
+
case "ready": arg = $.extend(video, arg); break;
|
685 |
+
case "click": event.flash = true; break;
|
686 |
+
case "keydown": event.which = arg; break;
|
687 |
+
case "seek": video.time = arg; break;
|
688 |
+
case "buffered": video.buffered = true; break;
|
689 |
+
|
690 |
+
case "status":
|
691 |
+
player.trigger("progress", arg.time);
|
692 |
+
|
693 |
+
if (arg.buffer <= video.bytes && !video.buffered) {
|
694 |
+
video.buffer = arg.buffer / video.bytes * video.duration;
|
695 |
+
player.trigger("buffer", video.buffer);
|
696 |
+
|
697 |
+
} else if (video.buffered) player.trigger("buffered");
|
698 |
+
|
699 |
+
break;
|
700 |
+
|
701 |
+
}
|
702 |
+
|
703 |
+
// add some delay to that player is truly ready after an event
|
704 |
+
setTimeout(function() { player.trigger(event, arg); }, 1)
|
705 |
+
|
706 |
+
};
|
707 |
+
|
708 |
+
}
|
709 |
+
|
710 |
+
},
|
711 |
+
|
712 |
+
// not supported yet
|
713 |
+
speed: $.noop,
|
714 |
+
|
715 |
+
|
716 |
+
unload: function() {
|
717 |
+
api && api.__unload && api.__unload();
|
718 |
+
delete $[callbackId];
|
719 |
+
$("object", root).remove();
|
720 |
+
api = 0;
|
721 |
+
}
|
722 |
+
|
723 |
+
};
|
724 |
+
|
725 |
+
$.each("pause,resume,seek,volume".split(","), function(i, name) {
|
726 |
+
|
727 |
+
engine[name] = function(arg) {
|
728 |
+
|
729 |
+
if (player.ready) {
|
730 |
+
|
731 |
+
if (name == 'seek' && player.video.time && !player.paused) {
|
732 |
+
player.trigger("beforeseek");
|
733 |
+
}
|
734 |
+
|
735 |
+
if (arg === undefined) {
|
736 |
+
api["__" + name]();
|
737 |
+
|
738 |
+
} else {
|
739 |
+
api["__" + name](arg);
|
740 |
+
}
|
741 |
+
|
742 |
+
}
|
743 |
+
};
|
744 |
+
|
745 |
+
});
|
746 |
+
|
747 |
+
var win = $(window),
|
748 |
+
origH = root.height(),
|
749 |
+
origW = root.width();
|
750 |
+
|
751 |
+
// handle Flash object aspect ratio
|
752 |
+
player.bind("ready fullscreen fullscreen-exit", function(e) {
|
753 |
+
if (player.conf.flashfit || /full/.test(e.type)) {
|
754 |
+
|
755 |
+
var fs = player.isFullscreen,
|
756 |
+
truefs = fs && FS_SUPPORT,
|
757 |
+
ie7 = !flowplayer.support.inlineBlock,
|
758 |
+
screenW = fs ? (truefs ? screen.availWidth : win.width()) : origW,
|
759 |
+
screenH = fs ? (truefs ? screen.availHeight : win.height()) : origH,
|
760 |
+
|
761 |
+
// default values for fullscreen-exit without flashfit
|
762 |
+
hmargin = truefs ? screen.width - screen.availWidth : 0,
|
763 |
+
vmargin = truefs ? screen.height - screen.availHeight : 0,
|
764 |
+
objwidth = ie7 ? origW : '',
|
765 |
+
objheight = ie7 ? origH : '',
|
766 |
+
|
767 |
+
aspectratio, dataratio;
|
768 |
+
|
769 |
+
if (player.conf.flashfit || e.type === "fullscreen") {
|
770 |
+
aspectratio = player.video.width / player.video.height,
|
771 |
+
dataratio = player.video.height / player.video.width,
|
772 |
+
objheight = Math.max(dataratio * screenW),
|
773 |
+
objwidth = Math.max(aspectratio * screenH);
|
774 |
+
objheight = objheight > screenH ? objwidth * dataratio : objheight;
|
775 |
+
objheight = Math.min(Math.round(objheight), screenH);
|
776 |
+
objwidth = objwidth > screenW ? objheight * aspectratio : objwidth;
|
777 |
+
objwidth = Math.min(Math.round(objwidth), screenW);
|
778 |
+
vmargin = Math.max(Math.round((screenH + vmargin - objheight) / 2), 0);
|
779 |
+
hmargin = Math.max(Math.round((screenW + hmargin - objwidth) / 2), 0);
|
780 |
+
}
|
781 |
+
|
782 |
+
$("object", root).css({
|
783 |
+
width: objwidth,
|
784 |
+
height: objheight,
|
785 |
+
marginTop: vmargin,
|
786 |
+
marginLeft: hmargin
|
787 |
+
});
|
788 |
+
}
|
789 |
+
});
|
790 |
+
|
791 |
+
return engine;
|
792 |
+
|
793 |
+
};
|
794 |
+
|
795 |
+
|
796 |
+
var VIDEO = $('<video/>')[0];
|
797 |
+
|
798 |
+
// HTML5 --> Flowplayer event
|
799 |
+
var EVENTS = {
|
800 |
+
|
801 |
+
// fired
|
802 |
+
ended: 'finish',
|
803 |
+
pause: 'pause',
|
804 |
+
play: 'resume',
|
805 |
+
progress: 'buffer',
|
806 |
+
timeupdate: 'progress',
|
807 |
+
volumechange: 'volume',
|
808 |
+
ratechange: 'speed',
|
809 |
+
seeking: 'beforeseek',
|
810 |
+
seeked: 'seek',
|
811 |
+
// abort: 'resume',
|
812 |
+
|
813 |
+
// not fired
|
814 |
+
loadeddata: 'ready',
|
815 |
+
// loadedmetadata: 0,
|
816 |
+
// canplay: 0,
|
817 |
+
|
818 |
+
// error events
|
819 |
+
// load: 0,
|
820 |
+
// emptied: 0,
|
821 |
+
// empty: 0,
|
822 |
+
error: 'error',
|
823 |
+
dataunavailable: 'error'
|
824 |
+
|
825 |
+
};
|
826 |
+
|
827 |
+
function round(val) {
|
828 |
+
return Math.round(val * 100) / 100;
|
829 |
+
}
|
830 |
+
|
831 |
+
function getType(type) {
|
832 |
+
return /mpegurl/i.test(type) ? "application/x-mpegurl" : "video/" + type;
|
833 |
+
}
|
834 |
+
|
835 |
+
function canPlay(type) {
|
836 |
+
if (!/^(video|application)/.test(type))
|
837 |
+
type = getType(type);
|
838 |
+
return !!VIDEO.canPlayType(type).replace("no", '');
|
839 |
+
}
|
840 |
+
|
841 |
+
var videoTagCache;
|
842 |
+
var createVideoTag = function(video) {
|
843 |
+
if (videoTagCache) {
|
844 |
+
return videoTagCache.attr({type: getType(video.type), src: video.src});
|
845 |
+
}
|
846 |
+
return (videoTagCache = $("<video/>", {
|
847 |
+
src: video.src,
|
848 |
+
type: getType(video.type),
|
849 |
+
'class': 'fp-engine',
|
850 |
+
'autoplay': 'autoplay',
|
851 |
+
preload: 'none'
|
852 |
+
}));
|
853 |
+
}
|
854 |
+
|
855 |
+
flowplayer.engine.html5 = function(player, root) {
|
856 |
+
|
857 |
+
var videoTag = $("video", root),
|
858 |
+
support = flowplayer.support,
|
859 |
+
track = $("track", videoTag),
|
860 |
+
conf = player.conf,
|
861 |
+
self,
|
862 |
+
timer,
|
863 |
+
api;
|
864 |
+
|
865 |
+
return self = {
|
866 |
+
|
867 |
+
pick: function(sources) {
|
868 |
+
if (support.video) {
|
869 |
+
for (var i = 0, source; i < sources.length; i++) {
|
870 |
+
if (canPlay(sources[i].type)) return sources[i];
|
871 |
+
}
|
872 |
+
}
|
873 |
+
},
|
874 |
+
|
875 |
+
load: function(video) {
|
876 |
+
|
877 |
+
if (conf.splash && !api) {
|
878 |
+
|
879 |
+
videoTag = createVideoTag(video).prependTo(root);
|
880 |
+
|
881 |
+
if (track.length) videoTag.append(track.attr("default", ""));
|
882 |
+
|
883 |
+
if (conf.loop) videoTag.attr("loop", "loop");
|
884 |
+
|
885 |
+
api = videoTag[0];
|
886 |
+
|
887 |
+
} else {
|
888 |
+
|
889 |
+
api = videoTag[0];
|
890 |
+
|
891 |
+
// change of clip
|
892 |
+
if (player.video.src && video.src != player.video.src) {
|
893 |
+
videoTag.attr("autoplay", "autoplay");
|
894 |
+
api.src = video.src;
|
895 |
+
|
896 |
+
// preload=none or no initial "loadeddata" event
|
897 |
+
} else if (conf.preload == 'none' || !support.dataload) {
|
898 |
+
|
899 |
+
if (support.zeropreload) {
|
900 |
+
player.trigger("ready", video).trigger("pause").one("ready", function() {
|
901 |
+
root.trigger("resume");
|
902 |
+
});
|
903 |
+
|
904 |
+
} else {
|
905 |
+
player.one("ready", function() {
|
906 |
+
root.trigger("pause");
|
907 |
+
});
|
908 |
+
}
|
909 |
+
}
|
910 |
+
|
911 |
+
}
|
912 |
+
|
913 |
+
listen(api, $("source", videoTag).add(videoTag), video);
|
914 |
+
|
915 |
+
// iPad (+others?) demands load()
|
916 |
+
if (conf.preload != 'none' || !support.zeropreload || !support.dataload) api.load();
|
917 |
+
if (conf.splash) api.load();
|
918 |
+
},
|
919 |
+
|
920 |
+
pause: function() {
|
921 |
+
api.pause();
|
922 |
+
},
|
923 |
+
|
924 |
+
resume: function() {
|
925 |
+
api.play();
|
926 |
+
},
|
927 |
+
|
928 |
+
speed: function(val) {
|
929 |
+
api.playbackRate = val;
|
930 |
+
},
|
931 |
+
|
932 |
+
seek: function(time) {
|
933 |
+
try {
|
934 |
+
api.currentTime = time;
|
935 |
+
} catch (ignored) {}
|
936 |
+
},
|
937 |
+
|
938 |
+
volume: function(level) {
|
939 |
+
api.volume = level;
|
940 |
+
},
|
941 |
+
|
942 |
+
unload: function() {
|
943 |
+
$("video", root).remove();
|
944 |
+
if (!support.cachedVideoTag) videoTagCache = null;
|
945 |
+
timer = clearInterval(timer);
|
946 |
+
api = 0;
|
947 |
+
}
|
948 |
+
|
949 |
+
};
|
950 |
+
|
951 |
+
function listen(api, sources, video) {
|
952 |
+
// listen only once
|
953 |
+
|
954 |
+
if (api.listeners && api.listeners.hasOwnProperty(root.data('fp-player_id'))) return;
|
955 |
+
(api.listeners || (api.listeners = {}))[root.data('fp-player_id')] = true;
|
956 |
+
|
957 |
+
sources.bind("error", function(e) {
|
958 |
+
try {
|
959 |
+
if (e.originalEvent && $(e.originalEvent.originalTarget).is('img')) return e.preventDefault();
|
960 |
+
if (canPlay($(e.target).attr("type"))) {
|
961 |
+
player.trigger("error", { code: 4 });
|
962 |
+
}
|
963 |
+
} catch (er) {
|
964 |
+
// Most likely: https://bugzilla.mozilla.org/show_bug.cgi?id=208427
|
965 |
+
}
|
966 |
+
});
|
967 |
+
|
968 |
+
$.each(EVENTS, function(type, flow) {
|
969 |
+
|
970 |
+
api.addEventListener(type, function(e) {
|
971 |
+
|
972 |
+
// safari hack for bad URL (10s before fails)
|
973 |
+
if (flow == "progress" && e.srcElement && e.srcElement.readyState === 0) {
|
974 |
+
setTimeout(function() {
|
975 |
+
if (!player.video.duration) {
|
976 |
+
flow = "error";
|
977 |
+
player.trigger(flow, { code: 4 });
|
978 |
+
}
|
979 |
+
}, 10000);
|
980 |
+
}
|
981 |
+
|
982 |
+
if (conf.debug && !/progress/.test(flow)) console.log(type, "->", flow, e);
|
983 |
+
|
984 |
+
// no events if player not ready
|
985 |
+
if (!player.ready && !/ready|error/.test(flow) || !flow || !$("video", root).length) { return; }
|
986 |
+
|
987 |
+
var event = $.Event(flow), arg;
|
988 |
+
|
989 |
+
switch (flow) {
|
990 |
+
|
991 |
+
case "ready":
|
992 |
+
|
993 |
+
arg = $.extend(video, {
|
994 |
+
duration: api.duration,
|
995 |
+
width: api.videoWidth,
|
996 |
+
height: api.videoHeight,
|
997 |
+
url: api.currentSrc,
|
998 |
+
src: api.currentSrc
|
999 |
+
});
|
1000 |
+
|
1001 |
+
try {
|
1002 |
+
arg.seekable = api.seekable && api.seekable.end(null);
|
1003 |
+
|
1004 |
+
} catch (ignored) {}
|
1005 |
+
|
1006 |
+
// buffer
|
1007 |
+
timer = timer || setInterval(function() {
|
1008 |
+
|
1009 |
+
try {
|
1010 |
+
arg.buffer = api.buffered.end(null);
|
1011 |
+
|
1012 |
+
} catch (ignored) {}
|
1013 |
+
|
1014 |
+
if (arg.buffer) {
|
1015 |
+
if (arg.buffer <= arg.duration && !arg.buffered) {
|
1016 |
+
player.trigger("buffer", e);
|
1017 |
+
|
1018 |
+
} else if (!arg.buffered) {
|
1019 |
+
arg.buffered = true;
|
1020 |
+
player.trigger("buffer", e).trigger("buffered", e);
|
1021 |
+
clearInterval(timer);
|
1022 |
+
timer = 0;
|
1023 |
+
}
|
1024 |
+
}
|
1025 |
+
|
1026 |
+
}, 250);
|
1027 |
+
|
1028 |
+
break;
|
1029 |
+
|
1030 |
+
case "progress": case "seek":
|
1031 |
+
|
1032 |
+
var dur = player.video.duration
|
1033 |
+
|
1034 |
+
if (api.currentTime > 0) {
|
1035 |
+
arg = Math.max(api.currentTime, 0);
|
1036 |
+
if (dur && arg && arg >= dur) event.type = "finish";
|
1037 |
+
break;
|
1038 |
+
|
1039 |
+
} else if (flow == 'progress') {
|
1040 |
+
return;
|
1041 |
+
}
|
1042 |
+
|
1043 |
+
|
1044 |
+
case "speed":
|
1045 |
+
arg = round(api.playbackRate);
|
1046 |
+
break;
|
1047 |
+
|
1048 |
+
case "volume":
|
1049 |
+
arg = round(api.volume);
|
1050 |
+
break;
|
1051 |
+
|
1052 |
+
case "error":
|
1053 |
+
try {
|
1054 |
+
arg = (e.srcElement || e.originalTarget).error;
|
1055 |
+
} catch (er) {
|
1056 |
+
// Most likely https://bugzilla.mozilla.org/show_bug.cgi?id=208427
|
1057 |
+
return;
|
1058 |
+
}
|
1059 |
+
}
|
1060 |
+
|
1061 |
+
player.trigger(event, arg);
|
1062 |
+
|
1063 |
+
}, false);
|
1064 |
+
|
1065 |
+
});
|
1066 |
+
|
1067 |
+
}
|
1068 |
+
|
1069 |
+
};
|
1070 |
+
var TYPE_RE = /.(\w{3,4})$/i;
|
1071 |
+
|
1072 |
+
function parseSource(el) {
|
1073 |
+
|
1074 |
+
var src = el.attr("src"),
|
1075 |
+
type = el.attr("type") || "",
|
1076 |
+
suffix = src.split(TYPE_RE)[1];
|
1077 |
+
|
1078 |
+
type = /mpegurl/.test(type) ? "mpegurl" : type.replace("video/", "");
|
1079 |
+
|
1080 |
+
return { src: src, suffix: suffix || type, type: type || suffix };
|
1081 |
+
}
|
1082 |
+
|
1083 |
+
/* Resolves video object from initial configuration and from load() method */
|
1084 |
+
function URLResolver(videoTag) {
|
1085 |
+
|
1086 |
+
var self = this,
|
1087 |
+
sources = [];
|
1088 |
+
|
1089 |
+
// initial sources
|
1090 |
+
$("source", videoTag).each(function() {
|
1091 |
+
sources.push(parseSource($(this)));
|
1092 |
+
});
|
1093 |
+
|
1094 |
+
if (!sources.length) sources.push(parseSource(videoTag));
|
1095 |
+
|
1096 |
+
self.initialSources = sources;
|
1097 |
+
|
1098 |
+
self.resolve = function(video) {
|
1099 |
+
if (!video) return { sources: sources };
|
1100 |
+
|
1101 |
+
if ($.isArray(video)) {
|
1102 |
+
|
1103 |
+
video = { sources: $.map(video, function(el) {
|
1104 |
+
var type; $.each(el, function(key, value) { type = key; });
|
1105 |
+
el.type = type;
|
1106 |
+
el.src = el[type];
|
1107 |
+
delete el[type];
|
1108 |
+
return el;
|
1109 |
+
})};
|
1110 |
+
|
1111 |
+
} else if (typeof video == 'string') {
|
1112 |
+
|
1113 |
+
video = { src: video, sources: [] };
|
1114 |
+
|
1115 |
+
$.each(sources, function(i, source) {
|
1116 |
+
if (source.type != 'flash') {
|
1117 |
+
video.sources.push({
|
1118 |
+
type: source.type,
|
1119 |
+
src: video.src.replace(TYPE_RE, "") + "." + source.suffix
|
1120 |
+
});
|
1121 |
+
}
|
1122 |
+
});
|
1123 |
+
}
|
1124 |
+
|
1125 |
+
return video;
|
1126 |
+
};
|
1127 |
+
|
1128 |
+
};
|
1129 |
+
/* A minimal jQuery Slider plugin with all goodies */
|
1130 |
+
|
1131 |
+
// skip IE policies
|
1132 |
+
// document.ondragstart = function () { return false; };
|
1133 |
+
|
1134 |
+
|
1135 |
+
// execute function every <delay> ms
|
1136 |
+
$.throttle = function(fn, delay) {
|
1137 |
+
var locked;
|
1138 |
+
|
1139 |
+
return function () {
|
1140 |
+
if (!locked) {
|
1141 |
+
fn.apply(this, arguments);
|
1142 |
+
locked = 1;
|
1143 |
+
setTimeout(function () { locked = 0; }, delay);
|
1144 |
+
}
|
1145 |
+
};
|
1146 |
+
};
|
1147 |
+
|
1148 |
+
|
1149 |
+
$.fn.slider2 = function() {
|
1150 |
+
|
1151 |
+
var IS_IPAD = /iPad/.test(navigator.userAgent);
|
1152 |
+
|
1153 |
+
return this.each(function() {
|
1154 |
+
|
1155 |
+
var root = $(this),
|
1156 |
+
doc = $(document),
|
1157 |
+
progress = root.children(":last"),
|
1158 |
+
disabled,
|
1159 |
+
offset,
|
1160 |
+
width,
|
1161 |
+
height,
|
1162 |
+
vertical,
|
1163 |
+
size,
|
1164 |
+
maxValue,
|
1165 |
+
max,
|
1166 |
+
|
1167 |
+
/* private */
|
1168 |
+
calc = function() {
|
1169 |
+
offset = root.offset();
|
1170 |
+
width = root.width();
|
1171 |
+
height = root.height();
|
1172 |
+
|
1173 |
+
/* exit from fullscreen can mess this up.*/
|
1174 |
+
// vertical = height > width;
|
1175 |
+
|
1176 |
+
size = vertical ? height : width;
|
1177 |
+
max = toDelta(maxValue);
|
1178 |
+
},
|
1179 |
+
|
1180 |
+
fire = function(value) {
|
1181 |
+
if (!disabled && value != api.value && (!maxValue || value < maxValue)) {
|
1182 |
+
root.trigger("slide", [ value ]);
|
1183 |
+
api.value = value;
|
1184 |
+
}
|
1185 |
+
},
|
1186 |
+
|
1187 |
+
mousemove = function(e) {
|
1188 |
+
var delta = vertical ? e.pageY - offset.top : e.pageX - offset.left;
|
1189 |
+
delta = Math.max(0, Math.min(max || size, delta));
|
1190 |
+
|
1191 |
+
var value = delta / size;
|
1192 |
+
if (vertical) value = 1 - value;
|
1193 |
+
return move(value, 0, true);
|
1194 |
+
},
|
1195 |
+
|
1196 |
+
move = function(value, speed) {
|
1197 |
+
if (speed === undefined) { speed = 0; }
|
1198 |
+
if (value > 1) value = 1;
|
1199 |
+
|
1200 |
+
var to = (Math.round(value * 1000) / 10) + "%";
|
1201 |
+
|
1202 |
+
if (!maxValue || value <= maxValue) {
|
1203 |
+
if (!IS_IPAD) progress.stop(); // stop() broken on iPad
|
1204 |
+
progress.animate(vertical ? { height: to } : { width: to }, speed, "linear");
|
1205 |
+
}
|
1206 |
+
|
1207 |
+
return value;
|
1208 |
+
},
|
1209 |
+
|
1210 |
+
toDelta = function(value) {
|
1211 |
+
return Math.max(0, Math.min(size, vertical ? (1 - value) * height : value * width));
|
1212 |
+
},
|
1213 |
+
|
1214 |
+
/* public */
|
1215 |
+
api = {
|
1216 |
+
|
1217 |
+
max: function(value) {
|
1218 |
+
maxValue = value;
|
1219 |
+
},
|
1220 |
+
|
1221 |
+
disable: function(flag) {
|
1222 |
+
disabled = flag;
|
1223 |
+
},
|
1224 |
+
|
1225 |
+
slide: function(value, speed, fireEvent) {
|
1226 |
+
calc();
|
1227 |
+
if (fireEvent) fire(value);
|
1228 |
+
move(value, speed);
|
1229 |
+
}
|
1230 |
+
|
1231 |
+
};
|
1232 |
+
|
1233 |
+
calc();
|
1234 |
+
|
1235 |
+
// bound dragging into document
|
1236 |
+
root.data("api", api).bind("mousedown.sld", function(e) {
|
1237 |
+
|
1238 |
+
e.preventDefault();
|
1239 |
+
|
1240 |
+
if (!disabled) {
|
1241 |
+
|
1242 |
+
// begin --> recalculate. allows dynamic resizing of the slider
|
1243 |
+
var delayedFire = $.throttle(fire, 100);
|
1244 |
+
calc();
|
1245 |
+
api.dragging = true;
|
1246 |
+
fire(mousemove(e));
|
1247 |
+
|
1248 |
+
doc.bind("mousemove.sld", function(e) {
|
1249 |
+
e.preventDefault();
|
1250 |
+
delayedFire(mousemove(e));
|
1251 |
+
|
1252 |
+
}).one("mouseup", function() {
|
1253 |
+
api.dragging = false;
|
1254 |
+
doc.unbind("mousemove.sld");
|
1255 |
+
});
|
1256 |
+
|
1257 |
+
}
|
1258 |
+
|
1259 |
+
});
|
1260 |
+
|
1261 |
+
});
|
1262 |
+
|
1263 |
+
};
|
1264 |
+
|
1265 |
+
function zeropad(val) {
|
1266 |
+
val = parseInt(val, 10);
|
1267 |
+
return val >= 10 ? val : "0" + val;
|
1268 |
+
}
|
1269 |
+
|
1270 |
+
// display seconds in hh:mm:ss format
|
1271 |
+
function format(sec) {
|
1272 |
+
|
1273 |
+
sec = sec || 0;
|
1274 |
+
|
1275 |
+
var h = Math.floor(sec / 3600),
|
1276 |
+
min = Math.floor(sec / 60);
|
1277 |
+
|
1278 |
+
sec = sec - (min * 60);
|
1279 |
+
|
1280 |
+
if (h >= 1) {
|
1281 |
+
min -= h * 60;
|
1282 |
+
return h + ":" + zeropad(min) + ":" + zeropad(sec);
|
1283 |
+
}
|
1284 |
+
|
1285 |
+
return zeropad(min) + ":" + zeropad(sec);
|
1286 |
+
}
|
1287 |
+
|
1288 |
+
flowplayer(function(api, root) {
|
1289 |
+
|
1290 |
+
var conf = api.conf,
|
1291 |
+
support = flowplayer.support,
|
1292 |
+
hovertimer;
|
1293 |
+
|
1294 |
+
root.addClass("flowplayer").append('\
|
1295 |
+
<div class="ratio"/>\
|
1296 |
+
<div class="ui">\
|
1297 |
+
<div class="waiting"><em/><em/><em/></div>\
|
1298 |
+
<a class="fullscreen"/>\
|
1299 |
+
<a class="unload"/>\
|
1300 |
+
<p class="speed"/>\
|
1301 |
+
<div class="controls">\
|
1302 |
+
<a class="play"></a>\
|
1303 |
+
<div class="timeline">\
|
1304 |
+
<div class="buffer"/>\
|
1305 |
+
<div class="progress"/>\
|
1306 |
+
</div>\
|
1307 |
+
<div class="volume">\
|
1308 |
+
<a class="mute"></a>\
|
1309 |
+
<div class="volumeslider">\
|
1310 |
+
<div class="volumelevel"/>\
|
1311 |
+
</div>\
|
1312 |
+
</div>\
|
1313 |
+
</div>\
|
1314 |
+
<div class="time">\
|
1315 |
+
<em class="elapsed">00:00</em>\
|
1316 |
+
<em class="remaining"/>\
|
1317 |
+
<em class="duration">00:00</em>\
|
1318 |
+
</div>\
|
1319 |
+
<div class="message"><h2/><p/></div>\
|
1320 |
+
</div>'.replace(/class="/g, 'class="fp-')
|
1321 |
+
);
|
1322 |
+
|
1323 |
+
function find(klass) {
|
1324 |
+
return $(".fp-" + klass, root);
|
1325 |
+
}
|
1326 |
+
|
1327 |
+
// widgets
|
1328 |
+
var progress = find("progress"),
|
1329 |
+
buffer = find("buffer"),
|
1330 |
+
elapsed = find("elapsed"),
|
1331 |
+
remaining = find("remaining"),
|
1332 |
+
waiting = find("waiting"),
|
1333 |
+
ratio = find("ratio"),
|
1334 |
+
speed = find("speed"),
|
1335 |
+
durationEl = find("duration"),
|
1336 |
+
origRatio = ratio.css("paddingTop"),
|
1337 |
+
|
1338 |
+
// sliders
|
1339 |
+
timeline = find("timeline").slider2(),
|
1340 |
+
timelineApi = timeline.data("api"),
|
1341 |
+
|
1342 |
+
volume = find("volume"),
|
1343 |
+
fullscreen = find("fullscreen"),
|
1344 |
+
volumeSlider = find("volumeslider").slider2(),
|
1345 |
+
volumeApi = volumeSlider.data("api"),
|
1346 |
+
noToggle = root.is(".fixed-controls, .no-toggle");
|
1347 |
+
|
1348 |
+
// aspect ratio
|
1349 |
+
function setRatio(val) {
|
1350 |
+
if (!parseInt(origRatio, 10)) ratio.css("paddingTop", val * 100 + "%");
|
1351 |
+
if (!support.inlineBlock) $("object", root).height(root.height());
|
1352 |
+
}
|
1353 |
+
|
1354 |
+
function hover(flag) {
|
1355 |
+
root.toggleClass("is-mouseover", flag).toggleClass("is-mouseout", !flag);
|
1356 |
+
}
|
1357 |
+
|
1358 |
+
// loading...
|
1359 |
+
if (!support.animation) waiting.html("<p>loading …</p>");
|
1360 |
+
|
1361 |
+
setRatio(conf.ratio);
|
1362 |
+
|
1363 |
+
// no fullscreen in IFRAME
|
1364 |
+
try {
|
1365 |
+
if (!conf.fullscreen) fullscreen.remove();
|
1366 |
+
|
1367 |
+
} catch (e) {
|
1368 |
+
fullscreen.remove();
|
1369 |
+
}
|
1370 |
+
|
1371 |
+
|
1372 |
+
api.bind("ready", function() {
|
1373 |
+
|
1374 |
+
var duration = api.video.duration;
|
1375 |
+
|
1376 |
+
timelineApi.disable(!duration);
|
1377 |
+
|
1378 |
+
setRatio(api.video.videoHeight / api.video.videoWidth);
|
1379 |
+
|
1380 |
+
// initial time & volume
|
1381 |
+
durationEl.add(remaining).html(format(duration));
|
1382 |
+
|
1383 |
+
// do we need additional space for showing hour
|
1384 |
+
((duration >= 3600) && root.addClass('is-long')) || root.removeClass('is-long');
|
1385 |
+
volumeApi.slide(api.volumeLevel);
|
1386 |
+
|
1387 |
+
|
1388 |
+
}).bind("unload", function() {
|
1389 |
+
if (!origRatio) ratio.css("paddingTop", "");
|
1390 |
+
|
1391 |
+
// buffer
|
1392 |
+
}).bind("buffer", function() {
|
1393 |
+
var video = api.video,
|
1394 |
+
max = video.buffer / video.duration;
|
1395 |
+
|
1396 |
+
if (!video.seekable) timelineApi.max(max);
|
1397 |
+
if (max < 1) buffer.css("width", (max * 100) + "%");
|
1398 |
+
else buffer.css({ width: '100%' });
|
1399 |
+
|
1400 |
+
}).bind("speed", function(e, api, val) {
|
1401 |
+
speed.text(val + "x").addClass("fp-hilite");
|
1402 |
+
setTimeout(function() { speed.removeClass("fp-hilite") }, 1000);
|
1403 |
+
|
1404 |
+
}).bind("buffered", function() {
|
1405 |
+
buffer.css({ width: '100%' });
|
1406 |
+
timelineApi.max(1);
|
1407 |
+
|
1408 |
+
// progress
|
1409 |
+
}).bind("progress", function() {
|
1410 |
+
|
1411 |
+
var time = api.video.time,
|
1412 |
+
duration = api.video.duration;
|
1413 |
+
|
1414 |
+
if (!timelineApi.dragging) {
|
1415 |
+
timelineApi.slide(time / duration, api.seeking ? 0 : 250);
|
1416 |
+
}
|
1417 |
+
|
1418 |
+
elapsed.html(format(time));
|
1419 |
+
remaining.html("-" + format(duration - time));
|
1420 |
+
|
1421 |
+
}).bind("finish resume seek", function(e) {
|
1422 |
+
root.toggleClass("is-finished", e.type == "finish");
|
1423 |
+
|
1424 |
+
}).bind("stop", function() {
|
1425 |
+
elapsed.html(format(0));
|
1426 |
+
timelineApi.slide(0, 100);
|
1427 |
+
|
1428 |
+
}).bind("finish", function() {
|
1429 |
+
elapsed.html(format(api.video.duration));
|
1430 |
+
timelineApi.slide(1, 100);
|
1431 |
+
root.removeClass("is-seeking");
|
1432 |
+
|
1433 |
+
// misc
|
1434 |
+
}).bind("beforeseek", function() {
|
1435 |
+
progress.stop();
|
1436 |
+
|
1437 |
+
}).bind("volume", function() {
|
1438 |
+
volumeApi.slide(api.volumeLevel);
|
1439 |
+
|
1440 |
+
|
1441 |
+
}).bind("disable", function() {
|
1442 |
+
var flag = api.disabled;
|
1443 |
+
timelineApi.disable(flag);
|
1444 |
+
volumeApi.disable(flag);
|
1445 |
+
root.toggleClass("is-disabled", api.disabled);
|
1446 |
+
|
1447 |
+
}).bind("mute", function(e, api, flag) {
|
1448 |
+
root.toggleClass("is-muted", flag);
|
1449 |
+
|
1450 |
+
}).bind("error", function(e, api, error) {
|
1451 |
+
root.removeClass("is-loading").addClass("is-error");
|
1452 |
+
|
1453 |
+
if (error) {
|
1454 |
+
error.message = conf.errors[error.code];
|
1455 |
+
api.error = true;
|
1456 |
+
|
1457 |
+
var el = $(".fp-message", root);
|
1458 |
+
$("h2", el).text(api.engine + ": " + error.message);
|
1459 |
+
$("p", el).text(error.url || api.video.url || api.video.src || conf.errorUrls[error.code]);
|
1460 |
+
root.unbind("mouseenter click").removeClass("is-mouseover");
|
1461 |
+
}
|
1462 |
+
|
1463 |
+
|
1464 |
+
// hover
|
1465 |
+
}).bind("mouseenter mouseleave", function(e) {
|
1466 |
+
if (noToggle) return;
|
1467 |
+
|
1468 |
+
var is_over = e.type == "mouseenter",
|
1469 |
+
lastMove;
|
1470 |
+
|
1471 |
+
// is-mouseover/out
|
1472 |
+
hover(is_over);
|
1473 |
+
|
1474 |
+
if (is_over) {
|
1475 |
+
|
1476 |
+
root.bind("pause.x mousemove.x volume.x", function() {
|
1477 |
+
hover(true);
|
1478 |
+
lastMove = new Date;
|
1479 |
+
});
|
1480 |
+
|
1481 |
+
hovertimer = setInterval(function() {
|
1482 |
+
if (new Date - lastMove > 5000) {
|
1483 |
+
hover(false)
|
1484 |
+
lastMove = new Date;
|
1485 |
+
}
|
1486 |
+
}, 100);
|
1487 |
+
|
1488 |
+
} else {
|
1489 |
+
root.unbind(".x");
|
1490 |
+
clearInterval(hovertimer);
|
1491 |
+
}
|
1492 |
+
|
1493 |
+
|
1494 |
+
// allow dragging over the player edge
|
1495 |
+
}).bind("mouseleave", function() {
|
1496 |
+
|
1497 |
+
if (timelineApi.dragging || volumeApi.dragging) {
|
1498 |
+
root.addClass("is-mouseover").removeClass("is-mouseout");
|
1499 |
+
}
|
1500 |
+
|
1501 |
+
// click
|
1502 |
+
}).bind("click.player", function(e) {
|
1503 |
+
if ($(e.target).is(".fp-ui, .fp-engine") || e.flash) {
|
1504 |
+
e.preventDefault();
|
1505 |
+
return api.toggle();
|
1506 |
+
}
|
1507 |
+
});
|
1508 |
+
|
1509 |
+
// poster -> background image
|
1510 |
+
if (conf.poster) root.css("backgroundImage", "url(" + conf.poster + ")");
|
1511 |
+
|
1512 |
+
var bc = root.css("backgroundColor"),
|
1513 |
+
has_bg = root.css("backgroundImage") != "none" || bc && bc != "rgba(0, 0, 0, 0)" && bc != "transparent";
|
1514 |
+
|
1515 |
+
// is-poster class
|
1516 |
+
if (has_bg && !conf.splash && !conf.autoplay) {
|
1517 |
+
|
1518 |
+
api.bind("ready stop", function() {
|
1519 |
+
root.addClass("is-poster").one("ready progress", function() {
|
1520 |
+
root.removeClass("is-poster");
|
1521 |
+
});
|
1522 |
+
});
|
1523 |
+
|
1524 |
+
}
|
1525 |
+
|
1526 |
+
// default background color if not present
|
1527 |
+
if (!has_bg && !support.firstframe) {
|
1528 |
+
root.css("backgroundColor", "#555");
|
1529 |
+
}
|
1530 |
+
|
1531 |
+
$(".fp-toggle, .fp-play", root).click(api.toggle);
|
1532 |
+
|
1533 |
+
/* controlbar elements */
|
1534 |
+
$.each(['mute', 'fullscreen', 'unload'], function(i, key) {
|
1535 |
+
find(key).click(function() {
|
1536 |
+
api[key]();
|
1537 |
+
});
|
1538 |
+
});
|
1539 |
+
|
1540 |
+
timeline.bind("slide", function(e, val) {
|
1541 |
+
api.seeking = true;
|
1542 |
+
api.seek(val * api.video.duration);
|
1543 |
+
});
|
1544 |
+
|
1545 |
+
volumeSlider.bind("slide", function(e, val) {
|
1546 |
+
api.volume(val);
|
1547 |
+
});
|
1548 |
+
|
1549 |
+
// times
|
1550 |
+
find("time").click(function(e) {
|
1551 |
+
$(this).toggleClass("is-inverted");
|
1552 |
+
});
|
1553 |
+
|
1554 |
+
hover(noToggle);
|
1555 |
+
|
1556 |
+
});
|
1557 |
+
|
1558 |
+
var focused,
|
1559 |
+
focusedRoot,
|
1560 |
+
IS_HELP = "is-help";
|
1561 |
+
|
1562 |
+
// keyboard. single global listener
|
1563 |
+
$(document).bind("keydown.fp", function(e) {
|
1564 |
+
|
1565 |
+
var el = focused,
|
1566 |
+
metaKeyPressed = e.ctrlKey || e.metaKey || e.altKey,
|
1567 |
+
key = e.which,
|
1568 |
+
conf = el && el.conf;
|
1569 |
+
|
1570 |
+
if (!el || !conf.keyboard || el.disabled) return;
|
1571 |
+
|
1572 |
+
// help dialog (shift key not truly required)
|
1573 |
+
if ($.inArray(key, [63, 187, 191, 219]) != -1) {
|
1574 |
+
focusedRoot.toggleClass(IS_HELP);
|
1575 |
+
return false;
|
1576 |
+
}
|
1577 |
+
|
1578 |
+
// close help / unload
|
1579 |
+
if (key == 27 && focusedRoot.hasClass(IS_HELP)) {
|
1580 |
+
focusedRoot.toggleClass(IS_HELP);
|
1581 |
+
return false;
|
1582 |
+
}
|
1583 |
+
|
1584 |
+
if (!metaKeyPressed && el.ready) {
|
1585 |
+
|
1586 |
+
e.preventDefault();
|
1587 |
+
|
1588 |
+
// slow motion / fast forward
|
1589 |
+
if (e.shiftKey) {
|
1590 |
+
if (key == 39) el.speed(true);
|
1591 |
+
else if (key == 37) el.speed(false);
|
1592 |
+
return;
|
1593 |
+
}
|
1594 |
+
|
1595 |
+
// 1, 2, 3, 4 ..
|
1596 |
+
if (key < 58 && key > 47) return el.seekTo(key - 48);
|
1597 |
+
|
1598 |
+
switch (key) {
|
1599 |
+
case 38: case 75: el.volume(el.volumeLevel + 0.15); break; // volume up
|
1600 |
+
case 40: case 74: el.volume(el.volumeLevel - 0.15); break; // volume down
|
1601 |
+
case 39: case 76: el.seeking = true; el.seek(true); break; // forward
|
1602 |
+
case 37: case 72: el.seeking = true; el.seek(false); break; // backward
|
1603 |
+
case 190: el.seekTo(); break; // to last seek position
|
1604 |
+
case 32: el.toggle(); break; // spacebar
|
1605 |
+
case 70: conf.fullscreen && el.fullscreen(); break; // toggle fullscreen
|
1606 |
+
case 77: el.mute(); break; // mute
|
1607 |
+
case 27: el[el.isFullscreen ? "fullscreen" : "unload"](); break; // esc
|
1608 |
+
}
|
1609 |
+
|
1610 |
+
}
|
1611 |
+
|
1612 |
+
});
|
1613 |
+
|
1614 |
+
flowplayer(function(api, root) {
|
1615 |
+
|
1616 |
+
// no keyboard configured
|
1617 |
+
if (!api.conf.keyboard) return;
|
1618 |
+
|
1619 |
+
// hover
|
1620 |
+
root.bind("mouseenter mouseleave", function(e) {
|
1621 |
+
focused = !api.disabled && e.type == 'mouseenter' ? api : 0;
|
1622 |
+
if (focused) focusedRoot = root;
|
1623 |
+
});
|
1624 |
+
|
1625 |
+
// TODO: add to player-layout.html
|
1626 |
+
root.append('\
|
1627 |
+
<div class="fp-help">\
|
1628 |
+
<a class="fp-close"></a>\
|
1629 |
+
<div class="fp-help-section fp-help-basics">\
|
1630 |
+
<p><em>space</em>play / pause</p>\
|
1631 |
+
<p><em>esc</em>stop</p>\
|
1632 |
+
<p><em>f</em>fullscreen</p>\
|
1633 |
+
<p><em>shift</em> + <em>←</em><em>→</em>slower / faster <small>(latest Chrome and Safari)</small></p>\
|
1634 |
+
</div>\
|
1635 |
+
<div class="fp-help-section">\
|
1636 |
+
<p><em>↑</em><em>↓</em>volume</p>\
|
1637 |
+
<p><em>m</em>mute</p>\
|
1638 |
+
</div>\
|
1639 |
+
<div class="fp-help-section">\
|
1640 |
+
<p><em>←</em><em>→</em>seek</p>\
|
1641 |
+
<p><em> . </em>seek to previous\
|
1642 |
+
</p><p><em>1</em><em>2</em>…<em>6</em> seek to 10%, 20%, …60% </p>\
|
1643 |
+
</div>\
|
1644 |
+
</div>\
|
1645 |
+
');
|
1646 |
+
|
1647 |
+
if (api.conf.tooltip) {
|
1648 |
+
$(".fp-ui", root).attr("title", "Hit ? for help").on("mouseout.tip", function() {
|
1649 |
+
$(this).removeAttr("title").off("mouseout.tip");
|
1650 |
+
});
|
1651 |
+
}
|
1652 |
+
|
1653 |
+
$(".fp-close", root).click(function() {
|
1654 |
+
root.toggleClass(IS_HELP);
|
1655 |
+
});
|
1656 |
+
|
1657 |
+
});
|
1658 |
+
|
1659 |
+
var VENDOR = $.browser.mozilla ? "moz": "webkit",
|
1660 |
+
FS_ENTER = "fullscreen",
|
1661 |
+
FS_EXIT = "fullscreen-exit",
|
1662 |
+
FULL_PLAYER,
|
1663 |
+
FS_SUPPORT = flowplayer.support.fullscreen;
|
1664 |
+
|
1665 |
+
|
1666 |
+
// esc button
|
1667 |
+
$(document).bind(VENDOR + "fullscreenchange", function(e) {
|
1668 |
+
var el = $(document.webkitCurrentFullScreenElement || document.mozFullScreenElement);
|
1669 |
+
|
1670 |
+
if (el.length) {
|
1671 |
+
FULL_PLAYER = el.trigger(FS_ENTER, [el]);
|
1672 |
+
} else {
|
1673 |
+
FULL_PLAYER.trigger(FS_EXIT, [FULL_PLAYER]);
|
1674 |
+
}
|
1675 |
+
|
1676 |
+
});
|
1677 |
+
|
1678 |
+
|
1679 |
+
flowplayer(function(player, root) {
|
1680 |
+
|
1681 |
+
if (!player.conf.fullscreen) return;
|
1682 |
+
|
1683 |
+
var win = $(window),
|
1684 |
+
fsSeek = {pos: 0, play: false},
|
1685 |
+
scrollTop;
|
1686 |
+
|
1687 |
+
player.isFullscreen = false;
|
1688 |
+
|
1689 |
+
player.fullscreen = function(flag) {
|
1690 |
+
|
1691 |
+
if (player.disabled) return;
|
1692 |
+
|
1693 |
+
if (flag === undefined) flag = !player.isFullscreen;
|
1694 |
+
|
1695 |
+
if (flag) scrollTop = win.scrollTop();
|
1696 |
+
|
1697 |
+
if (FS_SUPPORT) {
|
1698 |
+
|
1699 |
+
if (flag) {
|
1700 |
+
root[0][VENDOR + 'RequestFullScreen'](
|
1701 |
+
flowplayer.support.fullscreen_keyboard ? Element.ALLOW_KEYBOARD_INPUT : undefined
|
1702 |
+
);
|
1703 |
+
|
1704 |
+
} else {
|
1705 |
+
document[VENDOR + 'CancelFullScreen']();
|
1706 |
+
}
|
1707 |
+
|
1708 |
+
} else {
|
1709 |
+
if (player.engine === "flash" && player.conf.rtmp)
|
1710 |
+
fsSeek = {pos: player.video.time, play: player.playing};
|
1711 |
+
player.trigger(flag ? FS_ENTER : FS_EXIT, [player])
|
1712 |
+
}
|
1713 |
+
|
1714 |
+
return player;
|
1715 |
+
};
|
1716 |
+
|
1717 |
+
var lastClick;
|
1718 |
+
|
1719 |
+
root.bind("mousedown.fs", function() {
|
1720 |
+
if (+new Date - lastClick < 150 && player.ready) player.fullscreen();
|
1721 |
+
lastClick = +new Date;
|
1722 |
+
});
|
1723 |
+
|
1724 |
+
player.bind(FS_ENTER, function(e) {
|
1725 |
+
root.addClass("is-fullscreen");
|
1726 |
+
player.isFullscreen = true;
|
1727 |
+
|
1728 |
+
}).bind(FS_EXIT, function(e) {
|
1729 |
+
root.removeClass("is-fullscreen");
|
1730 |
+
player.isFullscreen = false;
|
1731 |
+
win.scrollTop(scrollTop);
|
1732 |
+
|
1733 |
+
}).bind("ready", function () {
|
1734 |
+
if (fsSeek.pos && !isNaN(fsSeek.pos)) {
|
1735 |
+
setTimeout(function () {
|
1736 |
+
player.play(); // avoid hang in buffering state
|
1737 |
+
player.seek(fsSeek.pos);
|
1738 |
+
if (!fsSeek.play) {
|
1739 |
+
setTimeout(function () {
|
1740 |
+
player.pause();
|
1741 |
+
}, 100);
|
1742 |
+
}
|
1743 |
+
fsSeek = {pos: 0, play: false};
|
1744 |
+
}, 250);
|
1745 |
+
}
|
1746 |
+
});
|
1747 |
+
|
1748 |
+
});
|
1749 |
+
|
1750 |
+
|
1751 |
+
flowplayer(function(player, root) {
|
1752 |
+
|
1753 |
+
var conf = $.extend({ active: 'is-active', advance: true, query: ".fp-playlist a" }, player.conf),
|
1754 |
+
klass = conf.active;
|
1755 |
+
|
1756 |
+
// getters
|
1757 |
+
function els() {
|
1758 |
+
return $(conf.query, root);
|
1759 |
+
}
|
1760 |
+
|
1761 |
+
function active() {
|
1762 |
+
return $(conf.query + "." + klass, root);
|
1763 |
+
}
|
1764 |
+
|
1765 |
+
|
1766 |
+
player.play = function(i) {
|
1767 |
+
if (i === undefined) player.resume();
|
1768 |
+
else if (typeof i != 'number') player.load.apply(null, arguments);
|
1769 |
+
else els().eq(i).click();
|
1770 |
+
return player;
|
1771 |
+
};
|
1772 |
+
|
1773 |
+
|
1774 |
+
if (els().length) {
|
1775 |
+
|
1776 |
+
/* click -> play */
|
1777 |
+
root.on("click", conf.query, function(e) {
|
1778 |
+
var el = $(e.target).closest(conf.query);
|
1779 |
+
el.is("." + klass) ? player.toggle() : player.load(el.attr("href"));
|
1780 |
+
e.preventDefault();
|
1781 |
+
});
|
1782 |
+
|
1783 |
+
// disable single clip looping
|
1784 |
+
player.conf.loop = false;
|
1785 |
+
|
1786 |
+
// playlist wide cuepoint support
|
1787 |
+
var has_cuepoints = els().filter("[data-cuepoints]").length;
|
1788 |
+
|
1789 |
+
// highlight
|
1790 |
+
player.bind("load", function(e, api, video) {
|
1791 |
+
|
1792 |
+
// active
|
1793 |
+
var prev = active().removeClass(klass),
|
1794 |
+
el = $("a[href*='" + video.src.replace(TYPE_RE, "") + ".']", root).addClass(klass),
|
1795 |
+
clips = els(),
|
1796 |
+
index = clips.index(el),
|
1797 |
+
is_last = index == clips.length - 1;
|
1798 |
+
|
1799 |
+
// index
|
1800 |
+
root.removeClass("video" + clips.index(prev)).addClass("video" + index).toggleClass("last-video", is_last);
|
1801 |
+
|
1802 |
+
// video properties
|
1803 |
+
video.index = index;
|
1804 |
+
video.is_last = is_last;
|
1805 |
+
|
1806 |
+
// cuepoints
|
1807 |
+
if (has_cuepoints) player.cuepoints = el.data("cuepoints");
|
1808 |
+
|
1809 |
+
|
1810 |
+
// without namespace callback called only once. unknown rason.
|
1811 |
+
}).bind("unload.pl", function() {
|
1812 |
+
active().toggleClass(klass);
|
1813 |
+
|
1814 |
+
});
|
1815 |
+
|
1816 |
+
// api.next() / api.prev()
|
1817 |
+
$.each(['next', 'prev'], function(i, key) {
|
1818 |
+
|
1819 |
+
player[key] = function(e) {
|
1820 |
+
e && e.preventDefault();
|
1821 |
+
|
1822 |
+
// next (or previous) entry
|
1823 |
+
var el = active()[key]();
|
1824 |
+
|
1825 |
+
// cycle
|
1826 |
+
if (!el.length) el = els().filter(key == 'next' ? ':first' : ':last');;
|
1827 |
+
|
1828 |
+
el.click();
|
1829 |
+
};
|
1830 |
+
|
1831 |
+
$(".fp-" + key, root).click(player[key]);
|
1832 |
+
});
|
1833 |
+
|
1834 |
+
if (conf.advance) {
|
1835 |
+
root.unbind("finish.pl").bind("finish.pl", function() {
|
1836 |
+
|
1837 |
+
// next clip is found or loop
|
1838 |
+
if (active().next().length || conf.loop) {
|
1839 |
+
player.next();
|
1840 |
+
|
1841 |
+
// stop to last clip, play button starts from 1:st clip
|
1842 |
+
} else {
|
1843 |
+
root.addClass("is-playing"); // show play button
|
1844 |
+
|
1845 |
+
player.one("resume", function() {
|
1846 |
+
player.next();
|
1847 |
+
return false;
|
1848 |
+
});
|
1849 |
+
}
|
1850 |
+
});
|
1851 |
+
}
|
1852 |
+
|
1853 |
+
}
|
1854 |
+
|
1855 |
+
|
1856 |
+
});
|
1857 |
+
|
1858 |
+
var CUE_RE = / ?cue\d+ ?/;
|
1859 |
+
|
1860 |
+
flowplayer(function(player, root) {
|
1861 |
+
|
1862 |
+
var lastTime = 0;
|
1863 |
+
|
1864 |
+
player.cuepoints = player.conf.cuepoints || [];
|
1865 |
+
|
1866 |
+
function setClass(index) {
|
1867 |
+
root[0].className = root[0].className.replace(CUE_RE, " ");
|
1868 |
+
if (index >= 0) root.addClass("cue" + index);
|
1869 |
+
}
|
1870 |
+
|
1871 |
+
player.bind("progress", function(e, api, time) {
|
1872 |
+
|
1873 |
+
// avoid throwing multiple times
|
1874 |
+
if (lastTime && time - lastTime < 0.015) return lastTime = time;
|
1875 |
+
lastTime = time;
|
1876 |
+
|
1877 |
+
var cues = player.cuepoints || [];
|
1878 |
+
|
1879 |
+
for (var i = 0, cue; i < cues.length; i++) {
|
1880 |
+
|
1881 |
+
cue = cues[i];
|
1882 |
+
if (1 * cue) cue = { time: cue }
|
1883 |
+
if (cue.time < 0) cue.time = player.video.duration + cue.time;
|
1884 |
+
cue.index = i;
|
1885 |
+
|
1886 |
+
// progress_interval / 2 = 0.125
|
1887 |
+
if (Math.abs(cue.time - time) < 0.125 * player.currentSpeed) {
|
1888 |
+
setClass(i);
|
1889 |
+
root.trigger("cuepoint", [player, cue]);
|
1890 |
+
}
|
1891 |
+
|
1892 |
+
}
|
1893 |
+
|
1894 |
+
// no CSS class name
|
1895 |
+
}).bind("unload seek", setClass);
|
1896 |
+
|
1897 |
+
if (player.conf.generate_cuepoints) {
|
1898 |
+
|
1899 |
+
player.bind("ready", function() {
|
1900 |
+
|
1901 |
+
var cues = player.cuepoints || [],
|
1902 |
+
duration = player.video.duration,
|
1903 |
+
timeline = $(".fp-timeline", root).css("overflow", "visible");
|
1904 |
+
|
1905 |
+
$.each(cues, function(i, cue) {
|
1906 |
+
|
1907 |
+
var time = cue.time || cue;
|
1908 |
+
if (time < 0) time = duration + cue;
|
1909 |
+
|
1910 |
+
var el = $("<a/>").addClass("fp-cuepoint fp-cuepoint" + i)
|
1911 |
+
.css("left", (time / duration * 100) + "%");
|
1912 |
+
|
1913 |
+
el.appendTo(timeline).mousedown(function() {
|
1914 |
+
player.seek(time);
|
1915 |
+
|
1916 |
+
// preventDefault() doesn't work
|
1917 |
+
return false;
|
1918 |
+
});
|
1919 |
+
|
1920 |
+
});
|
1921 |
+
|
1922 |
+
});
|
1923 |
+
|
1924 |
+
}
|
1925 |
+
|
1926 |
+
});
|
1927 |
+
flowplayer(function(player, root, engine) {
|
1928 |
+
|
1929 |
+
var track = $("track", root),
|
1930 |
+
conf = player.conf;
|
1931 |
+
|
1932 |
+
if (flowplayer.support.subtitles) {
|
1933 |
+
|
1934 |
+
player.subtitles = track.length && track[0].track;
|
1935 |
+
|
1936 |
+
// use native when supported
|
1937 |
+
if (conf.nativesubtitles && conf.engine == 'html5') return;
|
1938 |
+
}
|
1939 |
+
|
1940 |
+
// avoid duplicate loads
|
1941 |
+
track.remove();
|
1942 |
+
|
1943 |
+
var TIMECODE_RE = /^(([0-9]{2}:)?[0-9]{2}:[0-9]{2}[,.]{1}[0-9]{3}) --\> (([0-9]{2}:)?[0-9]{2}:[0-9]{2}[,.]{1}[0-9]{3})(.*)/;
|
1944 |
+
|
1945 |
+
function seconds(timecode) {
|
1946 |
+
var els = timecode.split(':');
|
1947 |
+
if (els.length == 2) els.unshift(0);
|
1948 |
+
return els[0] * 60 * 60 + els[1] * 60 + parseFloat(els[2].replace(',','.'));
|
1949 |
+
}
|
1950 |
+
|
1951 |
+
player.subtitles = [];
|
1952 |
+
|
1953 |
+
var url = track.attr("src");
|
1954 |
+
|
1955 |
+
if (!url) return;
|
1956 |
+
|
1957 |
+
$.get(url, function(txt) {
|
1958 |
+
|
1959 |
+
for (var i = 0, lines = txt.split("\n"), len = lines.length, entry = {}, title, timecode, text, cue; i < len; i++) {
|
1960 |
+
|
1961 |
+
timecode = TIMECODE_RE.exec(lines[i]);
|
1962 |
+
|
1963 |
+
if (timecode) {
|
1964 |
+
|
1965 |
+
// title
|
1966 |
+
title = lines[i - 1];
|
1967 |
+
|
1968 |
+
// text
|
1969 |
+
text = "<p>" + lines[++i] + "</p><br/>";
|
1970 |
+
while ($.trim(lines[++i]) && i < lines.length) text += "<p>" + lines[i] + "</p><br/>";
|
1971 |
+
|
1972 |
+
// entry
|
1973 |
+
entry = {
|
1974 |
+
title: title,
|
1975 |
+
startTime: seconds(timecode[1]),
|
1976 |
+
endTime: seconds(timecode[2] || timecode[3]),
|
1977 |
+
text: text
|
1978 |
+
};
|
1979 |
+
|
1980 |
+
cue = { time: entry.startTime, subtitle: entry };
|
1981 |
+
|
1982 |
+
player.subtitles.push(entry);
|
1983 |
+
player.cuepoints.push(cue);
|
1984 |
+
player.cuepoints.push({ time: entry.endTime, subtitleEnd: title });
|
1985 |
+
|
1986 |
+
// initial cuepoint
|
1987 |
+
if (entry.startTime === 0) {
|
1988 |
+
player.trigger("cuepoint", cue);
|
1989 |
+
}
|
1990 |
+
|
1991 |
+
}
|
1992 |
+
|
1993 |
+
}
|
1994 |
+
|
1995 |
+
}).fail(function() {
|
1996 |
+
player.trigger("error", {code: 8, url: url });
|
1997 |
+
return false;
|
1998 |
+
});
|
1999 |
+
|
2000 |
+
var wrap = $("<div class='fp-subtitle'/>", root).appendTo(root),
|
2001 |
+
currentPoint;
|
2002 |
+
|
2003 |
+
player.bind("cuepoint", function(e, api, cue) {
|
2004 |
+
|
2005 |
+
if (cue.subtitle) {
|
2006 |
+
currentPoint = cue.index;
|
2007 |
+
wrap.html(cue.subtitle.text).addClass("fp-active");
|
2008 |
+
|
2009 |
+
} else if (cue.subtitleEnd) {
|
2010 |
+
wrap.removeClass("fp-active");
|
2011 |
+
}
|
2012 |
+
|
2013 |
+
}).bind("seek", function(e, api, time) {
|
2014 |
+
|
2015 |
+
$.each(player.cuepoints || [], function(i, cue) {
|
2016 |
+
var entry = cue.subtitle;
|
2017 |
+
|
2018 |
+
if (entry && currentPoint != cue.index) {
|
2019 |
+
if (time >= cue.time && time <= entry.endTime) player.trigger("cuepoint", cue);
|
2020 |
+
else wrap.removeClass("fp-active");
|
2021 |
+
}
|
2022 |
+
|
2023 |
+
});
|
2024 |
+
|
2025 |
+
});
|
2026 |
+
|
2027 |
+
});
|
2028 |
+
|
2029 |
+
|
2030 |
+
|
2031 |
+
flowplayer(function(player, root) {
|
2032 |
+
|
2033 |
+
var id = player.conf.analytics, time = 0, last = 0;
|
2034 |
+
|
2035 |
+
if (id) {
|
2036 |
+
|
2037 |
+
// load Analytics script if needed
|
2038 |
+
if (typeof _gat == 'undefined') $.getScript("http://www.google-analytics.com/ga.js");
|
2039 |
+
|
2040 |
+
function track(e) {
|
2041 |
+
|
2042 |
+
if (time && typeof _gat != 'undefined') {
|
2043 |
+
var tracker = _gat._getTracker(id),
|
2044 |
+
video = player.video;
|
2045 |
+
|
2046 |
+
tracker._setAllowLinker(true);
|
2047 |
+
|
2048 |
+
// http://code.google.com/apis/analytics/docs/tracking/eventTrackerGuide.html
|
2049 |
+
tracker._trackEvent(
|
2050 |
+
"Video / Seconds played",
|
2051 |
+
player.engine + "/" + video.type,
|
2052 |
+
root.attr("title") || video.src.split("/").slice(-1)[0].replace(TYPE_RE, ''),
|
2053 |
+
Math.round(time / 1000)
|
2054 |
+
);
|
2055 |
+
time = 0;
|
2056 |
+
}
|
2057 |
+
|
2058 |
+
}
|
2059 |
+
|
2060 |
+
player.bind("load unload", track).bind("progress", function() {
|
2061 |
+
|
2062 |
+
if (!player.seeking) {
|
2063 |
+
time += last ? (+new Date - last) : 0;
|
2064 |
+
last = +new Date;
|
2065 |
+
}
|
2066 |
+
|
2067 |
+
}).bind("pause", function() {
|
2068 |
+
last = 0;
|
2069 |
+
});
|
2070 |
+
|
2071 |
+
$(window).unload(track);
|
2072 |
+
|
2073 |
+
}
|
2074 |
+
|
2075 |
+
});
|
2076 |
+
if (flowplayer.support.touch) {
|
2077 |
+
|
2078 |
+
flowplayer(function(player, root) {
|
2079 |
+
var isAndroid = /Android/.test(UA),
|
2080 |
+
isSilk = /Silk/.test(UA);
|
2081 |
+
|
2082 |
+
// hide volume
|
2083 |
+
if (!flowplayer.support.volume) {
|
2084 |
+
root.addClass("no-volume no-mute");
|
2085 |
+
}
|
2086 |
+
|
2087 |
+
// fake mouseover effect with click
|
2088 |
+
root.one("touchstart", function() {
|
2089 |
+
isAndroid && player.toggle();
|
2090 |
+
|
2091 |
+
}).bind("touchstart", function(e) {
|
2092 |
+
|
2093 |
+
if (player.playing && !root.hasClass("is-mouseover")) {
|
2094 |
+
root.addClass("is-mouseover").removeClass("is-mouseout");
|
2095 |
+
return false;
|
2096 |
+
}
|
2097 |
+
|
2098 |
+
if (player.paused && root.hasClass("is-mouseout")) {
|
2099 |
+
player.toggle();
|
2100 |
+
}
|
2101 |
+
|
2102 |
+
});
|
2103 |
+
|
2104 |
+
// native fullscreen
|
2105 |
+
if (player.conf.native_fullscreen && $.browser.webkit) {
|
2106 |
+
player.fullscreen = function() {
|
2107 |
+
$('video', root)[0].webkitEnterFullScreen();
|
2108 |
+
}
|
2109 |
+
}
|
2110 |
+
|
2111 |
+
|
2112 |
+
// Android browser gives video.duration == 1 until second 'timeupdate' event
|
2113 |
+
(isAndroid || isSilk) && player.bind("ready", function() {
|
2114 |
+
|
2115 |
+
var video = $('video', root);
|
2116 |
+
video.one('canplay', function() {
|
2117 |
+
video[0].play();
|
2118 |
+
});
|
2119 |
+
video[0].play();
|
2120 |
+
|
2121 |
+
player.bind("progress.dur", function() {
|
2122 |
+
|
2123 |
+
var duration = video[0].duration;
|
2124 |
+
|
2125 |
+
if (duration !== 1) {
|
2126 |
+
player.video.duration = duration;
|
2127 |
+
$(".fp-duration", root).html(format(duration));
|
2128 |
+
player.unbind("progress.dur");
|
2129 |
+
}
|
2130 |
+
});
|
2131 |
+
});
|
2132 |
+
|
2133 |
+
|
2134 |
+
});
|
2135 |
+
|
2136 |
+
}
|
2137 |
+
|
2138 |
+
flowplayer(function(player, root) {
|
2139 |
+
|
2140 |
+
// no embedding
|
2141 |
+
if (player.conf.embed === false) return;
|
2142 |
+
|
2143 |
+
var conf = player.conf,
|
2144 |
+
ui = $(".fp-ui", root),
|
2145 |
+
trigger = $("<a/>", { "class": "fp-embed", title: 'Copy to your site'}).appendTo(ui),
|
2146 |
+
target = $("<div/>", { 'class': 'fp-embed-code'})
|
2147 |
+
.append("<label>Paste this HTML code on your site to embed.</label><textarea/>").appendTo(ui),
|
2148 |
+
area = $("textarea", target);
|
2149 |
+
|
2150 |
+
player.embedCode = function() {
|
2151 |
+
|
2152 |
+
var video = player.video,
|
2153 |
+
width = video.width || root.width(),
|
2154 |
+
height = video.height || root.height(),
|
2155 |
+
el = $("<div/>", { 'class': 'flowplayer', css: { width: width, height: height }}),
|
2156 |
+
tag = $("<video/>").appendTo(el);
|
2157 |
+
|
2158 |
+
// configuration
|
2159 |
+
$.each(['origin', 'analytics', 'logo', 'key', 'rtmp'], function(i, key) {
|
2160 |
+
if (conf[key]) el.attr("data-" + key, conf[key]);
|
2161 |
+
});
|
2162 |
+
|
2163 |
+
// sources
|
2164 |
+
$.each(video.sources, function(i, src) {
|
2165 |
+
tag.append($("<source/>", { type: "video/" + src.type, src: src.src }));
|
2166 |
+
});
|
2167 |
+
|
2168 |
+
var code = $("<foo/>", { src: "http://embed.flowplayer.org/5.3.2/embed.min.js" }).append(el);
|
2169 |
+
return $("<p/>").append(code).html().replace(/<(\/?)foo/g, "<$1script");
|
2170 |
+
};
|
2171 |
+
|
2172 |
+
root.fptip(".fp-embed", "is-embedding");
|
2173 |
+
|
2174 |
+
area.click(function() {
|
2175 |
+
this.select();
|
2176 |
+
});
|
2177 |
+
|
2178 |
+
trigger.click(function() {
|
2179 |
+
area.text(player.embedCode());
|
2180 |
+
area[0].focus();
|
2181 |
+
area[0].select();
|
2182 |
+
});
|
2183 |
+
|
2184 |
+
});
|
2185 |
+
|
2186 |
+
|
2187 |
+
$.fn.fptip = function(trigger, active) {
|
2188 |
+
|
2189 |
+
return this.each(function() {
|
2190 |
+
|
2191 |
+
var root = $(this);
|
2192 |
+
|
2193 |
+
function close() {
|
2194 |
+
root.removeClass(active);
|
2195 |
+
$(document).unbind(".st");
|
2196 |
+
}
|
2197 |
+
|
2198 |
+
$(trigger || "a", this).click(function(e) {
|
2199 |
+
|
2200 |
+
e.preventDefault();
|
2201 |
+
|
2202 |
+
root.toggleClass(active);
|
2203 |
+
|
2204 |
+
if (root.hasClass(active)) {
|
2205 |
+
|
2206 |
+
$(document).bind("keydown.st", function(e) {
|
2207 |
+
if (e.which == 27) close();
|
2208 |
+
|
2209 |
+
// click:close
|
2210 |
+
}).bind("click.st", function(e) {
|
2211 |
+
if (!$(e.target).parents("." + active).length) close();
|
2212 |
+
});
|
2213 |
+
}
|
2214 |
+
|
2215 |
+
});
|
2216 |
+
|
2217 |
+
});
|
2218 |
+
|
2219 |
+
};
|
2220 |
+
|
2221 |
+
}(jQuery);
|
2222 |
+
flowplayer(function(a,b){function j(a){var b=c("<a/>")[0];return b.href=a,b.hostname}var c=jQuery,d=a.conf,e=d.swf.indexOf("flowplayer.org")&&d.e&&d.origin,f=e?j(e):location.hostname,g=d.key;location.protocol=="file:"&&(f="localhost"),a.load.ed=1,d.hostname=f,d.origin=e||location.href,e&&b.addClass("is-embedded"),typeof g=="string"&&(g=g.split(/,\s*/));if(g&&typeof key_check=="function"&&key_check(g,f))d.logo&&b.append(c("<a>",{"class":"fp-logo",href:e,target:"_top"}).append(c("<img/>",{src:d.logo})));else{var h=c("<a/>",{href:"http://flowplayer.org",target:"_top"}).appendTo(b),i=c(".fp-controls",b);a.bind("pause resume finish unload",function(b){/pause|resume/.test(b.type)&&a.engine!="flash"?(h.show().css({position:"absolute",left:16,bottom:36,zIndex:99999,width:100,height:20,backgroundImage:"url("+[".png","logo","/",".org",".flowplayer","stream","//"].reverse().join("")+")"}),a.load.ed=h.is(":visible")):h.hide()})}});
|
lib/flowplayer.swf
ADDED
Binary file
|
lib/functional.css
ADDED
@@ -0,0 +1,158 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.flowplayer{position:relative;width:100%;text-align:left;background-size:contain;background-repeat:no-repeat;background-position:center center;display:inline-block;}
|
2 |
+
.flowplayer *{font-weight:inherit;font-family:inherit;font-style:inherit;text-decoration:inherit;font-size:100%;padding:0;border:0;margin:0;list-style-type:none}
|
3 |
+
.flowplayer a:focus{outline:0}
|
4 |
+
.flowplayer video{width:100%}
|
5 |
+
.flowplayer.is-ipad video{-webkit-transform:translateX(-2048px);}
|
6 |
+
.is-ready.flowplayer.is-ipad video{-webkit-transform:translateX(0)}
|
7 |
+
.flowplayer .fp-engine,.flowplayer .fp-ui,.flowplayer .fp-message{position:absolute;top:0;left:0;width:100%;height:100%;cursor:pointer;z-index:1}
|
8 |
+
.flowplayer .fp-message{display:none;text-align:center;padding-top:5%;cursor:default;}
|
9 |
+
.flowplayer .fp-message h2{font-size:120%;margin-bottom:1em}
|
10 |
+
.flowplayer .fp-message p{color:#666;font-size:95%}
|
11 |
+
.flowplayer .fp-controls{position:absolute;bottom:0;width:100%;}
|
12 |
+
.no-background.flowplayer .fp-controls{background-color:transparent !important;background-image:-moz-linear-gradient(transparent,transparent) !important;background-image:-webkit-gradient(linear,0 0,0 100%,from(transparent),to(transparent)) !important}
|
13 |
+
.is-fullscreen.flowplayer .fp-controls{bottom:3px}
|
14 |
+
.is-mouseover.flowplayer .fp-controls{bottom:0}
|
15 |
+
.flowplayer .fp-waiting{display:none;margin:19% auto;text-align:center;}
|
16 |
+
.flowplayer .fp-waiting *{-webkit-box-shadow:0 0 5px #333;-moz-box-shadow:0 0 5px #333;box-shadow:0 0 5px #333}
|
17 |
+
.flowplayer .fp-waiting em{width:1em;height:1em;-webkit-border-radius:1em;-moz-border-radius:1em;border-radius:1em;background-color:rgba(255,255,255,0.8);display:inline-block;-webkit-animation:pulse .6s infinite;-moz-animation:pulse .6s infinite;animation:pulse .6s infinite;margin:.3em;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);}
|
18 |
+
.flowplayer .fp-waiting em:nth-child(1){-webkit-animation-delay:.3s;-moz-animation-delay:.3s;animation-delay:.3s}
|
19 |
+
.flowplayer .fp-waiting em:nth-child(2){-webkit-animation-delay:.45s;-moz-animation-delay:.45s;animation-delay:.45s}
|
20 |
+
.flowplayer .fp-waiting em:nth-child(3){-webkit-animation-delay:.6s;-moz-animation-delay:.6s;animation-delay:.6s}
|
21 |
+
.flowplayer .fp-waiting p{color:#ccc;font-weight:bold}
|
22 |
+
.flowplayer .fp-speed{font-size:30px;background-color:#333;background-color:rgba(51,51,51,0.8);color:#eee;margin:0 auto;text-align:center;width:120px;padding:.1em 0 0;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .5s;-moz-transition:opacity .5s;transition:opacity .5s;}
|
23 |
+
.flowplayer .fp-speed.fp-hilite{opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
24 |
+
.flowplayer .fp-help{position:absolute;top:0;left:-9999em;z-index:100;background-color:#333;background-color:rgba(51,51,51,0.9);width:100%;height:100%;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .2s;-moz-transition:opacity .2s;transition:opacity .2s;text-align:center;}
|
25 |
+
.is-help.flowplayer .fp-help{left:0;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
26 |
+
.flowplayer .fp-help .fp-help-section{margin:3%}
|
27 |
+
.flowplayer .fp-help .fp-help-basics{margin-top:6%}
|
28 |
+
.flowplayer .fp-help p{color:#eee;margin:.5em 0;font-size:14px;line-height:1.5;display:inline-block;margin:1% 2%}
|
29 |
+
.flowplayer .fp-help em{background:#eee;-webkit-border-radius:.3em;-moz-border-radius:.3em;border-radius:.3em;margin-right:.4em;padding:.3em .6em;color:#333}
|
30 |
+
.flowplayer .fp-help small{font-size:90%;color:#aaa}
|
31 |
+
.flowplayer .fp-help .fp-close{display:block}
|
32 |
+
@media (max-width: 600px){.flowplayer .fp-help p{font-size:9px}
|
33 |
+
}.flowplayer .fp-subtitle{position:absolute;bottom:40px;left:-99999em;z-index:10;text-align:center;width:100%;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .3s;-moz-transition:opacity .3s;transition:opacity .3s;}
|
34 |
+
.flowplayer .fp-subtitle p{display:inline;background-color:#333;background-color:rgba(51,51,51,0.9);color:#eee;padding:.1em .4em;font-size:16px;line-height:1.6;}
|
35 |
+
.flowplayer .fp-subtitle p:after{content:'';clear:both}
|
36 |
+
.flowplayer .fp-subtitle.fp-active{left:0;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
37 |
+
.flowplayer .fp-fullscreen,.flowplayer .fp-unload,.flowplayer .fp-mute,.flowplayer .fp-embed,.flowplayer .fp-close,.flowplayer .fp-play{background-image:url(img/white.png);background-size:37px 300px;}
|
38 |
+
.color-light.flowplayer .fp-fullscreen,.color-light.flowplayer .fp-unload,.color-light.flowplayer .fp-mute,.color-light.flowplayer .fp-embed,.color-light.flowplayer .fp-close,.color-light.flowplayer .fp-play{background-image:url(img/black.png);}
|
39 |
+
@media (-webkit-min-device-pixel-ratio: 2){.color-light.flowplayer .fp-fullscreen,.color-light.flowplayer .fp-unload,.color-light.flowplayer .fp-mute,.color-light.flowplayer .fp-embed,.color-light.flowplayer .fp-close,.color-light.flowplayer .fp-play{background-image:url(img/black@x2.png)}
|
40 |
+
}@media (-webkit-min-device-pixel-ratio: 2){.flowplayer .fp-fullscreen,.flowplayer .fp-unload,.flowplayer .fp-mute,.flowplayer .fp-embed,.flowplayer .fp-close,.flowplayer .fp-play{background-image:url(img/white@x2.png)}
|
41 |
+
}.is-splash.flowplayer .fp-ui,.is-paused.flowplayer .fp-ui{background:url(img/play_white.png) center no-repeat;background-size:12%;}
|
42 |
+
@media (-webkit-min-device-pixel-ratio: 2){.is-splash.flowplayer .fp-ui,.is-paused.flowplayer .fp-ui{background:url(img/play_white@x2.png) center no-repeat;background-size:12%}
|
43 |
+
}.color-light.is-splash.flowplayer .fp-ui,.color-light.is-paused.flowplayer .fp-ui{background-image:url(img/play_black.png)}
|
44 |
+
@media (-webkit-min-device-pixel-ratio: 2){.color-light.is-splash.flowplayer .fp-ui,.color-light.is-paused.flowplayer .fp-ui{background-image:url(img/play_black@x2.png)}
|
45 |
+
}.is-fullscreen.flowplayer .fp-ui{background-size:auto}
|
46 |
+
.is-seeking.flowplayer .fp-ui,.is-loading.flowplayer .fp-ui{background-image:none}
|
47 |
+
.flowplayer .fp-logo{position:absolute;top:auto;left:15px;bottom:40px;cursor:pointer;display:none;z-index:100;}
|
48 |
+
.flowplayer .fp-logo img{width:100%}
|
49 |
+
.is-embedded.flowplayer .fp-logo{display:block}
|
50 |
+
.fixed-controls.flowplayer .fp-logo{bottom:15px}
|
51 |
+
.flowplayer .fp-fullscreen,.flowplayer .fp-unload,.flowplayer .fp-close{position:absolute;top:10px;left:auto;right:10px;display:block;width:30px;height:23px;background-position:12px -197px;cursor:pointer}
|
52 |
+
.flowplayer .fp-unload,.flowplayer .fp-close{background-position:14px -175px;display:none}
|
53 |
+
.flowplayer .fp-play{display:none;width:27px;height:30px;background-position:9px -24px;position:absolute;bottom:0;left:0;}
|
54 |
+
.play-button.flowplayer .fp-play{display:block}
|
55 |
+
.is-paused.flowplayer .fp-play{background-position:9px 7px}
|
56 |
+
.flowplayer.is-ready.is-closeable .fp-unload{display:block}
|
57 |
+
.flowplayer.is-ready.is-closeable .fp-fullscreen{display:none}
|
58 |
+
.flowplayer.is-fullscreen .fp-fullscreen{background-position:10px -217px;display:block !important}
|
59 |
+
.flowplayer.is-fullscreen .fp-unload,.flowplayer.is-fullscreen .fp-close{display:none !important}
|
60 |
+
.flowplayer .fp-timeline{height:3px;position:relative;overflow:hidden;top:10px;height:10px;margin:0 165px 0 55px;}
|
61 |
+
.no-volume.flowplayer .fp-timeline{margin-right:75px}
|
62 |
+
.no-mute.flowplayer .fp-timeline{margin-right:55px}
|
63 |
+
.play-button.flowplayer .fp-timeline{margin-left:72px}
|
64 |
+
.is-long.flowplayer .fp-timeline{margin:0 195px 0 85px;}
|
65 |
+
.no-volume.is-long.flowplayer .fp-timeline{margin-right:105px}
|
66 |
+
.no-mute.is-long.flowplayer .fp-timeline{margin-right:85px}
|
67 |
+
.play-button.is-long.flowplayer .fp-timeline{margin-left:102px}
|
68 |
+
.aside-time.flowplayer .fp-timeline,.no-time.flowplayer .fp-timeline{margin:0 120px 0 10px}
|
69 |
+
.aside-time.no-volume.flowplayer .fp-timeline,.no-time.no-volume.flowplayer .fp-timeline{margin-right:30px}
|
70 |
+
.aside-time.no-mute.flowplayer .fp-timeline,.no-time.no-mute.flowplayer .fp-timeline{margin-right:10px}
|
71 |
+
.play-button.no-time.flowplayer .fp-timeline,.play-button.aside-time.flowplayer .fp-timeline{margin-left:27px}
|
72 |
+
.flowplayer .fp-buffer,.flowplayer .fp-progress{position:absolute;top:0;left:auto;height:100%;cursor:col-resize}
|
73 |
+
.flowplayer .fp-buffer{-webkit-transition:width .25s linear;-moz-transition:width .25s linear;transition:width .25s linear}
|
74 |
+
.flowplayer .fp-volume{position:absolute;top:11px;right:10px}
|
75 |
+
.flowplayer .fp-mute{width:10px;height:15px;float:left;position:relative;top:-3.5px;left:;cursor:pointer;background-position:-2px -99px;}
|
76 |
+
.no-mute.flowplayer .fp-mute{display:none}
|
77 |
+
.flowplayer .fp-volumeslider{width:90px;height:8px;cursor:col-resize;float:left;}
|
78 |
+
.no-volume.flowplayer .fp-volumeslider{display:none}
|
79 |
+
.flowplayer .fp-volumelevel{height:100%}
|
80 |
+
.flowplayer .fp-time{text-shadow:0 0 1px #000;font-size:12px;font-weight:bold;color:#fff;width:100%;}
|
81 |
+
.flowplayer .fp-time.is-inverted .fp-duration{display:none}
|
82 |
+
.flowplayer .fp-time.is-inverted .fp-remaining{display:inline}
|
83 |
+
.flowplayer .fp-time em{width:35px;height:10px;line-height:10px;text-align:center;position:absolute;bottom:10px}
|
84 |
+
.no-time.flowplayer .fp-time{display:none}
|
85 |
+
.is-long.flowplayer .fp-time em{width:65px}
|
86 |
+
.flowplayer .fp-elapsed{left:10px;}
|
87 |
+
.play-button.flowplayer .fp-elapsed{left:27px}
|
88 |
+
.flowplayer .fp-remaining,.flowplayer .fp-duration{right:120px;color:#eee;}
|
89 |
+
.no-volume.flowplayer .fp-remaining,.no-volume.flowplayer .fp-duration{right:30px}
|
90 |
+
.no-mute.flowplayer .fp-remaining,.no-mute.flowplayer .fp-duration{right:10px}
|
91 |
+
.flowplayer .fp-remaining{display:none}
|
92 |
+
.flowplayer.color-light .fp-time{color:#222;text-shadow:0 0 1px #fff}
|
93 |
+
.flowplayer.color-light .fp-remaining,.flowplayer.color-light .fp-duration{color:#666}
|
94 |
+
.flowplayer.aside-time .fp-time{position:absolute;top:10px;left:10px;bottom:auto !important;width:100px;}
|
95 |
+
.flowplayer.aside-time .fp-time strong,.flowplayer.aside-time .fp-time em{position:static}
|
96 |
+
.flowplayer.aside-time .fp-time .fp-elapsed{margin-right:10px}
|
97 |
+
.flowplayer.is-long.aside-time .fp-time{width:130px}
|
98 |
+
.flowplayer.is-splash,.flowplayer.is-poster{cursor:pointer;}
|
99 |
+
.flowplayer.is-splash .fp-controls,.flowplayer.is-poster .fp-controls,.flowplayer.is-splash .fp-fullscreen,.flowplayer.is-poster .fp-fullscreen,.flowplayer.is-splash .fp-unload,.flowplayer.is-poster .fp-unload,.flowplayer.is-splash .fp-time,.flowplayer.is-poster .fp-time,.flowplayer.is-splash .fp-embed,.flowplayer.is-poster .fp-embed{display:none !important}
|
100 |
+
.flowplayer.is-poster .fp-engine{top:-9999em}
|
101 |
+
.flowplayer.is-loading .fp-waiting{display:block}
|
102 |
+
.flowplayer.is-loading .fp-controls,.flowplayer.is-loading .fp-time{display:none}
|
103 |
+
.flowplayer.is-loading .fp-ui{background-position:-9999em}
|
104 |
+
.flowplayer.is-seeking .fp-waiting{display:block}
|
105 |
+
.flowplayer.is-fullscreen{position:fixed !important;top:0 !important;left:0 !important;border:0 !important;margin:0 !important;width:100% !important;height:100% !important;max-width:100% !important;z-index:99999 !important;-webkit-box-shadow:0 !important;-moz-box-shadow:0 !important;box-shadow:0 !important;background-image:none !important;background-color:#333}
|
106 |
+
.flowplayer.is-error{border:1px solid #909090;background:#fdfdfd !important;}
|
107 |
+
.flowplayer.is-error h2{font-weight:bold;font-size:large;margin-top:10%}
|
108 |
+
.flowplayer.is-error .fp-message{display:block}
|
109 |
+
.flowplayer.is-error object,.flowplayer.is-error video,.flowplayer.is-error .fp-controls,.flowplayer.is-error .fp-time,.flowplayer.is-error .fp-subtitle{display:none}
|
110 |
+
.flowplayer.is-ready.is-muted .fp-mute{opacity:.5;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=50)}
|
111 |
+
.flowplayer.is-mouseout .fp-controls{height:0;-webkit-transition:height .15s .3s;-moz-transition:height .15s .3s;transition:height .15s .3s}
|
112 |
+
.flowplayer.is-mouseout .fp-timeline{margin:0 !important}
|
113 |
+
.flowplayer.is-mouseout .fp-timeline{-webkit-transition:height .15s .3s,top .15s .3s,margin .15s .3s;-moz-transition:height .15s .3s,top .15s .3s,margin .15s .3s;transition:height .15s .3s,top .15s .3s,margin .15s .3s;height:4px;top:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}
|
114 |
+
.flowplayer.is-mouseout .fp-fullscreen,.flowplayer.is-mouseout .fp-unload,.flowplayer.is-mouseout .fp-elapsed,.flowplayer.is-mouseout .fp-remaining,.flowplayer.is-mouseout .fp-duration,.flowplayer.is-mouseout .fp-embed,.flowplayer.is-mouseout .fp-volume,.flowplayer.is-mouseout .fp-play{opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .15s .3s;-moz-transition:opacity .15s .3s;transition:opacity .15s .3s}
|
115 |
+
.flowplayer.is-mouseover .fp-controls,.flowplayer.fixed-controls .fp-controls{height:30px}
|
116 |
+
.flowplayer.is-mouseover .fp-fullscreen,.flowplayer.fixed-controls .fp-fullscreen,.flowplayer.is-mouseover .fp-unload,.flowplayer.fixed-controls .fp-unload,.flowplayer.is-mouseover .fp-elapsed,.flowplayer.fixed-controls .fp-elapsed,.flowplayer.is-mouseover .fp-remaining,.flowplayer.fixed-controls .fp-remaining,.flowplayer.is-mouseover .fp-duration,.flowplayer.fixed-controls .fp-duration,.flowplayer.is-mouseover .fp-embed,.flowplayer.fixed-controls .fp-embed,.flowplayer.is-mouseover .fp-logo,.flowplayer.fixed-controls .fp-logo,.flowplayer.is-mouseover .fp-volume,.flowplayer.fixed-controls .fp-volume,.flowplayer.is-mouseover .fp-play,.flowplayer.fixed-controls .fp-play{opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
117 |
+
.flowplayer.fixed-controls .fp-volume{display:block}
|
118 |
+
.flowplayer.fixed-controls .fp-controls{bottom:-30px;}
|
119 |
+
.is-fullscreen.flowplayer.fixed-controls .fp-controls{bottom:0}
|
120 |
+
.flowplayer.fixed-controls .fp-time em{bottom:-20px;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);}
|
121 |
+
.is-fullscreen.flowplayer.fixed-controls .fp-time em{bottom:10px}
|
122 |
+
.flowplayer.is-disabled .fp-progress{background-color:#999}
|
123 |
+
.flowplayer .fp-embed{position:absolute;top:10px;left:10px;display:block;width:25px;height:20px;background-position:3px -237px}
|
124 |
+
.flowplayer .fp-embed-code{position:absolute;display:none;top:10px;left:40px;background-color:#333;padding:3px 5px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 3px #ccc;-moz-box-shadow:0 0 3px #ccc;box-shadow:0 0 3px #ccc;font-size:12px;}
|
125 |
+
.flowplayer .fp-embed-code:before{content:'';width:0;height:0;position:absolute;top:2px;left:-10px;border:5px solid transparent;border-right-color:#333}
|
126 |
+
.flowplayer .fp-embed-code textarea{width:400px;height:16px;font-family:monaco,"courier new",verdana;color:#777;white-space:nowrap;resize:none;overflow:hidden;border:0;outline:0;background-color:transparent;color:#ccc}
|
127 |
+
.flowplayer .fp-embed-code label{display:block;color:#999}
|
128 |
+
.flowplayer.is-embedding .fp-embed,.flowplayer.is-embedding .fp-embed-code{display:block;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
129 |
+
.flowplayer.aside-time .fp-embed{left:100px}
|
130 |
+
.flowplayer.aside-time .fp-embed-code{left:130px}
|
131 |
+
.flowplayer.aside-time.is-embedding .fp-time{opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
132 |
+
.flowplayer.is-long.aside-time .fp-embed{left:130px}
|
133 |
+
.flowplayer.no-time .fp-embed{left:10px !important}
|
134 |
+
@-moz-keyframes pulse{0%{opacity:0}
|
135 |
+
100%{opacity:1}
|
136 |
+
}@-webkit-keyframes pulse{0%{opacity:0}
|
137 |
+
100%{opacity:1}
|
138 |
+
}@-o-keyframes pulse{0%{opacity:0}
|
139 |
+
100%{opacity:1}
|
140 |
+
}@-ms-keyframes pulse{0%{opacity:0}
|
141 |
+
100%{opacity:1}
|
142 |
+
}@keyframes pulse{0%{opacity:0}
|
143 |
+
100%{opacity:1}
|
144 |
+
}.flowplayer .fp-controls{background-color:#111}
|
145 |
+
.flowplayer .fp-timeline{background-color:#555}
|
146 |
+
.flowplayer .fp-buffer{background-color:#eee}
|
147 |
+
.flowplayer .fp-progress{background-color:#4da5d8}
|
148 |
+
.flowplayer .fp-volumelevel{background-color:#fff}
|
149 |
+
.flowplayer .fp-volumeslider{background-color:#555}
|
150 |
+
.flowplayer .fp-timeline,.flowplayer .fp-volumeslider{border:1px inset;border-color:rgba(0,0,0,0.2) rgba(17,17,17,0.05)}
|
151 |
+
.flowplayer .fp-controls,.flowplayer .fp-progress{background-image:-moz-linear-gradient(rgba(255,255,255,0.4),rgba(255,255,255,0.01));background-image:-webkit-gradient(linear,0 0,0 100%,from(rgba(255,255,255,0.4)),to(rgba(255,255,255,0.01)))}
|
152 |
+
.flowplayer .fp-timeline,.flowplayer .fp-buffer,.flowplayer .fp-progress,.flowplayer .fp-volumeslider,.flowplayer .fp-volumelevel{-webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px}
|
153 |
+
.flowplayer.color-light .fp-controls{background-color:#eee;background-image:-moz-linear-gradient(rgba(0,0,0,0.01),rgba(0,0,0,0.3));background-image:-webkit-gradient(linear,0 0,0 100%,from(rgba(0,0,0,0.01)),to(rgba(0,0,0,0.3)))}
|
154 |
+
.flowplayer.color-light .fp-timeline,.flowplayer.color-light .fp-volumeslider{border-color:#eee #ccc}
|
155 |
+
.flowplayer.color-light .fp-timeline,.flowplayer.color-light .fp-volumeslider{background-color:#ccc;font-size:10px}
|
156 |
+
.flowplayer.color-alt .fp-progress{background-image:-moz-linear-gradient(#999,#111);background-image:-webkit-gradient(linear,0 0,0 100%,from(#999),to(#111))}
|
157 |
+
.flowplayer.color-alt .fp-timeline,.flowplayer.color-alt .fp-volumeslider{background-color:#111}
|
158 |
+
.flowplayer.color-alt2 .fp-progress{background-color:#900}
|
lib/img/Thumbs.db
ADDED
Binary file
|
lib/img/black.png
ADDED
Binary file
|
lib/img/black@x2.png
ADDED
Binary file
|
lib/img/play_black.png
ADDED
Binary file
|
lib/img/play_black@x2.png
ADDED
Binary file
|
lib/img/play_white.png
ADDED
Binary file
|
lib/img/play_white@x2.png
ADDED
Binary file
|
lib/img/playful_black.png
ADDED
Binary file
|
lib/img/playful_black@x2.png
ADDED
Binary file
|
lib/img/playful_white.png
ADDED
Binary file
|
lib/img/playful_white@x2.png
ADDED
Binary file
|
lib/img/white.png
ADDED
Binary file
|
lib/img/white@x2.png
ADDED
Binary file
|
lib/minimalist.css
ADDED
@@ -0,0 +1,158 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.flowplayer{position:relative;width:100%;text-align:left;background-size:contain;background-repeat:no-repeat;background-position:center center;display:inline-block;}
|
2 |
+
.flowplayer *{font-weight:inherit;font-family:inherit;font-style:inherit;text-decoration:inherit;font-size:100%;padding:0;border:0;margin:0;list-style-type:none}
|
3 |
+
.flowplayer a:focus{outline:0}
|
4 |
+
.flowplayer video{width:100%}
|
5 |
+
.flowplayer.is-ipad video{-webkit-transform:translateX(-2048px);}
|
6 |
+
.is-ready.flowplayer.is-ipad video{-webkit-transform:translateX(0)}
|
7 |
+
.flowplayer .fp-engine,.flowplayer .fp-ui,.flowplayer .fp-message{position:absolute;top:0;left:0;width:100%;height:100%;cursor:pointer;z-index:1}
|
8 |
+
.flowplayer .fp-message{display:none;text-align:center;padding-top:5%;cursor:default;}
|
9 |
+
.flowplayer .fp-message h2{font-size:120%;margin-bottom:1em}
|
10 |
+
.flowplayer .fp-message p{color:#666;font-size:95%}
|
11 |
+
.flowplayer .fp-controls{position:absolute;bottom:0;width:100%;}
|
12 |
+
.no-background.flowplayer .fp-controls{background-color:transparent !important;background-image:-moz-linear-gradient(transparent,transparent) !important;background-image:-webkit-gradient(linear,0 0,0 100%,from(transparent),to(transparent)) !important}
|
13 |
+
.is-fullscreen.flowplayer .fp-controls{bottom:3px}
|
14 |
+
.is-mouseover.flowplayer .fp-controls{bottom:0}
|
15 |
+
.flowplayer .fp-waiting{display:none;margin:19% auto;text-align:center;}
|
16 |
+
.flowplayer .fp-waiting *{-webkit-box-shadow:0 0 5px #333;-moz-box-shadow:0 0 5px #333;box-shadow:0 0 5px #333}
|
17 |
+
.flowplayer .fp-waiting em{width:1em;height:1em;-webkit-border-radius:1em;-moz-border-radius:1em;border-radius:1em;background-color:rgba(255,255,255,0.8);display:inline-block;-webkit-animation:pulse .6s infinite;-moz-animation:pulse .6s infinite;animation:pulse .6s infinite;margin:.3em;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);}
|
18 |
+
.flowplayer .fp-waiting em:nth-child(1){-webkit-animation-delay:.3s;-moz-animation-delay:.3s;animation-delay:.3s}
|
19 |
+
.flowplayer .fp-waiting em:nth-child(2){-webkit-animation-delay:.45s;-moz-animation-delay:.45s;animation-delay:.45s}
|
20 |
+
.flowplayer .fp-waiting em:nth-child(3){-webkit-animation-delay:.6s;-moz-animation-delay:.6s;animation-delay:.6s}
|
21 |
+
.flowplayer .fp-waiting p{color:#ccc;font-weight:bold}
|
22 |
+
.flowplayer .fp-speed{font-size:30px;background-color:#333;background-color:rgba(51,51,51,0.8);color:#eee;margin:0 auto;text-align:center;width:120px;padding:.1em 0 0;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .5s;-moz-transition:opacity .5s;transition:opacity .5s;}
|
23 |
+
.flowplayer .fp-speed.fp-hilite{opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
24 |
+
.flowplayer .fp-help{position:absolute;top:0;left:-9999em;z-index:100;background-color:#333;background-color:rgba(51,51,51,0.9);width:100%;height:100%;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .2s;-moz-transition:opacity .2s;transition:opacity .2s;text-align:center;}
|
25 |
+
.is-help.flowplayer .fp-help{left:0;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
26 |
+
.flowplayer .fp-help .fp-help-section{margin:3%}
|
27 |
+
.flowplayer .fp-help .fp-help-basics{margin-top:6%}
|
28 |
+
.flowplayer .fp-help p{color:#eee;margin:.5em 0;font-size:14px;line-height:1.5;display:inline-block;margin:1% 2%}
|
29 |
+
.flowplayer .fp-help em{background:#eee;-webkit-border-radius:.3em;-moz-border-radius:.3em;border-radius:.3em;margin-right:.4em;padding:.3em .6em;color:#333}
|
30 |
+
.flowplayer .fp-help small{font-size:90%;color:#aaa}
|
31 |
+
.flowplayer .fp-help .fp-close{display:block}
|
32 |
+
@media (max-width: 600px){.flowplayer .fp-help p{font-size:9px}
|
33 |
+
}.flowplayer .fp-subtitle{position:absolute;bottom:40px;left:-99999em;z-index:10;text-align:center;width:100%;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .3s;-moz-transition:opacity .3s;transition:opacity .3s;}
|
34 |
+
.flowplayer .fp-subtitle p{display:inline;background-color:#333;background-color:rgba(51,51,51,0.9);color:#eee;padding:.1em .4em;font-size:16px;line-height:1.6;}
|
35 |
+
.flowplayer .fp-subtitle p:after{content:'';clear:both}
|
36 |
+
.flowplayer .fp-subtitle.fp-active{left:0;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
37 |
+
.flowplayer .fp-fullscreen,.flowplayer .fp-unload,.flowplayer .fp-mute,.flowplayer .fp-embed,.flowplayer .fp-close,.flowplayer .fp-play{background-image:url(img/white.png);background-size:37px 300px;}
|
38 |
+
.color-light.flowplayer .fp-fullscreen,.color-light.flowplayer .fp-unload,.color-light.flowplayer .fp-mute,.color-light.flowplayer .fp-embed,.color-light.flowplayer .fp-close,.color-light.flowplayer .fp-play{background-image:url(img/black.png);}
|
39 |
+
@media (-webkit-min-device-pixel-ratio: 2){.color-light.flowplayer .fp-fullscreen,.color-light.flowplayer .fp-unload,.color-light.flowplayer .fp-mute,.color-light.flowplayer .fp-embed,.color-light.flowplayer .fp-close,.color-light.flowplayer .fp-play{background-image:url(img/black@x2.png)}
|
40 |
+
}@media (-webkit-min-device-pixel-ratio: 2){.flowplayer .fp-fullscreen,.flowplayer .fp-unload,.flowplayer .fp-mute,.flowplayer .fp-embed,.flowplayer .fp-close,.flowplayer .fp-play{background-image:url(img/white@x2.png)}
|
41 |
+
}.is-splash.flowplayer .fp-ui,.is-paused.flowplayer .fp-ui{background:url(img/play_white.png) center no-repeat;background-size:12%;}
|
42 |
+
@media (-webkit-min-device-pixel-ratio: 2){.is-splash.flowplayer .fp-ui,.is-paused.flowplayer .fp-ui{background:url(img/play_white@x2.png) center no-repeat;background-size:12%}
|
43 |
+
}.color-light.is-splash.flowplayer .fp-ui,.color-light.is-paused.flowplayer .fp-ui{background-image:url(img/play_black.png)}
|
44 |
+
@media (-webkit-min-device-pixel-ratio: 2){.color-light.is-splash.flowplayer .fp-ui,.color-light.is-paused.flowplayer .fp-ui{background-image:url(img/play_black@x2.png)}
|
45 |
+
}.is-fullscreen.flowplayer .fp-ui{background-size:auto}
|
46 |
+
.is-seeking.flowplayer .fp-ui,.is-loading.flowplayer .fp-ui{background-image:none}
|
47 |
+
.flowplayer .fp-logo{position:absolute;top:auto;left:15px;bottom:30px;cursor:pointer;display:none;z-index:100;}
|
48 |
+
.flowplayer .fp-logo img{width:100%}
|
49 |
+
.is-embedded.flowplayer .fp-logo{display:block}
|
50 |
+
.fixed-controls.flowplayer .fp-logo{bottom:15px}
|
51 |
+
.flowplayer .fp-fullscreen,.flowplayer .fp-unload,.flowplayer .fp-close{position:absolute;top:5px;left:auto;right:5px;display:block;width:30px;height:23px;background-position:12px -197px;cursor:pointer}
|
52 |
+
.flowplayer .fp-unload,.flowplayer .fp-close{background-position:14px -175px;display:none}
|
53 |
+
.flowplayer .fp-play{display:none;width:27px;height:20px;background-position:9px -24px;position:absolute;bottom:0;left:0;}
|
54 |
+
.play-button.flowplayer .fp-play{display:block}
|
55 |
+
.is-paused.flowplayer .fp-play{background-position:9px 7px}
|
56 |
+
.flowplayer.is-ready.is-closeable .fp-unload{display:block}
|
57 |
+
.flowplayer.is-ready.is-closeable .fp-fullscreen{display:none}
|
58 |
+
.flowplayer.is-fullscreen .fp-fullscreen{background-position:10px -217px;display:block !important}
|
59 |
+
.flowplayer.is-fullscreen .fp-unload,.flowplayer.is-fullscreen .fp-close{display:none !important}
|
60 |
+
.flowplayer .fp-timeline{height:3px;position:relative;overflow:hidden;top:5px;height:10px;margin:0 150px 0 45px;}
|
61 |
+
.no-volume.flowplayer .fp-timeline{margin-right:60px}
|
62 |
+
.no-mute.flowplayer .fp-timeline{margin-right:45px}
|
63 |
+
.play-button.flowplayer .fp-timeline{margin-left:67px}
|
64 |
+
.is-long.flowplayer .fp-timeline{margin:0 180px 0 75px;}
|
65 |
+
.no-volume.is-long.flowplayer .fp-timeline{margin-right:90px}
|
66 |
+
.no-mute.is-long.flowplayer .fp-timeline{margin-right:75px}
|
67 |
+
.play-button.is-long.flowplayer .fp-timeline{margin-left:97px}
|
68 |
+
.aside-time.flowplayer .fp-timeline,.no-time.flowplayer .fp-timeline{margin:0 110px 0 5px}
|
69 |
+
.aside-time.no-volume.flowplayer .fp-timeline,.no-time.no-volume.flowplayer .fp-timeline{margin-right:20px}
|
70 |
+
.aside-time.no-mute.flowplayer .fp-timeline,.no-time.no-mute.flowplayer .fp-timeline{margin-right:5px}
|
71 |
+
.play-button.no-time.flowplayer .fp-timeline,.play-button.aside-time.flowplayer .fp-timeline{margin-left:27px}
|
72 |
+
.flowplayer .fp-buffer,.flowplayer .fp-progress{position:absolute;top:0;left:auto;height:100%;cursor:col-resize}
|
73 |
+
.flowplayer .fp-buffer{-webkit-transition:width .25s linear;-moz-transition:width .25s linear;transition:width .25s linear}
|
74 |
+
.flowplayer .fp-volume{position:absolute;top:7.5px;right:5px}
|
75 |
+
.flowplayer .fp-mute{width:10px;height:15px;float:left;position:relative;top:-5px;left:;cursor:pointer;background-position:-2px -99px;}
|
76 |
+
.no-mute.flowplayer .fp-mute{display:none}
|
77 |
+
.flowplayer .fp-volumeslider{width:90px;height:5px;cursor:col-resize;float:left;}
|
78 |
+
.no-volume.flowplayer .fp-volumeslider{display:none}
|
79 |
+
.flowplayer .fp-volumelevel{height:100%}
|
80 |
+
.flowplayer .fp-time{text-shadow:0 0 1px #000;font-size:12px;font-weight:bold;color:#fff;width:100%;}
|
81 |
+
.flowplayer .fp-time.is-inverted .fp-duration{display:none}
|
82 |
+
.flowplayer .fp-time.is-inverted .fp-remaining{display:inline}
|
83 |
+
.flowplayer .fp-time em{width:35px;height:10px;line-height:10px;text-align:center;position:absolute;bottom:5px}
|
84 |
+
.no-time.flowplayer .fp-time{display:none}
|
85 |
+
.is-long.flowplayer .fp-time em{width:65px}
|
86 |
+
.flowplayer .fp-elapsed{left:5px;}
|
87 |
+
.play-button.flowplayer .fp-elapsed{left:27px}
|
88 |
+
.flowplayer .fp-remaining,.flowplayer .fp-duration{right:110px;color:#eee;}
|
89 |
+
.no-volume.flowplayer .fp-remaining,.no-volume.flowplayer .fp-duration{right:20px}
|
90 |
+
.no-mute.flowplayer .fp-remaining,.no-mute.flowplayer .fp-duration{right:5px}
|
91 |
+
.flowplayer .fp-remaining{display:none}
|
92 |
+
.flowplayer.color-light .fp-time{color:#222;text-shadow:0 0 1px #fff}
|
93 |
+
.flowplayer.color-light .fp-remaining,.flowplayer.color-light .fp-duration{color:#666}
|
94 |
+
.flowplayer.aside-time .fp-time{position:absolute;top:5px;left:5px;bottom:auto !important;width:85px;}
|
95 |
+
.flowplayer.aside-time .fp-time strong,.flowplayer.aside-time .fp-time em{position:static}
|
96 |
+
.flowplayer.aside-time .fp-time .fp-elapsed{margin-right:5px}
|
97 |
+
.flowplayer.is-long.aside-time .fp-time{width:130px}
|
98 |
+
.flowplayer.is-splash,.flowplayer.is-poster{cursor:pointer;}
|
99 |
+
.flowplayer.is-splash .fp-controls,.flowplayer.is-poster .fp-controls,.flowplayer.is-splash .fp-fullscreen,.flowplayer.is-poster .fp-fullscreen,.flowplayer.is-splash .fp-unload,.flowplayer.is-poster .fp-unload,.flowplayer.is-splash .fp-time,.flowplayer.is-poster .fp-time,.flowplayer.is-splash .fp-embed,.flowplayer.is-poster .fp-embed{display:none !important}
|
100 |
+
.flowplayer.is-poster .fp-engine{top:-9999em}
|
101 |
+
.flowplayer.is-loading .fp-waiting{display:block}
|
102 |
+
.flowplayer.is-loading .fp-controls,.flowplayer.is-loading .fp-time{display:none}
|
103 |
+
.flowplayer.is-loading .fp-ui{background-position:-9999em}
|
104 |
+
.flowplayer.is-seeking .fp-waiting{display:block}
|
105 |
+
.flowplayer.is-fullscreen{position:fixed !important;top:0 !important;left:0 !important;border:0 !important;margin:0 !important;width:100% !important;height:100% !important;max-width:100% !important;z-index:99999 !important;-webkit-box-shadow:0 !important;-moz-box-shadow:0 !important;box-shadow:0 !important;background-image:none !important;background-color:#333}
|
106 |
+
.flowplayer.is-error{border:1px solid #909090;background:#fdfdfd !important;}
|
107 |
+
.flowplayer.is-error h2{font-weight:bold;font-size:large;margin-top:10%}
|
108 |
+
.flowplayer.is-error .fp-message{display:block}
|
109 |
+
.flowplayer.is-error object,.flowplayer.is-error video,.flowplayer.is-error .fp-controls,.flowplayer.is-error .fp-time,.flowplayer.is-error .fp-subtitle{display:none}
|
110 |
+
.flowplayer.is-ready.is-muted .fp-mute{opacity:.5;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=50)}
|
111 |
+
.flowplayer.is-mouseout .fp-controls{height:0;-webkit-transition:height .15s .3s;-moz-transition:height .15s .3s;transition:height .15s .3s}
|
112 |
+
.flowplayer.is-mouseout .fp-timeline{margin:0 !important}
|
113 |
+
.flowplayer.is-mouseout .fp-timeline{-webkit-transition:height .15s .3s,top .15s .3s,margin .15s .3s;-moz-transition:height .15s .3s,top .15s .3s,margin .15s .3s;transition:height .15s .3s,top .15s .3s,margin .15s .3s;height:4px;top:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}
|
114 |
+
.flowplayer.is-mouseout .fp-fullscreen,.flowplayer.is-mouseout .fp-unload,.flowplayer.is-mouseout .fp-elapsed,.flowplayer.is-mouseout .fp-remaining,.flowplayer.is-mouseout .fp-duration,.flowplayer.is-mouseout .fp-embed,.flowplayer.is-mouseout .fp-volume,.flowplayer.is-mouseout .fp-play{opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .15s .3s;-moz-transition:opacity .15s .3s;transition:opacity .15s .3s}
|
115 |
+
.flowplayer.is-mouseover .fp-controls,.flowplayer.fixed-controls .fp-controls{height:20px}
|
116 |
+
.flowplayer.is-mouseover .fp-fullscreen,.flowplayer.fixed-controls .fp-fullscreen,.flowplayer.is-mouseover .fp-unload,.flowplayer.fixed-controls .fp-unload,.flowplayer.is-mouseover .fp-elapsed,.flowplayer.fixed-controls .fp-elapsed,.flowplayer.is-mouseover .fp-remaining,.flowplayer.fixed-controls .fp-remaining,.flowplayer.is-mouseover .fp-duration,.flowplayer.fixed-controls .fp-duration,.flowplayer.is-mouseover .fp-embed,.flowplayer.fixed-controls .fp-embed,.flowplayer.is-mouseover .fp-logo,.flowplayer.fixed-controls .fp-logo,.flowplayer.is-mouseover .fp-volume,.flowplayer.fixed-controls .fp-volume,.flowplayer.is-mouseover .fp-play,.flowplayer.fixed-controls .fp-play{opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
117 |
+
.flowplayer.fixed-controls .fp-volume{display:block}
|
118 |
+
.flowplayer.fixed-controls .fp-controls{bottom:-20px;}
|
119 |
+
.is-fullscreen.flowplayer.fixed-controls .fp-controls{bottom:0}
|
120 |
+
.flowplayer.fixed-controls .fp-time em{bottom:-15px;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);}
|
121 |
+
.is-fullscreen.flowplayer.fixed-controls .fp-time em{bottom:5px}
|
122 |
+
.flowplayer.is-disabled .fp-progress{background-color:#999}
|
123 |
+
.flowplayer .fp-embed{position:absolute;top:5px;left:5px;display:block;width:25px;height:20px;background-position:3px -237px}
|
124 |
+
.flowplayer .fp-embed-code{position:absolute;display:none;top:10px;left:40px;background-color:#333;padding:3px 5px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 3px #ccc;-moz-box-shadow:0 0 3px #ccc;box-shadow:0 0 3px #ccc;font-size:12px;}
|
125 |
+
.flowplayer .fp-embed-code:before{content:'';width:0;height:0;position:absolute;top:2px;left:-10px;border:5px solid transparent;border-right-color:#333}
|
126 |
+
.flowplayer .fp-embed-code textarea{width:400px;height:16px;font-family:monaco,"courier new",verdana;color:#777;white-space:nowrap;resize:none;overflow:hidden;border:0;outline:0;background-color:transparent;color:#ccc}
|
127 |
+
.flowplayer .fp-embed-code label{display:block;color:#999}
|
128 |
+
.flowplayer.is-embedding .fp-embed,.flowplayer.is-embedding .fp-embed-code{display:block;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
129 |
+
.flowplayer.aside-time .fp-embed{left:85px}
|
130 |
+
.flowplayer.aside-time .fp-embed-code{left:115px}
|
131 |
+
.flowplayer.aside-time.is-embedding .fp-time{opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
132 |
+
.flowplayer.is-long.aside-time .fp-embed{left:130px}
|
133 |
+
.flowplayer.no-time .fp-embed{left:5px !important}
|
134 |
+
@-moz-keyframes pulse{0%{opacity:0}
|
135 |
+
100%{opacity:1}
|
136 |
+
}@-webkit-keyframes pulse{0%{opacity:0}
|
137 |
+
100%{opacity:1}
|
138 |
+
}@-o-keyframes pulse{0%{opacity:0}
|
139 |
+
100%{opacity:1}
|
140 |
+
}@-ms-keyframes pulse{0%{opacity:0}
|
141 |
+
100%{opacity:1}
|
142 |
+
}@keyframes pulse{0%{opacity:0}
|
143 |
+
100%{opacity:1}
|
144 |
+
}.flowplayer .fp-controls{background-color:#333;background-color:rgba(51,51,51,0.6)}
|
145 |
+
.flowplayer.fixed-controls .fp-controls{background-color:#333}
|
146 |
+
.flowplayer .fp-timeline{background-color:#666}
|
147 |
+
.flowplayer .fp-buffer{background-color:#eee}
|
148 |
+
.flowplayer .fp-progress{background-color:#00a7c8}
|
149 |
+
.flowplayer .fp-volumeslider{background-color:#000}
|
150 |
+
.flowplayer .fp-volumelevel{background-color:#fff}
|
151 |
+
.flowplayer .fp-play{height:24px}
|
152 |
+
.flowplayer.color-light .fp-controls{background-color:rgba(255,255,255,0.6)}
|
153 |
+
.flowplayer.color-light.fixed-controls .fp-controls{background-color:#fff}
|
154 |
+
.flowplayer.color-light .fp-volumeslider{background-color:#ddd}
|
155 |
+
.flowplayer.color-light .fp-volumelevel{background-color:#222}
|
156 |
+
.flowplayer.color-alt .fp-progress{background-color:#fff}
|
157 |
+
.flowplayer.color-alt .fp-buffer{background-color:#999}
|
158 |
+
.flowplayer.color-alt2 .fp-progress{background-color:#900}
|
lib/playful.css
ADDED
@@ -0,0 +1,159 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.flowplayer{position:relative;width:100%;text-align:left;background-size:contain;background-repeat:no-repeat;background-position:center center;display:inline-block;}
|
2 |
+
.flowplayer *{font-weight:inherit;font-family:inherit;font-style:inherit;text-decoration:inherit;font-size:100%;padding:0;border:0;margin:0;list-style-type:none}
|
3 |
+
.flowplayer a:focus{outline:0}
|
4 |
+
.flowplayer video{width:100%}
|
5 |
+
.flowplayer.is-ipad video{-webkit-transform:translateX(-2048px);}
|
6 |
+
.is-ready.flowplayer.is-ipad video{-webkit-transform:translateX(0)}
|
7 |
+
.flowplayer .fp-engine,.flowplayer .fp-ui,.flowplayer .fp-message{position:absolute;top:0;left:0;width:100%;height:100%;cursor:pointer;z-index:1}
|
8 |
+
.flowplayer .fp-message{display:none;text-align:center;padding-top:5%;cursor:default;}
|
9 |
+
.flowplayer .fp-message h2{font-size:120%;margin-bottom:1em}
|
10 |
+
.flowplayer .fp-message p{color:#666;font-size:95%}
|
11 |
+
.flowplayer .fp-controls{position:absolute;bottom:0;width:100%;}
|
12 |
+
.no-background.flowplayer .fp-controls{background-color:transparent !important;background-image:-moz-linear-gradient(transparent,transparent) !important;background-image:-webkit-gradient(linear,0 0,0 100%,from(transparent),to(transparent)) !important}
|
13 |
+
.is-fullscreen.flowplayer .fp-controls{bottom:3px}
|
14 |
+
.is-mouseover.flowplayer .fp-controls{bottom:0}
|
15 |
+
.flowplayer .fp-waiting{display:none;margin:19% auto;text-align:center;}
|
16 |
+
.flowplayer .fp-waiting *{-webkit-box-shadow:0 0 5px #333;-moz-box-shadow:0 0 5px #333;box-shadow:0 0 5px #333}
|
17 |
+
.flowplayer .fp-waiting em{width:1em;height:1em;-webkit-border-radius:1em;-moz-border-radius:1em;border-radius:1em;background-color:rgba(255,255,255,0.8);display:inline-block;-webkit-animation:pulse .6s infinite;-moz-animation:pulse .6s infinite;animation:pulse .6s infinite;margin:.3em;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);}
|
18 |
+
.flowplayer .fp-waiting em:nth-child(1){-webkit-animation-delay:.3s;-moz-animation-delay:.3s;animation-delay:.3s}
|
19 |
+
.flowplayer .fp-waiting em:nth-child(2){-webkit-animation-delay:.45s;-moz-animation-delay:.45s;animation-delay:.45s}
|
20 |
+
.flowplayer .fp-waiting em:nth-child(3){-webkit-animation-delay:.6s;-moz-animation-delay:.6s;animation-delay:.6s}
|
21 |
+
.flowplayer .fp-waiting p{color:#ccc;font-weight:bold}
|
22 |
+
.flowplayer .fp-speed{font-size:30px;background-color:#333;background-color:rgba(51,51,51,0.8);color:#eee;margin:0 auto;text-align:center;width:120px;padding:.1em 0 0;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .5s;-moz-transition:opacity .5s;transition:opacity .5s;}
|
23 |
+
.flowplayer .fp-speed.fp-hilite{opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
24 |
+
.flowplayer .fp-help{position:absolute;top:0;left:-9999em;z-index:100;background-color:#333;background-color:rgba(51,51,51,0.9);width:100%;height:100%;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .2s;-moz-transition:opacity .2s;transition:opacity .2s;text-align:center;}
|
25 |
+
.is-help.flowplayer .fp-help{left:0;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
26 |
+
.flowplayer .fp-help .fp-help-section{margin:3%}
|
27 |
+
.flowplayer .fp-help .fp-help-basics{margin-top:6%}
|
28 |
+
.flowplayer .fp-help p{color:#eee;margin:.5em 0;font-size:14px;line-height:1.5;display:inline-block;margin:1% 2%}
|
29 |
+
.flowplayer .fp-help em{background:#eee;-webkit-border-radius:.3em;-moz-border-radius:.3em;border-radius:.3em;margin-right:.4em;padding:.3em .6em;color:#333}
|
30 |
+
.flowplayer .fp-help small{font-size:90%;color:#aaa}
|
31 |
+
.flowplayer .fp-help .fp-close{display:block}
|
32 |
+
@media (max-width: 600px){.flowplayer .fp-help p{font-size:9px}
|
33 |
+
}.flowplayer .fp-subtitle{position:absolute;bottom:40px;left:-99999em;z-index:10;text-align:center;width:100%;opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .3s;-moz-transition:opacity .3s;transition:opacity .3s;}
|
34 |
+
.flowplayer .fp-subtitle p{display:inline;background-color:#333;background-color:rgba(51,51,51,0.9);color:#eee;padding:.1em .4em;font-size:16px;line-height:1.6;}
|
35 |
+
.flowplayer .fp-subtitle p:after{content:'';clear:both}
|
36 |
+
.flowplayer .fp-subtitle.fp-active{left:0;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
37 |
+
.flowplayer .fp-fullscreen,.flowplayer .fp-unload,.flowplayer .fp-mute,.flowplayer .fp-embed,.flowplayer .fp-close,.flowplayer .fp-play{background-image:url(img/playful_white.png);background-size:37px 300px;}
|
38 |
+
.color-light.flowplayer .fp-fullscreen,.color-light.flowplayer .fp-unload,.color-light.flowplayer .fp-mute,.color-light.flowplayer .fp-embed,.color-light.flowplayer .fp-close,.color-light.flowplayer .fp-play{background-image:url(img/playful_black.png);}
|
39 |
+
@media (-webkit-min-device-pixel-ratio: 2){.color-light.flowplayer .fp-fullscreen,.color-light.flowplayer .fp-unload,.color-light.flowplayer .fp-mute,.color-light.flowplayer .fp-embed,.color-light.flowplayer .fp-close,.color-light.flowplayer .fp-play{background-image:url(img/playful_black@x2.png)}
|
40 |
+
}@media (-webkit-min-device-pixel-ratio: 2){.flowplayer .fp-fullscreen,.flowplayer .fp-unload,.flowplayer .fp-mute,.flowplayer .fp-embed,.flowplayer .fp-close,.flowplayer .fp-play{background-image:url(img/playful_white@x2.png)}
|
41 |
+
}.is-splash.flowplayer .fp-ui,.is-paused.flowplayer .fp-ui{background:url(img/play_white.png) center no-repeat;background-size:12%;}
|
42 |
+
@media (-webkit-min-device-pixel-ratio: 2){.is-splash.flowplayer .fp-ui,.is-paused.flowplayer .fp-ui{background:url(img/play_white@x2.png) center no-repeat;background-size:12%}
|
43 |
+
}.color-light.is-splash.flowplayer .fp-ui,.color-light.is-paused.flowplayer .fp-ui{background-image:url(img/play_black.png)}
|
44 |
+
@media (-webkit-min-device-pixel-ratio: 2){.color-light.is-splash.flowplayer .fp-ui,.color-light.is-paused.flowplayer .fp-ui{background-image:url(img/play_black@x2.png)}
|
45 |
+
}.is-fullscreen.flowplayer .fp-ui{background-size:auto}
|
46 |
+
.is-seeking.flowplayer .fp-ui,.is-loading.flowplayer .fp-ui{background-image:none}
|
47 |
+
.flowplayer .fp-logo{position:absolute;top:auto;left:15px;bottom:45px;cursor:pointer;display:none;z-index:100;}
|
48 |
+
.flowplayer .fp-logo img{width:100%}
|
49 |
+
.is-embedded.flowplayer .fp-logo{display:block}
|
50 |
+
.fixed-controls.flowplayer .fp-logo{bottom:15px}
|
51 |
+
.flowplayer .fp-fullscreen,.flowplayer .fp-unload,.flowplayer .fp-close{position:absolute;top:12px;left:auto;right:12px;display:block;width:30px;height:23px;background-position:12px -197px;cursor:pointer}
|
52 |
+
.flowplayer .fp-unload,.flowplayer .fp-close{background-position:14px -175px;display:none}
|
53 |
+
.flowplayer .fp-play{display:none;width:27px;height:35px;background-position:9px -24px;position:absolute;bottom:0;left:0;}
|
54 |
+
.play-button.flowplayer .fp-play{display:block}
|
55 |
+
.is-paused.flowplayer .fp-play{background-position:9px 7px}
|
56 |
+
.flowplayer.is-ready.is-closeable .fp-unload{display:block}
|
57 |
+
.flowplayer.is-ready.is-closeable .fp-fullscreen{display:none}
|
58 |
+
.flowplayer.is-fullscreen .fp-fullscreen{background-position:10px -217px;display:block !important}
|
59 |
+
.flowplayer.is-fullscreen .fp-unload,.flowplayer.is-fullscreen .fp-close{display:none !important}
|
60 |
+
.flowplayer .fp-timeline{height:3px;position:relative;overflow:hidden;top:12px;height:11px;margin:0 199px 0 59px;}
|
61 |
+
.no-volume.flowplayer .fp-timeline{margin-right:109px}
|
62 |
+
.no-mute.flowplayer .fp-timeline{margin-right:59px}
|
63 |
+
.play-button.flowplayer .fp-timeline{margin-left:74px}
|
64 |
+
.is-long.flowplayer .fp-timeline{margin:0 229px 0 89px;}
|
65 |
+
.no-volume.is-long.flowplayer .fp-timeline{margin-right:139px}
|
66 |
+
.no-mute.is-long.flowplayer .fp-timeline{margin-right:89px}
|
67 |
+
.play-button.is-long.flowplayer .fp-timeline{margin-left:104px}
|
68 |
+
.aside-time.flowplayer .fp-timeline,.no-time.flowplayer .fp-timeline{margin:0 152px 0 12px}
|
69 |
+
.aside-time.no-volume.flowplayer .fp-timeline,.no-time.no-volume.flowplayer .fp-timeline{margin-right:62px}
|
70 |
+
.aside-time.no-mute.flowplayer .fp-timeline,.no-time.no-mute.flowplayer .fp-timeline{margin-right:12px}
|
71 |
+
.play-button.no-time.flowplayer .fp-timeline,.play-button.aside-time.flowplayer .fp-timeline{margin-left:27px}
|
72 |
+
.flowplayer .fp-buffer,.flowplayer .fp-progress{position:absolute;top:0;left:auto;height:100%;cursor:col-resize}
|
73 |
+
.flowplayer .fp-buffer{-webkit-transition:width .25s linear;-moz-transition:width .25s linear;transition:width .25s linear}
|
74 |
+
.flowplayer .fp-volume{position:absolute;top:12px;right:12px}
|
75 |
+
.flowplayer .fp-mute{width:38px;height:20px;float:left;position:relative;top:-4.5px;left:;cursor:pointer;background-position:-2px -99px;}
|
76 |
+
.no-mute.flowplayer .fp-mute{display:none}
|
77 |
+
.flowplayer .fp-volumeslider{width:90px;height:11px;cursor:col-resize;float:left;}
|
78 |
+
.no-volume.flowplayer .fp-volumeslider{display:none}
|
79 |
+
.flowplayer .fp-volumelevel{height:100%}
|
80 |
+
.flowplayer .fp-time{text-shadow:0 0 1px #000;font-size:12px;font-weight:bold;color:#fff;width:100%;}
|
81 |
+
.flowplayer .fp-time.is-inverted .fp-duration{display:none}
|
82 |
+
.flowplayer .fp-time.is-inverted .fp-remaining{display:inline}
|
83 |
+
.flowplayer .fp-time em{width:35px;height:11px;line-height:11px;text-align:center;position:absolute;bottom:12px}
|
84 |
+
.no-time.flowplayer .fp-time{display:none}
|
85 |
+
.is-long.flowplayer .fp-time em{width:65px}
|
86 |
+
.flowplayer .fp-elapsed{left:12px;}
|
87 |
+
.play-button.flowplayer .fp-elapsed{left:27px}
|
88 |
+
.flowplayer .fp-remaining,.flowplayer .fp-duration{right:152px;color:#eee;}
|
89 |
+
.no-volume.flowplayer .fp-remaining,.no-volume.flowplayer .fp-duration{right:62px}
|
90 |
+
.no-mute.flowplayer .fp-remaining,.no-mute.flowplayer .fp-duration{right:12px}
|
91 |
+
.flowplayer .fp-remaining{display:none}
|
92 |
+
.flowplayer.color-light .fp-time{color:#222;text-shadow:0 0 1px #fff}
|
93 |
+
.flowplayer.color-light .fp-remaining,.flowplayer.color-light .fp-duration{color:#666}
|
94 |
+
.flowplayer.aside-time .fp-time{position:absolute;top:12px;left:12px;bottom:auto !important;width:110px;}
|
95 |
+
.flowplayer.aside-time .fp-time strong,.flowplayer.aside-time .fp-time em{position:static}
|
96 |
+
.flowplayer.aside-time .fp-time .fp-elapsed{margin-right:12px}
|
97 |
+
.flowplayer.is-long.aside-time .fp-time{width:130px}
|
98 |
+
.flowplayer.is-splash,.flowplayer.is-poster{cursor:pointer;}
|
99 |
+
.flowplayer.is-splash .fp-controls,.flowplayer.is-poster .fp-controls,.flowplayer.is-splash .fp-fullscreen,.flowplayer.is-poster .fp-fullscreen,.flowplayer.is-splash .fp-unload,.flowplayer.is-poster .fp-unload,.flowplayer.is-splash .fp-time,.flowplayer.is-poster .fp-time,.flowplayer.is-splash .fp-embed,.flowplayer.is-poster .fp-embed{display:none !important}
|
100 |
+
.flowplayer.is-poster .fp-engine{top:-9999em}
|
101 |
+
.flowplayer.is-loading .fp-waiting{display:block}
|
102 |
+
.flowplayer.is-loading .fp-controls,.flowplayer.is-loading .fp-time{display:none}
|
103 |
+
.flowplayer.is-loading .fp-ui{background-position:-9999em}
|
104 |
+
.flowplayer.is-seeking .fp-waiting{display:block}
|
105 |
+
.flowplayer.is-fullscreen{position:fixed !important;top:0 !important;left:0 !important;border:0 !important;margin:0 !important;width:100% !important;height:100% !important;max-width:100% !important;z-index:99999 !important;-webkit-box-shadow:0 !important;-moz-box-shadow:0 !important;box-shadow:0 !important;background-image:none !important;background-color:#333}
|
106 |
+
.flowplayer.is-error{border:1px solid #909090;background:#fdfdfd !important;}
|
107 |
+
.flowplayer.is-error h2{font-weight:bold;font-size:large;margin-top:10%}
|
108 |
+
.flowplayer.is-error .fp-message{display:block}
|
109 |
+
.flowplayer.is-error object,.flowplayer.is-error video,.flowplayer.is-error .fp-controls,.flowplayer.is-error .fp-time,.flowplayer.is-error .fp-subtitle{display:none}
|
110 |
+
.flowplayer.is-ready.is-muted .fp-mute{opacity:.5;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=50)}
|
111 |
+
.flowplayer.is-mouseout .fp-controls{height:0;-webkit-transition:height .15s .3s;-moz-transition:height .15s .3s;transition:height .15s .3s}
|
112 |
+
.flowplayer.is-mouseout .fp-timeline{margin:0 !important}
|
113 |
+
.flowplayer.is-mouseout .fp-timeline{-webkit-transition:height .15s .3s,top .15s .3s,margin .15s .3s;-moz-transition:height .15s .3s,top .15s .3s,margin .15s .3s;transition:height .15s .3s,top .15s .3s,margin .15s .3s;height:4px;top:0;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}
|
114 |
+
.flowplayer.is-mouseout .fp-fullscreen,.flowplayer.is-mouseout .fp-unload,.flowplayer.is-mouseout .fp-elapsed,.flowplayer.is-mouseout .fp-remaining,.flowplayer.is-mouseout .fp-duration,.flowplayer.is-mouseout .fp-embed,.flowplayer.is-mouseout .fp-volume,.flowplayer.is-mouseout .fp-play{opacity:0;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);-webkit-transition:opacity .15s .3s;-moz-transition:opacity .15s .3s;transition:opacity .15s .3s}
|
115 |
+
.flowplayer.is-mouseover .fp-controls,.flowplayer.fixed-controls .fp-controls{height:35px}
|
116 |
+
.flowplayer.is-mouseover .fp-fullscreen,.flowplayer.fixed-controls .fp-fullscreen,.flowplayer.is-mouseover .fp-unload,.flowplayer.fixed-controls .fp-unload,.flowplayer.is-mouseover .fp-elapsed,.flowplayer.fixed-controls .fp-elapsed,.flowplayer.is-mouseover .fp-remaining,.flowplayer.fixed-controls .fp-remaining,.flowplayer.is-mouseover .fp-duration,.flowplayer.fixed-controls .fp-duration,.flowplayer.is-mouseover .fp-embed,.flowplayer.fixed-controls .fp-embed,.flowplayer.is-mouseover .fp-logo,.flowplayer.fixed-controls .fp-logo,.flowplayer.is-mouseover .fp-volume,.flowplayer.fixed-controls .fp-volume,.flowplayer.is-mouseover .fp-play,.flowplayer.fixed-controls .fp-play{opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
117 |
+
.flowplayer.fixed-controls .fp-volume{display:block}
|
118 |
+
.flowplayer.fixed-controls .fp-controls{bottom:-35px;}
|
119 |
+
.is-fullscreen.flowplayer.fixed-controls .fp-controls{bottom:0}
|
120 |
+
.flowplayer.fixed-controls .fp-time em{bottom:-23px;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);}
|
121 |
+
.is-fullscreen.flowplayer.fixed-controls .fp-time em{bottom:12px}
|
122 |
+
.flowplayer.is-disabled .fp-progress{background-color:#999}
|
123 |
+
.flowplayer .fp-embed{position:absolute;top:12px;left:12px;display:block;width:25px;height:20px;background-position:3px -237px}
|
124 |
+
.flowplayer .fp-embed-code{position:absolute;display:none;top:10px;left:40px;background-color:#333;padding:3px 5px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 3px #ccc;-moz-box-shadow:0 0 3px #ccc;box-shadow:0 0 3px #ccc;font-size:12px;}
|
125 |
+
.flowplayer .fp-embed-code:before{content:'';width:0;height:0;position:absolute;top:2px;left:-10px;border:5px solid transparent;border-right-color:#333}
|
126 |
+
.flowplayer .fp-embed-code textarea{width:400px;height:16px;font-family:monaco,"courier new",verdana;color:#777;white-space:nowrap;resize:none;overflow:hidden;border:0;outline:0;background-color:transparent;color:#ccc}
|
127 |
+
.flowplayer .fp-embed-code label{display:block;color:#999}
|
128 |
+
.flowplayer.is-embedding .fp-embed,.flowplayer.is-embedding .fp-embed-code{display:block;opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
129 |
+
.flowplayer.aside-time .fp-embed{left:110px}
|
130 |
+
.flowplayer.aside-time .fp-embed-code{left:140px}
|
131 |
+
.flowplayer.aside-time.is-embedding .fp-time{opacity:1;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)}
|
132 |
+
.flowplayer.is-long.aside-time .fp-embed{left:130px}
|
133 |
+
.flowplayer.no-time .fp-embed{left:12px !important}
|
134 |
+
@-moz-keyframes pulse{0%{opacity:0}
|
135 |
+
100%{opacity:1}
|
136 |
+
}@-webkit-keyframes pulse{0%{opacity:0}
|
137 |
+
100%{opacity:1}
|
138 |
+
}@-o-keyframes pulse{0%{opacity:0}
|
139 |
+
100%{opacity:1}
|
140 |
+
}@-ms-keyframes pulse{0%{opacity:0}
|
141 |
+
100%{opacity:1}
|
142 |
+
}@keyframes pulse{0%{opacity:0}
|
143 |
+
100%{opacity:1}
|
144 |
+
}.flowplayer .fp-controls{background-color:#111}
|
145 |
+
.flowplayer .fp-timeline,.flowplayer .fp-volumeslider{background-color:#555;background-image:-moz-linear-gradient(rgba(255,255,255,0.01),rgba(255,255,255,0.3));background-image:-webkit-gradient(linear,0 0,0 100%,from(rgba(255,255,255,0.01)),to(rgba(255,255,255,0.3)))}
|
146 |
+
.flowplayer .fp-buffer{background-color:#eee}
|
147 |
+
.flowplayer .fp-progress{background-color:#008000}
|
148 |
+
.flowplayer .fp-volumelevel{background-color:#fff}
|
149 |
+
.flowplayer .fp-mute{display:block;width:38px;height:20px;background-position:0 -79px;}
|
150 |
+
.is-muted.flowplayer .fp-mute{background-position:0 -109px;opacity:.85;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=85)}
|
151 |
+
.flowplayer .fp-play{background-position:9px -20px;}
|
152 |
+
.is-paused.flowplayer .fp-play{background-position:9px 11px}
|
153 |
+
.flowplayer .fp-timeline,.flowplayer .fp-volumeslider{border:1px inset;border-color:rgba(0,0,0,0.3) rgba(17,17,17,0.05)}
|
154 |
+
.flowplayer .fp-controls,.flowplayer .fp-progress{background-image:-moz-linear-gradient(rgba(255,255,255,0.3),rgba(255,255,255,0.01));background-image:-webkit-gradient(linear,0 0,0 100%,from(rgba(255,255,255,0.3)),to(rgba(255,255,255,0.01)))}
|
155 |
+
.flowplayer .fp-timeline,.flowplayer .fp-progress,.flowplayer .fp-buffer,.flowplayer .fp-volumeslider,.flowplayer .fp-volumelevel{-webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px}
|
156 |
+
.flowplayer.color-light .fp-controls{background-color:#eee;background-image:-moz-linear-gradient(rgba(0,0,0,0.01),rgba(0,0,0,0.3));background-image:-webkit-gradient(linear,0 0,0 100%,from(rgba(0,0,0,0.01)),to(rgba(0,0,0,0.3)))}
|
157 |
+
.flowplayer.color-light .fp-timeline,.flowplayer.color-light .fp-volumeslider{border-color:#eee #ccc}
|
158 |
+
.flowplayer.color-alt .fp-progress,.flowplayer.color-alt .fp-volumelevel{background-color:#111}
|
159 |
+
.flowplayer.color-alt2 .fp-progress,.flowplayer.color-alt2 .fp-volumelevel{background-color:#900}
|
readme.txt
ADDED
@@ -0,0 +1,65 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
=== Easy Video Player ===
|
2 |
+
Contributors: naa986
|
3 |
+
Donate link: http://easywpguide.wordpress.com/
|
4 |
+
Tags: video, wpvideo, flash, html5, iPad, iphone, ipod, mobile, playlists, embed video, flowplayer, video html5, flash player, player, video player
|
5 |
+
Requires at least: 3.0.1
|
6 |
+
Tested up to: 3.5.1
|
7 |
+
Stable tag: 1.0.1
|
8 |
+
License: GPLv3 or later
|
9 |
+
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
10 |
+
|
11 |
+
Easy Video Player allows you to embed videos into your WordPress site.
|
12 |
+
|
13 |
+
== Description ==
|
14 |
+
|
15 |
+
Easy Video Player is a user-friendly WordPress plugin to showcase your videos. You can embed both self-hosted videos or videos that are external hosted using direct links.
|
16 |
+
|
17 |
+
= Easy Video Player Features =
|
18 |
+
|
19 |
+
* Embed MP4 videos into your blog.
|
20 |
+
* Embed responsive videos for a better user experience while viewing from a mobile device.
|
21 |
+
* Embed HTML5 videos which are compatible with all major browsers.
|
22 |
+
|
23 |
+
= Easy Video Player Plugin Usage =
|
24 |
+
|
25 |
+
*Settings Configuration*
|
26 |
+
|
27 |
+
It's pretty easy to set up this plugin. Once you have installed the plugin simply navigate to the Settings menu where you will be able to configure some options. Mostly you just to need check the "Enable jQuery" option. That will allow the plugin to make use of jQuery library.
|
28 |
+
|
29 |
+
*Embedding Shortcodes for the Videos*
|
30 |
+
|
31 |
+
Now it's time to finally embed a video shortcode. To do this create a new post/page and use the following shortcode:
|
32 |
+
|
33 |
+
`[evp_embed_video url="http://example.com/wp-content/uploads/videos/myvid.mp4"]`
|
34 |
+
|
35 |
+
here, url is a shortcode parameter that you need to replace the actual URL of the video file.
|
36 |
+
|
37 |
+
For detailed documentation please visit the [Easy Video Player](http://easywpguide.wordpress.com/?p=25) plugin page
|
38 |
+
|
39 |
+
|
40 |
+
== Installation ==
|
41 |
+
|
42 |
+
1. Go to the Add New plugins screen in your WordPress Dashboard
|
43 |
+
1. Click the upload tab
|
44 |
+
1. Browse for the plugin file (easy-video-player.zip) on your computer
|
45 |
+
1. Click "Install Now" and then hit the activate button
|
46 |
+
1. Now, go to the settings menu of the plugin and follow the instructions for embedding videos.
|
47 |
+
|
48 |
+
== Frequently Asked Questions ==
|
49 |
+
|
50 |
+
= Can this plugin be used to embed videos on my WordPress blog? =
|
51 |
+
|
52 |
+
Yes.
|
53 |
+
|
54 |
+
= Are the videos embedded by this plugin playable on iOS devices? =
|
55 |
+
|
56 |
+
Yes.
|
57 |
+
|
58 |
+
== Screenshots ==
|
59 |
+
|
60 |
+
For screenshots please visit the [Easy Video Player](http://easywpguide.wordpress.com/?p=25) plugin page
|
61 |
+
|
62 |
+
== Changelog ==
|
63 |
+
|
64 |
+
= 1.0.1 =
|
65 |
+
* First commit
|