diff --git a/plugins/ktstandard/documentpreview/documentPreview.php b/plugins/ktstandard/documentpreview/documentPreview.php old mode 100644 new mode 100755 index df9787f..11e6776 --- a/plugins/ktstandard/documentpreview/documentPreview.php +++ b/plugins/ktstandard/documentpreview/documentPreview.php @@ -257,8 +257,8 @@ class DocumentPreview { $sId = $this->_IDocId; /* Create table */ - - $sInfo = " + + $sInfo = "
@@ -276,8 +276,19 @@ class DocumentPreview { $sInfo .= ""; } - $sInfo .= " -
{$sFilenameLb}{$sFilename}
{$sMimeTypeLb}{$sMimeType}
{$sVersionLb}{$iVersion}
{$sCheckedLb}{$sCheckedOutBy}
{$sIdLb}{$sId}
"; + $sInfo .= "{$sIdLb}{$sId}"; + $sInfo .= " "; + + // Check for existence of thumbnail plugin + if (KTPluginUtil::pluginIsActive('thumbnails.generator.processor.plugin')) { + // hook into thumbnail plugin to get display for thumbnail + include_once(KT_DIR . '/plugins/thumbnails/thumbnails.php'); + $thumbnailer = new ThumbnailViewlet(); + $thumbnailDisplay = $thumbnailer->display_viewlet($sId); + if ($thumbnailDisplay != '') { + $sInfo .= "
$thumbnailDisplay
"; + } + } return $sInfo; } diff --git a/plugins/ktstandard/documentpreview/documentPreviewPlugin.php b/plugins/ktstandard/documentpreview/documentPreviewPlugin.php old mode 100644 new mode 100755 index 7d9b735..4e2fad5 --- a/plugins/ktstandard/documentpreview/documentPreviewPlugin.php +++ b/plugins/ktstandard/documentpreview/documentPreviewPlugin.php @@ -68,14 +68,23 @@ class PreviewColumn extends AdvancedColumn { $sTitle = _kt('Property Preview'); $sLoading = _kt('Loading...'); - + $width = 500; + + // Check for existence of thumbnail plugin + if (KTPluginUtil::pluginIsActive('thumbnails.generator.processor.plugin')) { + // hook into thumbnail plugin to get display for thumbnail + include_once(KT_DIR . '/plugins/thumbnails/thumbnails.php'); + $thumbnailer = new ThumbnailViewlet(); + $width += $thumbnailer->get_width($iDocumentId); + } + $link = 'sActivation == 'mouse-over'){ - $sJs = "javascript: this.t = setTimeout('showInfo(\'$iDocumentId\', \'$sUrl\', \'$sDir\', \'$sLoading\')', $iDelay);"; + $sJs = "javascript: this.t = setTimeout('showInfo(\'$iDocumentId\', \'$sUrl\', \'$sDir\', \'$sLoading\', $width)', $iDelay);"; $link .= 'onmouseover = "'.$sJs.'" onmouseout = "clearTimeout(this.t);">'; }else{ - $sJs = "javascript: showInfo('$iDocumentId', '$sUrl', '$sDir', '$sLoading');"; + $sJs = "javascript: showInfo('$iDocumentId', '$sUrl', '$sDir', '$sLoading', $width);"; $link .= 'onclick = "'.$sJs.'" title="'.$sTitle.'">'; } diff --git a/plugins/ktstandard/documentpreview/resources/preview.js b/plugins/ktstandard/documentpreview/resources/preview.js old mode 100644 new mode 100755 index f9703a1..9c4f5ed --- a/plugins/ktstandard/documentpreview/resources/preview.js +++ b/plugins/ktstandard/documentpreview/resources/preview.js @@ -1,7 +1,7 @@ /* Create the preview / info box using an ExtJS Dialog window */ -var showInfo = function(iDocId, sUrl, sDir, loading){ +var showInfo = function(iDocId, sUrl, sDir, loading, mwidth){ // Create the info box container div createPanel(); @@ -14,7 +14,7 @@ var showInfo = function(iDocId, sUrl, sDir, loading){ shadow: false, modal: true, plain: false, - width: 500, + width: mwidth, height: 360, minWidth: 300, minHeight: 250 diff --git a/plugins/thumbnails/templates/thumbnail_viewlet.smarty b/plugins/thumbnails/templates/thumbnail_viewlet.smarty old mode 100644 new mode 100755 index e69de29..804706e --- a/plugins/thumbnails/templates/thumbnail_viewlet.smarty +++ b/plugins/thumbnails/templates/thumbnail_viewlet.smarty @@ -0,0 +1,3 @@ +
+
+
\ No newline at end of file diff --git a/plugins/thumbnails/thumbnails.php b/plugins/thumbnails/thumbnails.php old mode 100644 new mode 100755 index 2b97851..83f8b37 --- a/plugins/thumbnails/thumbnails.php +++ b/plugins/thumbnails/thumbnails.php @@ -131,34 +131,64 @@ class thumbnailGenerator extends BaseProcessor - check out ktcore/KTDocumentViewlets.php - viewlet class is below */ - + global $default; $pdfDir = $default->pdfDirectory; $pdfFile = $pdfDir .'/'. $this->document->iId.'.pdf'; + $thumbnaildir = $pdfDir."/thumbnails"; + $thumbnailfile = $thumbnaildir.'/'.$this->document->iId.'.jpg'; + + //if thumbail dir does not exist, generate one + if (!file_exists($thumbnaildir)) { + mkdir($thumbnaildir, 0755); + } - // if a previous version of the pdf exists - delete it + // if there is no pdf that exists - hop out if(!file_exists($pdfFile)){ global $default; $default->log->debug('Thumbnail Generator Plugin: PDF file does not exist, cannot generate a thumbnail'); return false; } - + // if a previous version of the thumbnail exists - delete it + if (file_exists($thumbnailfile)) { + @unlink($thumbnailfile); + } // do generation - return true; + if (extension_loaded('imagick')) { + $result= shell_exec("convert -size 200x200 {$pdfFile}[0] -resize 200x200 $thumbnailfile"); + return true; + }else{ + $default->log->debug('Thumbnail Generator Plugin: Imagemagick not installed, cannot generate a thumbnail'); + return false; + } + } } - class ThumbnailViewlet extends KTDocumentViewlet { var $sName = 'thumbnail.viewlets'; - function display_viewlet() { + public function display_viewlet($documentId) { + global $default; $oKTTemplating =& KTTemplating::getSingleton(); $oTemplate =& $oKTTemplating->loadTemplate('thumbnail_viewlet'); if (is_null($oTemplate)) return ''; - - $oTemplate->setData(array()); + $pdfDir = $default->pdfDirectory; + $thumbnailfile = $pdfDir . '/thumbnails/'.$documentId.'.jpg'; + // check that file exists + if (!file_exists($thumbnailfile)) return ''; + // NOTE this is to turn the config setting for the PDF directory into a proper URL and not a path + $thumbnailUrl = str_replace($default->varDirectory, 'var/', $thumbnailfile); + $oTemplate->setData(array('thumbnail' => $thumbnailUrl)); return $oTemplate->render(); } + + public function get_width($documentId){ + global $default; + $pdfDir = $default->pdfDirectory; + $thumbnailfile = $pdfDir . '/thumbnails/'.$documentId.'.jpg'; + $size = getimagesize($thumbnailfile); + return $size[0]; + } } ?> \ No newline at end of file diff --git a/plugins/thumbnails/thumbnailsPlugin.php b/plugins/thumbnails/thumbnailsPlugin.php old mode 100644 new mode 100755 index 6be306f..6be306f --- a/plugins/thumbnails/thumbnailsPlugin.php +++ b/plugins/thumbnails/thumbnailsPlugin.php