diff --git a/.htaccess b/.htaccess index b8963585e..69e29975e 100644 --- a/.htaccess +++ b/.htaccess @@ -8,7 +8,7 @@ Header set X-Content-Type-Options: "nosniff" RewriteEngine On #RewriteRule "^favicon\.ico$" "-" [L] #RewriteRule "^(favicon\.ico)$" %{HTTP_HOST}/views/bootstrap/images/favicon.svg [L,NC] -RewriteRule "(favicon\.ico)" /views/bootstrap/images/favicon.svg [L,NC] +RewriteRule "^(favicon\.ico)" /views/bootstrap/images/favicon.svg [L,NC] # Store the current location in an environment variable CWD to use # mod_rewrite in .htaccess files without knowing the RewriteBase @@ -32,7 +32,7 @@ RewriteRule ^ext/[^/]+/icon.(?:png|svg)$ - [L] RewriteCond %{REQUEST_URI} "ext/[^/]+/" RewriteRule !^ext/[^/]+/.*(?:op|out|res|node_modules) - [F] RewriteCond %{REQUEST_URI} "ext/[^/]+/res/.*$" [NC] -RewriteRule !^ext/[^/]+/res/.*\.(?:css|js|png|svg) - [F] +RewriteRule !^ext/[^/]+/res/.*\.(?:css|js|png|gif|svg|ico|html|woff) - [F] RewriteCond %{REQUEST_FILENAME} -f RewriteRule ^ext/.*$ - [L] diff --git a/CHANGELOG b/CHANGELOG index 12848d04a..9ffacd301 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,26 @@ +-------------------------------------------------------------------------------- + Changes in version 5.1.28 +-------------------------------------------------------------------------------- +- user information in user manager failed to load when a document content + with 0 bytes was created by the user +- fix repair of wrong file extension +- fix regression in password forgotten function +- fix security issue when creating hash in password forgotten operation +- add initial support for logging and notifications in rest api +- add rest api calls to get attributes of a document version and to set + attributes of folders, documents, and document versions +- fixed various errors in swagger.yaml +- use methods in inc/inc.ClassNotificationService.php for webdav +- clear login failures when login by webdav succeeds +- output log of restapi in LogManagement +- new hook to add more tabs for sections in LogManagement +- rest api returns version attributes as 'version_attributes' (was + 'version-attributes'), each attribute also contains the name +- new hook in rest api to add more routes in extensions +- uploaded serveral documents at once by fast upload will assign random + sequence number to allow manually sorting the documents afterwards +- fix counting of login failures if both ldap and db authentication is done + -------------------------------------------------------------------------------- Changes in version 5.1.27 -------------------------------------------------------------------------------- diff --git a/Makefile b/Makefile index cc2deac8d..64114fe21 100644 --- a/Makefile +++ b/Makefile @@ -62,7 +62,9 @@ repository: doc: $(PHPDOC) -d SeedDMS_Core --ignore 'getusers.php,getfoldertree.php,config.php,reverselookup.php' --force -t html +# Download apigen with +# composer create-project --no-dev apigen/apigen:^7.0@alpha tools/apigen apidoc: - apigen generate -s SeedDMS_Core --exclude tests -d html + tools/apigen/bin/apigen SeedDMS_Core/Core --exclude "tests/*" --output html .PHONY: doc webdav webapp repository diff --git a/SeedDMS_Core/Core/inc.ClassAttribute.php b/SeedDMS_Core/Core/inc.ClassAttribute.php index a474783b3..945b1b0c2 100644 --- a/SeedDMS_Core/Core/inc.ClassAttribute.php +++ b/SeedDMS_Core/Core/inc.ClassAttribute.php @@ -120,6 +120,27 @@ class SeedDMS_Core_Attribute { /* {{{ */ */ function getValue() { return $this->_value; } + /** + * Return attribute value parsed into a php type or object + * + * This function will return the value of multi value attributes + * including the separator char. + * + * @return string the attribute value as it is stored in the database. + */ + function getParsedValue() { /* {{{ */ + switch($this->_attrdef->getType()) { + case SeedDMS_Core_AttributeDefinition::type_float: + return (float) $this->_value; + case SeedDMS_Core_AttributeDefinition::type_boolean: + return (bool) $this->_value; + case SeedDMS_Core_AttributeDefinition::type_int: + return (int) $this->_value; + default: + return $this->_value; + } + } /* }}} */ + /** * Return attribute values as an array * @@ -247,7 +268,7 @@ class SeedDMS_Core_Attribute { /* {{{ */ break; case $this->_dms->getClassname('folder'): if(trim($value) === '') - $queryStr = "DELETE FROM `tblFolderAttributes WHERE` `folder` = " . $this->_obj->getID() . " AND `attrdef` = " . $this->_attrdef->getId(); + $queryStr = "DELETE FROM `tblFolderAttributes` WHERE `folder` = " . $this->_obj->getID() . " AND `attrdef` = " . $this->_attrdef->getId(); else $queryStr = "UPDATE `tblFolderAttributes` SET `value` = ".$db->qstr($value)." WHERE `folder` = " . $this->_obj->getID() . " AND `attrdef` = " . $this->_attrdef->getId(); break; @@ -1204,7 +1225,7 @@ class SeedDMS_Core_AttributeDefinition { /* {{{ */ * @param boolean $new set to true if the value is new value and not taken from * an existing attribute * (this will only be passed to the onAttributeValidate callback) - * @return boolean true if validation succeds, otherwise false + * @return boolean true if validation succeeds, otherwise false */ function validate($attrvalue, $object=null, $new=false) { /* {{{ */ /* Check if 'onAttributeValidate' callback is set */ diff --git a/SeedDMS_Core/Core/inc.ClassDMS.php b/SeedDMS_Core/Core/inc.ClassDMS.php index bfda37984..7adec5e8b 100644 --- a/SeedDMS_Core/Core/inc.ClassDMS.php +++ b/SeedDMS_Core/Core/inc.ClassDMS.php @@ -840,8 +840,8 @@ class SeedDMS_Core_DMS { */ function getDocumentContent($id) { /* {{{ */ - if (!is_numeric($id)) return false; - if ($id < 1) return false; + if (!is_numeric($id)) return false; + if ($id < 1) return false; $queryStr = "SELECT * FROM `tblDocumentContent` WHERE `id` = ".(int) $id; $resArr = $this->db->getResultArray($queryStr); @@ -2541,7 +2541,15 @@ class SeedDMS_Core_DMS { * @return string|boolean hash value of false in case of an error */ function createPasswordRequest($user) { /* {{{ */ - $hash = md5(uniqid(time())); + $lenght = 32; + if (function_exists("random_bytes")) { + $bytes = random_bytes(ceil($lenght / 2)); + } elseif (function_exists("openssl_random_pseudo_bytes")) { + $bytes = openssl_random_pseudo_bytes(ceil($lenght / 2)); + } else { + return false; + } + $hash = bin2hex($bytes); $queryStr = "INSERT INTO `tblUserPasswordRequest` (`userID`, `hash`, `date`) VALUES (" . $user->getId() . ", " . $this->db->qstr($hash) .", ".$this->db->getCurrentDatetime().")"; $resArr = $this->db->getResult($queryStr); if (is_bool($resArr) && !$resArr) return false; @@ -3186,6 +3194,41 @@ class SeedDMS_Core_DMS { } /* }}} */ + /** + * Returns folders which contain documents with none unique sequence number + * + * This method is for finding folders with documents not having a + * unique sequence number. Those documents cannot propperly be sorted + * by sequence and changing their position is impossible if more than + * two documents with the same sequence number exists, e.g. + * doc 1: 3 + * doc 2: 5 + * doc 3: 5 + * doc 4: 5 + * doc 5: 7 + * If document 4 was to be moved between doc 1 and 2 it get sequence + * number 4 ((5+3)/2). + * But if document 4 was to be moved between doc 2 and 3 it will again + * have sequence number 5. + * + * @return array|bool + */ + function getDuplicateSequenceNo() { /* {{{ */ + $queryStr = "SELECT DISTINCT `folder` FROM (SELECT `folder`, `sequence`, count(*) c FROM `tblDocuments` GROUP BY `folder`, `sequence` HAVING c > 1) a"; + $resArr = $this->db->getResultArray($queryStr); + if ($resArr === false) + return false; + + $folders = array(); + foreach($resArr as $row) { + $folder = $this->getFolder($row['folder']); + if($folder) + $folders[] = $folder; + } + return $folders; + + } /* }}} */ + /** * Returns a list of reviews, approvals which are not linked * to a user, group anymore diff --git a/SeedDMS_Core/Core/inc.ClassDocument.php b/SeedDMS_Core/Core/inc.ClassDocument.php index 34677a6c8..966710335 100644 --- a/SeedDMS_Core/Core/inc.ClassDocument.php +++ b/SeedDMS_Core/Core/inc.ClassDocument.php @@ -103,7 +103,7 @@ define("S_LOG_SLEEPING", -3); /** * Class to represent a document in the document management system * - * A document in SeedDMS is similar to files in a regular file system. + * A document in SeedDMS is similar to a file in a regular file system. * Documents may have any number of content elements * ({@link SeedDMS_Core_DocumentContent}). These content elements are often * called versions ordered in a timely manner. The most recent content element @@ -118,7 +118,7 @@ define("S_LOG_SLEEPING", -3); * @author Markus Westphal, Malcolm Cowe, Matteo Lucarelli, * Uwe Steinmann * @copyright Copyright (C) 2002-2005 Markus Westphal, 2006-2008 Malcolm Cowe, - * 2010 Matteo Lucarelli, 2010 Uwe Steinmann + * 2010 Matteo Lucarelli, 2010-2022 Uwe Steinmann * @version Release: @package_version@ */ class SeedDMS_Core_Document extends SeedDMS_Core_Object { /* {{{ */ @@ -2013,7 +2013,7 @@ class SeedDMS_Core_Document extends SeedDMS_Core_Object { /* {{{ */ } foreach($resArr as $res) { $file = $this->_dms->contentDir . $this->getDir().'r'.$res['reviewLogID']; - if(file_exists($file)) + if(SeedDMS_Core_File::file_exists($file)) SeedDMS_Core_File::removeFile($file); } } @@ -2042,7 +2042,7 @@ class SeedDMS_Core_Document extends SeedDMS_Core_Object { /* {{{ */ } foreach($resArr as $res) { $file = $this->_dms->contentDir . $this->getDir().'a'.$res['approveLogID']; - if(file_exists($file)) + if(SeedDMS_Core_File::file_exists($file)) SeedDMS_Core_File::removeFile($file); } } @@ -2085,7 +2085,7 @@ class SeedDMS_Core_Document extends SeedDMS_Core_Object { /* {{{ */ return false; } - if (file_exists( $this->_dms->contentDir.$version->getPath() )) + if (SeedDMS_Core_File::file_exists( $this->_dms->contentDir.$version->getPath() )) if (!SeedDMS_Core_File::removeFile( $this->_dms->contentDir.$version->getPath() )) { $db->rollbackTransaction(); return false; @@ -2447,7 +2447,7 @@ class SeedDMS_Core_Document extends SeedDMS_Core_Object { /* {{{ */ return false; } - if (file_exists( $this->_dms->contentDir . $file->getPath() )){ + if (SeedDMS_Core_File::file_exists( $this->_dms->contentDir . $file->getPath() )){ if (!SeedDMS_Core_File::removeFile( $this->_dms->contentDir . $file->getPath() )) { $db->rollbackTransaction(); return false; @@ -2514,7 +2514,7 @@ class SeedDMS_Core_Document extends SeedDMS_Core_Object { /* {{{ */ // TODO: versioning file? - if (file_exists( $this->_dms->contentDir . $this->getDir() )) + if (SeedDMS_Core_File::file_exists( $this->_dms->contentDir . $this->getDir() )) if (!SeedDMS_Core_File::removeDir( $this->_dms->contentDir . $this->getDir() )) { $db->rollbackTransaction(); return false; @@ -2917,7 +2917,7 @@ class SeedDMS_Core_Document extends SeedDMS_Core_Object { /* {{{ */ * Uwe Steinmann * @copyright Copyright (C) 2002-2005 Markus Westphal, * 2006-2008 Malcolm Cowe, 2010 Matteo Lucarelli, - * 2010 Uwe Steinmann + * 2010-2022 Uwe Steinmann * @version Release: @package_version@ */ class SeedDMS_Core_DocumentContent extends SeedDMS_Core_Object { /* {{{ */ @@ -3237,6 +3237,9 @@ class SeedDMS_Core_DocumentContent extends SeedDMS_Core_Object { /* {{{ */ function setMimeType($newMimetype) { /* {{{ */ $db = $this->_document->getDMS()->getDB(); + if(!$newMimetype) + return false; + $newMimetype = trim($newMimetype); if(!$newMimetype) @@ -3662,7 +3665,7 @@ class SeedDMS_Core_DocumentContent extends SeedDMS_Core_Object { /* {{{ */ } foreach($res as &$t) { $filename = $this->_dms->contentDir . $this->_document->getDir().'r'.$t['reviewLogID']; - if(file_exists($filename)) + if(SeedDMS_Core_File::file_exists($filename)) $t['file'] = $filename; else $t['file'] = ''; @@ -3842,7 +3845,7 @@ class SeedDMS_Core_DocumentContent extends SeedDMS_Core_Object { /* {{{ */ } foreach($res as &$t) { $filename = $this->_dms->contentDir . $this->_document->getDir().'a'.$t['approveLogID']; - if(file_exists($filename)) + if(SeedDMS_Core_File::file_exists($filename)) $t['file'] = $filename; else $t['file'] = ''; @@ -5457,7 +5460,7 @@ class SeedDMS_Core_DocumentContent extends SeedDMS_Core_Object { /* {{{ */ $dms = $this->_document->getDMS(); $db = $this->_dms->getDB(); - if(file_exists($this->_dms->contentDir.$this->_document->getDir() . $this->_version . $this->_fileType)) { + if(SeedDMS_Core_File::file_exists($this->_dms->contentDir.$this->_document->getDir() . $this->_version . $this->_fileType)) { if(strlen($this->_fileType) < 2) { switch($this->_mimeType) { case "application/pdf": @@ -5482,7 +5485,7 @@ class SeedDMS_Core_DocumentContent extends SeedDMS_Core_Object { /* {{{ */ break; } } - } elseif(file_exists($this->_document->getDir() . $this->_version . '.')) { + } elseif(SeedDMS_Core_File::file_exists($this->_document->getDir() . $this->_version . '.')) { echo "no file"; } else { echo $this->_dms->contentDir.$this->_document->getDir() . $this->_version . $this->_fileType; @@ -5508,7 +5511,7 @@ class SeedDMS_Core_DocumentContent extends SeedDMS_Core_Object { /* {{{ */ * Uwe Steinmann * @copyright Copyright (C) 2002-2005 Markus Westphal, * 2006-2008 Malcolm Cowe, 2010 Matteo Lucarelli, - * 2010 Uwe Steinmann + * 2010-2022 Uwe Steinmann * @version Release: @package_version@ */ class SeedDMS_Core_DocumentLink { /* {{{ */ @@ -5640,7 +5643,7 @@ class SeedDMS_Core_DocumentLink { /* {{{ */ * Uwe Steinmann * @copyright Copyright (C) 2002-2005 Markus Westphal, * 2006-2008 Malcolm Cowe, 2010 Matteo Lucarelli, - * 2010 Uwe Steinmann + * 2010-2022 Uwe Steinmann * @version Release: @package_version@ */ class SeedDMS_Core_DocumentFile { /* {{{ */ @@ -5956,7 +5959,7 @@ class SeedDMS_Core_DocumentFile { /* {{{ */ * Uwe Steinmann * @copyright Copyright (C) 2002-2005 Markus Westphal, * 2006-2008 Malcolm Cowe, 2010 Matteo Lucarelli, - * 2010 Uwe Steinmann + * 2010-2022 Uwe Steinmann * @version Release: @package_version@ */ class SeedDMS_Core_AddContentResultSet { /* {{{ */ diff --git a/SeedDMS_Core/Core/inc.ClassFolder.php b/SeedDMS_Core/Core/inc.ClassFolder.php index 11cb88026..23324676f 100644 --- a/SeedDMS_Core/Core/inc.ClassFolder.php +++ b/SeedDMS_Core/Core/inc.ClassFolder.php @@ -2068,6 +2068,40 @@ class SeedDMS_Core_Folder extends SeedDMS_Core_Object { return $resArr[0]; } /* }}} */ + /** + * Reorder documents of folder + * + * Fix the sequence numbers of all documents in the folder, by assigning new + * numbers starting from 1 incrementing by 1. This can be necessary if sequence + * numbers are not unique which makes manual reordering for documents with + * identical sequence numbers impossible. + * + * @return bool false in case of an error, otherwise true + */ + function reorderDocuments() { /* {{{ */ + $db = $this->_dms->getDB(); + + $queryStr = "SELECT `id` FROM `tblDocuments` WHERE `folder` = " . (int) $this->_id . " ORDER BY `sequence`"; + $resArr = $db->getResultArray($queryStr); + if (is_bool($resArr) && $resArr == false) + return false; + + $db->startTransaction(); + $no = 1.0; + foreach($resArr as $doc) { + $queryStr = "UPDATE `tblDocuments` SET `sequence` = " . $no . " WHERE `id` = ". $doc['id']; + if (!$db->getResult($queryStr)) { + $db->rollbackTransaction(); + return false; + } + $no += 1.0; + } + $db->commitTransaction(); + + return true; + } /* }}} */ + + } ?> diff --git a/SeedDMS_Core/Core/inc.ClassIterator.php b/SeedDMS_Core/Core/inc.ClassIterator.php index ca6bdccbe..ffb8133dc 100644 --- a/SeedDMS_Core/Core/inc.ClassIterator.php +++ b/SeedDMS_Core/Core/inc.ClassIterator.php @@ -1,5 +1,5 @@ _id = $id; $this->_dms = null; @@ -152,7 +152,7 @@ class SeedDMS_Core_Object { /* {{{ */ } if (isset($this->_attributes[$attrdef->getId()])) { - $value = $this->_attributes[$attrdef->getId()]->getValue(); + $value = $this->_attributes[$attrdef->getId()]->getValue(); if($attrdef->getMultipleValues()) { $sep = substr($value, 0, 1); $vsep = $attrdef->getValueSetSeparator(); @@ -166,7 +166,7 @@ class SeedDMS_Core_Object { /* {{{ */ else return(array($value)); } else { - return $value; + return $this->_attributes[$attrdef->getId()]->getParsedValue(); } } else return false; diff --git a/SeedDMS_Core/Core/inc.ClassUser.php b/SeedDMS_Core/Core/inc.ClassUser.php index b4e4b3a33..bbc0aac87 100644 --- a/SeedDMS_Core/Core/inc.ClassUser.php +++ b/SeedDMS_Core/Core/inc.ClassUser.php @@ -1348,7 +1348,7 @@ class SeedDMS_Core_User { /* {{{ */ foreach ($resArr as $row) { $document = $this->_dms->getDocument($row["document"]); /** @var SeedDMS_Core_DocumentContent $content */ - $content = new $classname((int) $row["id"], $this, $row["version"], $row["comment"], $row["date"], $row["createdBy"], $row["dir"], $row["orgFileName"], $row["fileType"], $row["mimeType"], $row['fileSize'], $row['checksum']); + $content = new $classname((int) $row["id"], $document, $row["version"], $row["comment"], $row["date"], $row["createdBy"], $row["dir"], $row["orgFileName"], $row["fileType"], $row["mimeType"], $row['fileSize'], $row['checksum']); $contents[] = $content; } return $contents; diff --git a/SeedDMS_Core/Core/inc.FileUtils.php b/SeedDMS_Core/Core/inc.FileUtils.php index b3da438eb..43289fce8 100644 --- a/SeedDMS_Core/Core/inc.FileUtils.php +++ b/SeedDMS_Core/Core/inc.FileUtils.php @@ -9,19 +9,21 @@ * @author Uwe Steinmann * @copyright Copyright (C) 2002-2005 Markus Westphal, * 2006-2008 Malcolm Cowe, 2010 Matteo Lucarelli, - * 2010 Uwe Steinmann + * 2010-2022 Uwe Steinmann * @version Release: @package_version@ */ /** - * Class to represent a user in the document management system + * Class to file operation in the document management system + * Use the methods of this class only for files below the content + * directory but not for temporäry files, cache files or log files. * * @category DMS * @package SeedDMS_Core * @author Markus Westphal, Malcolm Cowe, Uwe Steinmann * @copyright Copyright (C) 2002-2005 Markus Westphal, * 2006-2008 Malcolm Cowe, 2010 Matteo Lucarelli, - * 2010 Uwe Steinmann + * 2010-2022 Uwe Steinmann * @version Release: @package_version@ */ class SeedDMS_Core_File { @@ -78,8 +80,37 @@ class SeedDMS_Core_File { } /* }}} */ /** - * @param $size - * @param array $sizes + * Return the mimetype of a given file + * + * This method uses finfo to determine the mimetype + * but will correct some mimetypes which are + * not propperly determined or could be more specific, e.g. text/plain + * when it is actually text/markdown. In thoses cases + * the file extension will be taken into account. + * + * @param string $filename name of file on disc + * @return string mimetype + */ + static function mimetype($filename) { /* {{{ */ + $finfo = finfo_open(FILEINFO_MIME_TYPE); + $mimetype = finfo_file($finfo, $filename); + + switch($mimetype) { + case 'application/octet-stream': + case 'text/plain': + $lastDotIndex = strrpos($filename, "."); + if($lastDotIndex === false) $fileType = "."; + else $fileType = substr($filename, $lastDotIndex); + if($fileType == '.md') + $mimetype = 'text/markdown'; + break; + } + return $mimetype; + } /* }}} */ + + /** + * @param integer $size + * @param array $sizes list of units for 10^0, 10^3, 10^6, ..., 10^(n*3) bytes * @return string */ static function format_filesize($size, $sizes = array('Bytes', 'KiB', 'MiB', 'GiB', 'TiB', 'PiB', 'EiB', 'ZiB', 'YiB')) { /* {{{ */ @@ -90,18 +121,22 @@ class SeedDMS_Core_File { } /* }}} */ /** + * Parses a string like '[0-9]+ *[BKMGT]*' into an integer + * B,K,M,G,T stand for byte, kilo byte, mega byte, giga byte, tera byte + * If the last character is omitted, bytes are assumed. + * * @param $str * @return bool|int */ static function parse_filesize($str) { /* {{{ */ - preg_replace('/\s\s+/', '', $str); - if(in_array(strtoupper(substr($str, -1)), array('B','K','M','G'))) { - $value = (int) substr($str, 0, -1); - $unit = substr($str, -1, 1); - } else { - return (int) $str; - } - switch(strtoupper($unit)) { + if(!preg_match('/^([0-9]+) *([BKMGT]*)$/', trim($str), $matches)) + return false; + $value = $matches[1]; + $unit = $matches[2] ? $matches[2] : 'B'; + switch($unit) { + case 'T': + return $value * 1024 * 1024 * 1024 *1024; + break; case 'G': return $value * 1024 * 1024 * 1024; break; @@ -112,13 +147,21 @@ class SeedDMS_Core_File { return $value * 1024; break; default; - return $value; + return (int) $value; break; } /** @noinspection PhpUnreachableStatementInspection */ return false; } /* }}} */ + /** + * @param $file + * @return string + */ + static function file_exists($file) { /* {{{ */ + return file_exists($file); + } /* }}} */ + /** * @param $file * @return string @@ -129,7 +172,7 @@ class SeedDMS_Core_File { /** * @param $string mimetype - * @return string + * @return string file extension with the dot or an empty string */ static function fileExtension($mimetype) { /* {{{ */ switch($mimetype) { @@ -137,7 +180,7 @@ class SeedDMS_Core_File { case "image/png": case "image/gif": case "image/jpg": - $expect = substr($this->_mimeType, -3, 3); + $expect = substr($mimetype, -3, 3); break; default: $mime_map = [ @@ -224,6 +267,7 @@ class SeedDMS_Core_File { 'text/x-log' => 'log', 'audio/x-m4a' => 'm4a', 'application/vnd.mpegurl' => 'm4u', + 'text/markdown' => 'md', 'audio/midi' => 'mid', 'application/vnd.mif' => 'mif', 'video/quicktime' => 'mov', @@ -405,7 +449,7 @@ class SeedDMS_Core_File { continue; else if (is_dir($path . DIRECTORY_SEPARATOR . $entry)) { - if (!self::removeDir($path . DIRECTORY_SEPARATOR . $entry . "/")) + if (!self::removeDir($path . DIRECTORY_SEPARATOR . $entry )) return false; } else @@ -452,10 +496,10 @@ class SeedDMS_Core_File { */ static function moveDir($sourcePath, $targetPath) { /* {{{ */ /** @noinspection PhpUndefinedFunctionInspection */ - if (!copyDir($sourcePath, $targetPath)) + if (!self::copyDir($sourcePath, $targetPath)) return false; /** @noinspection PhpUndefinedFunctionInspection */ - return removeDir($sourcePath); + return self::removeDir($sourcePath); } /* }}} */ // code by Kioob (php.net manual) diff --git a/SeedDMS_Core/package.xml b/SeedDMS_Core/package.xml index 853ed07d6..9701ea3f9 100644 --- a/SeedDMS_Core/package.xml +++ b/SeedDMS_Core/package.xml @@ -12,11 +12,11 @@ uwe@steinmann.cx yes - 2022-08-31 + 2022-11-07 - 5.1.27 - 5.1.27 + 5.1.28 + 5.1.28 stable @@ -24,9 +24,15 @@ GPL License -- fix SeedDMS_Core_DMS::addAttributeDefinition() when objtype is 0 -- sort search result even if sortorder is 'i' or 'n' -- pass an array as an attribute to search() will OR each element +- fix SeedDMS_Core_User::getDocumentContents() +- fix SeedDMS_Core_File::fileExtension() +- SeedDMS_Core_DMS::createPasswordRequest() creates a cryptographically secure hash +- fix sql error when deleting a folder attribute +- add SeedDMS_Core_Attribute::getParsedValue() and use it in SeedDMS_Core_Object::getAttributeValue() +- add SeedDMS_Core_DMS::getDuplicateSequenceNo() and SeedDMS_Core_Folder::reorderDocuments() +- add SeedDMS_Core_File::mimetype(), fix SeedDMS_Core_File::moveDir() +- all file operations use methods of SeedDMS_Core_File +- change namespace of iterators from SeedDMS to SeedDMS\Core @@ -1992,5 +1998,23 @@ add method SeedDMS_Core_DatabaseAccess::setLogFp() - SeedDMS_Core_DMS::getAllAttributeDefinitions() has second parameter to filter attributes by type + + 2022-08-31 + + + 5.1.27 + 5.1.27 + + + stable + stable + + GPL License + +- fix SeedDMS_Core_DMS::addAttributeDefinition() when objtype is 0 +- sort search result even if sortorder is 'i' or 'n' +- pass an array as an attribute to search() will OR each element + + diff --git a/controllers/class.Login.php b/controllers/class.Login.php index 3d6f5634a..b8bec3cfa 100644 --- a/controllers/class.Login.php +++ b/controllers/class.Login.php @@ -116,6 +116,15 @@ class SeedDMS_Controller_Login extends SeedDMS_Controller_Common { /* If the user is still not authenticated, then exit with an error */ if(!is_object($user)) { + /* if counting of login failures is turned on, then increment its value */ + if($settings->_loginFailure) { + $user = $dms->getUserByLogin($login); + if($user) { + $failures = $user->addLoginFailure(); + if($failures >= $settings->_loginFailure) + $user->setDisabled(true); + } + } $this->callHook('loginFailed'); $this->setErrorMsg("login_error_text"); return false; diff --git a/doc/README.WebDAV b/doc/README.WebDAV index 0f66f8318..81ce83a1d 100644 --- a/doc/README.WebDAV +++ b/doc/README.WebDAV @@ -1,5 +1,5 @@ WebDAV ------------------------------------------------ +======== SeedDMS has support for WebDAV which allows to easily add, delete, move, copy and modify documents. All operating systems have support @@ -29,7 +29,7 @@ the content of document or creating a new version if a document is saved. Configuring davfs2 -=================== +------------------- On Linux it is quite simple to mount the SeedDMS WebDAV server with davfs2. Just place a line like the following in your /etc/fstab @@ -51,15 +51,14 @@ and possibly add your login data to /etc/davfs2/secrets /media/webdav admin secret Making applications work with WebDAV -===================================== +------------------------------------- Various programms have differnt strategies to save files to disc and prevent data lost under all circumstances. Those strategies often don't work very well an a WebDAV-Server. The following will list some of those strategies. -VIM -========================= +### VIM vim does a lot more than just reading and writing the file you want to edit. It creates swap and backup files for data recovery if vim crashes @@ -69,7 +68,7 @@ swap file at all or create it outside the WebDAV server. A second problem arises from how vim modifіes the file you are editing. Before a file is saved a backup is created by renaming the file to the same name with a '~' at the end and writing the file content into a new -file with the name of the original file. Afterwards vim deleteѕ the backup +file with the name of the original file. Afterwards vim deletes the backup file. On a regular file system you won't see a difference between the file before and after saving, though it is actually a new one. In SeedDMS you won't notice a difference either @@ -88,12 +87,17 @@ set nobackup set nowritebackup set noswapfile +If you want to restrict the settings to the directory where the dms +is mounted by webdav, e.g. /media/webdav, you can set an auto command +in .vimrc + +autocmd BufNewFile,BufRead /media/webdav/* set nobackup nowritebackup noswapfile + Creating the backup file in a directory outside of WebDAV doesn't help in -this case, because it still does the file renaming which is turned of by +this case, because it still does the file renaming which is turned off by 'nowritebackup'. -cdaver -======== +### cdaver cadaver is a webdav client similar to classical command line based ftp clients. It can be used to browse through the folders, downloads and uploads files, and diff --git a/inc/inc.Authentication.php b/inc/inc.Authentication.php index fb4ee2455..a94b601f6 100644 --- a/inc/inc.Authentication.php +++ b/inc/inc.Authentication.php @@ -12,7 +12,6 @@ * @version Release: @package_version@ */ -require_once("inc.Utils.php"); require_once("inc.ClassNotificationService.php"); require_once("inc.ClassEmailNotify.php"); require_once("inc.ClassSession.php"); diff --git a/inc/inc.ClassDbAuthentication.php b/inc/inc.ClassDbAuthentication.php index ebd44e685..fbee7f3c9 100644 --- a/inc/inc.ClassDbAuthentication.php +++ b/inc/inc.ClassDbAuthentication.php @@ -43,12 +43,6 @@ class SeedDMS_DbAuthentication extends SeedDMS_Authentication { // Assume that the password has been sent via HTTP POST. It would be careless // (and dangerous) for passwords to be sent via GET. if (!seed_pass_verify($password, $user->getPwd())) { - /* if counting of login failures is turned on, then increment its value */ - if($settings->_loginFailure) { - $failures = $user->addLoginFailure(); - if($failures >= $settings->_loginFailure) - $user->setDisabled(true); - } $user = false; } } diff --git a/inc/inc.ClassLdapAuthentication.php b/inc/inc.ClassLdapAuthentication.php index a62ff280d..9f8f66dc6 100644 --- a/inc/inc.ClassLdapAuthentication.php +++ b/inc/inc.ClassLdapAuthentication.php @@ -134,12 +134,6 @@ class SeedDMS_LdapAuthentication extends SeedDMS_Authentication { } } } elseif($user) { - $userid = $user->getID(); - if($settings->_loginFailure) { - $failures = $user->addLoginFailure(); - if($failures >= $settings->_loginFailure) - $user->setDisabled(true); - } $user = false; } ldap_close($ds); diff --git a/inc/inc.Extension.php b/inc/inc.Extension.php index 96489794d..016240071 100644 --- a/inc/inc.Extension.php +++ b/inc/inc.Extension.php @@ -15,8 +15,6 @@ global $logger; require "inc.ClassExtensionMgr.php"; require_once "inc.ClassExtBase.php"; -require_once "inc.Version.php"; -require_once "inc.Utils.php"; $extMgr = new SeedDMS_Extension_Mgr($settings->_rootDir."/ext", $settings->_cacheDir, $settings->_repositoryUrl, $settings->_proxyUrl, $settings->_proxyUser, $settings->_proxyPassword); @@ -48,7 +46,7 @@ foreach($extMgr->getExtensionConfiguration() as $extname=>$extconf) { include($classfile); $obj = new $extconf['class']['name']($settings, null, $logger); if(method_exists($obj, 'init')) - $obj->init(); + $obj->init($extMgr); } } if(isset($extconf['language']['file'])) { diff --git a/inc/inc.LogInit.php b/inc/inc.LogInit.php index d75101f9e..2cc586873 100644 --- a/inc/inc.LogInit.php +++ b/inc/inc.LogInit.php @@ -19,18 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("Log.php"); +require_once("inc/inc.Utils.php"); -if ($settings->_logFileEnable) { - if ($settings->_logFileRotation=="h") $logname=date("YmdH", time()); - else if ($settings->_logFileRotation=="d") $logname=date("Ymd", time()); - else $logname=date("Ym", time()); +$logger = getLogger(); - if(!file_exists($settings->_contentDir.'log')) - @mkdir($settings->_contentDir.'log'); - if(file_exists($settings->_contentDir.'log') && is_dir($settings->_contentDir.'log')) - $logger = Log::factory('file', $settings->_contentDir.'log/'.$logname.'.log'); - else - $logger = null; -} else { - $logger = null; -} diff --git a/inc/inc.Settings.php b/inc/inc.Settings.php index 83688f255..b19345afb 100644 --- a/inc/inc.Settings.php +++ b/inc/inc.Settings.php @@ -83,3 +83,5 @@ ini_set('include_path', $settings->_rootDir.'../pear'. PATH_SEPARATOR .ini_get(' /* composer is installed in pear directory, but install tool does not need it */ if(!defined("SEEDDMS_INSTALL")) require_once 'vendor/autoload.php'; + +require_once "inc.Version.php"; diff --git a/inc/inc.Utils.php b/inc/inc.Utils.php index d54bd0439..dda92a894 100644 --- a/inc/inc.Utils.php +++ b/inc/inc.Utils.php @@ -395,7 +395,7 @@ function getFilenameByDocname($content) { /* {{{ */ return mb_ereg_replace("([^\w\s\d\-_~,;\[\]\(\).])", '', $filename); } /* }}} */ -function getLogger($prefix='') { /* {{{ */ +function getLogger($prefix='', $mask=PEAR_LOG_INFO) { /* {{{ */ global $settings; if($settings->_logFileEnable) { @@ -407,7 +407,7 @@ function getLogger($prefix='') { /* {{{ */ @mkdir($settings->_contentDir.'log'); if(file_exists($settings->_contentDir.'log') && is_dir($settings->_contentDir.'log')) { $logger = Log::factory('file', $logname); - $logger->setMask(Log::MAX(PEAR_LOG_DEBUG)); + $logger->setMask(Log::MAX($mask)); } else $logger = null; } else { @@ -683,7 +683,7 @@ function addDirSep($str) { /* {{{ */ * @param string $command The command to check * @return bool True if the command has been found ; otherwise, false. */ -function commandExists ($command) { +function commandExists ($command) { /* {{{ */ $whereIsCommand = (PHP_OS == 'WINNT') ? 'where' : 'command -v'; $process = proc_open( @@ -706,7 +706,7 @@ function commandExists ($command) { } return false; -} +} /* }}} */ /** * Send a file from disk to the browser @@ -855,6 +855,23 @@ function createNonce() { /* {{{ */ return base64_encode($bytes); } /* }}} */ +/** + * Create a real uniqid for cryptographic purposes + * + * @ return string + */ +function uniqidReal($lenght = 13) { + // uniqid gives 13 chars, but you could adjust it to your needs. + if (function_exists("random_bytes")) { + $bytes = random_bytes(ceil($lenght / 2)); + } elseif (function_exists("openssl_random_pseudo_bytes")) { + $bytes = openssl_random_pseudo_bytes(ceil($lenght / 2)); + } else { + throw new Exception("no cryptographically secure random function available"); + } + return substr(bin2hex($bytes), 0, $lenght); +} + /** * Compare function for sorting users by login * @@ -1092,7 +1109,7 @@ class SeedDMS_JwtToken { /* {{{ */ class SeedDMS_FolderTree { /* {{{ */ public function __construct($folder, $callback) { /* {{{ */ - $iter = new \SeedDMS\RecursiveFolderIterator($folder); + $iter = new \SeedDMS\Core\RecursiveFolderIterator($folder); $iter2 = new RecursiveIteratorIterator($iter, RecursiveIteratorIterator::SELF_FIRST); foreach($iter2 as $ff) { call_user_func($callback, $ff, $iter2->getDepth()); diff --git a/inc/inc.Version.php b/inc/inc.Version.php index 4368970f4..2ef1672af 100644 --- a/inc/inc.Version.php +++ b/inc/inc.Version.php @@ -20,7 +20,7 @@ class SeedDMS_Version { /* {{{ */ - const _number = "5.1.27"; + const _number = "5.1.28"; const _string = "SeedDMS"; function __construct() { diff --git a/index.php b/index.php index 049d7a48e..4b30fbbcb 100644 --- a/index.php +++ b/index.php @@ -20,12 +20,12 @@ include("inc/inc.Settings.php"); if(true) { - include("inc/inc.LogInit.php"); - include("inc/inc.Utils.php"); - include("inc/inc.Language.php"); - include("inc/inc.Init.php"); - include("inc/inc.Extension.php"); - include("inc/inc.DBInit.php"); + require_once("inc/inc.Utils.php"); + require_once("inc/inc.LogInit.php"); + require_once("inc/inc.Language.php"); + require_once("inc/inc.Init.php"); + require_once("inc/inc.Extension.php"); + require_once("inc/inc.DBInit.php"); require "vendor/autoload.php"; diff --git a/languages/ar_EG/lang.inc b/languages/ar_EG/lang.inc index c5908d269..90724c95d 100644 --- a/languages/ar_EG/lang.inc +++ b/languages/ar_EG/lang.inc @@ -514,6 +514,7 @@ URL: [url]', 'dump_remove' => 'ازالة الملف المستخرج', 'duplicates' => 'تكرارات', 'duplicate_content' => 'المحتوى متكرر', +'duplicate_sequences' => '', 'edit' => 'تعديل', 'edit_attributes' => 'تعديل السمات', 'edit_comment' => 'تعديل تعليق', @@ -620,6 +621,7 @@ URL: [url]', 'extension_mgr_repository' => 'مستودع إدارة الإضافات', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => '', 'extension_version_list' => 'لائحة الإضافات حسب الإصدار', 'february' => 'فبراير', @@ -903,6 +905,7 @@ URL: [url]', 'move_clipboard' => 'تحريك القصاصة', 'move_document' => 'تحريك مستند', 'move_folder' => 'تحريك مجلد', +'move_into_rootfolder' => '', 'my_account' => 'حسابي', 'my_documents' => 'مستنداتي', 'my_transmittals' => 'الإحالات الخاصة بي', @@ -1045,6 +1048,7 @@ Parent folder: [folder_path] URL: [url]', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '[sitename]: [name] - تم تغيير المالك', +'parent_folder' => '', 'password' => 'كلمة السر', 'password_already_used' => 'كلمة السر بالفعل تم ارسالها', 'password_expiration' => 'انتهاء صلاحية كلمة السر', @@ -1094,6 +1098,7 @@ URL: [url]', 'quota_exceeded' => 'لقد قمت بتعدي المساحة المخصصة لك بمقدار [bytes].', 'quota_is_disabled' => 'الغيت الكوتا', 'quota_warning' => 'اقصى مساحة للقرص الصلب تم تعديها بمقدار [bytes]. من فضلك قم بمسح بعض المستندات او اصدارات سابقة منها', +'readme_loading' => '', 'receipts_accepted' => 'تم الموافقة على الوصول', 'receipts_accepted_latest' => '', 'receipts_not_touched' => 'الوصول غير ملموسة', @@ -1779,6 +1784,7 @@ URL: [url]', 'set_password' => 'تحديد كلمة السر', 'set_workflow' => 'تحديد مسار العمل', 'show_extension_changelog' => 'تغيير سجل', +'show_extension_readme' => '', 'show_extension_version_list' => 'لائحة الإصدارات', 'signed_in_as' => 'تسجيل الدخول بإسم', 'sign_in' => 'تسجيل الدخول', diff --git a/languages/bg_BG/lang.inc b/languages/bg_BG/lang.inc index 6d75b0eb8..96b83df19 100644 --- a/languages/bg_BG/lang.inc +++ b/languages/bg_BG/lang.inc @@ -467,6 +467,7 @@ $text = array( 'dump_remove' => 'Изтрий дъмп', 'duplicates' => '', 'duplicate_content' => '', +'duplicate_sequences' => '', 'edit' => 'Редактирай', 'edit_attributes' => 'Редактирай атрибути', 'edit_comment' => 'Редактирай коментар', @@ -569,6 +570,7 @@ $text = array( 'extension_mgr_repository' => '', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => '', 'extension_version_list' => '', 'february' => 'Февруари', @@ -832,6 +834,7 @@ $text = array( 'move_clipboard' => '', 'move_document' => 'Премести документ', 'move_folder' => 'Премести папка', +'move_into_rootfolder' => '', 'my_account' => 'Моя акаунт', 'my_documents' => 'Моите документи', 'my_transmittals' => 'Моите предавания', @@ -944,6 +947,7 @@ $text = array( 'ownership_changed_email_body' => '', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '', +'parent_folder' => '', 'password' => 'Парола', 'password_already_used' => 'Вече използвана парола', 'password_expiration' => 'Паролата изтича', @@ -993,6 +997,7 @@ $text = array( 'quota_exceeded' => 'Вашата дискова квота е превишена с [bytes].', 'quota_is_disabled' => '', 'quota_warning' => 'Вашето max. използуване на диска е превишена с [bytes]. Please remove documents or previous versions.', +'readme_loading' => '', 'receipts_accepted' => '', 'receipts_accepted_latest' => '', 'receipts_not_touched' => '', @@ -1642,6 +1647,7 @@ $text = array( 'set_password' => 'Установи парола', 'set_workflow' => 'Установи процес', 'show_extension_changelog' => '', +'show_extension_readme' => '', 'show_extension_version_list' => '', 'signed_in_as' => 'Вход като', 'sign_in' => 'вход', diff --git a/languages/ca_ES/lang.inc b/languages/ca_ES/lang.inc index ff1d3e5c6..bf00e8f78 100644 --- a/languages/ca_ES/lang.inc +++ b/languages/ca_ES/lang.inc @@ -472,6 +472,7 @@ URL: [url]', 'dump_remove' => 'Eliminar fitxer de bolcat', 'duplicates' => '', 'duplicate_content' => '', +'duplicate_sequences' => '', 'edit' => 'editar', 'edit_attributes' => 'Editar atributs', 'edit_comment' => 'Editar comentari', @@ -574,6 +575,7 @@ URL: [url]', 'extension_mgr_repository' => '', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => '', 'extension_version_list' => '', 'february' => 'Febrer', @@ -837,6 +839,7 @@ URL: [url]', 'move_clipboard' => '', 'move_document' => 'Moure document', 'move_folder' => 'Moure directori', +'move_into_rootfolder' => '', 'my_account' => 'El meu compte', 'my_documents' => 'Els meus documents', 'my_transmittals' => 'Documents enviats per mi', @@ -949,6 +952,7 @@ URL: [url]', 'ownership_changed_email_body' => '', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '', +'parent_folder' => '', 'password' => 'Contrasenya', 'password_already_used' => '', 'password_expiration' => '', @@ -998,6 +1002,7 @@ URL: [url]', 'quota_exceeded' => '', 'quota_is_disabled' => '', 'quota_warning' => '', +'readme_loading' => '', 'receipts_accepted' => '', 'receipts_accepted_latest' => '', 'receipts_not_touched' => '', @@ -1647,6 +1652,7 @@ URL: [url]', 'set_password' => '', 'set_workflow' => '', 'show_extension_changelog' => '', +'show_extension_readme' => '', 'show_extension_version_list' => '', 'signed_in_as' => 'Connectat com', 'sign_in' => 'sign in', diff --git a/languages/cs_CZ/lang.inc b/languages/cs_CZ/lang.inc index 26cb89c69..830a942d2 100644 --- a/languages/cs_CZ/lang.inc +++ b/languages/cs_CZ/lang.inc @@ -538,6 +538,7 @@ URL: [url]', 'dump_remove' => 'Odstranit soubor zálohy', 'duplicates' => 'Duplikáty', 'duplicate_content' => 'Duplicitní obsah', +'duplicate_sequences' => '', 'edit' => 'upravit', 'edit_attributes' => 'Editovat atributy', 'edit_comment' => 'Upravit komentář', @@ -644,6 +645,7 @@ URL: [url]', 'extension_mgr_repository' => 'Dostupný', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => '', 'extension_version_list' => 'Verze', 'february' => 'Únor', @@ -934,6 +936,7 @@ URL: [url]', 'move_clipboard' => 'Přesun schránky', 'move_document' => 'Přesunout dokument', 'move_folder' => 'Přesun složky', +'move_into_rootfolder' => '', 'my_account' => 'Můj účet', 'my_documents' => 'Moje dokumenty', 'my_transmittals' => 'Moje přenosy', @@ -1076,6 +1079,7 @@ Uživatel: [username] URL: [url]', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '[sitename]: [name] - Vlastník změněn', +'parent_folder' => '', 'password' => 'Heslo', 'password_already_used' => 'Heslo již použité', 'password_expiration' => 'Vypršení platnosti hesla', @@ -1129,6 +1133,7 @@ Pokud budete mít problém s přihlášením i po změně hesla, kontaktujte Adm 'quota_exceeded' => 'Vaše kvóta disku je překročena o [bytes].', 'quota_is_disabled' => 'Podpora kvót je v současné době zakázána v nastavení. Nastavení uživatelských kvót nebude mít žádný vliv, dokud se znovu neaktivuje.', 'quota_warning' => 'Vaše maximální využití disku je překročeno o [bajtů]. Prosím, odstraňte dokumenty nebo předchozí verze.', +'readme_loading' => '', 'receipts_accepted' => '[no_receipts] potvrzení přijetí již přijato', 'receipts_accepted_latest' => '', 'receipts_not_touched' => '[no_receipts] potvrzení přijetí nebylo dotčeno', @@ -1851,6 +1856,7 @@ Jméno: [username] 'set_password' => 'Nastavení hesla', 'set_workflow' => 'Nastavit workflow', 'show_extension_changelog' => 'Zobrazit Changelog', +'show_extension_readme' => '', 'show_extension_version_list' => 'Zobrazit seznam verzí', 'signed_in_as' => 'Přihlášen jako', 'sign_in' => 'Přihlásit', diff --git a/languages/de_DE/lang.inc b/languages/de_DE/lang.inc index 7ad280448..7528ab0d6 100644 --- a/languages/de_DE/lang.inc +++ b/languages/de_DE/lang.inc @@ -19,7 +19,7 @@ // along with this program; if not, write to the Free Software // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. // -// Translators: Admin (3143), dgrutsch (22) +// Translators: Admin (3150), dgrutsch (22) $text = array( '2_factor_auth' => '2-Faktor Authentifizierung', @@ -632,13 +632,14 @@ URL: [url]

