'title' => '',
'creator' => '',
'description' => '',
- 'rights' => ''
+ 'rights' => '',
+ 'mp3' => ''
);
}
if (!ereg('^http://', $url)) {
$url = "http://$url";
}
- $url = ereg_replace('/*$', '', $url);
- $id = urlencode('item:' . $item['id']);
- $request = "$url/oai/?verb=GetRecord&identifier=$id&metadataPrefix=oai_dc";
+ $url = ereg_replace('/*$', '', $url);
+ $encodedId = urlencode($item['id']);
+ $request = "$url/oai/?verb=GetRecord&identifier=item:$encodedId&metadataPrefix=oai_dc";
$doc = new DOMDocument();
if (!@$doc->load($request)) {
throw new eZTelemetaError("The retrieved item has no title");
}
+ $result['mp3'] = "$url/items/download/$encodedId.mp3";
+
return array_merge($item, $result);
}
+
+/* SoundManager2 configuration */
+soundManager.debugMode = true;
+
+/* SoundManager2 Page Player configuration */
+var PP_CONFIG = {
+ flashVersion: 9,
+ usePeakData: true,
+ useWaveformData: false,
+ useEQData: false,
+ useFavIcon: false,
+ useMovieStar: false
+}
var isOpera = navigator.userAgent.match(/opera/i);\r
var isFirefox = navigator.userAgent.match(/firefox/i);\r
\r
- sm.url = '../../swf/'; // path to directory containing SM2 SWF\r
+ // sm.url = '../../swf/'; // path to directory containing SM2 SWF\r
\r
this.config = {\r
flashVersion: 8, // version of Flash to tell SoundManager to use - either 8 or 9. Flash 9 required for peak / spectrum data.\r
useFavIcon: false // try to show peakData in address bar (Firefox + Opera)\r
}\r
\r
- sm.debugMode = (window.location.href.toString().match(/debug=1/i)?true:false); // enable with #debug=1 for example\r
+ //sm.debugMode = (window.location.href.toString().match(/debug=1/i)?true:false); // enable with #debug=1 for example\r
\r
this._mergeObjects = function(oMain,oAdd) {\r
// non-destructive merge\r
return true;\r
}\r
var sURL = o.getAttribute('href');\r
- if (!o.href || (!sm.canPlayURL(o.href) && !self.hasClass(o,'playable')) || self.hasClass(o,'exclude')) {\r
+ if (!o.href || (!sm.canPlayURL(o.href) || !self.hasClass(o,'playable')) || self.hasClass(o,'exclude')) {\r
if (isIE && o.onclick) {\r
return false; // IE will run this handler before .onclick(), everyone else is cool?\r
}\r
// grab all links, look for .mp3\r
var foundItems = 0;\r
for (var i=0; i<oLinks.length; i++) {\r
- if ((sm.canPlayURL(oLinks[i].href) || self.hasClass(oLinks[i],'playable')) && !self.hasClass(oLinks[i],'exclude')) {\r
+ if ((sm.canPlayURL(oLinks[i].href) && self.hasClass(oLinks[i],'playable')) && !self.hasClass(oLinks[i],'exclude')) {\r
oLinks[i].rel = 'pagePlayerMP3Sound'+i;\r
self.links[self.links.length] = oLinks[i];\r
self.addClass(oLinks[i],self.css.sDefault); // add default CSS decoration\r
soundManager.onload = function() {\r
// soundManager.createSound() etc. may now be called\r
pagePlayer.initDOM();\r
-}
\ No newline at end of file
+}\r
+<script language="javascript">
+soundManager.url = {'swf/'|ezdesign};
+</script>
<div class="view-embed">
<div class="content-media">
{let attribute=$object.data_map.item}
<dt>Identifier:</dt><dd>{$attribute.content.id}</dd>
<dt>Title:</dt><dd>{$attribute.content.title|wash}</dd>
</dl>
+ <ul class="playlist">
+ <li><a class="playable" href="{$attribute.content.mp3}">{$attribute.content.title|wash}</a></li>
+ </ul>
{/let}
</div>
+ <div id="control-template">
+ <!-- control markup inserted dynamically after each link -->
+ <div class="controls">
+ <div class="statusbar">
+ <div class="loading"></div>
+ <div class="position"></div>
+ </div>
+ </div>
+ <div class="timing">
+ <div id="sm2_timing" class="timing-data">
+ <span class="sm2_position">%s1</span> / <span class="sm2_total">%s2</span></div>
+ </div>
+ <div class="peak">
+ <div class="peak-box"><span class="l"></span><span class="r"></span>
+ </div>
+ </div>
+ </div>
+
+ <div id="spectrum-container" class="spectrum-container">
+ <div class="spectrum-box">
+ <div class="spectrum"></div>
+ </div>
+ </div>
</div>
CSSFileList[]=page-player.css
[JavaScriptSettings]
+JavaScriptList[]=soundmanager2.js
JavaScriptList[]=init.js
-JavaScriptList[]=soundmanager2-nodebug-jsmin.js
JavaScriptList[]=page-player.js