if (s.length > length) tmp += "…";
return tmp;
}
+function switchToFlash(e) {
+ var targ = e;
+ if (!e) var e = window.event;
+ if (e.target) targ = e.target;
+ else if (e.srcElement) targ = e.srcElement;
+ if (targ.nodeType == 3) // defeat Safari bug
+ targ = targ.parentNode;
+
+ //targ is the link that was clicked
+ var audioTag=targ;
+ do {
+ audioTag=audioTag.previousSibling;
+ } while(audioTag && audioTag.nodeType != 1)
+
+ var flashPlayer = audioTag.getElementsByTagName('div')[0];
+ targ.parentNode.insertBefore(flashPlayer,targ);
+ targ.parentNode.removeChild(targ);
+ audioTag.parentNode.removeChild(audioTag);
+
+ return false;
+}
+function html5AudioOrFlash(type) {
+ var audioTag = document.createElement('audio');
+ if(! audioTag.canPlayType || audioTag.canPlayType(type)=="no"){
+ if($('switchToFlashLink')){
+ switchToFlash($('switchToFlashLink'));
+ }
+ }
+}
$entry = "";
- if (($ctype == __("audio/mpeg")) &&
- (get_pref($link, "ENABLE_FLASH_PLAYER")) ) {
-
- $entry .= "<object type=\"application/x-shockwave-flash\" data=\"extras/button/musicplayer.swf?song_url=$url\" width=\"17\" height=\"17\"> <param name=\"movie\" value=\"extras/button/musicplayer.swf?song_url=$url\" /> </object> ";
-
+ if (substr($ctype,0,6)=="audio/" || $ctype=="application/ogg" || $ctype=="application/x-ogg") {
+ $entry .= "<audio controls=\"controls\"><source src=\"$url\" type=\"$ctype\" />";
+ if (($ctype == __("audio/mpeg")) &&
+ (get_pref($link, "ENABLE_FLASH_PLAYER")) ) {
+ $entry .= "<div><object type=\"application/x-shockwave-flash\" data=\"extras/button/musicplayer.swf?song_url=$url\" width=\"17\" height=\"17\"> <param name=\"movie\" value=\"extras/button/musicplayer.swf?song_url=$url\" /> </object></div>";
+ }
+ $entry .= "</audio>";
+ if (($ctype == __("audio/mpeg")) &&
+ (get_pref($link, "ENABLE_FLASH_PLAYER")) ) {
+ $entry .= "<a id='switchToFlashLink' href='#' onclick='return switchToFlash(this)'>".__('Switch to Flash Player')."</a><br />";
+ $entry .= "<script type='text/javascript'>html5AudioOrFlash('$ctype');</script>";
+ }
+ } elseif (substr($ctype,0,6)=="video/") {
+ $entry .= "<video controls=\"controls\"><source src=\"$url\" type=\"$ctype\" />";
+ $entry .= "</video>";
}
$entry .= "<a target=\"_blank\" href=\"" . htmlspecialchars($url) . "\">" .
$entry = "";
- if (($ctype == __("audio/mpeg")) &&
- (get_pref($link, "ENABLE_FLASH_PLAYER")) ) {
-
- $entry .= "<object type=\"application/x-shockwave-flash\" data=\"extras/button/musicplayer.swf?song_url=$url\" width=\"17\" height=\"17\"> <param name=\"movie\" value=\"extras/button/musicplayer.swf?song_url=$url\" /> </object> ";
-
+ if (substr($ctype,0,6)=="audio/" || $ctype=="application/ogg" || $ctype=="application/x-ogg") {
+ $entry .= "<audio controls=\"controls\"><source src=\"$url\" type=\"$ctype\" />";
+ if (($ctype == __("audio/mpeg")) &&
+ (get_pref($link, "ENABLE_FLASH_PLAYER")) ) {
+ $entry .= "<div><object type=\"application/x-shockwave-flash\" data=\"extras/button/musicplayer.swf?song_url=$url\" width=\"17\" height=\"17\"> <param name=\"movie\" value=\"extras/button/musicplayer.swf?song_url=$url\" /> </object></div>";
+ }
+ $entry .= "</audio>";
+ if (($ctype == __("audio/mpeg")) &&
+ (get_pref($link, "ENABLE_FLASH_PLAYER")) ) {
+ $entry .= "<a id='switchToFlashLink' href='#' onclick='return switchToFlash(this)'>".__('Switch to Flash Player')."</a><br />";
+ $entry .= "<script type='text/javascript'>html5AudioOrFlash('$ctype');</script>";
+ }
+ } elseif (substr($ctype,0,6)=="video/") {
+ $entry .= "<video controls=\"controls\"><source src=\"$url\" type=\"$ctype\" />";
+ $entry .= "</video>";
}
$entry .= "<a target=\"_blank\" href=\"" . htmlspecialchars($url) . "\">" .