', 'dropfolder_metadata' => 'Metadaten der zu importierenen Dateien', 'dropupload' => 'Direkt Hochladen', 'drop_files_here' => 'Dateien hier hin ziehen!', -'drop_files_here_or_click' => 'Dateien hier hin ziehen oder Klicken!', +'drop_files_here_or_click' => 'Dateien hier hin ziehen oder Klicken zum Hochladen!', 'dump_creation' => 'DB dump erzeugen', 'dump_creation_warning' => 'Mit dieser Operation können Sie einen Dump der Datenbank erzeugen. Nach der Erstellung wird der Dump im Datenordner Ihres Servers gespeichert.', 'dump_list' => 'Vorhandene DB dumps', 'dump_remove' => 'DB dump löschen', 'duplicates' => 'Duplikate', 'duplicate_content' => 'Doppelte Dateien', +'duplicate_sequences' => 'Doppelte Sequenznummer in einem Ordner', 'edit' => 'Bearbeiten', 'edit_attributes' => 'Attribute bearbeiten', 'edit_comment' => 'Kommentar bearbeiten', @@ -751,6 +752,7 @@ URL: [url]

', 'extension_mgr_repository' => 'Verfügbar', 'extension_mgr_upload_disabled' => 'Der Upload neuer Erweiterungen ist nicht möglich, weil dies in den Einstellungen ausgeschaltet ist.', 'extension_missing_name' => 'Kein Erweiterungsname übergeben', +'extension_readme' => 'Readme', 'extension_toggle_error' => 'Konnte Erweiterung nicht aus/einschalten', 'extension_version_list' => 'Versionen', 'february' => 'Februar', @@ -1077,6 +1079,7 @@ URL: [url]

', 'move_clipboard' => 'Zwischenablage in Ordner verschieben', 'move_document' => 'Verschieben', 'move_folder' => 'Verschieben', +'move_into_rootfolder' => 'In den Wurzelordner verschieben', 'my_account' => 'Mein Profil', 'my_documents' => 'Meine Dokumente', 'my_transmittals' => 'Meine Dokumentenlisten', @@ -1256,6 +1259,7 @@ Neuer Besitzer: [new_owner]
Benutzer: [username]
URL: [url]

