pid = $pid; } function fedoraObject() { return new fedora_item($this->pid); } function technicalMetadata($defaults = array(), $dsid = 'OBJ_EXIFTOOL') { $data = $defaults; try { $src = ObjectHelper::getStream($this->pid, $dsid); $doc = new SimpleXMLElement($src); $doc->registerXPathNamespace('File', 'http://ns.exiftool.ca/File/1.0/'); $doc->registerXPathNamespace('Composite', 'http://ns.exiftool.ca/Composite/1.0/'); $mime = reset($doc->xpath('//File:MIMEType')); $data['mime'] = $mime; if(strpos($mime, 'audio/') !== false) { $data['width'] = 300; $data['height'] = 0; } else { $size = reset($doc->xpath('//Composite:ImageSize/text()')); list($width, $height) = explode('x', $size); $data['width'] = $width; $data['height'] = $height; } $data['doc'] = $src; } catch(Exception $e) { $data = $defaults; } return $data; } function getPosterFrameDatastreamInfo($dsid = 'FULL_SIZE') { $p = ObjectHelper::getDatastreamInfo($this->pid, $dsid); if(empty($p) || $p == ' ' || $p === false) { return false; } return $p; } function getMediaDatastreamInfo($dsid = 'OBJ', $alt = array('')) { $p = ObjectHelper::getDatastreamInfo($this->pid, $dsid); if(empty($p) || $p == ' ' || $p === false) { if(!empty($alt)) { $ds = array_shift($alt); return $this->getMediaDatastreamInfo($ds, $alt); } return false; } return $p; } function enableDownload() { return false; } function showQt() { module_load_include('inc', 'fedora_repository', 'plugins/tagging_form'); module_load_include('inc', 'fedora_repository', 'plugins/ShowStreamsInFieldSets'); module_load_include('inc', 'fedora_repository', 'api/fedora_item'); $info = $this->technicalMetadata(array('width' => 640, 'height' => 480)); $width = $info['width']; $height = $info['height']; $pframe = $this->getPosterFrameDatastreamInfo(); $media = $this->getMediaDatastreamInfo('PROXY', array('OBJ')); if($media === false ) { return ''; } global $base_url; $path = drupal_get_path('module', 'Fedora_Repository'); $fullPath=base_path().$path; $content= ''; $pathTojs = drupal_get_path('module', 'Fedora_Repository').'/js/AC_Quicktime.js'; drupal_add_js($pathTojs); $divid = 'player'.md5($this->pid).'MOV'; $content .= '
'; if($pframe !== false) { $content .= '
'; $content .= ''; $content .= '
'; $content .= '
'; } $content .= '
'; if($this->enableDownload()) { $url = base_path().'fedora/repository/'.$this->pid.'/OBJ/MOV.mov'; $content .= 'Download Media File'; } $src = base_path().'fedora/repository/'.$this->pid.'/' . $media->ID. '/MOV.mov'; $qtparams = ''; $qtparams .= "'autostart', '" . ($pframe !== false ? 'true' : 'false') . "', "; $init = << t('Quicktime'), '#collapsible' => TRUE, '#collapsed' => FALSE, '#value' => $content); return theme('fieldset',$collection_fieldset); } }