Merge branch 'seeddms-5.1.x' into seeddms-6.0.x

This commit is contained in:
Uwe Steinmann 2017-12-09 07:28:18 +01:00
commit 6d8652f393
56 changed files with 1357 additions and 187 deletions

View File

@ -40,6 +40,18 @@
- add document list which can be exported as an archive
- search results can be exported
--------------------------------------------------------------------------------
Changes in version 5.1.5
--------------------------------------------------------------------------------
- add controller for AttributeMgr
- converters for image previews and pdf previews can be configured in settings
- show list of documents having the selected category on page for managing
categories
- use same layout for group and category manager as already used in user manager
- meta data of attachments can be edited
- show number of reverse document links in folder/document list
- documents can be transfered to another user (Closes partly #368)
--------------------------------------------------------------------------------
Changes in version 5.1.4
--------------------------------------------------------------------------------

View File

@ -2447,7 +2447,7 @@ class SeedDMS_Core_Document extends SeedDMS_Core_Object { /* {{{ */
if(isset($this->_dms->callbacks['onPreRemoveDocument'])) {
foreach($this->_dms->callbacks['onPreRemoveDocument'] as $callback) {
$ret = call_user_func($callback[0], $callback[1], $this);
if(is_bool($ret))
if($ret === false)
return $ret;
}
}
@ -2813,6 +2813,52 @@ class SeedDMS_Core_Document extends SeedDMS_Core_Object { /* {{{ */
return $timeline;
} /* }}} */
/**
* Transfers the document to a new user
*
* This method not just sets a new owner of the document but also
* transfers the document links, attachments and locks to the new user.
*
* @return boolean true if successful, otherwise false
*/
function transferToUser($newuser) { /* {{{ */
$db = $this->_dms->getDB();
if($newuser->getId() == $this->_ownerID)
return true;
$db->startTransaction();
$queryStr = "UPDATE `tblDocuments` SET `owner` = ".$newuser->getId()." WHERE `id` = " . $this->_id;
if (!$db->getResult($queryStr)) {
$db->rollbackTransaction();
return false;
}
$queryStr = "UPDATE `tblDocumentLocks` SET `userID` = ".$newuser->getId()." WHERE `document` = " . $this->_id . " AND `userID` = ".$this->_ownerID;
if (!$db->getResult($queryStr)) {
$db->rollbackTransaction();
return false;
}
$queryStr = "UPDATE `tblDocumentLinks` SET `userID` = ".$newuser->getId()." WHERE `document` = " . $this->_id . " AND `userID` = ".$this->_ownerID;
if (!$db->getResult($queryStr)) {
$db->rollbackTransaction();
return false;
}
$queryStr = "UPDATE `tblDocumentFiles` SET `userID` = ".$newuser->getId()." WHERE `document` = " . $this->_id . " AND `userID` = ".$this->_ownerID;
if (!$db->getResult($queryStr)) {
$db->rollbackTransaction();
return false;
}
$this->_ownerID = $newuser->getID();
$this->_owner = $newuser;
$db->commitTransaction();
return true;
} /* }}} */
} /* }}} */
@ -6081,6 +6127,23 @@ class SeedDMS_Core_DocumentFile { /* {{{ */
function getDocument() { return $this->_document; }
function getUserID() { return $this->_userID; }
function getComment() { return $this->_comment; }
/*
* Set the comment of the document file
*
* @param $newComment string new comment of document
*/
function setComment($newComment) { /* {{{ */
$db = $this->_document->_dms->getDB();
$queryStr = "UPDATE `tblDocumentFiles` SET `comment` = ".$db->qstr($newComment)." WHERE `document` = ".$this->_document->getId()." AND `id` = ". $this->_id;
if (!$db->getResult($queryStr))
return false;
$this->_comment = $newComment;
return true;
} /* }}} */
function getDate() { return $this->_date; }
function getDir() { return $this->_dir; }
function getFileType() { return $this->_fileType; }
@ -6088,6 +6151,22 @@ class SeedDMS_Core_DocumentFile { /* {{{ */
function getOriginalFileName() { return $this->_orgFileName; }
function getName() { return $this->_name; }
/*
* Set the name of the document file
*
* @param $newComment string new name of document
*/
function setName($newName) { /* {{{ */
$db = $this->_document->_dms->getDB();
$queryStr = "UPDATE `tblDocumentFiles` SET `name` = ".$db->qstr($newName)." WHERE `document` = ".$this->_document->getId()." AND `id` = ". $this->_id;
if (!$db->getResult($queryStr))
return false;
$this->_name = $newName;
return true;
} /* }}} */
function getUser() {
if (!isset($this->_user))
$this->_user = $this->_document->_dms->getUser($this->_userID);
@ -6100,8 +6179,43 @@ class SeedDMS_Core_DocumentFile { /* {{{ */
function getVersion() { return $this->_version; }
/*
* Set the version of the document file
*
* @param $newComment string new version of document
*/
function setVersion($newVersion) { /* {{{ */
$db = $this->_document->_dms->getDB();
if(!is_numeric($newVersion) && $newVersion != '')
return false;
$queryStr = "UPDATE `tblDocumentFiles` SET `version` = ".(int) $newVersion." WHERE `document` = ".$this->_document->getId()." AND `id` = ". $this->_id;
if (!$db->getResult($queryStr))
return false;
$this->_version = (int) $newVersion;
return true;
} /* }}} */
function isPublic() { return $this->_public; }
/*
* Set the public flag of the document file
*
* @param $newComment string new comment of document
*/
function setPublic($newPublic) { /* {{{ */
$db = $this->_document->_dms->getDB();
$queryStr = "UPDATE `tblDocumentFiles` SET `public` = ".($newPublic ? 1 : 0)." WHERE `document` = ".$this->_document->getId()." AND `id` = ". $this->_id;
if (!$db->getResult($queryStr))
return false;
$this->_public = $newPublic ? 1 : 0;
return true;
} /* }}} */
/**
* Returns the access mode similar to a document
*

View File

@ -98,10 +98,14 @@ class SeedDMS_Core_DocumentCategory {
return true;
} /* }}} */
function getDocumentsByCategory() { /* {{{ */
function getDocumentsByCategory($limit=0, $offset=0) { /* {{{ */
$db = $this->_dms->getDB();
$queryStr = "SELECT * FROM `tblDocumentCategory` where `categoryID`=".$this->_id;
if($limit && is_numeric($limit))
$queryStr .= " LIMIT ".(int) $limit;
if($offset && is_numeric($offset))
$queryStr .= " OFFSET ".(int) $offset;
$resArr = $db->getResultArray($queryStr);
if (is_bool($resArr) && !$resArr)
return false;
@ -113,6 +117,17 @@ class SeedDMS_Core_DocumentCategory {
return $documents;
} /* }}} */
function countDocumentsByCategory() { /* {{{ */
$db = $this->_dms->getDB();
$queryStr = "SELECT COUNT(*) as `c` FROM `tblDocumentCategory` where `categoryID`=".$this->_id;
$resArr = $db->getResultArray($queryStr);
if (is_bool($resArr) && !$resArr)
return false;
return $resArr[0]['c'];
} /* }}} */
}
?>

View File

@ -1558,6 +1558,8 @@ returns just users which are not disabled
<notes>
- use views instead of temp. tables
- add list of expired documents in SeedDMS_Core_DMS::getDocumentList()
- add methods to set comment, name, public, version of document files
- add method SeedDMS_Core_Document::transferToUser()
</notes>
</release>
<release>

View File

@ -124,10 +124,17 @@ class SeedDMS_Lucene_IndexedDocument extends Zend_Search_Lucene_Document {
if($version && !$nocontent) {
$path = $dms->contentDir . $version->getPath();
$content = '';
$fp = null;
$mimetype = $version->getMimeType();
$cmd = '';
$mimeparts = explode('/', $mimetype, 2);
if(isset($_convcmd[$mimetype])) {
$cmd = sprintf($_convcmd[$mimetype], $path);
} elseif(isset($_convcmd[$mimeparts[0].'/*'])) {
$cmd = sprintf($_convcmd[$mimetype], $path);
} elseif(isset($_convcmd['*'])) {
$cmd = sprintf($_convcmd[$mimetype], $path);
}
if($cmd) {
try {
$content = self::execWithTimeout($cmd, $timeout);
if($content) {

View File

@ -11,11 +11,11 @@
<email>uwe@steinmann.cx</email>
<active>yes</active>
</lead>
<date>2017-03-01</date>
<time>15:55:32</time>
<date>2017-12-04</date>
<time>10:58:13</time>
<version>
<release>1.1.10</release>
<api>1.1.10</api>
<release>1.1.11</release>
<api>1.1.11</api>
</version>
<stability>
<release>stable</release>
@ -23,7 +23,7 @@
</stability>
<license uri="http://opensource.org/licenses/gpl-license">GPL License</license>
<notes>
catch exception in execWithTimeout()
allow conversion commands for mimetypes with wildcards
</notes>
<contents>
<dir baseinstalldir="SeedDMS" name="/">
@ -251,5 +251,21 @@ pass variables to stream_select() to fullfill strict standards.
make all functions in Indexer.php static
</notes>
</release>
<release>
<date>2017-03-01</date>
<time>15:55:32</time>
<version>
<release>1.1.10</release>
<api>1.1.10</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<license uri="http://opensource.org/licenses/gpl-license">GPL License</license>
<notes>
catch exception in execWithTimeout()
</notes>
</release>
</changelog>
</package>

View File

@ -103,6 +103,19 @@ class SeedDMS_Preview_Base {
* and the value is the command to be called for creating the preview
*/
function setConverters($arr) { /* {{{ */
$this->converters = $arr;
} /* }}} */
/**
* Add a list of converters
*
* Merges the list of passed converters with the already existing ones.
* Existing converters will be overwritten.
*
* @param array list of converters. The key of the array contains the mimetype
* and the value is the command to be called for creating the preview
*/
function addConverters($arr) { /* {{{ */
$this->converters = array_merge($this->converters, $arr);
} /* }}} */

View File

@ -11,10 +11,10 @@
<email>uwe@steinmann.cx</email>
<active>yes</active>
</lead>
<date>2017-10-11</date>
<time>07:14:32</time>
<date>2017-12-04</date>
<time>10:59:39</time>
<version>
<release>1.2.5</release>
<release>1.2.6</release>
<api>1.2.0</api>
</version>
<stability>
@ -23,7 +23,8 @@
</stability>
<license uri="http://opensource.org/licenses/gpl-license">GPL License</license>
<notes>
SeedDMS_Preview_Base::hasConvertert() returns only try if command is set
SeedDMS_Preview_Base::setConverters() overrides existing converters.
New method SeedDMS_Preview_Base::addConverters() merges new converters with old ones.
</notes>
<contents>
<dir baseinstalldir="SeedDMS" name="/">
@ -319,5 +320,21 @@ createPreview() returns false if running the converter command fails
fix typo in converter for tar.gz files
</notes>
</release>
<release>
<date>2017-10-11</date>
<time>07:14:32</time>
<version>
<release>1.2.5</release>
<api>1.2.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<license uri="http://opensource.org/licenses/gpl-license">GPL License</license>
<notes>
SeedDMS_Preview_Base::hasConverter() returns only try if command is set
</notes>
</release>
</changelog>
</package>

View File

@ -129,10 +129,17 @@ class SeedDMS_SQLiteFTS_IndexedDocument extends SeedDMS_SQLiteFTS_Document {
if($version && !$nocontent) {
$path = $dms->contentDir . $version->getPath();
$content = '';
$fp = null;
$mimetype = $version->getMimeType();
$cmd = '';
$mimeparts = explode('/', $mimetype, 2);
if(isset($_convcmd[$mimetype])) {
$cmd = sprintf($_convcmd[$mimetype], $path);
} elseif(isset($_convcmd[$mimeparts[0].'/*'])) {
$cmd = sprintf($_convcmd[$mimetype], $path);
} elseif(isset($_convcmd['*'])) {
$cmd = sprintf($_convcmd[$mimetype], $path);
}
if($cmd) {
try {
$content = self::execWithTimeout($cmd, $timeout);
if($content) {

View File

@ -11,11 +11,11 @@
<email>uwe@steinmann.cx</email>
<active>yes</active>
</lead>
<date>2017-03-01</date>
<time>15:53:24</time>
<date>2017-12-04</date>
<time>11:00:40</time>
<version>
<release>1.0.7</release>
<api>1.0.7</api>
<release>1.0.8</release>
<api>1.0.8</api>
</version>
<stability>
<release>stable</release>
@ -23,7 +23,7 @@
</stability>
<license uri="http://opensource.org/licenses/gpl-license">GPL License</license>
<notes>
catch exception in execWithTimeout()
allow conversion commands for mimetypes with wildcards
</notes>
<contents>
<dir baseinstalldir="SeedDMS" name="/">
@ -178,5 +178,21 @@ set last parameter of stream_select() to 200000 micro sec. in case the timeout i
fix calculation of timeout (see bug #269)
</notes>
</release>
<release>
<date>2017-03-01</date>
<time>15:53:24</time>
<version>
<release>1.0.7</release>
<api>1.0.7</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<license uri="http://opensource.org/licenses/gpl-license">GPL License</license>
<notes>
catch exception in execWithTimeout()
</notes>
</release>
</changelog>
</package>

View File

@ -0,0 +1,87 @@
<?php
/**
* Implementation of Attribute Definition manager controller
*
* @category DMS
* @package SeedDMS
* @license GPL 2
* @version @version@
* @author Uwe Steinmann <uwe@steinmann.cx>
* @copyright Copyright (C) 2010-2013 Uwe Steinmann
* @version Release: @package_version@
*/
/**
* Class which does the busines logic for attribute definition manager
*
* @category DMS
* @package SeedDMS
* @author Uwe Steinmann <uwe@steinmann.cx>
* @copyright Copyright (C) 2010-2013 Uwe Steinmann
* @version Release: @package_version@
*/
class SeedDMS_Controller_AttributeMgr extends SeedDMS_Controller_Common {
public function run() { /* {{{ */
} /* }}} */
public function addattrdef() { /* {{{ */
$dms = $this->params['dms'];
$name = $this->params['name'];
$type = $this->params['type'];
$objtype = $this->params['objtype'];
$multiple = $this->params['multiple'];
$minvalues = $this->params['minvalues'];
$maxvalues = $this->params['maxvalues'];
$valueset = $this->params['valueset'];
$regex = $this->params['regex'];
return($dms->addAttributeDefinition($name, $objtype, $type, $multiple, $minvalues, $maxvalues, $valueset, $regex));
} /* }}} */
public function removeattrdef() { /* {{{ */
$attrdef = $this->params['attrdef'];
return $attrdef->remove();
} /* }}} */
public function editattrdef() { /* {{{ */
$dms = $this->params['dms'];
$name = $this->params['name'];
$attrdef = $this->params['attrdef'];
$type = $this->params['type'];
$objtype = $this->params['objtype'];
$multiple = $this->params['multiple'];
$minvalues = $this->params['minvalues'];
$maxvalues = $this->params['maxvalues'];
$valueset = $this->params['valueset'];
$regex = $this->params['regex'];
if (!$attrdef->setName($name)) {
return false;
}
if (!$attrdef->setType($type)) {
return false;
}
if (!$attrdef->setObjType($objtype)) {
return false;
}
if (!$attrdef->setMultipleValues($multiple)) {
return false;
}
if (!$attrdef->setMinValues($minvalues)) {
return false;
}
if (!$attrdef->setMaxValues($maxvalues)) {
return false;
}
if (!$attrdef->setValueSet($valueset)) {
return false;
}
if (!$attrdef->setRegex($regex)) {
return false;
}
return true;
} /* }}} */
}

View File

@ -0,0 +1,68 @@
<?php
/**
* Implementation of EditDocumentFile controller
*
* @category DMS
* @package SeedDMS
* @license GPL 2
* @version @version@
* @author Uwe Steinmann <uwe@steinmann.cx>
* @copyright Copyright (C) 2010-2013 Uwe Steinmann
* @version Release: @package_version@
*/
/**
* Class which does the busines logic for editing a document
*
* @category DMS
* @package SeedDMS
* @author Uwe Steinmann <uwe@steinmann.cx>
* @copyright Copyright (C) 2010-2013 Uwe Steinmann
* @version Release: @package_version@
*/
class SeedDMS_Controller_EditDocumentFile extends SeedDMS_Controller_Common {
public function run() {
$dms = $this->params['dms'];
$user = $this->params['user'];
$settings = $this->params['settings'];
$document = $this->params['document'];
$file = $this->params['file'];
if(false === $this->callHook('preEditDocumentFile')) {
if(empty($this->errormsg))
$this->errormsg = 'hook_preEditDocumentFile_failed';
return null;
}
$result = $this->callHook('editDocumentFile', $document);
if($result === null) {
$name = $this->params['name'];
$oldname = $file->getName();
if($oldname != $name)
if(!$file->setName($name))
return false;
$comment = $this->params['comment'];
if(($oldcomment = $file->getComment()) != $comment)
if(!$file->setComment($comment))
return false;
$version = $this->params["version"];
$oldversion = $file->getVersion();
if ($oldversion != $version)
if(!$file->setVersion($version))
return false;
$public = $this->params["public"];
$file->setPublic($public == 'true' ? 1 : 0);
if(!$this->callHook('postEditDocumentFile')) {
}
} else
return $result;
return true;
}
}

View File

@ -0,0 +1,53 @@
<?php
/**
* Implementation of TransferDocument controller
*
* @category DMS
* @package SeedDMS
* @license GPL 2
* @version @version@
* @author Uwe Steinmann <uwe@steinmann.cx>
* @copyright Copyright (C) 2017 Uwe Steinmann
* @version Release: @package_version@
*/
/**
* Class which does the busines logic for downloading a document
*
* @category DMS
* @package SeedDMS
* @author Uwe Steinmann <uwe@steinmann.cx>
* @copyright Copyright (C) 2017 Uwe Steinmann
* @version Release: @package_version@
*/
class SeedDMS_Controller_TransferDocument extends SeedDMS_Controller_Common {
public function run() {
$dms = $this->params['dms'];
$user = $this->params['user'];
$settings = $this->params['settings'];
$document = $this->params['document'];
$newuser = $this->params['newuser'];
$folder = $document->getFolder();
if(false === $this->callHook('preTransferDocument')) {
if(empty($this->errormsg))
$this->errormsg = 'hook_preTransferDocument_failed';
return null;
}
$result = $this->callHook('transferDocument', $document);
if($result === null) {
if (!$document->transferToUser($newuser)) {
return false;
} else {
if(!$this->callHook('postTransferDocument')) {
}
}
}
return true;
}
}

View File

@ -378,6 +378,8 @@ Parent folder: [folder_path]
URL: [url]',
'document_status_changed_email_subject' => '[sitename]: [name] - تم تغيير حالةالمستند',
'document_title' => 'المستند \'[documentname]\'',
'document_transfered_email_body' => '',
'document_transfered_email_subject' => '',
'document_updated_email' => 'تم تحديث المستند',
'document_updated_email_body' => 'تم تحديث المستند
المستند: [name]
@ -456,6 +458,7 @@ URL: [url]',
'error_remove_folder' => 'ﺡﺪﺛ ﺦﻃﺃ ﺎﺜﻧﺍﺀ ﺡﺬﻓ ﺎﻠﻤﺠﻟﺩ',
'error_remove_permission' => '',
'error_toogle_permission' => '',
'error_transfer_document' => '',
'es_ES' => 'الإسبانية',
'event_details' => 'تفاصيل الحدث',
'exclude_items' => '',
@ -1442,6 +1445,7 @@ URL: [url]',
'splash_substituted_user' => '',
'splash_switched_back_user' => '',
'splash_toogle_group_manager' => '',
'splash_transfer_document' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => '',
'statistic' => '',
@ -1518,8 +1522,12 @@ URL: [url]',
'toggle_manager' => 'رجح مدير',
'toggle_qrcode' => '',
'to_before_from' => '',
'transfer_document' => '',
'transfer_no_read_access' => '',
'transfer_no_write_access' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transfer_to_user' => '',
'transition_triggered_email' => 'تم تحريك انتقال مسار العمل',
'transition_triggered_email_body' => 'تم تحريك انتقال مسار العمل
المستند: [name]

View File

@ -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 (838)
// Translators: Admin (839)
$text = array(
'2_factor_auth' => '',
@ -339,6 +339,8 @@ $text = array(
'document_status_changed_email_body' => '',
'document_status_changed_email_subject' => '',
'document_title' => 'Документ \'[documentname]\'',
'document_transfered_email_body' => '',
'document_transfered_email_subject' => '',
'document_updated_email' => 'Документът обновен',
'document_updated_email_body' => '',
'document_updated_email_subject' => '',
@ -411,6 +413,7 @@ $text = array(
'error_remove_folder' => '',
'error_remove_permission' => '',
'error_toogle_permission' => '',
'error_transfer_document' => '',
'es_ES' => 'Испански',
'event_details' => 'Детайли за събитието',
'exclude_items' => '',
@ -541,7 +544,7 @@ $text = array(
'invalid_target_folder' => 'Неправилен идентификатор на целевата папка',
'invalid_user_id' => 'Неправилен идентификатор на потребителя',
'invalid_version' => 'Неправилна версия на документа',
'in_folder' => '',
'in_folder' => 'В папка',
'in_revision' => '',
'in_workflow' => 'в процес',
'is_disabled' => 'забранена сметка',
@ -1307,6 +1310,7 @@ $text = array(
'splash_substituted_user' => '',
'splash_switched_back_user' => '',
'splash_toogle_group_manager' => '',
'splash_transfer_document' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => '',
'statistic' => '',
@ -1383,8 +1387,12 @@ $text = array(
'toggle_manager' => 'Превключи мениджър',
'toggle_qrcode' => '',
'to_before_from' => '',
'transfer_document' => '',
'transfer_no_read_access' => '',
'transfer_no_write_access' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transfer_to_user' => '',
'transition_triggered_email' => 'Забелязана промяна на процес',
'transition_triggered_email_body' => '',
'transition_triggered_email_subject' => '',

View File

@ -344,6 +344,8 @@ URL: [url]',
'document_status_changed_email_body' => '',
'document_status_changed_email_subject' => '',
'document_title' => 'Document \'[documentname]\'',
'document_transfered_email_body' => '',
'document_transfered_email_subject' => '',
'document_updated_email' => 'Document actualizat',
'document_updated_email_body' => '',
'document_updated_email_subject' => '',
@ -416,6 +418,7 @@ URL: [url]',
'error_remove_folder' => '',
'error_remove_permission' => '',
'error_toogle_permission' => '',
'error_transfer_document' => '',
'es_ES' => 'Castellà',
'event_details' => 'Detalls de l\'event',
'exclude_items' => '',
@ -1312,6 +1315,7 @@ URL: [url]',
'splash_substituted_user' => '',
'splash_switched_back_user' => '',
'splash_toogle_group_manager' => '',
'splash_transfer_document' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => '',
'statistic' => '',
@ -1388,8 +1392,12 @@ URL: [url]',
'toggle_manager' => 'Intercanviar manager',
'toggle_qrcode' => '',
'to_before_from' => '',
'transfer_document' => '',
'transfer_no_read_access' => '',
'transfer_no_write_access' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transfer_to_user' => '',
'transition_triggered_email' => '',
'transition_triggered_email_body' => '',
'transition_triggered_email_subject' => '',

View File

@ -385,6 +385,8 @@ User: [username]
URL: [url]',
'document_status_changed_email_subject' => '[sitename]: [name] - Stav dokumentu změněn',
'document_title' => 'Dokument \'[documentname]\'',
'document_transfered_email_body' => '',
'document_transfered_email_subject' => '',
'document_updated_email' => 'Dokument aktualizován',
'document_updated_email_body' => 'Dokument aktualizován
Dokument: [name]
@ -463,6 +465,7 @@ URL: [url]',
'error_remove_folder' => '',
'error_remove_permission' => '',
'error_toogle_permission' => '',
'error_transfer_document' => '',
'es_ES' => 'Španělština',
'event_details' => 'Údaje akce',
'exclude_items' => '',
@ -1451,6 +1454,7 @@ URL: [url]',
'splash_substituted_user' => 'Zaměněný uživatel',
'splash_switched_back_user' => 'Přepnuto zpět na původního uživatele',
'splash_toogle_group_manager' => 'Manažer skupiny přepnut',
'splash_transfer_document' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => 'Stav/Další stav',
'statistic' => 'Statistika',
@ -1527,8 +1531,12 @@ URL: [url]',
'toggle_manager' => 'Přepnout správce',
'toggle_qrcode' => '',
'to_before_from' => 'Datum ukončení nesmí být před datem zahájení',
'transfer_document' => '',
'transfer_no_read_access' => '',
'transfer_no_write_access' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transfer_to_user' => '',
'transition_triggered_email' => 'Transformace pracovního postupu spuštěna',
'transition_triggered_email_body' => 'Transformace pracovního postupu spuštěna
Dokument: [jméno]

View File

@ -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 (2489), dgrutsch (22)
// Translators: Admin (2498), dgrutsch (22)
$text = array(
'2_factor_auth' => '2-Faktor Authentifizierung',
@ -390,6 +390,13 @@ Benutzer: [username]
URL: [url]',
'document_status_changed_email_subject' => '[sitename]: [name] - Dokumentenstatus geändert',
'document_title' => 'Dokument \'[documentname]\'',
'document_transfered_email_body' => 'Dokument an anderen Benutzer übertragen
Dokument: [name]
Neuer Besitzer: [newuser]
Elternordner: [folder_path]
Benutzer: [username]
URL: [url]',
'document_transfered_email_subject' => '[sitename]: [name] - Dokument übertragen',
'document_updated_email' => 'Dokument aktualisiert',
'document_updated_email_body' => 'Dokument aktualisiert
Dokument: [name]
@ -474,6 +481,7 @@ Der Link ist bis zum [valid] gültig.
'error_remove_folder' => 'Fehler beim Löschen des Ordners',
'error_remove_permission' => 'Fehler beim Entfernen der Berechtigung',
'error_toogle_permission' => 'Fehler beim Ändern der Berechtigung',
'error_transfer_document' => 'Fehler beim Übertragen des Dokuments',
'es_ES' => 'Spanisch',
'event_details' => 'Ereignisdetails',
'exclude_items' => 'Einträge auslassen',
@ -1512,6 +1520,7 @@ Name: [username]
'splash_substituted_user' => 'Benutzer gewechselt',
'splash_switched_back_user' => 'Zum ursprünglichen Benutzer zurückgekehrt',
'splash_toogle_group_manager' => 'Gruppenverwalter gewechselt',
'splash_transfer_document' => 'Dokument übertragen',
'splash_transfer_objects' => 'Objekte übertragen',
'state_and_next_state' => 'Status/Nächster Status',
'statistic' => 'Statistik',
@ -1588,8 +1597,12 @@ Name: [username]
'toggle_manager' => 'Managerstatus wechseln',
'toggle_qrcode' => 'Zeige/verberge QR-Code',
'to_before_from' => 'Endedatum darf nicht vor dem Startdatum liegen',
'transfer_document' => 'Dokument übertragen',
'transfer_no_read_access' => 'Der Benutzer hat in dem Ordner keine Schreibrechte',
'transfer_no_write_access' => 'Der Benutzer hat in dem Ordner keine Schreibrechte',
'transfer_objects' => 'Objekte übertragen',
'transfer_objects_to_user' => 'Neuer Eigentümer',
'transfer_to_user' => 'Auf Benutzer übertragen',
'transition_triggered_email' => 'Workflow transition triggered',
'transition_triggered_email_body' => 'Workflow transition triggered
Document: [name]

View File

@ -339,6 +339,8 @@ $text = array(
'document_status_changed_email_body' => '',
'document_status_changed_email_subject' => '',
'document_title' => '',
'document_transfered_email_body' => '',
'document_transfered_email_subject' => '',
'document_updated_email' => '',
'document_updated_email_body' => '',
'document_updated_email_subject' => '',
@ -411,6 +413,7 @@ $text = array(
'error_remove_folder' => '',
'error_remove_permission' => '',
'error_toogle_permission' => '',
'error_transfer_document' => '',
'es_ES' => 'Spanish/Ισπανικά',
'event_details' => '',
'exclude_items' => '',
@ -1318,6 +1321,7 @@ URL: [url]',
'splash_substituted_user' => '',
'splash_switched_back_user' => '',
'splash_toogle_group_manager' => '',
'splash_transfer_document' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => '',
'statistic' => '',
@ -1394,8 +1398,12 @@ URL: [url]',
'toggle_manager' => '',
'toggle_qrcode' => '',
'to_before_from' => '',
'transfer_document' => '',
'transfer_no_read_access' => '',
'transfer_no_write_access' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transfer_to_user' => '',
'transition_triggered_email' => '',
'transition_triggered_email_body' => '',
'transition_triggered_email_subject' => '',

View File

@ -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 (1617), archonwang (3), dgrutsch (9), netixw (14)
// Translators: Admin (1626), archonwang (3), dgrutsch (9), netixw (14)
$text = array(
'2_factor_auth' => '2-factor authentication',
@ -390,6 +390,13 @@ User: [username]
URL: [url]',
'document_status_changed_email_subject' => '[sitename]: [name] - Document status changed',
'document_title' => 'Document \'[documentname]\'',
'document_transfered_email_body' => 'Document transfer to other user
Document: [name]
New owner: [newuser]
Parent folder: [folder_path]
User: [username]
URL: [url]',
'document_transfered_email_subject' => '[sitename]: [name] - Transfer Dokument',
'document_updated_email' => 'Document updated',
'document_updated_email_body' => 'Document updated
Document: [name]
@ -475,6 +482,7 @@ The link is valid until [valid].
'error_remove_folder' => 'Error while deleting folder',
'error_remove_permission' => 'Error while remove permission',
'error_toogle_permission' => 'Error while changing permission',
'error_transfer_document' => 'Error while transfering document',
'es_ES' => 'Spanish',
'event_details' => 'Event details',
'exclude_items' => 'Exclude items',
@ -1507,6 +1515,7 @@ Name: [username]
'splash_substituted_user' => 'Substituted user',
'splash_switched_back_user' => 'Switched back to original user',
'splash_toogle_group_manager' => 'Group manager toogled',
'splash_transfer_document' => 'Document transfered',
'splash_transfer_objects' => 'Objects transfered',
'state_and_next_state' => 'State/Next state',
'statistic' => 'Statistic',
@ -1583,8 +1592,12 @@ Name: [username]
'toggle_manager' => 'Toggle manager',
'toggle_qrcode' => 'Show/hide QR code',
'to_before_from' => 'End date may not be before start date',
'transfer_document' => 'Transfer document',
'transfer_no_read_access' => 'The user does not have read access in the folder',
'transfer_no_write_access' => 'The user does not have write access in the folder',
'transfer_objects' => 'Transfer objects',
'transfer_objects_to_user' => 'New owner',
'transfer_to_user' => 'Transfer to user',
'transition_triggered_email' => 'Workflow transition triggered',
'transition_triggered_email_body' => 'Workflow transition triggered
Document: [name]

View File

@ -385,6 +385,8 @@ Usuario: [username]
URL: [url]',
'document_status_changed_email_subject' => '[sitename]: [name] - Estado del documento modificado',
'document_title' => 'Documento \'[documentname]\'',
'document_transfered_email_body' => '',
'document_transfered_email_subject' => '',
'document_updated_email' => 'Documento actualizado',
'document_updated_email_body' => 'Documento actualizado
Documento: [name]
@ -463,6 +465,7 @@ URL: [url]',
'error_remove_folder' => 'Error al eliminar la carpeta',
'error_remove_permission' => '',
'error_toogle_permission' => '',
'error_transfer_document' => '',
'es_ES' => 'Castellano',
'event_details' => 'Detalles del evento',
'exclude_items' => 'Registros excluidos',
@ -1457,6 +1460,7 @@ URL: [url]',
'splash_substituted_user' => 'Usuario sustituido',
'splash_switched_back_user' => 'Cambió de nuevo al usuario original',
'splash_toogle_group_manager' => 'Administrador de grupo activado',
'splash_transfer_document' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => 'Estado/Estado siguiente',
'statistic' => 'Estadística',
@ -1533,8 +1537,12 @@ URL: [url]',
'toggle_manager' => 'Intercambiar mánager',
'toggle_qrcode' => '',
'to_before_from' => 'La fecha de finalización no debe ser anterior a la de inicio',
'transfer_document' => '',
'transfer_no_read_access' => '',
'transfer_no_write_access' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transfer_to_user' => '',
'transition_triggered_email' => 'Workflow transition triggered',
'transition_triggered_email_body' => 'Workflow transition triggered
Documento: [name]

View File

@ -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 (1065), jeromerobert (50), lonnnew (9), Oudiceval (474)
// Translators: Admin (1068), jeromerobert (50), lonnnew (9), Oudiceval (474)
$text = array(
'2_factor_auth' => 'Authentification forte',
@ -390,6 +390,8 @@ Utilisateur: [username]
URL: [url]',
'document_status_changed_email_subject' => '[sitename]: [name] - Statut du document modifié',
'document_title' => 'Document \'[documentname]\'',
'document_transfered_email_body' => '',
'document_transfered_email_subject' => '',
'document_updated_email' => 'Document mis à jour',
'document_updated_email_body' => 'Document mis à jour
Document: [name]
@ -475,6 +477,7 @@ Le lien est valide jusquau [valid].
'error_remove_folder' => '',
'error_remove_permission' => 'Erreur lors de la suppression de permission',
'error_toogle_permission' => 'Erreur lors de la modification de permission',
'error_transfer_document' => '',
'es_ES' => 'Espagnol',
'event_details' => 'Détails de l\'événement',
'exclude_items' => 'Exclure des élements',
@ -1479,6 +1482,7 @@ Nom : [username]
'splash_substituted_user' => 'Utilisateur de substitution',
'splash_switched_back_user' => 'Revenu à l\'utilisateur initial',
'splash_toogle_group_manager' => 'Responsable de groupe changé',
'splash_transfer_document' => '',
'splash_transfer_objects' => 'Objets transférés',
'state_and_next_state' => 'État initial/suivant',
'statistic' => 'Statistiques',
@ -1555,8 +1559,12 @@ Nom : [username]
'toggle_manager' => 'Basculer \'Responsable\'',
'toggle_qrcode' => 'Afficher/masquer le QR code',
'to_before_from' => 'La date de fin ne peut pas être avant la date de début.',
'transfer_document' => 'Transférer le document',
'transfer_no_read_access' => '',
'transfer_no_write_access' => 'L\'utilisateur n\'a pas accès à ce répertoire',
'transfer_objects' => 'Transférer des objets',
'transfer_objects_to_user' => 'Nouveau propriétaire',
'transfer_to_user' => 'Transférer vers un utilisateur',
'transition_triggered_email' => 'Transition de workflow activé',
'transition_triggered_email_body' => 'Transition de workflow déclenchée
Document : [name]

View File

@ -390,6 +390,8 @@ Korisnik: [username]
Internet poveznica: [url]',
'document_status_changed_email_subject' => '[sitename]: [name] - Promijenjen status dokumenta',
'document_title' => 'Dokument \'[documentname]\'',
'document_transfered_email_body' => '',
'document_transfered_email_subject' => '',
'document_updated_email' => 'Ažuriran dokument',
'document_updated_email_body' => 'Ažuriran dokument
Dokument: [name]
@ -468,6 +470,7 @@ Internet poveznica: [url]',
'error_remove_folder' => '',
'error_remove_permission' => '',
'error_toogle_permission' => '',
'error_transfer_document' => '',
'es_ES' => 'Španjolski',
'event_details' => 'Detalji događaja',
'exclude_items' => 'Isključivanje stavki',
@ -1478,6 +1481,7 @@ Internet poveznica: [url]',
'splash_substituted_user' => 'Zamjenski korisnik',
'splash_switched_back_user' => 'Prebačeno nazad na izvornog korisnika',
'splash_toogle_group_manager' => 'Zamjenjen upravitelj grupe',
'splash_transfer_document' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => 'Status/Slijedeći status',
'statistic' => 'Statistika',
@ -1554,8 +1558,12 @@ Internet poveznica: [url]',
'toggle_manager' => 'Zamjeni upravitelja',
'toggle_qrcode' => '',
'to_before_from' => 'Datum završetka ne može biti prije datuma početka',
'transfer_document' => '',
'transfer_no_read_access' => '',
'transfer_no_write_access' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transfer_to_user' => '',
'transition_triggered_email' => 'Zatražena promjena toka rada',
'transition_triggered_email_body' => 'Zatražena promjena toka rada
Dokument: [name]

View File

@ -385,6 +385,8 @@ Felhasználó: [username]
URL: [url]',
'document_status_changed_email_subject' => '[sitename]: [name] - Dokumentum állapot módosult',
'document_title' => 'Dokumentum \'[documentname]\'',
'document_transfered_email_body' => '',
'document_transfered_email_subject' => '',
'document_updated_email' => 'Dokumentum frissült',
'document_updated_email_body' => 'Dokumentum frissült
Dokumentum: [name]
@ -463,6 +465,7 @@ URL: [url]',
'error_remove_folder' => '',
'error_remove_permission' => '',
'error_toogle_permission' => '',
'error_transfer_document' => '',
'es_ES' => 'Spanyol',
'event_details' => 'Esemény részletek',
'exclude_items' => 'Kizárt elemek',
@ -1456,6 +1459,7 @@ URL: [url]',
'splash_substituted_user' => 'Helyettesített felhasználó',
'splash_switched_back_user' => 'Visszaváltva az eredeti felhasználóra',
'splash_toogle_group_manager' => 'Csoport kezelő kiválasztva',
'splash_transfer_document' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => 'Állapot/Következő állapot',
'statistic' => 'Statisztika',
@ -1532,8 +1536,12 @@ URL: [url]',
'toggle_manager' => 'Kulcs kezelő',
'toggle_qrcode' => '',
'to_before_from' => 'A lejárati dátum nem előzheti meg a kezdési dátumot',
'transfer_document' => '',
'transfer_no_read_access' => '',
'transfer_no_write_access' => '',
'transfer_objects' => 'Adatok átadása',
'transfer_objects_to_user' => 'Új tulajdonos',
'transfer_to_user' => '',
'transition_triggered_email' => 'Munkamenet átmenet kiváltva',
'transition_triggered_email_body' => 'Munkafolyamat átmenet kiváltva
Dokumentum: [name]

View File

@ -391,6 +391,8 @@ Utente: [username]
URL: [url]',
'document_status_changed_email_subject' => '[sitename]: [name] - Modificato lo stato di un documento',
'document_title' => 'Documento \'[documentname]\'',
'document_transfered_email_body' => '',
'document_transfered_email_subject' => '',
'document_updated_email' => 'Documento aggiornato',
'document_updated_email_body' => 'Documento aggiornato
Documento: [name]
@ -469,6 +471,7 @@ URL: [url]',
'error_remove_folder' => '',
'error_remove_permission' => 'Errore durante la rimozione delle autorizzazioni',
'error_toogle_permission' => 'Errore durante la modifica permessi',
'error_transfer_document' => '',
'es_ES' => 'Spagnolo',
'event_details' => 'Dettagli evento',
'exclude_items' => 'Escludi Elementi',
@ -1490,6 +1493,7 @@ URL: [url]',
'splash_substituted_user' => 'Utente sostituito',
'splash_switched_back_user' => 'Ritorno all\'utente originale',
'splash_toogle_group_manager' => 'Amministratore di gruppo invertito',
'splash_transfer_document' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => 'Stato/Prossimo stato',
'statistic' => 'Statistiche',
@ -1566,8 +1570,12 @@ URL: [url]',
'toggle_manager' => 'Gestore',
'toggle_qrcode' => 'Mostri / nascondi codice QR',
'to_before_from' => 'La data di fine non può essere antecedente a quella di inizio',
'transfer_document' => '',
'transfer_no_read_access' => '',
'transfer_no_write_access' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transfer_to_user' => '',
'transition_triggered_email' => 'Inizio transizione del flusso di lavoro',
'transition_triggered_email_body' => 'Transizione del flusso di lavoro iniziata
Documento: [name]

View File

@ -393,6 +393,8 @@ URL: [url]',
URL: [url]',
'document_status_changed_email_subject' => '[sitename] : [name] - 문서 상태가 변경',
'document_title' => '문서\'[documentname]\'',
'document_transfered_email_body' => '',
'document_transfered_email_subject' => '',
'document_updated_email' => '문서 업데이트',
'document_updated_email_body' => '문서 업데이트
문서: [name]
@ -469,6 +471,7 @@ URL: [url]',
'error_remove_folder' => '',
'error_remove_permission' => '',
'error_toogle_permission' => '',
'error_transfer_document' => '',
'es_ES' => '스페인어',
'event_details' => '이벤트의 자세한 사항',
'exclude_items' => '항목 제외',
@ -1472,6 +1475,7 @@ URL : [url]',
'splash_substituted_user' => '전환된 사용자',
'splash_switched_back_user' => '원래 사용자로 전환',
'splash_toogle_group_manager' => '그룹 관리자 전환',
'splash_transfer_document' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => '상태 / 다음 상태',
'statistic' => '통계',
@ -1548,8 +1552,12 @@ URL : [url]',
'toggle_manager' => '전환 매니저',
'toggle_qrcode' => 'QR code 보이기/숨기기',
'to_before_from' => '종료일은 시작일 전이 될수 없습니다',
'transfer_document' => '',
'transfer_no_read_access' => '',
'transfer_no_write_access' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '새 소유자',
'transfer_to_user' => '',
'transition_triggered_email' => '워크플로우 전환 트리거',
'transition_triggered_email_body' => '워크플로우 전환 트리거
문서: [name]

View File

@ -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 (740), gijsbertush (329), pepijn (45), reinoutdijkstra@hotmail.com (270)
// Translators: Admin (744), gijsbertush (329), pepijn (45), reinoutdijkstra@hotmail.com (270)
$text = array(
'2_factor_auth' => '',
@ -383,6 +383,8 @@ Gebruiker: [username]
URL: [url]',
'document_status_changed_email_subject' => '[sitename]: [name] - Document status gewijzigd',
'document_title' => 'Document \'[documentname]\'',
'document_transfered_email_body' => '',
'document_transfered_email_subject' => '',
'document_updated_email' => 'Document bijgewerkt',
'document_updated_email_body' => 'Document geupdate
Document: [name]
@ -408,7 +410,7 @@ URL: [url]',
'drag_icon_here' => 'Versleep icoon van de folder of bestand hier!',
'dropfolderdir_missing' => '',
'dropfolder_file' => 'Bestand van dropfolder',
'dropfolder_folder' => '',
'dropfolder_folder' => 'Map van de drop-map',
'dropupload' => 'Snel toevoegen',
'drop_files_here' => 'Sleep bestanden hierheen!',
'dump_creation' => 'DB dump aanmaken',
@ -461,6 +463,7 @@ URL: [url]',
'error_remove_folder' => '',
'error_remove_permission' => 'Verwijder permissie',
'error_toogle_permission' => 'Wijzig permissie',
'error_transfer_document' => '',
'es_ES' => 'Spaans',
'event_details' => 'Activiteit details',
'exclude_items' => 'Sluit iems uit',
@ -576,7 +579,7 @@ URL: [url]',
'import' => 'Importeer',
'importfs' => '',
'import_fs' => 'Importeer van bestandssysteem',
'import_fs_warning' => '',
'import_fs_warning' => 'Dit werkt alleen voor mappen in de drop-map. Alle mappen en bestanden worden recursief geimporteerd. Bestanden worden onmiddelijk vrijgegeven.',
'include_content' => 'inclusief inhoud',
'include_documents' => 'Inclusief documenten',
'include_subdirectories' => 'Inclusief submappen',
@ -913,7 +916,7 @@ Bovenliggende map: [folder_path]
Gebruiker: [username]
URL: [url]',
'removed_workflow_email_subject' => '[sitename]: [name] - Workflow verwijderd van document versie',
'removeFolderFromDropFolder' => '',
'removeFolderFromDropFolder' => 'Verwijder de map na de import',
'remove_marked_files' => 'Geselecteerde bestanden zijn verwijderd',
'repaired' => 'Gerepareerd',
'repairing_objects' => 'Documenten en mappen repareren.',
@ -1484,6 +1487,7 @@ URL: [url]',
'splash_substituted_user' => 'Invallers gebruiker',
'splash_switched_back_user' => 'Teruggeschakeld naar de oorspronkelijke gebruiker',
'splash_toogle_group_manager' => 'Group manager toogled',
'splash_transfer_document' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => 'staat/ volgende staat',
'statistic' => 'Statistieken',
@ -1560,8 +1564,12 @@ URL: [url]',
'toggle_manager' => 'Wijzig Beheerder',
'toggle_qrcode' => '',
'to_before_from' => 'De einddatum mag niet voor de startdatum liggen',
'transfer_document' => '',
'transfer_no_read_access' => '',
'transfer_no_write_access' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transfer_to_user' => '',
'transition_triggered_email' => 'Workflow-overgang geactiveerd',
'transition_triggered_email_body' => 'Workflow Overgang
Document: [name]

View File

@ -378,6 +378,8 @@ Użytkownik: [username]
URL: [url]',
'document_status_changed_email_subject' => '[sitename]: [name] - Zmiana statusu dokumentu',
'document_title' => 'Dokument \'[documentname]\'',
'document_transfered_email_body' => '',
'document_transfered_email_subject' => '',
'document_updated_email' => 'Dokument zaktualizowany',
'document_updated_email_body' => 'Document zaktualizowano
Dokument: [name]
@ -456,6 +458,7 @@ URL: [url]',
'error_remove_folder' => '',
'error_remove_permission' => '',
'error_toogle_permission' => '',
'error_transfer_document' => '',
'es_ES' => 'Hiszpański',
'event_details' => 'Szczegóły zdarzenia',
'exclude_items' => '',
@ -1436,6 +1439,7 @@ URL: [url]',
'splash_substituted_user' => 'Zmieniono użytkownika',
'splash_switched_back_user' => 'Przełączono z powrotem do oryginalnego użytkownika',
'splash_toogle_group_manager' => 'Przełączono grupę menadżerów',
'splash_transfer_document' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => 'Status/Następny status',
'statistic' => 'Statystyka',
@ -1512,8 +1516,12 @@ URL: [url]',
'toggle_manager' => 'Przełączanie zarządcy',
'toggle_qrcode' => '',
'to_before_from' => '',
'transfer_document' => '',
'transfer_no_read_access' => '',
'transfer_no_write_access' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transfer_to_user' => '',
'transition_triggered_email' => 'Uruchomiono proces przepływu',
'transition_triggered_email_body' => 'Uruchomiono proces przepływu
Dokument: [name]

View File

@ -384,6 +384,8 @@ Pasta mãe: [folder_path]
Usuário: [username] rnURL: [url]',
'document_status_changed_email_subject' => '[sitename]: [name] - Status do documento modificado',
'document_title' => 'Documento [documentname]',
'document_transfered_email_body' => '',
'document_transfered_email_subject' => '',
'document_updated_email' => 'Documento atualizado',
'document_updated_email_body' => 'Documento atualizado
Documento: [name]
@ -462,6 +464,7 @@ URL: [url]',
'error_remove_folder' => 'Erro na exclusão da pasta',
'error_remove_permission' => '',
'error_toogle_permission' => '',
'error_transfer_document' => '',
'es_ES' => 'Espanhol',
'event_details' => 'Event details',
'exclude_items' => 'Excluir ítens',
@ -1454,6 +1457,7 @@ URL: [url]',
'splash_substituted_user' => 'Usuário substituido',
'splash_switched_back_user' => 'Comutada de volta ao usuário original',
'splash_toogle_group_manager' => 'Gerente Grupo alternado',
'splash_transfer_document' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => 'Estado/Próximo estado',
'statistic' => 'Estatística',
@ -1530,8 +1534,12 @@ URL: [url]',
'toggle_manager' => 'Toggle manager',
'toggle_qrcode' => '',
'to_before_from' => 'A data de término não pode ser anterior a data de início',
'transfer_document' => '',
'transfer_no_read_access' => '',
'transfer_no_write_access' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transfer_to_user' => '',
'transition_triggered_email' => 'Transição de fluxo de trabalho desencadeado',
'transition_triggered_email_body' => 'Transição do fluxo de trabalho triggered
Document: [name]

View File

@ -390,6 +390,8 @@ Utilizator: [username]
URL: [url]',
'document_status_changed_email_subject' => '[sitename]: [name] - Status document schimbat',
'document_title' => 'Document \'[documentname]\'',
'document_transfered_email_body' => '',
'document_transfered_email_subject' => '',
'document_updated_email' => 'Document actualizat',
'document_updated_email_body' => 'Document actualizat
Document: [name]
@ -468,6 +470,7 @@ URL: [url]',
'error_remove_folder' => '',
'error_remove_permission' => '',
'error_toogle_permission' => '',
'error_transfer_document' => '',
'es_ES' => 'Spaniola',
'event_details' => 'Detalii eveniment',
'exclude_items' => 'Elemente excluse',
@ -1479,6 +1482,7 @@ URL: [url]',
'splash_substituted_user' => 'Utilizator substituit',
'splash_switched_back_user' => 'Comutat înapoi la utilizatorul original',
'splash_toogle_group_manager' => 'Comută Managerul de grup',
'splash_transfer_document' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => 'Stare/Stare urmatoare',
'statistic' => 'Statistic',
@ -1555,8 +1559,12 @@ URL: [url]',
'toggle_manager' => 'Comută Manager',
'toggle_qrcode' => '',
'to_before_from' => 'Data de încheiere nu poate fi înainte de data de începere',
'transfer_document' => '',
'transfer_no_read_access' => '',
'transfer_no_write_access' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transfer_to_user' => '',
'transition_triggered_email' => 'Tranziție Workflow declanșată',
'transition_triggered_email_body' => 'Tranziție Workflow declanșată
Document: [name]

View File

@ -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 (1658)
// Translators: Admin (1659)
$text = array(
'2_factor_auth' => 'Двухфакторная аутентификация',
@ -390,6 +390,8 @@ URL: [url]',
URL: [url]',
'document_status_changed_email_subject' => '[sitename]: изменён статус документа «[name]»',
'document_title' => 'Документ [documentname]',
'document_transfered_email_body' => '',
'document_transfered_email_subject' => '',
'document_updated_email' => 'Документ обновлён',
'document_updated_email_body' => 'Документ обновлён
Документ: [name]
@ -468,6 +470,7 @@ URL: [url]',
'error_remove_folder' => '',
'error_remove_permission' => 'Ошибка снятия разрешения',
'error_toogle_permission' => 'Ошибка смены разрешения',
'error_transfer_document' => '',
'es_ES' => 'Spanish',
'event_details' => 'Информация о событии',
'exclude_items' => 'Не показывать события:',
@ -622,7 +625,7 @@ URL: [url]',
'invalid_target_folder' => 'Неверный идентификатор целевого каталога',
'invalid_user_id' => 'Неверный идентификатор пользователя',
'invalid_version' => 'Неверная версия документа',
'in_folder' => '',
'in_folder' => 'В каталоге',
'in_revision' => 'В рассмотрении',
'in_workflow' => 'В процессе',
'is_disabled' => 'Отключить учётную запись',
@ -1486,6 +1489,7 @@ URL: [url]',
'splash_substituted_user' => 'Пользователь переключён',
'splash_switched_back_user' => 'Переключён на исходного пользователя',
'splash_toogle_group_manager' => 'Изменён менеджер группы',
'splash_transfer_document' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => 'Статус / следующий статус',
'statistic' => 'Статистика',
@ -1562,8 +1566,12 @@ URL: [url]',
'toggle_manager' => 'Изменить как менеджера',
'toggle_qrcode' => '',
'to_before_from' => 'Конечная дата не может быть меньше начальной даты',
'transfer_document' => '',
'transfer_no_read_access' => '',
'transfer_no_write_access' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transfer_to_user' => '',
'transition_triggered_email' => 'Изменено состояние процесса',
'transition_triggered_email_body' => 'Изменено состояние процесса
Документ: [name]

View File

@ -343,6 +343,8 @@ URL: [url]',
'document_status_changed_email_body' => '',
'document_status_changed_email_subject' => '',
'document_title' => 'Dokument \'[documentname]\'',
'document_transfered_email_body' => '',
'document_transfered_email_subject' => '',
'document_updated_email' => 'Dokument aktualizovany',
'document_updated_email_body' => '',
'document_updated_email_subject' => '[sitename]: [name] - Dokument bol aktualizovaný',
@ -415,6 +417,7 @@ URL: [url]',
'error_remove_folder' => 'Pri odstraňovaní zložky sa vyskytla chyba',
'error_remove_permission' => 'Chyba pri odstránení povolenia',
'error_toogle_permission' => 'Chyba pri zmene povolenia',
'error_transfer_document' => '',
'es_ES' => 'Španielčina',
'event_details' => 'Detail udalosti',
'exclude_items' => 'Vylúčiť položky',
@ -1311,6 +1314,7 @@ URL: [url]',
'splash_substituted_user' => '',
'splash_switched_back_user' => '',
'splash_toogle_group_manager' => '',
'splash_transfer_document' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => '',
'statistic' => 'Štatistika',
@ -1387,8 +1391,12 @@ URL: [url]',
'toggle_manager' => 'Prepnúť stav manager',
'toggle_qrcode' => 'Ukázať/skryť QR kód',
'to_before_from' => '',
'transfer_document' => '',
'transfer_no_read_access' => '',
'transfer_no_write_access' => '',
'transfer_objects' => 'Prenesené objekty',
'transfer_objects_to_user' => 'Nový vlastník',
'transfer_to_user' => '',
'transition_triggered_email' => '',
'transition_triggered_email_body' => '',
'transition_triggered_email_subject' => '',

View File

@ -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 (1151), tmichelfelder (106)
// Translators: Admin (1154), tmichelfelder (106)
$text = array(
'2_factor_auth' => '',
@ -312,7 +312,7 @@ URL: [url]',
'documentcontent' => '',
'documents' => 'Dokument',
'documents_checked_out_by_you' => '',
'documents_expired' => '',
'documents_expired' => 'Utgångna dokument',
'documents_in_process' => 'Dokument i bearbetning',
'documents_locked' => '',
'documents_locked_by_you' => 'Dokument som du har låst',
@ -378,6 +378,8 @@ Användare: [username]
URL: [url]',
'document_status_changed_email_subject' => '[sitename]: [name] - Dokument status ändrad',
'document_title' => 'Dokument \'[documentname]\'',
'document_transfered_email_body' => '',
'document_transfered_email_subject' => '',
'document_updated_email' => 'Dokument har uppdaterats',
'document_updated_email_body' => 'Dokument har uppdaterats
Dokument: [name]
@ -456,6 +458,7 @@ URL: [url]',
'error_remove_folder' => '',
'error_remove_permission' => '',
'error_toogle_permission' => '',
'error_transfer_document' => '',
'es_ES' => 'spanska',
'event_details' => 'Händelseinställningar',
'exclude_items' => '',
@ -575,7 +578,7 @@ URL: [url]',
'include_content' => '',
'include_documents' => 'Inkludera dokument',
'include_subdirectories' => 'Inkludera under-kataloger',
'indexing_tasks_in_queue' => '',
'indexing_tasks_in_queue' => 'Indexeringsuppgifter i kö',
'index_done' => '',
'index_error' => '',
'index_folder' => 'Index mapp',
@ -802,7 +805,7 @@ URL: [url]',
'only_jpg_user_images' => 'Bara .jpg-bilder kan användas som användarbild',
'order_by_sequence_off' => '',
'original_filename' => 'Ursprungligt filnamn',
'overall_indexing_progress' => '',
'overall_indexing_progress' => 'Total indexeringsprocess',
'owner' => 'Ägare',
'ownership_changed_email' => 'Ägare har ändrats',
'ownership_changed_email_body' => 'Ägare har ändrats
@ -1447,6 +1450,7 @@ URL: [url]',
'splash_substituted_user' => 'Bytt användare',
'splash_switched_back_user' => 'Byt tillbaka till original användare',
'splash_toogle_group_manager' => 'Gruppmanager har ändrats',
'splash_transfer_document' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => 'Status/Nästa status',
'statistic' => 'Statistik',
@ -1523,8 +1527,12 @@ URL: [url]',
'toggle_manager' => 'Byt manager',
'toggle_qrcode' => '',
'to_before_from' => 'Slutdatum får inte vara innan startdatum',
'transfer_document' => '',
'transfer_no_read_access' => '',
'transfer_no_write_access' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transfer_to_user' => '',
'transition_triggered_email' => 'Arbetsflödesövergång utlöstes',
'transition_triggered_email_body' => 'Arbetsflödesövergång utlöstes
Dokument: [name]

View File

@ -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 (1053), aydin (83)
// Translators: Admin (1058), aydin (83)
$text = array(
'2_factor_auth' => '',
@ -384,6 +384,8 @@ Kullanıcı: [username]
URL: [url]',
'document_status_changed_email_subject' => '[sitename]: [name] - Doküman durumu değişti',
'document_title' => 'Doküman \'[documentname]\'',
'document_transfered_email_body' => '',
'document_transfered_email_subject' => '',
'document_updated_email' => 'Doküman güncellendi',
'document_updated_email_body' => 'Doküman güncellendi
Doküman: [name]
@ -462,6 +464,7 @@ URL: [url]',
'error_remove_folder' => '',
'error_remove_permission' => '',
'error_toogle_permission' => '',
'error_transfer_document' => '',
'es_ES' => 'İspanyolca',
'event_details' => 'Etkinkil detayları',
'exclude_items' => '',
@ -469,14 +472,14 @@ URL: [url]',
'expired_at_date' => '',
'expired_documents' => '',
'expires' => 'Süresinin dolacağı zaman',
'expire_by_date' => '',
'expire_by_date' => 'Tarihe göre sil',
'expire_in_1d' => '',
'expire_in_1h' => '',
'expire_in_1m' => '',
'expire_in_1w' => '',
'expire_in_1y' => '',
'expire_in_1m' => '1 Ay içinde silinecek',
'expire_in_1w' => '1 Hafta içinde silinecek',
'expire_in_1y' => '1 Yıl içinde silinecek',
'expire_in_2h' => '',
'expire_in_2y' => '',
'expire_in_2y' => '2 Yıl içinde silinecek',
'expire_today' => '',
'expire_tomorrow' => '',
'expiry_changed_email' => 'Süresinin dolacağı tarihi değişti',
@ -1458,6 +1461,7 @@ URL: [url]',
'splash_substituted_user' => 'Yerine geçilen kullanıcı',
'splash_switched_back_user' => 'Orijinal kullanıcıya geri dönüldü',
'splash_toogle_group_manager' => 'Grup yöneticisi değişti',
'splash_transfer_document' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => 'Durum/Sonraki durum',
'statistic' => 'İstatistik',
@ -1534,8 +1538,12 @@ URL: [url]',
'toggle_manager' => 'Değişim yönetimi',
'toggle_qrcode' => '',
'to_before_from' => 'Bitiş tarihi başlama tarihinden önce olamaz',
'transfer_document' => '',
'transfer_no_read_access' => '',
'transfer_no_write_access' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transfer_to_user' => '',
'transition_triggered_email' => 'İş Akış Geçişi Tetiklendi',
'transition_triggered_email_body' => 'İş Akış Geçişi Tetiklendi
Doküman: [name]

View File

@ -390,6 +390,8 @@ URL: [url]',
URL: [url]',
'document_status_changed_email_subject' => '[sitename]: змінено статус документа «[name]»',
'document_title' => 'Документ [documentname]',
'document_transfered_email_body' => '',
'document_transfered_email_subject' => '',
'document_updated_email' => 'Документ оновлено',
'document_updated_email_body' => 'Оновлено документ
Документ: [name]
@ -468,6 +470,7 @@ URL: [url]',
'error_remove_folder' => '',
'error_remove_permission' => '',
'error_toogle_permission' => '',
'error_transfer_document' => '',
'es_ES' => 'Spanish',
'event_details' => 'Інформація про подію',
'exclude_items' => 'Виключені елементи',
@ -1479,6 +1482,7 @@ URL: [url]',
'splash_substituted_user' => 'Користувача переключено',
'splash_switched_back_user' => 'Переключено на початкового користувача',
'splash_toogle_group_manager' => 'Змінено менеджера групи',
'splash_transfer_document' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => 'Статус / наступний статус',
'statistic' => 'Статистика',
@ -1555,8 +1559,12 @@ URL: [url]',
'toggle_manager' => 'Змінити ознаку менеджера',
'toggle_qrcode' => '',
'to_before_from' => 'Кінцева дата не може бути меншою початкової дати',
'transfer_document' => '',
'transfer_no_read_access' => '',
'transfer_no_write_access' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transfer_to_user' => '',
'transition_triggered_email' => 'Змінено стан процесу',
'transition_triggered_email_body' => 'Змінено стан процесу
Документ: [name]

View File

@ -386,6 +386,8 @@ URL: [url]',
URL: [url]',
'document_status_changed_email_subject' => '[sitename]: [name] - 文档状态已更新',
'document_title' => '文档名称 \'[documentname]\'',
'document_transfered_email_body' => '',
'document_transfered_email_subject' => '',
'document_updated_email' => '文档已被更新',
'document_updated_email_body' => '文档已更新
文档: [name]
@ -470,6 +472,7 @@ URL: [url]',
'error_remove_folder' => '删除文件夹时出错',
'error_remove_permission' => '移除权限时报错',
'error_toogle_permission' => '修改权限时报错',
'error_transfer_document' => '',
'es_ES' => '西班牙语',
'event_details' => '错误详情',
'exclude_items' => '排除项目',
@ -1462,6 +1465,7 @@ URL: [url]',
'splash_substituted_user' => '',
'splash_switched_back_user' => '',
'splash_toogle_group_manager' => '',
'splash_transfer_document' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => '',
'statistic' => '统计',
@ -1538,8 +1542,12 @@ URL: [url]',
'toggle_manager' => '角色切换',
'toggle_qrcode' => '显示/隐藏 QR 码',
'to_before_from' => '结束日期不能早于开始日期',
'transfer_document' => '',
'transfer_no_read_access' => '',
'transfer_no_write_access' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transfer_to_user' => '',
'transition_triggered_email' => '',
'transition_triggered_email_body' => '',
'transition_triggered_email_subject' => '',

View File

@ -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 (2378)
// Translators: Admin (2380)
$text = array(
'2_factor_auth' => '',
@ -343,6 +343,8 @@ URL: [url]',
'document_status_changed_email_body' => '',
'document_status_changed_email_subject' => '',
'document_title' => '文檔名稱 \'[documentname]\'',
'document_transfered_email_body' => '',
'document_transfered_email_subject' => '',
'document_updated_email' => '文檔已被更新',
'document_updated_email_body' => '',
'document_updated_email_subject' => '',
@ -415,6 +417,7 @@ URL: [url]',
'error_remove_folder' => '',
'error_remove_permission' => '',
'error_toogle_permission' => '',
'error_transfer_document' => '',
'es_ES' => '西班牙語',
'event_details' => '錯誤詳情',
'exclude_items' => '',
@ -818,7 +821,7 @@ URL: [url]',
'review_deletion_email_subject' => '',
'review_file' => '',
'review_group' => '校對組',
'review_log' => '',
'review_log' => '檢閱紀錄',
'review_request_email' => '校對請求',
'review_request_email_body' => '',
'review_request_email_subject' => '',
@ -1311,6 +1314,7 @@ URL: [url]',
'splash_substituted_user' => '',
'splash_switched_back_user' => '',
'splash_toogle_group_manager' => '',
'splash_transfer_document' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => '',
'statistic' => '',
@ -1358,7 +1362,7 @@ URL: [url]',
'takeOverGrpApprover' => '',
'takeOverGrpReviewer' => '',
'takeOverIndApprover' => '',
'takeOverIndReviewer' => '',
'takeOverIndReviewer' => '從上個版本接管個別審稿人',
'tasks' => '',
'temp_jscode' => '',
'testmail_body' => '',
@ -1387,8 +1391,12 @@ URL: [url]',
'toggle_manager' => '角色切換',
'toggle_qrcode' => '',
'to_before_from' => '',
'transfer_document' => '',
'transfer_no_read_access' => '',
'transfer_no_write_access' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transfer_to_user' => '',
'transition_triggered_email' => '',
'transition_triggered_email_body' => '',
'transition_triggered_email_subject' => '',

View File

@ -24,8 +24,11 @@ include("../inc/inc.Init.php");
include("../inc/inc.Extension.php");
include("../inc/inc.DBInit.php");
include("../inc/inc.ClassUI.php");
include("../inc/inc.ClassController.php");
include("../inc/inc.Authentication.php");
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
$controller = Controller::factory($tmp[1]);
if (!$user->isAdmin()) {
UI::exitError(getMLText("admin_tools"),getMLText("access_denied"));
}
@ -33,13 +36,16 @@ if (!$user->isAdmin()) {
if (isset($_POST["action"])) $action=$_POST["action"];
else $action=NULL;
if(!in_array($action, array('addattrdef', 'removeattrdef', 'editattrdef')))
UI::exitError(getMLText("admin_tools"),getMLText("unknown_command"));
/* Check if the form data comes from a trusted request */
if(!checkFormKey($action)) {
UI::exitError(getMLText("admin_tools"),getMLText("invalid_request_token"));
}
// add new attribute definition ---------------------------------------------
if ($action == "addattrdef") {
/* Check if the form data comes from a trusted request */
if(!checkFormKey('addattrdef')) {
UI::exitError(getMLText("admin_tools"),getMLText("invalid_request_token"));
}
$name = trim($_POST["name"]);
$type = intval($_POST["type"]);
@ -69,10 +75,18 @@ if ($action == "addattrdef") {
UI::exitError(getMLText("admin_tools"),getMLText("attrdef_multiple_needs_valueset"));
}
$newAttrdef = $dms->addAttributeDefinition($name, $objtype, $type, $multiple, $minvalues, $maxvalues, $valueset, $regex);
if (!$newAttrdef) {
$controller->setParam('name', $name);
$controller->setParam('type', $type);
$controller->setParam('objtype', $objtype);
$controller->setParam('multiple', $multiple);
$controller->setParam('minvalues', $minvalues);
$controller->setParam('maxvalues', $maxvalues);
$controller->setParam('valueset', $valueset);
$controller->setParam('regex', $regex);
if (!($newAttrdef = $controller($_POST))) {
UI::exitError(getMLText("admin_tools"),getMLText("error_occured"));
}
$attrdefid=$newAttrdef->getID();
$session->setSplashMsg(array('type'=>'success', 'msg'=>getMLText('splash_add_attribute')));
@ -83,11 +97,6 @@ if ($action == "addattrdef") {
// delete attribute definition -----------------------------------------------
else if ($action == "removeattrdef") {
/* Check if the form data comes from a trusted request */
if(!checkFormKey('removeattrdef')) {
UI::exitError(getMLText("admin_tools"),getMLText("invalid_request_token"));
}
if (!isset($_POST["attrdefid"]) || !is_numeric($_POST["attrdefid"]) || intval($_POST["attrdefid"])<1) {
UI::exitError(getMLText("admin_tools"),getMLText("unknown_attrdef"));
}
@ -97,9 +106,11 @@ else if ($action == "removeattrdef") {
UI::exitError(getMLText("admin_tools"),getMLText("unknown_attrdef"));
}
if (!$attrdef->remove()) {
$controller->setParam('attrdef', $attrdef);
if (!$controller($_POST)) {
UI::exitError(getMLText("admin_tools"),getMLText("error_occured"));
}
$session->setSplashMsg(array('type'=>'success', 'msg'=>getMLText('splash_rm_attribute')));
add_log_line("&action=removeattrdef&attrdefid=".$attrdefid);
@ -110,11 +121,6 @@ else if ($action == "removeattrdef") {
// edit attribute definition -----------------------------------------------
else if ($action == "editattrdef") {
/* Check if the form data comes from a trusted request */
if(!checkFormKey('editattrdef')) {
UI::exitError(getMLText("admin_tools"),getMLText("invalid_request_token"));
}
if (!isset($_POST["attrdefid"]) || !is_numeric($_POST["attrdefid"]) || intval($_POST["attrdefid"])<1) {
UI::exitError(getMLText("admin_tools"),getMLText("unknown_attrdef"));
}
@ -146,28 +152,16 @@ else if ($action == "editattrdef") {
UI::exitError(getMLText("admin_tools"),getMLText("attrdef_multiple_needs_valueset"));
}
if (!$attrdef->setName($name)) {
UI::exitError(getMLText("admin_tools"),getMLText("error_occured"));
}
if (!$attrdef->setType($type)) {
UI::exitError(getMLText("admin_tools"),getMLText("error_occured"));
}
if (!$attrdef->setObjType($objtype)) {
UI::exitError(getMLText("admin_tools"),getMLText("error_occured"));
}
if (!$attrdef->setMultipleValues($multiple)) {
UI::exitError(getMLText("admin_tools"),getMLText("error_occured"));
}
if (!$attrdef->setMinValues($minvalues)) {
UI::exitError(getMLText("admin_tools"),getMLText("error_occured"));
}
if (!$attrdef->setMaxValues($maxvalues)) {
UI::exitError(getMLText("admin_tools"),getMLText("error_occured"));
}
if (!$attrdef->setValueSet($valueset)) {
UI::exitError(getMLText("admin_tools"),getMLText("error_occured"));
}
if (!$attrdef->setRegex($regex)) {
$controller->setParam('name', $name);
$controller->setParam('type', $type);
$controller->setParam('objtype', $objtype);
$controller->setParam('multiple', $multiple);
$controller->setParam('minvalues', $minvalues);
$controller->setParam('maxvalues', $maxvalues);
$controller->setParam('valueset', $valueset);
$controller->setParam('regex', $regex);
$controller->setParam('attrdef', $attrdef);
if (!$controller($_POST)) {
UI::exitError(getMLText("admin_tools"),getMLText("error_occured"));
}

View File

@ -0,0 +1,82 @@
<?php
// MyDMS. Document Management System
// Copyright (C) 2002-2005 Markus Westphal
// Copyright (C) 2006-2008 Malcolm Cowe
// Copyright (C) 2010 Matteo Lucarelli
// Copyright (C) 2010-2016 Uwe Steinmann
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// 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.Language.php");
include("../inc/inc.Init.php");
include("../inc/inc.Extension.php");
include("../inc/inc.DBInit.php");
include("../inc/inc.ClassUI.php");
include("../inc/inc.ClassController.php");
include("../inc/inc.Authentication.php");
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
$controller = Controller::factory($tmp[1]);
/* Check if the form data comes from a trusted request */
if(!checkFormKey('editdocumentfile')) {
UI::exitError(getMLText("document_title", array("documentname" => getMLText("invalid_request_token"))),getMLText("invalid_request_token"));
}
if (!isset($_POST["documentid"]) || !is_numeric($_POST["documentid"]) || intval($_POST["documentid"])<1) {
UI::exitError(getMLText("document_title", array("documentname" => getMLText("invalid_doc_id"))),getMLText("invalid_doc_id"));
}
$documentid = $_POST["documentid"];
$document = $dms->getDocument($documentid);
if (!is_object($document)) {
UI::exitError(getMLText("document_title", array("documentname" => getMLText("invalid_doc_id"))),getMLText("invalid_doc_id"));
}
if (!isset($_POST["fileid"]) || !is_numeric($_POST["fileid"]) || intval($_POST["fileid"])<1) {
UI::exitError(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))),getMLText("invalid_file_id"));
}
$file = $document->getDocumentFile($_POST["fileid"]);
if (!is_object($file)) {
UI::exitError(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))),getMLText("invalid_file_id"));
}
if (($document->getAccessMode($user) < M_ALL)&&($user->getID()!=$file->getUserID())) {
UI::exitError(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))),getMLText("access_denied"));
}
$controller->setParam('document', $document);
$controller->setParam('file', $file);
$controller->setParam('name', isset($_POST['name']) ? $_POST['name'] : '');
$controller->setParam('comment', isset($_POST['comment']) ? $_POST['comment'] : '');
$controller->setParam('version', isset($_POST['version']) ? $_POST['version'] : '');
$controller->setParam('public', isset($_POST['public']) ? $_POST['public'] : '');
if(!$controller->run()) {
if($controller->getErrorNo()) {
UI::exitError(getMLText("document_title", array("documentname" => $document->getName())), $controller->getErrorMsg());
}
}
add_log_line("?documentid=".$documentid);
header("Location:../out/out.ViewDocument.php?documentid=".$documentid."&currenttab=attachments");

View File

@ -0,0 +1,97 @@
<?php
// MyDMS. Document Management System
// Copyright (C) 2002-2005 Markus Westphal
// Copyright (C) 2006-2008 Malcolm Cowe
// Copyright (C) 2010-2016 Uwe Steinmann
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
include("../inc/inc.Settings.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.ClassUI.php");
include("../inc/inc.ClassController.php");
include("../inc/inc.Authentication.php");
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
$controller = Controller::factory($tmp[1]);
if (!$user->isAdmin()) {
UI::exitError(getMLText("document"),getMLText("access_denied"));
}
/* Check if the form data comes from a trusted request */
if(!checkFormKey('transferdocument')) {
UI::exitError(getMLText("document_title", array("documentname" => getMLText("invalid_request_token"))),getMLText("invalid_request_token"));
}
if (!isset($_POST["documentid"]) || !is_numeric($_POST["documentid"]) || intval($_POST["documentid"])<1) {
UI::exitError(getMLText("document_title", array("documentname" => getMLText("invalid_doc_id"))),getMLText("invalid_doc_id"));
}
$documentid = $_POST["documentid"];
$document = $dms->getDocument($documentid);
if (!is_object($document)) {
UI::exitError(getMLText("document_title", array("documentname" => getMLText("invalid_doc_id"))),getMLText("invalid_doc_id"));
}
if (!isset($_POST["userid"]) || !is_numeric($_POST["userid"]) || intval($_POST["userid"])<1) {
UI::exitError(getMLText("document_title", array("documentname" => getMLText("invalid_doc_id"))),getMLText("invalid_doc_id"));
}
$userid = $_POST["userid"];
$newuser = $dms->getUser($userid);
if (!is_object($newuser)) {
UI::exitError(getMLText("document_title", array("documentname" => getMLText("invalid_doc_id"))),getMLText("invalid_doc_id"));
}
$folder = $document->getFolder();
$controller->setParam('document', $document);
$controller->setParam('newuser', $newuser);
if(!$controller->run()) {
UI::exitError(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))),getMLText("error_transfer_document"));
}
if ($notifier){
/* Get the notify list before removing the document */
$nl = $document->getNotifyList();
$subject = "document_transfered_email_subject";
$message = "document_transfered_email_body";
$params = array();
$params['name'] = $document->getName();
$params['newuser'] = $newuser->getFullName();
$params['folder_path'] = $folder->getFolderPathPlain();
$params['username'] = $user->getFullName();
$params['sitename'] = $settings->_siteName;
$params['http_root'] = $settings->_httpRoot;
$params['url'] = "http".((isset($_SERVER['HTTPS']) && (strcmp($_SERVER['HTTPS'],'off')!=0)) ? "s" : "")."://".$_SERVER['HTTP_HOST'].$settings->_httpRoot."out/out.ViewDocument.php?documentid=".$document->getID();
$notifier->toList($user, $nl["users"], $subject, $message, $params);
foreach ($nl["groups"] as $grp) {
$notifier->toGroup($user, $grp, $subject, $message, $params);
}
}
$session->setSplashMsg(array('type'=>'success', 'msg'=>getMLText('splash_transfer_document')));
add_log_line("?documentid=".$documentid);
header("Location:../out/out.ViewFolder.php?folderid=".$folder->getID());
?>

View File

@ -47,5 +47,9 @@ if($view) {
$view->setParam('categories', $categories);
$view->setParam('selcategory', $selcat);
$view->setParam('accessobject', $accessop);
$view->setParam('showtree', showtree());
$view->setParam('cachedir', $settings->_cacheDir);
$view->setParam('previewWidthList', $settings->_previewWidthList);
$view->setParam('timeout', $settings->_cmdTimeout);
$view($_GET);
}

View File

@ -0,0 +1,71 @@
<?php
// MyDMS. Document Management System
// Copyright (C) 2010 Matteo Lucarelli
// Copyright (C) 2010-2016 Uwe Steinmann
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// 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.Language.php");
include("../inc/inc.Init.php");
include("../inc/inc.Extension.php");
include("../inc/inc.DBInit.php");
include("../inc/inc.ClassUI.php");
include("../inc/inc.ClassAccessOperation.php");
include("../inc/inc.Authentication.php");
if (!isset($_GET["documentid"]) || !is_numeric($_GET["documentid"]) || intval($_GET["documentid"])<1) {
UI::exitError(getMLText("document_title", array("documentname" => getMLText("invalid_doc_id"))),getMLText("invalid_doc_id"));
}
$document = $dms->getDocument($_GET["documentid"]);
if (!is_object($document)) {
UI::exitError(getMLText("document_title", array("documentname" => getMLText("invalid_doc_id"))),getMLText("invalid_doc_id"));
}
if (!isset($_GET["fileid"]) || !is_numeric($_GET["fileid"]) || intval($_GET["fileid"])<1) {
UI::exitError(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))),getMLText("invalid_file_id"));
}
$file = $document->getDocumentFile($_GET["fileid"]);
if (!is_object($file)) {
UI::exitError(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))),getMLText("invalid_file_id"));
}
if (($document->getAccessMode($user) < M_ALL)&&($user->getID()!=$file->getUserID())) {
UI::exitError(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))),getMLText("access_denied"));
}
$folder = $document->getFolder();
/* Create object for checking access to certain operations */
$accessop = new SeedDMS_AccessOperation($dms, $document, $user, $settings);
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user));
if($view) {
$view->setParam('folder', $folder);
$view->setParam('document', $document);
$view->setParam('file', $file);
$view->setParam('accessobject', $accessop);
$view($_GET);
exit;
}
?>

42
out/out.ErrorDlg.php Normal file
View File

@ -0,0 +1,42 @@
<?php
// MyDMS. Document Management System
// Copyright (C) 2002-2005 Markus Westphal
// Copyright (C) 2006-2008 Malcolm Cowe
// Copyright (C) 2010 Matteo Lucarelli
// Copyright (C) 2010-2016 Uwe Steinmann
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
// This file is needed because SeedDMS_View_Bootstrap::htmlEndPage() includes
// a file out/out.ErrorDlg.php?action=webrootjs and out/out.ErrorDlg.php?action=footerjs
include("../inc/inc.Settings.php");
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");
include("../inc/inc.ClassUI.php");
include("../inc/inc.ClassAccessOperation.php");
include("../inc/inc.Authentication.php");
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user));
if($view) {
$view($_GET);
exit;
}

View File

@ -35,7 +35,7 @@ if (!$accessop->check_view_access($view, $_GET)) {
}
if (!isset($_GET["groupid"]) || !is_numeric($_GET["groupid"]) || intval($_GET["groupid"])<1) {
UI::exitError(getMLText("rm_group"),getMLText("invalid_user_id"));
UI::exitError(getMLText("rm_group"),getMLText("invalid_group_id"));
}
$group = $dms->getGroup(intval($_GET["groupid"]));

View File

@ -0,0 +1,67 @@
<?php
// MyDMS. Document Management System
// Copyright (C) 2002-2005 Markus Westphal
// Copyright (C) 2006-2008 Malcolm Cowe
// Copyright (C) 2010-2016 Uwe Steinmann
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// 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.Language.php");
include("../inc/inc.Init.php");
include("../inc/inc.Extension.php");
include("../inc/inc.DBInit.php");
include("../inc/inc.ClassUI.php");
include("../inc/inc.ClassAccessOperation.php");
include("../inc/inc.Authentication.php");
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user));
if (!$user->isAdmin()) {
UI::exitError(getMLText("document"),getMLText("access_denied"));
}
if (!isset($_GET["documentid"]) || !is_numeric($_GET["documentid"]) || intval($_GET["documentid"])<1) {
UI::exitError(getMLText("document_title", array("documentname" => getMLText("invalid_doc_id"))),getMLText("invalid_doc_id"));
}
$document = $dms->getDocument($_GET["documentid"]);
if (!is_object($document)) {
UI::exitError(getMLText("document_title", array("documentname" => getMLText("invalid_doc_id"))),getMLText("invalid_doc_id"));
}
$users = $dms->getAllUsers($settings->_sortUsersInList);
if (is_bool($users)) {
UI::exitError(getMLText("admin_tools"),getMLText("internal_error"));
}
$folder = $document->getFolder();
/* Create object for checking access to certain operations */
$accessop = new SeedDMS_AccessOperation($dms, $document, $user, $settings);
if($view) {
$view->setParam('folder', $folder);
$view->setParam('document', $document);
$view->setParam('allusers', $users);
$view->setParam('accessobject', $accessop);
$view($_GET);
exit;
}
?>

View File

@ -1,3 +1,16 @@
/* Template function which outputs an option in a chzn-select */
chzn_template_func = function (state) {
var subtitle = $(state.element).data('subtitle');
var warning = $(state.element).data('warning');
var html = '<span>'+state.text+'';
if(subtitle)
html += '<br /><i>'+subtitle+'</i>';
if(warning)
html += '<br /><span class="label label-warning"><i class="icon-warning-sign"></i></span> '+warning+'';
html += '</span>';
var $newstate = $(html);
return $newstate;
};
$(document).ready( function() {
/* close popovers when clicking somewhere except in the popover or the
* remove icon
@ -27,28 +40,12 @@ $(document).ready( function() {
$(".chzn-select").select2({
width: '100%',
templateResult: function (state) {
var subtitle = $(state.element).data('subtitle');
var html = '<span>'+state.text+'';
if(subtitle)
html += '<br /><i>'+subtitle+'</i>';
html += '</span>';
var $newstate = $(html);
return $newstate;
}
templateResult: chzn_template_func
});
$(".chzn-select-deselect").select2({
allowClear:true,
width: '100%',
templateResult: function (state) {
var subtitle = $(state.element).data('subtitle');
var html = '<span>'+state.text+'';
if(subtitle)
html += '<br /><i>'+subtitle+'</i>';
html += '</span>';
var $newstate = $(html);
return $newstate;
}
templateResult: chzn_template_func
});
/* change the color and length of the bar graph showing the password
@ -382,15 +379,7 @@ $(document).ready( function() {
// $(".chzn-select").chosen();
$(".chzn-select").select2({
width: '100%',
templateResult: function (state) {
var subtitle = $(state.element).data('subtitle');
var html = '<span>'+state.text+'';
if(subtitle)
html += '<br /><i>'+subtitle+'</i>';
html += '</span>';
var $newstate = $(html);
return $newstate;
}
templateResult: chzn_template_func
});
});
}); /* }}} */
@ -424,15 +413,7 @@ $(document).ready( function() {
// $(".chzn-select").chosen();
$(".chzn-select").select2({
width: '100%',
templateResult: function (state) {
var subtitle = $(state.element).data('subtitle');
var html = '<span>'+state.text+'';
if(subtitle)
html += '<br /><i>'+subtitle+'</i>';
html += '</span>';
var $newstate = $(html);
return $newstate;
}
templateResult: chzn_template_func
});
$(".pwd").passStrength({ /* {{{ */
url: "../op/op.Ajax.php",

View File

@ -166,7 +166,7 @@ $(document).ready( function() {
<div class="control-group">
<label class="control-label"><?php printMLText("version");?>:</label>
<div class="controls"><select name="version" id="version">
<option value=""></option>
<option value=""><?= getMLText('document') ?></option>
<?php
$versions = $document->getContent();
foreach($versions as $version)

View File

@ -145,17 +145,24 @@ $(document).ready( function() {
}
} /* }}} */
function showAttributeForm($attrdef) { /* {{{ */
if($attrdef && !$attrdef->isUsed()) {
function actionmenu() { /* {{{ */
$dms = $this->params['dms'];
$user = $this->params['user'];
$selattrdef = $this->params['selattrdef'];
if($selattrdef && !$selattrdef->isUsed()) {
?>
<form style="display: inline-block;" method="post" action="../op/op.AttributeMgr.php" >
<?php echo createHiddenFieldWithKey('removeattrdef'); ?>
<input type="hidden" name="attrdefid" value="<?php echo $attrdef->getID()?>">
<input type="hidden" name="attrdefid" value="<?php echo $selattrdef->getID()?>">
<input type="hidden" name="action" value="removeattrdef">
<button type="submit" class="btn"><i class="icon-remove"></i> <?php echo getMLText("rm_attrdef")?></button>
</form>
<?php
}
} /* }}} */
function showAttributeForm($attrdef) { /* {{{ */
?>
<form class="form-horizontal" action="../op/op.AttributeMgr.php" method="post">
<?php
@ -283,11 +290,7 @@ $(document).ready( function() {
<div class="row-fluid">
<div class="span6">
<div class="well">
<form class="form-horizontal">
<div class="control-group">
<label class="control-label" for="login"><?php printMLText("selection");?>:</label>
<div class="controls">
<select class="chzn-select" id="selector" class="input-xlarge">
<option value="-1"><?php echo getMLText("choose_attrdef")?></option>
<option value="0"><?php echo getMLText("new_attrdef")?></option>
@ -330,10 +333,9 @@ $(document).ready( function() {
}
?>
</select>
</div>
</div>
</form>
</div>
<div class="ajax" style="margin-bottom: 15px;" data-view="AttributeMgr" data-action="actionmenu" <?php echo ($selattrdef ? "data-query=\"attrdefid=".$selattrdef->getID()."\"" : "") ?>></div>
<?php if($accessop->check_view_access($this, array('action'=>'info'))) { ?>
<div class="ajax" data-view="AttributeMgr" data-action="info" <?php echo ($selattrdef ? "data-query=\"attrdefid=".$selattrdef->getID()."\"" : "") ?>></div>
<?php } ?>

View File

@ -635,6 +635,9 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
if ($accessMode >= M_READ && !$this->params['user']->isGuest()) {
$menuitems['edit_existing_notify'] = array('link'=>"../out/out.DocumentNotify". $docid, 'label'=>'edit_existing_notify');
}
if ($this->params['user']->isAdmin()) {
$menuitems['transfer_document'] = array('link'=>"../out/out.TransferDocument". $docid, 'label'=>'transfer_document');
}
/* Check if hook exists because otherwise callHook() will override $menuitems */
if($this->hasHook('documentNavigationBar'))
@ -2061,6 +2064,10 @@ $(document).ready( function() {
$links = $document->getDocumentLinks();
$links = SeedDMS_Core_DMS::filterDocumentLinks($user, $links);
/* Retrieve reverse linked documents */
$revlinks = $document->getReverseDocumentLinks();
$revlinks = SeedDMS_Core_DMS::filterDocumentLinks($user, $revlinks);
$content .= "<td>";
if (file_exists($dms->contentDir . $latestContent->getPath())) {
if($accessop->check_controller_access('Download', array('action'=>'version')))
@ -2097,8 +2104,8 @@ $(document).ready( function() {
$content .= "<small>";
if(count($files))
$content .= count($files)." ".getMLText("linked_files")."<br />";
if(count($links))
$content .= count($links)." ".getMLText("linked_documents")."<br />";
if(count($links) || count($revlinks))
$content .= count($links)."/".count($revlinks)." ".getMLText("linked_documents")."<br />";
if($status["status"] == S_IN_WORKFLOW && $workflowmode == 'advanced') {
$workflowstate = $latestContent->getWorkflowState();
$content .= '<span title="'.getOverallStatusText($status["status"]).': '.$workflow->getName().'">'.$workflowstate->getName().'</span>';

View File

@ -18,6 +18,11 @@
*/
require_once("class.Bootstrap.php");
/**
* Include class to preview documents
*/
require_once("SeedDMS/Preview.php");
/**
* Class which outputs the html page for Categories view
*
@ -46,44 +51,52 @@ $(document).ready( function() {
function info() { /* {{{ */
$dms = $this->params['dms'];
$selcat = $this->params['selcategory'];
$cachedir = $this->params['cachedir'];
$previewwidth = $this->params['previewWidthList'];
$timeout = $this->params['timeout'];
if($selcat) {
$this->contentHeading(getMLText("category_info"));
$documents = $selcat->getDocumentsByCategory();
$c = $selcat->countDocumentsByCategory();
echo "<table class=\"table table-condensed\">\n";
echo "<tr><td>".getMLText('document_count')."</td><td>".(count($documents))."</td></tr>\n";
echo "<tr><td>".getMLText('document_count')."</td><td>".($c)."</td></tr>\n";
echo "</table>";
$documents = $selcat->getDocumentsByCategory(10);
print "<table id=\"viewfolder-table\" class=\"table\">";
print "<thead>\n<tr>\n";
print "<th></th>\n";
print "<th>".getMLText("name")."</th>\n";
print "<th>".getMLText("status")."</th>\n";
print "<th>".getMLText("action")."</th>\n";
print "</tr>\n</thead>\n<tbody>\n";
$previewer = new SeedDMS_Preview_Previewer($cachedir, $previewwidth, $timeout);
foreach($documents as $doc) {
echo $this->documentListRow($doc, $previewer);
}
print "</tbody></table>";
}
} /* }}} */
function actionmenu() { /* {{{ */
$dms = $this->params['dms'];
$user = $this->params['user'];
$selcat = $this->params['selcategory'];
if($selcat && !$selcat->isUsed()) {
?>
<form style="display: inline-block;" method="post" action="../op/op.Categories.php" >
<?php echo createHiddenFieldWithKey('removecategory'); ?>
<input type="hidden" name="categoryid" value="<?php echo $selcat->getID()?>">
<input type="hidden" name="action" value="removecategory">
<button class="btn" type="submit"><i class="icon-remove"></i> <?php echo getMLText("rm_document_category")?></button>
</form>
<?php
}
} /* }}} */
function showCategoryForm($category) { /* {{{ */
?>
<div class="control-group">
<label class="control-label"></label>
<div class="controls">
<?php
if($category) {
if($category->isUsed()) {
?>
<p><?php echo getMLText('category_in_use') ?></p>
<?php
} else {
?>
<form style="display: inline-block;" method="post" action="../op/op.Categories.php" >
<?php echo createHiddenFieldWithKey('removecategory'); ?>
<input type="hidden" name="categoryid" value="<?php echo $category->getID()?>">
<input type="hidden" name="action" value="removecategory">
<button class="btn" type="submit"><i class="icon-remove"></i> <?php echo getMLText("rm_document_category")?></button>
</form>
<?php
}
}
?>
</div>
</div>
<form class="form-horizontal" style="margin-bottom: 0px;" action="../op/op.Categories.php" method="post">
<?php if(!$category) { ?>
<?php echo createHiddenFieldWithKey('addcategory'); ?>
@ -130,12 +143,8 @@ $(document).ready( function() {
?>
<div class="row-fluid">
<div class="span4">
<div class="well">
<form class="form-horizontal">
<div class="control-group">
<label class="control-label" for="login"><?php printMLText("selection");?>:</label>
<div class="controls">
<select id="selector" class="input-xlarge">
<select class="chzn-select" id="selector" class="input-xlarge">
<option value="-1"><?php echo getMLText("choose_category")?>
<option value="0"><?php echo getMLText("new_document_category")?>
<?php
@ -144,10 +153,8 @@ $(document).ready( function() {
}
?>
</select>
</div>
</div>
</form>
</div>
<div class="ajax" style="margin-bottom: 15px;" data-view="Categories" data-action="actionmenu" <?php echo ($selcat ? "data-query=\"categoryid=".$selcat->getID()."\"" : "") ?>></div>
<div class="ajax" data-view="Categories" data-action="info" <?php echo ($selcat ? "data-query=\"categoryid=".$selcat->getID()."\"" : "") ?>></div>
</div>

View File

@ -446,8 +446,10 @@ class SeedDMS_View_DocumentVersionDetail extends SeedDMS_Bootstrap_Style {
}
} else print "<li><img class=\"mimeicon\" src=\"images/icons/".$this->getMimeIcon($file->getFileType())."\" title=\"".htmlspecialchars($file->getMimeType())."\">";
echo "</ul><ul class=\"unstyled actions\">";
if (($document->getAccessMode($user) == M_ALL)||($file->getUserID()==$user->getID()))
if (($document->getAccessMode($user) == M_ALL)||($file->getUserID()==$user->getID())) {
print "<li><a href=\"out.RemoveDocumentFile.php?documentid=".$documentid."&fileid=".$file->getID()."\"><i class=\"icon-remove\"></i>".getMLText("delete")."</a></li>";
print "<li><a href=\"out.EditDocumentFile.php?documentid=".$documentid."&fileid=".$file->getID()."\"><i class=\"icon-edit\"></i>".getMLText("edit")."</a></li>";
}
print "</ul></td>";
print "</tr>";

View File

@ -0,0 +1,92 @@
<?php
/**
* Implementation of EditDocumentFile view
*
* @category DMS
* @package SeedDMS
* @license GPL 2
* @version @version@
* @author Uwe Steinmann <uwe@steinmann.cx>
* @copyright Copyright (C) 2002-2005 Markus Westphal,
* 2006-2008 Malcolm Cowe, 2010 Matteo Lucarelli,
* 2010-2012 Uwe Steinmann
* @version Release: @package_version@
*/
/**
* Include parent class
*/
require_once("class.Bootstrap.php");
/**
* Class which outputs the html page for EditDocumentFile view
*
* @category DMS
* @package SeedDMS
* @author Markus Westphal, Malcolm Cowe, Uwe Steinmann <uwe@steinmann.cx>
* @copyright Copyright (C) 2002-2005 Markus Westphal,
* 2006-2008 Malcolm Cowe, 2010 Matteo Lucarelli,
* 2010-2012 Uwe Steinmann
* @version Release: @package_version@
*/
class SeedDMS_View_EditDocumentFile extends SeedDMS_Bootstrap_Style {
function show() { /* {{{ */
$dms = $this->params['dms'];
$user = $this->params['user'];
$folder = $this->params['folder'];
$document = $this->params['document'];
$file = $this->params['file'];
$this->htmlStartPage(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))));
$this->globalNavigation($folder);
$this->contentStart();
$this->pageNavigation($this->getFolderPathHTML($folder, true, $document), "view_document", $document);
$this->contentHeading(getMLText("edit"));
$this->contentContainerStart();
?>
<form action="../op/op.EditDocumentFile.php" class="form-horizontal" name="form1" method="post">
<?php echo createHiddenFieldWithKey('editdocumentfile'); ?>
<input type="hidden" name="documentid" value="<?php echo $document->getID()?>">
<input type="hidden" name="fileid" value="<?php echo $file->getID()?>">
<div class="control-group">
<label class="control-label"><?php printMLText("version");?>:</label>
<div class="controls"><select name="version" id="version">
<option value=""><?= getMLText('document') ?></option>
<?php
$versions = $document->getContent();
foreach($versions as $version)
echo "<option value=\"".$version->getVersion()."\"".($version->getVersion() == $file->getVersion() ? " selected" : "").">".getMLText('version')." ".$version->getVersion()."</option>";
?>
</select></div>
</div>
<div class="control-group">
<label class="control-label"><?php printMLText("name");?>:</label>
<div class="controls">
<input name="name" type="text" value="<?php print htmlspecialchars($file->getName());?>" />
</div>
</div>
<div class="control-group">
<label class="control-label"><?php printMLText("comment");?>:</label>
<div class="controls">
<textarea name="comment" rows="4" cols="80"><?php print htmlspecialchars($file->getComment());?></textarea>
</div>
</div>
<div class="control-group">
<label class="control-label"><?php printMLText("document_link_public");?>:</label>
<div class="controls">
<input type="checkbox" name="public" value="true"<?php echo ($file->isPublic() ? " checked" : "");?> />
</div>
</div>
<div class="controls">
<button type="submit" class="btn"><i class="icon-save"></i> <?php printMLText("save") ?></button>
</div>
</form>
<?php
$this->contentContainerEnd();
$this->contentEnd();
$this->htmlEndPage();
} /* }}} */
}
?>

View File

@ -147,6 +147,28 @@ $(document).ready( function() {
}
} /* }}} */
function actionmenu() { /* {{{ */
$dms = $this->params['dms'];
$user = $this->params['user'];
$selgroup = $this->params['selgroup'];
if($selgroup) {
?>
<div class="btn-group">
<a class="btn dropdown-toggle" data-toggle="dropdown" href="#">
<?php echo getMLText('action'); ?>
<span class="caret"></span>
</a>
<ul class="dropdown-menu">
<?php
echo '<li><a href="../out/out.RemoveGroup.php?groupid='.$selgroup->getID().'"><i class="icon-remove"></i> '.getMLText("rm_group").'</a><li>';
?>
</ul>
</div>
<?php
}
} /* }}} */
function showGroupForm($group) { /* {{{ */
$dms = $this->params['dms'];
$user = $this->params['user'];
@ -169,17 +191,6 @@ $(document).ready( function() {
}
?>
<?php
if($group && $this->check_access('RemoveGroup')) {
?>
<div class="control-group">
<div class="controls">
<?php echo $this->html_link('RemoveGroup', array('groupid'=>$group->getID()), array('class'=>'btn'), '<i class="icon-remove"></i> '.getMLText("rm_group"), false); ?>
</div>
</div>
<?php
}
?>
<div class="control-group">
<label class="control-label"><?php printMLText("name");?>:</label>
<div class="controls">
@ -282,11 +293,7 @@ $(document).ready( function() {
<div class="row-fluid">
<div class="span4">
<div class="well">
<form class="form-horizontal">
<div class="control-group">
<label class="control-label" for="login"><?php printMLText("selection");?>:</label>
<div class="controls">
<select class="chzn-select" id="selector">
<option value="-1"><?php echo getMLText("choose_group")?></option>
<option value="0"><?php echo getMLText("add_group")?></option>
@ -296,10 +303,9 @@ $(document).ready( function() {
}
?>
</select>
</div>
</div>
</form>
</div>
<div class="ajax" style="margin-bottom: 15px;" data-view="GroupMgr" data-action="actionmenu" <?php echo ($selgroup ? "data-query=\"groupid=".$selgroup->getID()."\"" : "") ?>></div>
<?php if($accessop->check_view_access($this, array('action'=>'info'))) { ?>
<div class="ajax" data-view="GroupMgr" data-action="info" <?php echo ($selgroup ? "data-query=\"groupid=".$selgroup->getID()."\"" : "") ?>></div>
<?php } ?>

View File

@ -789,7 +789,7 @@ if(!is_writeable($settings->_configFilePath)) {
<?php
foreach(array('fulltext', 'preview', 'pdf') as $target) {
?>
<tr ><td><b> <?php printMLText($target."_converters");?></b></td> </tr>
<tr><td><b><?php printMLText($target."_converters");?></b></td></tr>
<?php
foreach($settings->_converters[$target] as $mimetype=>$cmd) {
?>

View File

@ -0,0 +1,85 @@
<?php
/**
* Implementation of TransferDocument view
*
* @category DMS
* @package SeedDMS
* @license GPL 2
* @version @version@
* @author Uwe Steinmann <uwe@steinmann.cx>
* @copyright Copyright (C) 2017 Uwe Steinmann
* @version Release: @package_version@
*/
/**
* Include parent class
*/
require_once("class.Bootstrap.php");
/**
* Class which outputs the html page for TransferDocument view
*
* @category DMS
* @package SeedDMS
* @author Uwe Steinmann <uwe@steinmann.cx>
* @copyright Copyright (C) 2017 Uwe Steinmann
* @version Release: @package_version@
*/
class SeedDMS_View_TransferDocument extends SeedDMS_Bootstrap_Style {
function show() { /* {{{ */
$dms = $this->params['dms'];
$user = $this->params['user'];
$allusers = $this->params['allusers'];
$document = $this->params['document'];
$folder = $this->params['folder'];
$this->htmlStartPage(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))));
$this->globalNavigation($folder);
$this->contentStart();
$this->pageNavigation($this->getFolderPathHTML($folder, true, $document), "view_document", $document);
$this->contentHeading(getMLText("transfer_document"));
$this->contentContainerStart();
?>
<form class="form-horizontal" action="../op/op.TransferDocument.php" name="form1" method="post">
<input type="hidden" name="documentid" value="<?php print $document->getID();?>">
<?php echo createHiddenFieldWithKey('transferdocument'); ?>
<div class="control-group">
<label class="control-label" for="assignTo">
<?php printMLText("transfer_to_user"); ?>:
</label>
<div class="controls">
<select name="userid" class="chzn-select">
<?php
$owner = $document->getOwner();
foreach ($allusers as $currUser) {
if ($currUser->isGuest() || ($currUser->getID() == $owner->getID()))
continue;
print "<option value=\"".$currUser->getID()."\"";
if($folder->getAccessMode($currUser) < M_READ)
print " disabled data-warning=\"".getMLText('transfer_no_read_access')."\"";
elseif($folder->getAccessMode($currUser) < M_READWRITE)
print " data-warning=\"".getMLText('transfer_no_write_access')."\"";
print ">" . htmlspecialchars($currUser->getLogin()." - ".$currUser->getFullName());
}
?>
</select>
</div>
</div>
<div class="control-group">
<div class="controls">
<button type="submit" class="btn"><i class="icon-exchange"></i> <?php printMLText("transfer_document");?></button>
</div>
</div>
</form>
<?php
$this->contentContainerEnd();
$this->contentEnd();
$this->htmlEndPage();
} /* }}} */
}
?>

View File

@ -1600,8 +1600,10 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style {
}
} else print "<li><img class=\"mimeicon\" src=\"images/icons/".$this->getMimeIcon($file->getFileType())."\" title=\"".htmlspecialchars($file->getMimeType())."\">";
echo "</ul><ul class=\"unstyled actions\">";
if (($document->getAccessMode($user) == M_ALL)||($file->getUserID()==$user->getID()))
if (($document->getAccessMode($user) == M_ALL)||($file->getUserID()==$user->getID())) {
print "<li><a href=\"out.RemoveDocumentFile.php?documentid=".$documentid."&fileid=".$file->getID()."\"><i class=\"icon-remove\"></i>".getMLText("delete")."</a></li>";
print "<li><a href=\"out.EditDocumentFile.php?documentid=".$documentid."&fileid=".$file->getID()."\"><i class=\"icon-edit\"></i>".getMLText("edit")."</a></li>";
}
print "</ul></td>";
print "</tr>";