', 'ownership_changed_email_subject' => '[sitename]: [name] - Besitzer geändert', +'parent_folder' => 'Elternordner', 'password' => 'Passwort', 'password_already_used' => 'Passwort schon einmal verwendet', 'password_expiration' => 'Ablauf eines Passworts', @@ -1321,6 +1325,7 @@ Sollen Sie danach immer noch Probleme bei der Anmeldung haben, dann kontaktieren 'quota_exceeded' => 'Ihr maximal verfügbarer Plattenplatz wurde um [bytes] überschritten.', 'quota_is_disabled' => 'Quota-Unterstützung ist zur Zeit ausgeschaltet. Benutzer-Quota werden ignoriert bis Quota-Unterstützung in den Einstellungen eingeschaltet wird.', 'quota_warning' => 'Ihr maximal verfügbarer Plattenplatz wurde um [bytes] überschritten. Bitte löschen Sie Dokumente oder ältere Versionen.', +'readme_loading' => 'Bitte warten, bis die Readme geladen ist ...', 'receipts_accepted' => '[no_receipts] Empfangsbestätigungen', 'receipts_accepted_latest' => '(davon [no_receipts] in letzter Version)', 'receipts_not_touched' => '[no_receipts] offene Empfangsbestätigungen', @@ -2183,6 +2188,7 @@ Sollten Sie kein Passwort bekommen haben, dann nutzen Sie bitte die Passwort-Ver 'set_password' => 'Passwort setzen', 'set_workflow' => 'Workflow zuweisen', 'show_extension_changelog' => 'Zeige Versionshistorie', +'show_extension_readme' => 'Readme anzeigen', 'show_extension_version_list' => 'Zeige Liste der Versionen', 'signed_in_as' => 'Angemeldet als', 'sign_in' => 'Anmelden', diff --git a/languages/el_GR/lang.inc b/languages/el_GR/lang.inc index 445841412..1cf1edc89 100644 --- a/languages/el_GR/lang.inc +++ b/languages/el_GR/lang.inc @@ -467,6 +467,7 @@ $text = array( 'dump_remove' => '', 'duplicates' => '', 'duplicate_content' => '', +'duplicate_sequences' => '', 'edit' => 'Επεξεργασία', 'edit_attributes' => '', 'edit_comment' => 'Επεξερασία σχόλιου', @@ -569,6 +570,7 @@ $text = array( 'extension_mgr_repository' => '', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => '', 'extension_version_list' => '', 'february' => 'Φεβρουάριος', @@ -832,6 +834,7 @@ $text = array( 'move_clipboard' => '', 'move_document' => 'Μετακίνηση εγγράφου', 'move_folder' => 'Μετακίνηση φακέλου', +'move_into_rootfolder' => '', 'my_account' => 'Ο Λογαριασμός μου', 'my_documents' => 'Τα έγγραφα μου', 'my_transmittals' => 'Οι Διαβιβάσεις μου', @@ -955,6 +958,7 @@ URL: [url]', 'ownership_changed_email_body' => '', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '', +'parent_folder' => '', 'password' => '', 'password_already_used' => '', 'password_expiration' => '', @@ -1004,6 +1008,7 @@ URL: [url]', 'quota_exceeded' => '', 'quota_is_disabled' => '', 'quota_warning' => '', +'readme_loading' => '', 'receipts_accepted' => '', 'receipts_accepted_latest' => '', 'receipts_not_touched' => '', @@ -1653,6 +1658,7 @@ URL: [url]', 'set_password' => '', 'set_workflow' => '', 'show_extension_changelog' => '', +'show_extension_readme' => '', 'show_extension_version_list' => '', 'signed_in_as' => 'Σύνδεση σαν', 'sign_in' => 'Σύνδεση', diff --git a/languages/en_GB/lang.inc b/languages/en_GB/lang.inc index 7dfdbbb90..7dad80431 100644 --- a/languages/en_GB/lang.inc +++ b/languages/en_GB/lang.inc @@ -19,7 +19,7 @@ // along with this program; if not, write to the Free Software // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. // -// Translators: Admin (2238), archonwang (3), dgrutsch (9), netixw (14) +// Translators: Admin (2245), archonwang (3), dgrutsch (9), netixw (14) $text = array( '2_factor_auth' => '2-factor authentication', @@ -632,13 +632,14 @@ URL: [url]

', 'dropfolder_metadata' => 'Metadata of files to be imported', 'dropupload' => 'Fast upload', 'drop_files_here' => 'Drop files here!', -'drop_files_here_or_click' => 'Drop files here or click!', +'drop_files_here_or_click' => 'Drop files here or click to upload!', 'dump_creation' => 'DB dump creation', 'dump_creation_warning' => 'With this operation you can create a dump file of your database content. After the creation the dump file will be saved in the data folder of your server.', 'dump_list' => 'Existings dump files', 'dump_remove' => 'Remove dump file', 'duplicates' => 'Duplicates', 'duplicate_content' => 'Duplicate Content', +'duplicate_sequences' => 'Duplicate sequence numbers in a folder', 'edit' => 'Edit', 'edit_attributes' => 'Edit attributes', 'edit_comment' => 'Edit comment', @@ -751,6 +752,7 @@ URL: [url]

', 'extension_mgr_repository' => 'Available', 'extension_mgr_upload_disabled' => 'Uploading new extensions is not possible because it is disabled in the configuraton.', 'extension_missing_name' => 'No extension name given', +'extension_readme' => 'Readme', 'extension_toggle_error' => 'Could not toggle extension', 'extension_version_list' => 'Versions', 'february' => 'February', @@ -1078,6 +1080,7 @@ URL: [url]

', 'move_clipboard' => 'Move clipboard', 'move_document' => 'Move document', 'move_folder' => 'Move Folder', +'move_into_rootfolder' => 'Move into root folder', 'my_account' => 'My Account', 'my_documents' => 'My Documents', 'my_transmittals' => 'My Transmittals', @@ -1259,6 +1262,7 @@ New owner: [new_owner]
User: [username]
URL: [url]

', 'ownership_changed_email_subject' => '[sitename]: [name] - Owner changed', +'parent_folder' => 'Parent folder', 'password' => 'Password', 'password_already_used' => 'Password already used', 'password_expiration' => 'Password expiration', @@ -1324,6 +1328,7 @@ If you still have problems to login, then please contact your administrator.', 'quota_exceeded' => 'Your disk quota is exceeded by [bytes].', 'quota_is_disabled' => 'Quota support is currently disabled in the settings. Setting a user quota will have no effect until it is enabled again.', 'quota_warning' => 'Your maximum disc usage is exceeded by [bytes]. Please remove documents or previous versions.', +'readme_loading' => 'Pleae wait, until the Readme is loaded ...', 'receipts_accepted' => '[no_receipts] receipts already accepted', 'receipts_accepted_latest' => '(being [no_receipts] in latest version)', 'receipts_not_touched' => '[no_receipts] receipts not being touched', @@ -2186,6 +2191,7 @@ If you did not receive a password, please use the password forgotten function on 'set_password' => 'Set Password', 'set_workflow' => 'Set Workflow', 'show_extension_changelog' => 'Show Changelog', +'show_extension_readme' => 'Show Readme', 'show_extension_version_list' => 'Show list of versions', 'signed_in_as' => 'Signed in as', 'sign_in' => 'Sign in', diff --git a/languages/es_ES/lang.inc b/languages/es_ES/lang.inc index a797e9995..c445d883e 100644 --- a/languages/es_ES/lang.inc +++ b/languages/es_ES/lang.inc @@ -527,6 +527,7 @@ URL: [url]', 'dump_remove' => 'Eliminar fichero de volcado', 'duplicates' => 'Duplicados', 'duplicate_content' => 'Contenido duplicado', +'duplicate_sequences' => '', 'edit' => 'editar', 'edit_attributes' => 'Editar atributos', 'edit_comment' => 'Editar comentario', @@ -633,6 +634,7 @@ URL: [url]', 'extension_mgr_repository' => 'Disponible', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => '', 'extension_version_list' => 'Versiones', 'february' => 'Febrero', @@ -922,6 +924,7 @@ URL: [url]', 'move_clipboard' => 'Mover portapaprles', 'move_document' => 'Mover documento', 'move_folder' => 'Mover carpeta', +'move_into_rootfolder' => '', 'my_account' => 'Mi cuenta', 'my_documents' => 'Mis documentos', 'my_transmittals' => 'Mi transmision', @@ -1064,6 +1067,7 @@ Usuario: [username] URL: [url]', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '[sitename]: [name] - Propietario modificado', +'parent_folder' => '', 'password' => 'Contraseña', 'password_already_used' => 'La contraseña ya está en uso', 'password_expiration' => 'Caducidad de la contraseña', @@ -1121,6 +1125,7 @@ Si continua teniendo problemas de acceso, por favor contacte con el administrado 'quota_exceeded' => 'Su cuota de disco se ha excedido en [bytes].', 'quota_is_disabled' => 'La cuota está actualmente deshabilitada en las opciones. Establecer una cuota de usuario no tendrá efecto hasta que sea habilitada de nuevo.', 'quota_warning' => 'El máximo de uso de disco se ha excedido en [bytes]. Por favor eliminar documentos o versiones anteriores.', +'readme_loading' => '', 'receipts_accepted' => '', 'receipts_accepted_latest' => '', 'receipts_not_touched' => '', @@ -1806,6 +1811,7 @@ URL: [url]', 'set_password' => 'Establecer contraseña', 'set_workflow' => 'Establecer Flujo de Trabajo', 'show_extension_changelog' => 'Mostrar log de cambios', +'show_extension_readme' => '', 'show_extension_version_list' => 'Lista corta de versiones', 'signed_in_as' => 'Conectado como', 'sign_in' => 'Conectar', diff --git a/languages/fr_FR/lang.inc b/languages/fr_FR/lang.inc index fdd49deb4..bdebee968 100644 --- a/languages/fr_FR/lang.inc +++ b/languages/fr_FR/lang.inc @@ -625,6 +625,7 @@ URL : [url]

', 'dump_remove' => 'Supprimer fichier de sauvegarde', 'duplicates' => 'Doublons', 'duplicate_content' => 'Contenu en double', +'duplicate_sequences' => '', 'edit' => 'Modifier', 'edit_attributes' => 'Modifier les attributs', 'edit_comment' => 'Modifier le commentaire', @@ -737,6 +738,7 @@ URL : [url]

', 'extension_mgr_repository' => 'Disponibles', 'extension_mgr_upload_disabled' => 'Le chargement d\'extension n\'est pas activé', 'extension_missing_name' => 'Nom d’extension manquant', +'extension_readme' => '', 'extension_toggle_error' => 'Impossible d’activer/désactiver l’extension', 'extension_version_list' => 'Versions', 'february' => 'Février', @@ -1064,6 +1066,7 @@ URL : [url]

', 'move_clipboard' => 'Déplacer le contenu du presse-papier', 'move_document' => 'Déplacer le document', 'move_folder' => 'Déplacer le dossier', +'move_into_rootfolder' => '', 'my_account' => 'Mon compte', 'my_documents' => 'Mes documents', 'my_transmittals' => 'Mes transmissions', @@ -1246,6 +1249,7 @@ Nouveau propriétaire : [new_owner]
Utilisateur : [username]
URL : [url]

', 'ownership_changed_email_subject' => '[sitename] : [name] - Propriétaire modifié', +'parent_folder' => '', 'password' => 'Mot de passe', 'password_already_used' => 'Mot de passe déjà utilisé', 'password_expiration' => 'Expiration du mot de passe', @@ -1309,6 +1313,7 @@ En cas de problème persistant, veuillez contacter votre administrateur.', 'quota_exceeded' => 'Votre quota de disque est dépassé de [bytes].', 'quota_is_disabled' => 'La prise en charge des quotas est actuellement désactivée dans les réglages. Affecter un quota utilisateur n’aura pas d’effet jusqu’à ce qu’il soit de nouveau activé.', 'quota_warning' => 'Votre quota d’espace disque est dépassé de [bytes]. Veuillez supprimer des documents ou d\'anciennes versions.', +'readme_loading' => '', 'receipts_accepted' => '[no_receipts] réceptions déjà confirmées', 'receipts_accepted_latest' => '(dont [no_receipts] dans la dernière version)', 'receipts_not_touched' => '[no_receipts] réceptions non amorcées', @@ -2169,6 +2174,7 @@ Nom : [username] 'set_password' => 'Définir mot de passe', 'set_workflow' => 'Définir le Workflow', 'show_extension_changelog' => 'Afficher le journal des modifications', +'show_extension_readme' => '', 'show_extension_version_list' => 'Afficher la liste des versions', 'signed_in_as' => 'Connecté en tant que', 'sign_in' => 'Connexion', diff --git a/languages/hr_HR/lang.inc b/languages/hr_HR/lang.inc index b780ad153..b3507f1ba 100644 --- a/languages/hr_HR/lang.inc +++ b/languages/hr_HR/lang.inc @@ -19,10 +19,10 @@ // along with this program; if not, write to the Free Software // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. // -// Translators: Admin (1249), marbanas (16) +// Translators: Admin (1250), marbanas (16) $text = array( -'2_factor_auth' => '', +'2_factor_auth' => '2-faktorska autentikacija', '2_factor_auth_info' => '', '2_fact_auth_current_secret' => '', '2_fact_auth_new_secret' => '', @@ -526,6 +526,7 @@ Internet poveznica: [url]', 'dump_remove' => 'Ukloni datoteku za odlaganje', 'duplicates' => 'duplikati', 'duplicate_content' => 'Duplicirani sadržaj', +'duplicate_sequences' => '', 'edit' => 'Uredi', 'edit_attributes' => 'Uredi atribute', 'edit_comment' => 'Uredi komentar', @@ -632,6 +633,7 @@ Internet poveznica: [url]', 'extension_mgr_repository' => 'Dostupno', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => '', 'extension_version_list' => 'Inačice', 'february' => 'Veljača', @@ -915,6 +917,7 @@ Internet poveznica: [url]', 'move_clipboard' => 'Premjesti međuspremnik', 'move_document' => 'Premjesti dokument', 'move_folder' => 'Premjesti mapu', +'move_into_rootfolder' => '', 'my_account' => 'Moj korisnički račun', 'my_documents' => 'Moji dokumenti', 'my_transmittals' => 'Moja proslijeđivanja', @@ -1056,6 +1059,7 @@ Korisnik: [username] Internet poveznica: [url]', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '[sitename]: [name] - Promijenjen vlasnik', +'parent_folder' => '', 'password' => 'Lozinka', 'password_already_used' => 'Lozinka se već koristi', 'password_expiration' => 'Istek lozinke', @@ -1113,6 +1117,7 @@ Ako i dalje imate problema s prijavom, molimo kontaktirajte Vašeg administrator 'quota_exceeded' => 'Vaša kvota na disku je premašena za [bytes].', 'quota_is_disabled' => 'Podrška kvoti je trenutno onemogućena u postavkama. Postavka korisničke kvote neće imati utjecaja dok se ponovno ne omogući.', 'quota_warning' => 'Vaš maksimalni prostor na disku je premašen za [bytes]. Molimo uklonite dokumente ili prethodne verzije.', +'readme_loading' => '', 'receipts_accepted' => '', 'receipts_accepted_latest' => '', 'receipts_not_touched' => '', @@ -1815,6 +1820,7 @@ Internet poveznica: [url]', 'set_password' => 'Postavi lozinku', 'set_workflow' => 'Postavi tok rada', 'show_extension_changelog' => '', +'show_extension_readme' => '', 'show_extension_version_list' => '', 'signed_in_as' => 'Prijavljen kao', 'sign_in' => 'Prijava u sustav', diff --git a/languages/hu_HU/lang.inc b/languages/hu_HU/lang.inc index 7923e22f7..f1e433b1a 100644 --- a/languages/hu_HU/lang.inc +++ b/languages/hu_HU/lang.inc @@ -521,6 +521,7 @@ URL: [url]', 'dump_remove' => 'Adatbázis mentés eltávolítása', 'duplicates' => '', 'duplicate_content' => 'Duplikált tartalom', +'duplicate_sequences' => '', 'edit' => 'Szerkesztés', 'edit_attributes' => 'Jellemzők szerkesztése', 'edit_comment' => 'Megjegyzés szerkesztése', @@ -627,6 +628,7 @@ URL: [url]', 'extension_mgr_repository' => 'Telepíthető', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => '', 'extension_version_list' => 'Verziók', 'february' => 'Február', @@ -910,6 +912,7 @@ URL: [url]', 'move_clipboard' => 'Vágólapra helyez', 'move_document' => 'Dokumentum áthelyezése', 'move_folder' => 'Könyvtár áthelyezése', +'move_into_rootfolder' => '', 'my_account' => 'Saját hozzáférés', 'my_documents' => 'Saját dokumentumok', 'my_transmittals' => 'Átviteleim', @@ -1052,6 +1055,7 @@ Felhasználó: [username] URL: [url]', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '[sitename]: [name] - Tulajdonos megváltozott', +'parent_folder' => '', 'password' => 'Jelszó', 'password_already_used' => 'Jelszó korábban használva volt', 'password_expiration' => 'Jelszó lejárat', @@ -1109,6 +1113,7 @@ Amennyiben problémákba ütközik a bejelentkezés során, kérjük vegye fel a 'quota_exceeded' => 'Túllépte a lemezterület korlátot [bytes].', 'quota_is_disabled' => 'Kvóta támogatás jelenleg le van tiltva a beállításoknál. Felhasználói korlát beállítások nem kerülnek érvényesítésre amíg nincs újra engedélyezve.', 'quota_warning' => 'Túllépte lemez korlátot [bytes] bájttal. Kérjük távolítson el dokumentumokat vagy korábbi változatokat.', +'readme_loading' => '', 'receipts_accepted' => '', 'receipts_accepted_latest' => '', 'receipts_not_touched' => '', @@ -1793,6 +1798,7 @@ URL: [url]', 'set_password' => 'Jelszó beállítása', 'set_workflow' => 'Munkafolyamat beállítása', 'show_extension_changelog' => '', +'show_extension_readme' => '', 'show_extension_version_list' => '', 'signed_in_as' => 'Bejelentkezve mint', 'sign_in' => 'Bejelentkezés', diff --git a/languages/id_ID/lang.inc b/languages/id_ID/lang.inc index de7ad1880..ff46a94f2 100644 --- a/languages/id_ID/lang.inc +++ b/languages/id_ID/lang.inc @@ -565,6 +565,7 @@ URL: [url]

', 'dump_remove' => 'Hapus file sampah', 'duplicates' => 'Duplikasi', 'duplicate_content' => '', +'duplicate_sequences' => '', 'edit' => 'Ubah', 'edit_attributes' => 'Ubah label', 'edit_comment' => 'Ubah komentar', @@ -672,6 +673,7 @@ URL: [url]', 'extension_mgr_repository' => 'Tersedia', 'extension_mgr_upload_disabled' => 'Mengunggah ekstensi baru tidak dimungkinkan karena dinonaktifkan di konfigurasi.', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => 'Tidak dapat mengaktifkan ekstensi', 'extension_version_list' => 'Versi', 'february' => 'Februari', @@ -966,6 +968,7 @@ URL: [url]

', 'move_clipboard' => 'Pindah clipboard', 'move_document' => 'Pindah dokumen', 'move_folder' => 'Pindah Folder', +'move_into_rootfolder' => '', 'my_account' => 'Akun Saya', 'my_documents' => 'Dokumen Saya', 'my_transmittals' => 'Transmisi Saya', @@ -1129,6 +1132,7 @@ Pemilik baru: [new_owner]
Pengguna: [username]
URL: [url]

