add preview width for dropfolder lists

This commit is contained in:
Uwe Steinmann 2017-09-20 09:20:56 +02:00
parent b4bcb94b6c
commit 3e2d6e3f74
5 changed files with 29 additions and 6 deletions

View File

@ -217,8 +217,12 @@ class Settings { /* {{{ */
var $_cmdTimeout = 5;
// Preview image width in lists
var $_previewWidthList = 40;
// Preview image width in menu lists
var $_previewWidthMenuList = 40;
// Preview image width on document details page
var $_previewWidthDetail = 100;
// Preview image width in drop folder list
var $_previewWidthDropFolderList = 100;
// show full preview on document details page
var $_showFullPreview = false;
// convert to pdf for preview on document details page
@ -404,8 +408,12 @@ class Settings { /* {{{ */
$this->_theme = strval($tab["theme"]);
if(isset($tab["previewWidthList"]))
$this->_previewWidthList = intval($tab["previewWidthList"]);
if(isset($tab["previewWidthMenuList"]))
$this->_previewWidthMenuList = intval($tab["previewWidthMenuList"]);
if(isset($tab["previewWidthDetail"]))
$this->_previewWidthDetail = intval($tab["previewWidthDetail"]);
if(isset($tab["previewWidthDropFolderList"]))
$this->_previewWidthDropFolderList = intval($tab["previewWidthDropFolderList"]);
$this->_showFullPreview = Settings::boolVal($tab["showFullPreview"]);
$this->_convertToPdf = Settings::boolVal($tab["convertToPdf"]);
@ -719,7 +727,9 @@ class Settings { /* {{{ */
$this->setXMLAttributValue($node, "availablelanguages", implode(',', $this->_availablelanguages));
$this->setXMLAttributValue($node, "theme", $this->_theme);
$this->setXMLAttributValue($node, "previewWidthList", $this->_previewWidthList);
$this->setXMLAttributValue($node, "previewWidthMenuList", $this->_previewWidthMenuList);
$this->setXMLAttributValue($node, "previewWidthDetail", $this->_previewWidthDetail);
$this->setXMLAttributValue($node, "previewWidthDropFolderList", $this->_previewWidthDropFolderList);
$this->setXMLAttributValue($node, "showFullPreview", $this->_showFullPreview);
$this->setXMLAttributValue($node, "convertToPdf", $this->_convertToPdf);

View File

@ -65,6 +65,8 @@ if ($action == "saveSettings")
$settings->_availablelanguages = $_POST["availablelanguages"];
$settings->_theme = $_POST["theme"];
$settings->_previewWidthList = $_POST["previewWidthList"];
$settings->_previewWidthMenuList = $_POST["previewWidthMenuList"];
$settings->_previewWidthDropFolderList = $_POST["previewWidthDropFolderList"];
$settings->_previewWidthDetail = $_POST["previewWidthDetail"];
$settings->_showFullPreview = getBoolValue("showFullPreview");
$settings->_convertToPdf = getBoolValue("convertToPdf");

View File

@ -49,7 +49,8 @@ if($view) {
$view->setParam('dropfolderfile', isset($_GET["dropfolderfile"]) ? $_GET["dropfolderfile"] : '');
$view->setParam('form', $form);
$view->setParam('cachedir', $settings->_cacheDir);
$view->setParam('previewWidthList', $settings->_previewWidthList);
$view->setParam('previewWidthMenuList', $settings->_previewWidthMenuList);
$view->setParam('previewWidthList', $settings->_previewWidthDropFolderList);
$view->setParam('timeout', $settings->_cmdTimeout);
$view->setParam('showfolders', $showfolders);
$view($_GET);

View File

@ -56,10 +56,10 @@ $('.folderselect').click(function(ev) {
$dropfolderdir = $this->params['dropfolderdir'];
$showfolders = $this->params['showfolders'];
$cachedir = $this->params['cachedir'];
$previewwidth = $this->params['previewWidthMenuList'];
$timeout = $this->params['timeout'];
$folderid = isset($_GET['folderid']) ? $_GET['folderid'] : 0;
$previewwidth = 40;
$previewer = new SeedDMS_Preview_Previewer($cachedir, $previewwidth, $timeout);
$c = 0; // count files
@ -78,10 +78,12 @@ $('.folderselect').click(function(ev) {
if($showfolders == 0 && !is_dir($dir.'/'.$entry)) {
$c++;
$mimetype = finfo_file($finfo, $dir.'/'.$entry);
$previewer->createRawPreview($dir.'/'.$entry, 'dropfolder/', $mimetype);
$filecontent .= "<li><a".($folderid ? " href=\"../out/out.AddDocument.php?folderid=".$folderid."&dropfolderfileform1=".urldecode($entry)."\"" : "").">";
if($previewer->hasRawPreview($dir.'/'.$entry, 'dropfolder/')) {
$filecontent .= "<div style=\"float: left; display:inline; width:40px; max-height:40px;overflow:hidden;\"><img filename=\"".$entry."\" width=\"".$previewwidth."\" src=\"../op/op.DropFolderPreview.php?filename=".$entry."&width=".$previewwidth."\" title=\"".htmlspecialchars($mimetype)."\"></div>";
$filecontent .= "<li><a".($folderid ? " href=\"../out/out.AddDocument.php?folderid=".$folderid."&dropfolderfileform1=".urldecode($entry)."\" title=\"".getMLText('menu_upload_from_dropfolder')."\"" : "").">";
if($previewwidth) {
$previewer->createRawPreview($dir.'/'.$entry, 'dropfolder/', $mimetype);
if($previewer->hasRawPreview($dir.'/'.$entry, 'dropfolder/')) {
$filecontent .= "<div style=\"float: left; display:inline; width:40px; max-height:40px;overflow:hidden;\"><img filename=\"".$entry."\" width=\"".$previewwidth."\" src=\"../op/op.DropFolderPreview.php?filename=".$entry."&width=".$previewwidth."\" title=\"".htmlspecialchars($mimetype)."\"></div>";
}
}
$filecontent .= "<div style=\"margin-left:10px; margin-right: 40px; display:inline-block;\">".$entry."<br /><span style=\"font-size: 85%;\">".SeedDMS_Core_File::format_filesize(filesize($dir.'/'.$entry)).", ".date('Y-m-d H:i:s', filectime($dir.'/'.$entry))."</span></div></a></li>\n";
} elseif($showfolders && is_dir($dir.'/'.$entry)) {

View File

@ -187,6 +187,14 @@ if(!is_writeable($settings->_configFilePath)) {
<td><?php printMLText("settings_previewWidthList");?>:</td>
<td><?php $this->showTextField("previewWidthList", $settings->_previewWidthList); ?></td>
</tr>
<tr title="<?php printMLText("settings_previewWidthMenuList_desc");?>">
<td><?php printMLText("settings_previewWidthMenuList");?>:</td>
<td><?php $this->showTextField("previewWidthMenuList", $settings->_previewWidthMenuList); ?></td>
</tr>
<tr title="<?php printMLText("settings_previewWidthDropFolderList_desc");?>">
<td><?php printMLText("settings_previewWidthDropFolderList");?>:</td>
<td><?php $this->showTextField("previewWidthDropFolderList", $settings->_previewWidthDropFolderList); ?></td>
</tr>
<tr title="<?php printMLText("settings_previewWidthDetail_desc");?>">
<td><?php printMLText("settings_previewWidthDetail");?>:</td>
<td><?php $this->showTextField("previewWidthDetail", $settings->_previewWidthDetail); ?></td>