From ddce7c9c69c429c5fc986dc35ca379368fd4b5cc Mon Sep 17 00:00:00 2001 From: Uwe Steinmann Date: Fri, 5 Feb 2016 14:48:02 +0100 Subject: [PATCH 01/11] completed, prettyfied template --- conf/settings.xml.template | 214 ++++++++++++++++++++++++------------- 1 file changed, 139 insertions(+), 75 deletions(-) diff --git a/conf/settings.xml.template b/conf/settings.xml.template index e8c0f56ae..32afc7468 100644 --- a/conf/settings.xml.template +++ b/conf/settings.xml.template @@ -1,23 +1,28 @@ - - - + - enableDropUpload: XXX + - enableRecursiveCount: XXX + - maxRecursiveCount: XXX + - enableThemeSelector: XXX + - fullSearchEngine: Either "lucene" or "sqlitefts" + - sortFoldersDefault: XXX + --> - - + --> - + /> - - @@ -86,23 +102,41 @@ partitionSize = "2000000" dropFolderDir = "" cacheDir = "" - > - - - + - passwordStrength: XXX + - passwordStrengthAlgorithm: XXX + - passwordExpiration: XXX + - passwordHistory: XXX + - loginFailure: XXX + - autoLoginUser: XXX + - quota: XXX + - undelUserIds: XXX + - encryptionKey: XXX + - cookieLifetime: XXX + --> + passwordStrength = "0" + passwordStrengthAlgorithm = "simple" + passwordExpiration = "0" + passwordHistory = "0" + loginFailure = "0" + autoLoginUser = "0" + quota = "0" + undelUserIds = "" + encryptionKey = "b8c75fa53c0c7a18a84adb6ca815bd94" + cookieLifetime = "0"> + --> - + bindDN = "" + bindPw = "" + filter = "" + /> + - bindDN: XXX + - bindPw: XXX + --> - + bindDN = "" + bindPw = "" + /> - + - doNotCheckVersion: Whether or not to check the database schema for its correct version. + --> - - - + + smtpUser = "" + smtpPassword = "" + /> - - - + - showMissingTranslations: XXX + --> - - + --> - + adminIP = "" + /> + - enableOwnerRevApp: XXX + - enableSelfRevApp: XXX + - presetExpirationDate: XXX + - overrideMimeType: XXX + --> - - - - + extraPath = "" + maxExecutionTime = "30" + cmdTimeout = "1" + /> + + - + From d4deb0cc357918b9478a2da256ac404ff71d5828 Mon Sep 17 00:00:00 2001 From: Uwe Steinmann Date: Fri, 5 Feb 2016 16:47:38 +0100 Subject: [PATCH 02/11] add method getNotifications() --- SeedDMS_Core/Core/inc.ClassUser.php | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/SeedDMS_Core/Core/inc.ClassUser.php b/SeedDMS_Core/Core/inc.ClassUser.php index b582de3ad..52ab819b6 100644 --- a/SeedDMS_Core/Core/inc.ClassUser.php +++ b/SeedDMS_Core/Core/inc.ClassUser.php @@ -1287,5 +1287,33 @@ class SeedDMS_Core_User { return true; } /* }}} */ + /** + * Get all notifications of user + * + * @param integer $type type of item (T_DOCUMENT or T_FOLDER) + * @return array array of notifications + */ + function getNotifications($type=0) { /* {{{ */ + $db = $this->_dms->getDB(); + $queryStr = "SELECT `tblNotify`.* FROM `tblNotify` ". + "WHERE `tblNotify`.`userID` = ". $this->_id; + if($type) { + $queryStr .= " AND `tblNotify`.`targetType` = ". (int) $type; + } + + $resArr = $db->getResultArray($queryStr); + if (is_bool($resArr) && !$resArr) + return false; + + $notifications = array(); + foreach ($resArr as $row) { + $not = new SeedDMS_Core_Notification($row["target"], $row["targetType"], $row["userID"], $row["groupID"]); + $not->setDMS($this); + array_push($notifications, $not); + } + + return $notifications; + } /* }}} */ + } ?> From e0de75d16074ca4b8ead5d4961a3c35cfadd1671 Mon Sep 17 00:00:00 2001 From: Uwe Steinmann Date: Fri, 5 Feb 2016 16:47:54 +0100 Subject: [PATCH 03/11] add method getNotifications() --- SeedDMS_Core/Core/inc.ClassGroup.php | 29 ++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/SeedDMS_Core/Core/inc.ClassGroup.php b/SeedDMS_Core/Core/inc.ClassGroup.php index 88535dad0..dc86ba64a 100644 --- a/SeedDMS_Core/Core/inc.ClassGroup.php +++ b/SeedDMS_Core/Core/inc.ClassGroup.php @@ -321,5 +321,34 @@ class SeedDMS_Core_Group { return $status; } /* }}} */ + + /** + * Get all notifications of group + * + * @param integer $type type of item (T_DOCUMENT or T_FOLDER) + * @return array array of notifications + */ + function getNotificationsByGroup($type=0) { /* {{{ */ + $db = $this->_dms->getDB(); + $queryStr = "SELECT `tblNotify`.* FROM `tblNotify` ". + "WHERE `tblNotify`.`groupID` = ". $this->_id; + if($type) { + $queryStr .= " AND `tblNotify`.`targetType` = ". (int) $type; + } + + $resArr = $db->getResultArray($queryStr); + if (is_bool($resArr) && !$resArr) + return false; + + $notifications = array(); + foreach ($resArr as $row) { + $not = new SeedDMS_Core_Notification($row["target"], $row["targetType"], $row["userID"], $row["groupID"]); + $not->setDMS($this); + array_push($notifications, $not); + } + + return $notifications; + } /* }}} */ + } ?> From 879a67ab8431c61a3ba6b73173cdf5208acbe527 Mon Sep 17 00:00:00 2001 From: Uwe Steinmann Date: Fri, 5 Feb 2016 16:48:32 +0100 Subject: [PATCH 04/11] getNotificationsBy[User|Group] uses the new methods in SeedDMS_Core_User and SeedDMS_Core_Group --- SeedDMS_Core/Core/inc.ClassDMS.php | 42 +++++------------------------- 1 file changed, 6 insertions(+), 36 deletions(-) diff --git a/SeedDMS_Core/Core/inc.ClassDMS.php b/SeedDMS_Core/Core/inc.ClassDMS.php index 0e7b1ae84..83dbdeecf 100644 --- a/SeedDMS_Core/Core/inc.ClassDMS.php +++ b/SeedDMS_Core/Core/inc.ClassDMS.php @@ -1529,57 +1529,27 @@ class SeedDMS_Core_DMS { /** * Get all notifications for a group * + * deprecated: User {@link SeedDMS_Core_Group::getNotifications()} + * * @param object $group group for which notifications are to be retrieved * @param integer $type type of item (T_DOCUMENT or T_FOLDER) * @return array array of notifications */ function getNotificationsByGroup($group, $type=0) { /* {{{ */ - $queryStr = "SELECT `tblNotify`.* FROM `tblNotify` ". - "WHERE `tblNotify`.`groupID` = ". $group->getID(); - if($type) { - $queryStr .= " AND `tblNotify`.`targetType` = ". (int) $type; - } - - $resArr = $this->db->getResultArray($queryStr); - if (is_bool($resArr) && !$resArr) - return false; - - $notifications = array(); - foreach ($resArr as $row) { - $not = new SeedDMS_Core_Notification($row["target"], $row["targetType"], $row["userID"], $row["groupID"]); - $not->setDMS($this); - array_push($notifications, $cat); - } - - return $notifications; + return $group->getNotifications($type); } /* }}} */ /** * Get all notifications for a user * + * deprecated: User {@link SeedDMS_Core_User::getNotifications()} + * * @param object $user user for which notifications are to be retrieved * @param integer $type type of item (T_DOCUMENT or T_FOLDER) * @return array array of notifications */ function getNotificationsByUser($user, $type=0) { /* {{{ */ - $queryStr = "SELECT `tblNotify`.* FROM `tblNotify` ". - "WHERE `tblNotify`.`userID` = ". $user->getID(); - if($type) { - $queryStr .= " AND `tblNotify`.`targetType` = ". (int) $type; - } - - $resArr = $this->db->getResultArray($queryStr); - if (is_bool($resArr) && !$resArr) - return false; - - $notifications = array(); - foreach ($resArr as $row) { - $not = new SeedDMS_Core_Notification($row["target"], $row["targetType"], $row["userID"], $row["groupID"]); - $not->setDMS($this); - array_push($notifications, $cat); - } - - return $notifications; + return $user->getNotifications($type); } /* }}} */ /** From 20f1de9a3f1de6b8e80aaf9214c93650e53034d5 Mon Sep 17 00:00:00 2001 From: Uwe Steinmann Date: Fri, 5 Feb 2016 16:49:27 +0100 Subject: [PATCH 05/11] replace sql statements with method calls in SeedDMS_Core --- views/bootstrap/class.ManageNotify.php | 64 ++++++++++---------------- 1 file changed, 25 insertions(+), 39 deletions(-) diff --git a/views/bootstrap/class.ManageNotify.php b/views/bootstrap/class.ManageNotify.php index f95b1be69..add47d6b2 100644 --- a/views/bootstrap/class.ManageNotify.php +++ b/views/bootstrap/class.ManageNotify.php @@ -35,40 +35,26 @@ class SeedDMS_View_ManageNotify extends SeedDMS_Bootstrap_Style { function getNotificationList($as_group, $folders) { /* {{{ */ // First, get the list of groups of which the user is a member. + $notifications = array(); if ($as_group){ - - $groups = $this->user->getGroups(); - - if (count($groups)==0) return NULL; - - $grpList = ""; + if(!($groups = $this->user->getGroups())) + return NULL; + foreach ($groups as $group) { - $grpList .= (strlen($grpList)==0 ? "" : ", ") . $group->getID(); + $tmp = $group->getNotifications($folders ? T_FOLDER : T_DOCUMENT); + if($tmp) { + $notifications = array_merge($notifications, $tmp); + } } - - $queryStr = "SELECT `tblNotify`.* FROM `tblNotify` ". - "WHERE `tblNotify`.`groupID` IN (". $grpList .")"; - } else { - $queryStr = "SELECT `tblNotify`.* FROM `tblNotify` ". - "WHERE `tblNotify`.`userID` = '". $this->user->getID()."'" ; + $notifications = $this->user->getNotifications($folders ? T_FOLDER : T_DOCUMENT); } - - $resArr = $this->db->getResultArray($queryStr); - - $ret=array(); - - foreach ($resArr as $res){ - - if (($res["targetType"] == T_DOCUMENT)&&(!$folders)) $ret[]=$res["target"]; - if (($res["targetType"] == T_FOLDER)&&($folders)) $ret[]=$res["target"]; - } - - return $ret; + + return $notifications; } /* }}} */ - function printFolderNotificationList($ret,$deleteaction=true) { /* {{{ */ - if (count($ret)==0) { + function printFolderNotificationList($notifications, $deleteaction=true) { /* {{{ */ + if (count($notifications)==0) { printMLText("empty_notify_list"); } else { @@ -80,17 +66,17 @@ class SeedDMS_View_ManageNotify extends SeedDMS_Bootstrap_Style { print "".getMLText("owner")."\n"; print "".getMLText("actions")."\n"; print "\n\n"; - foreach($ret as $ID) { - $fld = $this->dms->getFolder($ID); + foreach($notifications as $notification) { + $fld = $this->dms->getFolder($notification->getTarget()); if (is_object($fld)) { $owner = $fld->getOwner(); print ""; print ""; - print "" . htmlspecialchars($fld->getName()) . "\n"; + print "getID()."\">" . htmlspecialchars($fld->getName()) . "\n"; print "".htmlspecialchars($owner->getFullName()).""; print ""; - if ($deleteaction) print " ".getMLText("delete").""; - else print "".getMLText("edit").""; + if ($deleteaction) print " ".getMLText("delete").""; + else print "".getMLText("edit").""; print ""; } } @@ -98,9 +84,9 @@ class SeedDMS_View_ManageNotify extends SeedDMS_Bootstrap_Style { } } /* }}} */ - function printDocumentNotificationList($ret,$deleteaction=true) { /* {{{ */ + function printDocumentNotificationList($notifications,$deleteaction=true) { /* {{{ */ - if (count($ret)==0) { + if (count($notifications)==0) { printMLText("empty_notify_list"); } else { @@ -113,8 +99,8 @@ class SeedDMS_View_ManageNotify extends SeedDMS_Bootstrap_Style { print "".getMLText("status")."\n"; print "".getMLText("action")."\n"; print "\n\n"; - foreach ($ret as $ID) { - $doc = $this->dms->getDocument($ID); + foreach ($notifications as $notification) { + $doc = $this->dms->getDocument($notification->getTarget()); if (is_object($doc)) { $owner = $doc->getOwner(); $latest = $doc->getLatestContent(); @@ -129,7 +115,7 @@ class SeedDMS_View_ManageNotify extends SeedDMS_Bootstrap_Style { } print ""; - print "" . htmlspecialchars($doc->getName()) . ""; + print "getID()."\">" . htmlspecialchars($doc->getName()) . ""; print "
".getMLText('owner').": ".htmlspecialchars($owner->getFullName()).", ".getMLText('creation_date').": ".date('Y-m-d', $doc->getDate()).", ".getMLText('version')." ".$latest->getVersion()." - ".date('Y-m-d', $latest->getDate()).""; $comment = $latest->getComment(); if($comment) { @@ -139,8 +125,8 @@ class SeedDMS_View_ManageNotify extends SeedDMS_Bootstrap_Style { print "".getOverallStatusText($status["status"]).""; print ""; - if ($deleteaction) print " ".getMLText("delete").""; - else print "".getMLText("edit").""; + if ($deleteaction) print " ".getMLText("delete").""; + else print "".getMLText("edit").""; print "\n"; } } From e87fe8a80813b2d290bce6aa1b1f61da1f7786a9 Mon Sep 17 00:00:00 2001 From: Uwe Steinmann Date: Fri, 5 Feb 2016 16:50:35 +0100 Subject: [PATCH 06/11] more notes for 4.3.24 --- SeedDMS_Core/package.xml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/SeedDMS_Core/package.xml b/SeedDMS_Core/package.xml index 1513b1eaa..46e3c9b50 100644 --- a/SeedDMS_Core/package.xml +++ b/SeedDMS_Core/package.xml @@ -26,6 +26,10 @@ - make sure boolean attribute is saved as 0/1 - add SeedDMS_Core_User::[g|s]etMandatoryWorkflows() +- add SeedDMS_Core_User::getNotifications() +- add SeedDMS_Core_Group::getNotifications() +- SeedDMS_Core_DMS::getNotificationsByGroup() and +SeedDMS_Core_DMS::getNotificationsByUser() are deprecated From ae11964ca08b5be8523f973eceb3ac2beec75b59 Mon Sep 17 00:00:00 2001 From: Uwe Steinmann Date: Fri, 5 Feb 2016 17:26:24 +0100 Subject: [PATCH 07/11] pass selected category to view --- out/out.Categories.php | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/out/out.Categories.php b/out/out.Categories.php index f06dc7369..43b72aab6 100644 --- a/out/out.Categories.php +++ b/out/out.Categories.php @@ -30,11 +30,16 @@ if (!$user->isAdmin()) { $categories = $dms->getDocumentCategories(); +if(isset($_GET['categoryid']) && $_GET['categoryid']) { + $selcat = $dms->getDocumentCategory($_GET['categoryid']); +} else { + $selcat = null; +} + $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'categories'=>$categories)); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'categories'=>$categories, 'selcategory'=>$selcat)); if($view) { - $view->show(); - exit; + $view($_GET); } ?> From 44a90c02636cc9f826d479f35d8def4072cc66ce Mon Sep 17 00:00:00 2001 From: Uwe Steinmann Date: Fri, 5 Feb 2016 17:26:45 +0100 Subject: [PATCH 08/11] use ajax calls and put all javascript into method js() --- views/bootstrap/class.Categories.php | 147 +++++++++++++-------------- 1 file changed, 72 insertions(+), 75 deletions(-) diff --git a/views/bootstrap/class.Categories.php b/views/bootstrap/class.Categories.php index e373c27a9..fbc3513f9 100644 --- a/views/bootstrap/class.Categories.php +++ b/views/bootstrap/class.Categories.php @@ -31,80 +31,37 @@ require_once("class.Bootstrap.php"); */ class SeedDMS_View_Categories extends SeedDMS_Bootstrap_Style { - function show() { /* {{{ */ - $dms = $this->params['dms']; - $user = $this->params['user']; - $categories = $this->params['categories']; - - $this->htmlStartPage(getMLText("admin_tools")); - $this->globalNavigation(); - $this->contentStart(); - $this->pageNavigation(getMLText("admin_tools"), "admin_tools"); + function js() { /* {{{ */ + $selcat = $this->params['selcategory']; ?> - - +$(document).ready( function() { + $( "#selector" ).change(function() { + $('div.ajax').trigger('update', {categoryid: $(this).val()}); + }); +}); contentHeading(getMLText("global_document_categories")); -?> -
-
-
-: - + function info() { /* {{{ */ + $dms = $this->params['dms']; + $selcat = $this->params['selcategory']; -
-
+ if($selcat) { + $this->contentHeading(getMLText("category_info")); + $documents = $selcat->getDocumentsByCategory(); + echo "\n"; + echo "\n"; + echo "
".getMLText('document_count')."".(count($documents))."
"; + } + } /* }}} */ -
-
- - - - -getID()."\" style=\"display : none;\">"; + function showCategoryForm($category) { /* {{{ */ ?>
isUsed()) { + if($category && !$category->isUsed()) { ?>
@@ -125,28 +82,68 @@ function showCategories(selectObj) {
: + + + + -   + +  
- - - -
-
+params['selcategory']; + + $this->showCategoryForm($selcat); + } /* }}} */ + + function show() { /* {{{ */ + $dms = $this->params['dms']; + $user = $this->params['user']; + $categories = $this->params['categories']; + $selcat = $this->params['selcategory']; + + $this->htmlStartPage(getMLText("admin_tools")); + $this->globalNavigation(); + $this->contentStart(); + $this->pageNavigation(getMLText("admin_tools"), "admin_tools"); + + $this->contentHeading(getMLText("global_document_categories")); +?> +
+
+
+: + +
+
getID()."\"" : "") ?>>
+
+ +
+
+
getID()."\"" : "") ?>>
+ +
+
- htmlEndPage(); } /* }}} */ From 08831349ddae7d196c373b9ef8c08faafee89266 Mon Sep 17 00:00:00 2001 From: Uwe Steinmann Date: Fri, 5 Feb 2016 17:31:29 +0100 Subject: [PATCH 09/11] fix syntax error --- views/bootstrap/class.Timeline.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/bootstrap/class.Timeline.php b/views/bootstrap/class.Timeline.php index 0246b1402..59c658011 100644 --- a/views/bootstrap/class.Timeline.php +++ b/views/bootstrap/class.Timeline.php @@ -121,7 +121,7 @@ class SeedDMS_View_Timeline extends SeedDMS_Bootstrap_Style { ); } } - header('Content-Type: application/json'), + header('Content-Type: application/json'); echo json_encode($jsondata); } /* }}} */ From 911c7895d99ecacf397cfcd26751259609a8e942 Mon Sep 17 00:00:00 2001 From: Uwe Steinmann Date: Mon, 8 Feb 2016 10:40:29 +0100 Subject: [PATCH 10/11] get some view parameter in js() this fixes some php warnings --- views/bootstrap/class.Timeline.php | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/views/bootstrap/class.Timeline.php b/views/bootstrap/class.Timeline.php index 59c658011..7aaad57ef 100644 --- a/views/bootstrap/class.Timeline.php +++ b/views/bootstrap/class.Timeline.php @@ -126,6 +126,22 @@ class SeedDMS_View_Timeline extends SeedDMS_Bootstrap_Style { } /* }}} */ function js() { /* {{{ */ + $fromdate = $this->params['fromdate']; + $todate = $this->params['todate']; + $skip = $this->params['skip']; + + if($fromdate) { + $from = makeTsFromLongDate($fromdate.' 00:00:00'); + } else { + $from = time()-7*86400; + } + + if($todate) { + $to = makeTsFromLongDate($todate.' 23:59:59'); + } else { + $to = time(); + } + header('Content-Type: application/javascript'); ?> $(document).ready(function () { From 450ca9953eec68895f30e46d3f3ca711143932bc Mon Sep 17 00:00:00 2001 From: Uwe Steinmann Date: Mon, 8 Feb 2016 12:43:50 +0100 Subject: [PATCH 11/11] some code cleanup and no output if there are no dumps --- views/bootstrap/class.BackupTools.php | 102 ++++++++++++-------------- 1 file changed, 45 insertions(+), 57 deletions(-) diff --git a/views/bootstrap/class.BackupTools.php b/views/bootstrap/class.BackupTools.php index 32898a772..a65f6bdf4 100644 --- a/views/bootstrap/class.BackupTools.php +++ b/views/bootstrap/class.BackupTools.php @@ -80,9 +80,6 @@ class SeedDMS_View_BackupTools extends SeedDMS_Bootstrap_Style { print "\n"; // list backup files - $this->contentSubHeading(getMLText("backup_list")); - - $print_header=true; $handle = opendir($contentdir); $entries = array(); @@ -96,38 +93,36 @@ class SeedDMS_View_BackupTools extends SeedDMS_Bootstrap_Style { sort($entries); $entries = array_reverse($entries); - foreach ($entries as $entry){ + if($entries) { + $this->contentSubHeading(getMLText("backup_list")); + print "\n"; + print "\n\n"; + print "\n"; + print "\n"; + print "\n"; + print "\n"; + print "\n"; + print "\n\n\n"; - if ($print_header){ - print "
".getMLText("folder")."".getMLText("creation_date")."".getMLText("file_size")."
\n"; - print "\n\n"; - print "\n"; - print "\n"; - print "\n"; - print "\n"; - print "\n"; - print "\n\n\n"; - $print_header=false; + foreach ($entries as $entry){ + + $folderid=substr($entry,strpos($entry,"_")+1); + $folder=$dms->getFolder((int)$folderid); + + print "\n"; + print "\n"; + if (is_object($folder)) print "\n"; + else print "\n"; + print "\n"; + print "\n"; + print "\n"; + print "\n"; } - - $folderid=substr($entry,strpos($entry,"_")+1); - $folder=$dms->getFolder((int)$folderid); - - print "\n"; - print "\n"; - if (is_object($folder)) print "\n"; - else print "\n"; - print "\n"; - print "\n"; - print "\n"; - print "\n"; + print "
".getMLText("folder")."".getMLText("creation_date")."".getMLText("file_size")."
".$entry."".htmlspecialchars($folder->getName())."".getMLText("unknown_id")."".getLongReadableDate(filectime($contentdir.$entry))."".SeedDMS_Core_File::format_filesize(filesize($contentdir.$entry)).""; + print " ".getMLText("backup_remove").""; + print "
".$entry."".htmlspecialchars($folder->getName())."".getMLText("unknown_id")."".getLongReadableDate(filectime($contentdir.$entry))."".SeedDMS_Core_File::format_filesize(filesize($contentdir.$entry)).""; - print " ".getMLText("backup_remove").""; - print "
\n"; } - if ($print_header) printMLText("empty_notify_list"); - else print "\n"; - $this->contentContainerEnd(); // dump creation /////////////////////////////////////////////////////////////// @@ -141,10 +136,6 @@ class SeedDMS_View_BackupTools extends SeedDMS_Bootstrap_Style { print "\n"; // list backup files - $this->contentSubHeading(getMLText("dump_list")); - - $print_header=true; - $handle = opendir($contentdir); $entries = array(); while ($e = readdir($handle)){ @@ -157,32 +148,29 @@ class SeedDMS_View_BackupTools extends SeedDMS_Bootstrap_Style { sort($entries); $entries = array_reverse($entries); - foreach ($entries as $entry){ + if($entries) { + $this->contentSubHeading(getMLText("dump_list")); + print "\n"; + print "\n\n"; + print "\n"; + print "\n"; + print "\n"; + print "\n"; + print "\n\n\n"; - if ($print_header){ - print "
".getMLText("creation_date")."".getMLText("file_size")."
\n"; - print "\n\n"; - print "\n"; - print "\n"; - print "\n"; - print "\n"; - print "\n\n\n"; - $print_header=false; + foreach ($entries as $entry){ + print "\n"; + print "\n"; + print "\n"; + print "\n"; + print "\n"; + print "\n"; } - - print "\n"; - print "\n"; - print "\n"; - print "\n"; - print "\n"; - print "\n"; + print "
".getMLText("creation_date")."".getMLText("file_size")."
".$entry."".getLongReadableDate(filectime($contentdir.$entry))."".SeedDMS_Core_File::format_filesize(filesize($contentdir.$entry)).""; + print " ".getMLText("dump_remove").""; + print "
".$entry."".getLongReadableDate(filectime($contentdir.$entry))."".SeedDMS_Core_File::format_filesize(filesize($contentdir.$entry)).""; - print " ".getMLText("dump_remove").""; - print "
\n"; } - if ($print_header) printMLText("empty_notify_list"); - else print "\n"; - $this->contentContainerEnd(); // files deletion //////////////////////////////////////////////////////////////