Path(); $videoFormats = array(); $ffmpegFormats = preg_split('/\s+/', ZM_FFMPEG_FORMATS); foreach ( $ffmpegFormats as $ffmpegFormat ) { if ( preg_match('/^([^*]+)(\*\*?)$/', $ffmpegFormat, $matches) ) { $videoFormats[$matches[1]] = $matches[1]; if ( !isset($videoFormat) && $matches[2] == '*' ) { $videoFormat = $matches[1]; } } else { $videoFormats[$ffmpegFormat] = $ffmpegFormat; } } $videoFiles = array(); if ( $dir = opendir($eventPath) ) { while ( ($file = readdir($dir)) !== false ) { $file = $eventPath.'/'.$file; if ( is_file($file) ) { if ( preg_match('/\.(?:'.join('|', $videoFormats).')$/', $file) ) { $videoFiles[] = $file; } } } closedir($dir); } if ( isset($_REQUEST['deleteIndex']) ) { $deleteIndex = validInt($_REQUEST['deleteIndex']); unlink($videoFiles[$deleteIndex]); unset($videoFiles[$deleteIndex]); } if ( isset($_REQUEST['downloadIndex']) ) { // can't be output buffering, as this file might be large ob_end_clean(); $downloadIndex = validInt($_REQUEST['downloadIndex']); header('Pragma: public'); header('Expires: 0'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Cache-Control: private', false); // required by certain browsers header('Content-Description: File Transfer'); header('Content-disposition: attachment; filename="'.basename($videoFiles[$downloadIndex]).'"'); // basename is required because the video index contains the path and firefox doesn't strip the path but simply replaces the slashes with an underscore. header('Content-Transfer-Encoding: binary'); header('Content-Type: application/force-download'); header('Content-Length: '.filesize($videoFiles[$downloadIndex])); readfile($videoFiles[$downloadIndex]); exit; } $focusWindow = true; xhtmlHeaders(__FILE__, translate('Video')); ?>

checked="checked"/>
disabled="disabled"/>

0 ) { preg_match('/^(.+)-((?:r[_\d]+)|(?:F[_\d]+))-((?:s[_\d]+)|(?:S[0-9a-z]+))\.([^.]+)$/', $file, $matches); if ( preg_match('/^r(.+)$/', $matches[2], $temp_matches) ) { $rate = (int)(100 * preg_replace( '/_/', '.', $temp_matches[1] ) ); $rateText = isset($rates[$rate])?$rates[$rate]:($rate."x"); } elseif ( preg_match('/^F(.+)$/', $matches[2], $temp_matches) ) { $rateText = $temp_matches[1].'fps'; } if ( preg_match('/^s(.+)$/', $matches[3], $temp_matches) ) { $scale = (int)(100 * preg_replace('/_/', '.', $temp_matches[1]) ); $scaleText = isset($scales[$scale])?$scales[$scale]:($scale.'x'); } elseif ( preg_match('/^S(.+)$/', $matches[3], $temp_matches) ) { $scaleText = $temp_matches[1]; } $width = $scale?reScale($event['Width'], $scale):$event['Width']; $height = $scale?reScale($event['Height'], $scale):$event['Height']; ?>
 /  /