本文整理汇总了PHP中Surfer::has_flash方法的典型用法代码示例。如果您正苦于以下问题:PHP Surfer::has_flash方法的具体用法?PHP Surfer::has_flash怎么用?PHP Surfer::has_flash使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Surfer
的用法示例。
在下文中一共展示了Surfer::has_flash方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: render_embed
/**
* embed an interactive object
*
* The id designates the target file.
* It can also include width and height of the target canvas, as in: '12, 100%, 250px'
*
* @param string id of the target file
* @return string the rendered string
**/
public static function render_embed($id)
{
global $context;
// split parameters
$attributes = preg_split("/\\s*,\\s*/", $id, 4);
$id = $attributes[0];
// get the file
if (!($item = Files::get($id))) {
$output = '[embed=' . $id . ']';
return $output;
}
// stream in a separate page
if (isset($attributes[1]) && preg_match('/window/i', $attributes[1])) {
if (!isset($attributes[2])) {
$attributes[2] = i18n::s('Play in a separate window');
}
$output = '<a href="' . $context['url_to_home'] . $context['url_to_root'] . Files::get_url($item['id'], 'stream', $item['file_name']) . '" onclick="window.open(this.href); return false;" class="button"><span>' . $attributes[2] . '</span></a>';
return $output;
}
// file extension
$extension = strtolower(substr($item['file_name'], -3));
// set a default size
if (!isset($attributes[1])) {
if (!strcmp($extension, 'gan')) {
$attributes[1] = '98%';
} elseif (!strcmp($extension, 'mm') && isset($context['skins_freemind_canvas_width'])) {
$attributes[1] = $context['skins_freemind_canvas_width'];
} else {
$attributes[1] = 480;
}
}
if (!isset($attributes[2])) {
if (!strcmp($extension, 'gan')) {
$attributes[2] = '300px';
} elseif (!strcmp($extension, 'mm') && isset($context['skins_freemind_canvas_height'])) {
$attributes[2] = $context['skins_freemind_canvas_height'];
} else {
$attributes[2] = 360;
}
}
// object attributes
$width = $attributes[1];
$height = $attributes[2];
$flashvars = '';
if (isset($attributes[3])) {
$flashvars = $attributes[3];
}
// rendering depends on file extension
switch ($extension) {
// stream a video
case '3gp':
case 'flv':
case 'm4v':
case 'mov':
case 'mp4':
// a flash player to stream a flash video
$flvplayer_url = $context['url_to_home'] . $context['url_to_root'] . 'included/browser/player_flv_maxi.swf';
// file is elsewhere
if (isset($item['file_href']) && $item['file_href']) {
$url = $item['file_href'];
} else {
$url = $context['url_to_home'] . $context['url_to_root'] . Files::get_url($item['id'], 'fetch', $item['file_name']);
}
// pass parameters to the player
if ($flashvars) {
$flashvars = str_replace('autostart=true', 'autoplay=1', $flashvars) . '&';
}
$flashvars .= 'width=' . $width . '&height=' . $height;
// if there is a static image for this video, use it
if (isset($item['icon_url']) && $item['icon_url']) {
$flashvars .= '&startimage=' . urlencode($item['icon_url']);
}
// if there is a subtitle file for this video, use it
if (isset($item['file_name']) && ($srt = 'files/' . str_replace(':', '/', $item['anchor']) . '/' . str_replace('.' . $extension, '.srt', $item['file_name'])) && file_exists($context['path_to_root'] . $srt)) {
$flashvars .= '&srt=1&srturl=' . urlencode($context['url_to_home'] . $context['url_to_root'] . $srt);
}
// if there is a logo file in the skin, use it
Skin::define_img_href('FLV_IMG_HREF', 'codes/flvplayer_logo.png', '');
if (FLV_IMG_HREF) {
$flashvars .= '&top1=' . urlencode(FLV_IMG_HREF . '|10|10');
}
// rely on Flash
if (Surfer::has_flash()) {
// the full object is built in Javascript --see parameters at http://flv-player.net/players/maxi/documentation/
$output = '<div id="flv_' . $item['id'] . '" class="no_print">Flash plugin or Javascript are turned off. Activate both and reload to view the object</div>' . "\n";
Page::insert_script('var flashvars = { flv:"' . $url . '", ' . str_replace(array('&', '='), array('", ', ':"'), $flashvars) . '", autoload:0, margin:1, showiconplay:1, playeralpha:50, iconplaybgalpha:30, showfullscreen:1, showloading:"always", ondoubleclick:"fullscreen" }' . "\n" . 'var params = { allowfullscreen: "true", allowscriptaccess: "always" }' . "\n" . 'var attributes = { id: "file_' . $item['id'] . '", name: "file_' . $item['id'] . '"}' . "\n" . 'swfobject.embedSWF("' . $flvplayer_url . '", "flv_' . $item['id'] . '", "' . $width . '", "' . $height . '", "9", "' . $context['url_to_home'] . $context['url_to_root'] . 'included/browser/expressinstall.swf", flashvars, params);' . "\n");
// native support
} else {
// <video> is HTML5, <object> is legacy
$output = '<video width="' . $width . '" height="' . $height . '" autoplay="" controls="" src="' . $url . '" >' . "\n" . ' <object width="' . $width . '" height="' . $height . '" data="' . $url . '" type="' . Files::get_mime_type($item['file_name']) . '">' . "\n" . ' <param value="' . $url . '" name="movie" />' . "\n" . ' <param value="true" name="allowFullScreen" />' . "\n" . ' <param value="always" name="allowscriptaccess" />' . "\n" . ' <a href="' . $url . '">No video playback capabilities, please download the file</a>' . "\n" . ' </object>' . "\n" . '</video>' . "\n";
}
//.........这里部分代码省略.........
示例2: interact
/**
* integrate some player for the file, if any
*
* @param array the file to look at
* @param int width for video player
* @param int height of video player
* @return string tags to be put in the HTML flow, or an empty string
*/
public static function interact($item, $width = 320, $height = 240, $flashvars = '', $with_icon = TRUE)
{
global $context;
static $counter;
if (!isset($counter)) {
$counter = 1;
} else {
$counter++;
}
// display explicit title, if any
$title = '';
if ($item['title']) {
$title = '<p>' . Skin::strip($item['title']) . '</p>';
}
// several ways to play flash
switch (strtolower(substr($item['file_name'], -3))) {
// audio file handled by dewplayer
case 'mp3':
// only if the player is available
if (file_exists($context['path_to_root'] . 'included/browser/dewplayer.swf')) {
// the player
$dewplayer_url = $context['url_to_root'] . 'included/browser/dewplayer.swf';
// the mp3 file
if (isset($item['file_href']) && $item['file_href']) {
$mp3_url = $item['file_href'];
} else {
$mp3_url = $context['url_to_root'] . Files::get_url($item['id'], 'fetch', $item['file_name']);
}
$flashvars = 'son=' . $mp3_url;
// combine the two in a single object
$output = '<div id="interact_' . $counter . '" class="no_print">Flash plugin or Javascript are turned off. Activate both and reload to view the object</div>' . "\n" . $title;
Page::insert_script('var params = {};' . "\n" . 'params.base = "' . dirname($mp3_url) . '/";' . "\n" . 'params.quality = "high";' . "\n" . 'params.wmode = "transparent";' . "\n" . 'params.menu = "false";' . "\n" . 'params.flashvars = "' . $flashvars . '";' . "\n" . 'swfobject.embedSWF("' . $dewplayer_url . '", "interact_' . $counter . '", "200", "20", "6", "' . $context['url_to_home'] . $context['url_to_root'] . 'included/browser/expressinstall.swf", false, params);' . "\n");
return $output;
}
// native flash
// native flash
case 'swf':
// where to get the file
if (isset($item['file_href']) && $item['file_href']) {
$url = $item['file_href'];
} else {
$url = $context['url_to_home'] . $context['url_to_root'] . 'files/' . str_replace(':', '/', $item['anchor']) . '/' . rawurlencode($item['file_name']);
}
$output = '<div id="interact_' . $counter . '" class="no_print">Flash plugin or Javascript are turned off. Activate both and reload to view the object</div><br />' . "\n" . $title;
Page::insert_script('var params = {};' . "\n" . 'params.base = "' . dirname($url) . '/";' . "\n" . 'params.quality = "high";' . "\n" . 'params.wmode = "transparent";' . "\n" . 'params.allowfullscreen = "true";' . "\n" . 'params.allowscriptaccess = "always";' . "\n" . 'params.flashvars = "' . $flashvars . '";' . "\n" . 'swfobject.embedSWF("' . $url . '", "interact_' . $counter . '", "' . $width . '", "' . $height . '", "6", "' . $context['url_to_home'] . $context['url_to_root'] . 'included/browser/expressinstall.swf", false, params);' . "\n");
return $output;
// stream a video
// stream a video
case '3gp':
case 'flv':
case 'm4v':
case 'mov':
case 'mp4':
// a flash player to stream a flash video
$flvplayer_url = $context['url_to_home'] . $context['url_to_root'] . 'included/browser/player_flv_maxi.swf';
// file is elsewhere
if (isset($item['file_href']) && $item['file_href']) {
$url = $item['file_href'];
} else {
$url = $context['url_to_home'] . $context['url_to_root'] . Files::get_url($item['id'], 'fetch', $item['file_name']);
}
// pass parameters to the player
if ($flashvars) {
$flashvars = str_replace('autostart=true', 'autoplay=1', $flashvars) . '&';
}
$flashvars .= 'width=' . $width . '&height=' . $height;
// rely on Flash
if (Surfer::has_flash()) {
// the full object is built in Javascript --see parameters at http://flv-player.net/players/maxi/documentation/
$output = '<div id="interact_' . $counter . '" class="no_print">Flash plugin or Javascript are turned off. Activate both and reload to view the object</div>' . "\n" . $title;
Page::insert_script('var flashvars = { flv:"' . $url . '", ' . str_replace(array('&', '='), array('", ', ':"'), $flashvars) . '", autoload:0, margin:1, showiconplay:1, playeralpha:50, iconplaybgalpha:30, showloading:"always", ondoubleclick:"fullscreen" }' . "\n" . 'var params = { allowfullscreen: "true", allowscriptaccess: "always" }' . "\n" . 'var attributes = { id: "interact_' . $counter . '", name: "file_' . $item['id'] . '"}' . "\n" . 'swfobject.embedSWF("' . $flvplayer_url . '", "interact_' . $counter . '", "' . $width . '", "' . $height . '", "9", "' . $context['url_to_home'] . $context['url_to_root'] . 'included/browser/expressinstall.swf", flashvars, params);' . "\n");
// native support
} else {
$output = '<object width="' . $width . '" height="' . $height . '" data="' . $url . '" type="' . Files::get_mime_type($item['file_name']) . '">' . "\n" . ' <param value="' . $url . '" name="movie" />' . "\n" . ' <param value="true" name="allowFullScreen" />' . "\n" . ' <param value="always" name="allowscriptaccess" />' . "\n" . ' <a href="' . $url . '">No video playback capabilities, please download the file</a>' . "\n" . '</object>' . "\n" . $title;
}
return $output;
}
if (!$with_icon) {
return '';
}
// this is a reasonably large image
if (Files::is_image($item['file_name']) && ($image_information = Safe::GetImageSize($context['path_to_root'] . 'files/' . str_replace(':', '/', $item['anchor']) . '/' . $item['file_name'])) && $image_information[0] <= 600) {
// provide a direct link to it!
$src = $context['url_to_home'] . $context['url_to_root'] . 'files/' . str_replace(':', '/', $item['anchor']) . '/' . rawurlencode($item['file_name']);
$icon = '<img src="' . $src . '" width="' . $image_information[0] . '" height="' . $image_information[1] . '" alt="" style="padding: 3px"/>' . BR;
return Skin::build_link(Files::get_download_url($item), $icon, 'basic') . $title;
}
// explicit icon
if ($item['thumbnail_url']) {
$icon = $item['thumbnail_url'];
} else {
$icon = $context['url_to_root'] . Files::get_icon_url($item['file_name']);
//.........这里部分代码省略.........