function processMedium(&$medium, &$gallery) { $mime = $medium->getMimeType(); zmgimport('org.zoomfactory.lib.mime.zmgMimeHelper'); $ok = true; if (zmgMimeHelper::isImage($mime, true)) { zmgimport('org.zoomfactory.var.plugins.toolbox.tools.imageTool'); $ok = zmgImageTool::process($medium, $gallery); if (!$ok) { zmgToolboxPlugin::registerError(T_('Upload medium'), T_('Could not create thumbnail of image file')); //TODO: cleanup } } else { if (zmgMimeHelper::isDocument($mime, true) && zmgMimeHelper::isIndexable($mime, true)) { zmgimport('org.zoomfactory.var.plugins.toolbox.tools.documentTool'); $ok = zmgDocumentTool::process($medium, $gallery); if (!$ok) { zmgToolboxPlugin::registerError(T_('Upload medium'), T_('Could not index document')); //TODO: cleanup } } else { if (zmgMimeHelper::isVideo($mime, true) && zmgMimeHelper::isThumbnailable($mime, true)) { zmgimport('org.zoomfactory.var.plugins.toolbox.tools.videoTool'); $ok = zmgVideoTool::process($medium, $gallery); if (!$ok) { zmgToolboxPlugin::registerError(T_('Upload medium'), T_('Could not create thumbnail of video file')); //TODO: cleanup } } else { if (zmgMimeHelper::isAudio($mime, true)) { zmgimport('org.zoomfactory.var.plugins.toolbox.tools.audioTool'); $ok = zmgAudioTool::process($medium, $gallery); if (!$ok) { zmgToolboxPlugin::registerError(T_('Upload medium'), T_('Audio file not supported')); //TODO: cleanup } } else { zmgToolboxPlugin::registerError(T_('Upload medium'), T_('Unsupported medium type.')); } } } } return $ok; }
/** * Detect if Xpdf is available on the system. * * @return void */ function autoDetect() { static $output, $status; $bar = @exec(zmgDocumentTool::detectPath() . 'pdftotext -v', $output, $status); $res = false; if (!empty($output[0])) { if (preg_match("/pdftotext/i", $output[0], $matches)) { zmgToolboxPlugin::registerError(T_('Xpdf (or pdftotext)'), T_('is available.')); $res = true; } } if (!$res) { zmgToolboxPlugin::registerError(T_('Xpdf (or pdftotext)'), T_('could not be detected on your system.')); } unset($output, $status); }