', 'ownership_changed_email_subject' => '[sitename]: [name] - Pemilik diterapkan', +'parent_folder' => '', 'password' => 'Kata sandi', 'password_already_used' => 'Kata sandi telah digunakan', 'password_expiration' => 'Kata sandi telah kadaluwarsa', @@ -1194,6 +1198,7 @@ Jika Anda masih mengalami masalah untuk login, silakan hubungi administrator And 'quota_exceeded' => '', 'quota_is_disabled' => 'Dukungan kuota saat ini dinonaktifkan di pengaturan. Menetapkan kuota pengguna tidak akan berpengaruh hingga diaktifkan kembali.', 'quota_warning' => '', +'readme_loading' => '', 'receipts_accepted' => '[no_receipts] kuitansi sudah diterima', 'receipts_accepted_latest' => '(menjadi [no_receipts] dalam versi terbaru)', 'receipts_not_touched' => '', @@ -1867,6 +1872,7 @@ Jika Anda tidak menerima kata sandi, silakan gunakan fitur lupa kata sandi di ha 'set_password' => 'Setel Kata Sandi', 'set_workflow' => 'Setel Alur Kerja', 'show_extension_changelog' => 'Tampilkan Changelog', +'show_extension_readme' => '', 'show_extension_version_list' => 'Tampilkan daftar versi', 'signed_in_as' => 'Masuk sebagai', 'sign_in' => 'Masuk', diff --git a/languages/it_IT/lang.inc b/languages/it_IT/lang.inc index 271c9fa0c..26bbc25eb 100644 --- a/languages/it_IT/lang.inc +++ b/languages/it_IT/lang.inc @@ -19,7 +19,7 @@ // along with this program; if not, write to the Free Software // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. // -// Translators: Admin (2057), rickr (144), s.pnt (26) +// Translators: Admin (2058), rickr (144), s.pnt (26) $text = array( '2_factor_auth' => 'Autorizzazione a due fattori', @@ -531,6 +531,7 @@ URL: [url]', 'dump_remove' => 'Cancella il file di dump', 'duplicates' => 'Duplicati', 'duplicate_content' => 'Contenuto duplicato', +'duplicate_sequences' => '', 'edit' => 'Modifica', 'edit_attributes' => 'Modifica gli attributi', 'edit_comment' => 'Modifica il commento', @@ -637,6 +638,7 @@ URL: [url]', 'extension_mgr_repository' => 'Disponibile', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => '', 'extension_version_list' => 'Versioni', 'february' => 'Febbraio', @@ -920,6 +922,7 @@ URL: [url]', 'move_clipboard' => 'Sposta appunti', 'move_document' => 'Sposta documento', 'move_folder' => 'Sposta cartella', +'move_into_rootfolder' => '', 'my_account' => 'Account personale', 'my_documents' => 'Documenti personali', 'my_transmittals' => 'Mie trasmissioni', @@ -1062,6 +1065,7 @@ Utente: [username] URL: [url]', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '[sitename]: [name] - Cambio di proprietario', +'parent_folder' => '', 'password' => 'Password', 'password_already_used' => 'Password già usata', 'password_expiration' => 'Scadenza password', @@ -1119,6 +1123,7 @@ Dovessero esserci ancora problemi al login, prego contatta l\'amministratore di 'quota_exceeded' => 'La quota-disco è stata superata di [bytes].', 'quota_is_disabled' => 'Il supporto per le quote è attualmente disattivato nelle impostazioni. L\'impostazione di una quota-utente non avrà alcun effetto finché tale funzionalità non verrà nuovamente attivata.', 'quota_warning' => 'Il vostro utilizzo massimo di spazio è stato superato di [bytes]. Si prega di rimuovere documenti o versioni obsolete.', +'readme_loading' => '', 'receipts_accepted' => '[no_receipts] ricevute già accettate', 'receipts_accepted_latest' => '', 'receipts_not_touched' => '[no_receipts] ricevute non gestite', @@ -1360,7 +1365,7 @@ URL: [url]', 'search' => 'Ricerca', 'search_fulltext' => 'Ricerca fulltext', 'search_in' => 'Cerca in', -'search_mode' => '', +'search_mode' => 'Modalità di ricerca', 'search_mode_and' => 'tutte le parole', 'search_mode_documents' => 'Solo documenti', 'search_mode_folders' => 'Solo cartelle', @@ -1842,6 +1847,7 @@ Name: [username] 'set_password' => 'Imposta password', 'set_workflow' => 'Imposta il flusso di lavoro', 'show_extension_changelog' => 'Registro delle modifiche dell\'estensione', +'show_extension_readme' => '', 'show_extension_version_list' => 'Mostra lista delle versioni', 'signed_in_as' => 'Utente', 'sign_in' => 'Accesso', diff --git a/languages/ko_KR/lang.inc b/languages/ko_KR/lang.inc index de8f2db0b..496ac5b74 100644 --- a/languages/ko_KR/lang.inc +++ b/languages/ko_KR/lang.inc @@ -527,6 +527,7 @@ URL: [url]', 'dump_remove' => '덤프 파일 제거', 'duplicates' => '', 'duplicate_content' => '중복 내용', +'duplicate_sequences' => '', 'edit' => '편집', 'edit_attributes' => '속성 편집', 'edit_comment' => '주석 고치기', @@ -633,6 +634,7 @@ URL: [url]', 'extension_mgr_repository' => '', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => '', 'extension_version_list' => '', 'february' => '2월', @@ -916,6 +918,7 @@ URL: [url]', 'move_clipboard' => '이동 클립 보드', 'move_document' => '문서 옮기기', 'move_folder' => '폴더 이동', +'move_into_rootfolder' => '', 'my_account' => '내 계정', 'my_documents' => '내 문서', 'my_transmittals' => '내 송부', @@ -1058,6 +1061,7 @@ URL : [url]', URL : [url]', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '[sitename] : [name] - 소유자 변경', +'parent_folder' => '', 'password' => '암호', 'password_already_used' => '예전에 쓰인 암호', 'password_expiration' => '암호 만료', @@ -1107,6 +1111,7 @@ URL : [url]', 'quota_exceeded' => '당신은 디스크 할당량 [bytes]을 초과한다.', 'quota_is_disabled' => '할당량 지원이 설정에서 비활성화되어 있습니다. 다시 활성화 될 때까지 사용자의 할당량 설정은 적용되지 않습니다.', 'quota_warning' => '당신의 최대 디스크 사용량 [bytes] 초과됩니다. 문서 또는 이전 버전을 제거하십시오.', +'readme_loading' => '', 'receipts_accepted' => '', 'receipts_accepted_latest' => '', 'receipts_not_touched' => '', @@ -1809,6 +1814,7 @@ URL : [url]', 'set_password' => '비밀번호 설정', 'set_workflow' => '워크플로우 설정', 'show_extension_changelog' => '', +'show_extension_readme' => '', 'show_extension_version_list' => '', 'signed_in_as' => '로그인', 'sign_in' => '로그인', diff --git a/languages/lo_LA/lang.inc b/languages/lo_LA/lang.inc index f21751132..ae23a3e7e 100644 --- a/languages/lo_LA/lang.inc +++ b/languages/lo_LA/lang.inc @@ -524,6 +524,7 @@ URL: [url]', 'dump_remove' => 'ລົບແຟ້ມການຖ່າຍໂອນຂໍ້ມູນ', 'duplicates' => 'ລາຍການທີຊໍ້າກັນ', 'duplicate_content' => 'ເນື້ອຫາທີ່ຊໍ້າກັນ', +'duplicate_sequences' => '', 'edit' => 'ແກ້ໄຂ', 'edit_attributes' => 'ແກ້ໄຂແອັດທີບິວ', 'edit_comment' => 'ແກ້ໄຂຄວາມຄິດເຫັນ', @@ -630,6 +631,7 @@ URL: [url]', 'extension_mgr_repository' => '', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => '', 'extension_version_list' => '', 'february' => 'ເດືອນ ກຸມພາ', @@ -913,6 +915,7 @@ URL: [url]', 'move_clipboard' => 'ຍ້າຍຄິບບອດ', 'move_document' => 'ຍ້າຍເອກະສານ', 'move_folder' => 'ຍ້າຍໂຟລເດີ', +'move_into_rootfolder' => '', 'my_account' => 'ບັນຊີຂອງຂ້ອຍ', 'my_documents' => 'ເອກະສານຂອງຂ້ອຍ', 'my_transmittals' => 'ການຂົນສົ່ງຂອງຂ້ອຍ', @@ -1055,6 +1058,7 @@ URL: [url]', URL: [url]', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '[sitename]:[name] - ປ່ຽນເຈົ້າຂອງແລ້ວ', +'parent_folder' => '', 'password' => 'ລະຫັດຜ່ານ', 'password_already_used' => 'ລະຫັດຜ່ານທີນຳໄຊ້ແລ້ວ', 'password_expiration' => 'ລະຫັດຜ່ານໝົດອາຍຸ', @@ -1112,6 +1116,7 @@ URL: [url]', 'quota_exceeded' => 'ໂຄຕ້າດິສຂອງເຈົ້າມີຂະໜາດເກີນ [ໄບ]', 'quota_is_disabled' => 'ຂະນະນີ້ການສະນັບສະໜູນໂຄຕ້າຖືກປິດໄຊ້ງານໃນການຕັ້ງຄ່າແລ້ວການກຳນົດໂຄຕ້າຜູ້ໄຊ້ຈະບໍ່ມີຜົນໄດໆ ຈົນກວ່າຈະເປີດໄຊ້ງານອີກຄັ້ງ', 'quota_warning' => 'ການໄຊ້ດິສສູງສຸດຂອງເຈົ້າເກີນ [ໄບຣ] ໂປດລົບເອກະສານຫຼືເວີຊັນກ່ອນໜ້າ', +'readme_loading' => '', 'receipts_accepted' => 'ໃບບິນຮັບເງີນໄດ້ຮັບການຍອມຮັບແລ້ວ [ບໍມີໃບບິນຮັບເງິນ]', 'receipts_accepted_latest' => '', 'receipts_not_touched' => 'ບໍ່ມີໃບບິນຮັບເງິນ', @@ -1835,6 +1840,7 @@ URL: [url]', 'set_password' => 'ຕັ້ງລະຫັດຜ່ານ', 'set_workflow' => 'ຕັ້ງຄ່າການທຳງານ', 'show_extension_changelog' => '', +'show_extension_readme' => '', 'show_extension_version_list' => '', 'signed_in_as' => 'ລົງຊື່ເຂົາໄຊ້ໂດຍ', 'sign_in' => 'ລົງຊື່ເຂົາໄຊ້', diff --git a/languages/nb_NO/lang.inc b/languages/nb_NO/lang.inc index 484c2da5b..6cd633703 100644 --- a/languages/nb_NO/lang.inc +++ b/languages/nb_NO/lang.inc @@ -538,6 +538,7 @@ URL: [url]', 'dump_remove' => 'Ta bort dumpfil', 'duplicates' => 'Duplikater', 'duplicate_content' => 'Dubliser innehold', +'duplicate_sequences' => '', 'edit' => 'Rediger', 'edit_attributes' => 'Rediger egenskaper', 'edit_comment' => 'Rediger kommentar', @@ -644,6 +645,7 @@ URL: [url]', 'extension_mgr_repository' => 'Tilgjengelig', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => '', 'extension_version_list' => 'Versjon', 'february' => 'Februar', @@ -934,6 +936,7 @@ URL: [url]', 'move_clipboard' => 'Flytt utklippstavlen', 'move_document' => 'Flytte dokument', 'move_folder' => 'Flytte mappe', +'move_into_rootfolder' => '', 'my_account' => 'Min side', 'my_documents' => 'Mine dokumenter', 'my_transmittals' => 'Mine sendinger', @@ -1076,6 +1079,7 @@ Bruker: [username] URL: [url]', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '[sitename]: [name] - Eier endret', +'parent_folder' => '', 'password' => 'Passord', 'password_already_used' => 'Passord allerede brukt', 'password_expiration' => 'Passord utgått', @@ -1127,6 +1131,7 @@ Om du fortsatt har problemer med innloggingen, kontakt admin.', 'quota_exceeded' => 'Diskkvoten din er overskridet med [bytes].', 'quota_is_disabled' => 'Kvotestøtte er for øyeblikket deaktivert i innstillingene. Å sette en brukerkvote vil ikke ha noen effekt før den er aktivert igjen.', 'quota_warning' => 'Din maksimale lagringskvote er overskredet med [bytes]. Ta bort dokumenter eller tidigere versjoner.', +'readme_loading' => '', 'receipts_accepted' => '[no_receipts] kvitteringer allerede akseptert', 'receipts_accepted_latest' => '(er [no_receipts] i siste versjon)', 'receipts_not_touched' => '[no_receipts] kvitteringer ikke blir berørt', @@ -1848,6 +1853,7 @@ Bruker: [username] 'set_password' => 'Angi passord', 'set_workflow' => 'Velg arbeidsflyt', 'show_extension_changelog' => 'Vis forandrings logg', +'show_extension_readme' => '', 'show_extension_version_list' => 'Vis liste over versjoner', 'signed_in_as' => 'Innlogget som', 'sign_in' => 'Logg inn', diff --git a/languages/nl_NL/lang.inc b/languages/nl_NL/lang.inc index 7fdd9db6c..171dc9519 100644 --- a/languages/nl_NL/lang.inc +++ b/languages/nl_NL/lang.inc @@ -531,6 +531,7 @@ URL: [url]', 'dump_remove' => 'Verwijder dump bestand', 'duplicates' => 'Doublures', 'duplicate_content' => 'Dubbele inhoud', +'duplicate_sequences' => '', 'edit' => 'Wijzigen', 'edit_attributes' => 'Bewerk attributen', 'edit_comment' => 'Wijzig commentaar', @@ -637,6 +638,7 @@ URL: [url]', 'extension_mgr_repository' => 'Beschikbaar', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => 'Naam extensie ontbreekt', +'extension_readme' => '', 'extension_toggle_error' => 'Omschakelen mislukt', 'extension_version_list' => 'Versies', 'february' => 'februari', @@ -927,6 +929,7 @@ URL: [url]', 'move_clipboard' => 'Verplaats klembord', 'move_document' => 'Verplaats document', 'move_folder' => 'Map verplaatsen', +'move_into_rootfolder' => '', 'my_account' => 'Mijn Account', 'my_documents' => 'Mijn Documenten', 'my_transmittals' => 'Mijn zendingen', @@ -1068,6 +1071,7 @@ Gebruiker: [username] URL: [url]', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '[sitename]: [name] - Eigenaar gewijzigd', +'parent_folder' => '', 'password' => 'Wachtwoord', 'password_already_used' => 'Wachtwoord al gebruikt', 'password_expiration' => 'Wachtwoord vervaldatum', @@ -1126,6 +1130,7 @@ Mocht u de komende minuten geen email ontvangen, probeer het dan nogmaals en con 'quota_exceeded' => 'Uw data quotum is overschreden met [bytes].', 'quota_is_disabled' => 'Quota support is momenteel niet actief in de eigenschappen. Een user-quotum instellen zal geen effect hebben tot quota actief zijn', 'quota_warning' => 'Uw maximale datagebruik is overschreden met [bytes]. Gelieve documenten of eerdere versies te verwijderen.', +'readme_loading' => '', 'receipts_accepted' => '[no_receipts] ontvangen en geaccepteerd', 'receipts_accepted_latest' => '(er zijn [no_receipts] in de nieuwste versie)', 'receipts_not_touched' => '[no_receipts] ontvangen, nog niet behandeld', @@ -1847,6 +1852,7 @@ Name: [username] 'set_password' => 'Stel wachtwoord in', 'set_workflow' => 'Stel workflow in', 'show_extension_changelog' => 'Toon wijzigingslog', +'show_extension_readme' => '', 'show_extension_version_list' => 'Toon lijst met versies', 'signed_in_as' => 'Ingelogd als:', 'sign_in' => 'Log in', diff --git a/languages/pl_PL/lang.inc b/languages/pl_PL/lang.inc index a638d4d2a..ab5ef1927 100644 --- a/languages/pl_PL/lang.inc +++ b/languages/pl_PL/lang.inc @@ -514,6 +514,7 @@ URL: [url]', 'dump_remove' => 'Usuń plik zrzutu', 'duplicates' => 'Duplikaty', 'duplicate_content' => 'Zduplikowana zawartość', +'duplicate_sequences' => '', 'edit' => 'Edytuj', 'edit_attributes' => 'Zmiana atrybutów', 'edit_comment' => 'Edytuj komentarz', @@ -620,6 +621,7 @@ URL: [url]', 'extension_mgr_repository' => 'Dostępne', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => '', 'extension_version_list' => 'Wersje', 'february' => 'Luty', @@ -903,6 +905,7 @@ URL: [url]', 'move_clipboard' => 'Przenieś schowek', 'move_document' => 'Przenieś dokument', 'move_folder' => 'Przenieś folder', +'move_into_rootfolder' => '', 'my_account' => 'Moje konto', 'my_documents' => 'Moje dokumenty', 'my_transmittals' => 'Moi recenzenci', @@ -1045,6 +1048,7 @@ Użytkownik: [username] URL: [url]', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '[sitename]: [name] - Zmiana właściciela', +'parent_folder' => '', 'password' => 'Hasło', 'password_already_used' => 'Hasło jest aktualnie używane', 'password_expiration' => 'Wygaśnięcie hasła', @@ -1102,6 +1106,7 @@ Jeśli nadal będą problemy z zalogowaniem, prosimy o kontakt z administratorem 'quota_exceeded' => 'Twój limit przydzielonej przestrzeni dyskowej został przekroczony o [bytes].', 'quota_is_disabled' => 'Wsparcie limitów dyskowych jest obecnie wyłączone w ustawieniach. Ustawiony limit dyskowy użytkownika nie będzie działał dopóki wparcie nie zostanie ponownie włączone.', 'quota_warning' => 'Przekroczono użycie dysku o [bytes]. Usuń dokumenty lub poprzednie wersje.', +'readme_loading' => '', 'receipts_accepted' => 'Potwierdzenia zaakceptowane', 'receipts_accepted_latest' => '(istnieje [no_receipts] w ostatniej wersji)', 'receipts_not_touched' => 'Potwierdzenia nieoglądane', @@ -1778,6 +1783,7 @@ Name: [username] 'set_password' => 'Zmień hasło', 'set_workflow' => 'Ustaw proces', 'show_extension_changelog' => 'Pokaż Changelog', +'show_extension_readme' => '', 'show_extension_version_list' => 'Pokaż listę wersji', 'signed_in_as' => 'Zalogowany jako', 'sign_in' => 'Zaloguj się', diff --git a/languages/pt_BR/lang.inc b/languages/pt_BR/lang.inc index 57d7c0229..748d8f7f9 100644 --- a/languages/pt_BR/lang.inc +++ b/languages/pt_BR/lang.inc @@ -538,6 +538,7 @@ URL: [url]', 'dump_remove' => 'Remover arquivo de despejo', 'duplicates' => 'Duplicados', 'duplicate_content' => 'Conteúdo duplicado', +'duplicate_sequences' => '', 'edit' => 'editar', 'edit_attributes' => 'Editar atributos', 'edit_comment' => 'Editar comentário', @@ -644,6 +645,7 @@ URL: [url]', 'extension_mgr_repository' => 'Disponível', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => '', 'extension_version_list' => 'Versões', 'february' => 'Fevereiro', @@ -934,6 +936,7 @@ URL: [url]', 'move_clipboard' => 'Mover para memória auxiliar', 'move_document' => 'Mover documento', 'move_folder' => 'Mover Pasta', +'move_into_rootfolder' => '', 'my_account' => 'Minha Conta', 'my_documents' => 'Meus Documentos', 'my_transmittals' => 'Minhas Transmissões', @@ -1075,6 +1078,7 @@ Usuário: [username] URL: [url]', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '[sitename]: [name] - Proprietário mudou', +'parent_folder' => '', 'password' => 'Senha', 'password_already_used' => 'Senha já usada', 'password_expiration' => 'Expiração de senha', @@ -1132,6 +1136,7 @@ Se você ainda tiver problemas para fazer o login, por favor, contate o administ 'quota_exceeded' => 'Sua cota de disco foi ultrapassada em [bytes].', 'quota_is_disabled' => 'Suporte a cota está desativado nas configurações. A definição de cota do usuário não terá efeito até que seja habilitada novamente.', 'quota_warning' => 'Seu uso máximo do disco foi ultrapassado em [bytes]. Por favor, remova documentos ou versões anteriores.', +'readme_loading' => '', 'receipts_accepted' => '[no_receipts] recibos já aceitos', 'receipts_accepted_latest' => 'recibos aceites mais recentes', 'receipts_not_touched' => '[no_receipts] recibos não tocados', @@ -1854,6 +1859,7 @@ Nome: [username] 'set_password' => 'Definir Senha', 'set_workflow' => 'Definir fluxo de trabalho', 'show_extension_changelog' => 'Mostrar Changelog', +'show_extension_readme' => '', 'show_extension_version_list' => 'Exibir Lista de Versões', 'signed_in_as' => 'Logado', 'sign_in' => 'Entre com seu usuário e senha', diff --git a/languages/ro_RO/lang.inc b/languages/ro_RO/lang.inc index 59c95cbe7..c95720d0b 100644 --- a/languages/ro_RO/lang.inc +++ b/languages/ro_RO/lang.inc @@ -526,6 +526,7 @@ URL: [url]', 'dump_remove' => 'Sterge fișier imagine', 'duplicates' => '', 'duplicate_content' => '', +'duplicate_sequences' => '', 'edit' => 'Editează', 'edit_attributes' => 'Editează atribute', 'edit_comment' => 'Editează comentariu', @@ -632,6 +633,7 @@ URL: [url]', 'extension_mgr_repository' => 'Disponibila', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => '', 'extension_version_list' => 'Versiuni', 'february' => 'Februarie', @@ -915,6 +917,7 @@ URL: [url]', 'move_clipboard' => 'Mută clipboard', 'move_document' => 'Mută document', 'move_folder' => 'Mută Folder', +'move_into_rootfolder' => '', 'my_account' => 'Contul Meu', 'my_documents' => 'Documentele Mele', 'my_transmittals' => 'Trimiterile mele', @@ -1057,6 +1060,7 @@ Utilizator: [username] URL: [url]', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '[sitename]: [name] - Proprietar schimbat', +'parent_folder' => '', 'password' => 'Parolă', 'password_already_used' => 'Parolă folosită deja', 'password_expiration' => 'Expirare parolă', @@ -1114,6 +1118,7 @@ Dacă aveți în continuare probleme la autentificare, vă rugăm să contactaț 'quota_exceeded' => 'Spatiul tău alocat pe disc este depășit cu [bytes].', 'quota_is_disabled' => 'Spatiu alocat este dezactivată în setări. Stabilirea unui spatiu alocat pentru utilizator nu va avea nici un efect până când setarea este reactivată din nou.', 'quota_warning' => 'Dimensiunea dumneavoastră maximă este depasită cu [bytes]. Vă rugăm să eliminați documente sau versiuni anterioare.', +'readme_loading' => '', 'receipts_accepted' => '', 'receipts_accepted_latest' => '', 'receipts_not_touched' => '', @@ -1816,6 +1821,7 @@ URL: [url]', 'set_password' => 'Setare Parolă', 'set_workflow' => 'Setare Workflow', 'show_extension_changelog' => '', +'show_extension_readme' => '', 'show_extension_version_list' => 'Arata o lista a versiunilor', 'signed_in_as' => 'Autentificat ca', 'sign_in' => 'Sign in', diff --git a/languages/ru_RU/lang.inc b/languages/ru_RU/lang.inc index 89c0ecf3a..21014db1f 100644 --- a/languages/ru_RU/lang.inc +++ b/languages/ru_RU/lang.inc @@ -526,6 +526,7 @@ URL: [url]', 'dump_remove' => 'Удалить дамп', 'duplicates' => 'Дубликаты', 'duplicate_content' => 'Дублированное содержимое', +'duplicate_sequences' => '', 'edit' => 'Изменить', 'edit_attributes' => 'Изменить атрибуты', 'edit_comment' => 'Изменить комментарий', @@ -632,6 +633,7 @@ URL: [url]', 'extension_mgr_repository' => 'Установленные', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => '', 'extension_version_list' => 'Версии', 'february' => 'Февраль', @@ -915,6 +917,7 @@ URL: [url]', 'move_clipboard' => 'Переместить буфер обмена', 'move_document' => 'Переместить документ', 'move_folder' => 'Переместить каталог', +'move_into_rootfolder' => '', 'my_account' => 'Моя учётка', 'my_documents' => 'Мои документы', 'my_transmittals' => 'Мои пересылки', @@ -1056,6 +1059,7 @@ URL: [url]', URL: [url]', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '[sitename]: изменён владелец «[name]»', +'parent_folder' => '', 'password' => 'Пароль', 'password_already_used' => 'Пароль уже используется', 'password_expiration' => 'Срок действия пароля', @@ -1111,6 +1115,7 @@ URL: [url]', 'quota_exceeded' => 'Ваша дисковая квота превышена на [bytes].', 'quota_is_disabled' => 'Поддержка квот в настоящее время отключена в настройках.', 'quota_warning' => 'Ваша дисковая квота превышена на [bytes]. Удалите ненужные документы или их предыдущие версии.', +'readme_loading' => '', 'receipts_accepted' => '', 'receipts_accepted_latest' => '', 'receipts_not_touched' => '', @@ -1823,6 +1828,7 @@ URL: [url]', 'set_password' => 'Установить пароль', 'set_workflow' => 'Установить процесс', 'show_extension_changelog' => 'Показать журнал изменений', +'show_extension_readme' => '', 'show_extension_version_list' => 'Показать список версий', 'signed_in_as' => 'Пользователь', 'sign_in' => 'Войти', diff --git a/languages/sk_SK/lang.inc b/languages/sk_SK/lang.inc index 3d00e11e6..6e805be12 100644 --- a/languages/sk_SK/lang.inc +++ b/languages/sk_SK/lang.inc @@ -538,6 +538,7 @@ URL: [url]', 'dump_remove' => 'Odstrániť vystup', 'duplicates' => 'Duplikáty', 'duplicate_content' => 'Duplicitný obsah', +'duplicate_sequences' => '', 'edit' => 'upraviť', 'edit_attributes' => 'Uprav parametre', 'edit_comment' => 'Upraviť komentár', @@ -644,6 +645,7 @@ URL: [url]', 'extension_mgr_repository' => 'Available', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => '', 'extension_version_list' => 'Versions', 'february' => 'Február', @@ -934,6 +936,7 @@ URL: [url]', 'move_clipboard' => 'Presunúť schránku', 'move_document' => 'Presunúť dokument', 'move_folder' => 'Presunúť zložku', +'move_into_rootfolder' => '', 'my_account' => 'Môj účet', 'my_documents' => 'Moje dokumenty', 'my_transmittals' => 'My Transmittals', @@ -1076,6 +1079,7 @@ Používateľ: [username] URL: [url]', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '[sitename]: [name] - Vlastník zmenený', +'parent_folder' => '', 'password' => 'Heslo', 'password_already_used' => 'Heslo sa už používa', 'password_expiration' => 'Vypršanie hesla', @@ -1133,6 +1137,7 @@ If you have still problems to login, then please contact your administrator.', 'quota_exceeded' => 'Vaša disková kvóta bola prekročená o [bytes].', 'quota_is_disabled' => 'Podpora kvót je momentálne zakázaná v nastaveniach. Nastavenie kvóty používateľa nebude mať žiadny účinok, kým nebude znovu aktivovaná.', 'quota_warning' => 'Maximálne využitie disku je prekročené o [bytes]. Odstráňte dokumenty alebo predchádzajúce verzie.', +'readme_loading' => '', 'receipts_accepted' => '[no_receipts] receipts already accepted', 'receipts_accepted_latest' => '', 'receipts_not_touched' => '[no_receipts] receipts not being touched', @@ -1856,6 +1861,7 @@ Meno: [username] 'set_password' => 'Nastaviť heslo', 'set_workflow' => 'Set Workflow', 'show_extension_changelog' => 'Show Changelog', +'show_extension_readme' => '', 'show_extension_version_list' => 'Show list of versions', 'signed_in_as' => 'Prihlásený ako', 'sign_in' => 'Prihlásiť sa', diff --git a/languages/sv_SE/lang.inc b/languages/sv_SE/lang.inc index ea4c3ed0a..e5fee5ec5 100644 --- a/languages/sv_SE/lang.inc +++ b/languages/sv_SE/lang.inc @@ -532,6 +532,7 @@ URL: [url]', 'dump_remove' => 'Ta bort dumpfil', 'duplicates' => 'Dubletter', 'duplicate_content' => 'Duplicera innehåll', +'duplicate_sequences' => '', 'edit' => 'Ändra', 'edit_attributes' => 'Ändra attribut', 'edit_comment' => 'Ändra kommentar', @@ -638,6 +639,7 @@ URL: [url]', 'extension_mgr_repository' => '', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => '', 'extension_version_list' => '', 'february' => 'februari', @@ -921,6 +923,7 @@ URL: [url]', 'move_clipboard' => 'Flytta urklipp', 'move_document' => 'Flytta dokument', 'move_folder' => 'Flytta katalog', +'move_into_rootfolder' => '', 'my_account' => 'Min Sida', 'my_documents' => 'Mina dokument', 'my_transmittals' => 'Mina överföringar', @@ -1063,6 +1066,7 @@ Användare: [username] URL: [url]', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '[sitename]: [name] - Ägare har ändrats', +'parent_folder' => '', 'password' => 'Lösenord', 'password_already_used' => 'Lösenordet används redan', 'password_expiration' => 'Lösenord utgår', @@ -1117,6 +1121,7 @@ Om du fortfarande har problem med inloggningen, kontakta administratören.', 'quota_exceeded' => 'Din minneskvot har överskridits med [bytes].', 'quota_is_disabled' => 'Kvotstöd är för närvarande inaktiverad i inställningarna. Ett värde för användarkvot kommer inte att ha någon effekt förrän den är aktiverad igen.', 'quota_warning' => 'Din maximala lagringskvot har överskridits med [bytes]. Ta bort dokument eller tidigare versioner.', +'readme_loading' => '', 'receipts_accepted' => '', 'receipts_accepted_latest' => '', 'receipts_not_touched' => '', @@ -1829,6 +1834,7 @@ Kommentar: [comment]', 'set_password' => 'Ange lösenord', 'set_workflow' => 'Välj arbetsflöde', 'show_extension_changelog' => '', +'show_extension_readme' => '', 'show_extension_version_list' => '', 'signed_in_as' => 'Inloggad som', 'sign_in' => 'Logga in', diff --git a/languages/tr_TR/lang.inc b/languages/tr_TR/lang.inc index 7dfe3251b..9d8818ed1 100644 --- a/languages/tr_TR/lang.inc +++ b/languages/tr_TR/lang.inc @@ -520,6 +520,7 @@ URL: [url]', 'dump_remove' => 'Dump dosyasını sil', 'duplicates' => '', 'duplicate_content' => 'içeriği_klonla', +'duplicate_sequences' => '', 'edit' => 'Düzenle', 'edit_attributes' => 'Nitelikleri düzenle', 'edit_comment' => 'Açıklamayı düzenle', @@ -626,6 +627,7 @@ URL: [url]', 'extension_mgr_repository' => 'Mevcut', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => '', 'extension_version_list' => 'Veysionlar', 'february' => 'Şubat', @@ -909,6 +911,7 @@ URL: [url]', 'move_clipboard' => 'Panoyu taşı', 'move_document' => 'Dokümanı taşı', 'move_folder' => 'Klasörü Taşı', +'move_into_rootfolder' => '', 'my_account' => 'Hesabım', 'my_documents' => 'Dokümanlarım', 'my_transmittals' => 'Çevirilerim', @@ -1051,6 +1054,7 @@ Kullanıcı: [username] URL: [url]', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '[sitename]: [name] - Sahip değişti', +'parent_folder' => '', 'password' => 'Parola', 'password_already_used' => 'Bu parola zaten kullanılmış', 'password_expiration' => 'Parola kullanım süresi', @@ -1110,6 +1114,7 @@ Giriş yaparken halen sorun yaşıyorsanız lütfen sistem yöneticinizle görü 'quota_exceeded' => 'Size ayrılan disk kotası [bytes] aşıldı.', 'quota_is_disabled' => 'Kota desteği ayarlardan kapatılmış durumda. Açılana kadar kullanıcıya kota tanımlamanın bir etkisi olmaz.', 'quota_warning' => 'Size ayrılan disk kotası [bytes] aşıldı. Lütfen gereksiz olduğunu düşündüğünüz dokümanları veya eski versiyonları silin.', +'readme_loading' => '', 'receipts_accepted' => '', 'receipts_accepted_latest' => '', 'receipts_not_touched' => '', @@ -1795,6 +1800,7 @@ URL: [url]', 'set_password' => 'Parola Belirle', 'set_workflow' => 'İş Akışı Tanımla', 'show_extension_changelog' => '', +'show_extension_readme' => '', 'show_extension_version_list' => 'Versiyonları görüntüle', 'signed_in_as' => 'Giriş yapan kullanıcı', 'sign_in' => 'Giriş', diff --git a/languages/uk_UA/lang.inc b/languages/uk_UA/lang.inc index c3150f174..1e97c88b6 100644 --- a/languages/uk_UA/lang.inc +++ b/languages/uk_UA/lang.inc @@ -526,6 +526,7 @@ URL: [url]', 'dump_remove' => 'Видалити дамп', 'duplicates' => '', 'duplicate_content' => 'Дубльований вміст', +'duplicate_sequences' => '', 'edit' => 'Змінити', 'edit_attributes' => 'Змінити атрибути', 'edit_comment' => 'Змінити коментар', @@ -632,6 +633,7 @@ URL: [url]', 'extension_mgr_repository' => '', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => '', 'extension_version_list' => '', 'february' => 'Лютий', @@ -915,6 +917,7 @@ URL: [url]', 'move_clipboard' => 'Перемістити буфер обміну', 'move_document' => 'Перемістити документ', 'move_folder' => 'Перемістити каталог', +'move_into_rootfolder' => '', 'my_account' => 'Мій обліковий запис', 'my_documents' => 'Мої документи', 'my_transmittals' => 'Мої перенесення', @@ -1056,6 +1059,7 @@ URL: [url]', URL: [url]', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '[sitename]: змінено власника «[name]»', +'parent_folder' => '', 'password' => 'Пароль', 'password_already_used' => 'Пароль вже використовується', 'password_expiration' => 'Термін використання паролю', @@ -1111,6 +1115,7 @@ URL: [url]', 'quota_exceeded' => 'Ваша дискова квота перевищена на [bytes].', 'quota_is_disabled' => 'Квотування відключено', 'quota_warning' => 'Ваша дискова квота перевищена на [bytes]. Видаліть непотрібні документи або їх попередні версії.', +'readme_loading' => '', 'receipts_accepted' => '', 'receipts_accepted_latest' => '', 'receipts_not_touched' => '', @@ -1816,6 +1821,7 @@ URL: [url]', 'set_password' => 'Встановити пароль', 'set_workflow' => 'Вказати процес', 'show_extension_changelog' => '', +'show_extension_readme' => '', 'show_extension_version_list' => '', 'signed_in_as' => 'Користувач', 'sign_in' => 'Увійти', diff --git a/languages/zh_CN/lang.inc b/languages/zh_CN/lang.inc index bf8a2dd0e..ee4aeb3b5 100644 --- a/languages/zh_CN/lang.inc +++ b/languages/zh_CN/lang.inc @@ -526,6 +526,7 @@ URL: [url]', 'dump_remove' => '删除转储文件', 'duplicates' => '复制', 'duplicate_content' => '重复的内容', +'duplicate_sequences' => '', 'edit' => '编辑', 'edit_attributes' => '编辑属性', 'edit_comment' => '编辑说明', @@ -634,6 +635,7 @@ URL: [url]', 'extension_mgr_repository' => '可得到', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => '', 'extension_version_list' => '版本列表', 'february' => '二 月', @@ -917,6 +919,7 @@ URL: [url]', 'move_clipboard' => '移动剪切板', 'move_document' => '移动文档', 'move_folder' => '移动文件夹', +'move_into_rootfolder' => '', 'my_account' => '我的账户', 'my_documents' => '我的文档', 'my_transmittals' => '我的传送', @@ -1059,6 +1062,7 @@ URL: [url]', URL: [url]', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '[sitename]: [name] - 所有者已更新', +'parent_folder' => '', 'password' => '密码', 'password_already_used' => '密码已被使用', 'password_expiration' => '密码过期', @@ -1116,6 +1120,7 @@ URL: [url]', 'quota_exceeded' => '您的磁盘配额已超过 [bytes]。', 'quota_is_disabled' => '配额的支持', 'quota_warning' => '您的磁盘最大使用量已超过 [bytes]。请删除文档或以前的版本。', +'readme_loading' => '', 'receipts_accepted' => '已收到收据', 'receipts_accepted_latest' => '', 'receipts_not_touched' => '未获取收据[no_receipts]', @@ -1803,6 +1808,7 @@ URL: [url]', 'set_password' => '设定密码', 'set_workflow' => '设置工作流', 'show_extension_changelog' => '显示更新记录', +'show_extension_readme' => '', 'show_extension_version_list' => '显示版本列表', 'signed_in_as' => '登录为', 'sign_in' => '登录', diff --git a/languages/zh_TW/lang.inc b/languages/zh_TW/lang.inc index a04043ebb..b6331d790 100644 --- a/languages/zh_TW/lang.inc +++ b/languages/zh_TW/lang.inc @@ -538,6 +538,7 @@ URL: [url]', 'dump_remove' => '刪除轉儲檔', 'duplicates' => '重複項', 'duplicate_content' => '重複內容', +'duplicate_sequences' => '', 'edit' => '編輯', 'edit_attributes' => '編輯屬性', 'edit_comment' => '編輯說明', @@ -644,6 +645,7 @@ URL: [url]', 'extension_mgr_repository' => '可用', 'extension_mgr_upload_disabled' => '', 'extension_missing_name' => '', +'extension_readme' => '', 'extension_toggle_error' => '', 'extension_version_list' => '版本', 'february' => '二 月', @@ -934,6 +936,7 @@ URL: [url]', 'move_clipboard' => '移動剪貼簿', 'move_document' => '移動文件', 'move_folder' => '移動資料夾', +'move_into_rootfolder' => '', 'my_account' => '我的帳戶', 'my_documents' => '我的文件', 'my_transmittals' => '我的傳送', @@ -1076,6 +1079,7 @@ URL: [url]', 網址:[url]', 'ownership_changed_email_body_html' => '', 'ownership_changed_email_subject' => '[sitename]: [name] - 擁有者已改變', +'parent_folder' => '', 'password' => '密碼', 'password_already_used' => '密碼已使用', 'password_expiration' => '密碼過期', @@ -1131,6 +1135,7 @@ URL: [url]', 'quota_exceeded' => '您的磁盤配額超出了[bytes]。', 'quota_is_disabled' => '當前在設置中禁用了配額支持。除非再次啟用,否則設置使用者配額將無效。', 'quota_warning' => '您的最大光盤使用量超出了[bytes]。請刪除文檔或以前的版本。', +'readme_loading' => '', 'receipts_accepted' => '[no_receipts]張收據已被接受', 'receipts_accepted_latest' => '(最新版本為[no_receipts])', 'receipts_not_touched' => '[no_receipts]收據未觸及', @@ -1854,6 +1859,7 @@ URL: [url]', 'set_password' => '設定密碼', 'set_workflow' => '設定工作流程', 'show_extension_changelog' => '顯示變更日誌', +'show_extension_readme' => '', 'show_extension_version_list' => '版本列表', 'signed_in_as' => '登錄為', 'sign_in' => '登入', diff --git a/op/op.AddDocument.php b/op/op.AddDocument.php index add3a5161..03e42468e 100644 --- a/op/op.AddDocument.php +++ b/op/op.AddDocument.php @@ -20,8 +20,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.AddDocumentLink.php b/op/op.AddDocumentLink.php index fc664f730..6aa92770f 100644 --- a/op/op.AddDocumentLink.php +++ b/op/op.AddDocumentLink.php @@ -20,8 +20,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.AddEvent.php b/op/op.AddEvent.php index 84a83da65..f319ba394 100644 --- a/op/op.AddEvent.php +++ b/op/op.AddEvent.php @@ -20,8 +20,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); include("../inc/inc.DBInit.php"); diff --git a/op/op.AddFile.php b/op/op.AddFile.php index cbb203c35..2c595c594 100644 --- a/op/op.AddFile.php +++ b/op/op.AddFile.php @@ -18,8 +18,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.AddFile2.php b/op/op.AddFile2.php index ae05026db..237fb9e7e 100644 --- a/op/op.AddFile2.php +++ b/op/op.AddFile2.php @@ -18,8 +18,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.AddMultiDocument.php b/op/op.AddMultiDocument.php index 9bcbd0dcf..b493d5b3f 100644 --- a/op/op.AddMultiDocument.php +++ b/op/op.AddMultiDocument.php @@ -20,8 +20,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.AddSubFolder.php b/op/op.AddSubFolder.php index 716c6bff5..948b807fc 100644 --- a/op/op.AddSubFolder.php +++ b/op/op.AddSubFolder.php @@ -20,8 +20,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.AddToClipboard.php b/op/op.AddToClipboard.php index 3c6625545..27d33d62d 100644 --- a/op/op.AddToClipboard.php +++ b/op/op.AddToClipboard.php @@ -20,6 +20,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.DBInit.php"); include("../inc/inc.Language.php"); diff --git a/op/op.AddTransitionToWorkflow.php b/op/op.AddTransitionToWorkflow.php index f9789a533..6d7203506 100644 --- a/op/op.AddTransitionToWorkflow.php +++ b/op/op.AddTransitionToWorkflow.php @@ -20,6 +20,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.Ajax.php b/op/op.Ajax.php index d84ded609..be2db89a3 100644 --- a/op/op.Ajax.php +++ b/op/op.Ajax.php @@ -17,8 +17,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. require_once("../inc/inc.Settings.php"); -require_once("../inc/inc.LogInit.php"); require_once("../inc/inc.Utils.php"); +require_once("../inc/inc.LogInit.php"); require_once("../inc/inc.Language.php"); require_once("../inc/inc.Init.php"); require_once("../inc/inc.Extension.php"); @@ -658,6 +658,37 @@ switch($command) { } break; /* }}} */ + case 'setmimetype': /* {{{ */ + if($user && $user->isAdmin()) { + if(checkFormKey('setmimetype', 'GET')) { + $content = $dms->getDocumentContent($_REQUEST['contentid']); + if($content) { + $document = $content->getDocument(); + if ($document->getAccessMode($user) >= M_READWRITE) { + $realmimetype = SeedDMS_Core_File::mimetype($dms->contentDir . $content->getPath()); + if (!$content->setMimeType($realmimetype)) { + header('Content-Type: application/json'); + echo json_encode(array('success'=>false, 'message'=>'Error setting mimetype', 'data'=>'')); + } else { + header('Content-Type: application/json'); + echo json_encode(array('success'=>true, 'message'=>getMLText('splash_mimetype_changed'), 'data'=>'')); + add_log_line(); + } + } else { + header('Content-Type: application/json'); + echo json_encode(array('success'=>false, 'message'=>getMLText('access_denied'), 'data'=>'')); + } + } else { + header('Content-Type: application/json'); + echo json_encode(array('success'=>false, 'message'=>getMLText('invalid_doc_id'), 'data'=>'')); + } + } else { + header('Content-Type: application/json'); + echo json_encode(array('success'=>false, 'message'=>getMLText('invalid_request_token'), 'data'=>'')); + } + } + break; /* }}} */ + case 'submittranslation': /* {{{ */ if($settings->_showMissingTranslations) { if($user && !empty($_POST['phrase'])) { @@ -819,10 +850,11 @@ switch($command) { $controller->setParam('filetype', $fileType); $controller->setParam('userfiletype', $userfiletype); $minmax = $folder->getDocumentsMinMax(); + $deviation = rand(10, 1000)/10; if($settings->_defaultDocPosition == 'start') - $controller->setParam('sequence', $minmax['min'] - 1); + $controller->setParam('sequence', $minmax['min'] - $deviation); else - $controller->setParam('sequence', $minmax['max'] + 1); + $controller->setParam('sequence', $minmax['max'] + $deviation); $controller->setParam('reviewers', $reviewers); $controller->setParam('approvers', $approvers); $controller->setParam('reqversion', 1); diff --git a/op/op.ApproveDocument.php b/op/op.ApproveDocument.php index a2834cbf5..beef24221 100644 --- a/op/op.ApproveDocument.php +++ b/op/op.ApproveDocument.php @@ -20,13 +20,12 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); include("../inc/inc.DBInit.php"); -include("../inc/inc.ClassAccessOperation.php"); include("../inc/inc.Authentication.php"); include("../inc/inc.ClassUI.php"); diff --git a/op/op.AttributeMgr.php b/op/op.AttributeMgr.php index e263c93de..24b94a0eb 100644 --- a/op/op.AttributeMgr.php +++ b/op/op.AttributeMgr.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.Categories.php b/op/op.Categories.php index 7fdabceab..8cbea9575 100644 --- a/op/op.Categories.php +++ b/op/op.Categories.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.ChangePassword.php b/op/op.ChangePassword.php index 5eee414d3..1c92b28ca 100644 --- a/op/op.ChangePassword.php +++ b/op/op.ChangePassword.php @@ -19,8 +19,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.ClearCache.php b/op/op.ClearCache.php index ad9a1d63f..72a168047 100644 --- a/op/op.ClearCache.php +++ b/op/op.ClearCache.php @@ -17,8 +17,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.ClearClipboard.php b/op/op.ClearClipboard.php index fb955afa6..df8313cfe 100644 --- a/op/op.ClearClipboard.php +++ b/op/op.ClearClipboard.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.CreateDump.php b/op/op.CreateDump.php index 7b25963ef..e471484a5 100644 --- a/op/op.CreateDump.php +++ b/op/op.CreateDump.php @@ -17,8 +17,8 @@ // along with this program; if not, write to the Free Software // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -include("../inc/inc.Version.php"); include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.CreateFolderArchive.php b/op/op.CreateFolderArchive.php index 07c1cb112..3c5cd384a 100644 --- a/op/op.CreateFolderArchive.php +++ b/op/op.CreateFolderArchive.php @@ -18,6 +18,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.CreateSubFolderIndex.php b/op/op.CreateSubFolderIndex.php index 6d02e4778..1a58535e5 100644 --- a/op/op.CreateSubFolderIndex.php +++ b/op/op.CreateSubFolderIndex.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.CreateVersioningFiles.php b/op/op.CreateVersioningFiles.php index f3b8c30fc..4ab4e4ca6 100644 --- a/op/op.CreateVersioningFiles.php +++ b/op/op.CreateVersioningFiles.php @@ -18,6 +18,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.DefaultKeywords.php b/op/op.DefaultKeywords.php index 069d8955a..5150d6b79 100644 --- a/op/op.DefaultKeywords.php +++ b/op/op.DefaultKeywords.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.DocumentAccess.php b/op/op.DocumentAccess.php index d4877c736..6fc483123 100644 --- a/op/op.DocumentAccess.php +++ b/op/op.DocumentAccess.php @@ -19,8 +19,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.DocumentNotify.php b/op/op.DocumentNotify.php index 1ce87d163..e0ba58116 100644 --- a/op/op.DocumentNotify.php +++ b/op/op.DocumentNotify.php @@ -19,8 +19,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.Download.php b/op/op.Download.php index 585251152..7403509b8 100644 --- a/op/op.Download.php +++ b/op/op.Download.php @@ -20,9 +20,9 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); -include("../inc/inc.Utils.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); include("../inc/inc.DBInit.php"); diff --git a/op/op.DropFolderPreview.php b/op/op.DropFolderPreview.php index 84f36213b..96f2209d1 100644 --- a/op/op.DropFolderPreview.php +++ b/op/op.DropFolderPreview.php @@ -20,8 +20,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.EditAttributes.php b/op/op.EditAttributes.php index 3dd4f21b7..8e4d3c01e 100644 --- a/op/op.EditAttributes.php +++ b/op/op.EditAttributes.php @@ -20,9 +20,9 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); -include("../inc/inc.Utils.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); include("../inc/inc.DBInit.php"); diff --git a/op/op.EditComment.php b/op/op.EditComment.php index af2860f66..e07a210c5 100644 --- a/op/op.EditComment.php +++ b/op/op.EditComment.php @@ -20,8 +20,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.EditDocument.php b/op/op.EditDocument.php index 0876c7971..a9e630dba 100644 --- a/op/op.EditDocument.php +++ b/op/op.EditDocument.php @@ -19,8 +19,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.EditDocumentFile.php b/op/op.EditDocumentFile.php index 71f3ae0be..edeb83cc1 100644 --- a/op/op.EditDocumentFile.php +++ b/op/op.EditDocumentFile.php @@ -20,8 +20,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.EditEvent.php b/op/op.EditEvent.php index 7f73a438e..d2e220bef 100644 --- a/op/op.EditEvent.php +++ b/op/op.EditEvent.php @@ -20,8 +20,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.EditFolder.php b/op/op.EditFolder.php index 2a58a0286..851931d6c 100644 --- a/op/op.EditFolder.php +++ b/op/op.EditFolder.php @@ -19,8 +19,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.EditOnline.php b/op/op.EditOnline.php index 152fd3c59..40377a775 100644 --- a/op/op.EditOnline.php +++ b/op/op.EditOnline.php @@ -19,9 +19,9 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); -include("../inc/inc.Utils.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); include("../inc/inc.DBInit.php"); diff --git a/op/op.EditUserData.php b/op/op.EditUserData.php index e72028156..66b1b5327 100644 --- a/op/op.EditUserData.php +++ b/op/op.EditUserData.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.ExtensionMgr.php b/op/op.ExtensionMgr.php index 8e53c9d33..c7b2bf5e7 100644 --- a/op/op.ExtensionMgr.php +++ b/op/op.ExtensionMgr.php @@ -17,6 +17,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.FolderAccess.php b/op/op.FolderAccess.php index 004abd871..63de4210f 100644 --- a/op/op.FolderAccess.php +++ b/op/op.FolderAccess.php @@ -19,8 +19,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.FolderNotify.php b/op/op.FolderNotify.php index ffca554c2..4ad783e93 100644 --- a/op/op.FolderNotify.php +++ b/op/op.FolderNotify.php @@ -19,8 +19,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.GroupMgr.php b/op/op.GroupMgr.php index c427c6b70..d51dd6842 100644 --- a/op/op.GroupMgr.php +++ b/op/op.GroupMgr.php @@ -20,6 +20,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.GroupView.php b/op/op.GroupView.php index 8219e30b9..152ee05e3 100644 --- a/op/op.GroupView.php +++ b/op/op.GroupView.php @@ -20,6 +20,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.ImportFS.php b/op/op.ImportFS.php index 19cf01aea..260b2c487 100644 --- a/op/op.ImportFS.php +++ b/op/op.ImportFS.php @@ -17,8 +17,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.ImportUsers.php b/op/op.ImportUsers.php index 29315235a..bd86036dd 100644 --- a/op/op.ImportUsers.php +++ b/op/op.ImportUsers.php @@ -17,8 +17,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.LockDocument.php b/op/op.LockDocument.php index 393119dc2..3889f7a39 100644 --- a/op/op.LockDocument.php +++ b/op/op.LockDocument.php @@ -20,8 +20,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/op/op.Login.php b/op/op.Login.php index 8209e06ad..04519ce8a 100644 --- a/op/op.Login.php +++ b/op/op.Login.php @@ -19,8 +19,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.Logout.php b/op/op.Logout.php index 96b99e430..06af4bcc9 100644 --- a/op/op.Logout.php +++ b/op/op.Logout.php @@ -19,8 +19,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); include("../inc/inc.ClassSession.php"); diff --git a/op/op.ManageNotify.php b/op/op.ManageNotify.php index e6c493977..f6b5e4088 100644 --- a/op/op.ManageNotify.php +++ b/op/op.ManageNotify.php @@ -18,6 +18,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.MoveClipboard.php b/op/op.MoveClipboard.php index bff27c200..d08841d19 100644 --- a/op/op.MoveClipboard.php +++ b/op/op.MoveClipboard.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.MoveDocument.php b/op/op.MoveDocument.php index e1ebc227a..a1c876596 100644 --- a/op/op.MoveDocument.php +++ b/op/op.MoveDocument.php @@ -19,8 +19,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.MoveFolder.php b/op/op.MoveFolder.php index d0fc96886..73a693df0 100644 --- a/op/op.MoveFolder.php +++ b/op/op.MoveFolder.php @@ -19,8 +19,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.OverrideContentStatus.php b/op/op.OverrideContentStatus.php index e313844ed..4d14bb67d 100644 --- a/op/op.OverrideContentStatus.php +++ b/op/op.OverrideContentStatus.php @@ -19,8 +19,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.PasswordForgotten.php b/op/op.PasswordForgotten.php index bfe719972..03ae90ac0 100644 --- a/op/op.PasswordForgotten.php +++ b/op/op.PasswordForgotten.php @@ -19,8 +19,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.PdfPreview.php b/op/op.PdfPreview.php index a516c6088..4b963426f 100644 --- a/op/op.PdfPreview.php +++ b/op/op.PdfPreview.php @@ -20,8 +20,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.Preview.php b/op/op.Preview.php index d62d4a31c..3ded08099 100644 --- a/op/op.Preview.php +++ b/op/op.Preview.php @@ -20,8 +20,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.RemoveApprovalLog.php b/op/op.RemoveApprovalLog.php index 8c971a951..b5424342c 100644 --- a/op/op.RemoveApprovalLog.php +++ b/op/op.RemoveApprovalLog.php @@ -20,13 +20,12 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); include("../inc/inc.DBInit.php"); -include("../inc/inc.ClassAccessOperation.php"); include("../inc/inc.Authentication.php"); include("../inc/inc.ClassUI.php"); diff --git a/op/op.RemoveArchive.php b/op/op.RemoveArchive.php index ff71bb74b..7338fcaa8 100644 --- a/op/op.RemoveArchive.php +++ b/op/op.RemoveArchive.php @@ -18,6 +18,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.RemoveDocument.php b/op/op.RemoveDocument.php index 36fb9bee1..e889dbf14 100644 --- a/op/op.RemoveDocument.php +++ b/op/op.RemoveDocument.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.RemoveDocumentFile.php b/op/op.RemoveDocumentFile.php index f01114f94..5d16b9b39 100644 --- a/op/op.RemoveDocumentFile.php +++ b/op/op.RemoveDocumentFile.php @@ -18,6 +18,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.RemoveDocumentLink.php b/op/op.RemoveDocumentLink.php index 87d088d54..3863be9a8 100644 --- a/op/op.RemoveDocumentLink.php +++ b/op/op.RemoveDocumentLink.php @@ -18,6 +18,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.RemoveDump.php b/op/op.RemoveDump.php index 925891995..a7b8d39d5 100644 --- a/op/op.RemoveDump.php +++ b/op/op.RemoveDump.php @@ -18,6 +18,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.RemoveEvent.php b/op/op.RemoveEvent.php index 998671038..93d1f3b30 100644 --- a/op/op.RemoveEvent.php +++ b/op/op.RemoveEvent.php @@ -20,8 +20,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.RemoveFolder.php b/op/op.RemoveFolder.php index caae1ad54..312945ea1 100644 --- a/op/op.RemoveFolder.php +++ b/op/op.RemoveFolder.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.RemoveFolderFiles.php b/op/op.RemoveFolderFiles.php index dd060c70f..f71c333b3 100644 --- a/op/op.RemoveFolderFiles.php +++ b/op/op.RemoveFolderFiles.php @@ -18,6 +18,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.RemoveFromClipboard.php b/op/op.RemoveFromClipboard.php index 2bf32f712..d088fb6ac 100644 --- a/op/op.RemoveFromClipboard.php +++ b/op/op.RemoveFromClipboard.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.RemoveLog.php b/op/op.RemoveLog.php index ab33ad0bb..fd7c018a8 100644 --- a/op/op.RemoveLog.php +++ b/op/op.RemoveLog.php @@ -18,6 +18,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.RemoveReviewLog.php b/op/op.RemoveReviewLog.php index 1e14c7b22..57621ebf5 100644 --- a/op/op.RemoveReviewLog.php +++ b/op/op.RemoveReviewLog.php @@ -20,13 +20,12 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); include("../inc/inc.DBInit.php"); -include("../inc/inc.ClassAccessOperation.php"); include("../inc/inc.Authentication.php"); include("../inc/inc.ClassUI.php"); diff --git a/op/op.RemoveTransitionFromWorkflow.php b/op/op.RemoveTransitionFromWorkflow.php index 093ce03b6..2fb4f6188 100644 --- a/op/op.RemoveTransitionFromWorkflow.php +++ b/op/op.RemoveTransitionFromWorkflow.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.RemoveVersion.php b/op/op.RemoveVersion.php index d372521b5..0d9045a24 100644 --- a/op/op.RemoveVersion.php +++ b/op/op.RemoveVersion.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.RemoveWorkflow.php b/op/op.RemoveWorkflow.php index fe361eb7c..6da10a93a 100644 --- a/op/op.RemoveWorkflow.php +++ b/op/op.RemoveWorkflow.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.RemoveWorkflowAction.php b/op/op.RemoveWorkflowAction.php index 6d7e7c462..42844c586 100644 --- a/op/op.RemoveWorkflowAction.php +++ b/op/op.RemoveWorkflowAction.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.RemoveWorkflowFromDocument.php b/op/op.RemoveWorkflowFromDocument.php index ce83d2dd2..1dd21fb7e 100644 --- a/op/op.RemoveWorkflowFromDocument.php +++ b/op/op.RemoveWorkflowFromDocument.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.RemoveWorkflowState.php b/op/op.RemoveWorkflowState.php index 22ace8ff0..11a3a10fa 100644 --- a/op/op.RemoveWorkflowState.php +++ b/op/op.RemoveWorkflowState.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.ResetSu.php b/op/op.ResetSu.php index 12af8d57c..833ac2aef 100644 --- a/op/op.ResetSu.php +++ b/op/op.ResetSu.php @@ -17,6 +17,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.ReturnFromSubWorkflow.php b/op/op.ReturnFromSubWorkflow.php index 23ff85ed0..e76da43bf 100644 --- a/op/op.ReturnFromSubWorkflow.php +++ b/op/op.ReturnFromSubWorkflow.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.ReviewDocument.php b/op/op.ReviewDocument.php index bbfa98de7..9e54f71f2 100644 --- a/op/op.ReviewDocument.php +++ b/op/op.ReviewDocument.php @@ -20,13 +20,12 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); include("../inc/inc.DBInit.php"); -include("../inc/inc.ClassAccessOperation.php"); include("../inc/inc.Authentication.php"); include("../inc/inc.ClassUI.php"); diff --git a/op/op.RewindWorkflow.php b/op/op.RewindWorkflow.php index b01b6a278..1a6b7fe71 100644 --- a/op/op.RewindWorkflow.php +++ b/op/op.RewindWorkflow.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.RunSubWorkflow.php b/op/op.RunSubWorkflow.php index 3e08f5725..092e03710 100644 --- a/op/op.RunSubWorkflow.php +++ b/op/op.RunSubWorkflow.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.SetExpires.php b/op/op.SetExpires.php index 5efd3eee6..f18a7d303 100644 --- a/op/op.SetExpires.php +++ b/op/op.SetExpires.php @@ -20,6 +20,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.SetLanguage.php b/op/op.SetLanguage.php index 06c07651b..9cb0b2d02 100644 --- a/op/op.SetLanguage.php +++ b/op/op.SetLanguage.php @@ -20,6 +20,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.SetReviewersApprovers.php b/op/op.SetReviewersApprovers.php index 16d767e95..b2b4ef0d4 100644 --- a/op/op.SetReviewersApprovers.php +++ b/op/op.SetReviewersApprovers.php @@ -20,8 +20,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.SetWorkflow.php b/op/op.SetWorkflow.php index 13a961c00..8e9a9fda8 100644 --- a/op/op.SetWorkflow.php +++ b/op/op.SetWorkflow.php @@ -20,6 +20,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.Settings.php b/op/op.Settings.php index 7c482f5a9..33cbecbaa 100644 --- a/op/op.Settings.php +++ b/op/op.Settings.php @@ -20,8 +20,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.SubstituteUser.php b/op/op.SubstituteUser.php index cb7b83bb7..9159642b4 100644 --- a/op/op.SubstituteUser.php +++ b/op/op.SubstituteUser.php @@ -17,6 +17,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.TransferDocument.php b/op/op.TransferDocument.php index d146c50d3..a5bd98337 100644 --- a/op/op.TransferDocument.php +++ b/op/op.TransferDocument.php @@ -19,12 +19,12 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); include("../inc/inc.DBInit.php"); -include("../inc/inc.ClassAccessOperation.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.ClassController.php"); include("../inc/inc.Authentication.php"); diff --git a/op/op.TriggerWorkflow.php b/op/op.TriggerWorkflow.php index a42511316..298e9849b 100644 --- a/op/op.TriggerWorkflow.php +++ b/op/op.TriggerWorkflow.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.UnlockDocument.php b/op/op.UnlockDocument.php index be90d36d9..f23a62f1e 100644 --- a/op/op.UnlockDocument.php +++ b/op/op.UnlockDocument.php @@ -20,8 +20,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/op/op.UpdateDocument.php b/op/op.UpdateDocument.php index 117f20c99..c507b0abd 100644 --- a/op/op.UpdateDocument.php +++ b/op/op.UpdateDocument.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.UpdateDocument2.php b/op/op.UpdateDocument2.php index 609125075..64c7fbe5c 100644 --- a/op/op.UpdateDocument2.php +++ b/op/op.UpdateDocument2.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.UploadChunks.php b/op/op.UploadChunks.php index a05f18562..e5855423e 100644 --- a/op/op.UploadChunks.php +++ b/op/op.UploadChunks.php @@ -20,7 +20,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); +include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.UserDefaultKeywords.php b/op/op.UserDefaultKeywords.php index 93d03b845..6dddb58f1 100644 --- a/op/op.UserDefaultKeywords.php +++ b/op/op.UserDefaultKeywords.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.UserListCsv.php b/op/op.UserListCsv.php index 805787a62..1cc485721 100644 --- a/op/op.UserListCsv.php +++ b/op/op.UserListCsv.php @@ -20,8 +20,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.UsrMgr.php b/op/op.UsrMgr.php index 013c92ccd..2f5d20c3e 100644 --- a/op/op.UsrMgr.php +++ b/op/op.UsrMgr.php @@ -20,13 +20,12 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); include("../inc/inc.DBInit.php"); -include("../inc/inc.ClassAccessOperation.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); include("../inc/inc.ClassPasswordStrength.php"); diff --git a/op/op.ViewOnline.php b/op/op.ViewOnline.php index 32d011bbc..73ec7446b 100644 --- a/op/op.ViewOnline.php +++ b/op/op.ViewOnline.php @@ -19,6 +19,7 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); +include("../inc/inc.Utils.php"); include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); diff --git a/op/op.WorkflowActionsMgr.php b/op/op.WorkflowActionsMgr.php index fb91f0029..6ff1efe4e 100644 --- a/op/op.WorkflowActionsMgr.php +++ b/op/op.WorkflowActionsMgr.php @@ -20,8 +20,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.WorkflowMgr.php b/op/op.WorkflowMgr.php index c238f4455..c53ed7aa4 100644 --- a/op/op.WorkflowMgr.php +++ b/op/op.WorkflowMgr.php @@ -20,8 +20,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/op/op.WorkflowStatesMgr.php b/op/op.WorkflowStatesMgr.php index f80423001..b27342869 100644 --- a/op/op.WorkflowStatesMgr.php +++ b/op/op.WorkflowStatesMgr.php @@ -20,8 +20,8 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.LogInit.php"); include("../inc/inc.Utils.php"); +include("../inc/inc.LogInit.php"); include("../inc/inc.Language.php"); include("../inc/inc.Init.php"); include("../inc/inc.Extension.php"); diff --git a/out/out.AddDocument.php b/out/out.AddDocument.php index 4062b943d..6bfc1c3c5 100644 --- a/out/out.AddDocument.php +++ b/out/out.AddDocument.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.AddEvent.php b/out/out.AddEvent.php index 2562b43ba..d8a98ba5b 100644 --- a/out/out.AddEvent.php +++ b/out/out.AddEvent.php @@ -19,6 +19,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.AddFile.php b/out/out.AddFile.php index 09b8673f8..9b24a6a23 100644 --- a/out/out.AddFile.php +++ b/out/out.AddFile.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.AddSubFolder.php b/out/out.AddSubFolder.php index cca88ea16..5b859337d 100644 --- a/out/out.AddSubFolder.php +++ b/out/out.AddSubFolder.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.AdminTools.php b/out/out.AdminTools.php index 35557c271..33154667c 100644 --- a/out/out.AdminTools.php +++ b/out/out.AdminTools.php @@ -19,6 +19,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.ApprovalSummary.php b/out/out.ApprovalSummary.php index 8fff6f38e..89f12c6a7 100644 --- a/out/out.ApprovalSummary.php +++ b/out/out.ApprovalSummary.php @@ -21,6 +21,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.ApproveDocument.php b/out/out.ApproveDocument.php index 0b44248e1..32695db63 100644 --- a/out/out.ApproveDocument.php +++ b/out/out.ApproveDocument.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.AttributeMgr.php b/out/out.AttributeMgr.php index f882ec36f..f769f6900 100644 --- a/out/out.AttributeMgr.php +++ b/out/out.AttributeMgr.php @@ -21,6 +21,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.BackupTools.php b/out/out.BackupTools.php index 105f5fa9f..ced1fc6fd 100644 --- a/out/out.BackupTools.php +++ b/out/out.BackupTools.php @@ -19,8 +19,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.Calendar.php b/out/out.Calendar.php index 22a40b405..b6c8f9ea4 100644 --- a/out/out.Calendar.php +++ b/out/out.Calendar.php @@ -19,6 +19,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.ClassCalendar.php"); require_once("inc/inc.Language.php"); diff --git a/out/out.Categories.php b/out/out.Categories.php index 8630776d6..ea5462135 100644 --- a/out/out.Categories.php +++ b/out/out.Categories.php @@ -21,6 +21,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.CategoryChooser.php b/out/out.CategoryChooser.php index b1fed4a5b..b690ffa78 100644 --- a/out/out.CategoryChooser.php +++ b/out/out.CategoryChooser.php @@ -20,6 +20,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.ClassUI.php"); require_once("inc/inc.Language.php"); diff --git a/out/out.ChangePassword.php b/out/out.ChangePassword.php index 35baaff55..a01e4b73d 100644 --- a/out/out.ChangePassword.php +++ b/out/out.ChangePassword.php @@ -20,8 +20,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.Charts.php b/out/out.Charts.php index 5dcd83c8b..7f7ae116f 100644 --- a/out/out.Charts.php +++ b/out/out.Charts.php @@ -19,8 +19,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.Clipboard.php b/out/out.Clipboard.php index 91dbb4238..4460a3012 100644 --- a/out/out.Clipboard.php +++ b/out/out.Clipboard.php @@ -22,6 +22,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.CreateIndex.php b/out/out.CreateIndex.php index a17958db5..b83928bd0 100644 --- a/out/out.CreateIndex.php +++ b/out/out.CreateIndex.php @@ -22,7 +22,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.Version.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.DefaultKeywords.php b/out/out.DefaultKeywords.php index a1a3d4a21..02713bc37 100644 --- a/out/out.DefaultKeywords.php +++ b/out/out.DefaultKeywords.php @@ -21,6 +21,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.DocumentAccess.php b/out/out.DocumentAccess.php index 008edfc32..e00d53c4f 100644 --- a/out/out.DocumentAccess.php +++ b/out/out.DocumentAccess.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.DocumentChooser.php b/out/out.DocumentChooser.php index 77fe21698..6465f02d3 100644 --- a/out/out.DocumentChooser.php +++ b/out/out.DocumentChooser.php @@ -21,6 +21,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.DocumentNotify.php b/out/out.DocumentNotify.php index 4cf0987e2..2a2780c84 100644 --- a/out/out.DocumentNotify.php +++ b/out/out.DocumentNotify.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.DocumentVersionDetail.php b/out/out.DocumentVersionDetail.php index 58923d132..24d73972e 100644 --- a/out/out.DocumentVersionDetail.php +++ b/out/out.DocumentVersionDetail.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.DropFolderChooser.php b/out/out.DropFolderChooser.php index 55efd5165..112892928 100644 --- a/out/out.DropFolderChooser.php +++ b/out/out.DropFolderChooser.php @@ -20,6 +20,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.EditAttributes.php b/out/out.EditAttributes.php index 80c80bf0d..8a933efde 100644 --- a/out/out.EditAttributes.php +++ b/out/out.EditAttributes.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.EditComment.php b/out/out.EditComment.php index 953c9042f..e5b336891 100644 --- a/out/out.EditComment.php +++ b/out/out.EditComment.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.EditDocument.php b/out/out.EditDocument.php index bc242bc5a..205dff0be 100644 --- a/out/out.EditDocument.php +++ b/out/out.EditDocument.php @@ -20,14 +20,13 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); require_once("inc/inc.DBInit.php"); require_once("inc/inc.ClassUI.php"); -require_once("inc/inc.ClassAccessOperation.php"); require_once("inc/inc.Authentication.php"); if (!isset($_GET["documentid"]) || !is_numeric($_GET["documentid"]) || intval($_GET["documentid"])<1) { diff --git a/out/out.EditDocumentFile.php b/out/out.EditDocumentFile.php index dd0927070..1a8052493 100644 --- a/out/out.EditDocumentFile.php +++ b/out/out.EditDocumentFile.php @@ -19,8 +19,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.EditEvent.php b/out/out.EditEvent.php index cebb0a59a..9ed579b31 100644 --- a/out/out.EditEvent.php +++ b/out/out.EditEvent.php @@ -19,6 +19,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.EditFolder.php b/out/out.EditFolder.php index 85e4be781..2ebba2de3 100644 --- a/out/out.EditFolder.php +++ b/out/out.EditFolder.php @@ -20,8 +20,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.EditOnline.php b/out/out.EditOnline.php index 8f381066b..2ba54550d 100644 --- a/out/out.EditOnline.php +++ b/out/out.EditOnline.php @@ -20,13 +20,13 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); require_once("inc/inc.DBInit.php"); require_once("inc/inc.ClassUI.php"); -require_once("inc/inc.ClassAccessOperation.php"); require_once("inc/inc.Authentication.php"); $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); diff --git a/out/out.EditUserData.php b/out/out.EditUserData.php index 4694261db..7283b967c 100644 --- a/out/out.EditUserData.php +++ b/out/out.EditUserData.php @@ -21,6 +21,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.ErrorDlg.php b/out/out.ErrorDlg.php index 015d0377e..4f2744e20 100644 --- a/out/out.ErrorDlg.php +++ b/out/out.ErrorDlg.php @@ -24,8 +24,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.ExpiredDocuments.php b/out/out.ExpiredDocuments.php index 9c35deadd..c35d8de0b 100644 --- a/out/out.ExpiredDocuments.php +++ b/out/out.ExpiredDocuments.php @@ -21,6 +21,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.ExtensionMgr.php b/out/out.ExtensionMgr.php index f3e45fd2f..19fef05f0 100644 --- a/out/out.ExtensionMgr.php +++ b/out/out.ExtensionMgr.php @@ -18,7 +18,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.Version.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.FolderAccess.php b/out/out.FolderAccess.php index 70172e001..38d567a7f 100644 --- a/out/out.FolderAccess.php +++ b/out/out.FolderAccess.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.FolderChooser.php b/out/out.FolderChooser.php index d45c13c73..1cf5b27e2 100644 --- a/out/out.FolderChooser.php +++ b/out/out.FolderChooser.php @@ -20,6 +20,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.FolderNotify.php b/out/out.FolderNotify.php index 3411eca66..12da6d54b 100644 --- a/out/out.FolderNotify.php +++ b/out/out.FolderNotify.php @@ -20,8 +20,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.ForcePasswordChange.php b/out/out.ForcePasswordChange.php index 36189235c..4b9d7a530 100644 --- a/out/out.ForcePasswordChange.php +++ b/out/out.ForcePasswordChange.php @@ -32,6 +32,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.GroupMgr.php b/out/out.GroupMgr.php index 7ebf936a4..48c0f67d9 100644 --- a/out/out.GroupMgr.php +++ b/out/out.GroupMgr.php @@ -21,6 +21,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.GroupView.php b/out/out.GroupView.php index 7442f8783..2a2eab124 100644 --- a/out/out.GroupView.php +++ b/out/out.GroupView.php @@ -19,6 +19,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.Help.php b/out/out.Help.php index 7de5bd165..a43662e33 100644 --- a/out/out.Help.php +++ b/out/out.Help.php @@ -19,6 +19,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.Hooks.php b/out/out.Hooks.php index 6acc28c43..987e032c4 100644 --- a/out/out.Hooks.php +++ b/out/out.Hooks.php @@ -18,6 +18,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.ImportFS.php b/out/out.ImportFS.php index 782c55539..3290ee82e 100644 --- a/out/out.ImportFS.php +++ b/out/out.ImportFS.php @@ -19,8 +19,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.ImportUsers.php b/out/out.ImportUsers.php index 199763a26..71b894215 100644 --- a/out/out.ImportUsers.php +++ b/out/out.ImportUsers.php @@ -19,8 +19,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.IndexInfo.php b/out/out.IndexInfo.php index 2a08d87f5..b8f309ee1 100644 --- a/out/out.IndexInfo.php +++ b/out/out.IndexInfo.php @@ -21,7 +21,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.Version.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.Indexer.php b/out/out.Indexer.php index 9b6fc49ca..c0b12ad37 100644 --- a/out/out.Indexer.php +++ b/out/out.Indexer.php @@ -21,7 +21,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.Version.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.Info.php b/out/out.Info.php index fb8fb3468..04338665d 100644 --- a/out/out.Info.php +++ b/out/out.Info.php @@ -21,7 +21,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.Version.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.KeywordChooser.php b/out/out.KeywordChooser.php index b1402036b..a0d2eb420 100644 --- a/out/out.KeywordChooser.php +++ b/out/out.KeywordChooser.php @@ -21,6 +21,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.LogManagement.php b/out/out.LogManagement.php index 8f4a95a42..6b7f66d48 100644 --- a/out/out.LogManagement.php +++ b/out/out.LogManagement.php @@ -19,8 +19,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); @@ -39,7 +39,7 @@ if (isset($_GET["logname"])) $logname=basename($_GET["logname"], '.log').'.log'; else $logname=NULL; if (isset($_GET["mode"])) $mode=$_GET["mode"]; -else $mode='web'; +else $mode='default'; if($view) { $view->setParam('logname', $logname); diff --git a/out/out.Login.php b/out/out.Login.php index 0683b57d6..d3307be62 100644 --- a/out/out.Login.php +++ b/out/out.Login.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.ManageNotify.php b/out/out.ManageNotify.php index dcf8c3840..19b1f1ce2 100644 --- a/out/out.ManageNotify.php +++ b/out/out.ManageNotify.php @@ -19,6 +19,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.MoveDocument.php b/out/out.MoveDocument.php index 4efea96ee..dc727ba6c 100644 --- a/out/out.MoveDocument.php +++ b/out/out.MoveDocument.php @@ -20,8 +20,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.MoveFolder.php b/out/out.MoveFolder.php index d96dca56f..e1ebde22e 100644 --- a/out/out.MoveFolder.php +++ b/out/out.MoveFolder.php @@ -20,8 +20,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.MyAccount.php b/out/out.MyAccount.php index e68a70bb4..1a7014abe 100644 --- a/out/out.MyAccount.php +++ b/out/out.MyAccount.php @@ -21,6 +21,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.MyDocuments.php b/out/out.MyDocuments.php index e64a5b9ed..7cfa317fb 100644 --- a/out/out.MyDocuments.php +++ b/out/out.MyDocuments.php @@ -21,6 +21,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.NotificationServices.php b/out/out.NotificationServices.php index 9367fcf44..f985d37ed 100644 --- a/out/out.NotificationServices.php +++ b/out/out.NotificationServices.php @@ -18,6 +18,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.ObjectCheck.php b/out/out.ObjectCheck.php index c393a04c1..e5ac6bedf 100644 --- a/out/out.ObjectCheck.php +++ b/out/out.ObjectCheck.php @@ -21,7 +21,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.Version.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.OpensearchDesc.php b/out/out.OpensearchDesc.php index 5d34d75b9..d1240efab 100644 --- a/out/out.OpensearchDesc.php +++ b/out/out.OpensearchDesc.php @@ -20,8 +20,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.OverrideContentStatus.php b/out/out.OverrideContentStatus.php index 1248a8e04..51564fad4 100644 --- a/out/out.OverrideContentStatus.php +++ b/out/out.OverrideContentStatus.php @@ -20,8 +20,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.PasswordForgotten.php b/out/out.PasswordForgotten.php index 2573d8d59..3d595b9d2 100644 --- a/out/out.PasswordForgotten.php +++ b/out/out.PasswordForgotten.php @@ -20,6 +20,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.PasswordSend.php b/out/out.PasswordSend.php index 591bc0a5e..5d8d5904c 100644 --- a/out/out.PasswordSend.php +++ b/out/out.PasswordSend.php @@ -20,6 +20,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.RemoveApprovalLog.php b/out/out.RemoveApprovalLog.php index d310c66de..453c22e3e 100644 --- a/out/out.RemoveApprovalLog.php +++ b/out/out.RemoveApprovalLog.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.RemoveArchive.php b/out/out.RemoveArchive.php index 910bdf14c..5b19e2966 100644 --- a/out/out.RemoveArchive.php +++ b/out/out.RemoveArchive.php @@ -19,6 +19,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); @@ -29,6 +30,7 @@ require_once("inc/inc.Authentication.php"); $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); $view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, null, $user, $settings); if (!$user->isAdmin()) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -41,6 +43,7 @@ $arkname = $_GET["arkname"]; if($view) { $view->setParam('archive', $arkname); + $view->setParam('accessobject', $accessop); $view($_GET); exit; } diff --git a/out/out.RemoveDocument.php b/out/out.RemoveDocument.php index 170d272aa..0a19c9e0c 100644 --- a/out/out.RemoveDocument.php +++ b/out/out.RemoveDocument.php @@ -20,14 +20,13 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); require_once("inc/inc.DBInit.php"); require_once("inc/inc.ClassUI.php"); -require_once("inc/inc.ClassAccessOperation.php"); require_once("inc/inc.Authentication.php"); if (!isset($_GET["documentid"]) || !is_numeric($_GET["documentid"]) || intval($_GET["documentid"])<1) { diff --git a/out/out.RemoveDocumentFile.php b/out/out.RemoveDocumentFile.php index dd0927070..3a687d410 100644 --- a/out/out.RemoveDocumentFile.php +++ b/out/out.RemoveDocumentFile.php @@ -19,14 +19,13 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); require_once("inc/inc.DBInit.php"); require_once("inc/inc.ClassUI.php"); -require_once("inc/inc.ClassAccessOperation.php"); require_once("inc/inc.Authentication.php"); if (!isset($_GET["documentid"]) || !is_numeric($_GET["documentid"]) || intval($_GET["documentid"])<1) { diff --git a/out/out.RemoveDump.php b/out/out.RemoveDump.php index b4ef8cf65..985897b78 100644 --- a/out/out.RemoveDump.php +++ b/out/out.RemoveDump.php @@ -19,6 +19,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.RemoveEvent.php b/out/out.RemoveEvent.php index 4e6b02bd8..5b47c79f9 100644 --- a/out/out.RemoveEvent.php +++ b/out/out.RemoveEvent.php @@ -19,6 +19,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.RemoveFolder.php b/out/out.RemoveFolder.php index ad172c7d0..de7bb985e 100644 --- a/out/out.RemoveFolder.php +++ b/out/out.RemoveFolder.php @@ -20,8 +20,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.RemoveFolderFiles.php b/out/out.RemoveFolderFiles.php index 01bc467a2..1f8b2f7bf 100644 --- a/out/out.RemoveFolderFiles.php +++ b/out/out.RemoveFolderFiles.php @@ -19,6 +19,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.RemoveGroup.php b/out/out.RemoveGroup.php index 5956fc765..7c3284324 100644 --- a/out/out.RemoveGroup.php +++ b/out/out.RemoveGroup.php @@ -20,6 +20,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.RemoveLog.php b/out/out.RemoveLog.php index 4fa445af8..0e4b1f16b 100644 --- a/out/out.RemoveLog.php +++ b/out/out.RemoveLog.php @@ -19,6 +19,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.RemoveReviewLog.php b/out/out.RemoveReviewLog.php index 8e46ac83c..41b81e9c5 100644 --- a/out/out.RemoveReviewLog.php +++ b/out/out.RemoveReviewLog.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.RemoveUser.php b/out/out.RemoveUser.php index 4c6cd6d45..959091162 100644 --- a/out/out.RemoveUser.php +++ b/out/out.RemoveUser.php @@ -20,6 +20,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.RemoveUserFromProcesses.php b/out/out.RemoveUserFromProcesses.php index 4521647fc..610d5810a 100644 --- a/out/out.RemoveUserFromProcesses.php +++ b/out/out.RemoveUserFromProcesses.php @@ -20,6 +20,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.RemoveVersion.php b/out/out.RemoveVersion.php index e8b58ba24..3b1f5664b 100644 --- a/out/out.RemoveVersion.php +++ b/out/out.RemoveVersion.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.RemoveWorkflow.php b/out/out.RemoveWorkflow.php index 90606a13c..98fb26936 100644 --- a/out/out.RemoveWorkflow.php +++ b/out/out.RemoveWorkflow.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.RemoveWorkflowFromDocument.php b/out/out.RemoveWorkflowFromDocument.php index 883924713..0a91e68a4 100644 --- a/out/out.RemoveWorkflowFromDocument.php +++ b/out/out.RemoveWorkflowFromDocument.php @@ -21,14 +21,13 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); require_once("inc/inc.DBInit.php"); require_once("inc/inc.ClassUI.php"); -require_once("inc/inc.ClassAccessOperation.php"); require_once("inc/inc.Authentication.php"); $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); diff --git a/out/out.ReturnFromSubWorkflow.php b/out/out.ReturnFromSubWorkflow.php index 7313e08cd..cd1c2ef73 100644 --- a/out/out.ReturnFromSubWorkflow.php +++ b/out/out.ReturnFromSubWorkflow.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.ReviewDocument.php b/out/out.ReviewDocument.php index e1ef11747..c61eb533e 100644 --- a/out/out.ReviewDocument.php +++ b/out/out.ReviewDocument.php @@ -21,14 +21,13 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); require_once("inc/inc.DBInit.php"); require_once("inc/inc.ClassUI.php"); -require_once("inc/inc.ClassAccessOperation.php"); require_once("inc/inc.Authentication.php"); if (!isset($_GET["documentid"]) || !is_numeric($_GET["documentid"]) || intval($_GET["documentid"])<1) { diff --git a/out/out.ReviewSummary.php b/out/out.ReviewSummary.php index 7b651594c..3632abc60 100644 --- a/out/out.ReviewSummary.php +++ b/out/out.ReviewSummary.php @@ -21,6 +21,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.RewindWorkflow.php b/out/out.RewindWorkflow.php index 7d3ba11bb..137852fb2 100644 --- a/out/out.RewindWorkflow.php +++ b/out/out.RewindWorkflow.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.RunSubWorkflow.php b/out/out.RunSubWorkflow.php index b54bcef87..58868fef2 100644 --- a/out/out.RunSubWorkflow.php +++ b/out/out.RunSubWorkflow.php @@ -21,14 +21,13 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); require_once("inc/inc.DBInit.php"); require_once("inc/inc.ClassUI.php"); -require_once("inc/inc.ClassAccessOperation.php"); require_once("inc/inc.Authentication.php"); $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); diff --git a/out/out.Search.php b/out/out.Search.php index ad0ff113c..7d0a75da4 100644 --- a/out/out.Search.php +++ b/out/out.Search.php @@ -20,14 +20,13 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); require_once("inc/inc.DBInit.php"); require_once("inc/inc.ClassUI.php"); -require_once("inc/inc.ClassAccessOperation.php"); require_once("inc/inc.Authentication.php"); function getTime() { diff --git a/out/out.SendLoginData.php b/out/out.SendLoginData.php index 97db9e237..82585ed49 100644 --- a/out/out.SendLoginData.php +++ b/out/out.SendLoginData.php @@ -20,6 +20,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.Session.php b/out/out.Session.php index 0e1d9c126..1d6a830b1 100644 --- a/out/out.Session.php +++ b/out/out.Session.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.SetExpires.php b/out/out.SetExpires.php index 10ba93fab..614738ebc 100644 --- a/out/out.SetExpires.php +++ b/out/out.SetExpires.php @@ -21,14 +21,13 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); require_once("inc/inc.DBInit.php"); require_once("inc/inc.ClassUI.php"); -require_once("inc/inc.ClassAccessOperation.php"); require_once("inc/inc.Authentication.php"); if (!isset($_GET["documentid"]) || !is_numeric($_GET["documentid"]) || intval($_GET["documentid"])<1) { diff --git a/out/out.SetReviewersApprovers.php b/out/out.SetReviewersApprovers.php index 5e27ec33d..f10350a59 100644 --- a/out/out.SetReviewersApprovers.php +++ b/out/out.SetReviewersApprovers.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.SetWorkflow.php b/out/out.SetWorkflow.php index 72a31862b..5518081c5 100644 --- a/out/out.SetWorkflow.php +++ b/out/out.SetWorkflow.php @@ -21,14 +21,13 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); require_once("inc/inc.DBInit.php"); require_once("inc/inc.ClassUI.php"); -require_once("inc/inc.ClassAccessOperation.php"); require_once("inc/inc.Authentication.php"); if (!isset($_GET["documentid"]) || !is_numeric($_GET["documentid"]) || intval($_GET["documentid"])<1) { diff --git a/out/out.Settings.php b/out/out.Settings.php index 49a381598..6f5422620 100644 --- a/out/out.Settings.php +++ b/out/out.Settings.php @@ -19,6 +19,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.Setup2Factor.php b/out/out.Setup2Factor.php index ac41c473d..f754c864f 100644 --- a/out/out.Setup2Factor.php +++ b/out/out.Setup2Factor.php @@ -13,6 +13,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.Statistic.php b/out/out.Statistic.php index 4de20e18d..c50f12949 100644 --- a/out/out.Statistic.php +++ b/out/out.Statistic.php @@ -19,8 +19,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.SubstituteUser.php b/out/out.SubstituteUser.php index 1d6800cd7..0a1a5178d 100644 --- a/out/out.SubstituteUser.php +++ b/out/out.SubstituteUser.php @@ -18,14 +18,13 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); require_once("inc/inc.DBInit.php"); require_once("inc/inc.ClassUI.php"); -require_once("inc/inc.ClassAccessOperation.php"); require_once("inc/inc.Authentication.php"); $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); diff --git a/out/out.Tasks.php b/out/out.Tasks.php index c5bc8b278..272799e4f 100644 --- a/out/out.Tasks.php +++ b/out/out.Tasks.php @@ -22,6 +22,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.Timeline.php b/out/out.Timeline.php index ed7d8f2d2..a7b6e05b2 100644 --- a/out/out.Timeline.php +++ b/out/out.Timeline.php @@ -19,14 +19,13 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); require_once("inc/inc.DBInit.php"); require_once("inc/inc.ClassUI.php"); -require_once("inc/inc.ClassAccessOperation.php"); require_once("inc/inc.Authentication.php"); $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); diff --git a/out/out.TransferDocument.php b/out/out.TransferDocument.php index c10915ee0..e5063bc10 100644 --- a/out/out.TransferDocument.php +++ b/out/out.TransferDocument.php @@ -20,14 +20,13 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); require_once("inc/inc.DBInit.php"); require_once("inc/inc.ClassUI.php"); -require_once("inc/inc.ClassAccessOperation.php"); require_once("inc/inc.Authentication.php"); $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); diff --git a/out/out.TransferObjects.php b/out/out.TransferObjects.php index a8918e107..9bd53b620 100644 --- a/out/out.TransferObjects.php +++ b/out/out.TransferObjects.php @@ -20,6 +20,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.TriggerWorkflow.php b/out/out.TriggerWorkflow.php index e4a2e81ed..9017396be 100644 --- a/out/out.TriggerWorkflow.php +++ b/out/out.TriggerWorkflow.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.UpdateDocument.php b/out/out.UpdateDocument.php index 333c5f980..47f2494d0 100644 --- a/out/out.UpdateDocument.php +++ b/out/out.UpdateDocument.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.UpdateDocument2.php b/out/out.UpdateDocument2.php index 97a978981..77a4e612f 100644 --- a/out/out.UpdateDocument2.php +++ b/out/out.UpdateDocument2.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.UserDefaultKeywords.php b/out/out.UserDefaultKeywords.php index 80843d9c7..ff13e526a 100644 --- a/out/out.UserDefaultKeywords.php +++ b/out/out.UserDefaultKeywords.php @@ -20,6 +20,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.UserImage.php b/out/out.UserImage.php index 6287c3eae..3f0378472 100644 --- a/out/out.UserImage.php +++ b/out/out.UserImage.php @@ -20,6 +20,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); diff --git a/out/out.UserList.php b/out/out.UserList.php index bf7d84282..9af34b3bc 100644 --- a/out/out.UserList.php +++ b/out/out.UserList.php @@ -19,6 +19,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.UsrMgr.php b/out/out.UsrMgr.php index a56ae5f8f..5aaeda188 100644 --- a/out/out.UsrMgr.php +++ b/out/out.UsrMgr.php @@ -21,6 +21,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.UsrView.php b/out/out.UsrView.php index 1bb439728..e660797bf 100644 --- a/out/out.UsrView.php +++ b/out/out.UsrView.php @@ -19,6 +19,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.ViewDocument.php b/out/out.ViewDocument.php index e1013cb84..12917eaf2 100644 --- a/out/out.ViewDocument.php +++ b/out/out.ViewDocument.php @@ -21,14 +21,13 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); require_once("inc/inc.DBInit.php"); require_once("inc/inc.ClassUI.php"); -require_once("inc/inc.ClassAccessOperation.php"); require_once("inc/inc.Authentication.php"); $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); diff --git a/out/out.ViewEvent.php b/out/out.ViewEvent.php index 1dd0b214e..c54e25739 100644 --- a/out/out.ViewEvent.php +++ b/out/out.ViewEvent.php @@ -19,6 +19,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.ViewFolder.php b/out/out.ViewFolder.php index 7e54d20f2..e4880beed 100644 --- a/out/out.ViewFolder.php +++ b/out/out.ViewFolder.php @@ -21,8 +21,8 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); -require_once("inc/inc.LogInit.php"); require_once("inc/inc.Utils.php"); +require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); require_once("inc/inc.Extension.php"); @@ -91,6 +91,7 @@ if($view) { $view->setParam('maxRecursiveCount', $settings->_maxRecursiveCount); $view->setParam('previewWidthList', $settings->_previewWidthList); $view->setParam('previewConverters', isset($settings->_converters['preview']) ? $settings->_converters['preview'] : array()); + $view->setParam('convertToPdf', $settings->_convertToPdf); $view->setParam('timeout', $settings->_cmdTimeout); $view->setParam('accessobject', $accessop); $view->setParam('xsendfile', $settings->_enableXsendfile); diff --git a/out/out.WorkflowActionsMgr.php b/out/out.WorkflowActionsMgr.php index e2e7fdcaa..0f7590eb0 100644 --- a/out/out.WorkflowActionsMgr.php +++ b/out/out.WorkflowActionsMgr.php @@ -21,6 +21,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.WorkflowGraph.php b/out/out.WorkflowGraph.php index 0be7f7c33..dc58677aa 100644 --- a/out/out.WorkflowGraph.php +++ b/out/out.WorkflowGraph.php @@ -21,6 +21,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.WorkflowMgr.php b/out/out.WorkflowMgr.php index b50c79160..ce2f18708 100644 --- a/out/out.WorkflowMgr.php +++ b/out/out.WorkflowMgr.php @@ -21,6 +21,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.WorkflowStatesMgr.php b/out/out.WorkflowStatesMgr.php index d5e8f056a..183df5417 100644 --- a/out/out.WorkflowStatesMgr.php +++ b/out/out.WorkflowStatesMgr.php @@ -21,6 +21,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/out/out.WorkflowSummary.php b/out/out.WorkflowSummary.php index 88bd32ffc..22993fdc6 100644 --- a/out/out.WorkflowSummary.php +++ b/out/out.WorkflowSummary.php @@ -21,6 +21,7 @@ if(!isset($settings)) require_once("../inc/inc.Settings.php"); +require_once("inc/inc.Utils.php"); require_once("inc/inc.LogInit.php"); require_once("inc/inc.Language.php"); require_once("inc/inc.Init.php"); diff --git a/restapi/index.php b/restapi/index.php index 54306dea7..f9fcecbce 100644 --- a/restapi/index.php +++ b/restapi/index.php @@ -1,11 +1,41 @@ preAddService($dms, $notifier); + } + } +} + +if($settings->_enableEmail) { + $notifier->addService(new SeedDMS_EmailNotify($dms, $settings->_smtpSendFrom, $settings->_smtpServer, $settings->_smtpPort, $settings->_smtpUser, $settings->_smtpPassword)); +} + +if(isset($GLOBALS['SEEDDMS_HOOKS']['notification'])) { + foreach($GLOBALS['SEEDDMS_HOOKS']['notification'] as $notificationObj) { + if(method_exists($notificationObj, 'postAddService')) { + $notificationObj->postAddService($dms, $notifier); + } + } +} require "vendor/autoload.php"; @@ -19,6 +49,22 @@ class RestapiController { /* {{{ */ $this->container = $container; } + protected function __getAttributesData($obj) { /* {{{ */ + $attributes = $obj->getAttributes(); + $attrvalues = array(); + if($attributes) { + foreach($attributes as $attrdefid=>$attribute) { + $attrdef = $attribute->getAttributeDefinition(); + $attrvalues[] = array( + 'id'=>(int) $attrdef->getId(), + 'name'=>$attrdef->getName(), + 'value'=>$attribute->getValue() + ); + } + } + return $attrvalues; + } /* }}} */ + protected function __getDocumentData($document) { /* {{{ */ $data = array( 'type'=>'document', @@ -58,19 +104,13 @@ class RestapiController { /* {{{ */ } $data['categories'] = $c; } - $attributes = $document->getAttributes(); + $attributes = $this->__getAttributesData($document); if($attributes) { - $attrvalues = array(); - foreach($attributes as $attrdefid=>$attribute) - $attrvalues[] = array('id'=>(int)$attrdefid, 'value'=>$attribute->getValue()); - $data['attributes'] = $attrvalues; + $data['attributes'] = $attributes; } - $attributes = $lc->getAttributes(); + $attributes = $this->__getAttributesData($lc); if($attributes) { - $attrvalues = array(); - foreach($attributes as $attrdefid=>$attribute) - $attrvalues[] = array('id'=>(int)$attrdefid, 'value'=>$attribute->getValue()); - $data['version-attributes'] = $attrvalues; + $data['version_attributes'] = $attributes; } return $data; } /* }}} */ @@ -117,12 +157,9 @@ class RestapiController { /* {{{ */ 'comment'=>$folder->getComment(), 'date'=>date('Y-m-d H:i:s', $folder->getDate()), ); - $attributes = $folder->getAttributes(); + $attributes = $this->__getAttributesData($folder); if($attributes) { - $attrvalues = array(); - foreach($attributes as $attrdefid=>$attribute) - $attrvalues[] = array('id'=>(int)$attrdefid, 'value'=>$attribute->getValue()); - $data['attributes'] = $attrvalues; + $data['attributes'] = $attributes; } return $data; } /* }}} */ @@ -194,10 +231,13 @@ class RestapiController { /* {{{ */ $dms = $this->container->dms; $settings = $this->container->config; + $logger = $this->container->logger; $params = $request->getParsedBody(); - if(empty($params['user']) || empty($params['pass'])) + if(empty($params['user']) || empty($params['pass'])) { + $logger->log("Login without username or password failed", PEAR_LOG_INFO); return $response->withJson(array('success'=>false, 'message'=>'No user or password given', 'data'=>''), 400); + } $username = $params['user']; $password = $params['pass']; @@ -220,12 +260,13 @@ class RestapiController { /* {{{ */ if(!$userobj) { setcookie("mydms_session", '', time()-3600, $settings->_httpRoot); + $logger->log("Login with user name '".$username."' failed", PEAR_LOG_ERR); return $response->withJson(array('success'=>false, 'message'=>'Login failed', 'data'=>''), 403); } else { require_once("../inc/inc.ClassSession.php"); $session = new SeedDMS_Session($dms->getDb()); if(!$id = $session->create(array('userid'=>$userobj->getId(), 'theme'=>$userobj->getTheme(), 'lang'=>$userobj->getLanguage()))) { - exit; + return $response->withJson(array('success'=>false, 'message'=>'Creating session failed', 'data'=>''), 500); } // Set the session cookie. @@ -236,6 +277,7 @@ class RestapiController { /* {{{ */ setcookie("mydms_session", $id, $lifetime, $settings->_httpRoot); $dms->setUser($userobj); + $logger->log("Login with user name '".$username."' successful", PEAR_LOG_INFO); return $response->withJson(array('success'=>true, 'message'=>'', 'data'=>$this->__getUserData($userobj)), 200); } } /* }}} */ @@ -387,16 +429,8 @@ class RestapiController { /* {{{ */ $folder = $dms->getFolder($args['id']); if($folder) { if ($folder->getAccessMode($userobj) >= M_READ) { - $recs = array(); - $attributes = $folder->getAttributes(); - foreach($attributes as $attribute) { - $recs[] = array( - 'id'=>(int)$attribute->getId(), - 'value'=>$attribute->getValue(), - 'name'=>$attribute->getAttributeDefinition()->getName(), - ); - } - return $response->withJson(array('success'=>true, 'message'=>'', 'data'=>$recs), 200); + $attributes = $this->__getAttributesData($folder); + return $response->withJson(array('success'=>true, 'message'=>'', 'data'=>$attributes), 200); } else { return $response->withJson(array('success'=>false, 'message'=>'No access', 'data'=>''), 403); } @@ -445,6 +479,9 @@ class RestapiController { /* {{{ */ $dms = $this->container->dms; $userobj = $this->container->userobj; $settings = $this->container->config; + $logger = $this->container->logger; + $fulltextservice = $this->container->fulltextservice; + $notifier = $this->container->notifier; if(!$userobj) { return $response->withJson(array('success'=>false, 'message'=>'Not logged in', 'data'=>''), 403); @@ -474,7 +511,10 @@ class RestapiController { /* {{{ */ $newattrs = array(); if(!empty($params['attributes'])) { foreach($params['attributes'] as $attrname=>$attrvalue) { - $attrdef = $dms->getAttributeDefinitionByName($attrname); + if((is_int($attrname) || ctype_digit($attrname)) && ((int) $attrname) > 0) + $attrdef = $dms->getAttributeDefinition((int) $attrname); + else + $attrdef = $dms->getAttributeDefinitionByName($attrname); if($attrdef) { $newattrs[$attrdef->getID()] = $attrvalue; } @@ -486,9 +526,24 @@ class RestapiController { /* {{{ */ return $response->withJson(array('success'=>false, 'message'=>getMLText("subfolder_duplicate_name"), 'data'=>''), 409); } } - if($folder = $parent->addSubFolder($params['name'], $comment, $userobj, $sequence, $newattrs)) { - $rec = $this->__getFolderData($folder); + $controller = Controller::factory('AddSubFolder'); + $controller->setParam('dms', $dms); + $controller->setParam('user', $userobj); + $controller->setParam('fulltextservice', $fulltextservice); + $controller->setParam('folder', $parent); + $controller->setParam('name', $params['name']); + $controller->setParam('comment', $comment); + $controller->setParam('sequence', $sequence); + $controller->setParam('attributes', $newattrs); + $controller->setParam('notificationgroups', []); + $controller->setParam('notificationusers', []); + if($folder = $controller()) { + $rec = $this->__getFolderData($folder); + $logger->log("Creating folder '".$folder->getName()."' (".$folder->getId().") successful", PEAR_LOG_INFO); + if($notifier) { + $notifier->sendNewFolderMail($folder, $userobj); + } return $response->withJson(array('success'=>true, 'message'=>'', 'data'=>$rec), 201); } else { return $response->withJson(array('success'=>false, 'message'=>'Could not create folder', 'data'=>''), 500); @@ -644,7 +699,11 @@ class RestapiController { /* {{{ */ } $attributes = isset($params["attributes"]) ? $params["attributes"] : array(); foreach($attributes as $attrdefid=>$attribute) { - if($attrdef = $dms->getAttributeDefinition($attrdefid)) { + if((is_int($attrdefid) || ctype_digit($attrdefid)) && ((int) $attrdefid) > 0) + $attrdef = $dms->getAttributeDefinition((int) $attrdefid); + else + $attrdef = $dms->getAttributeDefinitionByName($attrdefid); + if($attrdef) { if($attribute) { if(!$attrdef->validate($attribute)) { return $response->withJson(array('success'=>false, 'message'=>getAttributeValidationText($attrdef->getValidationError(), $attrdef->getName(), $attribute), 'data'=>''), 400); @@ -725,7 +784,11 @@ class RestapiController { /* {{{ */ $comment = isset($params['comment']) ? $params['comment'] : null; $attributes = isset($params["attributes"]) ? $params["attributes"] : array(); foreach($attributes as $attrdefid=>$attribute) { - if($attrdef = $dms->getAttributeDefinition($attrdefid)) { + if((is_int($attrdefid) || ctype_digit($attrdefid)) && ((int) $attrdefid) > 0) + $attrdef = $dms->getAttributeDefinition((int) $attrdefid); + else + $attrdef = $dms->getAttributeDefinitionByName($attrdefid); + if($attrdef) { if($attribute) { if(!$attrdef->validate($attribute)) { return $response->withJson(array('success'=>false, 'message'=>getAttributeValidationText($attrdef->getValidationError(), $attrdef->getName(), $attribute), 'data'=>''), 400); @@ -1281,16 +1344,39 @@ class RestapiController { /* {{{ */ $document = $dms->getDocument($args['id']); if($document) { if ($document->getAccessMode($userobj) >= M_READ) { - $recs = array(); - $attributes = $document->getAttributes(); - foreach($attributes as $attribute) { - $recs[] = array( - 'id'=>(int)$attribute->getId(), - 'value'=>$attribute->getValue(), - 'name'=>$attribute->getAttributeDefinition()->getName(), - ); + $attributes = $this->__getAttributesData($document); + return $response->withJson(array('success'=>true, 'message'=>'', 'data'=>$attributes), 200); + } else { + return $response->withJson(array('success'=>false, 'message'=>'No access', 'data'=>''), 403); + } + } else { + if($document === null) + $status=404; + else + $status=500; + return $response->withJson(array('success'=>false, 'message'=>'No document', 'data'=>''), $status); + } + } /* }}} */ + + function getDocumentContentAttributes($request, $response, $args) { /* {{{ */ + $dms = $this->container->dms; + $userobj = $this->container->userobj; + + $document = $dms->getDocument($args['id']); + if($document) { + if ($document->getAccessMode($userobj) >= M_READ) { + + $version = $document->getContentByVersion($args['version']); + if($version) { + if($version->getAccessMode($userobj) >= M_READ) { + $attributes = $this->__getAttributesData($version); + return $response->withJson(array('success'=>true, 'message'=>'', 'data'=>$attributes), 200); + } else { + return $response->withJson(array('success'=>false, 'message'=>'No access on version', 'data'=>''), 403); + } + } else { + return $response->withJson(array('success'=>false, 'message'=>'No version', 'data'=>''), 404); } - return $response->withJson(array('success'=>true, 'message'=>'', 'data'=>$recs), 200); } else { return $response->withJson(array('success'=>false, 'message'=>'No access', 'data'=>''), 403); } @@ -1496,6 +1582,171 @@ class RestapiController { /* {{{ */ } } /* }}} */ + function setDocumentAttribute($request, $response, $args) { /* {{{ */ + $dms = $this->container->dms; + $userobj = $this->container->userobj; + $logger = $this->container->logger; + + if(!$userobj) { + return $response->withJson(array('success'=>false, 'message'=>'Not logged in', 'data'=>''), 403); + return; + } + + if(!ctype_digit($args['id']) || $args['id'] == 0) { + return $response->withJson(array('success'=>false, 'message'=>'No document given', 'data'=>''), 400); + return; + } + if(!ctype_digit($args['attrdefid']) || $args['attrdefid'] == 0) { + return $response->withJson(array('success'=>false, 'message'=>'No attribute definition id given', 'data'=>''), 400); + return; + } + $attrdef = $dms->getAttributeDefinition($args['attrdefid']); + $doc = $dms->getDocument($args['id']); + if($doc && $attrdef) { + if($attrdef->getObjType() !== SeedDMS_Core_AttributeDefinition::objtype_document) { + return $response->withJson(array('success'=>false, 'message'=>'Attribute definition not suitable for documents', 'data'=>''), 409); + } + + $params = $request->getParsedBody(); + if(!isset($params['value'])) { + return $response->withJson(array('success'=>false, 'message'=>'Attribute value not set', 'data'=>''), 400); + } + $new = $doc->getAttributeValue($attrdef) ? true : false; + if(!$attrdef->validate($params['value'], $doc, $new)) { + return $response->withJson(array('success'=>false, 'message'=>'Validation of attribute value failed: '.$attrdef->getValidationError(), 'data'=>''), 400); + } + if($doc->getAccessMode($userobj, 'setDocumentAttribute') > M_READ) { + if ($doc->setAttributeValue($attrdef, $params['value'])) { + $logger->log("Setting attribute '".$attrdef->getName()."' (".$attrdef->getId().") to '".$params['value']."' successful", PEAR_LOG_INFO); + return $response->withJson(array('success'=>true, 'message'=>'', 'data'=>''), 201); + } else { + return $response->withJson(array('success'=>false, 'message'=>'Could not set attribute value of document', 'data'=>''), 500); + } + } else { + return $response->withJson(array('success'=>false, 'message'=>'No access on document', 'data'=>''), 403); + } + } else { + if(!$doc) + return $response->withJson(array('success'=>false, 'message'=>'No such document', 'data'=>''), 404); + if(!$attrdef) + return $response->withJson(array('success'=>false, 'message'=>'No such attr definition', 'data'=>''), 404); + return $response->withJson(array('success'=>false, 'message'=>'Could not find user or document', 'data'=>''), 500); + } + } /* }}} */ + + function setDocumentContentAttribute($request, $response, $args) { /* {{{ */ + $dms = $this->container->dms; + $userobj = $this->container->userobj; + $logger = $this->container->logger; + + if(!$userobj) { + return $response->withJson(array('success'=>false, 'message'=>'Not logged in', 'data'=>''), 403); + return; + } + + if(!ctype_digit($args['id']) || $args['id'] == 0) { + return $response->withJson(array('success'=>false, 'message'=>'No document given', 'data'=>''), 400); + return; + } + if(!ctype_digit($args['version']) || $args['version'] == 0) { + return $response->withJson(array('success'=>false, 'message'=>'No version number given', 'data'=>''), 400); + return; + } + if(!ctype_digit($args['attrdefid']) || $args['attrdefid'] == 0) { + return $response->withJson(array('success'=>false, 'message'=>'No attribute definition id given', 'data'=>''), 400); + return; + } + $attrdef = $dms->getAttributeDefinition($args['attrdefid']); + if($doc = $dms->getDocument($args['id'])) + $version = $doc->getContentByVersion($args['version']); + if($doc && $attrdef && $version) { + if($attrdef->getObjType() !== SeedDMS_Core_AttributeDefinition::objtype_documentcontent) { + return $response->withJson(array('success'=>false, 'message'=>'Attribute definition not suitable for document versions', 'data'=>''), 409); + } + + $params = $request->getParsedBody(); + if(!isset($params['value'])) { + return $response->withJson(array('success'=>false, 'message'=>'Attribute value not set', 'data'=>''), 400); + } + $new = $version->getAttributeValue($attrdef) ? true : false; + if(!$attrdef->validate($params['value'], $version, $new)) { + return $response->withJson(array('success'=>false, 'message'=>'Validation of attribute value failed: '.$attrdef->getValidationError(), 'data'=>''), 400); + } + if($doc->getAccessMode($userobj, 'setDocumentContentAttribute') > M_READ) { + if ($version->setAttributeValue($attrdef, $params['value'])) { + $logger->log("Setting attribute '".$attrdef->getName()."' (".$attrdef->getId().") to '".$params['value']."' successful", PEAR_LOG_INFO); + return $response->withJson(array('success'=>true, 'message'=>'', 'data'=>''), 201); + } else { + return $response->withJson(array('success'=>false, 'message'=>'Could not set attribute value of document content', 'data'=>''), 500); + } + } else { + return $response->withJson(array('success'=>false, 'message'=>'No access on document', 'data'=>''), 403); + } + } else { + if(!$doc) + return $response->withJson(array('success'=>false, 'message'=>'No such document', 'data'=>''), 404); + if(!$version) + return $response->withJson(array('success'=>false, 'message'=>'No such version', 'data'=>''), 404); + if(!$attrdef) + return $response->withJson(array('success'=>false, 'message'=>'No such attr definition', 'data'=>''), 404); + return $response->withJson(array('success'=>false, 'message'=>'Could not find user or document', 'data'=>''), 500); + } + } /* }}} */ + + function setFolderAttribute($request, $response, $args) { /* {{{ */ + $dms = $this->container->dms; + $userobj = $this->container->userobj; + $logger = $this->container->logger; + + if(!$userobj) { + return $response->withJson(array('success'=>false, 'message'=>'Not logged in', 'data'=>''), 403); + return; + } + + if(!ctype_digit($args['id']) || $args['id'] == 0) { + return $response->withJson(array('success'=>false, 'message'=>'No folder given', 'data'=>''), 400); + return; + } + if(!ctype_digit($args['attrdefid']) || $args['attrdefid'] == 0) { + return $response->withJson(array('success'=>false, 'message'=>'No attribute definition id given', 'data'=>''), 400); + return; + } + $attrdef = $dms->getAttributeDefinition($args['attrdefid']); + $obj = $dms->getFolder($args['id']); + if($obj && $attrdef) { + if($attrdef->getObjType() !== SeedDMS_Core_AttributeDefinition::objtype_folder) { + return $response->withJson(array('success'=>false, 'message'=>'Attribute definition not suitable for folders', 'data'=>''), 409); + } + + $params = $request->getParsedBody(); + if(!isset($params['value'])) { + return $response->withJson(array('success'=>false, 'message'=>'Attribute value not set', 'data'=>''.$request->getHeader('Content-Type')[0]), 400); + } + if(strlen($params['value'])) { + $new = $obj->getAttributeValue($attrdef) ? true : false; + if(!$attrdef->validate($params['value'], $obj, $new)) { + return $response->withJson(array('success'=>false, 'message'=>'Validation of attribute value failed: '.$attrdef->getValidationError(), 'data'=>''), 400); + } + } + if($obj->getAccessMode($userobj, 'setFolderAttribute') > M_READ) { + if ($obj->setAttributeValue($attrdef, $params['value'])) { + $logger->log("Setting attribute '".$attrdef->getName()."' (".$attrdef->getId().") to '".$params['value']."' successful", PEAR_LOG_INFO); + return $response->withJson(array('success'=>true, 'message'=>'', 'data'=>''), 201); + } else { + return $response->withJson(array('success'=>false, 'message'=>'Could not set attribute value of folder', 'data'=>''), 500); + } + } else { + return $response->withJson(array('success'=>false, 'message'=>'No access on folder', 'data'=>''), 403); + } + } else { + if(!$obj) + return $response->withJson(array('success'=>false, 'message'=>'No such folder', 'data'=>''), 404); + if(!$attrdef) + return $response->withJson(array('success'=>false, 'message'=>'No such attr definition', 'data'=>''), 404); + return $response->withJson(array('success'=>false, 'message'=>'Could not find user or folder', 'data'=>''), 500); + } + } /* }}} */ + function getAccount($request, $response) { /* {{{ */ $dms = $this->container->dms; $userobj = $this->container->userobj; @@ -1631,7 +1882,10 @@ class RestapiController { /* {{{ */ $query = $params['value']; if(empty($params['limit']) || !$limit = $params['limit']) $limit = 50; - $attrdef = $dms->getAttributeDefinitionByName($attrname); + if(ctype_digit($attrname) && ((int) $attrname) > 0) + $attrdef = $dms->getAttributeDefinition((int) $attrname); + else + $attrdef = $dms->getAttributeDefinitionByName($attrname); $entries = array(); if($attrdef) { $resArr = $attrdef->getObjects($query, $limit); @@ -2167,6 +2421,7 @@ class RestapiController { /* {{{ */ function createCategory($request, $response) { /* {{{ */ $dms = $this->container->dms; $userobj = $this->container->userobj; + $logger = $this->container->logger; $check = $this->checkIfAdmin($request, $response); if($check !== true) @@ -2182,6 +2437,7 @@ class RestapiController { /* {{{ */ return $response->withJson(array('success'=>false, 'message'=>'Category already exists', 'data'=>''), 409); } else { if($data = $dms->addDocumentCategory($params['name'])) { + $logger->log("Creating category '".$data->getName()."' (".$data->getId().") successful", PEAR_LOG_INFO); return $response->withJson(array('success'=>true, 'message'=>'', 'data'=>$this->__getCategoryData($data)), 201); } else { return $response->withJson(array('success'=>false, 'message'=>'Could not add category', 'data'=>''), 500); @@ -2355,9 +2611,6 @@ class TestController { /* {{{ */ } /* }}} */ } /* }}} */ -//$app = new Slim(array('mode'=>'development', '_session.handler'=>null)); -$app = new \Slim\App(); - /* Middleware for authentication */ class Auth { /* {{{ */ @@ -2381,7 +2634,10 @@ class Auth { /* {{{ */ // $this->container has the DI $dms = $this->container->dms; $settings = $this->container->config; + $logger = $this->container->logger; + $logger->log("Access with method ".$request->getMethod()." on '".$request->getUri()->getPath()."'".(isset($this->container->environment['HTTP_ORIGIN']) ? " with origin ".$this->container->environment['HTTP_ORIGIN'] : ''), PEAR_LOG_INFO); if($settings->_apiOrigin && isset($this->container->environment['HTTP_ORIGIN'])) { + $logger->log("Checking origin", PEAR_LOG_DEBUG); $origins = explode(',', $settings->_apiOrigin); if(!in_array($this->container->environment['HTTP_ORIGIN'], $origins)) { return $response->withStatus(403); @@ -2391,9 +2647,11 @@ class Auth { /* {{{ */ * don't even try to authorize. */ if($request->getMethod() == 'OPTIONS') { + $logger->log("Received preflight options request", PEAR_LOG_DEBUG); } elseif(!in_array($request->getUri()->getPath(), array('login')) && substr($request->getUri()->getPath(), 0, 5) != 'echo/') { $userobj = null; if(!empty($this->container->environment['HTTP_AUTHORIZATION']) && !empty($settings->_apiKey) && !empty($settings->_apiUserId)) { + $logger->log("Authorization key: ".$this->container->environment['HTTP_AUTHORIZATION'], PEAR_LOG_DEBUG); if($settings->_apiKey == $this->container->environment['HTTP_AUTHORIZATION']) { if(!($userobj = $dms->getUser($settings->_apiUserId))) { return $response->withStatus(403); @@ -2401,18 +2659,18 @@ class Auth { /* {{{ */ } else { return $response->withStatus(403); } + $logger->log("Login with apikey as '".$userobj->getLogin()."' successful", PEAR_LOG_INFO); } else { require_once("../inc/inc.ClassSession.php"); $session = new SeedDMS_Session($dms->getDb()); if (isset($_COOKIE["mydms_session"])) { $dms_session = $_COOKIE["mydms_session"]; + $logger->log("Session key: ".$dms_session, PEAR_LOG_DEBUG); if(!$resArr = $session->load($dms_session)) { /* Delete Cookie */ setcookie("mydms_session", $dms_session, time()-3600, $settings->_httpRoot); - if($settings->_enableGuestLogin) - $userobj = $dms->getUser($settings->_guestID); - else - return $response->withStatus(403); + $logger->log("Session for id '".$dms_session."' has gone", PEAR_LOG_ERR); + return $response->withStatus(403); } /* Load user data */ @@ -2432,6 +2690,7 @@ class Auth { /* {{{ */ return $response->withStatus(403); } } +// $logger->log("Login with user name '".$userobj->getLogin()."' successful", PEAR_LOG_INFO); $dms->setUser($userobj); } else { return $response->withStatus(403); @@ -2444,10 +2703,15 @@ class Auth { /* {{{ */ } } /* }}} */ +$app = new \Slim\App(); + $container = $app->getContainer(); $container['dms'] = $dms; $container['config'] = $settings; $container['conversionmgr'] = $conversionmgr; +$container['logger'] = $logger; +$container['fulltextservice'] = $fulltextservice; +$container['notifier'] = $notifier; $app->add(new Auth($container)); // Make CORS preflighted request possible @@ -2478,6 +2742,7 @@ $app->get('/folder/{id}/children', \RestapiController::class.':getFolderChildren $app->get('/folder/{id}/parent', \RestapiController::class.':getFolderParent'); $app->get('/folder/{id}/path', \RestapiController::class.':getFolderPath'); $app->get('/folder/{id}/attributes', \RestapiController::class.':getFolderAttributes'); +$app->put('/folder/{id}/attribute/{attrdefid}', \RestapiController::class.':setFolderAttribute'); $app->post('/folder/{id}/folder', \RestapiController::class.':createFolder'); $app->put('/folder/{id}/document', \RestapiController::class.':uploadDocumentPut'); $app->post('/folder/{id}/document', \RestapiController::class.':uploadDocument'); @@ -2490,11 +2755,14 @@ $app->get('/document/{id}/content', \RestapiController::class.':getDocumentConte $app->get('/document/{id}/versions', \RestapiController::class.':getDocumentVersions'); $app->get('/document/{id}/version/{version}', \RestapiController::class.':getDocumentVersion'); $app->put('/document/{id}/version/{version}', \RestapiController::class.':updateDocumentVersion'); +$app->get('/document/{id}/version/{version}/attributes', \RestapiController::class.':getDocumentContentAttributes'); +$app->put('/document/{id}/version/{version}/attribute/{attrdefid}', \RestapiController::class.':setDocumentContentAttribute'); $app->get('/document/{id}/files', \RestapiController::class.':getDocumentFiles'); $app->get('/document/{id}/file/{fileid}', \RestapiController::class.':getDocumentFile'); $app->get('/document/{id}/links', \RestapiController::class.':getDocumentLinks'); $app->post('/document/{id}/link/{documentid}', \RestapiController::class.':addDocumentLink'); $app->get('/document/{id}/attributes', \RestapiController::class.':getDocumentAttributes'); +$app->put('/document/{id}/attribute/{attrdefid}', \RestapiController::class.':setDocumentAttribute'); $app->get('/document/{id}/preview/{version}/{width}', \RestapiController::class.':getDocumentPreview'); $app->delete('/document/{id}/categories', \RestapiController::class.':removeDocumentCategories'); $app->delete('/document/{id}/category/{catid}', \RestapiController::class.':removeDocumentCategory'); @@ -2529,6 +2797,14 @@ $app->get('/attributedefinitions', \RestapiController::class.':getAttributeDefin $app->put('/attributedefinitions/{id}/name', \RestapiController::class.':changeAttributeDefinitionName'); $app->get('/echo/{data}', \TestController::class.':echoData'); $app->get('/statstotal', \RestapiController::class.':getStatsTotal'); + +if(isset($GLOBALS['SEEDDMS_HOOKS']['initRestAPI'])) { + foreach($GLOBALS['SEEDDMS_HOOKS']['initRestAPI'] as $hookObj) { + if (method_exists($hookObj, 'addRoute')) { + $hookObj->addRoute($app); + } + } +} + $app->run(); -?> diff --git a/restapi/swagger.yaml b/restapi/swagger.yaml index 4375e09e1..f19c5299c 100644 --- a/restapi/swagger.yaml +++ b/restapi/swagger.yaml @@ -13,6 +13,9 @@ info: license: name: "Apache 2.0" url: "http://www.apache.org/licenses/LICENSE-2.0.html" +servers: + - url: + description: Current host server host: "" basePath: "_httpRoot; ?>restapi/index.php" tags: @@ -22,6 +25,7 @@ tags: description: "Find out more about our store" url: "https://www.seeddms.org" schemes: +- "http" - "https" paths: /login: @@ -32,9 +36,9 @@ paths: description: "Log in by providing a username and password" operationId: "login" produces: - - "application/json" + - "application/json" consumes: - - application/x-www-form-urlencoded + - "application/x-www-form-urlencoded" parameters: - name: "user" in: "formData" @@ -111,7 +115,7 @@ paths: produces: - "application/json" consumes: - - application/x-www-form-urlencoded + - "application/x-www-form-urlencoded" parameters: - in: formData name: email @@ -138,7 +142,7 @@ paths: produces: - "application/json" consumes: - - multipart/form-data + - "application/x-www-form-urlencoded" parameters: - in: formData name: email @@ -208,7 +212,7 @@ paths: produces: - "application/json" consumes: - - multipart/form-data + - "application/x-www-form-urlencoded" parameters: - in: "formData" name: "user" @@ -371,7 +375,7 @@ paths: produces: - "application/json" consumes: - - multipart/form-data + - "application/x-www-form-urlencoded" parameters: - name: "id" in: "path" @@ -431,7 +435,7 @@ paths: produces: - "application/json" consumes: - - multipart/form-data + - "application/x-www-form-urlencoded" parameters: - in: "formData" name: "name" @@ -687,11 +691,106 @@ paths: $ref: "#/definitions/ApiResponse" security: - api_key: [] + /document/{id}/version/{version}/attributes: + get: + tags: + - "document" + summary: "Return attributes of document version" + description: "Returns the attributes of a given document version" + operationId: "getDocumentContentAttributes" + produces: + - "application/json" + parameters: + - name: "id" + in: "path" + description: "ID of document whose attributes to be returned." + type: "integer" + required: true + format: "int64" + - name: "version" + in: "path" + description: "Version number of document" + required: true + type: "integer" + format: "int64" + responses: + "200": + description: "successful operation" + schema: + $ref: "#/definitions/ApiResponseAttributes" + "403": + description: "No access" + schema: + $ref: "#/definitions/ApiResponse" + "404": + description: "Document or version not found" + schema: + $ref: "#/definitions/ApiResponse" + "500": + description: "Internal error" + schema: + $ref: "#/definitions/ApiResponse" + security: + - api_key: [] + /document/{id}/version/{version}/attribute/{attrdefid}: + put: + tags: + - "document" + summary: "Set document version attribute" + description: "Sets the attribute value of a document version. If the value is an empty string the attribute will be deleted." + operationId: "setDocumentContentAttribute" + produces: + - "application/json" + consumes: + - "application/x-www-form-urlencoded" + parameters: + - name: "id" + in: "path" + description: "ID of document" + required: true + type: "integer" + format: "int64" + - name: "version" + in: "path" + description: "Version number of document" + required: true + type: "integer" + format: "int64" + - name: "attrdefid" + in: "path" + description: "ID of attribute definition" + required: true + type: "integer" + format: "int64" + - in: "formData" + name: "value" + type: "string" + description: "Value of attribute" + required: true + responses: + "201": + description: "successful operation" + schema: + $ref: "#/definitions/ApiResponse" + "400": + description: "Invalid attribute value, or setting an attribute not allowed for the type of object" + schema: + $ref: "#/definitions/ApiResponse" + "403": + description: "No access" + schema: + $ref: "#/definitions/ApiResponse" + "404": + description: "Document, version or attribute definition not found" + schema: + $ref: "#/definitions/ApiResponse" + security: + - api_key: [] /document/{id}/attributes: get: tags: - "document" - summary: "Return attributes of document by ID" + summary: "Return attributes of document" description: "Returns the attributes of a given document" operationId: "getDocumentAttributes" produces: @@ -722,11 +821,59 @@ paths: $ref: "#/definitions/ApiResponse" security: - api_key: [] + /document/{id}/attribute/{attrdefid}: + put: + tags: + - "document" + summary: "Set document attribute" + description: "Sets the attribute value of a document. If the value is an empty string the attribute will be deleted." + operationId: "setDocumentAttribute" + produces: + - "application/json" + consumes: + - "application/x-www-form-urlencoded" + parameters: + - name: "id" + in: "path" + description: "ID of document" + required: true + type: "integer" + format: "int64" + - name: "attrdefid" + in: "path" + description: "ID of attribute definition" + required: true + type: "integer" + format: "int64" + - in: "formData" + name: "value" + type: "string" + description: "Value of attribute" + required: true + responses: + "201": + description: "successful operation" + schema: + $ref: "#/definitions/ApiResponse" + "400": + description: "Invalid attribute value, or setting an attribute not allowed for the type of object" + schema: + $ref: "#/definitions/ApiResponse" + "403": + description: "No access" + schema: + $ref: "#/definitions/ApiResponse" + "404": + description: "Document or attribute definition not found" + schema: + $ref: "#/definitions/ApiResponse" + security: + - api_key: [] /document/{id}/files: get: tags: - "document" - summary: "Return attached files of document by ID" + summary: "Return attached files of document" description: "Returns the attached files of a given document" operationId: "getDocumentFiles" produces: @@ -802,7 +949,7 @@ paths: produces: - "application/json" consumes: - - multipart/form-data + - "application/x-www-form-urlencoded" parameters: - name: "id" in: "path" @@ -920,7 +1067,7 @@ paths: produces: - "application/json" consumes: - - multipart/form-data + - "application/x-www-form-urlencoded" parameters: - name: "id" in: "path" @@ -957,7 +1104,6 @@ paths: $ref: "#/definitions/ApiResponse" security: - api_key: [] - /document/{id}/category/{catid}: delete: tags: - "document" @@ -1008,7 +1154,7 @@ paths: produces: - "application/json" consumes: - - multipart/form-data + - "application/x-www-form-urlencoded" parameters: - name: "id" in: "path" @@ -1223,7 +1369,7 @@ paths: get: tags: - "folder" - summary: "Return attributes of folder by ID" + summary: "Return attributes of folder" description: "Returns the attributes of a given folder" operationId: "getFolderAttributes" produces: @@ -1254,6 +1400,54 @@ paths: $ref: "#/definitions/ApiResponse" security: - api_key: [] + /folder/{id}/attribute/{attrdefid}: + put: + tags: + - "folder" + summary: "Set folder attribute" + description: "Sets the attribute value of a folder. If the value is an empty string the attribute will be deleted." + operationId: "setFolderAttribute" + produces: + - "application/json" + consumes: + - "application/x-www-form-urlencoded" + parameters: + - name: "id" + in: "path" + description: "ID of folder" + required: true + type: "integer" + format: "int64" + - name: "attrdefid" + in: "path" + description: "ID of attribute definition" + required: true + type: "integer" + format: "int64" + - in: "formData" + name: "value" + type: "string" + description: "Value of attribute" + required: true + responses: + "201": + description: "successful operation" + schema: + $ref: "#/definitions/ApiResponse" + "400": + description: "Invalid attribute value, or setting an attribute not allowed for the type of object" + schema: + $ref: "#/definitions/ApiResponse" + "403": + description: "No access" + schema: + $ref: "#/definitions/ApiResponse" + "404": + description: "Folder or attribute definition not found" + schema: + $ref: "#/definitions/ApiResponse" + security: + - api_key: [] /folder/{id}/folder: post: tags: @@ -1264,7 +1458,7 @@ paths: produces: - "application/json" consumes: - - multipart/form-data + - "application/x-www-form-urlencoded" parameters: - name: "id" in: "path" @@ -1316,7 +1510,7 @@ paths: produces: - "application/json" consumes: - - multipart/form-data + - "application/x-www-form-urlencoded" parameters: - name: "id" in: "path" @@ -1390,7 +1584,7 @@ paths: produces: - "application/json" consumes: - - multipart/form-data + - "application/x-www-form-urlencoded" parameters: - in: "formData" name: "name" @@ -1487,7 +1681,7 @@ paths: produces: - "application/json" consumes: - - multipart/form-data + - "application/x-www-form-urlencoded" parameters: - name: "id" in: "path" @@ -1543,7 +1737,7 @@ paths: produces: - "application/json" consumes: - - multipart/form-data + - "application/x-www-form-urlencoded" parameters: - name: "id" in: "path" @@ -1570,10 +1764,28 @@ paths: $ref: "#/definitions/ApiResponse" security: - api_key: [] + /statstotal: + get: + tags: + - "misc" + summary: "Return various statistical data" + description: "Just returns the body content" + operationId: "getStatsTotal" + produces: + - "application/json" + responses: + "200": + description: "successful operation" + schema: + $ref: "#/definitions/ApiResponse" + "400": + description: "Invalid status value" + security: + - api_key: [] /echo: get: tags: - - "test" + - "misc" summary: "Return what was send in the body" description: "Just returns the body content" operationId: "echoData" diff --git a/views/bootstrap/class.ExtensionMgr.php b/views/bootstrap/class.ExtensionMgr.php index 79e06794e..01d91845b 100644 --- a/views/bootstrap/class.ExtensionMgr.php +++ b/views/bootstrap/class.ExtensionMgr.php @@ -175,6 +175,24 @@ class SeedDMS_View_ExtensionMgr extends SeedDMS_Theme_Style { } } /* }}} */ + function readme() { /* {{{ */ + $dms = $this->params['dms']; + $user = $this->params['user']; + $extdir = $this->params['extdir']; + $extmgr = $this->params['extmgr']; + $extname = $this->params['extname']; + $extconf = $extmgr->getExtensionConfiguration(); + + if(isset($extconf[$extname])) { + $extconf = $extconf[$extname]; + if(file_exists($extdir."/".$extname."/README.md")) { +// echo '
'.file_get_contents($extdir."/".$extname."/README.md")."
"; + $Parsedown = new Parsedown(); + echo $Parsedown->text(file_get_contents($extdir."/".$extname."/README.md")); + } + } + } /* }}} */ + function installedList() { /* {{{ */ $dms = $this->params['dms']; $user = $this->params['user']; @@ -219,6 +237,9 @@ class SeedDMS_View_ExtensionMgr extends SeedDMS_Theme_Style { echo ""; echo ""; echo "
"; + if(file_exists($extdir."/".$extname."/README.md")) { + echo $this->getModalBoxLink(array('target'=>'extensionReadme', 'remote'=>'out.ExtensionMgr.php?action=readme&extensionname='.$extname, 'class'=>'', 'title'=>'', 'attributes'=>array('title'=>getMLText('show_extension_readme')))); + } if(!empty($extconf['changelog']) && file_exists($extdir."/".$extname."/".$extconf['changelog'])) { echo $this->getModalBoxLink(array('target'=>'extensionChangelog', 'remote'=>'out.ExtensionMgr.php?action=changelog&extensionname='.$extname, 'class'=>'', 'title'=>'', 'attributes'=>array('title'=>getMLText('show_extension_changelog')))); } @@ -363,6 +384,7 @@ class SeedDMS_View_ExtensionMgr extends SeedDMS_Theme_Style { $this->rowEnd(); echo $this->getModalBox(array('id'=>'extensionInfo', 'title'=>getMLText('extension_version_list'), 'content'=>'

'.getMLText('extension_loading').'

', 'buttons'=>array(array('title'=>getMLText('close'))))); echo $this->getModalBox(array('id'=>'extensionChangelog', 'title'=>getMLText('extension_changelog'), 'content'=>'

'.getMLText('changelog_loading').'

', 'buttons'=>array(array('title'=>getMLText('close'))))); + echo $this->getModalBox(array('id'=>'extensionReadme', 'title'=>getMLText('extension_readme'), 'content'=>'

'.getMLText('readme_loading').'

', 'buttons'=>array(array('title'=>getMLText('close'))))); $this->contentEnd(); $this->htmlEndPage(); } /* }}} */ diff --git a/views/bootstrap/class.LogManagement.php b/views/bootstrap/class.LogManagement.php index d58a524ce..294242303 100644 --- a/views/bootstrap/class.LogManagement.php +++ b/views/bootstrap/class.LogManagement.php @@ -98,41 +98,51 @@ $("input[type=checkbox]").each(function () { this.checked = !this.checked; }); $this->contentHeading(getMLText("log_management")); - $entries = array(); - $wentries = array(); + $sections = array( + array('default', 'Web'), + array('webdav', 'WebDAV'), + array('restapi', 'RestAPI'), + ); + if($es = $this->callHook('extraSections')) + $sections = array_merge($sections, $es); + $entries = []; + foreach($sections as $section) { + $entries[$section[0]] = array(); + } + $handle = opendir($this->logdir); if($handle) { while ($e = readdir($handle)){ if (is_dir($this->logdir.$e)) continue; if (strpos($e,".log")==FALSE) continue; if (strcmp($e,"current.log")==0) continue; - if(substr($e, 0, 6) == 'webdav') { - $wentries[] = $e; - } else { - $entries[] = $e; - } + $section = strtok($e, '-'); + if(isset($entries[$section])) + $entries[$section][] = $e; + else + $entries['default'][] = $e; } closedir($handle); - sort($entries); - sort($wentries); - $entries = array_reverse($entries); - $wentries = array_reverse($wentries); + foreach($sections as $section) { + sort($entries[$section[0]]); + $entries[$section[0]] = array_reverse($entries[$section[0]]); + } } ?> -