* @copyright Copyright (C) 2010-2023 Uwe Steinmann * @version Release: @package_version@ */ /** * Class which outputs the html page for Dashboard view * * @category DMS * @package SeedDMS * @author Markus Westphal, Malcolm Cowe, Uwe Steinmann * @copyright Copyright (C) 2010-2023 Uwe Steinmann * @version Release: @package_version@ */ class SeedDMS_View_Dashboard extends SeedDMS_Theme_Style { protected function printList($documents, $previewer) { /* {{{ */ $txt = $this->callHook('folderListPreContent', null, [], $documents); if(is_string($txt)) echo $txt; $i = 0; $txt = $this->callHook('folderListHeader', null, '', ''); if(is_string($txt)) { echo $txt; } elseif(is_array($txt)) { print ""; print "\n\n"; foreach($txt as $headcol) echo "\n"; print "\n\n"; } else { echo $this->folderListHeader(); } print "\n"; foreach($documents as $document) { $document->verifyLastestContentExpriry(); $txt = $this->callHook('documentListItem', $document, $previewer, false, 'dashboard'); if(is_string($txt)) echo $txt; else { $extracontent = array(); $extracontent['below_title'] = $this->getListRowPath($document); echo $this->documentListRow($document, $previewer, false, 0, $extracontent); } } $txt = $this->callHook('folderListFooter', null); if(is_string($txt)) echo $txt; else echo "\n
".$headcol."
\n"; } /* }}} */ public function newdocuments() { /* {{{ */ $dms = $this->params['dms']; $user = $this->params['user']; $cachedir = $this->params['cachedir']; $conversionmgr = $this->params['conversionmgr']; $previewwidth = $this->params['previewWidthList']; $previewconverters = $this->params['previewConverters']; $timeout = $this->params['timeout']; $dayspastdashboard = $this->params['dayspastdashboard']; $xsendfile = $this->params['xsendfile']; $previewer = new SeedDMS_Preview_Previewer($cachedir, $previewwidth, $timeout, $xsendfile); if($conversionmgr) $previewer->setConversionMgr($conversionmgr); else $previewer->setConverters($previewconverters); echo $this->contentHeading(getMLText('new_documents')); $documents = $dms->getLatestChanges('newdocuments', mktime(0, 0, 0)-$dayspastdashboard*86400, time()); $documents = SeedDMS_Core_DMS::filterAccess($documents, $user, M_READ); if (count($documents) > 0) { $this->printList($documents, $previewer); } } /* }}} */ public function updateddocuments() { /* {{{ */ $dms = $this->params['dms']; $user = $this->params['user']; $cachedir = $this->params['cachedir']; $conversionmgr = $this->params['conversionmgr']; $previewwidth = $this->params['previewWidthList']; $previewconverters = $this->params['previewConverters']; $timeout = $this->params['timeout']; $dayspastdashboard = $this->params['dayspastdashboard']; $xsendfile = $this->params['xsendfile']; $previewer = new SeedDMS_Preview_Previewer($cachedir, $previewwidth, $timeout, $xsendfile); if($conversionmgr) $previewer->setConversionMgr($conversionmgr); else $previewer->setConverters($previewconverters); echo $this->contentHeading(getMLText('updated_documents')); $documents = $dms->getLatestChanges('updateddocuments', mktime(0, 0, 0)-$dayspastdashboard*86400, time()); $documents = SeedDMS_Core_DMS::filterAccess($documents, $user, M_READ); if (count($documents) > 0) { $this->printList($documents, $previewer); } } /* }}} */ public function status() { /* {{{ */ $dms = $this->params['dms']; $user = $this->params['user']; $cachedir = $this->params['cachedir']; $conversionmgr = $this->params['conversionmgr']; $previewwidth = $this->params['previewWidthList']; $previewconverters = $this->params['previewConverters']; $timeout = $this->params['timeout']; $dayspastdashboard = $this->params['dayspastdashboard']; $xsendfile = $this->params['xsendfile']; $previewer = new SeedDMS_Preview_Previewer($cachedir, $previewwidth, $timeout, $xsendfile); if($conversionmgr) $previewer->setConversionMgr($conversionmgr); else $previewer->setConverters($previewconverters); echo $this->contentHeading(getMLText('status_change')); $documents = $dms->getLatestChanges('statuschange', mktime(0, 0, 0)-$dayspastdashboard*86400, time()); $documents = SeedDMS_Core_DMS::filterAccess($documents, $user, M_READ); if (count($documents) > 0) { $this->printList($documents, $previewer); } } /* }}} */ function js() { /* {{{ */ $dms = $this->params['dms']; $user = $this->params['user']; header('Content-Type: application/javascript; charset=UTF-8'); parent::jsTranslations(array('cancel', 'splash_move_document', 'confirm_move_document', 'move_document', 'confirm_transfer_link_document', 'transfer_content', 'link_document', 'splash_move_folder', 'confirm_move_folder', 'move_folder')); $this->printDeleteDocumentButtonJs(); /* Add js for catching click on document in one page mode */ $this->printClickDocumentJs(); } /* }}} */ function show() { /* {{{ */ $dms = $this->params['dms']; $user = $this->params['user']; $cachedir = $this->params['cachedir']; $conversionmgr = $this->params['conversionmgr']; $previewwidth = $this->params['previewWidthList']; $previewconverters = $this->params['previewConverters']; $timeout = $this->params['timeout']; $xsendfile = $this->params['xsendfile']; $this->htmlStartPage(getMLText("calendar")); $this->globalNavigation(); $this->contentStart(); $this->rowStart(); $this->columnStart(4); ?>
columnEnd(); $this->columnStart(4); ?>
columnEnd(); $this->columnStart(4); ?>
columnEnd(); $this->rowEnd(); $this->contentEnd(); $this->htmlEndPage(); } /* }}} */ }