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

This commit is contained in:
Uwe Steinmann 2017-08-03 15:24:45 +02:00
commit 8a545b51e8
97 changed files with 4548 additions and 614 deletions

View File

@ -8,11 +8,19 @@
--------------------------------------------------------------------------------
Changes in version 6.0.1
--------------------------------------------------------------------------------
- check if user has access on document and is not disabled if set as
receiver, revisor
- check if group has members if set as reviewer, approver, receiver, revisor
- fix bug in notification of approver after successful review
- call hook 'rawcontent' when downloading transmittal list or search content
- speed up list of locked documents on MyDocuments page
- sql queries and execution times can be written to file in database layer
- add document check for docs in revision and missing access rights of revisor
- add document check for docs requiring receptions but user lacks access right
- fix Acl manager when using pgsql
- list all open tasks of user in user info of user manager
- owner of document may see review/approval/receipt/revision log
- fix sending mails to reviewer/approvers after check in
--------------------------------------------------------------------------------
Changes in version 6.0.0
@ -38,6 +46,22 @@
- add document list which can be exported as an archive
- search results can be exported
--------------------------------------------------------------------------------
Changes in version 5.1.3
--------------------------------------------------------------------------------
- add link to search for attribute value in attribute mgr
- fix output of validation errors in attribute mgr
- check if user has access on document and is not disabled if set as
reviewer, approver
- notifications are only send to none disabled users
- nicer layout in user manager, group buttons, more information
- merged changes from 5.0.13
- show number of users where the select user is a mandatory reviewer/approver of
- fix upload of attachments
- documents, folders, files, events can be moved to a new user
- do not show quota information in user manager if quotas are turn off
- files in drop folder can be listed in main menu
--------------------------------------------------------------------------------
Changes in version 5.1.2
--------------------------------------------------------------------------------
@ -63,6 +87,11 @@
- added support for postgresql
- document attachments can linked to a version and be public or hidden
--------------------------------------------------------------------------------
Changes in version 5.0.13
--------------------------------------------------------------------------------
- merged changes from 4.3.36
--------------------------------------------------------------------------------
Changes in version 5.0.12
--------------------------------------------------------------------------------
@ -156,6 +185,23 @@
- add .xml to online file types by default
- add home folder for users
--------------------------------------------------------------------------------
Changes in version 4.3.36
--------------------------------------------------------------------------------
- mark disabled users in user list and substitute user list
- if expandFolderTree is set to hidden the tree actually is hidden (partially
closes #312)
- fix sql statement for creating temp. tables (sqlite)
- remove empty lines at end of view/bootstrap/class.*.php files (Closes #329)
- make sure contentDir ends with DIRECTORY_SEPARATOR (Closes #323)
- minor improvements of installation
- better checking in out/*.php for allowed operation (e.g. EditOnline,
RemoveVersion, SetReviewersApprovers, ...)
- SetReviewersApprovers checks for mandatory reviewers/approvers
- reviewers/approvers can only be modified by users with unrestricted access
and as long as no reviewer/approver has reviewed/approved the document
- use only svg icons for mimetypes
--------------------------------------------------------------------------------
Changes in version 4.3.35
--------------------------------------------------------------------------------

View File

@ -786,6 +786,7 @@ class SeedDMS_Core_DMS {
/* The following statement retrieves the status of the last version of all
* documents. It must be restricted by further where clauses.
*/
/*
$queryStr = "SELECT `tblDocuments`.*, `tblDocumentLocks`.`userID` as `lockUser`, ".
"`tblDocumentContent`.`version`, `tblDocumentStatus`.*, `tblDocumentStatusLog`.`status`, ".
"`tblDocumentStatusLog`.`comment` AS `statusComment`, `tblDocumentStatusLog`.`date` as `statusDate`, ".
@ -801,9 +802,33 @@ class SeedDMS_Core_DMS {
"LEFT JOIN `tblUsers` AS `sTbl` on `sTbl`.`id` = `tblDocumentStatusLog`.`userID` ".
"WHERE `ttstatid`.`maxLogID`=`tblDocumentStatusLog`.`statusLogID` ".
"AND `ttcontentid`.`maxVersion` = `tblDocumentContent`.`version` ";
*/
/* New sql statement which retrieves all documents, its latest version and
* status, the owner and user initiating the latest status.
* It doesn't need the where clause anymore. Hence the statement could be
* extended with further left joins.
*/
$selectStr = "SELECT `tblDocuments`.*, `tblDocumentLocks`.`userID` as `lockUser`, ".
"`tblDocumentContent`.`version`, `tblDocumentStatus`.*, `tblDocumentStatusLog`.`status`, ".
"`tblDocumentStatusLog`.`comment` AS `statusComment`, `tblDocumentStatusLog`.`date` as `statusDate`, ".
"`tblDocumentStatusLog`.`userID`, `oTbl`.`fullName` AS `ownerName`, `sTbl`.`fullName` AS `statusName` ";
$queryStr =
"FROM `ttcontentid` ".
"LEFT JOIN `tblDocuments` ON `tblDocuments`.`id` = `ttcontentid`.`document` ".
"LEFT JOIN `tblDocumentContent` ON `tblDocumentContent`.`document` = `ttcontentid`.`document` AND `tblDocumentContent`.`version` = `ttcontentid`.`maxVersion` ".
"LEFT JOIN `tblDocumentStatus` ON `tblDocumentStatus`.`documentID`=`ttcontentid`.`document` AND `tblDocumentStatus`.`version`=`ttcontentid`.`maxVersion` ".
"LEFT JOIN `ttstatid` ON `ttstatid`.`statusID` = `tblDocumentStatus`.`statusID` ".
"LEFT JOIN `tblDocumentStatusLog` ON `ttstatid`.`statusID` = `tblDocumentStatusLog`.`statusID` AND `ttstatid`.`maxLogID` = `tblDocumentStatusLog`.`statusLogID` ".
"LEFT JOIN `tblDocumentLocks` ON `ttcontentid`.`document`=`tblDocumentLocks`.`document` ".
"LEFT JOIN `tblUsers` `oTbl` ON `oTbl`.`id` = `tblDocuments`.`owner` ".
"LEFT JOIN `tblUsers` `sTbl` ON `sTbl`.`id` = `tblDocumentStatusLog`.`userID` ";
// echo $queryStr;
switch($listtype) {
case 'AppRevByMe': // Documents I have to review/approve {{{
$queryStr .= "WHERE 1=1 ";
$user = $param1;
// Get document list for the current user.
$reviewStatus = $user->getReviewStatus();
@ -847,6 +872,9 @@ class SeedDMS_Core_DMS {
}
break; // }}}
case 'ReviewByMe': // Documents I have to review {{{
if (!$this->db->createTemporaryTable("ttreviewid")) {
return false;
}
$user = $param1;
$orderby = $param3;
if($param4 == 'desc')
@ -854,6 +882,33 @@ class SeedDMS_Core_DMS {
else
$orderdir = 'ASC';
$groups = array();
$tmp = $user->getGroups();
foreach($tmp as $group)
$groups[] = $group->getID();
$selectStr .= ", `tblDocumentReviewLog`.`date` as `duedate` ";
$queryStr .=
"LEFT JOIN `tblDocumentReviewers` on `ttcontentid`.`document`=`tblDocumentReviewers`.`documentID` AND `ttcontentid`.`maxVersion`=`tblDocumentReviewers`.`version` ".
"LEFT JOIN `ttreviewid` ON `ttreviewid`.`reviewID` = `tblDocumentReviewers`.`reviewID` ".
"LEFT JOIN `tblDocumentReviewLog` ON `tblDocumentReviewLog`.`reviewLogID`=`ttreviewid`.`maxLogID` ";
if(1) {
$queryStr .= "WHERE (`tblDocumentReviewers`.`type` = 0 AND `tblDocumentReviewers`.`required` = ".$user->getID()." ";
if($groups)
$queryStr .= "OR `tblDocumentReviewers`.`type` = 1 AND `tblDocumentReviewers`.`required` IN (".implode(',', $groups).") ";
$queryStr .= ") ";
$queryStr .= "AND `tblDocumentStatusLog`.`status` IN (".S_DRAFT_REV.", ".S_EXPIRED.") ";
if(!$param2)
$queryStr .= " AND `tblDocumentReviewLog`.`status` = 0 ";
if ($orderby=='e') $queryStr .= "ORDER BY `expires`";
else if ($orderby=='u') $queryStr .= "ORDER BY `statusDate`";
else if ($orderby=='s') $queryStr .= "ORDER BY `status`";
else $queryStr .= "ORDER BY `name`";
$queryStr .= " ".$orderdir;
} else {
$queryStr .= "WHERE 1=1 ";
// Get document list for the current user.
$reviewStatus = $user->getReviewStatus();
@ -889,8 +944,12 @@ class SeedDMS_Core_DMS {
} else {
$queryStr = '';
}
}
break; // }}}
case 'ApproveByMe': // Documents I have to approve {{{
if (!$this->db->createTemporaryTable("ttapproveid")) {
return false;
}
$user = $param1;
$orderby = $param3;
if($param4 == 'desc')
@ -898,6 +957,33 @@ class SeedDMS_Core_DMS {
else
$orderdir = 'ASC';
$groups = array();
$tmp = $user->getGroups();
foreach($tmp as $group)
$groups[] = $group->getID();
$selectStr .= ", `tblDocumentApproveLog`.`date` as `duedate` ";
$queryStr .=
"LEFT JOIN `tblDocumentApprovers` on `ttcontentid`.`document`=`tblDocumentApprovers`.`documentID` AND `ttcontentid`.`maxVersion`=`tblDocumentApprovers`.`version` ".
"LEFT JOIN `ttapproveid` ON `ttapproveid`.`approveID` = `tblDocumentApprovers`.`approveID` ".
"LEFT JOIN `tblDocumentApproveLog` ON `tblDocumentApproveLog`.`approveLogID`=`ttapproveid`.`maxLogID` ";
if(1) {
$queryStr .= "WHERE (`tblDocumentApprovers`.`type` = 0 AND `tblDocumentApprovers`.`required` = ".$user->getID()." ";
if($groups)
$queryStr .= "OR `tblDocumentApprovers`.`type` = 1 AND `tblDocumentApprovers`.`required` IN (".implode(',', $groups).")";
$queryStr .= ") ";
$queryStr .= "AND `tblDocumentStatusLog`.`status` IN (".S_DRAFT_APP.", ".S_EXPIRED.") ";
if(!$param2)
$queryStr .= " AND `tblDocumentApproveLog`.`status` = 0 ";
if ($orderby=='e') $queryStr .= "ORDER BY `expires`";
else if ($orderby=='u') $queryStr .= "ORDER BY `statusDate`";
else if ($orderby=='s') $queryStr .= "ORDER BY `status`";
else $queryStr .= "ORDER BY `name`";
$queryStr .= " ".$orderdir;
} else {
$queryStr .= "WHERE 1=1 ";
// Get document list for the current user.
$approvalStatus = $user->getApprovalStatus();
@ -933,9 +1019,46 @@ class SeedDMS_Core_DMS {
} else {
$queryStr = '';
}
}
break; // }}}
case 'ReceiptByMe': // Documents I have to receipt {{{
if (!$this->db->createTemporaryTable("ttreceiptid")) {
return false;
}
$user = $param1;
$orderby = $param3;
if($param4 == 'desc')
$orderdir = 'DESC';
else
$orderdir = 'ASC';
$groups = array();
$tmp = $user->getGroups();
foreach($tmp as $group)
$groups[] = $group->getID();
$selectStr .= ", `tblDocumentReceiptLog`.`date` as `duedate` ";
$queryStr .=
"LEFT JOIN `tblDocumentRecipients` on `ttcontentid`.`document`=`tblDocumentRecipients`.`documentID` AND `ttcontentid`.`maxVersion`=`tblDocumentRecipients`.`version` ".
"LEFT JOIN `ttreceiptid` ON `ttreceiptid`.`receiptID` = `tblDocumentRecipients`.`receiptID` ".
"LEFT JOIN `tblDocumentReceiptLog` ON `tblDocumentReceiptLog`.`receiptLogID`=`ttreceiptid`.`maxLogID` ";
if(1) {
$queryStr .= "WHERE (`tblDocumentRecipients`.`type` = 0 AND `tblDocumentRecipients`.`required` = ".$user->getID()." ";
/* Checking for groups slows down the statement extremly on sqlite */
if($groups)
$queryStr .= "OR `tblDocumentRecipients`.`type` = 1 AND `tblDocumentRecipients`.`required` IN (".implode(',', $groups).")";
$queryStr .= ") ";
if(!$param2)
$queryStr .= " AND `tblDocumentReceiptLog`.`status` = 0 ";
if ($orderby=='e') $queryStr .= "ORDER BY `expires`";
else if ($orderby=='u') $queryStr .= "ORDER BY `statusDate`";
else if ($orderby=='s') $queryStr .= "ORDER BY `status`";
else $queryStr .= "ORDER BY `name`";
$queryStr .= " ".$orderdir;
} else {
$queryStr .= "WHERE 1=1 ";
// Get document list for the current user.
$receiptStatus = $user->getReceiptStatus();
@ -960,13 +1083,22 @@ class SeedDMS_Core_DMS {
}
if (strlen($docCSV)>0) {
$queryStr .= "AND `tblDocuments`.`id` IN (" . $docCSV . ") ".
"ORDER BY `statusDate` DESC";
$queryStr .= "AND `tblDocuments`.`id` IN (" . $docCSV . ") ";
// $queryStr .= "ORDER BY `statusDate` DESC";
if ($orderby=='e') $queryStr .= "ORDER BY `expires`";
else if ($orderby=='u') $queryStr .= "ORDER BY `statusDate`";
else if ($orderby=='s') $queryStr .= "ORDER BY `status`";
else $queryStr .= "ORDER BY `name`";
$queryStr .= " ".$orderdir;
} else {
$queryStr = '';
}
}
break; // }}}
case 'ReviseByMe': // Documents I have to receipt {{{
if (!$this->db->createTemporaryTable("ttrevisionid")) {
return false;
}
$user = $param1;
$orderby = $param3;
if($param4 == 'desc')
@ -974,6 +1106,32 @@ class SeedDMS_Core_DMS {
else
$orderdir = 'ASC';
$groups = array();
$tmp = $user->getGroups();
foreach($tmp as $group)
$groups[] = $group->getID();
$selectStr .= ", `tblDocumentRevisionLog`.`date` as `duedate` ";
$queryStr .=
"LEFT JOIN `tblDocumentRevisors` on `ttcontentid`.`document`=`tblDocumentRevisors`.`documentID` AND `ttcontentid`.`maxVersion`=`tblDocumentRevisors`.`version` ".
"LEFT JOIN `ttrevisionid` ON `ttrevisionid`.`revisionID` = `tblDocumentRevisors`.`revisionID` ".
"LEFT JOIN `tblDocumentRevisionLog` ON `tblDocumentRevisionLog`.`revisionLogID`=`ttrevisionid`.`maxLogID` ";
if(1) {
$queryStr .= "WHERE (`tblDocumentRevisors`.`type` = 0 AND `tblDocumentRevisors`.`required` = ".$user->getID()." ";
if($groups)
$queryStr .= "OR `tblDocumentRevisors`.`type` = 1 AND `tblDocumentRevisors`.`required` IN (".implode(',', $groups).")";
$queryStr .= ") ";
if(!$param2)
$queryStr .= " AND `tblDocumentRevisionLog`.`status` = 0 ";
if ($orderby=='e') $queryStr .= "ORDER BY `expires`";
else if ($orderby=='u') $queryStr .= "ORDER BY `statusDate`";
else if ($orderby=='s') $queryStr .= "ORDER BY `status`";
else $queryStr .= "ORDER BY `name`";
$queryStr .= " ".$orderdir;
} else {
$queryStr .= "WHERE 1=1 ";
// Get document list for the current user.
$revisionStatus = $user->getRevisionStatus();
@ -1006,8 +1164,11 @@ class SeedDMS_Core_DMS {
} else {
$queryStr = '';
}
}
break; // }}}
case 'WorkflowByMe': // Documents I to trigger in Worklflow {{{
$queryStr .= "WHERE 1=1 ";
$user = $param1;
// Get document list for the current user.
$workflowStatus = $user->getWorkflowStatus();
@ -1040,6 +1201,8 @@ class SeedDMS_Core_DMS {
}
break; // }}}
case 'AppRevOwner': // Documents waiting for review/approval/revision I'm owning {{{
$queryStr .= "WHERE 1=1 ";
$user = $param1;
$orderby = $param3;
if($param4 == 'desc')
@ -1057,7 +1220,9 @@ class SeedDMS_Core_DMS {
// "AND `tblDocumentStatusLog`.`status` IN (".S_DRAFT_REV.", ".S_DRAFT_APP.") ".
// "ORDER BY `statusDate` DESC";
break; // }}}
case 'ReceiveOwner': // Documents waiting for reception I'm owning {{{
case 'ReceiveOwner': // Documents having a reception I'm owning {{{
$queryStr .= "WHERE 1=1 ";
$user = $param1;
$orderby = $param3;
if($param4 == 'desc')
@ -1065,7 +1230,9 @@ class SeedDMS_Core_DMS {
else
$orderdir = 'ASC';
$qs = 'SELECT DISTINCT `documentID` FROM `tblDocumentRecipients` LEFT JOIN `ttcontentid` ON `ttcontentid`.`maxVersion` = `tblDocumentRecipients`.`version` AND `ttcontentid`.`document` = `tblDocumentRecipients`.`documentID`';
// $qs = 'SELECT DISTINCT `documentID` FROM `tblDocumentRecipients` LEFT JOIN `ttcontentid` ON `ttcontentid`.`maxVersion` = `tblDocumentRecipients`.`version` AND `ttcontentid`.`document` = `tblDocumentRecipients`.`documentID`';
// sql statement without older versions of a document
$qs = 'SELECT DISTINCT `document` as `documentID` FROM `ttcontentid` a LEFT JOIN `tblDocumentRecipients` b on a.`document`=b.`documentID` AND a.`maxVersion`=b.`version` WHERE b.`receiptID` IS NOT NULL';
$ra = $this->db->getResultArray($qs);
if (is_bool($ra) && !$ra) {
return false;
@ -1088,6 +1255,8 @@ class SeedDMS_Core_DMS {
}
break; // }}}
case 'RejectOwner': // Documents that has been rejected and I'm owning {{{
$queryStr .= "WHERE 1=1 ";
$user = $param1;
$orderby = $param3;
if($param4 == 'desc')
@ -1104,6 +1273,8 @@ class SeedDMS_Core_DMS {
$queryStr .= " ".$orderdir;
break; // }}}
case 'LockedByMe': // Documents locked by me {{{
$queryStr .= "WHERE 1=1 ";
$user = $param1;
$orderby = $param3;
if($param4 == 'desc')
@ -1133,12 +1304,16 @@ class SeedDMS_Core_DMS {
}
break; // }}}
case 'WorkflowOwner': // Documents waiting for workflow trigger I'm owning {{{
$queryStr .= "WHERE 1=1 ";
$user = $param1;
$queryStr .= "AND `tblDocuments`.`owner` = '".$user->getID()."' ".
"AND `tblDocumentStatusLog`.`status` IN (".S_IN_WORKFLOW.") ".
"ORDER BY `statusDate` DESC";
break; // }}}
case 'MyDocs': // Documents owned by me {{{
$queryStr .= "WHERE 1=1 ";
$user = $param1;
$orderby = $param3;
if($param4 == 'desc')
@ -1153,6 +1328,8 @@ class SeedDMS_Core_DMS {
$queryStr .= " ".$orderdir;
break; // }}}
case 'CheckedOutByMe': // Documents I have checked out {{{
$queryStr .= "WHERE 1=1 ";
$user = $param1;
$orderby = $param3;
if($param4 == 'desc')
@ -1184,7 +1361,7 @@ class SeedDMS_Core_DMS {
}
if($queryStr) {
$resArr = $this->db->getResultArray($queryStr);
$resArr = $this->db->getResultArray($selectStr.$queryStr);
if (is_bool($resArr) && !$resArr) {
return false;
}
@ -2952,6 +3129,40 @@ class SeedDMS_Core_DMS {
} /* }}} */
/**
* Returns a list of reviews, approvals which are not linked
* to a user, group anymore
*
* This method is for finding reviews or approvals whose user
* or group was deleted and not just removed from the process.
*/
function getProcessWithoutUserGroup($process, $usergroup) { /* {{{ */
switch($process) {
case 'review':
$queryStr = "SELECT a.*, b.`name` FROM `tblDocumentReviewers`";
break;
case 'approval':
$queryStr = "SELECT a.*, b.`name` FROM `tblDocumentApprovers`";
break;
case 'receipt':
$queryStr = "SELECT a.*, b.`name` FROM `tblDocumentRecipients`";
break;
case 'revision':
$queryStr = "SELECT a.*, b.`name` FROM `tblDocumentRevisors`";
break;
}
$queryStr .= " a LEFT JOIN `tblDocuments` b ON a.`documentID`=b.`id` where";
switch($usergroup) {
case 'user':
$queryStr .= " a.`type`=0 and a.`required` not in (select `id` from `tblUsers`) ORDER by b.`id`";
break;
case 'group':
$queryStr .= " a.`type`=1 and a.`required` not in (select `id` from `tblGroups`) ORDER by b.`id`";
break;
}
return $this->db->getResultArray($queryStr);
} /* }}} */
/**
* Returns statitical information
*

View File

@ -706,6 +706,9 @@ class SeedDMS_Core_Document extends SeedDMS_Core_Object { /* {{{ */
* The method will update the document status log database table
* if needed.
*
* FIXME: This method does not check if there are any revisors left. Even
* if all revisors have been removed, it will still start the revision workflow!
*
* @param object $user user requesting the possible automatic change
* @param string $next next date for review
* @return boolean true if status has changed
@ -716,6 +719,22 @@ class SeedDMS_Core_Document extends SeedDMS_Core_Object { /* {{{ */
$st=$lc->getStatus();
if($st["status"] == S_RELEASED) {
/* First check if there are any revisors left who need to revise */
$pendingRevision=false;
unset($this->_revisionStatus); // force to be reloaded from DB
$revisionStatus=$lc->getRevisionStatus();
if (is_array($revisionStatus) && count($revisionStatus)>0) {
foreach ($revisionStatus as $a){
if ($a["status"]==S_LOG_SLEEPING || $a["status"]==S_LOG_SLEEPING){
$pendingRevision=true;
break;
}
}
}
if(!$pendingRevision)
return false;
/* Second check if revision is already due */
if($lc->getRevisionDate() && $lc->getRevisionDate() <= date('Y-m-d 00:00:00')) {
if($lc->startRevision($user, 'Automatic start of revision workflow')) {
if($next) {
@ -1310,10 +1329,15 @@ class SeedDMS_Core_Document extends SeedDMS_Core_Object { /* {{{ */
$this->_notifyList = array("groups" => array(), "users" => array());
foreach ($resArr as $row)
{
if ($row["userID"] != -1)
array_push($this->_notifyList["users"], $this->_dms->getUser($row["userID"]) );
else //if ($row["groupID"] != -1)
array_push($this->_notifyList["groups"], $this->_dms->getGroup($row["groupID"]) );
if ($row["userID"] != -1) {
$u = $this->_dms->getUser($row["userID"]);
if($u && !$u->isDisabled())
array_push($this->_notifyList["users"], $u);
} else { //if ($row["groupID"] != -1)
$g = $this->_dms->getGroup($row["groupID"]);
if($g)
array_push($this->_notifyList["groups"], $g);
}
}
}
return $this->_notifyList;
@ -3780,7 +3804,7 @@ class SeedDMS_Core_DocumentContent extends SeedDMS_Core_Object { /* {{{ */
* Rewrites the complete revision log
*
* Attention: this function is highly dangerous.
* It removes an existing receipt log and rewrites it.
* It removes an existing revision log and rewrites it.
* This method was added for importing an xml dump.
*
* @param array $revisionlog new status log with the newest log entry first.
@ -4395,10 +4419,10 @@ class SeedDMS_Core_DocumentContent extends SeedDMS_Core_Object { /* {{{ */
*
* This function adds a user as a revisor but doesn't start the
* revision workflow by default. This behaviour is different from all
* other workflows (approval, review, receipt), because it doesn't add
* the initial entry in the revision log, which starts the workflow.
* It just adds the revisors to the content. The workflow is started
* at a later point in time by adding the first entry in the revision log.
* other workflows (approval, review, receipt), because it adds
* an initial entry in the revision log, which marks the revision as
* 'sleeping'. The workflow is started at a later point in time by adding
* the second entry in the revision log which puts it into 'waiting'.
*
* @param object $user user to be added as a revisor
* @param object $requestUser user requesting the addition
@ -4705,7 +4729,7 @@ class SeedDMS_Core_DocumentContent extends SeedDMS_Core_Object { /* {{{ */
}
$queryStr = "INSERT INTO `tblDocumentReviewLog` (`reviewID`, `status`, `comment`, `date`, `userID`) ".
"VALUES ('". $indstatus["reviewID"] ."', '-2', ".$db->qstr($msg).", ".$db->getCurrentDatetime().", '". $requestUser->getID() ."')";
"VALUES ('". $indstatus["reviewID"] ."', '".S_LOG_USER_REMOVED."', ".$db->qstr($msg).", ".$db->getCurrentDatetime().", '". $requestUser->getID() ."')";
$res = $db->getResult($queryStr);
if (is_bool($res) && !$res) {
return -1;
@ -4736,7 +4760,7 @@ class SeedDMS_Core_DocumentContent extends SeedDMS_Core_Object { /* {{{ */
}
$queryStr = "INSERT INTO `tblDocumentReviewLog` (`reviewID`, `status`, `comment`, `date`, `userID`) ".
"VALUES ('". $reviewStatus[0]["reviewID"] ."', '-2', ".$db->qstr($msg).", ".$db->getCurrentDatetime().", '". $requestUser->getID() ."')";
"VALUES ('". $reviewStatus[0]["reviewID"] ."', '".S_LOG_USER_REMOVED."', ".$db->qstr($msg).", ".$db->getCurrentDatetime().", '". $requestUser->getID() ."')";
$res = $db->getResult($queryStr);
if (is_bool($res) && !$res) {
return -1;
@ -4768,7 +4792,7 @@ class SeedDMS_Core_DocumentContent extends SeedDMS_Core_Object { /* {{{ */
}
$queryStr = "INSERT INTO `tblDocumentApproveLog` (`approveID`, `status`, `comment`, `date`, `userID`) ".
"VALUES ('". $indstatus["approveID"] ."', '-2', ".$db->qstr($msg).", ".$db->getCurrentDatetime().", '". $requestUser->getID() ."')";
"VALUES ('". $indstatus["approveID"] ."', '".S_LOG_USER_REMOVED."', ".$db->qstr($msg).", ".$db->getCurrentDatetime().", '". $requestUser->getID() ."')";
$res = $db->getResult($queryStr);
if (is_bool($res) && !$res) {
return -1;
@ -4799,7 +4823,7 @@ class SeedDMS_Core_DocumentContent extends SeedDMS_Core_Object { /* {{{ */
}
$queryStr = "INSERT INTO `tblDocumentApproveLog` (`approveID`, `status`, `comment`, `date`, `userID`) ".
"VALUES ('". $approvalStatus[0]["approveID"] ."', '-2', ".$db->qstr($msg).", ".$db->getCurrentDatetime().", '". $requestUser->getID() ."')";
"VALUES ('". $approvalStatus[0]["approveID"] ."', '".S_LOG_USER_REMOVED."', ".$db->qstr($msg).", ".$db->getCurrentDatetime().", '". $requestUser->getID() ."')";
$res = $db->getResult($queryStr);
if (is_bool($res) && !$res) {
return -1;
@ -4808,7 +4832,7 @@ class SeedDMS_Core_DocumentContent extends SeedDMS_Core_Object { /* {{{ */
return 0;
} /* }}} */
function delIndRecipient($user, $requestUser) { /* {{{ */
function delIndRecipient($user, $requestUser, $msg='') { /* {{{ */
$db = $this->_document->_dms->getDB();
$userID = $user->getID();
@ -4831,7 +4855,7 @@ class SeedDMS_Core_DocumentContent extends SeedDMS_Core_Object { /* {{{ */
}
$queryStr = "INSERT INTO `tblDocumentReceiptLog` (`receiptID`, `status`, `comment`, `date`, `userID`) ".
"VALUES ('". $indstatus["receiptID"] ."', '-2', '', ".$db->getCurrentDatetime().", '". $requestUser->getID() ."')";
"VALUES ('". $indstatus["receiptID"] ."', '".S_LOG_USER_REMOVED."', ".$db->qstr($msg).", ".$db->getCurrentDatetime().", '". $requestUser->getID() ."')";
$res = $db->getResult($queryStr);
if (is_bool($res) && !$res) {
return -1;
@ -4840,7 +4864,7 @@ class SeedDMS_Core_DocumentContent extends SeedDMS_Core_Object { /* {{{ */
return 0;
} /* }}} */
function delGrpRecipient($group, $requestUser) { /* {{{ */
function delGrpRecipient($group, $requestUser, $msg='') { /* {{{ */
$db = $this->_document->_dms->getDB();
$groupID = $group->getID();
@ -4863,7 +4887,7 @@ class SeedDMS_Core_DocumentContent extends SeedDMS_Core_Object { /* {{{ */
}
$queryStr = "INSERT INTO `tblDocumentReceiptLog` (`receiptID`, `status`, `comment`, `date`, `userID`) ".
"VALUES ('". $status["receiptID"] ."', '-2', '', ".$db->getCurrentDatetime().", '". $requestUser->getID() ."')";
"VALUES ('". $status["receiptID"] ."', '".S_LOG_USER_REMOVED."', ".$db->qstr($msg).", ".$db->getCurrentDatetime().", '". $requestUser->getID() ."')";
$res = $db->getResult($queryStr);
if (is_bool($res) && !$res) {
return -1;

View File

@ -1251,10 +1251,15 @@ class SeedDMS_Core_Folder extends SeedDMS_Core_Object {
$this->_notifyList = array("groups" => array(), "users" => array());
foreach ($resArr as $row)
{
if ($row["userID"] != -1)
array_push($this->_notifyList["users"], $this->_dms->getUser($row["userID"]) );
else //if ($row["groupID"] != -1)
array_push($this->_notifyList["groups"], $this->_dms->getGroup($row["groupID"]) );
if ($row["userID"] != -1) {
$u = $this->_dms->getUser($row["userID"]);
if($u && !$u->isDisabled())
array_push($this->_notifyList["users"], $u);
} else {//if ($row["groupID"] != -1)
$g = $this->_dms->getGroup($row["groupID"]);
if($g)
array_push($this->_notifyList["groups"], $g);
}
}
}
return $this->_notifyList;

View File

@ -743,7 +743,208 @@ class SeedDMS_Core_User { /* {{{ */
} /* }}} */
/**
* Remove the user and also remove all its keywords, notifies, etc.
* Remove user from all processes
*
* This method adds another log entry to the reviews and approvals
* which indicates the user has been deleted from the process. By default it will
* do so for each review/approval regardless of its current state. So even
* reviews/approvals already processed by the user will be added the log
* entry. Only if the last log entry was a removal already, it will not be
* added a second time.
*
* @param object $user the user doing the removal (needed for entry in
* review and approve log).
* @param array $states remove user only from reviews/approvals in one of the states
* If passing array(0), the method will operate on reviews/approval which
* has not been touched.
* @return boolean true on success or false in case of an error
*/
private function __removeFromProcesses($user, $states = array()) { /* {{{ */
$db = $this->_dms->getDB();
$reviewStatus = $this->getReviewStatus();
foreach ($reviewStatus["indstatus"] as $ri) {
if($ri['status'] != -2 && (!isset($states['review']) || in_array($ri['status'], $states['review']))) {
$queryStr = "INSERT INTO `tblDocumentReviewLog` (`reviewID`, `status`, `comment`, `date`, `userID`) ".
"VALUES ('". $ri["reviewID"] ."', '-2', 'Reviewer removed from process', ".$db->getCurrentDatetime().", '". $user->getID() ."')";
$res=$db->getResult($queryStr);
if(!$res) {
return false;
}
}
}
$approvalStatus = $this->getApprovalStatus();
foreach ($approvalStatus["indstatus"] as $ai) {
if($ai['status'] != -2 && (!isset($states['approval']) || in_array($ai['status'], $states['approval']))) {
$queryStr = "INSERT INTO `tblDocumentApproveLog` (`approveID`, `status`, `comment`, `date`, `userID`) ".
"VALUES ('". $ai["approveID"] ."', '-2', 'Approver removed from process', ".$db->getCurrentDatetime().", '". $user->getID() ."')";
$res=$db->getResult($queryStr);
if(!$res) {
return false;
}
}
}
$receiptStatus = $this->getReceiptStatus();
foreach ($receiptStatus["indstatus"] as $ri) {
if($ri['status'] != -2 && (!isset($states['receipt']) || in_array($ri['status'], $states['receipt']))) {
$queryStr = "INSERT INTO `tblDocumentReceiptLog` (`receiptID`, `status`, `comment`, `date`, `userID`) ".
"VALUES ('". $ri["receiptID"] ."', '-2', 'Recipient removed from process', ".$db->getCurrentDatetime().", '". $user->getID() ."')";
$res=$db->getResult($queryStr);
if(!$res) {
return false;
}
}
}
$revisionStatus = $this->getRevisionStatus();
foreach ($revisionStatus["indstatus"] as $ri) {
if($ri['status'] != -2 && (!isset($states['revision']) || in_array($ri['status'], $states['revision']))) {
$queryStr = "INSERT INTO `tblDocumentRevisionLog` (`revisionID`, `status`, `comment`, `date`, `userID`) ".
"VALUES ('". $ri["revisionID"] ."', '-2', 'Revisor removed from process', ".$db->getCurrentDatetime().", '". $user->getID() ."')";
$res=$db->getResult($queryStr);
if(!$res) {
return false;
}
}
}
return true;
} /* }}} */
/**
* Remove user from all processes
*
* This includes review, approval and workflow
*
* @param object $user the user doing the removal (needed for entry in
* review and approve log).
* @param array $states remove user only from reviews/approvals in one of the states
* @return boolean true on success or false in case of an error
*/
public function removeFromProcesses($user, $states=array()) { /* {{{ */
$db = $this->_dms->getDB();
$db->startTransaction();
if(!$this->__removeFromProcesses($user, $states)) {
$db->rollbackTransaction();
return false;
}
$db->commitTransaction();
return true;
} /* }}} */
/**
* Transfer documents and folders to another user
*
* @param object $assignToUser the user who is new owner of folders and
* documents which previously were owned by the delete user.
* @return boolean true on success or false in case of an error
*/
private function __transferDocumentsFolders($assignToUser) { /* {{{ */
$db = $this->_dms->getDB();
if(!$assignToUser)
return false;
/* Assign documents of the removed user to the given user */
$queryStr = "UPDATE `tblFolders` SET `owner` = " . $assignToUser->getID() . " WHERE `owner` = " . $this->_id;
if (!$db->getResult($queryStr)) {
return false;
}
$queryStr = "UPDATE `tblDocuments` SET `owner` = " . $assignToUser->getID() . " WHERE `owner` = " . $this->_id;
if (!$db->getResult($queryStr)) {
return false;
}
$queryStr = "UPDATE `tblDocumentContent` SET `createdBy` = " . $assignToUser->getID() . " WHERE `createdBy` = " . $this->_id;
if (!$db->getResult($queryStr)) {
return false;
}
// ... but keep public links
$queryStr = "UPDATE `tblDocumentLinks` SET `userID` = " . $assignToUser->getID() . " WHERE `userID` = " . $this->_id;
if (!$db->getResult($queryStr)) {
return false;
}
// set administrator for deleted user's attachments
$queryStr = "UPDATE `tblDocumentFiles` SET `userID` = " . $assignToUser->getID() . " WHERE `userID` = " . $this->_id;
if (!$db->getResult($queryStr)) {
return false;
}
return true;
} /* }}} */
/**
* Transfer documents and folders to another user
*
* @param object $assignToUser the user who is new owner of folders and
* documents which previously were owned by the delete user.
* @return boolean true on success or false in case of an error
*/
public function transferDocumentsFolders($assignToUser) { /* {{{ */
$db = $this->_dms->getDB();
if($assignToUser->getID() == $this->_id)
return true;
$db->startTransaction();
if(!$this->__transferDocumentsFolders($assignToUser)) {
$db->rollbackTransaction();
return false;
}
$db->commitTransaction();
return true;
} /* }}} */
/**
* Transfer events to another user
*
* @param object $assignToUser the user who is new owner of events
* @return boolean true on success or false in case of an error
*/
private function __transferEvents($assignToUser) { /* {{{ */
$db = $this->_dms->getDB();
if(!$assignToUser)
return false;
// set new owner of events
$queryStr = "UPDATE `tblEvents` SET `userID` = " . $assignToUser->getID() . " WHERE `userID` = " . $this->_id;
if (!$db->getResult($queryStr)) {
return false;
}
return true;
} /* }}} */
/**
* Transfer events to another user
*
* @param object $assignToUser the user who is new owner of events
* @return boolean true on success or false in case of an error
*/
public function transferEvents($assignToUser) { /* {{{ */
$db = $this->_dms->getDB();
if($assignToUser->getID() == $this->_id)
return true;
$db->startTransaction();
if(!$this->__transferEvents($assignToUser)) {
$db->rollbackTransaction();
return false;
}
$db->commitTransaction();
return true;
} /* }}} */
/**
* Remove the user and also remove all its keywords, notifications, etc.
* Do not remove folders and documents of the user, but assign them
* to a different user.
*
@ -796,25 +997,6 @@ class SeedDMS_Core_User { /* {{{ */
return false;
}
/* Assign documents of the removed user to the given user */
$queryStr = "UPDATE `tblFolders` SET `owner` = " . $assignTo . " WHERE `owner` = " . $this->_id;
if (!$db->getResult($queryStr)) {
$db->rollbackTransaction();
return false;
}
$queryStr = "UPDATE `tblDocuments` SET `owner` = " . $assignTo . " WHERE `owner` = " . $this->_id;
if (!$db->getResult($queryStr)) {
$db->rollbackTransaction();
return false;
}
$queryStr = "UPDATE `tblDocumentContent` SET `createdBy` = " . $assignTo . " WHERE `createdBy` = " . $this->_id;
if (!$db->getResult($queryStr)) {
$db->rollbackTransaction();
return false;
}
// Remove private links on documents ...
$queryStr = "DELETE FROM `tblDocumentLinks` WHERE `userID` = " . $this->_id . " AND `public` = 0";
if (!$db->getResult($queryStr)) {
@ -822,16 +1004,8 @@ class SeedDMS_Core_User { /* {{{ */
return false;
}
// ... but keep public links
$queryStr = "UPDATE `tblDocumentLinks` SET `userID` = " . $assignTo . " WHERE `userID` = " . $this->_id;
if (!$db->getResult($queryStr)) {
$db->rollbackTransaction();
return false;
}
// set administrator for deleted user's attachments
$queryStr = "UPDATE `tblDocumentFiles` SET `userID` = " . $assignTo . " WHERE `userID` = " . $this->_id;
if (!$db->getResult($queryStr)) {
/* Assign documents, folders, files, public document links of the removed user to the given user */
if(!$this->__transferDocumentsFolders($assignToUser)) {
$db->rollbackTransaction();
return false;
}
@ -915,9 +1089,8 @@ class SeedDMS_Core_User { /* {{{ */
return false;
}
// set administrator for deleted user's events
$queryStr = "UPDATE `tblEvents` SET `userID` = " . $assignTo . " WHERE `userID` = " . $this->_id;
if (!$db->getResult($queryStr)) {
/* Assign events of the removed user to the given user */
if(!$this->__transferEvents($assignToUser)) {
$db->rollbackTransaction();
return false;
}
@ -933,50 +1106,10 @@ class SeedDMS_Core_User { /* {{{ */
// "DELETE FROM `tblDocumentApproveLog` WHERE `userID` = " . $this->_id;
// "DELETE FROM `tblDocumentReviewLog` WHERE `userID` = " . $this->_id;
$reviewStatus = $this->getReviewStatus();
foreach ($reviewStatus["indstatus"] as $ri) {
$queryStr = "INSERT INTO `tblDocumentReviewLog` (`reviewID`, `status`, `comment`, `date`, `userID`) ".
"VALUES ('". $ri["reviewID"] ."', '-2', 'Reviewer removed from process', ".$db->getCurrentDatetime().", '". $user->getID() ."')";
$res=$db->getResult($queryStr);
if(!$res) {
if(!$this->__removeFromProcesses($user)) {
$db->rollbackTransaction();
return false;
}
}
$approvalStatus = $this->getApprovalStatus();
foreach ($approvalStatus["indstatus"] as $ai) {
$queryStr = "INSERT INTO `tblDocumentApproveLog` (`approveID`, `status`, `comment`, `date`, `userID`) ".
"VALUES ('". $ai["approveID"] ."', '-2', 'Approver removed from process', ".$db->getCurrentDatetime().", '". $user->getID() ."')";
$res=$db->getResult($queryStr);
if(!$res) {
$db->rollbackTransaction();
return false;
}
}
$receiptStatus = $this->getReceiptStatus();
foreach ($receiptStatus["indstatus"] as $ri) {
$queryStr = "INSERT INTO `tblDocumentReceiptLog` (`receiptID`, `status`, `comment`, `date`, `userID`) ".
"VALUES ('". $ri["receiptID"] ."', '-2', 'Recipient removed from process', ".$db->getCurrentDatetime().", '". $user->getID() ."')";
$res=$db->getResult($queryStr);
if(!$res) {
$db->rollbackTransaction();
return false;
}
}
$revisionStatus = $this->getRevisionStatus();
foreach ($revisionStatus["indstatus"] as $ri) {
$queryStr = "INSERT INTO `tblDocumentRevisionLog` (`revisionID`, `status`, `comment`, `date`, `userID`) ".
"VALUES ('". $ri["revisionID"] ."', '-2', 'Revisor removed from process', ".$db->getCurrentDatetime().", '". $user->getID() ."')";
$res=$db->getResult($queryStr);
if(!$res) {
$db->rollbackTransaction();
return false;
}
}
$db->commitTransaction();
return true;
@ -1204,11 +1337,14 @@ class SeedDMS_Core_User { /* {{{ */
/**
* Get a list of reviews
* This function returns a list of all reviews seperated by individual
* and group reviews. If the document id
*
* This function returns a list of all reviews and their latest log entry
* seperated by individuals and groups. If the document id
* is passed, then only this document will be checked for reviews. The
* same is true for the version of a document which limits the list
* further.
* further. If you do not limit on a version it will retrieve the status
* for each version, that includes even older versions which has been superseded
* by a new version.
*
* For a detailed description of the result array see
* {link SeedDMS_Core_User::getApprovalStatus} which does the same for
@ -1285,17 +1421,21 @@ class SeedDMS_Core_User { /* {{{ */
/**
* Get a list of approvals
* This function returns a list of all approvals seperated by individual
* and group approvals. If the document id
*
* This function returns a list of all approvals and their latest log entry
* seperated by individuals and groups. If the document id
* is passed, then only this document will be checked for approvals. The
* same is true for the version of a document which limits the list
* further.
* further. If you do not limit on a version it will retrieve the status
* for each version, that includes even older versions which has been superseded
* by a new version.
*
* The result array has two elements:
* - indstatus: which contains the approvals by individuals (users)
* - grpstatus: which contains the approvals by groups
*
* Each element is itself an array of approvals with the following elements:
* Each element is itself an array of approvals with the following elements
* (it is a combination of fields from tblDocumentApprovers and tblDocumentApproveLog):
* - approveID: unique id of approval
* - documentID: id of document, that needs to be approved
* - version: version of document, that needs to be approved
@ -1600,6 +1740,28 @@ class SeedDMS_Core_User { /* {{{ */
return $result;
} /* }}} */
/**
* Get a list of workflows this user is involved as in individual
*
* @return array list of all workflows
*/
function getWorkflowsInvolved() { /* {{{ */
$db = $this->_dms->getDB();
$queryStr = 'SELECT DISTINCT b.*, c.`userid` FROM `tblWorkflowTransitions` a LEFT JOIN `tblWorkflows` b ON a.`workflow`=b.`id` LEFT JOIN `tblWorkflowTransitionUsers` c ON a.`id`=c.`transition` WHERE c.`userid`='.$this->_id;
$resArr = $db->getResultArray($queryStr);
if (is_bool($resArr) && $resArr == false)
return false;
$result = array();
if (count($resArr)>0) {
foreach ($resArr as $res) {
$result[] = $this->_dms->getWorkflow($res['id']);
}
}
return $result;
} /* }}} */
/**
* Get a list of mandatory reviewers
* A user which isn't trusted completely may have assigned mandatory
@ -1635,6 +1797,52 @@ class SeedDMS_Core_User { /* {{{ */
return $resArr;
} /* }}} */
/**
* Get a list of users this user is a mandatory reviewer of
*
* This method is the reverse function of getMandatoryReviewers(). It returns
* those user where the current user is a mandatory reviewer.
*
* @return array list of users where this user is a mandatory reviewer.
*/
function isMandatoryReviewerOf() { /* {{{ */
$db = $this->_dms->getDB();
$queryStr = "SELECT * FROM `tblMandatoryReviewers` WHERE `reviewerUserID` = " . $this->_id;
$resArr = $db->getResultArray($queryStr);
if (is_bool($resArr) && !$resArr) return false;
$users = array();
foreach($resArr as $res) {
$users[] = self::getInstance($res['userID'], $this->_dms);
}
return $users;
} /* }}} */
/**
* Get a list of users this user is a mandatory approver of
*
* This method is the reverse function of getMandatoryApprovers(). It returns
* those user where the current user is a mandatory approver.
*
* @return array list of users where this user is a mandatory approver.
*/
function isMandatoryApproverOf() { /* {{{ */
$db = $this->_dms->getDB();
$queryStr = "SELECT * FROM `tblMandatoryApprovers` WHERE `approverUserID` = " . $this->_id;
$resArr = $db->getResultArray($queryStr);
if (is_bool($resArr) && !$resArr) return false;
$users = array();
foreach($resArr as $res) {
$users[] = self::getInstance($res['userID'], $this->_dms);
}
return $users;
} /* }}} */
/**
* Get the mandatory workflow
* A user which isn't trusted completely may have assigned mandatory
@ -1877,20 +2085,23 @@ class SeedDMS_Core_User { /* {{{ */
if (!isset($this->_rev_substitutes)) {
$queryStr = "SELECT `tblUsers`.* FROM `tblUserSubstitutes` ".
"LEFT JOIN `tblUsers` ON `tblUserSubstitutes`.`user` = `tblUsers`.`id` ".
"LEFT JOIN `tblRoles` ON `tblRoles`.`id`=`tblUsers`.`role` ".
"WHERE `tblUserSubstitutes`.`substitute`='". $this->_id ."'";
/* None admins can only be substitutes for regular users, otherwise
* regular users can become admin
*/
if(!$this->isAdmin())
$queryStr .= " AND `tblUsers`.`role` = ".SeedDMS_Core_User::role_user;
$queryStr .= " AND `tblRoles`.`role` = ".SeedDMS_Core_User::role_user;
$resArr = $db->getResultArray($queryStr);
if (is_bool($resArr) && $resArr == false)
return false;
$this->_rev_substitutes = array();
$classnamerole = $this->_dms->getClassname('role');
$classname = $this->_dms->getClassname('user');
foreach ($resArr as $row) {
$user = new $classname($row["id"], $row["login"], $row["pwd"], $row["fullName"], $row["email"], $row["language"], $row["theme"], $row["comment"], $row["role"], $row["hidden"], $row["disabled"], $row["pwdExpiration"], $row["loginfailures"], $row["quota"], $row["homefolder"]);
$role = $classnamerole::getInstance($row['role'], $this->_dms);
$user = new $classname($row["id"], $row["login"], $row["pwd"], $row["fullName"], $row["email"], $row["language"], $row["theme"], $row["comment"], $role, $row["hidden"], $row["disabled"], $row["pwdExpiration"], $row["loginfailures"], $row["quota"], $row["homefolder"]);
$user->setDMS($this->_dms);
array_push($this->_rev_substitutes, $user);
}
@ -2021,5 +2232,29 @@ class SeedDMS_Core_User { /* {{{ */
return $notifications;
} /* }}} */
/**
* Return list of personal keyword categories
*
* @return array/boolean list of categories or false in case of an error
*/
function getKeywordCategories() { /* {{{ */
$db = $this->_dms->getDB();
$queryStr = "SELECT * FROM `tblKeywordCategories` WHERE `owner` = ".$this->_id;
$resArr = $db->getResultArray($queryStr);
if (is_bool($resArr) && !$resArr)
return false;
$categories = array();
foreach ($resArr as $row) {
$cat = new SeedDMS_Core_KeywordCategory($row["id"], $row["owner"], $row["name"]);
$cat->setDMS($this->_dms);
array_push($categories, $cat);
}
return $categories;
} /* }}} */
} /* }}} */
?>

View File

@ -112,6 +112,11 @@ class SeedDMS_Core_DatabaseAccess {
*/
private $_logfp;
/**
* @var boolean set to true if views instead of temp. tables shall be used
*/
private $_useviews;
/**
* Return list of all database tables
*
@ -140,6 +145,34 @@ class SeedDMS_Core_DatabaseAccess {
return $res;
} /* }}} */
/**
* Return list of all database views
*
* This function is used to retrieve a list of database views
*
* @return array list of view names
*/
public function ViewList() { /* {{{ */
switch($this->_driver) {
case 'mysql':
$sql = "select TABLE_NAME as name from information_schema.views where TABLE_SCHEMA='".$this->_database."'";
break;
case 'sqlite':
$sql = "select tbl_name as name from sqlite_master where type='view'";
break;
case 'pgsql':
$sql = "select viewname as name from pg_catalog.pg_views where schemaname='public'";
break;
default:
return false;
}
$arr = $this->getResultArray($sql);
$res = array();
foreach($arr as $tmp)
$res[] = $tmp['name'];
return $res;
} /* }}} */
/**
* Constructor of SeedDMS_Core_DatabaseAccess
*
@ -183,6 +216,7 @@ class SeedDMS_Core_DatabaseAccess {
$this->_ttcontentid = false;
$this->_ttreceiptid = false;
$this->_ttrevisionid = false;
$this->_useviews = true;
$this->_debug = false;
} /* }}} */
@ -240,6 +274,15 @@ class SeedDMS_Core_DatabaseAccess {
$this->_conn->exec('PRAGMA foreign_keys = ON');
break;
}
if($this->_useviews) {
$tmp = $this->ViewList();
foreach(array('ttreviewid', 'ttapproveid', 'ttstatid', 'ttcontentid', 'ttreceiptid', 'ttrevisionid') as $viewname) {
if(in_array($viewname, $tmp)) {
$this->{"_".$viewname} = true;
}
}
}
$this->_connected = true;
return true;
} /* }}} */
@ -383,12 +426,12 @@ class SeedDMS_Core_DatabaseAccess {
/**
* Create various temporary tables to speed up and simplify sql queries
*/
function createTemporaryTable($tableName, $override=false) { /* {{{ */
private function __createTemporaryTable($tableName, $override=false) { /* {{{ */
if (!strcasecmp($tableName, "ttreviewid")) {
switch($this->_driver) {
case 'sqlite':
$queryStr = "CREATE TEMPORARY TABLE IF NOT EXISTS `ttreviewid` AS ".
"SELECT `tblDocumentReviewLog`.`reviewID`, ".
"SELECT `tblDocumentReviewLog`.`reviewID` AS `reviewID`, ".
"MAX(`tblDocumentReviewLog`.`reviewLogID`) AS `maxLogID` ".
"FROM `tblDocumentReviewLog` ".
"GROUP BY `tblDocumentReviewLog`.`reviewID` "; //.
@ -429,7 +472,7 @@ class SeedDMS_Core_DatabaseAccess {
switch($this->_driver) {
case 'sqlite':
$queryStr = "CREATE TEMPORARY TABLE IF NOT EXISTS `ttapproveid` AS ".
"SELECT `tblDocumentApproveLog`.`approveID`, ".
"SELECT `tblDocumentApproveLog`.`approveID` AS `approveID`, ".
"MAX(`tblDocumentApproveLog`.`approveLogID`) AS `maxLogID` ".
"FROM `tblDocumentApproveLog` ".
"GROUP BY `tblDocumentApproveLog`.`approveID` "; //.
@ -555,24 +598,24 @@ class SeedDMS_Core_DatabaseAccess {
"SELECT `tblDocumentReceiptLog`.`receiptID` AS `receiptID`, ".
"MAX(`tblDocumentReceiptLog`.`receiptLogID`) AS `maxLogID` ".
"FROM `tblDocumentReceiptLog` ".
"GROUP BY `tblDocumentReceiptLog`.`receiptID` ".
"ORDER BY `maxLogID`";
"GROUP BY `tblDocumentReceiptLog`.`receiptID` ";
// "ORDER BY `maxLogID`";
break;
case 'pgsql':
$queryStr = "CREATE TEMPORARY TABLE IF NOT EXISTS `ttreceiptid` (`receiptID` INTEGER, `maxLogID` INTEGER, PRIMARY KEY (`receiptID`);".
$queryStr = "CREATE TEMPORARY TABLE IF NOT EXISTS `ttreceiptid` (`receiptID` INTEGER, `maxLogID` INTEGER, PRIMARY KEY (`receiptID`));".
"INSERT INTO `ttreceiptid` SELECT `tblDocumentReceiptLog`.`receiptID`, ".
"MAX(`tblDocumentReceiptLog`.`receiptLogID`) AS `maxLogID` ".
"FROM `tblDocumentReceiptLog` ".
"GROUP BY `tblDocumentReceiptLog`.`receiptID` ".
"ORDER BY `maxLogID`";
"GROUP BY `tblDocumentReceiptLog`.`receiptID` ";
// "ORDER BY `maxLogID`";
break;
default:
$queryStr = "CREATE TEMPORARY TABLE IF NOT EXISTS `ttreceiptid` (PRIMARY KEY (`receiptID`), INDEX (`maxLogID`)) ".
"SELECT `tblDocumentReceiptLog`.`receiptID`, ".
"MAX(`tblDocumentReceiptLog`.`receiptLogID`) AS `maxLogID` ".
"FROM `tblDocumentReceiptLog` ".
"GROUP BY `tblDocumentReceiptLog`.`receiptID` ".
"ORDER BY `maxLogID`";
"GROUP BY `tblDocumentReceiptLog`.`receiptID` ";
// "ORDER BY `maxLogID`";
}
if (!$this->_ttreceiptid) {
if (!$this->getResult($queryStr))
@ -596,24 +639,24 @@ class SeedDMS_Core_DatabaseAccess {
"SELECT `tblDocumentRevisionLog`.`revisionID` AS `revisionID`, ".
"MAX(`tblDocumentRevisionLog`.`revisionLogID`) AS `maxLogID` ".
"FROM `tblDocumentRevisionLog` ".
"GROUP BY `tblDocumentRevisionLog`.`revisionID` ".
"ORDER BY `maxLogID`";
"GROUP BY `tblDocumentRevisionLog`.`revisionID` ";
// "ORDER BY `maxLogID`";
break;
case 'pgsql':
$queryStr = "CREATE TEMPORARY TABLE IF NOT EXISTS `ttrevisionid` (`revisionID` INTEGER, `maxLogID` INTEGER, PRIMARY KEY (`revisionID`));".
"INSERT INTO `ttrevisionid` SELECT `tblDocumentRevisionLog`.`revisionID`, ".
"MAX(`tblDocumentRevisionLog`.`revisionLogID`) AS `maxLogID` ".
"FROM `tblDocumentRevisionLog` ".
"GROUP BY `tblDocumentRevisionLog`.`revisionID` ".
"ORDER BY `maxLogID`";
"GROUP BY `tblDocumentRevisionLog`.`revisionID` ";
// "ORDER BY `maxLogID`";
break;
default:
$queryStr = "CREATE TEMPORARY TABLE IF NOT EXISTS `ttrevisionid` (PRIMARY KEY (`revisionID`), INDEX (`maxLogID`)) ".
"SELECT `tblDocumentRevisionLog`.`revisionID`, ".
"MAX(`tblDocumentRevisionLog`.`revisionLogID`) AS `maxLogID` ".
"FROM `tblDocumentRevisionLog` ".
"GROUP BY `tblDocumentRevisionLog`.`revisionID` ".
"ORDER BY `maxLogID`";
"GROUP BY `tblDocumentRevisionLog`.`revisionID` ";
// "ORDER BY `maxLogID`";
}
if (!$this->_ttrevisionid) {
if (!$this->getResult($queryStr))
@ -633,6 +676,254 @@ class SeedDMS_Core_DatabaseAccess {
return false;
} /* }}} */
/**
* Create various temporary tables to speed up and simplify sql queries
*/
private function __createView($tableName, $override=false) { /* {{{ */
if (!strcasecmp($tableName, "ttreviewid")) {
switch($this->_driver) {
case 'sqlite':
$queryStr = "CREATE VIEW `ttreviewid` AS ".
"SELECT `tblDocumentReviewLog`.`reviewID` AS `reviewID`, ".
"MAX(`tblDocumentReviewLog`.`reviewLogID`) AS `maxLogID` ".
"FROM `tblDocumentReviewLog` ".
"GROUP BY `tblDocumentReviewLog`.`reviewID` "; //.
break;
case 'pgsql':
$queryStr = "CREATE VIEW `ttreviewid` AS ".
"SELECT `tblDocumentReviewLog`.`reviewID` AS `reviewID`, ".
"MAX(`tblDocumentReviewLog`.`reviewLogID`) AS `maxLogID` ".
"FROM `tblDocumentReviewLog` ".
"GROUP BY `tblDocumentReviewLog`.`reviewID` ";
break;
default:
$queryStr = "CREATE".($override ? " OR REPLACE" : "")." VIEW `ttreviewid` AS ".
"SELECT `tblDocumentReviewLog`.`reviewID` AS `reviewID`, ".
"MAX(`tblDocumentReviewLog`.`reviewLogID`) AS `maxLogID` ".
"FROM `tblDocumentReviewLog` ".
"GROUP BY `tblDocumentReviewLog`.`reviewID` ";
}
if (!$this->_ttreviewid) {
if (!$this->getResult($queryStr))
return false;
$this->_ttreviewid=true;
}
else {
if (is_bool($override) && $override) {
if (!$this->getResult("DROP VIEW `ttreviewid`"))
return false;
if (!$this->getResult($queryStr))
return false;
}
}
return $this->_ttreviewid;
}
elseif (!strcasecmp($tableName, "ttapproveid")) {
switch($this->_driver) {
case 'sqlite':
$queryStr = "CREATE VIEW `ttapproveid` AS ".
"SELECT `tblDocumentApproveLog`.`approveID` AS `approveID`, ".
"MAX(`tblDocumentApproveLog`.`approveLogID`) AS `maxLogID` ".
"FROM `tblDocumentApproveLog` ".
"GROUP BY `tblDocumentApproveLog`.`approveID` "; //.
break;
case 'pgsql':
$queryStr = "CREATE VIEW `ttapproveid` AS ".
"SELECT `tblDocumentApproveLog`.`approveID` AS `approveID`, ".
"MAX(`tblDocumentApproveLog`.`approveLogID`) AS `maxLogID` ".
"FROM `tblDocumentApproveLog` ".
"GROUP BY `tblDocumentApproveLog`.`approveID` ";
break;
default:
$queryStr = "CREATE".($override ? " OR REPLACE" : "")." VIEW `ttapproveid` AS ".
"SELECT `tblDocumentApproveLog`.`approveID`, ".
"MAX(`tblDocumentApproveLog`.`approveLogID`) AS `maxLogID` ".
"FROM `tblDocumentApproveLog` ".
"GROUP BY `tblDocumentApproveLog`.`approveID` ";
}
if (!$this->_ttapproveid) {
if (!$this->getResult($queryStr))
return false;
$this->_ttapproveid=true;
}
else {
if (is_bool($override) && $override) {
if (!$this->getResult("DROP VIEW `ttapproveid`"))
return false;
if (!$this->getResult($queryStr))
return false;
}
}
return $this->_ttapproveid;
}
elseif (!strcasecmp($tableName, "ttstatid")) {
switch($this->_driver) {
case 'sqlite':
$queryStr = "CREATE VIEW `ttstatid` AS ".
"SELECT `tblDocumentStatusLog`.`statusID` AS `statusID`, ".
"MAX(`tblDocumentStatusLog`.`statusLogID`) AS `maxLogID` ".
"FROM `tblDocumentStatusLog` ".
"GROUP BY `tblDocumentStatusLog`.`statusID` ";
break;
case 'pgsql':
$queryStr = "CREATE VIEW `ttstatid` AS ".
"SELECT `tblDocumentStatusLog`.`statusID` AS `statusID`, ".
"MAX(`tblDocumentStatusLog`.`statusLogID`) AS `maxLogID` ".
"FROM `tblDocumentStatusLog` ".
"GROUP BY `tblDocumentStatusLog`.`statusID` ";
break;
default:
$queryStr = "CREATE".($override ? " OR REPLACE" : "")." VIEW `ttstatid` AS ".
"SELECT `tblDocumentStatusLog`.`statusID`, ".
"MAX(`tblDocumentStatusLog`.`statusLogID`) AS `maxLogID` ".
"FROM `tblDocumentStatusLog` ".
"GROUP BY `tblDocumentStatusLog`.`statusID` ";
}
if (!$this->_ttstatid) {
if (!$this->getResult($queryStr))
return false;
$this->_ttstatid=true;
}
else {
if (is_bool($override) && $override) {
if (!$this->getResult("DROP VIEW `ttstatid`"))
return false;
if (!$this->getResult($queryStr))
return false;
}
}
return $this->_ttstatid;
}
elseif (!strcasecmp($tableName, "ttcontentid")) {
switch($this->_driver) {
case 'sqlite':
$queryStr = "CREATE VIEW `ttcontentid` AS ".
"SELECT `tblDocumentContent`.`document` AS `document`, ".
"MAX(`tblDocumentContent`.`version`) AS `maxVersion` ".
"FROM `tblDocumentContent` ".
"GROUP BY `tblDocumentContent`.`document` ".
"ORDER BY `tblDocumentContent`.`document`";
break;
case 'pgsql':
$queryStr = "CREATE VIEW `ttcontentid` AS ".
"SELECT `tblDocumentContent`.`document` AS `document`, ".
"MAX(`tblDocumentContent`.`version`) AS `maxVersion` ".
"FROM `tblDocumentContent` ".
"GROUP BY `tblDocumentContent`.`document` ".
"ORDER BY `tblDocumentContent`.`document`";
break;
default:
$queryStr = "CREATE".($override ? " OR REPLACE" : "")." VIEW `ttcontentid` AS ".
"SELECT `tblDocumentContent`.`document`, ".
"MAX(`tblDocumentContent`.`version`) AS `maxVersion` ".
"FROM `tblDocumentContent` ".
"GROUP BY `tblDocumentContent`.`document` ".
"ORDER BY `tblDocumentContent`.`document`";
}
if (!$this->_ttcontentid) {
if (!$this->getResult($queryStr))
return false;
$this->_ttcontentid=true;
}
else {
if (is_bool($override) && $override) {
if (!$this->getResult("DROP VIEW `ttcontentid`"))
return false;
if (!$this->getResult($queryStr))
return false;
}
}
return $this->_ttcontentid;
}
elseif (!strcasecmp($tableName, "ttreceiptid")) {
switch($this->_driver) {
case 'sqlite':
$queryStr = "CREATE VIEW `ttreceiptid` AS ".
"SELECT `tblDocumentReceiptLog`.`receiptID` AS `receiptID`, ".
"MAX(`tblDocumentReceiptLog`.`receiptLogID`) AS `maxLogID` ".
"FROM `tblDocumentReceiptLog` ".
"GROUP BY `tblDocumentReceiptLog`.`receiptID` ";
break;
case 'pgsql':
$queryStr = "CREATE VIEW `ttreceiptid` AS ".
"SELECT `tblDocumentReceiptLog`.`receiptID` AS `receiptID`, ".
"MAX(`tblDocumentReceiptLog`.`receiptLogID`) AS `maxLogID` ".
"FROM `tblDocumentReceiptLog` ".
"GROUP BY `tblDocumentReceiptLog`.`receiptID` ";
break;
default:
$queryStr = "CREATE".($override ? " OR REPLACE" : "")." VIEW `ttreceiptid` AS ".
"SELECT `tblDocumentReceiptLog`.`receiptID`, ".
"MAX(`tblDocumentReceiptLog`.`receiptLogID`) AS `maxLogID` ".
"FROM `tblDocumentReceiptLog` ".
"GROUP BY `tblDocumentReceiptLog`.`receiptID` ";
}
if (!$this->_ttreceiptid) {
if (!$this->getResult($queryStr))
return false;
$this->_ttreceiptid=true;
}
else {
if (is_bool($override) && $override) {
if (!$this->getResult("DROP VIEW `ttreceiptid`"))
return false;
if (!$this->getResult($queryStr))
return false;
}
}
return $this->_ttreceiptid;
}
elseif (!strcasecmp($tableName, "ttrevisionid")) {
switch($this->_driver) {
case 'sqlite':
$queryStr = "CREATE VIEW `ttrevisionid` AS ".
"SELECT `tblDocumentRevisionLog`.`revisionID` AS `revisionID`, ".
"MAX(`tblDocumentRevisionLog`.`revisionLogID`) AS `maxLogID` ".
"FROM `tblDocumentRevisionLog` ".
"GROUP BY `tblDocumentRevisionLog`.`revisionID` ";
break;
case 'pgsql':
$queryStr = "CREATE VIEW `ttrevisionid` AS ".
"SELECT `tblDocumentRevisionLog`.`revisionID` AS `revisionID`, ".
"MAX(`tblDocumentRevisionLog`.`revisionLogID`) AS `maxLogID` ".
"FROM `tblDocumentRevisionLog` ".
"GROUP BY `tblDocumentRevisionLog`.`revisionID` ";
break;
default:
$queryStr = "CREATE".($override ? " OR REPLACE" : "")." VIEW `ttrevisionid` AS ".
"SELECT `tblDocumentRevisionLog`.`revisionID`, ".
"MAX(`tblDocumentRevisionLog`.`revisionLogID`) AS `maxLogID` ".
"FROM `tblDocumentRevisionLog` ".
"GROUP BY `tblDocumentRevisionLog`.`revisionID` ";
}
if (!$this->_ttrevisionid) {
if (!$this->getResult($queryStr))
return false;
$this->_ttrevisionid=true;
}
else {
if (is_bool($override) && $override) {
if (!$this->getResult("DROP VIEW `ttrevisionid`"))
return false;
if (!$this->getResult($queryStr))
return false;
}
}
return $this->_ttrevisionid;
}
return false;
} /* }}} */
/**
* Create various temporary tables to speed up and simplify sql queries
*/
public function createTemporaryTable($tableName, $override=false) { /* {{{ */
if($this->_useviews)
return $this->__createView($tableName, $override);
else
return $this->__createTemporaryTable($tableName, $override);
} /* }}} */
/**
* Return sql statement for extracting the date part from a field
* containing a unix timestamp

View File

@ -12,7 +12,7 @@
<email>uwe@steinmann.cx</email>
<active>yes</active>
</lead>
<date>2017-03-23</date>
<date>2017-07-13</date>
<time>06:34:50</time>
<version>
<release>6.0.1</release>
@ -28,6 +28,12 @@
- setting _logfile in inc.DBAccessPDO.php will log execution times in file
- fix sql statement to create temp table ttrevisionid and ttreceiptid
- SeedDMS_Core_DMS::noReadForStatus no longer needed
- SeedDMS_Core_Document::checkForDueRevisionWorkflow() also checks if there
are any waiting or pending revisions at all
- SeedDMS_Core_User::getReverseSubstitutes() works with new roles
- fix field name in getDocumentList() to make it work for pgsql
- views instead of temp. tables can be used
- ReceiveOwner list does not contain old versions anymore
</notes>
<contents>
<dir baseinstalldir="SeedDMS" name="/">
@ -1189,7 +1195,7 @@ SeedDMS_Core_DMS::getDuplicateDocumentContent() returns complete document
</notes>
</release>
<release>
<date>2017-03-23</date>
<date>2017-07-11</date>
<time>06:38:12</time>
<version>
<release>4.3.35</release>
@ -1204,6 +1210,22 @@ SeedDMS_Core_DMS::getDuplicateDocumentContent() returns complete document
do not sort some temporary tables anymore, because it causes an error in mysql if sql_mode=only_full_group_by is set
</notes>
</release>
<release>
<date>2017-03-22</date>
<time>06:38:12</time>
<version>
<release>4.3.36</release>
<api>4.3.36</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<license uri="http://opensource.org/licenses/gpl-license">GPL License</license>
<notes>
- fix sql statement for creating temp. tables (sqlite)
</notes>
</release>
<release>
<date>2016-01-22</date>
<time>14:34:58</time>
@ -1398,6 +1420,21 @@ all sql statements can be logged to a file
do not sort some temporary tables anymore, because it causes an error in mysql if sql_mode=only_full_group_by is set
</notes>
</release>
<release>
<date>2017-07-13</date>
<time>07:07:02</time>
<version>
<release>5.0.13</release>
<api>5.0.13</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<license uri="http://opensource.org/licenses/gpl-license">GPL License</license>
<notes>
</notes>
</release>
<release>
<date>2017-02-20</date>
<time>07:07:02</time>
@ -1453,6 +1490,26 @@ if the owner tries to access them
- Add hook onAttributeValidate
</notes>
</release>
<release>
<date>2017-07-13</date>
<time>07:07:02</time>
<version>
<release>5.1.3</release>
<api>5.1.3</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<license uri="http://opensource.org/licenses/gpl-license">GPL License</license>
<notes>
- SeedDMS_Core_Document::getNotifyList() and SeedDMS_Core_Folder::getNotifyList()
returns just users which are not disabled
- add new methods removeFromProcesses(), getWorkflowsInvolved(), getKeywordCategories() to SeedDMS_Core_User
- add methods isMandatoryReviewerOf() and isMandatoryApproverOf()
- add methods transferDocumentsFolders() and transferEvents()
</notes>
</release>
<release>
<date>2017-02-28</date>
<time>06:34:50</time>

View File

@ -62,16 +62,18 @@ class SeedDMS_AccessOperation {
* document may delete versions. The admin may even delete a version
* even if is disallowed in the settings.
*/
function mayEditVersion($document) { /* {{{ */
function mayEditVersion($document, $vno=0) { /* {{{ */
if(get_class($document) == $this->dms->getClassname('document')) {
if($latestContent = $document->getLatestContent()) {
if (!isset($this->settings->_editOnlineFileTypes) || !is_array($this->settings->_editOnlineFileTypes) || !in_array(strtolower($latestContent->getFileType()), $this->settings->_editOnlineFileTypes))
if($vno)
$version = $document->getContentByVersion($vno);
else
$version = $document->getLatestContent();
if (!isset($this->settings->_editOnlineFileTypes) || !is_array($this->settings->_editOnlineFileTypes) || !in_array(strtolower($version->getFileType()), $this->settings->_editOnlineFileTypes))
return false;
if ($document->getAccessMode($this->user) == M_ALL || $this->user->isAdmin()) {
return true;
}
}
}
return false;
} /* }}} */
@ -121,15 +123,28 @@ class SeedDMS_AccessOperation {
*
* This check can only be done for documents. Overwriting the document
* reviewers/approvers is only allowed if version modification is turned on
* in the settings and the document is in 'draft review' status. The
* admin may even set reviewers/approvers if is disallowed in the
* in the settings and the document has not been reviewed/approved by any
* user/group already.
* The admin may even set reviewers/approvers if is disallowed in the
* settings.
*/
function maySetReviewersApprovers($document) { /* {{{ */
if(get_class($document) == $this->dms->getClassname('document')) {
if($latestContent = $document->getLatestContent()) {
$status = $latestContent->getStatus();
if ((($this->settings->_enableVersionModification && ($document->getAccessMode($this->user) == M_ALL)) || $this->user->isAdmin()) && ($status['status']==S_DRAFT || $status["status"]==S_DRAFT_REV || $status["status"]==S_DRAFT_APP && $this->settings->_workflowMode == 'traditional_only_approval')) {
$reviewstatus = $latestContent->getReviewStatus();
$hasreview = false;
foreach($reviewstatus as $r) {
if($r['status'] == 1 || $r['status'] == -1)
$hasreview = true;
}
$approvalstatus = $latestContent->getApprovalStatus();
$hasapproval = false;
foreach($approvalstatus as $r) {
if($r['status'] == 1 || $r['status'] == -1)
$hasapproval = true;
}
if ((($this->settings->_enableVersionModification && ($document->getAccessMode($this->user) == M_ALL)) || $this->user->isAdmin()) && (($status["status"]==S_DRAFT_REV && !$hasreview) || ($status["status"]==S_DRAFT_APP && !$hasreview && !$hasapproval))) {
return true;
}
}

View File

@ -353,7 +353,7 @@ class SeedDMS_Aco extends SeedDMS_AroAco{ /* {{{ */
return false;
if (count($resArr) != 1)
return 0;
return $resArr[0]['read'];
return (int) $resArr[0]['read'];
} /* }}} */
public static function getRoot($dms) { /* {{{ */

View File

@ -497,6 +497,7 @@ class SeedDMS_SessionMgr {
if(!$ts = makeTsFromLongDate($datetime))
return false;
$queryStr = "SELECT * FROM `tblSessions` WHERE `lastAccess`>=".$ts;
$queryStr .= " GROUP BY `userID` ";
$queryStr .= " ORDER BY `lastAccess` DESC";
$resArr = $this->db->getResultArray($queryStr);
if (is_bool($resArr) && $resArr == false)

View File

@ -204,6 +204,8 @@ class Settings { /* {{{ */
var $_enableClipboard = true;
// enable/disable list of tasks in main menu
var $_enableMenuTasks = true;
// enable/disable list of files in drop folder
var $_enableDropFolderList = false;
// enable/disable display of the session list
var $_enableSessionList = false;
// enable/disable display of the drop zone for file upload
@ -443,6 +445,7 @@ class Settings { /* {{{ */
$this->_enableSessionList = Settings::boolVal($tab["enableSessionList"]);
$this->_enableClipboard = Settings::boolVal($tab["enableClipboard"]);
$this->_enableMenuTasks = Settings::boolVal($tab["enableMenuTasks"]);
$this->_enableDropFolderList = Settings::boolVal($tab["enableDropFolderList"]);
$this->_enableDropUpload = Settings::boolVal($tab["enableDropUpload"]);
$this->_enableMultiUpload = Settings::boolVal($tab["enableMultiUpload"]);
$this->_enableFolderTree = Settings::boolVal($tab["enableFolderTree"]);
@ -475,6 +478,8 @@ class Settings { /* {{{ */
$this->_rootDir = strval($tab["rootDir"]);
$this->_httpRoot = strval($tab["httpRoot"]);
$this->_contentDir = strval($tab["contentDir"]);
if($this->_contentDir && substr($this->_contentDir, -1, 1) != DIRECTORY_SEPARATOR)
$this->_contentDir .= DIRECTORY_SEPARATOR;
$this->_cacheDir = strval($tab["cacheDir"]);
$this->_stagingDir = strval($tab["stagingDir"]);
$this->_luceneDir = strval($tab["luceneDir"]);
@ -765,6 +770,7 @@ class Settings { /* {{{ */
$this->setXMLAttributValue($node, "enableSessionList", $this->_enableSessionList);
$this->setXMLAttributValue($node, "enableClipboard", $this->_enableClipboard);
$this->setXMLAttributValue($node, "enableMenuTasks", $this->_enableMenuTasks);
$this->setXMLAttributValue($node, "enableDropFolderList", $this->_enableDropFolderList);
$this->setXMLAttributValue($node, "enableDropUpload", $this->_enableDropUpload);
$this->setXMLAttributValue($node, "enableMultiUpload", $this->_enableMultiUpload);
$this->setXMLAttributValue($node, "enableFolderTree", $this->_enableFolderTree);

View File

@ -105,6 +105,8 @@ class UI extends UI_Default {
$view->setParam('enablelanguageselector', $settings->_enableLanguageSelector);
$view->setParam('enableclipboard', $settings->_enableClipboard);
$view->setParam('enablemenutasks', $settings->_enableMenuTasks);
$view->setParam('enabledropfolderlist', $settings->_enableDropFolderList);
$view->setParam('dropfolderdir', $settings->_dropFolderDir);
$view->setParam('enablesessionlist', $settings->_enableSessionList);
$view->setParam('workflowmode', $settings->_workflowMode);
$view->setParam('checkoutdir', $settings->_checkOutDir);

View File

@ -329,7 +329,7 @@ function getOverallStatusText($status) { /* {{{ */
}
} /* }}} */
function getAttributeValidationText($error, $attrname='', $attrvalue='') { /* {{{ */
function getAttributeValidationText($error, $attrname='', $attrvalue='', $regex='') { /* {{{ */
switch($error) {
case 10:
return getMLText("attr_not_in_valueset", array('attrname'=>$attrname, 'value'=>$attrvalue));
@ -353,7 +353,7 @@ function getAttributeValidationText($error, $attrname='', $attrvalue='') { /* {{
return getMLText("attr_malformed_url", array('attrname'=>$attrname, 'value'=>$attrvalue));
break;
case 3:
return getMLText("attr_no_regex_match", array('attrname'=>$attrname, 'value'=>$attrvalue));
return getMLText("attr_no_regex_match", array('attrname'=>$attrname, 'value'=>$attrvalue, 'regex'=>$regex));
break;
case 2:
return getMLText("attr_max_values", array('attrname'=>$attrname, 'value'=>$attrvalue));

View File

@ -424,7 +424,7 @@ function showtree() { /* {{{ */
global $settings;
if (isset($_GET["showtree"])) return intval($_GET["showtree"]);
else if ($settings->_enableFolderTree==0) return 0;
else if ($settings->_expandFolderTree==0) return 0;
return 1;
} /* }}} */
@ -586,4 +586,16 @@ function addDirSep($str) { /* {{{ */
else
return trim($str);
} /* }}} */
/**
* Formats comments for aknowledge of reception.
*
* Only use in documentListRow()
*/
function formatComment($an) { /* {{{ */
$t = array();
foreach($an as $a)
$t[] = $a['n']." × ".$a['c'];
return $t;
} /* }}} */
?>

View File

@ -165,13 +165,16 @@ do {
if(!$settings->_rootDir)
$settings->_rootDir = $rootDir;
//$settings->_coreDir = $settings->_rootDir;
//$settings->_luceneClassDir = $settings->_rootDir;
elseif(realpath ("..") != realpath($settings->_rootDir)) { // Fix rootDir if required
$msg = "Your Root directory has been modified to fit your installation path!";
$settings->_rootDir = realpath ("..")."/";
}
if(!$settings->_contentDir) {
$settings->_contentDir = $settings->_rootDir . 'data/';
$settings->_luceneDir = $settings->_rootDir . 'data/lucene/';
$settings->_stagingDir = $settings->_rootDir . 'data/staging/';
$settings->_cacheDir = $settings->_rootDir . 'data/cache/';
$settings->_contentDir = realpath($settings->_rootDir."..") . '/data/';
$settings->_luceneDir = $settings->_contentDir . 'lucene/';
$settings->_stagingDir = $settings->_contentDir . 'staging/';
$settings->_cacheDir = $settings->_contentDir . 'cache/';
} else {
if(!$settings->_cacheDir) {
$settings->_cacheDir = $settings->_contentDir . 'cache/';
@ -195,6 +198,8 @@ UI::htmlStartPage("INSTALL");
UI::globalBanner();
UI::contentStart();
UI::contentHeading("SeedDMS Installation for version ".SEEDDMS_VERSION);
if(isset($msg))
echo "<div class=\"alert alert-warning\">".$msg."</div>";
UI::contentContainerStart();

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 (1274)
// Translators: Admin (1275)
$text = array(
'2_factor_auth' => '',
@ -88,6 +88,14 @@ URL: [url]',
'already_subscribed' => 'بالفعل مشترك',
'and' => 'و',
'apply' => 'تطبيق',
'approvals_accepted' => '',
'approvals_and_reviews_accepted' => '',
'approvals_and_reviews_not_touched' => '',
'approvals_and_reviews_rejected' => '',
'approvals_not_touched' => '',
'approvals_rejected' => '',
'approvals_without_group' => '',
'approvals_without_user' => '',
'approval_deletion_email' => 'طلب الموافقة تم الغاؤه',
'approval_deletion_email_body' => '',
'approval_deletion_email_subject' => '',
@ -265,7 +273,9 @@ URL: [url]',
'confirm_rm_transmittal' => '',
'confirm_rm_transmittalitem' => '',
'confirm_rm_user' => 'هل تود حقا ازالة المستخدم "[username]"?<br>كن حذرا: هذا الاجراء لايمكن التراجع فيه',
'confirm_rm_user_from_processes' => '',
'confirm_rm_version' => 'هل تود حقا ازالة الاصدار [version] الخاص بالمستند "[documentname]"?<br>كن حذرا: هذا الاجراء لايمكن التراجع فيه',
'confirm_transfer_objects' => '',
'confirm_update_transmittalitem' => '',
'content' => 'المحتوى',
'continue' => 'استمرار',
@ -314,6 +324,7 @@ URL: [url]',
'documents_user_reception' => '',
'documents_user_rejected' => '',
'documents_user_requiring_attention' => 'مستندات ملكك تستلزم انتباهك',
'documents_with_notification' => '',
'document_already_checkedout' => '',
'document_already_locked' => 'هذا المستند محمي ضد التعديل',
'document_comment_changed_email' => 'تم تعديل التعليق',
@ -481,6 +492,7 @@ URL: [url]',
'folder' => 'مجلد',
'folders' => 'مجلدات',
'folders_and_documents_statistic' => 'رؤية عامة للمحتوى',
'folders_with_notification' => '',
'folder_comment_changed_email' => 'تم تعديل التعليق',
'folder_comment_changed_email_body' => 'تم تعديل التعليق
الملجلد: [name]
@ -609,6 +621,7 @@ URL: [url]',
'js_no_approval_group' => 'من فضلك اختر مجموعة الموافقة',
'js_no_approval_status' => 'من فضلك اختر حالة الموافقة',
'js_no_comment' => 'لايوجد تعليق',
'js_no_currentpwd' => '',
'js_no_email' => 'اكتب بريدك الالكتروني',
'js_no_file' => 'من فضلك اختر ملف',
'js_no_keywords' => 'من فضلك اختر بعض الكلمات البحثية',
@ -643,7 +656,7 @@ URL: [url]',
'linked_to_this_version' => '',
'link_alt_updatedocument' => 'اذا كنت تود تحميل ملفات اكبر من حجم الملفات المتاحة حاليا, من فضلك استخدم البديل <a href="%s">صفحة التحميل</a>.',
'link_to_version' => '',
'list_access_rights' => '',
'list_access_rights' => 'ﻉﺮﺿ ﻚﻟ ﺎﻠﺻﻼﺤﻳﺎﺗ',
'list_contains_no_access_docs' => '',
'list_hooks' => '',
'local_file' => 'ملف محلي',
@ -673,6 +686,7 @@ URL: [url]',
'march' => 'مارس',
'max_upload_size' => 'الحجم الاقصى للملف',
'may' => 'مايو',
'menu_dropfolder' => '',
'mimetype' => 'Mime type',
'minutes' => 'دقائق',
'misc' => 'متنوعات',
@ -816,7 +830,9 @@ URL: [url]',
'password_strength_insuffient' => 'قوة كلمة السر غير كافية',
'password_wrong' => 'كلمة سر خاطئة',
'pending_approvals' => '',
'pending_receipt' => '',
'pending_reviews' => '',
'pending_revision' => '',
'pending_workflows' => '',
'personal_default_keywords' => 'قوائم الكلمات البحثية الشخصية',
'pl_PL' => 'ﺎﻠﺑﻮﻠﻧﺪﻳﺓ',
@ -829,11 +845,18 @@ URL: [url]',
'preview_plain' => '',
'previous_state' => 'حالة سابقة',
'previous_versions' => 'اصدارات سابقة',
'process' => '',
'process_without_user_group' => '',
'pt_BR' => 'البرتغالية (BR)',
'quota' => 'المساحة المخصصة',
'quota_exceeded' => 'لقد قمت بتعدي المساحة المخصصة لك بمقدار [bytes].',
'quota_is_disabled' => '',
'quota_warning' => 'اقصى مساحة للقرص الصلب تم تعديها بمقدار [bytes]. من فضلك قم بمسح بعض المستندات او اصدارات سابقة منها',
'receipts_accepted' => '',
'receipts_not_touched' => '',
'receipts_rejected' => '',
'receipts_without_group' => '',
'receipts_without_user' => '',
'receipt_deletion_email_body' => '',
'receipt_deletion_email_subject' => '',
'receipt_log' => '',
@ -860,7 +883,7 @@ URL: [url]',
'removed_file_email_subject' => '[sitename]: [document] - تم ازالة المرفقات',
'removed_recipient' => '',
'removed_reviewer' => 'تم ازالته من قائمة المراجعة',
'removed_revispr' => '',
'removed_revisor' => '',
'removed_workflow_email_body' => 'تم ازالة مسار العمل من اصدار المستند
مستند: [name]
اصدار: [version]
@ -892,6 +915,11 @@ URL: [url]',
'reviewers' => 'المراجعون',
'reviewer_already_assigned' => 'بالفعل تم تخصيصة كمراجع',
'reviewer_already_removed' => 'بالفعل تم ازالته من عملية المراجعة او تم تقديمه للمراجعة',
'reviews_accepted' => '',
'reviews_not_touched' => '',
'reviews_rejected' => '',
'reviews_without_group' => '',
'reviews_without_user' => '',
'review_deletion_email' => 'طلب المراجعة تم مسحه',
'review_deletion_email_body' => '',
'review_deletion_email_subject' => '',
@ -916,6 +944,12 @@ URL: [url]',
'review_update_failed' => 'خطأ في تحديث حالة المراجعة. التحديث فشل.',
'revise_document' => '',
'revise_document_on' => '',
'revisions_accepted' => '',
'revisions_not_touched' => '',
'revisions_pending' => '',
'revisions_rejected' => '',
'revisions_without_group' => '',
'revisions_without_user' => '',
'revision_date' => '',
'revision_log' => '',
'revision_request_email_body' => '',
@ -950,6 +984,7 @@ URL: [url]',
'rm_transmittal' => '',
'rm_transmittalitem' => '',
'rm_user' => 'ازالة هذا المستخدم',
'rm_user_from_processes' => '',
'rm_version' => 'ازالة اصدار',
'rm_workflow' => 'ازالة مسار عمل',
'rm_workflow_action' => 'ازالة اجراء مسار عمل',
@ -1108,6 +1143,8 @@ URL: [url]',
'settings_enableClipboard_desc' => '',
'settings_enableConverting' => '',
'settings_enableConverting_desc' => '',
'settings_enableDropFolderList' => '',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => '',
'settings_enableDropUpload_desc' => '',
'settings_enableDuplicateDocNames' => '',
@ -1385,12 +1422,15 @@ URL: [url]',
'splash_rm_role' => '',
'splash_rm_transmittal' => '',
'splash_rm_user' => '',
'splash_rm_user_processes' => '',
'splash_saved_file' => '',
'splash_save_user_data' => '',
'splash_send_download_link' => '',
'splash_settings_saved' => '',
'splash_substituted_user' => '',
'splash_switched_back_user' => '',
'splash_toogle_group_manager' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => '',
'statistic' => '',
'status' => 'الحالة',
@ -1459,11 +1499,15 @@ URL: [url]',
'timeline_skip_status_change_1' => '',
'timeline_skip_status_change_2' => '',
'timeline_skip_status_change_3' => '',
'timeline_skip_status_change_4' => '',
'timeline_skip_status_change_5' => '',
'timeline_status_change' => 'ﺖﻐﻳﺭ ﺎﻠﺣﺎﻟﺓ ﻢﻋ ﺎﻟﺰﻤﻧ',
'to' => 'الى',
'toggle_manager' => 'رجح مدير',
'toggle_qrcode' => '',
'to_before_from' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transition_triggered_email' => 'تم تحريك انتقال مسار العمل',
'transition_triggered_email_body' => 'تم تحريك انتقال مسار العمل
المستند: [name]
@ -1522,10 +1566,12 @@ URL: [url]',
'uploading_zerosize' => 'تحميل ملف فارغ. عملية التحميل الغيت',
'used_discspace' => 'المساحة المستخدمة',
'user' => 'مستخدم',
'userid_groupid' => '',
'users' => 'مستخدمين',
'users_and_groups' => '',
'users_done_work' => '',
'user_exists' => 'المستخدم موجود بالفعل.',
'user_group' => '',
'user_group_management' => 'إدارة المستخدمين/المجموعات',
'user_image' => 'صورة',
'user_info' => 'بيانات المستخدمين',
@ -1559,6 +1605,7 @@ URL: [url]',
'weeks' => 'اسابيع',
'week_view' => 'عرض الاسبوع',
'workflow' => 'مسار عمل',
'workflows_involded' => '',
'workflow_actions_management' => 'ادارة اجراءات مسار العمل',
'workflow_action_in_use' => 'هذا الاجراء مستخدم حاليا في مسار عمل',
'workflow_action_name' => 'اسم',

View File

@ -84,6 +84,14 @@ $text = array(
'already_subscribed' => 'Вече е подписан',
'and' => 'и',
'apply' => 'Приложи',
'approvals_accepted' => '',
'approvals_and_reviews_accepted' => '',
'approvals_and_reviews_not_touched' => '',
'approvals_and_reviews_rejected' => '',
'approvals_not_touched' => '',
'approvals_rejected' => '',
'approvals_without_group' => '',
'approvals_without_user' => '',
'approval_deletion_email' => 'Запитване за утвърждаване за изтрит',
'approval_deletion_email_body' => '',
'approval_deletion_email_subject' => '',
@ -250,7 +258,9 @@ $text = array(
'confirm_rm_transmittal' => '',
'confirm_rm_transmittalitem' => '',
'confirm_rm_user' => 'Изтрий потребител "[username]"?<br>Действието е перманентно',
'confirm_rm_user_from_processes' => '',
'confirm_rm_version' => 'Изтрий версия на [version] документ "[documentname]"?<br>Действието е перманентно',
'confirm_transfer_objects' => '',
'confirm_update_transmittalitem' => '',
'content' => 'Съдържание',
'continue' => 'Продължи',
@ -299,6 +309,7 @@ $text = array(
'documents_user_reception' => '',
'documents_user_rejected' => '',
'documents_user_requiring_attention' => 'Ваши документи, изискващи внимание',
'documents_with_notification' => '',
'document_already_checkedout' => '',
'document_already_locked' => 'Документът е вече блокиран',
'document_comment_changed_email' => '',
@ -432,6 +443,7 @@ $text = array(
'folder' => 'Папка',
'folders' => 'Папки',
'folders_and_documents_statistic' => 'Обзор на съдържанието',
'folders_with_notification' => '',
'folder_comment_changed_email' => '',
'folder_comment_changed_email_body' => '',
'folder_comment_changed_email_subject' => '',
@ -540,6 +552,7 @@ $text = array(
'js_no_approval_group' => 'Изберете утвърждаваща група',
'js_no_approval_status' => 'Изберете статусът на утвърждаване',
'js_no_comment' => 'Няма коментар',
'js_no_currentpwd' => '',
'js_no_email' => 'Въведете своя Email',
'js_no_file' => 'Изберете файл',
'js_no_keywords' => 'Укажете ключови думи',
@ -604,6 +617,7 @@ $text = array(
'march' => 'март',
'max_upload_size' => 'Лимит за размер на файла',
'may' => 'май',
'menu_dropfolder' => '',
'mimetype' => 'Mime тип',
'minutes' => 'минути',
'misc' => 'Разни',
@ -717,7 +731,9 @@ $text = array(
'password_strength_insuffient' => 'Недостатъчна устойчивост на паролата',
'password_wrong' => 'Грешна парола',
'pending_approvals' => '',
'pending_receipt' => '',
'pending_reviews' => '',
'pending_revision' => '',
'pending_workflows' => '',
'personal_default_keywords' => 'Личен списък с ключови думи',
'pl_PL' => 'Полски',
@ -730,11 +746,18 @@ $text = array(
'preview_plain' => '',
'previous_state' => 'Предишно състояние',
'previous_versions' => 'Предишни версии',
'process' => '',
'process_without_user_group' => '',
'pt_BR' => 'Португалски (Бразилия)',
'quota' => 'Квота',
'quota_exceeded' => 'Вашата дискова квота е превишена с [bytes].',
'quota_is_disabled' => '',
'quota_warning' => 'Вашето max. използуване на диска е превишена с [bytes]. Please remove documents or previous versions.',
'receipts_accepted' => '',
'receipts_not_touched' => '',
'receipts_rejected' => '',
'receipts_without_group' => '',
'receipts_without_user' => '',
'receipt_deletion_email_body' => '',
'receipt_deletion_email_subject' => '',
'receipt_log' => '',
@ -758,7 +781,7 @@ $text = array(
'removed_file_email_subject' => '',
'removed_recipient' => '',
'removed_reviewer' => 'изтрит от списъка с рецензиращи',
'removed_revispr' => '',
'removed_revisor' => '',
'removed_workflow_email_body' => '',
'removed_workflow_email_subject' => '',
'removeFolderFromDropFolder' => '',
@ -777,6 +800,11 @@ $text = array(
'reviewers' => 'Рецензиращи',
'reviewer_already_assigned' => 'вече назначено за рецензиране',
'reviewer_already_removed' => 'вече премахнат от списъка с рецензиращи или вече е оставил рецензия',
'reviews_accepted' => '',
'reviews_not_touched' => '',
'reviews_rejected' => '',
'reviews_without_group' => '',
'reviews_without_user' => '',
'review_deletion_email' => 'Запитване за рецензия премахнато',
'review_deletion_email_body' => '',
'review_deletion_email_subject' => '',
@ -794,6 +822,12 @@ $text = array(
'review_update_failed' => 'грешка при обновяване статуса на рецензията',
'revise_document' => '',
'revise_document_on' => '',
'revisions_accepted' => '',
'revisions_not_touched' => '',
'revisions_pending' => '',
'revisions_rejected' => '',
'revisions_without_group' => '',
'revisions_without_user' => '',
'revision_date' => '',
'revision_log' => '',
'revision_request_email_body' => '',
@ -822,6 +856,7 @@ $text = array(
'rm_transmittal' => '',
'rm_transmittalitem' => '',
'rm_user' => 'Премахни тоз потребител',
'rm_user_from_processes' => '',
'rm_version' => 'Премахни версия',
'rm_workflow' => 'Премахни процес',
'rm_workflow_action' => 'Премахни действие по процес',
@ -973,6 +1008,8 @@ $text = array(
'settings_enableClipboard_desc' => '',
'settings_enableConverting' => 'Включи конвертирането',
'settings_enableConverting_desc' => 'Включване/изключване конвертирането на файлове',
'settings_enableDropFolderList' => '',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => '',
'settings_enableDropUpload_desc' => '',
'settings_enableDuplicateDocNames' => 'Разреши еднакви имена на документи',
@ -1250,12 +1287,15 @@ $text = array(
'splash_rm_role' => '',
'splash_rm_transmittal' => '',
'splash_rm_user' => '',
'splash_rm_user_processes' => '',
'splash_saved_file' => '',
'splash_save_user_data' => '',
'splash_send_download_link' => '',
'splash_settings_saved' => '',
'splash_substituted_user' => '',
'splash_switched_back_user' => '',
'splash_toogle_group_manager' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => '',
'statistic' => '',
'status' => 'Статус',
@ -1324,11 +1364,15 @@ $text = array(
'timeline_skip_status_change_1' => '',
'timeline_skip_status_change_2' => '',
'timeline_skip_status_change_3' => '',
'timeline_skip_status_change_4' => '',
'timeline_skip_status_change_5' => '',
'timeline_status_change' => '',
'to' => 'към',
'toggle_manager' => 'Превключи мениджър',
'toggle_qrcode' => '',
'to_before_from' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transition_triggered_email' => 'Забелязана промяна на процес',
'transition_triggered_email_body' => '',
'transition_triggered_email_subject' => '',
@ -1378,10 +1422,12 @@ $text = array(
'uploading_zerosize' => 'Качване на празен файл/размер=0. Качването прекратено.',
'used_discspace' => 'Използвано дисково пространство',
'user' => 'Потребител',
'userid_groupid' => '',
'users' => 'Потребители',
'users_and_groups' => '',
'users_done_work' => '',
'user_exists' => 'Потребителя вече съществува.',
'user_group' => '',
'user_group_management' => 'Управление на потребители/групи',
'user_image' => 'Изображение',
'user_info' => 'Информация за потребител',
@ -1410,6 +1456,7 @@ $text = array(
'weeks' => 'седмици',
'week_view' => 'седмичен изглед',
'workflow' => 'процес',
'workflows_involded' => '',
'workflow_actions_management' => 'Управление на действията по процеси',
'workflow_action_in_use' => 'Това действие се използва от даден процес.',
'workflow_action_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 (722)
// Translators: Admin (725)
$text = array(
'2_factor_auth' => '',
@ -84,6 +84,14 @@ $text = array(
'already_subscribed' => 'Ja està subscrit',
'and' => 'i',
'apply' => 'Apply',
'approvals_accepted' => '',
'approvals_and_reviews_accepted' => '',
'approvals_and_reviews_not_touched' => '',
'approvals_and_reviews_rejected' => '',
'approvals_not_touched' => '',
'approvals_rejected' => '',
'approvals_without_group' => '',
'approvals_without_user' => '',
'approval_deletion_email' => 'Demanda d\'aprovació esborrada',
'approval_deletion_email_body' => '',
'approval_deletion_email_subject' => '',
@ -217,14 +225,14 @@ URL: [url]',
'checkout_is_disabled' => '',
'choose_attrdef' => '',
'choose_attrdefgroup' => '',
'choose_category' => '--Elegir categoria--',
'choose_group' => '--Seleccionar grup--',
'choose_category' => 'Elegir categoria',
'choose_group' => 'Seleccionar grup',
'choose_role' => '',
'choose_target_category' => '',
'choose_target_document' => 'Escollir document',
'choose_target_file' => '',
'choose_target_folder' => 'Escollir directori de destinació',
'choose_user' => '--Seleccionar usuari--',
'choose_user' => 'Seleccionar usuari',
'choose_workflow' => '',
'choose_workflow_action' => '',
'choose_workflow_state' => '',
@ -255,7 +263,9 @@ URL: [url]',
'confirm_rm_transmittal' => '',
'confirm_rm_transmittalitem' => '',
'confirm_rm_user' => '¿Vol realment eliminar l\'usuari "[username]"?<br />Atenció: aquesta acció no es pot desfer.',
'confirm_rm_user_from_processes' => '',
'confirm_rm_version' => '¿Vol realment eliminar la versió [version] del document "[documentname]"?<br />Atenció: aquesta acció no es pot desfer.',
'confirm_transfer_objects' => '',
'confirm_update_transmittalitem' => '',
'content' => 'Contingut',
'continue' => 'Continuar',
@ -304,6 +314,7 @@ URL: [url]',
'documents_user_reception' => '',
'documents_user_rejected' => '',
'documents_user_requiring_attention' => 'Documents de la seva propietat que requereixen atenció',
'documents_with_notification' => '',
'document_already_checkedout' => '',
'document_already_locked' => 'Aquest document ja està bloquejat',
'document_comment_changed_email' => '',
@ -437,6 +448,7 @@ URL: [url]',
'folder' => 'Carpeta',
'folders' => 'Carpetes',
'folders_and_documents_statistic' => 'Vista general de continguts',
'folders_with_notification' => '',
'folder_comment_changed_email' => '',
'folder_comment_changed_email_body' => '',
'folder_comment_changed_email_subject' => '',
@ -545,6 +557,7 @@ URL: [url]',
'js_no_approval_group' => 'Si us plau, seleccioneu grup d\'aprovació',
'js_no_approval_status' => 'Si us plau, seleccioneu l\'estat d\'aprovació',
'js_no_comment' => 'No hi ha comentaris',
'js_no_currentpwd' => '',
'js_no_email' => 'Si us plau, escriviu la vostra adreça de correu electrònic',
'js_no_file' => 'Si us plau, seleccioneu un arxiu',
'js_no_keywords' => 'Si us plau, especifiqueu mots clau',
@ -609,6 +622,7 @@ URL: [url]',
'march' => 'Març',
'max_upload_size' => 'Mida màxima de pujada de cada fitxer',
'may' => 'Maig',
'menu_dropfolder' => '',
'mimetype' => '',
'minutes' => '',
'misc' => 'Miscelànea',
@ -722,7 +736,9 @@ URL: [url]',
'password_strength_insuffient' => '',
'password_wrong' => '',
'pending_approvals' => '',
'pending_receipt' => '',
'pending_reviews' => '',
'pending_revision' => '',
'pending_workflows' => '',
'personal_default_keywords' => 'Mots clau personals',
'pl_PL' => 'Polonès',
@ -735,11 +751,18 @@ URL: [url]',
'preview_plain' => '',
'previous_state' => '',
'previous_versions' => 'Versions anteriors',
'process' => '',
'process_without_user_group' => '',
'pt_BR' => 'Portuguès',
'quota' => '',
'quota_exceeded' => '',
'quota_is_disabled' => '',
'quota_warning' => '',
'receipts_accepted' => '',
'receipts_not_touched' => '',
'receipts_rejected' => '',
'receipts_without_group' => '',
'receipts_without_user' => '',
'receipt_deletion_email_body' => '',
'receipt_deletion_email_subject' => '',
'receipt_log' => '',
@ -763,7 +786,7 @@ URL: [url]',
'removed_file_email_subject' => '',
'removed_recipient' => '',
'removed_reviewer' => 'Ha estat eliminat de la llista de revisors',
'removed_revispr' => '',
'removed_revisor' => '',
'removed_workflow_email_body' => '',
'removed_workflow_email_subject' => '',
'removeFolderFromDropFolder' => '',
@ -782,6 +805,11 @@ URL: [url]',
'reviewers' => 'Revisors',
'reviewer_already_assigned' => 'Ja està asignat com revisor',
'reviewer_already_removed' => 'Ja ha estat eliminat del procés de revisió o ja ha enviat una revisió',
'reviews_accepted' => '',
'reviews_not_touched' => '',
'reviews_rejected' => '',
'reviews_without_group' => '',
'reviews_without_user' => '',
'review_deletion_email' => 'Petició de revisió eliminada',
'review_deletion_email_body' => '',
'review_deletion_email_subject' => '',
@ -799,6 +827,12 @@ URL: [url]',
'review_update_failed' => 'Error actualitzant l\'estat de la revisió. L\'actualizació ha fallat.',
'revise_document' => '',
'revise_document_on' => '',
'revisions_accepted' => '',
'revisions_not_touched' => '',
'revisions_pending' => '',
'revisions_rejected' => '',
'revisions_without_group' => '',
'revisions_without_user' => '',
'revision_date' => '',
'revision_log' => '',
'revision_request_email_body' => '',
@ -827,6 +861,7 @@ URL: [url]',
'rm_transmittal' => '',
'rm_transmittalitem' => '',
'rm_user' => 'Eliminar aquest usuari',
'rm_user_from_processes' => '',
'rm_version' => 'Eliminar versió',
'rm_workflow' => '',
'rm_workflow_action' => '',
@ -978,6 +1013,8 @@ URL: [url]',
'settings_enableClipboard_desc' => '',
'settings_enableConverting' => '',
'settings_enableConverting_desc' => '',
'settings_enableDropFolderList' => '',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => '',
'settings_enableDropUpload_desc' => '',
'settings_enableDuplicateDocNames' => '',
@ -1255,12 +1292,15 @@ URL: [url]',
'splash_rm_role' => '',
'splash_rm_transmittal' => '',
'splash_rm_user' => '',
'splash_rm_user_processes' => '',
'splash_saved_file' => '',
'splash_save_user_data' => '',
'splash_send_download_link' => '',
'splash_settings_saved' => '',
'splash_substituted_user' => '',
'splash_switched_back_user' => '',
'splash_toogle_group_manager' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => '',
'statistic' => '',
'status' => 'Estat',
@ -1329,11 +1369,15 @@ URL: [url]',
'timeline_skip_status_change_1' => '',
'timeline_skip_status_change_2' => '',
'timeline_skip_status_change_3' => '',
'timeline_skip_status_change_4' => '',
'timeline_skip_status_change_5' => '',
'timeline_status_change' => 'Versió [version]:[status]',
'to' => 'Fins',
'toggle_manager' => 'Intercanviar manager',
'toggle_qrcode' => '',
'to_before_from' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transition_triggered_email' => '',
'transition_triggered_email_body' => '',
'transition_triggered_email_subject' => '',
@ -1383,10 +1427,12 @@ URL: [url]',
'uploading_zerosize' => '',
'used_discspace' => 'Espai utilitzat',
'user' => 'Usuari',
'userid_groupid' => '',
'users' => 'Usuaris',
'users_and_groups' => '',
'users_done_work' => '',
'user_exists' => 'L\'usuari ja existeix.',
'user_group' => '',
'user_group_management' => '',
'user_image' => 'Imatge',
'user_info' => 'Informació d\'usuari',
@ -1415,6 +1461,7 @@ URL: [url]',
'weeks' => '',
'week_view' => 'Vista de setmana',
'workflow' => '',
'workflows_involded' => '',
'workflow_actions_management' => '',
'workflow_action_in_use' => '',
'workflow_action_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 (722), kreml (455)
// Translators: Admin (725), kreml (455)
$text = array(
'2_factor_auth' => '',
@ -88,6 +88,14 @@ URL: [url]',
'already_subscribed' => 'Již odebráno',
'and' => 'a',
'apply' => 'Použít',
'approvals_accepted' => '',
'approvals_and_reviews_accepted' => '',
'approvals_and_reviews_not_touched' => '',
'approvals_and_reviews_rejected' => '',
'approvals_not_touched' => '',
'approvals_rejected' => '',
'approvals_without_group' => '',
'approvals_without_user' => '',
'approval_deletion_email' => 'Zrušení schválení požadavku',
'approval_deletion_email_body' => '',
'approval_deletion_email_subject' => '',
@ -234,14 +242,14 @@ URL: [url]',
'checkout_is_disabled' => '',
'choose_attrdef' => 'Zvolte definici atributů',
'choose_attrdefgroup' => '',
'choose_category' => '--Vyberte prosím--',
'choose_group' => '--Vyberte skupinu--',
'choose_category' => 'Vyberte prosím',
'choose_group' => 'Vyberte skupinu',
'choose_role' => '',
'choose_target_category' => 'Vyberte kategorii',
'choose_target_document' => 'Vyberte dokument',
'choose_target_file' => 'Zvolte soubor',
'choose_target_folder' => 'Vyberte cílovou složku',
'choose_user' => '--Vyberte uživatele--',
'choose_user' => 'Vyberte uživatele',
'choose_workflow' => 'Zvolte pracovní postup',
'choose_workflow_action' => 'Zvolte akci pracovního postupu',
'choose_workflow_state' => 'Zvolit akci pracovního postupu',
@ -272,7 +280,9 @@ URL: [url]',
'confirm_rm_transmittal' => '',
'confirm_rm_transmittalitem' => '',
'confirm_rm_user' => 'Skutečně chcete odstranit uživatele "[username]"?<br>Pozor: Akce je nevratná.',
'confirm_rm_user_from_processes' => '',
'confirm_rm_version' => 'Skutečně chcete odstranit verzi [version] dokumentu "[documentname]"?<br>Buďte opatrní: Tuto činnost není možné vrátit zpět.',
'confirm_transfer_objects' => '',
'confirm_update_transmittalitem' => '',
'content' => 'Domů',
'continue' => 'Pokračovat',
@ -321,6 +331,7 @@ URL: [url]',
'documents_user_reception' => '',
'documents_user_rejected' => '',
'documents_user_requiring_attention' => 'Dokumenty, které uživatel vlastní a vyžadují pozornost',
'documents_with_notification' => '',
'document_already_checkedout' => '',
'document_already_locked' => 'Tento dokument je už zamčený',
'document_comment_changed_email' => 'Změna komentáře',
@ -488,6 +499,7 @@ URL: [url]',
'folder' => 'Složka',
'folders' => 'Složky',
'folders_and_documents_statistic' => 'Přehled složek a dokumentů',
'folders_with_notification' => '',
'folder_comment_changed_email' => 'Změna komentáře',
'folder_comment_changed_email_body' => 'Změna komentáře
Složka: [name]
@ -616,6 +628,7 @@ URL: [url]',
'js_no_approval_group' => 'Prosím, vyberte skupinu pro schválení',
'js_no_approval_status' => 'Prosím, vyberte stav schválení',
'js_no_comment' => 'Žádný komentář',
'js_no_currentpwd' => '',
'js_no_email' => 'Napište svou emailovou adresu',
'js_no_file' => 'Prosím, vyberte soubor',
'js_no_keywords' => 'Zadejte nějaká klíčová slova',
@ -680,6 +693,7 @@ URL: [url]',
'march' => 'Březen',
'max_upload_size' => 'Max. délka pro nahrání jednoho souboru',
'may' => 'Květen',
'menu_dropfolder' => '',
'mimetype' => 'Typ "MIME"',
'minutes' => 'minuty',
'misc' => 'Různé',
@ -827,7 +841,9 @@ Pokud budete mít problém s přihlášením i po změně hesla, kontaktujte Adm
'password_strength_insuffient' => 'Nedostatečná síla hesla',
'password_wrong' => 'Špatné heslo',
'pending_approvals' => '',
'pending_receipt' => '',
'pending_reviews' => '',
'pending_revision' => '',
'pending_workflows' => '',
'personal_default_keywords' => 'Osobní klíčová slova',
'pl_PL' => 'Polština',
@ -840,11 +856,18 @@ Pokud budete mít problém s přihlášením i po změně hesla, kontaktujte Adm
'preview_plain' => '',
'previous_state' => 'Předchozí stav',
'previous_versions' => 'Předešlé verze',
'process' => '',
'process_without_user_group' => '',
'pt_BR' => 'Portugalština (BR)',
'quota' => 'Kvóta',
'quota_exceeded' => 'Vaše kvóta disku je překročena o [bytes].',
'quota_is_disabled' => 'Podpora kvót je v současné době zakázána v nastavení. Nastavení uživatelských kvót nebude mít žádný vliv, dokud se znovu neaktivuje.',
'quota_warning' => 'Vaše maximální využití disku je překročeno o [bajtů]. Prosím, odstraňte dokumenty nebo předchozí verze.',
'receipts_accepted' => '',
'receipts_not_touched' => '',
'receipts_rejected' => '',
'receipts_without_group' => '',
'receipts_without_user' => '',
'receipt_deletion_email_body' => '',
'receipt_deletion_email_subject' => '',
'receipt_log' => '',
@ -871,7 +894,7 @@ URL: [url]',
'removed_file_email_subject' => '[sitename]: [document] - Odstraněná příloha',
'removed_recipient' => '',
'removed_reviewer' => 'byl odstraněn ze seznamu kontrolorů.',
'removed_revispr' => '',
'removed_revisor' => '',
'removed_workflow_email_body' => 'Odstraněn pracovní postup z verze dokumentu: [name]
Verze: [version]
Praconí postup: [workflow]
@ -902,6 +925,11 @@ URL: [url]',
'reviewers' => 'Kontroloři',
'reviewer_already_assigned' => 'je už pověřen jako kontrolor',
'reviewer_already_removed' => 'už byl odstraněn z procesu kontroly nebo poslal kontrolu',
'reviews_accepted' => '',
'reviews_not_touched' => '',
'reviews_rejected' => '',
'reviews_without_group' => '',
'reviews_without_user' => '',
'review_deletion_email' => 'Žádost na revizi odstraněn',
'review_deletion_email_body' => '',
'review_deletion_email_subject' => '',
@ -925,6 +953,12 @@ URL: [url]',
'review_update_failed' => 'Chyba při aktualizaci stavu kontroly. Aktualizace selhala.',
'revise_document' => '',
'revise_document_on' => '',
'revisions_accepted' => '',
'revisions_not_touched' => '',
'revisions_pending' => '',
'revisions_rejected' => '',
'revisions_without_group' => '',
'revisions_without_user' => '',
'revision_date' => '',
'revision_log' => '',
'revision_request_email_body' => '',
@ -959,6 +993,7 @@ URL: [url]',
'rm_transmittal' => '',
'rm_transmittalitem' => '',
'rm_user' => 'Odstranit tohoto uživatele',
'rm_user_from_processes' => '',
'rm_version' => 'Odstranit verzi',
'rm_workflow' => 'Odstranit pracovní postup',
'rm_workflow_action' => 'Odstranit akci pracovního postupu',
@ -1117,6 +1152,8 @@ URL: [url]',
'settings_enableClipboard_desc' => 'Povolit/zakázat schránku',
'settings_enableConverting' => 'Povolit konverzi',
'settings_enableConverting_desc' => '',
'settings_enableDropFolderList' => '',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => 'Povolit rychlý upload',
'settings_enableDropUpload_desc' => 'Povolit/zakázat pokládácí prostor na stránce \'Zobrazení složek\' pro upload souborů pomocí Drag&Drop.',
'settings_enableDuplicateDocNames' => 'Povolit duplicitu názvů dokumentů',
@ -1394,12 +1431,15 @@ URL: [url]',
'splash_rm_role' => '',
'splash_rm_transmittal' => '',
'splash_rm_user' => 'Uživatel odstraněn',
'splash_rm_user_processes' => '',
'splash_saved_file' => '',
'splash_save_user_data' => '',
'splash_send_download_link' => '',
'splash_settings_saved' => 'Nastavení uloženo',
'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_objects' => '',
'state_and_next_state' => 'Stav/Další stav',
'statistic' => 'Statistika',
'status' => 'Stav',
@ -1468,11 +1508,15 @@ URL: [url]',
'timeline_skip_status_change_1' => '',
'timeline_skip_status_change_2' => '',
'timeline_skip_status_change_3' => '',
'timeline_skip_status_change_4' => '',
'timeline_skip_status_change_5' => '',
'timeline_status_change' => 'Verze [version]: [status]',
'to' => 'Do',
'toggle_manager' => 'Přepnout správce',
'toggle_qrcode' => '',
'to_before_from' => 'Datum ukončení nesmí být před datem zahájení',
'transfer_objects' => '',
'transfer_objects_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]
@ -1531,10 +1575,12 @@ URL: [url]',
'uploading_zerosize' => 'Nahrávání prázdného souboru. Nahrání zrušeno.',
'used_discspace' => 'Použité místo na disku',
'user' => 'Uživatel',
'userid_groupid' => '',
'users' => 'Uživatel',
'users_and_groups' => 'Uživatelé/Skupiny',
'users_done_work' => 'Uživatel ukončil práci',
'user_exists' => 'Uživatel už existuje.',
'user_group' => '',
'user_group_management' => 'Správa uživatelů/skupin',
'user_image' => 'Obrázek',
'user_info' => 'Informace o uživateli',
@ -1568,6 +1614,7 @@ URL: [url]',
'weeks' => 'týdny',
'week_view' => 'Zobrazení týdne',
'workflow' => 'Pracovní postup',
'workflows_involded' => '',
'workflow_actions_management' => 'Správa akcí pracovního postupu',
'workflow_action_in_use' => 'Tato akce je v současnosti používana pracovním postupem.',
'workflow_action_name' => 'Název',

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 (2420), dgrutsch (22)
// Translators: Admin (2476), dgrutsch (22)
$text = array(
'2_factor_auth' => '2-Faktor Authentifizierung',
@ -88,6 +88,14 @@ URL: [url]',
'already_subscribed' => 'Bereits aboniert',
'and' => 'und',
'apply' => 'Anwenden',
'approvals_accepted' => '[no_approvals] Freigaben',
'approvals_and_reviews_accepted' => '[no_approvals] Freigaben und [no_reviews] Prüfungen',
'approvals_and_reviews_not_touched' => '[no_approvals] offene Freigaben und [no_reviews] offenen Prüfungen',
'approvals_and_reviews_rejected' => '[no_approvals] abgelehnte Freigaben und [no_reviews] abgelehnte Prüfungen',
'approvals_not_touched' => '[no_approvals] offene Freigaben',
'approvals_rejected' => '[no_approvals] abgelehnte Freigaben',
'approvals_without_group' => 'Freigaben ohne Gruppe',
'approvals_without_user' => 'Freigaben ohne Benutzer',
'approval_deletion_email' => 'Freigabeaufforderung gelöscht',
'approval_deletion_email_body' => 'Freigabeaufforderung gelöscht
Dokument: [name]
@ -109,7 +117,7 @@ URL: [url]',
'approval_request_email_subject' => '[sitename]: [name] - Aufforderung zur Freigabe',
'approval_status' => 'Freigabestatus',
'approval_submit_email' => '',
'approval_submit_email_body' => 'Freigabe erteilen
'approval_submit_email_body' => 'Freigabe erteilt
Dokument: [name]
Version: [version]
Elternordner: [folder_path]
@ -277,7 +285,9 @@ URL: [url]',
'confirm_rm_transmittal' => 'Bitte bestätigen Sie as Löschen der Dokumentenliste.',
'confirm_rm_transmittalitem' => 'Löschen bestätigen',
'confirm_rm_user' => 'Möchten Sie wirklich den Benutzer "[username]" löschen?<br />Beachten Sie, dass diese Operation nicht rückgängig gemacht werden kann.',
'confirm_rm_user_from_processes' => 'Möchten Sie wirklich den Benutzer "[username]" aus allen Prozessen löschen?<br />Beachten Sie, dass dies möglicherweise in der Freigabe von Dokumenten resultiert, wenn der Benutzer der einzige oder letzte Prüfer ist.',
'confirm_rm_version' => 'Wollen Sie die Version [version] des Dokumentes "[documentname]" wirklich löschen?<br>Achtung: Dieser Vorgang kann nicht rückgängig gemacht werden.',
'confirm_transfer_objects' => 'Möchten Sie wirklich die Dokumente, Ordner, etc. des Benutzer "[username]" übertragen?<br />Beachten Sie, dass diese Operation nicht rückgängig gemacht werden kann.',
'confirm_update_transmittalitem' => 'Aktualisierung bestätigen',
'content' => 'Inhalt',
'continue' => 'fortführen',
@ -326,6 +336,7 @@ URL: [url]',
'documents_user_reception' => 'Dokumente mit Empfangsbestätigung',
'documents_user_rejected' => 'Abgelehnte Dokumente',
'documents_user_requiring_attention' => 'Diese Dokumente sollte ich mal nachsehen',
'documents_with_notification' => 'Dokumente unter Beobachtung',
'document_already_checkedout' => 'Dieses Dokument ist bereits ausgecheckt',
'document_already_locked' => 'Dieses Dokument ist bereits gesperrt',
'document_comment_changed_email' => 'Kommentar geändert',
@ -499,6 +510,7 @@ URL: [url]',
'folder' => 'Ordner',
'folders' => 'Verzeichnisse',
'folders_and_documents_statistic' => 'Ordner- und Dokumentenübersicht',
'folders_with_notification' => 'Ordner unter Beobachtung',
'folder_comment_changed_email' => 'Kommentar geändert',
'folder_comment_changed_email_body' => 'Kommentar geändert
Ordner: [name]
@ -627,6 +639,7 @@ URL: [url]',
'js_no_approval_group' => 'Wählen Sie bitte eine Freigabe-Gruppe aus',
'js_no_approval_status' => 'Wählen Sie bitte einen Freigabe-Status aus',
'js_no_comment' => 'Geben Sie einen Kommentar an',
'js_no_currentpwd' => 'Bitte das aktuelle Passwort eintragen',
'js_no_email' => 'Geben Sie eine Email-Adresse an',
'js_no_file' => 'Bitte wählen Sie eine Datei',
'js_no_keywords' => 'Geben Sie einige Stichwörter an',
@ -691,6 +704,7 @@ URL: [url]',
'march' => 'März',
'max_upload_size' => 'Maximale Dateigröße',
'may' => 'Mai',
'menu_dropfolder' => 'Ablageordner',
'mimetype' => 'Mime-Type',
'minutes' => 'Minuten',
'misc' => 'Sonstiges',
@ -841,7 +855,9 @@ Sollen Sie danach immer noch Problem bei der Anmeldung haben, dann kontaktieren
'password_strength_insuffient' => 'Ungenügend starkes Passwort',
'password_wrong' => 'Falsches Passwort',
'pending_approvals' => 'Ausstehende Freigaben',
'pending_receipt' => 'Ausstehende Empfangsbestätigungen',
'pending_reviews' => 'Ausstehende Prüfungen',
'pending_revision' => 'Ausstehende Wiederholungsprüfungen',
'pending_workflows' => 'Ausstehende Workflows',
'personal_default_keywords' => 'Persönliche Stichwortlisten',
'pl_PL' => 'Polnisch',
@ -854,11 +870,18 @@ Sollen Sie danach immer noch Problem bei der Anmeldung haben, dann kontaktieren
'preview_plain' => 'Text',
'previous_state' => 'Voriger Status',
'previous_versions' => 'Vorhergehende Versionen',
'process' => 'Prozess',
'process_without_user_group' => 'Prozesse ohne Benutzer/Gruppe',
'pt_BR' => 'Portugiesisch (BR)',
'quota' => 'Quota',
'quota_exceeded' => 'Ihr maximal verfügbarer Plattenplatz wurde um [bytes] überschritten.',
'quota_is_disabled' => 'Quota-Unterstützung ist zur Zeit ausgeschaltet. Benutzer-Quota werden ignoriert bis Quota-Unterstützung in den Einstellungen eingeschaltet wird.',
'quota_warning' => 'Ihr maximal verfügbarer Plattenplatz wurde um [bytes] überschritten. Bitte löschen Sie Dokumente oder ältere Versionen.',
'receipts_accepted' => '[no_receipts] Empfangsbestätigungen',
'receipts_not_touched' => '[no_receipts] offene Empfangsbestätigungen',
'receipts_rejected' => '[no_receipts] abgelehnte Empfangsbestätigungen',
'receipts_without_group' => 'Empfangsbestätigungen ohne Gruppe',
'receipts_without_user' => 'Empfangsbestätigungen ohne Benutzer',
'receipt_deletion_email_body' => 'Benutzer von Liste der Empfänger gelöscht
Dokument: [name]
Version: [version]
@ -896,7 +919,7 @@ URL: [url]',
'removed_file_email_subject' => '[sitename]: [document] - Anhang gelöscht',
'removed_recipient' => 'ist von der Empfängerliste entfernt worden',
'removed_reviewer' => 'ist von der Prüfer-Liste entfernt worden.',
'removed_revispr' => 'ist von der Liste der Wiederholungsprüfer entfernt worden.',
'removed_revisor' => 'ist von der Liste der Wiederholungsprüfer entfernt worden.',
'removed_workflow_email_body' => 'Workflow von Dokumentenversion entfernt
Dokument: [name]
Version: [version]
@ -935,6 +958,11 @@ URL: [url]',
'reviewers' => 'Prüfer',
'reviewer_already_assigned' => 'Prüfer bereits zugewiesen',
'reviewer_already_removed' => 'Prüfer wurde bereits aus dem Prüfvorgang entfernt oder hat die Prüfung bereits abgeschlossen',
'reviews_accepted' => '[no_reviews] Prüfungen',
'reviews_not_touched' => '[no_reviews] offene Prüfungen',
'reviews_rejected' => '[no_reviews] abgelehnte Prüfungen',
'reviews_without_group' => 'Prüfungen ohne Gruppe',
'reviews_without_user' => 'Prüfungen ohne Benutzer',
'review_deletion_email' => 'Prüfungsaufforderung gelöscht',
'review_deletion_email_body' => 'Prüfungsaufforderung gelöscht
Dokument: [name]
@ -969,6 +997,12 @@ URL: [url]',
'review_update_failed' => 'Störung bei Aktualisierung des Prüfstatus. Aktualisierung gescheitert.',
'revise_document' => 'Dokument überprüfen',
'revise_document_on' => 'Nächste Überprüfung des Dokuments am [date]',
'revisions_accepted' => '[no_revisions] Wiederholungsprüfungen',
'revisions_not_touched' => '[no_revisions] offene Wiederholungspüfungen',
'revisions_pending' => '[no_revisions] zukünftige Wiederholungsprüfungen',
'revisions_rejected' => '[no_revisions] abgelehnte Wiederholungsprüfungen',
'revisions_without_group' => 'Wiederholungsprüfungen ohne Gruppe',
'revisions_without_user' => 'Wiederholungsprüfungen ohne Benutzer',
'revision_date' => 'Datum der Wiederholungsprüfung',
'revision_log' => 'Protokoll der erneuten Prüfung',
'revision_request_email_body' => 'Aufforderung zur Wiederholungsprüfung
@ -979,7 +1013,7 @@ Benutzer: [username]
URL: [url]',
'revision_request_email_subject' => '[sitename]: [name] - Aufforderung zur Wiederholungsprüfung',
'revision_status' => 'Status',
'revision_submit_email_body' => 'Erneute Freigabe erteilen
'revision_submit_email_body' => 'Erneute Freigabe erteilt
Dokument: [name]
Version: [version]
Elternordner: [folder_path]
@ -1014,7 +1048,8 @@ URL: [url]',
'rm_role' => 'Diese Rolle löschen',
'rm_transmittal' => 'Dokumentenliste entfernen',
'rm_transmittalitem' => 'Eintrag löschen',
'rm_user' => 'Diesen Benutzer löschen',
'rm_user' => 'Benutzer löschen',
'rm_user_from_processes' => 'Benutzer aus Prozessen löschen',
'rm_version' => 'Version löschen',
'rm_workflow' => 'Lösche Workflow',
'rm_workflow_action' => 'Lösche Workflow-Aktion',
@ -1157,7 +1192,7 @@ URL: [url]',
'settings_dropFolderDir' => 'Verzeichnis für Ablageordner',
'settings_dropFolderDir_desc' => 'Dieses Verzeichnis kann dazu benutzt werden Dokumente auf dem Server abzulegen und von dort zu importieren anstatt sie über den Browser hochzuladen. Das Verzeichnis muss ein Unterverzeichnis mit dem Login-Namen des angemeldeten Benutzers beinhalten.',
'settings_Edition' => 'Funktions-Einstellungen',
'settings_editOnlineFileTypes' => 'Dateitypen für Online-Editieren:',
'settings_editOnlineFileTypes' => 'Dateitypen für Online-Editieren',
'settings_editOnlineFileTypes_desc' => 'Dateien mit den angegebenen Endungen können Online editiert werden (benutzen Sie ausschließlich Kleinbuchstaben).',
'settings_enable2FactorAuthentication' => '2-Faktor Authentifizierung einschalten',
'settings_enable2FactorAuthentication_desc' => 'Schaltet die 2-Faktor Authentifizierung ein, welche den Google Authenticator auf dem Mobiltelefon erfordert.',
@ -1173,6 +1208,8 @@ URL: [url]',
'settings_enableClipboard_desc' => 'Schaltet die Zwischenablage auf der \'View Folder\' Seite ein/aus',
'settings_enableConverting' => 'Dokumentenkonvertierung einschalten',
'settings_enableConverting_desc' => 'Ein/Auschalten der automatischen Konvertierung von Dokumenten',
'settings_enableDropFolderList' => 'Liste der Dateien im Ablageordner im Menü',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => 'Schnelles Hochladen einschalten',
'settings_enableDropUpload_desc' => 'Ein/Ausschalten des Bereichs auf der \'View Folder\' Seite zum Hochladen von Dateien per Drag&Drop.',
'settings_enableDuplicateDocNames' => 'Erlaube doppelte Dokumentennamen',
@ -1215,7 +1252,7 @@ URL: [url]',
'settings_enableRevisionWorkflow_desc' => 'Anwählen, um den Workflow der Wiederholungsprüfung von Dokumenten nach einer einstellbaren Zeit zu ermöglichen.',
'settings_enableSelfRevApp' => 'Erlaube Prüfung/Freigabe durch angemeldeten Benutzer',
'settings_enableSelfRevApp_desc' => 'Anwählen, um den aktuell angemeldeten Benutzer in der Liste der Prüfer/Freigeber und für Workflow-Aktionen auswählbar zu machen.',
'settings_enableSessionList' => 'Liste angemeldeter Benutzer einschalten',
'settings_enableSessionList' => 'Liste angemeldeter Benutzer im Menü',
'settings_enableSessionList_desc' => 'Schaltet die Liste der zur Zeit angemeldeten Benutzer im Menu ein/aus.',
'settings_enableThemeSelector' => 'Auswahl des Themas',
'settings_enableThemeSelector_desc' => 'Schaltet das Auswahlmenü für die Themenauswahl in der Anmeldemaske ein oder aus.',
@ -1450,12 +1487,15 @@ URL: [url]',
'splash_rm_role' => 'Rolle gelöscht',
'splash_rm_transmittal' => 'Dokumentenliste gelöscht',
'splash_rm_user' => 'Benutzer gelöscht',
'splash_rm_user_processes' => 'Benutzer aus allen Prozessen gelöscht',
'splash_saved_file' => 'Version gespeichert',
'splash_save_user_data' => 'Benutzerdaten gespeichert',
'splash_send_download_link' => 'Download-Link per E-Mail verschickt.',
'splash_settings_saved' => 'Einstellungen gesichert',
'splash_substituted_user' => 'Benutzer gewechselt',
'splash_switched_back_user' => 'Zum ursprünglichen Benutzer zurückgekehrt',
'splash_toogle_group_manager' => 'Gruppenverwalter gewechselt',
'splash_transfer_objects' => 'Objekte übertragen',
'state_and_next_state' => 'Status/Nächster Status',
'statistic' => 'Statistik',
'status' => 'Status',
@ -1524,11 +1564,15 @@ URL: [url]',
'timeline_skip_status_change_1' => 'bevorstehende Freigabe',
'timeline_skip_status_change_2' => 'freigegeben',
'timeline_skip_status_change_3' => 'im Workflow',
'timeline_skip_status_change_4' => 'In Revision',
'timeline_skip_status_change_5' => 'Entwurf',
'timeline_status_change' => 'Version [version]: [status]',
'to' => 'bis',
'toggle_manager' => 'Managerstatus wechseln',
'toggle_qrcode' => 'Zeige/verberge QR-Code',
'to_before_from' => 'Endedatum darf nicht vor dem Startdatum liegen',
'transfer_objects' => 'Objekte übertragen',
'transfer_objects_to_user' => 'Neuer Eigentümer',
'transition_triggered_email' => 'Workflow transition triggered',
'transition_triggered_email_body' => 'Workflow transition triggered
Document: [name]
@ -1587,10 +1631,12 @@ URL: [url]',
'uploading_zerosize' => 'Versuch eine leere Datei hochzuladen. Vorgang wird abgebrochen.',
'used_discspace' => 'Verbrauchter Speicherplatz',
'user' => 'Benutzer',
'userid_groupid' => 'Benutzer-ID/Gruppen-ID',
'users' => 'Benutzer',
'users_and_groups' => 'Benutzer/Gruppen',
'users_done_work' => 'Bereits aktive Benutzer',
'user_exists' => 'Benutzer besteht bereits.',
'user_group' => 'Benutzer/Gruppe',
'user_group_management' => 'Benutzer-/Gruppenmanagement',
'user_image' => 'Bild',
'user_info' => 'Benutzerinformation',
@ -1624,6 +1670,7 @@ URL: [url]',
'weeks' => 'Wochen',
'week_view' => 'Wochenansicht',
'workflow' => 'Workflow',
'workflows_involded' => 'Beteiligt an Workflow',
'workflow_actions_management' => 'Workflow-Aktions-Management',
'workflow_action_in_use' => 'Diese Aktion wird zur Zeit von Workflows benutzt',
'workflow_action_name' => 'Name',

View File

@ -84,6 +84,14 @@ $text = array(
'already_subscribed' => '',
'and' => 'και',
'apply' => 'Apply',
'approvals_accepted' => '',
'approvals_and_reviews_accepted' => '',
'approvals_and_reviews_not_touched' => '',
'approvals_and_reviews_rejected' => '',
'approvals_not_touched' => '',
'approvals_rejected' => '',
'approvals_without_group' => '',
'approvals_without_user' => '',
'approval_deletion_email' => '',
'approval_deletion_email_body' => '',
'approval_deletion_email_subject' => '',
@ -250,7 +258,9 @@ $text = array(
'confirm_rm_transmittal' => '',
'confirm_rm_transmittalitem' => '',
'confirm_rm_user' => '',
'confirm_rm_user_from_processes' => '',
'confirm_rm_version' => '',
'confirm_transfer_objects' => '',
'confirm_update_transmittalitem' => '',
'content' => 'Περιεχόμενο',
'continue' => '',
@ -299,6 +309,7 @@ $text = array(
'documents_user_reception' => '',
'documents_user_rejected' => '',
'documents_user_requiring_attention' => '',
'documents_with_notification' => '',
'document_already_checkedout' => '',
'document_already_locked' => '',
'document_comment_changed_email' => '',
@ -432,6 +443,7 @@ $text = array(
'folder' => 'Φάκελος',
'folders' => 'Φάκελοι',
'folders_and_documents_statistic' => '',
'folders_with_notification' => '',
'folder_comment_changed_email' => '',
'folder_comment_changed_email_body' => '',
'folder_comment_changed_email_subject' => '',
@ -540,6 +552,7 @@ $text = array(
'js_no_approval_group' => '',
'js_no_approval_status' => '',
'js_no_comment' => '',
'js_no_currentpwd' => '',
'js_no_email' => '',
'js_no_file' => '',
'js_no_keywords' => '',
@ -604,6 +617,7 @@ $text = array(
'march' => 'Μάρτιος',
'max_upload_size' => '',
'may' => 'Μάϊος',
'menu_dropfolder' => '',
'mimetype' => '',
'minutes' => 'λεπτά',
'misc' => 'Διάφορα',
@ -728,7 +742,9 @@ URL: [url]',
'password_strength_insuffient' => '',
'password_wrong' => '',
'pending_approvals' => '',
'pending_receipt' => '',
'pending_reviews' => '',
'pending_revision' => '',
'pending_workflows' => '',
'personal_default_keywords' => '',
'pl_PL' => '',
@ -741,11 +757,18 @@ URL: [url]',
'preview_plain' => '',
'previous_state' => '',
'previous_versions' => '',
'process' => '',
'process_without_user_group' => '',
'pt_BR' => '',
'quota' => '',
'quota_exceeded' => '',
'quota_is_disabled' => '',
'quota_warning' => '',
'receipts_accepted' => '',
'receipts_not_touched' => '',
'receipts_rejected' => '',
'receipts_without_group' => '',
'receipts_without_user' => '',
'receipt_deletion_email_body' => '',
'receipt_deletion_email_subject' => '',
'receipt_log' => '',
@ -769,7 +792,7 @@ URL: [url]',
'removed_file_email_subject' => '',
'removed_recipient' => '',
'removed_reviewer' => '',
'removed_revispr' => '',
'removed_revisor' => '',
'removed_workflow_email_body' => '',
'removed_workflow_email_subject' => '',
'removeFolderFromDropFolder' => '',
@ -788,6 +811,11 @@ URL: [url]',
'reviewers' => '',
'reviewer_already_assigned' => '',
'reviewer_already_removed' => '',
'reviews_accepted' => '',
'reviews_not_touched' => '',
'reviews_rejected' => '',
'reviews_without_group' => '',
'reviews_without_user' => '',
'review_deletion_email' => '',
'review_deletion_email_body' => '',
'review_deletion_email_subject' => '',
@ -805,6 +833,12 @@ URL: [url]',
'review_update_failed' => '',
'revise_document' => '',
'revise_document_on' => '',
'revisions_accepted' => '',
'revisions_not_touched' => '',
'revisions_pending' => '',
'revisions_rejected' => '',
'revisions_without_group' => '',
'revisions_without_user' => '',
'revision_date' => '',
'revision_log' => '',
'revision_request_email_body' => '',
@ -833,6 +867,7 @@ URL: [url]',
'rm_transmittal' => '',
'rm_transmittalitem' => '',
'rm_user' => 'Διαγραφή Χρήστη',
'rm_user_from_processes' => '',
'rm_version' => '',
'rm_workflow' => '',
'rm_workflow_action' => '',
@ -984,6 +1019,8 @@ URL: [url]',
'settings_enableClipboard_desc' => '',
'settings_enableConverting' => '',
'settings_enableConverting_desc' => '',
'settings_enableDropFolderList' => '',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => '',
'settings_enableDropUpload_desc' => '',
'settings_enableDuplicateDocNames' => '',
@ -1261,12 +1298,15 @@ URL: [url]',
'splash_rm_role' => '',
'splash_rm_transmittal' => '',
'splash_rm_user' => '',
'splash_rm_user_processes' => '',
'splash_saved_file' => '',
'splash_save_user_data' => '',
'splash_send_download_link' => '',
'splash_settings_saved' => '',
'splash_substituted_user' => '',
'splash_switched_back_user' => '',
'splash_toogle_group_manager' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => '',
'statistic' => '',
'status' => '',
@ -1335,11 +1375,15 @@ URL: [url]',
'timeline_skip_status_change_1' => '',
'timeline_skip_status_change_2' => '',
'timeline_skip_status_change_3' => '',
'timeline_skip_status_change_4' => '',
'timeline_skip_status_change_5' => '',
'timeline_status_change' => '',
'to' => 'Προς',
'toggle_manager' => '',
'toggle_qrcode' => '',
'to_before_from' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transition_triggered_email' => '',
'transition_triggered_email_body' => '',
'transition_triggered_email_subject' => '',
@ -1389,10 +1433,12 @@ URL: [url]',
'uploading_zerosize' => '',
'used_discspace' => 'Χώρος',
'user' => 'Χρήστης',
'userid_groupid' => '',
'users' => 'Χρήστες',
'users_and_groups' => 'Χρήστες/Ομάδες',
'users_done_work' => '',
'user_exists' => 'Ο Χρήστης υπάρχει.',
'user_group' => '',
'user_group_management' => 'Διαχείριση Χρηστών/Ομάδων',
'user_image' => 'Εικόνα',
'user_info' => 'Πληροφορίες Χρήστη',
@ -1421,6 +1467,7 @@ URL: [url]',
'weeks' => 'εβδομάδες',
'week_view' => '',
'workflow' => 'Ροή Εργασίας',
'workflows_involded' => '',
'workflow_actions_management' => '',
'workflow_action_in_use' => '',
'workflow_action_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 (1545), dgrutsch (9), netixw (14)
// Translators: Admin (1603), dgrutsch (9), netixw (14)
$text = array(
'2_factor_auth' => '2-factor authentication',
@ -88,6 +88,14 @@ URL: [url]',
'already_subscribed' => 'Already subscribed',
'and' => 'and',
'apply' => 'Apply',
'approvals_accepted' => '[no_approvals] approvals already accepted',
'approvals_and_reviews_accepted' => '[no_approvals] approvals and [no_reviews] reviews already accepted',
'approvals_and_reviews_not_touched' => '[no_approvals] approvals and [no_reviews] reviews not being touched',
'approvals_and_reviews_rejected' => '[no_approvals] approvals and [no_reviews] reviews already rejected',
'approvals_not_touched' => '[no_approvals] approvals not being touched',
'approvals_rejected' => '[no_approvals] approvals already rejected',
'approvals_without_group' => 'Approvals without group',
'approvals_without_user' => 'Approvals without user',
'approval_deletion_email' => 'Approval request deleted',
'approval_deletion_email_body' => 'Approval request deleted
Document: [name]
@ -241,7 +249,7 @@ URL: [url]',
'choose_attrdefgroup' => 'Choose attribute group',
'choose_category' => 'Please choose',
'choose_group' => 'Choose group',
'choose_role' => '--Choose role--',
'choose_role' => 'Choose role',
'choose_target_category' => 'Choose category',
'choose_target_document' => 'Choose document',
'choose_target_file' => 'Choose file',
@ -277,7 +285,9 @@ URL: [url]',
'confirm_rm_transmittal' => 'Please confirm the deletion of the transmittal.',
'confirm_rm_transmittalitem' => 'Confirm removal',
'confirm_rm_user' => 'Do you really want to remove the user "[username]"?<br>Be careful: This action cannot be undone.',
'confirm_rm_user_from_processes' => 'Do you really want to remove the user "[username]" from all processes?<br>Be careful: This action can lead to the release of documents if the user was the only or last approver.',
'confirm_rm_version' => 'Do you really want to remove version [version] of document "[documentname]"?<br>Be careful: This action cannot be undone.',
'confirm_transfer_objects' => 'Do you really want to transfer the documents, folders, etc. of the user "[username]"?<br>Be careful: This action cannot be undone.',
'confirm_update_transmittalitem' => 'Confirm update',
'content' => 'Content',
'continue' => 'Continue',
@ -326,6 +336,7 @@ URL: [url]',
'documents_user_reception' => 'Documents awaiting reception',
'documents_user_rejected' => 'Rejected documents',
'documents_user_requiring_attention' => 'Documents owned by you that require attention',
'documents_with_notification' => 'Documents with notification',
'document_already_checkedout' => 'This document is already checked out',
'document_already_locked' => 'This document is already locked',
'document_comment_changed_email' => 'Comment changed',
@ -500,6 +511,7 @@ URL: [url]',
'folder' => 'Folder',
'folders' => 'Folders',
'folders_and_documents_statistic' => 'Contents overview',
'folders_with_notification' => 'Folders with notification',
'folder_comment_changed_email' => 'Comment changed',
'folder_comment_changed_email_body' => 'Comment changed
Folder: [name]
@ -628,6 +640,7 @@ URL: [url]',
'js_no_approval_group' => 'Please select a approval group',
'js_no_approval_status' => 'Please select the approval status',
'js_no_comment' => 'There is no comment',
'js_no_currentpwd' => 'Please enter your current password',
'js_no_email' => 'Type in your Email-address',
'js_no_file' => 'Please select a file',
'js_no_keywords' => 'Specify some keywords',
@ -692,6 +705,7 @@ URL: [url]',
'march' => 'March',
'max_upload_size' => 'Maximum upload size',
'may' => 'May',
'menu_dropfolder' => 'Drop folder',
'mimetype' => 'Mime type',
'minutes' => 'minutes',
'misc' => 'Misc',
@ -843,7 +857,9 @@ If you have still problems to login, then please contact your administrator.',
'password_strength_insuffient' => 'Insufficient password strength',
'password_wrong' => 'Wrong password',
'pending_approvals' => 'Pending approvals',
'pending_receipt' => 'Pending receipts',
'pending_reviews' => 'Pending reviews',
'pending_revision' => 'Pending revisions',
'pending_workflows' => 'Pending workflows',
'personal_default_keywords' => 'Personal keywordlists',
'pl_PL' => 'Polish',
@ -856,11 +872,18 @@ If you have still problems to login, then please contact your administrator.',
'preview_plain' => 'Text',
'previous_state' => 'Previous state',
'previous_versions' => 'Previous versions',
'process' => 'Process',
'process_without_user_group' => 'Processes without user/group',
'pt_BR' => 'Portugese (BR)',
'quota' => 'Quota',
'quota_exceeded' => 'Your disk quota is exceeded by [bytes].',
'quota_is_disabled' => 'Quota support is currently disabled in the settings. Setting a user quota will have no effect until it is enabled again.',
'quota_warning' => 'Your maximum disc usage is exceeded by [bytes]. Please remove documents or previous versions.',
'receipts_accepted' => '[no_receipts] receipts already accepted',
'receipts_not_touched' => '[no_receipts] receipts not being touched',
'receipts_rejected' => '[no_receipts] receipts already rejected',
'receipts_without_group' => 'Receipts without group',
'receipts_without_user' => 'Receipts without user',
'receipt_deletion_email_body' => 'User has been removed from the list of recipients
Document: [name]
Version: [version]
@ -898,7 +921,7 @@ URL: [url]',
'removed_file_email_subject' => '[sitename]: [document] - Removed attachment',
'removed_recipient' => 'has been removed from the list of recipients.',
'removed_reviewer' => 'has been removed from the list of reviewers.',
'removed_revispr' => 'has been removed from the list of revisors.',
'removed_revisor' => 'has been removed from the list of revisors.',
'removed_workflow_email_body' => 'Removed workflow from document version
Document: [name]
Version: [version]
@ -937,6 +960,11 @@ URL: [url]',
'reviewers' => 'Reviewers',
'reviewer_already_assigned' => 'User is already assigned as a reviewer',
'reviewer_already_removed' => 'Reviewer has already been removed from review process or has already submitted a review',
'reviews_accepted' => '[no_reviews] reviews already accepted',
'reviews_not_touched' => '[no_reviews] reviews not being touched',
'reviews_rejected' => '[no_reviews] reviews already rejected',
'reviews_without_group' => 'Reviews without group',
'reviews_without_user' => 'Reviews without user',
'review_deletion_email' => 'Review request deleted',
'review_deletion_email_body' => 'Review request deleted
Document: [name]
@ -971,6 +999,12 @@ URL: [url]',
'review_update_failed' => 'Error updating review status. Update failed.',
'revise_document' => 'Revise document',
'revise_document_on' => 'Next revision of document version on [date]',
'revisions_accepted' => '[no_revisions] revisions already accepted',
'revisions_not_touched' => '[no_revisions] revisions not being touched',
'revisions_pending' => '[no_revisions] revisions due in future',
'revisions_rejected' => '[no_revisions] revisions already rejected',
'revisions_without_group' => 'Revisions without group',
'revisions_without_user' => 'Revisions without user',
'revision_date' => 'Date of revision',
'revision_log' => 'Revision log',
'revision_request_email_body' => 'Revision request
@ -1009,7 +1043,8 @@ URL: [url]',
'rm_role' => 'Delete this role',
'rm_transmittal' => 'Remove transmittal',
'rm_transmittalitem' => 'Remove item',
'rm_user' => 'Remove this user',
'rm_user' => 'Remove user',
'rm_user_from_processes' => 'Remove user from processes',
'rm_version' => 'Remove version',
'rm_workflow' => 'Remove Workflow',
'rm_workflow_action' => 'Remove Workflow Action',
@ -1152,7 +1187,7 @@ URL: [url]',
'settings_dropFolderDir' => 'Directory for drop folder',
'settings_dropFolderDir_desc' => 'This directory can be used for dropping files on the server\'s file system and importing them from there instead of uploading via the browser. The directory must contain a sub directory for each user who is allowed to import files this way.',
'settings_Edition' => 'Edition settings',
'settings_editOnlineFileTypes' => 'Edit Online File Types:',
'settings_editOnlineFileTypes' => 'Edit Online File Types',
'settings_editOnlineFileTypes_desc' => 'Files with one of the following endings can be edited online (USE ONLY LOWER CASE CHARACTERS)',
'settings_enable2FactorAuthentication' => 'Enable 2-factor authentication',
'settings_enable2FactorAuthentication_desc' => 'Enable/disable 2 factor authentication. The users will need the Google Authenticator on its mobile phone.',
@ -1168,6 +1203,8 @@ URL: [url]',
'settings_enableClipboard_desc' => 'Enable/disable the clipboard on the \'View Folder\' page',
'settings_enableConverting' => 'Enable Converting',
'settings_enableConverting_desc' => 'Enable/disable converting of files',
'settings_enableDropFolderList' => 'Enable list of files in drop folder in menu',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => 'Enable Fast Upload',
'settings_enableDropUpload_desc' => 'Enable/Disable the drop area on the \'View Folder\' page for uploading files by Drag&Drop.',
'settings_enableDuplicateDocNames' => 'Allow duplicate document names',
@ -1210,7 +1247,7 @@ URL: [url]',
'settings_enableRevisionWorkflow_desc' => 'Enable, to be able to run the workflow for revising a document after a given period of time.',
'settings_enableSelfRevApp' => 'Allow review/approval for logged in user',
'settings_enableSelfRevApp_desc' => 'Enable this if you want the currently logged in user to be listed as reviewers/approvers and for workflow transitions.',
'settings_enableSessionList' => 'Enable list of users online',
'settings_enableSessionList' => 'Enable list of users online in menu',
'settings_enableSessionList_desc' => 'Enable list of currently logged in users in menu.',
'settings_enableThemeSelector' => 'Theme selection',
'settings_enableThemeSelector_desc' => 'Turns on/off the theme selector on the login page.',
@ -1445,12 +1482,15 @@ URL: [url]',
'splash_rm_role' => 'Role deleted',
'splash_rm_transmittal' => 'Transmittal deleted',
'splash_rm_user' => 'User removed',
'splash_rm_user_processes' => 'User removed from all processes',
'splash_saved_file' => 'Version saved',
'splash_save_user_data' => 'User data saved',
'splash_send_download_link' => 'Download link sent by email.',
'splash_settings_saved' => 'Settings saved',
'splash_substituted_user' => 'Substituted user',
'splash_switched_back_user' => 'Switched back to original user',
'splash_toogle_group_manager' => 'Group manager toogled',
'splash_transfer_objects' => 'Objects transfered',
'state_and_next_state' => 'State/Next state',
'statistic' => 'Statistic',
'status' => 'Status',
@ -1468,7 +1508,7 @@ URL: [url]',
'status_reviewer_rejected' => 'Draft rejected',
'status_reviewer_removed' => 'Reviewer removed from process',
'status_revised' => 'revised',
'status_revision_rejected' => 'rejected',
'status_revision_rejected' => 'Rejected',
'status_revision_sleeping' => 'pending',
'status_revisor_removed' => 'Revisor removed from list',
'status_unknown' => 'Unknown',
@ -1518,12 +1558,16 @@ URL: [url]',
'timeline_skip_status_change_0' => 'pending review',
'timeline_skip_status_change_1' => 'pending approval',
'timeline_skip_status_change_2' => 'released',
'timeline_skip_status_change_3' => 'within workflow',
'timeline_skip_status_change_3' => 'in workflow',
'timeline_skip_status_change_4' => 'in revision',
'timeline_skip_status_change_5' => 'draft',
'timeline_status_change' => 'Version [version]: [status]',
'to' => 'To',
'toggle_manager' => 'Toggle manager',
'toggle_qrcode' => 'Show/hide QR code',
'to_before_from' => 'End date may not be before start date',
'transfer_objects' => 'Transfer objects',
'transfer_objects_to_user' => 'New owner',
'transition_triggered_email' => 'Workflow transition triggered',
'transition_triggered_email_body' => 'Workflow transition triggered
Document: [name]
@ -1582,10 +1626,12 @@ URL: [url]',
'uploading_zerosize' => 'Uploading an empty file. Upload is canceled.',
'used_discspace' => 'Used disk space',
'user' => 'User',
'userid_groupid' => 'User id/Group id',
'users' => 'Users',
'users_and_groups' => 'Users/Groups',
'users_done_work' => 'Users done work',
'user_exists' => 'User already exists.',
'user_group' => 'User/Group',
'user_group_management' => 'Users/Groups management',
'user_image' => 'Image',
'user_info' => 'User Information',
@ -1619,6 +1665,7 @@ URL: [url]',
'weeks' => 'weeks',
'week_view' => 'Week view',
'workflow' => 'Workflow',
'workflows_involded' => 'Involved in workflow',
'workflow_actions_management' => 'Workflow actions management',
'workflow_action_in_use' => 'This action is currently used by workflows.',
'workflow_action_name' => '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: acabello (20), Admin (1021), angel (123), francisco (2), jaimem (14)
// Translators: acabello (20), Admin (1022), angel (123), francisco (2), jaimem (14)
$text = array(
'2_factor_auth' => '',
@ -88,6 +88,14 @@ URL: [url]',
'already_subscribed' => 'Ya está suscrito',
'and' => 'y',
'apply' => 'Aplicar',
'approvals_accepted' => '',
'approvals_and_reviews_accepted' => '',
'approvals_and_reviews_not_touched' => '',
'approvals_and_reviews_rejected' => '',
'approvals_not_touched' => '',
'approvals_rejected' => '',
'approvals_without_group' => '',
'approvals_without_user' => '',
'approval_deletion_email' => 'Petición de aprobación eliminada',
'approval_deletion_email_body' => '',
'approval_deletion_email_subject' => '',
@ -272,7 +280,9 @@ URL: [url]',
'confirm_rm_transmittal' => '',
'confirm_rm_transmittalitem' => '',
'confirm_rm_user' => '¿Desea realmente eliminar el usuario "[username]"?<br />Atención: Esta acción no se puede deshacer.',
'confirm_rm_user_from_processes' => '',
'confirm_rm_version' => '¿Desea realmente eliminar la versión [version] del documento "[documentname]"?<br />Atención: esta acción no se puede deshacer.',
'confirm_transfer_objects' => '',
'confirm_update_transmittalitem' => '',
'content' => 'Contenido',
'continue' => 'Continuar',
@ -321,6 +331,7 @@ URL: [url]',
'documents_user_reception' => '',
'documents_user_rejected' => '',
'documents_user_requiring_attention' => 'Documentos de su propiedad que requieren atención',
'documents_with_notification' => '',
'document_already_checkedout' => '',
'document_already_locked' => 'Este documento ya está bloqueado',
'document_comment_changed_email' => 'Comentario modificado',
@ -405,7 +416,7 @@ URL: [url]',
'dump_creation_warning' => 'Con esta operación se creará un volcado a fichero del contenido de la base de datos. Después de la creación del volcado el fichero se guardará en la carpeta de datos de su servidor.',
'dump_list' => 'Ficheros de volcado existentes',
'dump_remove' => 'Eliminar fichero de volcado',
'duplicates' => '',
'duplicates' => 'Duplicados',
'duplicate_content' => 'Contenido duplicado',
'edit' => 'editar',
'edit_attributes' => 'Editar atributos',
@ -488,6 +499,7 @@ URL: [url]',
'folder' => 'Carpeta',
'folders' => 'Carpetas',
'folders_and_documents_statistic' => 'Vista general de contenidos',
'folders_with_notification' => '',
'folder_comment_changed_email' => 'Comentario modificado',
'folder_comment_changed_email_body' => 'Comentario modificado
Carpeta: [name]
@ -616,6 +628,7 @@ URL: [url]',
'js_no_approval_group' => 'Por favor, seleccione grupo de aprobación',
'js_no_approval_status' => 'Por favor, seleccione el estado de aprobación',
'js_no_comment' => 'No hay comentarios',
'js_no_currentpwd' => '',
'js_no_email' => 'Escriba su dirección de correo electrónico',
'js_no_file' => 'Por favor, seleccione un archivo',
'js_no_keywords' => 'Especifique palabras clave',
@ -680,6 +693,7 @@ URL: [url]',
'march' => 'Marzo',
'max_upload_size' => 'Tamaño máximo de subida para cada fichero',
'may' => 'Mayo',
'menu_dropfolder' => '',
'mimetype' => 'Tipo Mime',
'minutes' => 'minutos',
'misc' => 'Misc',
@ -831,7 +845,9 @@ Si continua teniendo problemas de acceso, por favor contacte con el administrado
'password_strength_insuffient' => 'Insuficiente Seguridad de la contraseña',
'password_wrong' => 'Contraseña incorrecta',
'pending_approvals' => '',
'pending_receipt' => '',
'pending_reviews' => '',
'pending_revision' => '',
'pending_workflows' => '',
'personal_default_keywords' => 'Listas de palabras clave personales',
'pl_PL' => 'Polaco',
@ -844,11 +860,18 @@ Si continua teniendo problemas de acceso, por favor contacte con el administrado
'preview_plain' => '',
'previous_state' => 'Estado anterior',
'previous_versions' => 'Versiones anteriores',
'process' => '',
'process_without_user_group' => '',
'pt_BR' => 'Portuges (BR)',
'quota' => 'Cuota',
'quota_exceeded' => 'Su cuota de disco se ha excedido en [bytes].',
'quota_is_disabled' => 'La cuota está actualmente deshabilitada en las opciones. Establecer una cuota de usuario no tendrá efecto hasta que sea habilitada de nuevo.',
'quota_warning' => 'El máximo de uso de disco se ha excedido en [bytes]. Por favor eliminar documentos o versiones anteriores.',
'receipts_accepted' => '',
'receipts_not_touched' => '',
'receipts_rejected' => '',
'receipts_without_group' => '',
'receipts_without_user' => '',
'receipt_deletion_email_body' => '',
'receipt_deletion_email_subject' => '',
'receipt_log' => '',
@ -875,7 +898,7 @@ URL: [url]',
'removed_file_email_subject' => '[sitename]: [document] - Eliminar adjunto',
'removed_recipient' => '',
'removed_reviewer' => 'Ha sido eliminado de la lista de revisores.',
'removed_revispr' => '',
'removed_revisor' => '',
'removed_workflow_email_body' => 'Eliminar flujo de trabajo de la versión del documento
Documento: [name]
Versión: [version]
@ -907,6 +930,11 @@ nURL: [url]',
'reviewers' => 'Revisores',
'reviewer_already_assigned' => 'Ya está asignado como revisor',
'reviewer_already_removed' => 'Ya ha sido eliminado del proceso de revisión o ya ha enviado una revisión',
'reviews_accepted' => '',
'reviews_not_touched' => '',
'reviews_rejected' => '',
'reviews_without_group' => '',
'reviews_without_user' => '',
'review_deletion_email' => 'Petición de revisión eliminada',
'review_deletion_email_body' => '',
'review_deletion_email_subject' => '',
@ -931,6 +959,12 @@ URL: [url]',
'review_update_failed' => 'Error actualizando el estado de la revisión. La actualización ha fallado.',
'revise_document' => '',
'revise_document_on' => '',
'revisions_accepted' => '',
'revisions_not_touched' => '',
'revisions_pending' => '',
'revisions_rejected' => '',
'revisions_without_group' => '',
'revisions_without_user' => '',
'revision_date' => '',
'revision_log' => '',
'revision_request_email_body' => '',
@ -965,6 +999,7 @@ URL: [url]',
'rm_transmittal' => '',
'rm_transmittalitem' => 'Eliminar elemento',
'rm_user' => 'Eliminar este usuario',
'rm_user_from_processes' => '',
'rm_version' => 'Eliminar versión',
'rm_workflow' => 'Eliminar Flujo de Trabajo',
'rm_workflow_action' => 'Eliminar Accion del Flujo de Trabajo',
@ -1123,6 +1158,8 @@ URL: [url]',
'settings_enableClipboard_desc' => 'Habilitar/deshabilitar el portapapeles',
'settings_enableConverting' => 'Habilitar conversión',
'settings_enableConverting_desc' => 'Habilitar/Deshabilitar conversión de ficheros',
'settings_enableDropFolderList' => '',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => 'Habilitar Subida Rapida',
'settings_enableDropUpload_desc' => 'Habilite/Deshabilite el área de drop en la pagina \'\'Ver folder\' para subir archivos por Drag&Drop',
'settings_enableDuplicateDocNames' => 'Permite tener nombres de documento duplicados',
@ -1400,12 +1437,15 @@ URL: [url]',
'splash_rm_role' => '',
'splash_rm_transmittal' => '',
'splash_rm_user' => 'Usuario eliminado',
'splash_rm_user_processes' => '',
'splash_saved_file' => '',
'splash_save_user_data' => '',
'splash_send_download_link' => '',
'splash_settings_saved' => 'Configuración guardada',
'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_objects' => '',
'state_and_next_state' => 'Estado/Estado siguiente',
'statistic' => 'Estadística',
'status' => 'Estado',
@ -1474,11 +1514,15 @@ URL: [url]',
'timeline_skip_status_change_1' => 'aprovaciones pendientes',
'timeline_skip_status_change_2' => 'versiones',
'timeline_skip_status_change_3' => 'con flujo de trabajo',
'timeline_skip_status_change_4' => '',
'timeline_skip_status_change_5' => '',
'timeline_status_change' => 'Versión [version]: [estado]',
'to' => 'Hasta',
'toggle_manager' => 'Intercambiar mánager',
'toggle_qrcode' => '',
'to_before_from' => 'La fecha de finalización no debe ser anterior a la de inicio',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transition_triggered_email' => 'Workflow transition triggered',
'transition_triggered_email_body' => 'Workflow transition triggered
Documento: [name]
@ -1537,10 +1581,12 @@ URL: [url]',
'uploading_zerosize' => 'Subiendo un fichero vacío. -Subida cancelada.',
'used_discspace' => 'Espacio de disco utilizado',
'user' => 'Usuario',
'userid_groupid' => '',
'users' => 'Usuarios',
'users_and_groups' => 'Usuarios/Grupos',
'users_done_work' => 'Trabajos realizados por los usuarios',
'user_exists' => 'El usuario ya existe.',
'user_group' => '',
'user_group_management' => 'Gestión de Usuarios/Grupos',
'user_image' => 'Imagen',
'user_info' => 'Información de usuario',
@ -1574,6 +1620,7 @@ URL: [url]',
'weeks' => 'semanas',
'week_view' => 'Vista de la semana',
'workflow' => 'Flujo de Trabajo',
'workflows_involded' => '',
'workflow_actions_management' => 'Gestión de acciones de flujo de trabajo',
'workflow_action_in_use' => 'Esta acción está siendo usada por el flujo de trabajo.',
'workflow_action_name' => 'Nombre',

View File

@ -88,6 +88,14 @@ URL: [url]',
'already_subscribed' => 'Déjà abonné',
'and' => 'et',
'apply' => 'Appliquer',
'approvals_accepted' => '',
'approvals_and_reviews_accepted' => '',
'approvals_and_reviews_not_touched' => '',
'approvals_and_reviews_rejected' => '',
'approvals_not_touched' => '',
'approvals_rejected' => '',
'approvals_without_group' => '',
'approvals_without_user' => '',
'approval_deletion_email' => 'Demande d\'approbation supprimée',
'approval_deletion_email_body' => 'Demande d\'approbation supprimée
Document : [name]
@ -277,7 +285,9 @@ URL: [url]',
'confirm_rm_transmittal' => '',
'confirm_rm_transmittalitem' => '',
'confirm_rm_user' => 'Voulez-vous vraiment supprimer l\'utilisateur "[username]"?<br>Attention: Cette action ne peut pas être annulée.',
'confirm_rm_user_from_processes' => '',
'confirm_rm_version' => 'Voulez-vous réellement supprimer la [version] du document "[documentname]"?<br>Attention: Cette action ne peut pas être annulée.',
'confirm_transfer_objects' => '',
'confirm_update_transmittalitem' => '',
'content' => 'Contenu',
'continue' => 'Continuer',
@ -326,6 +336,7 @@ URL: [url]',
'documents_user_reception' => '',
'documents_user_rejected' => 'Documents rejetés',
'documents_user_requiring_attention' => 'Documents à surveiller',
'documents_with_notification' => '',
'document_already_checkedout' => 'Ce document est déjà débloqué',
'document_already_locked' => 'Ce document est déjà verrouillé',
'document_comment_changed_email' => 'Commentaire modifié',
@ -500,6 +511,7 @@ URL : [url]',
'folder' => 'Dossier',
'folders' => 'Dossiers',
'folders_and_documents_statistic' => 'Aperçu du contenu',
'folders_with_notification' => '',
'folder_comment_changed_email' => 'Commentaire changé',
'folder_comment_changed_email_body' => 'Commentaire changé
Dossier: [name]
@ -628,6 +640,7 @@ URL: [url]',
'js_no_approval_group' => 'Veuillez sélectionner un groupe dapprobation',
'js_no_approval_status' => 'Veuillez sélectionner le statut dapprobation',
'js_no_comment' => 'Il n\'y a pas de commentaires',
'js_no_currentpwd' => '',
'js_no_email' => 'Saisissez votre adresse e-mail',
'js_no_file' => 'Veuillez sélectionner un fichier',
'js_no_keywords' => 'Spécifiez quelques mots-clés',
@ -692,6 +705,7 @@ URL: [url]',
'march' => 'Mars',
'max_upload_size' => 'Taille maximum de fichier déposé',
'may' => 'Mai',
'menu_dropfolder' => '',
'mimetype' => 'Type MIME',
'minutes' => 'minutes',
'misc' => 'Divers',
@ -841,7 +855,9 @@ En cas de problème persistant, veuillez contacter votre administrateur.',
'password_strength_insuffient' => 'Mot de passe trop faible',
'password_wrong' => 'Mauvais mot de passe',
'pending_approvals' => '',
'pending_receipt' => '',
'pending_reviews' => '',
'pending_revision' => '',
'pending_workflows' => 'Workflows en attente',
'personal_default_keywords' => 'Mots-clés personnels',
'pl_PL' => 'Polonais',
@ -854,11 +870,18 @@ En cas de problème persistant, veuillez contacter votre administrateur.',
'preview_plain' => 'Texte',
'previous_state' => 'État précédent',
'previous_versions' => 'Versions précédentes',
'process' => '',
'process_without_user_group' => '',
'pt_BR' => 'Portuguais (BR)',
'quota' => 'Quota',
'quota_exceeded' => 'Votre quota de disque est dépassé de [bytes].',
'quota_is_disabled' => 'Le support des quotas est actuellement désactivé dans les réglages. Affecter un quota utilisateur naura pas deffet jusquà ce quil soit de nouveau activé.',
'quota_warning' => 'Votre quota despace disque est dépassé de [bytes]. Veuillez supprimer des documents ou d\'anciennes versions.',
'receipts_accepted' => '',
'receipts_not_touched' => '',
'receipts_rejected' => '',
'receipts_without_group' => '',
'receipts_without_user' => '',
'receipt_deletion_email_body' => 'Lutilisateur a été retiré de la liste des destinataires
Document : [name]
Version : [version]
@ -891,7 +914,7 @@ URL: [url]',
'removed_file_email_subject' => '[sitename]: [document] - Attachement supprimé',
'removed_recipient' => 'a été supprimé de la liste des destinataires.',
'removed_reviewer' => 'a été retiré de la liste des correcteurs.',
'removed_revispr' => '',
'removed_revisor' => '',
'removed_workflow_email_body' => 'Workflow du document supprimé: [name]
Version: [version]
Workflow: [workflow]
@ -915,6 +938,11 @@ URL: [url]',
'reviewers' => 'Correcteurs',
'reviewer_already_assigned' => 'est déjà déclaré en tant que correcteur',
'reviewer_already_removed' => 'a déjà été retiré du processus de correction ou a déjà soumis une correction',
'reviews_accepted' => '',
'reviews_not_touched' => '',
'reviews_rejected' => '',
'reviews_without_group' => '',
'reviews_without_user' => '',
'review_deletion_email' => 'Demande de correction supprimée',
'review_deletion_email_body' => '',
'review_deletion_email_subject' => '',
@ -939,6 +967,12 @@ URL: [url]',
'review_update_failed' => 'Erreur lors de la mise à jour de la correction. Echec de la mise à jour.',
'revise_document' => '',
'revise_document_on' => '',
'revisions_accepted' => '',
'revisions_not_touched' => '',
'revisions_pending' => '',
'revisions_rejected' => '',
'revisions_without_group' => '',
'revisions_without_user' => '',
'revision_date' => '',
'revision_log' => '',
'revision_request_email_body' => '',
@ -967,6 +1001,7 @@ URL: [url]',
'rm_transmittal' => '',
'rm_transmittalitem' => '',
'rm_user' => 'Supprimer cet utilisateur',
'rm_user_from_processes' => '',
'rm_version' => 'Retirer la version',
'rm_workflow' => 'Supprimer le Workflow',
'rm_workflow_action' => 'Supprimer l\'action du Workflow',
@ -1118,6 +1153,8 @@ URL: [url]',
'settings_enableClipboard_desc' => 'Activer/désactiver le presse-papier',
'settings_enableConverting' => 'Activer conversion des fichiers',
'settings_enableConverting_desc' => 'Activer/Désactiver la conversion des fichiers',
'settings_enableDropFolderList' => '',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => 'Activer la publication rapide de documents',
'settings_enableDropUpload_desc' => 'Activer/Désactiver la zone de glisser/ déposer sur la page d\'un dossier.',
'settings_enableDuplicateDocNames' => 'Autoriser plusieurs documents de même nom',
@ -1395,12 +1432,15 @@ URL: [url]',
'splash_rm_role' => '',
'splash_rm_transmittal' => '',
'splash_rm_user' => 'Utilisateur supprimé',
'splash_rm_user_processes' => '',
'splash_saved_file' => '',
'splash_save_user_data' => '',
'splash_send_download_link' => 'Lien de téléchargement envoyé par e-mail',
'splash_settings_saved' => 'Configuration sauvegardée',
'splash_substituted_user' => 'Utilisateur de substitution',
'splash_switched_back_user' => 'Revenu à l\'utilisateur initial',
'splash_toogle_group_manager' => 'Responsable de groupe changé',
'splash_transfer_objects' => '',
'state_and_next_state' => 'État initial/suivant',
'statistic' => 'Statistiques',
'status' => 'Statut',
@ -1469,11 +1509,15 @@ URL: [url]',
'timeline_skip_status_change_1' => 'en attente d\'approbation',
'timeline_skip_status_change_2' => 'publié',
'timeline_skip_status_change_3' => 'encore dans un workflow',
'timeline_skip_status_change_4' => '',
'timeline_skip_status_change_5' => '',
'timeline_status_change' => 'Version [version] : [status]',
'to' => 'Au',
'toggle_manager' => 'Basculer \'Responsable\'',
'toggle_qrcode' => 'Afficher/masquer le QR code',
'to_before_from' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transition_triggered_email' => 'Transition de workflow activé',
'transition_triggered_email_body' => 'Transition de workflow déclenchée
Document : [name]
@ -1532,10 +1576,12 @@ URL : [url]',
'uploading_zerosize' => 'Chargement d\'un fichier vide. Chargement annulé.',
'used_discspace' => 'Espace disque utilisé',
'user' => 'Utilisateur',
'userid_groupid' => '',
'users' => 'Utilisateurs',
'users_and_groups' => 'Utilisateurs/groupes',
'users_done_work' => 'Actions des utilisateurs',
'user_exists' => 'Cet utilisateur existe déjà',
'user_group' => '',
'user_group_management' => 'Gestion d\'Utilisateurs/de Groupes',
'user_image' => 'Image',
'user_info' => 'Informations utilisateur',
@ -1569,6 +1615,7 @@ URL: [url]',
'weeks' => 'semaines',
'week_view' => 'Vue par semaine',
'workflow' => 'Workflow',
'workflows_involded' => '',
'workflow_actions_management' => 'Gestion d\'actions de workflow',
'workflow_action_in_use' => 'Cette action est actuellement utilisée par des workflows.',
'workflow_action_name' => 'Nom',

View File

@ -88,6 +88,14 @@ Internet poveznica: [url]',
'already_subscribed' => 'Već prijavljeno',
'and' => 'i',
'apply' => 'Primjeni',
'approvals_accepted' => '',
'approvals_and_reviews_accepted' => '',
'approvals_and_reviews_not_touched' => '',
'approvals_and_reviews_rejected' => '',
'approvals_not_touched' => '',
'approvals_rejected' => '',
'approvals_without_group' => '',
'approvals_without_user' => '',
'approval_deletion_email' => 'Izbrisan zahtjev za odobrenje',
'approval_deletion_email_body' => 'Zahtjev za odobrenjem izbrisan
Dokument: [name]
@ -277,7 +285,9 @@ Internet poveznica: [url]',
'confirm_rm_transmittal' => '',
'confirm_rm_transmittalitem' => 'Potvrdi uklanjanje',
'confirm_rm_user' => 'Da li zaista želite ukloniti korisnika "[username]"?<br>Oprez: ova radnja nije povratna.',
'confirm_rm_user_from_processes' => '',
'confirm_rm_version' => 'Da li zaista želite ukloniti verziju [version] dokumenta "[documentname]"?<br>Oprez: ova radnja nije povratna.',
'confirm_transfer_objects' => '',
'confirm_update_transmittalitem' => 'Potvrdi izmjenu',
'content' => 'Sadržaj',
'continue' => 'Nastavi',
@ -326,6 +336,7 @@ Internet poveznica: [url]',
'documents_user_reception' => '',
'documents_user_rejected' => 'Odbijeni dokumenti',
'documents_user_requiring_attention' => 'Dokumenti u vašem vlasništvu koji zahtjevaju pažnju',
'documents_with_notification' => '',
'document_already_checkedout' => 'Ovaj dokument je već odjavljen',
'document_already_locked' => 'Ovaj dokument je već zaključan',
'document_comment_changed_email' => 'Promijenjen komentar',
@ -493,6 +504,7 @@ Internet poveznica: [url]',
'folder' => 'Mapa',
'folders' => 'Mape',
'folders_and_documents_statistic' => 'Pregled sadržaja',
'folders_with_notification' => '',
'folder_comment_changed_email' => 'Promijenjen komentar',
'folder_comment_changed_email_body' => 'Promijenjen komentar
Mapa: <b>[name]</b>
@ -621,6 +633,7 @@ Internet poveznica: [url]',
'js_no_approval_group' => 'Molim odaberite grupu odobrenja',
'js_no_approval_status' => 'Molim odaberite status odobrenja',
'js_no_comment' => 'Nema komentara',
'js_no_currentpwd' => '',
'js_no_email' => 'Upišite vašu e-mail adresu',
'js_no_file' => 'Molim odaberite datoteku',
'js_no_keywords' => 'Odredite neke ključne riječi',
@ -685,6 +698,7 @@ Internet poveznica: [url]',
'march' => 'Ožujak',
'max_upload_size' => 'Max. veličina za prijenos',
'may' => 'Svibanj',
'menu_dropfolder' => '',
'mimetype' => 'Mime type',
'minutes' => 'minute',
'misc' => 'Razno',
@ -835,7 +849,9 @@ Ako i dalje imate problema s prijavom, molimo kontaktirajte Vašeg administrator
'password_strength_insuffient' => 'Nedovoljna jačina lozinke',
'password_wrong' => 'Pogrešna lozinka',
'pending_approvals' => '',
'pending_receipt' => '',
'pending_reviews' => '',
'pending_revision' => '',
'pending_workflows' => '',
'personal_default_keywords' => 'Osobni popis ključnih riječi',
'pl_PL' => 'Poljski',
@ -848,11 +864,18 @@ Ako i dalje imate problema s prijavom, molimo kontaktirajte Vašeg administrator
'preview_plain' => 'Obični tekst',
'previous_state' => 'Prethodni status',
'previous_versions' => 'Prethodne verzije',
'process' => '',
'process_without_user_group' => '',
'pt_BR' => 'Portugalski (BR)',
'quota' => 'Kvota',
'quota_exceeded' => 'Vaša kvota na disku je premašena za [bytes].',
'quota_is_disabled' => 'Podrška kvoti je trenutno onemogućena u postavkama. Postavka korisničke kvote neće imati utjecaja dok se ponovno ne omogući.',
'quota_warning' => 'Vaš maksimalni prostor na disku je premašen za [bytes]. Molimo uklonite dokumente ili prethodne verzije.',
'receipts_accepted' => '',
'receipts_not_touched' => '',
'receipts_rejected' => '',
'receipts_without_group' => '',
'receipts_without_user' => '',
'receipt_deletion_email_body' => '',
'receipt_deletion_email_subject' => '',
'receipt_log' => 'Zapisi prijema',
@ -879,7 +902,7 @@ Internet poveznica: [url]',
'removed_file_email_subject' => '[sitename]: [document] - Uklonjeni privitak',
'removed_recipient' => 'je uklonjen s liste primatelja.',
'removed_reviewer' => 'je uklonjen iz popisa recezenata.',
'removed_revispr' => 'je uklonjen s liste revizora.',
'removed_revisor' => 'je uklonjen s liste revizora.',
'removed_workflow_email_body' => 'Uklonjeni tok rada iz ove verzije dokumenta
Dokument: [name]
Verzija: [version]
@ -918,6 +941,11 @@ Internet poveznica: [url]',
'reviewers' => 'Recezenti',
'reviewer_already_assigned' => 'je već dodijeljen kao recezent',
'reviewer_already_removed' => 'je već uklonjen iz postupka pregleda ili je već podnijet pregled.',
'reviews_accepted' => '',
'reviews_not_touched' => '',
'reviews_rejected' => '',
'reviews_without_group' => '',
'reviews_without_user' => '',
'review_deletion_email' => 'Izbrisan zahtjev za pregled',
'review_deletion_email_body' => 'Zahtjev za pregled izbrisan
Dokument: [name]
@ -952,6 +980,12 @@ Internet poveznica: [url]',
'review_update_failed' => 'Greška kod izmjene statusa pregleda. Izmjena nije uspjela.',
'revise_document' => 'Revidiraj dokument',
'revise_document_on' => 'Slijedeća revizija verzije dokumenta na dan [date]',
'revisions_accepted' => '',
'revisions_not_touched' => '',
'revisions_pending' => '',
'revisions_rejected' => '',
'revisions_without_group' => '',
'revisions_without_user' => '',
'revision_date' => 'Datum revizije',
'revision_log' => 'Zapisi revizije',
'revision_request_email_body' => '',
@ -986,6 +1020,7 @@ Internet poveznica: [url]',
'rm_transmittal' => 'Uklanjanje preusmjerenja',
'rm_transmittalitem' => 'Uklanjanje stavke',
'rm_user' => 'Uklonite ovog korisnika',
'rm_user_from_processes' => '',
'rm_version' => 'Uklonite verziju',
'rm_workflow' => 'Uklonite tok rada',
'rm_workflow_action' => 'Uklonite radnju toka rada',
@ -1144,6 +1179,8 @@ Internet poveznica: [url]',
'settings_enableClipboard_desc' => 'Omogući/onemogući međuspremnik na \'Vidi mapu\' stranici',
'settings_enableConverting' => 'Omogući pretvaranje',
'settings_enableConverting_desc' => 'Omogući/onemogući pretvaranje datoteka',
'settings_enableDropFolderList' => '',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => 'Omogući brzo učitavanje',
'settings_enableDropUpload_desc' => 'Omogući/onemogući prostor za ubacivanje na \'Vidi mapu\' stranici za učitavanje datoteka "Povuci i ispusti" postupkom.',
'settings_enableDuplicateDocNames' => 'Omogući dvostruke nazive dokumenata',
@ -1421,12 +1458,15 @@ Internet poveznica: [url]',
'splash_rm_role' => '',
'splash_rm_transmittal' => '',
'splash_rm_user' => 'Korisnik uklonjen',
'splash_rm_user_processes' => '',
'splash_saved_file' => '',
'splash_save_user_data' => '',
'splash_send_download_link' => '',
'splash_settings_saved' => 'Postavke pohranjene',
'splash_substituted_user' => 'Zamjenski korisnik',
'splash_switched_back_user' => 'Prebačeno nazad na izvornog korisnika',
'splash_toogle_group_manager' => 'Zamjenjen upravitelj grupe',
'splash_transfer_objects' => '',
'state_and_next_state' => 'Status/Slijedeći status',
'statistic' => 'Statistika',
'status' => 'Status',
@ -1495,11 +1535,15 @@ Internet poveznica: [url]',
'timeline_skip_status_change_1' => 'na čekanju za odobrenje',
'timeline_skip_status_change_2' => 'oslobođeno',
'timeline_skip_status_change_3' => 's tokom rada',
'timeline_skip_status_change_4' => '',
'timeline_skip_status_change_5' => '',
'timeline_status_change' => 'Verzija [version]: [status]',
'to' => 'Do',
'toggle_manager' => 'Zamjeni upravitelja',
'toggle_qrcode' => '',
'to_before_from' => 'Datum završetka ne može biti prije datuma početka',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transition_triggered_email' => 'Zatražena promjena toka rada',
'transition_triggered_email_body' => 'Zatražena promjena toka rada
Dokument: [name]
@ -1558,10 +1602,12 @@ Internet poveznica: [url]',
'uploading_zerosize' => 'Datoteka koja se učitava je prazna. Učitavanje je otkazano.',
'used_discspace' => 'Iskorišteni prostor na disku',
'user' => 'Korisnik',
'userid_groupid' => '',
'users' => 'Korisnici',
'users_and_groups' => 'Korisnici/Grupe',
'users_done_work' => 'Izvršeni poslovi korisnika',
'user_exists' => 'Korisnik već postoji.',
'user_group' => '',
'user_group_management' => 'Upravljanje korisnicima/grupama',
'user_image' => 'Slika',
'user_info' => 'Korisničke informacije',
@ -1595,6 +1641,7 @@ Internet poveznica: [url]',
'weeks' => 'tjedni',
'week_view' => 'Pregled po tjednima',
'workflow' => 'Tok rada',
'workflows_involded' => '',
'workflow_actions_management' => 'Upravljanje radnjama toka rada',
'workflow_action_in_use' => 'Ova radnju trenutno koriste tokovi rada.',
'workflow_action_name' => 'Naziv',

View File

@ -88,6 +88,14 @@ URL: [url]',
'already_subscribed' => 'Már feliratkozott',
'and' => '-',
'apply' => 'Elfogad',
'approvals_accepted' => '',
'approvals_and_reviews_accepted' => '',
'approvals_and_reviews_not_touched' => '',
'approvals_and_reviews_rejected' => '',
'approvals_not_touched' => '',
'approvals_rejected' => '',
'approvals_without_group' => '',
'approvals_without_user' => '',
'approval_deletion_email' => 'Jóváhagyási kérelem törölve',
'approval_deletion_email_body' => '',
'approval_deletion_email_subject' => '',
@ -272,7 +280,9 @@ URL: [url]',
'confirm_rm_transmittal' => '',
'confirm_rm_transmittalitem' => '',
'confirm_rm_user' => 'Biztosan el kívánja távolítani ezt a felhasználót "[username]"?<br>Legyen óvatos: Ez a művelet nem vonható vissza.',
'confirm_rm_user_from_processes' => '',
'confirm_rm_version' => 'Biztosan el kívánaj távolítani a dokumentum "[documentname]" [version] verzióját?<br>Legyen óvatos: Ez a művelet nem vonható vissza.',
'confirm_transfer_objects' => '',
'confirm_update_transmittalitem' => '',
'content' => 'Tartalom',
'continue' => 'Folytatás',
@ -321,6 +331,7 @@ URL: [url]',
'documents_user_reception' => '',
'documents_user_rejected' => '',
'documents_user_requiring_attention' => 'Az Ön tulajdonában álló dokumentumok, amelyekre figyelmet kell fordítani',
'documents_with_notification' => '',
'document_already_checkedout' => '',
'document_already_locked' => 'Ez a dokumentum már zárolt',
'document_comment_changed_email' => 'Megjegyzés módosult',
@ -488,6 +499,7 @@ URL: [url]',
'folder' => 'Mappa',
'folders' => 'Mappák',
'folders_and_documents_statistic' => 'Tartalmak áttekintése',
'folders_with_notification' => '',
'folder_comment_changed_email' => 'Megjegyzés módosult',
'folder_comment_changed_email_body' => 'Megjegyzés módosult
Mappa: [name]
@ -616,6 +628,7 @@ URL: [url]',
'js_no_approval_group' => 'Kérjük válasszon egy jóváhagyó csoportot',
'js_no_approval_status' => 'Kérjük válasszon jóváhagyási állapotot',
'js_no_comment' => 'Nincs megjegyzés',
'js_no_currentpwd' => '',
'js_no_email' => 'Adja meg email címét',
'js_no_file' => 'Kérjük válasszon egy állományt',
'js_no_keywords' => 'Adjon meg kulcsszavakat',
@ -680,6 +693,7 @@ URL: [url]',
'march' => 'Március',
'max_upload_size' => 'Legnagyobb feltölthető méret',
'may' => 'Május',
'menu_dropfolder' => '',
'mimetype' => 'Mime típus',
'minutes' => 'perc',
'misc' => 'Vegyes',
@ -831,7 +845,9 @@ Amennyiben problémákba ütközik a bejelentkezés során, kérjük vegye fel a
'password_strength_insuffient' => 'Jelszó erőssége elégtelen',
'password_wrong' => 'Hibás jelszó',
'pending_approvals' => '',
'pending_receipt' => '',
'pending_reviews' => '',
'pending_revision' => '',
'pending_workflows' => '',
'personal_default_keywords' => 'Személyes kulcsszó lista',
'pl_PL' => 'Lengyel',
@ -844,11 +860,18 @@ Amennyiben problémákba ütközik a bejelentkezés során, kérjük vegye fel a
'preview_plain' => '',
'previous_state' => 'Előző állapot',
'previous_versions' => 'Előző változatok',
'process' => '',
'process_without_user_group' => '',
'pt_BR' => 'Portugál (BR)',
'quota' => 'Kvóta',
'quota_exceeded' => 'Túllépte a lemezterület korlátot [bytes].',
'quota_is_disabled' => 'Kvóta támogatás jelenleg le van tiltva a beállításoknál. Felhasználói korlát beállítások nem kerülnek érvényesítésre amíg nincs újra engedélyezve.',
'quota_warning' => 'Túllépte lemez korlátot [bytes] bájttal. Kérjük távolítson el dokumentumokat vagy korábbi változatokat.',
'receipts_accepted' => '',
'receipts_not_touched' => '',
'receipts_rejected' => '',
'receipts_without_group' => '',
'receipts_without_user' => '',
'receipt_deletion_email_body' => '',
'receipt_deletion_email_subject' => '',
'receipt_log' => '',
@ -875,7 +898,7 @@ URL: [url]',
'removed_file_email_subject' => '[sitename]: [document] - Eltávolított melléklet',
'removed_recipient' => '',
'removed_reviewer' => 'eltávolításra került a felülvizsgálók listájáról.',
'removed_revispr' => '',
'removed_revisor' => '',
'removed_workflow_email_body' => 'Dokumentum változatból eltávolított munkafolyamat
Dokumentum: [name]
Verzió: [version]
@ -907,6 +930,11 @@ URL: [url]',
'reviewers' => 'Felülvizsgálók',
'reviewer_already_assigned' => 'már hozzá lett rendelve felülvizsgálóként',
'reviewer_already_removed' => 'már el lett távolítva a felülvizsgálati folyamatból vagy már el lett küldve egy felülvizsgálat',
'reviews_accepted' => '',
'reviews_not_touched' => '',
'reviews_rejected' => '',
'reviews_without_group' => '',
'reviews_without_user' => '',
'review_deletion_email' => 'Felülvizsgálat kérés törölve',
'review_deletion_email_body' => '',
'review_deletion_email_subject' => '',
@ -931,6 +959,12 @@ URL: [url]',
'review_update_failed' => 'Hiba a felülvizsgálat állapot frissítése során. Frissítés sikertelen.',
'revise_document' => '',
'revise_document_on' => '',
'revisions_accepted' => '',
'revisions_not_touched' => '',
'revisions_pending' => '',
'revisions_rejected' => '',
'revisions_without_group' => '',
'revisions_without_user' => '',
'revision_date' => '',
'revision_log' => '',
'revision_request_email_body' => '',
@ -965,6 +999,7 @@ URL: [url]',
'rm_transmittal' => '',
'rm_transmittalitem' => '',
'rm_user' => 'Felhasználó eltávolítása',
'rm_user_from_processes' => '',
'rm_version' => 'Változat eltávolítása',
'rm_workflow' => 'Munkafolyamat eltávolítása',
'rm_workflow_action' => 'Munkafolyamat művelet eltávolítása',
@ -1122,6 +1157,8 @@ URL: [url]',
'settings_enableClipboard_desc' => 'Vágólap engedélyezés/tiltás',
'settings_enableConverting' => 'Konvertálás engedélyezése',
'settings_enableConverting_desc' => 'Engedélyezi/tiltja az állományok konverzióját',
'settings_enableDropFolderList' => '',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => 'Gyorsfeltöltés engedélyezése',
'settings_enableDropUpload_desc' => 'Be/Ki kapcsolja a \'Mappa nézet\' oldalon a fogd és vidd feltöltéshez tartozó területetet',
'settings_enableDuplicateDocNames' => 'Azonos dokumentum név engedélyezése',
@ -1399,12 +1436,15 @@ URL: [url]',
'splash_rm_role' => '',
'splash_rm_transmittal' => '',
'splash_rm_user' => 'Felhasználó eltávolítva',
'splash_rm_user_processes' => '',
'splash_saved_file' => '',
'splash_save_user_data' => '',
'splash_send_download_link' => '',
'splash_settings_saved' => 'Beállítások elmentve',
'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_objects' => '',
'state_and_next_state' => 'Állapot/Következő állapot',
'statistic' => 'Statisztika',
'status' => 'Állapot',
@ -1473,11 +1513,15 @@ URL: [url]',
'timeline_skip_status_change_1' => 'jóváhagyásra vár',
'timeline_skip_status_change_2' => 'kiadva',
'timeline_skip_status_change_3' => 'munkafolyamat alatt',
'timeline_skip_status_change_4' => '',
'timeline_skip_status_change_5' => '',
'timeline_status_change' => '[version]: [status] Verzio',
'to' => 'ig',
'toggle_manager' => 'Kulcs kezelő',
'toggle_qrcode' => '',
'to_before_from' => 'A lejárati dátum nem előzheti meg a kezdési dátumot',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transition_triggered_email' => 'Munkamenet átmenet kiváltva',
'transition_triggered_email_body' => 'Munkafolyamat átmenet kiváltva
Dokumentum: [name]
@ -1536,10 +1580,12 @@ URL: [url]',
'uploading_zerosize' => 'Üres állomány feltöltése. Feltöltés megszakítva.',
'used_discspace' => 'Felhasznált lemezterület',
'user' => 'Felhasználó',
'userid_groupid' => '',
'users' => 'Felhasználók',
'users_and_groups' => 'Felhasználók/Csoportok',
'users_done_work' => 'Felhasználók elvégzett munka',
'user_exists' => 'Felhasználó már létezik.',
'user_group' => '',
'user_group_management' => 'Felhasználók/Csoportok kezelése',
'user_image' => 'Kép',
'user_info' => 'Felhasználói információ',
@ -1573,6 +1619,7 @@ URL: [url]',
'weeks' => 'hét',
'week_view' => 'Heti nézet',
'workflow' => 'Munkafolyamat',
'workflows_involded' => '',
'workflow_actions_management' => 'Munkafolyamat műveletek kezelése',
'workflow_action_in_use' => 'Ezt a műveletet munkafolyamatok használják.',
'workflow_action_name' => 'Név',

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 (1554), rickr (144), s.pnt (26)
// Translators: Admin (1557), rickr (144), s.pnt (26)
$text = array(
'2_factor_auth' => 'Autorizzazione a due fattori',
@ -88,6 +88,14 @@ URL: [url]',
'already_subscribed' => 'L\'oggetto è già stato sottoscritto',
'and' => 'e',
'apply' => 'Applica',
'approvals_accepted' => '',
'approvals_and_reviews_accepted' => '',
'approvals_and_reviews_not_touched' => '',
'approvals_and_reviews_rejected' => '',
'approvals_not_touched' => '',
'approvals_rejected' => '',
'approvals_without_group' => '',
'approvals_without_user' => '',
'approval_deletion_email' => 'Richiesta di approvazione cancellata',
'approval_deletion_email_body' => 'Richiesta di approvazione cancellata.
Documento: [name]
@ -242,7 +250,7 @@ URL: [url]',
'choose_attrdefgroup' => 'Scegli gruppo di attributi',
'choose_category' => 'Seleziona',
'choose_group' => 'Seleziona il gruppo',
'choose_role' => '--Scegli ruolo--',
'choose_role' => 'Scegli ruolo',
'choose_target_category' => 'Seleziona la categoria',
'choose_target_document' => 'Seleziona il documento',
'choose_target_file' => 'Scegli il file',
@ -278,7 +286,9 @@ URL: [url]',
'confirm_rm_transmittal' => 'Si prega di confermare l\'eliminazione della trasmissione.',
'confirm_rm_transmittalitem' => 'Conferma rimozione',
'confirm_rm_user' => 'Vuoi davvero rimuovere l\'utente "[username]"? Attenzione: questa operazione non può essere annullata.',
'confirm_rm_user_from_processes' => '',
'confirm_rm_version' => 'Vuoi veramente eliminare la versione [version] del documento "[documentname]"? Attenzione: questa operazione non può essere annullata.',
'confirm_transfer_objects' => '',
'confirm_update_transmittalitem' => 'Conferma aggiornamento',
'content' => 'Contenuto',
'continue' => 'Continua',
@ -327,6 +337,7 @@ URL: [url]',
'documents_user_reception' => '',
'documents_user_rejected' => 'Documenti rifiutati',
'documents_user_requiring_attention' => 'Tuoi documenti in attesa di revisione o approvazione',
'documents_with_notification' => '',
'document_already_checkedout' => 'Questo documento è già approvato',
'document_already_locked' => 'Questo documento è già bloccato',
'document_comment_changed_email' => 'Commento modificato',
@ -494,6 +505,7 @@ URL: [url]',
'folder' => 'Cartella',
'folders' => 'Cartelle',
'folders_and_documents_statistic' => 'Visualizzazione generale',
'folders_with_notification' => '',
'folder_comment_changed_email' => 'Commento modificato per la Cartella',
'folder_comment_changed_email_body' => 'Commento modificato per la Cartella
Cartella: [name]
@ -622,6 +634,7 @@ URL: [url]',
'js_no_approval_group' => 'Si prega di selezionare un gruppo di approvazione',
'js_no_approval_status' => 'Si prega di selezionare lo stato di approvazione',
'js_no_comment' => 'Non ci sono commenti',
'js_no_currentpwd' => '',
'js_no_email' => 'Scrivi il tuo indirizzo di Email',
'js_no_file' => 'Per favore seleziona un file',
'js_no_keywords' => 'Specifica alcune parole-chiave',
@ -686,6 +699,7 @@ URL: [url]',
'march' => 'Marzo',
'max_upload_size' => 'Dimensione massima caricabile per ogni file',
'may' => 'Maggio',
'menu_dropfolder' => '',
'mimetype' => 'Tipo (MIME)',
'minutes' => 'minuti',
'misc' => 'Varie',
@ -837,7 +851,9 @@ Dovessero esserci ancora problemi al login, prego contatta l\'Amministratore di
'password_strength_insuffient' => 'Efficacia della password insufficiente',
'password_wrong' => 'Password errata',
'pending_approvals' => 'Approvazioni in sospeso',
'pending_receipt' => '',
'pending_reviews' => 'In attesa di recensioni',
'pending_revision' => '',
'pending_workflows' => 'I flussi di lavoro in sospeso',
'personal_default_keywords' => 'Parole-chiave personali',
'pl_PL' => 'Polacco',
@ -850,11 +866,18 @@ Dovessero esserci ancora problemi al login, prego contatta l\'Amministratore di
'preview_plain' => 'Testo',
'previous_state' => 'Stato precedente',
'previous_versions' => 'Versioni precedenti',
'process' => '',
'process_without_user_group' => '',
'pt_BR' => 'Portoghese (BR)',
'quota' => 'Quota',
'quota_exceeded' => 'La quota-disco è stata superata di [bytes].',
'quota_is_disabled' => 'Il supporto per le quote è attualmente disattivato nelle impostazioni. L\'impostazione di una quota-utente non avrà alcun effetto finché tale funzionalità non verrà nuovamente attivata.',
'quota_warning' => 'Il vostro utilizzo massimo di spazio è stato superato di [bytes]. Si prega di rimuovere documenti o versioni obsolete.',
'receipts_accepted' => '',
'receipts_not_touched' => '',
'receipts_rejected' => '',
'receipts_without_group' => '',
'receipts_without_user' => '',
'receipt_deletion_email_body' => '',
'receipt_deletion_email_subject' => '',
'receipt_log' => 'Ricezione Log',
@ -886,7 +909,7 @@ URL: [url]',
'removed_file_email_subject' => '[sitename]: [document] - Allegato rimosso',
'removed_recipient' => 'è stato rimosso dalla lista delle cartelle.',
'removed_reviewer' => 'è stato rimosso dalla lista dei revisori.',
'removed_revispr' => 'è stato rimosso dalla lista degli approvatori.',
'removed_revisor' => 'è stato rimosso dalla lista degli approvatori.',
'removed_workflow_email_body' => 'Flusso di lavoro rimosso dalla versione del documento
Documento: [name]
Versione: [version]
@ -925,6 +948,11 @@ URL: [url]',
'reviewers' => 'Revisori',
'reviewer_already_assigned' => 'è già assegnato come revisore',
'reviewer_already_removed' => 'è già stato rimosso dal processo di revisione oppure ha già inserito una revisione.',
'reviews_accepted' => '',
'reviews_not_touched' => '',
'reviews_rejected' => '',
'reviews_without_group' => '',
'reviews_without_user' => '',
'review_deletion_email' => 'Richiesta di revisione cancellata',
'review_deletion_email_body' => 'Richiesta di revisione cancellata.
Documento: [name]
@ -959,6 +987,12 @@ URL: [url]',
'review_update_failed' => 'Errore nella variazione dello stato di revisione. Aggiornamento fallito.',
'revise_document' => 'Rivedi documento',
'revise_document_on' => 'Prossima revisione del documento il [date]',
'revisions_accepted' => '',
'revisions_not_touched' => '',
'revisions_pending' => '',
'revisions_rejected' => '',
'revisions_without_group' => '',
'revisions_without_user' => '',
'revision_date' => 'data revisione',
'revision_log' => 'Log revisione',
'revision_request_email_body' => 'Richiesta di ricezione
@ -998,6 +1032,7 @@ URL: [url]',
'rm_transmittal' => 'Rimuovi trasmissione',
'rm_transmittalitem' => 'Rimuovi oggetto',
'rm_user' => 'Rimuovi questo utente',
'rm_user_from_processes' => '',
'rm_version' => 'Rimuovi versione',
'rm_workflow' => 'Rimuovi flusso di lavoro',
'rm_workflow_action' => 'Rimuovi azione del flusso di lavoro',
@ -1156,6 +1191,8 @@ URL: [url]',
'settings_enableClipboard_desc' => 'Abilita/disabilita la clipboard sulla pagina \'Vista cartella\'',
'settings_enableConverting' => 'Abilita conversione',
'settings_enableConverting_desc' => 'Abilita/disabilita la conversione dei files',
'settings_enableDropFolderList' => '',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => 'Abilita upload veloce',
'settings_enableDropUpload_desc' => 'Abilita/disabilita l\'area di rilascio nella pagina \'Vista cartella\' per caricare i files con drag&drop (trascina e rilascia).',
'settings_enableDuplicateDocNames' => 'Permetti documenti con lo stesso nome',
@ -1204,8 +1241,8 @@ URL: [url]',
'settings_enableThemeSelector_desc' => 'Abilita/disabilita il selettore di tema grafico nella finestra di login',
'settings_enableUpdateReceipt' => '',
'settings_enableUpdateReceipt_desc' => '',
'settings_enableUpdateRevApp' => '',
'settings_enableUpdateRevApp_desc' => '',
'settings_enableUpdateRevApp' => 'Consenti la modifica della revisione / approvazione estesa',
'settings_enableUpdateRevApp_desc' => 'Abilita questo, se l\'utente che ha effettuato una revisione / approvazione può modificare la decisione finché il passaggio di flusso di lavoro corrente non è stato completato.',
'settings_enableUserImage' => 'Abilita immagine utente',
'settings_enableUserImage_desc' => 'L\'opzione permette di attribuire un\'immagine a ciascun utente',
'settings_enableUsersView' => 'Abilita visualizzazione utenti',
@ -1433,12 +1470,15 @@ URL: [url]',
'splash_rm_role' => 'Ruolo cancellato',
'splash_rm_transmittal' => 'Trasmissione cancellato',
'splash_rm_user' => 'Utente eliminato',
'splash_rm_user_processes' => '',
'splash_saved_file' => '',
'splash_save_user_data' => '',
'splash_send_download_link' => '',
'splash_settings_saved' => 'Impostazioni salvate',
'splash_substituted_user' => 'Utente sostituito',
'splash_switched_back_user' => 'Ritorno all\'utente originale',
'splash_toogle_group_manager' => 'Amministratore di gruppo invertito',
'splash_transfer_objects' => '',
'state_and_next_state' => 'Stato/Prossimo stato',
'statistic' => 'Statistiche',
'status' => 'Stato',
@ -1507,11 +1547,15 @@ URL: [url]',
'timeline_skip_status_change_1' => 'in attesa di approvazione',
'timeline_skip_status_change_2' => 'rilasciato',
'timeline_skip_status_change_3' => 'nel workflow',
'timeline_skip_status_change_4' => '',
'timeline_skip_status_change_5' => '',
'timeline_status_change' => 'Versione [version]: Stato',
'to' => 'A',
'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_objects' => '',
'transfer_objects_to_user' => '',
'transition_triggered_email' => 'Inizio transizione del flusso di lavoro',
'transition_triggered_email_body' => 'Transizione del flusso di lavoro iniziata
Documento: [name]
@ -1570,10 +1614,12 @@ URL: [url]',
'uploading_zerosize' => 'Si sta caricando un file vuoto. Operazione abortita.',
'used_discspace' => 'Spazio su disco occupato',
'user' => 'Utente',
'userid_groupid' => '',
'users' => 'Utenti',
'users_and_groups' => 'Utenti/Gruppi',
'users_done_work' => 'Lavoro eseguito dagli Utenti',
'user_exists' => 'Utente già esistente',
'user_group' => '',
'user_group_management' => 'Gestione Utenti/Gruppi',
'user_image' => 'Immagine',
'user_info' => 'Informazioni utente',
@ -1607,6 +1653,7 @@ URL: [url]',
'weeks' => 'settimane',
'week_view' => 'Vista settimana',
'workflow' => 'Flusso di lavoro',
'workflows_involded' => '',
'workflow_actions_management' => 'Gestione azioni del flusso di lavoro',
'workflow_action_in_use' => 'Questa azione è attualmente usata da alcuni flussi di lavoro',
'workflow_action_name' => 'Nome',

View File

@ -88,6 +88,14 @@ URL: [url]',
'already_subscribed' => '가입된',
'and' => '와',
'apply' => '적용',
'approvals_accepted' => '',
'approvals_and_reviews_accepted' => '',
'approvals_and_reviews_not_touched' => '',
'approvals_and_reviews_rejected' => '',
'approvals_not_touched' => '',
'approvals_rejected' => '',
'approvals_without_group' => '',
'approvals_without_user' => '',
'approval_deletion_email' => '승인 요청 삭제',
'approval_deletion_email_body' => '승인 요청 삭제
문서: [name]
@ -279,7 +287,9 @@ URL: [url]',
'confirm_rm_transmittal' => '',
'confirm_rm_transmittalitem' => '제거 확인',
'confirm_rm_user' => '사용자 "[username]"을 정말 삭제 하시겠습니까?<br>주의: 취소가 불가능 합니다.',
'confirm_rm_user_from_processes' => '',
'confirm_rm_version' => '문서 "[documentname]"의 버젼 [version]을 정말 삭제 하시겠습니까?<br>주의: 취소가 불가능 합니다.',
'confirm_transfer_objects' => '',
'confirm_update_transmittalitem' => '업데이트 확인',
'content' => '콘텐츠',
'continue' => '계속',
@ -328,6 +338,7 @@ URL: [url]',
'documents_user_reception' => '',
'documents_user_rejected' => '거부된 문서',
'documents_user_requiring_attention' => '주의가 필요한 당신 소유의 문서',
'documents_with_notification' => '',
'document_already_checkedout' => '이문서는 이미 체크아웃 되었습니다',
'document_already_locked' => '이미 잠겨진 문서',
'document_comment_changed_email' => '코멘트가 변경됨',
@ -493,6 +504,7 @@ URL: [url]',
'folder' => '폴더',
'folders' => '폴더',
'folders_and_documents_statistic' => '개요 내용',
'folders_with_notification' => '',
'folder_comment_changed_email' => '코멘트가 변경',
'folder_comment_changed_email_body' => '코멘트 변경
폴더: [name]
@ -621,6 +633,7 @@ URL: [url]',
'js_no_approval_group' => '승인 그룹을 선택하세요',
'js_no_approval_status' => '승인 상태를 선택하세요',
'js_no_comment' => '코멘트가 없습니다',
'js_no_currentpwd' => '',
'js_no_email' => '당신의 이메일 주소를 입력',
'js_no_file' => '파일을 선택하세요',
'js_no_keywords' => '몇 가지 키워드를 지정',
@ -685,6 +698,7 @@ URL: [url]',
'march' => '3월',
'max_upload_size' => '최대 업로드 크기',
'may' => '월',
'menu_dropfolder' => '',
'mimetype' => '마임 유형',
'minutes' => '분',
'misc' => '기타',
@ -828,7 +842,9 @@ URL : [url]',
'password_strength_insuffient' => '부족한 비밀번호 강도',
'password_wrong' => '잘못된 비밀번호',
'pending_approvals' => '승인 보류',
'pending_receipt' => '',
'pending_reviews' => '미리보기 보류',
'pending_revision' => '',
'pending_workflows' => '대기중인 워크플로',
'personal_default_keywords' => '개인 키워드 목록',
'pl_PL' => '폴란드어',
@ -841,11 +857,18 @@ URL : [url]',
'preview_plain' => '미리보기',
'previous_state' => '이전 상태',
'previous_versions' => '이전 버전',
'process' => '',
'process_without_user_group' => '',
'pt_BR' => '포르투갈어 (BR)',
'quota' => '할당량',
'quota_exceeded' => '당신은 디스크 할당량 [bytes]을 초과한다.',
'quota_is_disabled' => '할당량 지원이 설정에서 비활성화되어 있습니다. 다시 활성화 될 때까지 사용자의 할당량 설정은 적용되지 않습니다.',
'quota_warning' => '당신의 최대 디스크 사용량 [bytes] 초과됩니다. 문서 또는 이전 버전을 제거하십시오.',
'receipts_accepted' => '',
'receipts_not_touched' => '',
'receipts_rejected' => '',
'receipts_without_group' => '',
'receipts_without_user' => '',
'receipt_deletion_email_body' => '',
'receipt_deletion_email_subject' => '',
'receipt_log' => '로그 수신',
@ -872,7 +895,7 @@ URL : [url]',
'removed_file_email_subject' => '[sitename] : [document] - 제거 된 첨부 파일',
'removed_recipient' => '수신자 목록에서 제거되었습니다.',
'removed_reviewer' => '검토 자 목록에서 제거 되었습니다',
'removed_revispr' => '수정 목록에서 제거되었습니다.',
'removed_revisor' => '수정 목록에서 제거되었습니다.',
'removed_workflow_email_body' => '문서 버전에서 워크플로우 삭제
문서: [name]
버전: [version]
@ -911,6 +934,11 @@ URL: [url]',
'reviewers' => '검토',
'reviewer_already_assigned' => '이미 검토 지정됩',
'reviewer_already_removed' => '이미 검토 과정에서 제거되었거나 리뷰로 제출',
'reviews_accepted' => '',
'reviews_not_touched' => '',
'reviews_rejected' => '',
'reviews_without_group' => '',
'reviews_without_user' => '',
'review_deletion_email' => '검토 요청 삭제',
'review_deletion_email_body' => '검토 요청 삭제
문서: [name]
@ -945,6 +973,12 @@ URL: [url]',
'review_update_failed' => '오류 업데이트 검토 상태. 업데이트에 실패했습니다 rewind_workflow워크플로우 되돌리기',
'revise_document' => '개정 문서',
'revise_document_on' => '문서 버전의 다음 개정 [날짜]',
'revisions_accepted' => '',
'revisions_not_touched' => '',
'revisions_pending' => '',
'revisions_rejected' => '',
'revisions_without_group' => '',
'revisions_without_user' => '',
'revision_date' => '개정 일자',
'revision_log' => '개정 로그',
'revision_request_email_body' => '수정 요청 메일 내용',
@ -979,6 +1013,7 @@ URL: [url]',
'rm_transmittal' => '송부 삭제',
'rm_transmittalitem' => '아이템 삭제',
'rm_user' => '이 사용자 제거',
'rm_user_from_processes' => '',
'rm_version' => '버전 제거',
'rm_workflow' => '워크플로우 제거',
'rm_workflow_action' => '워크플로우 작업 제거',
@ -1137,6 +1172,8 @@ URL : [url]',
'settings_enableClipboard_desc' => '\'View Folder\'의 클립 보드 활성화/비활성화',
'settings_enableConverting' => '변환 사용',
'settings_enableConverting_desc' => '활성화 / 비활성화 파일로 변환',
'settings_enableDropFolderList' => '',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => '빠른 업로드 허용',
'settings_enableDropUpload_desc' => 'Drag&Drop하여 파일을 업로드할 \'View_Folder\' 페이지의 드롭 영역을 활성/비활설 한다.',
'settings_enableDuplicateDocNames' => '중복 된 문서명 허용',
@ -1414,12 +1451,15 @@ URL : [url]',
'splash_rm_role' => '',
'splash_rm_transmittal' => '',
'splash_rm_user' => '사용자 제거',
'splash_rm_user_processes' => '',
'splash_saved_file' => '',
'splash_save_user_data' => '',
'splash_send_download_link' => '',
'splash_settings_saved' => '설정 저장',
'splash_substituted_user' => '전환된 사용자',
'splash_switched_back_user' => '원래 사용자로 전환',
'splash_toogle_group_manager' => '그룹 관리자 전환',
'splash_transfer_objects' => '',
'state_and_next_state' => '상태 / 다음 상태',
'statistic' => '통계',
'status' => '상태',
@ -1488,11 +1528,15 @@ URL : [url]',
'timeline_skip_status_change_1' => '승인 대기',
'timeline_skip_status_change_2' => '발표',
'timeline_skip_status_change_3' => '워크 플로우',
'timeline_skip_status_change_4' => '',
'timeline_skip_status_change_5' => '',
'timeline_status_change' => '버전 [version]: [status]',
'to' => '마감일',
'toggle_manager' => '전환 매니저',
'toggle_qrcode' => '',
'to_before_from' => '종료일은 시작일 전이 될수 없습니다',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transition_triggered_email' => '워크플로우 전환 트리거',
'transition_triggered_email_body' => '워크플로우 전환 트리거
문서: [name]
@ -1551,10 +1595,12 @@ URL : [url]',
'uploading_zerosize' => '빈 파일을 업로드 합니다. 업로드가 취소 됩니다.',
'used_discspace' => '사용되는 디스크 공간',
'user' => '사용자',
'userid_groupid' => '',
'users' => '사용자',
'users_and_groups' => '사용자 / 그룹',
'users_done_work' => '사용자 수행 할 작업',
'user_exists' => '사용자가 이미 존재합니다.',
'user_group' => '',
'user_group_management' => '사용자 / 그룹 관리',
'user_image' => '이미지',
'user_info' => '사용자 정보',
@ -1588,6 +1634,7 @@ URL : [url]',
'weeks' => '주',
'week_view' => '주간 단위로 보기',
'workflow' => '워크플로우',
'workflows_involded' => '',
'workflow_actions_management' => '워크플로우 작업 관리',
'workflow_action_in_use' => '이 작업은 현재 워크플로우에 의해 사용된다.',
'workflow_action_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 (726), gijsbertush (329), pepijn (45), reinoutdijkstra@hotmail.com (270)
// Translators: Admin (733), gijsbertush (329), pepijn (45), reinoutdijkstra@hotmail.com (270)
$text = array(
'2_factor_auth' => '',
@ -88,6 +88,14 @@ URL: [url]',
'already_subscribed' => 'Al ingetekend',
'and' => 'en',
'apply' => 'Toepassen',
'approvals_accepted' => '',
'approvals_and_reviews_accepted' => '',
'approvals_and_reviews_not_touched' => '',
'approvals_and_reviews_rejected' => '',
'approvals_not_touched' => '',
'approvals_rejected' => '',
'approvals_without_group' => '',
'approvals_without_user' => '',
'approval_deletion_email' => 'Goedkeuring verzoek verwijderd',
'approval_deletion_email_body' => 'Vraag om goedkeuring verwijderd
Document: [name]
@ -270,7 +278,9 @@ URL: [url]',
'confirm_rm_transmittal' => 'Bestig de verwijdering van de verzending',
'confirm_rm_transmittalitem' => 'Bevestig te verzenden item',
'confirm_rm_user' => 'Weet U zeker dat U de Gebruiker "[username]" wilt verwijderen?<br>Let op: deze handeling kan niet ongedaan worden gemaakt.',
'confirm_rm_user_from_processes' => '',
'confirm_rm_version' => 'Weet U zeker dat U deze versie van het document "[documentname]" wilt verwijderen?<br>Pas op: deze handeling kan niet ongedaan worden gemaakt.',
'confirm_transfer_objects' => '',
'confirm_update_transmittalitem' => 'Bevestig verandering van te verzenden item',
'content' => 'Welkomstpagina',
'continue' => 'Doorgaan',
@ -319,6 +329,7 @@ URL: [url]',
'documents_user_reception' => '',
'documents_user_rejected' => 'documenten niet geaccepteerd door gebruiker',
'documents_user_requiring_attention' => 'Eigen documenten die (nog) aandacht behoeven',
'documents_with_notification' => '',
'document_already_checkedout' => 'Al in behandeling genomen documenten',
'document_already_locked' => 'Dit document is al geblokkeerd',
'document_comment_changed_email' => 'Commentaar gewijzigd',
@ -455,14 +466,14 @@ URL: [url]',
'expired' => 'Verlopen',
'expired_at_date' => '',
'expires' => 'Verloopt',
'expire_by_date' => '',
'expire_by_date' => 'Vervaldatum',
'expire_in_1d' => '',
'expire_in_1h' => '',
'expire_in_1m' => '',
'expire_in_1w' => '',
'expire_in_1y' => '',
'expire_in_1m' => 'Vervalt binnen 1 maand',
'expire_in_1w' => 'Vervalt binnen 1 week',
'expire_in_1y' => 'Vervalt binnen 1 jaar',
'expire_in_2h' => '',
'expire_in_2y' => '',
'expire_in_2y' => 'Vervalt binnen 2 jaar',
'expire_today' => '',
'expire_tomorrow' => '',
'expiry_changed_email' => 'Verloopdatum gewijzigd',
@ -486,6 +497,7 @@ URL: [url]',
'folder' => 'Map',
'folders' => 'Mappen',
'folders_and_documents_statistic' => 'Inhoudsopgave',
'folders_with_notification' => '',
'folder_comment_changed_email' => 'Commentaar gewijzigd',
'folder_comment_changed_email_body' => 'Commentaar gewijzigd
Map: [name]
@ -565,7 +577,7 @@ URL: [url]',
'include_content' => 'inclusief inhoud',
'include_documents' => 'Inclusief documenten',
'include_subdirectories' => 'Inclusief submappen',
'indexing_tasks_in_queue' => '',
'indexing_tasks_in_queue' => 'Indexerings taken in wachtrij',
'index_converters' => 'Index document conversie',
'index_done' => '',
'index_error' => '',
@ -614,6 +626,7 @@ URL: [url]',
'js_no_approval_group' => 'Selecteer a.u.b. een Goedkeuring Groep',
'js_no_approval_status' => 'Selecteer a.u.b. een Goedkeuring Status',
'js_no_comment' => 'Er zijn geen commentaren',
'js_no_currentpwd' => '',
'js_no_email' => 'Voer uw e-mail adres in',
'js_no_file' => 'Selecteer een bestand',
'js_no_keywords' => 'Specificeer een aantal sleutelwoorden',
@ -678,6 +691,7 @@ URL: [url]',
'march' => 'maart',
'max_upload_size' => 'Maximale upload omvang voor ieder bestand',
'may' => 'mei',
'menu_dropfolder' => '',
'mimetype' => 'MIME Type',
'minutes' => 'Minuten',
'misc' => 'Diversen',
@ -790,7 +804,7 @@ URL: [url]',
'only_jpg_user_images' => 'U mag alleen .jpg afbeeldingen gebruiken als gebruikersafbeeldingen.',
'order_by_sequence_off' => 'Volgorde uit',
'original_filename' => 'Originele bestandsnaam',
'overall_indexing_progress' => '',
'overall_indexing_progress' => 'Indexerings voortgang totaal',
'owner' => 'Eigenaar',
'ownership_changed_email' => 'Eigenaar gewijzigd',
'ownership_changed_email_body' => 'Eigenaar gewijzigd
@ -829,7 +843,9 @@ Mocht u de komende minuten geen email ontvangen, probeer het dan nogmaals en con
'password_strength_insuffient' => 'Onvoldoende sterk wachtwoord',
'password_wrong' => 'Verkeerd wachtwoord',
'pending_approvals' => 'Wachten op goedkeuring',
'pending_receipt' => '',
'pending_reviews' => 'Wachten op beoordeling',
'pending_revision' => '',
'pending_workflows' => 'Wachten op workflow',
'personal_default_keywords' => 'Persoonlijke sleutelwoorden',
'pl_PL' => 'Polen',
@ -842,11 +858,18 @@ Mocht u de komende minuten geen email ontvangen, probeer het dan nogmaals en con
'preview_plain' => 'Voorbeeld in platte tekst',
'previous_state' => 'Vorige staat',
'previous_versions' => 'Vorige versies',
'process' => '',
'process_without_user_group' => '',
'pt_BR' => 'Portugees (BR)',
'quota' => 'Quotum',
'quota_exceeded' => 'Uw data quotum is overschreden met [bytes].',
'quota_is_disabled' => 'Quota support is momenteel niet actief in de eigenschappen. Een user-quotum instellen zal geen effect hebben tot quota actief zijn',
'quota_warning' => 'Uw maximale datagebruik is overschreden met [bytes]. Gelieve documenten of eerdere versies te verwijderen.',
'receipts_accepted' => '',
'receipts_not_touched' => '',
'receipts_rejected' => '',
'receipts_without_group' => '',
'receipts_without_user' => '',
'receipt_deletion_email_body' => '',
'receipt_deletion_email_subject' => '',
'receipt_log' => 'Log ontvangst',
@ -878,7 +901,7 @@ URL: [url]',
'removed_file_email_subject' => '[sitename]: [document] - Bijlage verwijderd',
'removed_recipient' => 'is verwijderd uit de lijst van ontvangers',
'removed_reviewer' => 'is verwijderd uit de lijst van beoordelaars',
'removed_revispr' => 'is verwijderd uit de lijst van herzieners',
'removed_revisor' => 'is verwijderd uit de lijst van herzieners',
'removed_workflow_email_body' => 'Workflow verwijderd van document versie document: [name]
Versie: [version]
Workflow: [workflow]
@ -916,6 +939,11 @@ URL: [url]',
'reviewers' => 'Beoordelaars',
'reviewer_already_assigned' => 'is reeds aangewezen als beoordelaar',
'reviewer_already_removed' => 'is reeds verwijderd uit het beoordelingsproces of heeft reeds een beoordeling uitgevoerd',
'reviews_accepted' => '',
'reviews_not_touched' => '',
'reviews_rejected' => '',
'reviews_without_group' => '',
'reviews_without_user' => '',
'review_deletion_email' => 'Beoordelingsverzoek verwijderd',
'review_deletion_email_body' => 'Beoordelingsverzoek verwijderd
Document: [name]
@ -949,6 +977,12 @@ URL: [url]',
'review_update_failed' => 'Fout: bijwerken status beoordeling mislukt.',
'revise_document' => 'Document herzien',
'revise_document_on' => 'Volgende herziening van document op [date]',
'revisions_accepted' => '',
'revisions_not_touched' => '',
'revisions_pending' => '',
'revisions_rejected' => '',
'revisions_without_group' => '',
'revisions_without_user' => '',
'revision_date' => 'Datum revisie',
'revision_log' => 'Log herziening',
'revision_request_email_body' => 'Verzoek tot herziening
@ -988,6 +1022,7 @@ URL: [url]',
'rm_transmittal' => 'Verwijder de verzending',
'rm_transmittalitem' => 'Verwijder verzonden item',
'rm_user' => 'Verwijder deze Gebruiker',
'rm_user_from_processes' => '',
'rm_version' => 'Verwijder versie',
'rm_workflow' => 'Verwijder workflwo',
'rm_workflow_action' => 'Verwijder workflow actie',
@ -1150,6 +1185,8 @@ URL: [url]',
'settings_enableClipboard_desc' => 'Activeer/ blokkeer het klembord',
'settings_enableConverting' => 'Inschakelen Conversie',
'settings_enableConverting_desc' => 'Inschakelen/uitschakelen conversie van bestanden',
'settings_enableDropFolderList' => '',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => 'Inschakelen Snelle Upload',
'settings_enableDropUpload_desc' => 'Aanzetten DropUpload',
'settings_enableDuplicateDocNames' => 'Sta duplicaten van documentnamen toe',
@ -1427,12 +1464,15 @@ URL: [url]',
'splash_rm_role' => 'Rol verwijderd',
'splash_rm_transmittal' => 'Verzending verwijderd',
'splash_rm_user' => 'Gebruiker verwijderd',
'splash_rm_user_processes' => '',
'splash_saved_file' => '',
'splash_save_user_data' => '',
'splash_send_download_link' => '',
'splash_settings_saved' => 'Instellingen opgeslagen',
'splash_substituted_user' => 'Invallers gebruiker',
'splash_switched_back_user' => 'Teruggeschakeld naar de oorspronkelijke gebruiker',
'splash_toogle_group_manager' => 'Group manager toogled',
'splash_transfer_objects' => '',
'state_and_next_state' => 'staat/ volgende staat',
'statistic' => 'Statistieken',
'status' => 'Status',
@ -1501,11 +1541,15 @@ URL: [url]',
'timeline_skip_status_change_1' => 'wacht op goedkeuring',
'timeline_skip_status_change_2' => 'gepubliceerd',
'timeline_skip_status_change_3' => 'binnen de workflow',
'timeline_skip_status_change_4' => '',
'timeline_skip_status_change_5' => '',
'timeline_status_change' => 'Versie [version]: [status]',
'to' => 'aan',
'toggle_manager' => 'Wijzig Beheerder',
'toggle_qrcode' => '',
'to_before_from' => 'De einddatum mag niet voor de startdatum liggen',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transition_triggered_email' => 'Workflow-overgang geactiveerd',
'transition_triggered_email_body' => 'Workflow Overgang
Document: [name]
@ -1564,10 +1608,12 @@ URL: [url]',
'uploading_zerosize' => 'Uploaden van een leeg bestand. Upload wordt geannuleerd.',
'used_discspace' => 'Gebruike schijf ruimte',
'user' => 'Gebruiker',
'userid_groupid' => '',
'users' => 'Gebruikers',
'users_and_groups' => 'Gebruikers / Groepen',
'users_done_work' => 'Uitgevoerd werk gebruikers',
'user_exists' => 'Gebruiker bestaat reeds.',
'user_group' => '',
'user_group_management' => 'Gebruikers / Groepen beheer',
'user_image' => 'Afbeelding',
'user_info' => 'Gebruikers informatie',
@ -1601,6 +1647,7 @@ URL: [url]',
'weeks' => 'Weken',
'week_view' => 'Week Overzicht',
'workflow' => 'Workflow',
'workflows_involded' => '',
'workflow_actions_management' => 'Workflow actiebeheer',
'workflow_action_in_use' => 'Deze actie wordt momenteel gebruikt door een workflow',
'workflow_action_name' => 'Naam',

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 (770), netixw (84), romi (93), uGn (112)
// Translators: Admin (771), netixw (84), romi (93), uGn (112)
$text = array(
'2_factor_auth' => '',
@ -88,6 +88,14 @@ URL: [url]',
'already_subscribed' => 'Aktualnie subskrybowane',
'and' => 'i',
'apply' => 'Zastosuj',
'approvals_accepted' => '',
'approvals_and_reviews_accepted' => '',
'approvals_and_reviews_not_touched' => '',
'approvals_and_reviews_rejected' => '',
'approvals_not_touched' => '',
'approvals_rejected' => '',
'approvals_without_group' => '',
'approvals_without_user' => '',
'approval_deletion_email' => 'Prośba o akceptację została usunięta',
'approval_deletion_email_body' => '',
'approval_deletion_email_subject' => '',
@ -173,7 +181,7 @@ URL: [url]',
'at_least_n_users_of_group' => 'Przynajmniej [number_of_users] użytkowników grupy [group]',
'august' => 'Sierpień',
'authentication' => 'Autoryzacja',
'author' => '',
'author' => 'Autor',
'automatic_status_update' => 'Automatyczna zmiana statusu',
'back' => 'Powrót',
'backup_list' => 'Lista istniejących kopii zapasowych',
@ -265,7 +273,9 @@ URL: [url]',
'confirm_rm_transmittal' => '',
'confirm_rm_transmittalitem' => '',
'confirm_rm_user' => 'Czy rzeczywiście chcesz usunąć użytkownika "[username]"?<br>Ostrożnie: Ta operacja nie może być cofnięta.',
'confirm_rm_user_from_processes' => '',
'confirm_rm_version' => 'Czy rzeczywiście chcesz usunąć wersję [version] dokumentu "[documentname]"?<br>Ostrożnie: Ta operacja nie może być cofnięta.',
'confirm_transfer_objects' => '',
'confirm_update_transmittalitem' => '',
'content' => 'Zawartość',
'continue' => 'Kontynuuj',
@ -314,6 +324,7 @@ URL: [url]',
'documents_user_reception' => '',
'documents_user_rejected' => '',
'documents_user_requiring_attention' => 'Dokumenty należące do Ciebie, które wymagają uwagi',
'documents_with_notification' => '',
'document_already_checkedout' => '',
'document_already_locked' => 'Ten dokument jest już zablokowany',
'document_comment_changed_email' => 'Zmiana komentarza',
@ -481,6 +492,7 @@ URL: [url]',
'folder' => 'Folder',
'folders' => 'Foldery',
'folders_and_documents_statistic' => 'Podsumowanie zawartości',
'folders_with_notification' => '',
'folder_comment_changed_email' => 'Zmiana komentarza',
'folder_comment_changed_email_body' => 'Komentarz uległ zmianie
Folder: [name]
@ -609,6 +621,7 @@ URL: [url]',
'js_no_approval_group' => 'Proszę wybrać grupę odpowiedzalną za akceptację',
'js_no_approval_status' => 'Proszę wybrać status akceptacji',
'js_no_comment' => 'Proszę dodać komentarz',
'js_no_currentpwd' => '',
'js_no_email' => 'Wprowadź swój adres email',
'js_no_file' => 'Proszę wybrać plik',
'js_no_keywords' => 'Wybierz jakieś słowa kluczowe',
@ -673,6 +686,7 @@ URL: [url]',
'march' => 'Marzec',
'max_upload_size' => 'Maksymalny rozmiar pliku',
'may' => 'Maj',
'menu_dropfolder' => '',
'mimetype' => 'Typ mime',
'minutes' => 'minut',
'misc' => 'Różne',
@ -824,7 +838,9 @@ Jeśli nadal będą problemy z zalogowaniem, prosimy o kontakt z administratorem
'password_strength_insuffient' => 'Niewystarczająca siła hasła',
'password_wrong' => 'Złe hasło',
'pending_approvals' => '',
'pending_receipt' => '',
'pending_reviews' => '',
'pending_revision' => '',
'pending_workflows' => '',
'personal_default_keywords' => 'Osobiste sława kluczowe',
'pl_PL' => 'Polski',
@ -837,11 +853,18 @@ Jeśli nadal będą problemy z zalogowaniem, prosimy o kontakt z administratorem
'preview_plain' => '',
'previous_state' => 'Poprzedni stan',
'previous_versions' => 'Poprzednie wersje',
'process' => '',
'process_without_user_group' => '',
'pt_BR' => 'Portugalski(BR)',
'quota' => 'Przydział',
'quota_exceeded' => 'Twój limit przydzielonej przestrzeni dyskowej został przekroczony o [bytes].',
'quota_is_disabled' => 'Wsparcie limitów dyskowych jest obecnie wyłączone w ustawieniach. Ustawiony limit dyskowy użytkownika nie będzie działał dopóki wparcie nie zostanie ponownie włączone.',
'quota_warning' => 'Przekroczono użycie dysku o [bytes]. Usuń dokumenty lub poprzednie wersje.',
'receipts_accepted' => '',
'receipts_not_touched' => '',
'receipts_rejected' => '',
'receipts_without_group' => '',
'receipts_without_user' => '',
'receipt_deletion_email_body' => '',
'receipt_deletion_email_subject' => '',
'receipt_log' => '',
@ -868,7 +891,7 @@ URL: [url]',
'removed_file_email_subject' => '[sitename]: [document] - Usunięty załącznik',
'removed_recipient' => '',
'removed_reviewer' => 'został usunięty z listy recenzentów.',
'removed_revispr' => '',
'removed_revisor' => '',
'removed_workflow_email_body' => 'Usunięcie procesu z wersji dokumentu
Dokument: [name]
Wersja: [version]
@ -893,6 +916,11 @@ URL: [url]',
'reviewers' => 'Recenzenci',
'reviewer_already_assigned' => 'jest już przypisany jako recenzent',
'reviewer_already_removed' => 'został już usunięty z procesu opiniowania lub już wydał swoją opinię',
'reviews_accepted' => '',
'reviews_not_touched' => '',
'reviews_rejected' => '',
'reviews_without_group' => '',
'reviews_without_user' => '',
'review_deletion_email' => 'Prośba o recenzję usunięta',
'review_deletion_email_body' => '',
'review_deletion_email_subject' => '',
@ -910,6 +938,12 @@ URL: [url]',
'review_update_failed' => 'Błąd podczas aktualizowania statusu recenzji. Aktualizacja nie powiodła się.',
'revise_document' => '',
'revise_document_on' => '',
'revisions_accepted' => '',
'revisions_not_touched' => '',
'revisions_pending' => '',
'revisions_rejected' => '',
'revisions_without_group' => '',
'revisions_without_user' => '',
'revision_date' => '',
'revision_log' => '',
'revision_request_email_body' => '',
@ -944,6 +978,7 @@ URL: [url]',
'rm_transmittal' => '',
'rm_transmittalitem' => '',
'rm_user' => 'Usuń tego użytkownika',
'rm_user_from_processes' => '',
'rm_version' => 'Usuń wersję',
'rm_workflow' => 'Usuń proces',
'rm_workflow_action' => 'Usunięcie działania procesu',
@ -1102,6 +1137,8 @@ URL: [url]',
'settings_enableClipboard_desc' => 'Włącz/wyłącz schowek',
'settings_enableConverting' => 'Włącz konwertowanie',
'settings_enableConverting_desc' => 'Włącz/Wyłącz konwertowanie plików',
'settings_enableDropFolderList' => '',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => '',
'settings_enableDropUpload_desc' => '',
'settings_enableDuplicateDocNames' => 'Zezwalaj na zduplikowane nazwy dokumentów',
@ -1379,12 +1416,15 @@ URL: [url]',
'splash_rm_role' => '',
'splash_rm_transmittal' => '',
'splash_rm_user' => 'Użytkownika usunięto',
'splash_rm_user_processes' => '',
'splash_saved_file' => '',
'splash_save_user_data' => '',
'splash_send_download_link' => '',
'splash_settings_saved' => 'Zmiany zapisano',
'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_objects' => '',
'state_and_next_state' => 'Status/Następny status',
'statistic' => 'Statystyka',
'status' => 'Status',
@ -1453,11 +1493,15 @@ URL: [url]',
'timeline_skip_status_change_1' => 'oczekuje na zatwierdzenie',
'timeline_skip_status_change_2' => '',
'timeline_skip_status_change_3' => 'w obiegu',
'timeline_skip_status_change_4' => '',
'timeline_skip_status_change_5' => '',
'timeline_status_change' => 'Wersja [wersja]: [status]',
'to' => 'Do',
'toggle_manager' => 'Przełączanie zarządcy',
'toggle_qrcode' => '',
'to_before_from' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transition_triggered_email' => 'Uruchomiono proces przepływu',
'transition_triggered_email_body' => 'Uruchomiono proces przepływu
Dokument: [name]
@ -1516,10 +1560,12 @@ URL: [url]',
'uploading_zerosize' => 'Próba przesłania pustego pliku. Przesłanie zostało przerwane.',
'used_discspace' => 'Użyta przestrzeń dyskowa',
'user' => 'Użytkownik',
'userid_groupid' => '',
'users' => 'Użytkownicy',
'users_and_groups' => 'Użytkownicy/Grupy',
'users_done_work' => 'Użytkownicy',
'user_exists' => 'Użytkownik już istnieje.',
'user_group' => '',
'user_group_management' => 'Zarządzanie Użytkownikami/Grupami',
'user_image' => 'Zdjęcie',
'user_info' => 'Informacje o użytkowniku',
@ -1553,6 +1599,7 @@ URL: [url]',
'weeks' => 'tygodni',
'week_view' => 'Widok tygodniowy',
'workflow' => 'Proces',
'workflows_involded' => '',
'workflow_actions_management' => 'Zarządzanie akcjami procesu',
'workflow_action_in_use' => 'Akcja ta jest obecnie zastosowana w procesie',
'workflow_action_name' => 'Nazwa',

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 (945), flaviove (627), lfcristofoli (352)
// Translators: Admin (949), flaviove (627), lfcristofoli (352)
$text = array(
'2_factor_auth' => '',
@ -88,6 +88,14 @@ URL: [url]',
'already_subscribed' => 'Já subscrito',
'and' => 'e',
'apply' => 'Aplicar',
'approvals_accepted' => '',
'approvals_and_reviews_accepted' => '',
'approvals_and_reviews_not_touched' => '',
'approvals_and_reviews_rejected' => '',
'approvals_not_touched' => '',
'approvals_rejected' => '',
'approvals_without_group' => '',
'approvals_without_user' => '',
'approval_deletion_email' => 'Solicitação de Aprovação eliminada',
'approval_deletion_email_body' => '',
'approval_deletion_email_subject' => '',
@ -234,14 +242,14 @@ URL: [url]',
'checkout_is_disabled' => '',
'choose_attrdef' => 'Por favor escolha a definição de atributo',
'choose_attrdefgroup' => '',
'choose_category' => '--Por favor escolha--',
'choose_group' => '--Escolher grupo--',
'choose_category' => 'Por favor escolha',
'choose_group' => 'Escolher grupo',
'choose_role' => '',
'choose_target_category' => 'Escolha a categoria',
'choose_target_document' => 'Escolha documento',
'choose_target_file' => 'Escolha o arquivo',
'choose_target_folder' => 'Escolha pasta-alvo',
'choose_user' => '--Escolher usuário--',
'choose_user' => 'Escolher usuário',
'choose_workflow' => 'Escolha de fluxo de trabalho',
'choose_workflow_action' => 'Escolha a ação de fluxo de trabalho',
'choose_workflow_state' => 'Escolha um estado de fluxo de trabalho',
@ -272,7 +280,9 @@ URL: [url]',
'confirm_rm_transmittal' => '',
'confirm_rm_transmittalitem' => '',
'confirm_rm_user' => 'Do you really want to remove the user "[username]"?<br>Be careful: This action cannot be undone.',
'confirm_rm_user_from_processes' => '',
'confirm_rm_version' => 'Deseja realmente remover versão [version] do documento "[documentname]"?<br>Por favor, tenha cuidado porque esta ação não poderá ser desfeita.',
'confirm_transfer_objects' => '',
'confirm_update_transmittalitem' => '',
'content' => 'Conteúdo',
'continue' => 'Continue',
@ -306,7 +316,7 @@ URL: [url]',
'docs_in_reception_no_access' => '',
'docs_in_revision_no_access' => '',
'document' => 'Documento',
'documentcontent' => '',
'documentcontent' => 'Conteúdo do Documento',
'documents' => 'Documentos',
'documents_checked_out_by_you' => '',
'documents_in_process' => 'Documentos em Processo',
@ -321,6 +331,7 @@ URL: [url]',
'documents_user_reception' => '',
'documents_user_rejected' => '',
'documents_user_requiring_attention' => 'Documents Owned by User That Require Attention',
'documents_with_notification' => '',
'document_already_checkedout' => '',
'document_already_locked' => 'Este documento já está travado',
'document_comment_changed_email' => 'Comentário modificado',
@ -487,6 +498,7 @@ URL: [url]',
'folder' => 'Pasta',
'folders' => 'Pastas',
'folders_and_documents_statistic' => 'Relatórios de pastas e documentos',
'folders_with_notification' => '',
'folder_comment_changed_email' => 'Comentário mudou',
'folder_comment_changed_email_body' => 'Comentário mudou
Pasta: [name]
@ -615,6 +627,7 @@ URL: [url]',
'js_no_approval_group' => '',
'js_no_approval_status' => '',
'js_no_comment' => 'não há comentário',
'js_no_currentpwd' => '',
'js_no_email' => 'Digite seu endereço de e-mail',
'js_no_file' => 'Por favor selecione um arquivo',
'js_no_keywords' => 'Especifique algumas palavras-chave',
@ -679,6 +692,7 @@ URL: [url]',
'march' => 'March',
'max_upload_size' => 'Tamanho máximo de arquivo para upload',
'may' => 'May',
'menu_dropfolder' => '',
'mimetype' => 'Tipo mime',
'minutes' => 'minutos',
'misc' => 'Miscelânia',
@ -829,7 +843,9 @@ Se você ainda tiver problemas para fazer o login, por favor, contate o administ
'password_strength_insuffient' => 'A força da senha é insuficiente',
'password_wrong' => 'Senha errada',
'pending_approvals' => '',
'pending_receipt' => '',
'pending_reviews' => '',
'pending_revision' => '',
'pending_workflows' => '',
'personal_default_keywords' => 'palavras-chave pessoais',
'pl_PL' => 'Polonês',
@ -842,11 +858,18 @@ Se você ainda tiver problemas para fazer o login, por favor, contate o administ
'preview_plain' => '',
'previous_state' => 'Estado anterior',
'previous_versions' => 'Previous Versions',
'process' => '',
'process_without_user_group' => '',
'pt_BR' => 'Português (BR)',
'quota' => 'Quota',
'quota_exceeded' => 'Sua cota de disco foi ultrapassada em [bytes].',
'quota_is_disabled' => 'Suporte a cota está desativado nas configurações. A definição de cota do usuário não terá efeito até que seja habilitada novamente.',
'quota_warning' => 'Seu uso máximo do disco foi ultrapassado em [bytes]. Por favor, remova documentos ou versões anteriores.',
'receipts_accepted' => '',
'receipts_not_touched' => '',
'receipts_rejected' => '',
'receipts_without_group' => '',
'receipts_without_user' => '',
'receipt_deletion_email_body' => '',
'receipt_deletion_email_subject' => '',
'receipt_log' => '',
@ -873,7 +896,7 @@ URL: [url]',
'removed_file_email_subject' => '[sitename]: [document] - Anexo removido',
'removed_recipient' => '',
'removed_reviewer' => 'has been removed from the list of reviewers.',
'removed_revispr' => '',
'removed_revisor' => '',
'removed_workflow_email_body' => 'Removido do fluxo de trabalho de documentos version
Document: [name]
Versão: [version]
@ -905,6 +928,11 @@ URL: [url]',
'reviewers' => 'Reviewers',
'reviewer_already_assigned' => 'is already assigned as a reviewer',
'reviewer_already_removed' => 'has already been removed from review proceá or has already submitted a review',
'reviews_accepted' => '',
'reviews_not_touched' => '',
'reviews_rejected' => '',
'reviews_without_group' => '',
'reviews_without_user' => '',
'review_deletion_email' => 'Pedido de revisão eliminado',
'review_deletion_email_body' => '',
'review_deletion_email_subject' => '',
@ -928,6 +956,12 @@ URL: [url]',
'review_update_failed' => 'Error updating review status. Update failed.',
'revise_document' => '',
'revise_document_on' => '',
'revisions_accepted' => '',
'revisions_not_touched' => '',
'revisions_pending' => '',
'revisions_rejected' => '',
'revisions_without_group' => '',
'revisions_without_user' => '',
'revision_date' => '',
'revision_log' => '',
'revision_request_email_body' => '',
@ -962,6 +996,7 @@ URL: [url]',
'rm_transmittal' => '',
'rm_transmittalitem' => '',
'rm_user' => 'Remove este usuário',
'rm_user_from_processes' => '',
'rm_version' => 'Remove versão',
'rm_workflow' => 'Retire do fluxo de trabalho',
'rm_workflow_action' => 'Remover Ação de Fluxo de Trabalho',
@ -1120,6 +1155,8 @@ URL: [url]',
'settings_enableClipboard_desc' => 'Habilitar/desabilitar a área de transferência',
'settings_enableConverting' => 'Ativar Convertendo',
'settings_enableConverting_desc' => 'Ativar/dasativar conversão de arquivos',
'settings_enableDropFolderList' => '',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => 'Habilitar Upload Rápido',
'settings_enableDropUpload_desc' => 'Habilitar / Desabilitar a área na página \'Vista de Pastas\' para upload de arquivos por Arrastar e Soltar.',
'settings_enableDuplicateDocNames' => 'Permitir nomes duplicados de documento',
@ -1397,12 +1434,15 @@ URL: [url]',
'splash_rm_role' => '',
'splash_rm_transmittal' => '',
'splash_rm_user' => 'Usuário removido',
'splash_rm_user_processes' => '',
'splash_saved_file' => '',
'splash_save_user_data' => '',
'splash_send_download_link' => '',
'splash_settings_saved' => 'Configurações salvas',
'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_objects' => '',
'state_and_next_state' => 'Estado/Próximo estado',
'statistic' => 'Estatística',
'status' => 'Status',
@ -1471,11 +1511,15 @@ URL: [url]',
'timeline_skip_status_change_1' => 'aprovação pendente',
'timeline_skip_status_change_2' => 'liberado',
'timeline_skip_status_change_3' => 'dentro do fluxo de trabalho',
'timeline_skip_status_change_4' => '',
'timeline_skip_status_change_5' => '',
'timeline_status_change' => 'Versão [versão]: [estado]',
'to' => 'To',
'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_objects' => '',
'transfer_objects_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]
@ -1534,10 +1578,12 @@ URL: [url]',
'uploading_zerosize' => 'Upload de um arquivo vazio. Upload é cancelado.',
'used_discspace' => 'Espaço em disco usado',
'user' => 'Usuário',
'userid_groupid' => '',
'users' => 'Usuários',
'users_and_groups' => 'Usuários/Grupos',
'users_done_work' => 'Usuários trabalho concluído',
'user_exists' => 'Usuário já existe.',
'user_group' => '',
'user_group_management' => 'Gerenciamento Usuários/Grupos',
'user_image' => 'Imagem',
'user_info' => 'Perfil do usuário',
@ -1571,6 +1617,7 @@ URL: [url]',
'weeks' => 'semanas',
'week_view' => 'Visualização semanal',
'workflow' => 'Fluxo de trabalho',
'workflows_involded' => '',
'workflow_actions_management' => 'Gestão de fluxo de trabalho ações',
'workflow_action_in_use' => 'Esta ação é usado atualmente por fluxos de trabalho.',
'workflow_action_name' => 'Nome',

View File

@ -88,6 +88,14 @@ URL: [url]',
'already_subscribed' => 'Deja trimis',
'and' => 'si',
'apply' => 'Aplică',
'approvals_accepted' => '',
'approvals_and_reviews_accepted' => '',
'approvals_and_reviews_not_touched' => '',
'approvals_and_reviews_rejected' => '',
'approvals_not_touched' => '',
'approvals_rejected' => '',
'approvals_without_group' => '',
'approvals_without_user' => '',
'approval_deletion_email' => 'Cerere de aprobare stearsă',
'approval_deletion_email_body' => 'Cerere aprobare stearsa
Document: [name]
@ -277,7 +285,9 @@ URL: [url]',
'confirm_rm_transmittal' => '',
'confirm_rm_transmittalitem' => '',
'confirm_rm_user' => 'Sigur doriți să eliminați utilizatorul "[username]"?<br>Fiți atenți: Această acțiune nu poate fi anulată.',
'confirm_rm_user_from_processes' => '',
'confirm_rm_version' => 'Sigur doriți să eliminați versiunea [version] a documentului "[documentname]"?<br>Fiți atenți: Această acțiune nu poate fi anulată.',
'confirm_transfer_objects' => '',
'confirm_update_transmittalitem' => '',
'content' => 'Conținut',
'continue' => 'Continuă',
@ -326,6 +336,7 @@ URL: [url]',
'documents_user_reception' => '',
'documents_user_rejected' => '',
'documents_user_requiring_attention' => 'Documente deținute de tine care necesită atenție',
'documents_with_notification' => '',
'document_already_checkedout' => 'Acest document este deja verificat',
'document_already_locked' => 'Acest document este deja blocat',
'document_comment_changed_email' => 'Comentariu schimbat',
@ -493,6 +504,7 @@ URL: [url]',
'folder' => 'Folder',
'folders' => 'Foldere',
'folders_and_documents_statistic' => 'Privire de ansamblu asupra continutului',
'folders_with_notification' => '',
'folder_comment_changed_email' => 'Comentariu schimbat',
'folder_comment_changed_email_body' => 'Comentariu schimbat
Folder: [name]
@ -621,6 +633,7 @@ URL: [url]',
'js_no_approval_group' => 'Vă rugăm să selectați un grup de aprobare',
'js_no_approval_status' => 'Vă rugăm să selectați statusul de aprobare',
'js_no_comment' => 'Nu există comentarii',
'js_no_currentpwd' => '',
'js_no_email' => 'Introduceti adresa dumneavoastra de email',
'js_no_file' => 'Vă rugăm să selectați un fișier',
'js_no_keywords' => 'Specificați câteva cuvinte cheie',
@ -685,6 +698,7 @@ URL: [url]',
'march' => 'Martie',
'max_upload_size' => 'Dimensiunea maximă de încărcare',
'may' => 'Mai',
'menu_dropfolder' => '',
'mimetype' => 'Mime type',
'minutes' => 'minute',
'misc' => 'Diverse',
@ -836,7 +850,9 @@ Dacă aveți în continuare probleme la autentificare, vă rugăm să contactaț
'password_strength_insuffient' => 'Siguranța parolei este insuficientă',
'password_wrong' => 'Parolă greșită',
'pending_approvals' => '',
'pending_receipt' => '',
'pending_reviews' => '',
'pending_revision' => '',
'pending_workflows' => '',
'personal_default_keywords' => 'Liste de cuvinte cheie personale',
'pl_PL' => 'Poloneză',
@ -849,11 +865,18 @@ Dacă aveți în continuare probleme la autentificare, vă rugăm să contactaț
'preview_plain' => '',
'previous_state' => 'Stare precedentă',
'previous_versions' => 'Versiune precedentă',
'process' => '',
'process_without_user_group' => '',
'pt_BR' => 'Portugheză (BR)',
'quota' => 'Spatiu alocat',
'quota_exceeded' => 'Spatiul tău alocat pe disc este depășit cu [bytes].',
'quota_is_disabled' => 'Spatiu alocat este dezactivată în setări. Stabilirea unui spatiu alocat pentru utilizator nu va avea nici un efect până când setarea este reactivată din nou.',
'quota_warning' => 'Dimensiunea dumneavoastră maximă este depasită cu [bytes]. Vă rugăm să eliminați documente sau versiuni anterioare.',
'receipts_accepted' => '',
'receipts_not_touched' => '',
'receipts_rejected' => '',
'receipts_without_group' => '',
'receipts_without_user' => '',
'receipt_deletion_email_body' => '',
'receipt_deletion_email_subject' => '',
'receipt_log' => '',
@ -880,7 +903,7 @@ URL: [url]',
'removed_file_email_subject' => '[sitename]: [document] - Atașament eliminat',
'removed_recipient' => 'a fost eliminat de pe lista de destinatari.',
'removed_reviewer' => 'a fost eliminat din lista de revizuitori.',
'removed_revispr' => 'a fost eliminat din lista de retrimitori.',
'removed_revisor' => 'a fost eliminat din lista de retrimitori.',
'removed_workflow_email_body' => 'Workflow eliminat din versiunea documentului
Document: [name]
Versiune: [version]
@ -919,6 +942,11 @@ URL: [url]',
'reviewers' => 'Revizuitori',
'reviewer_already_assigned' => 'este deja alocat ca un revizuitor',
'reviewer_already_removed' => 'a fost deja eliminat din procesul de revizuire sau a postat deja o revizuire',
'reviews_accepted' => '',
'reviews_not_touched' => '',
'reviews_rejected' => '',
'reviews_without_group' => '',
'reviews_without_user' => '',
'review_deletion_email' => 'Cerere de revizuire eliminată',
'review_deletion_email_body' => 'Cerere de revizuire eliminata
Document: [name]
@ -953,6 +981,12 @@ URL: [url]',
'review_update_failed' => 'Eroare actualizarea status revizuire. Actualizarea a eșuat.',
'revise_document' => 'Revizuiti documentul',
'revise_document_on' => 'Urmatoarea revizuire a versiunii document pe [data]',
'revisions_accepted' => '',
'revisions_not_touched' => '',
'revisions_pending' => '',
'revisions_rejected' => '',
'revisions_without_group' => '',
'revisions_without_user' => '',
'revision_date' => '',
'revision_log' => 'Log revizuire',
'revision_request_email_body' => '',
@ -987,6 +1021,7 @@ URL: [url]',
'rm_transmittal' => 'Elimina transmiterea',
'rm_transmittalitem' => '',
'rm_user' => 'Eliminați acest utilizator',
'rm_user_from_processes' => '',
'rm_version' => 'Eliminați versiune',
'rm_workflow' => 'Eliminați Workflow',
'rm_workflow_action' => 'Eliminați actiune Workflow',
@ -1145,6 +1180,8 @@ URL: [url]',
'settings_enableClipboard_desc' => 'Activare/dezactivare clipboard în pagina \'Vizualizare Folder\'',
'settings_enableConverting' => 'Activare Conversie',
'settings_enableConverting_desc' => 'Activare/dezactivare conversia fișierelor',
'settings_enableDropFolderList' => '',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => 'Activare Încărcare rapidă',
'settings_enableDropUpload_desc' => 'Activare/dezactivare zona de plasare (drop area) în pagina \'Vizualizare Folder\' pentru încarcarea fisierelor folosind Drag&Drop.',
'settings_enableDuplicateDocNames' => 'Permiteți nume de documente duplicate',
@ -1422,12 +1459,15 @@ URL: [url]',
'splash_rm_role' => '',
'splash_rm_transmittal' => '',
'splash_rm_user' => 'Uilizator eliminat',
'splash_rm_user_processes' => '',
'splash_saved_file' => '',
'splash_save_user_data' => '',
'splash_send_download_link' => '',
'splash_settings_saved' => 'Setări salvate',
'splash_substituted_user' => 'Utilizator substituit',
'splash_switched_back_user' => 'Comutat înapoi la utilizatorul original',
'splash_toogle_group_manager' => 'Comută Managerul de grup',
'splash_transfer_objects' => '',
'state_and_next_state' => 'Stare/Stare urmatoare',
'statistic' => 'Statistic',
'status' => 'Status',
@ -1496,11 +1536,15 @@ URL: [url]',
'timeline_skip_status_change_1' => 'așteaptă aprobare',
'timeline_skip_status_change_2' => '',
'timeline_skip_status_change_3' => 'în proces',
'timeline_skip_status_change_4' => '',
'timeline_skip_status_change_5' => '',
'timeline_status_change' => 'Versiune [versiune]: [stare]',
'to' => 'La',
'toggle_manager' => 'Comută Manager',
'toggle_qrcode' => '',
'to_before_from' => 'Data de încheiere nu poate fi înainte de data de începere',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transition_triggered_email' => 'Tranziție Workflow declanșată',
'transition_triggered_email_body' => 'Tranziție Workflow declanșată
Document: [name]
@ -1559,10 +1603,12 @@ URL: [url]',
'uploading_zerosize' => 'Se încarcă un fișier gol. Încărcarea este anulată.',
'used_discspace' => 'Spatiu pe disc folosit',
'user' => 'Utilizator',
'userid_groupid' => '',
'users' => 'Utilizatori',
'users_and_groups' => 'Utilizatori/Grupuri',
'users_done_work' => 'Utilizatorii au terminat lucrul',
'user_exists' => 'Utilizatorul există deja.',
'user_group' => '',
'user_group_management' => 'Management Utilizatorii/Grupuri',
'user_image' => 'Imagine',
'user_info' => 'Informații utilizator',
@ -1596,6 +1642,7 @@ URL: [url]',
'weeks' => 'săptămâni',
'week_view' => 'Vizualizare săptămână',
'workflow' => 'Workflow',
'workflows_involded' => '',
'workflow_actions_management' => 'Management acțiuni Workflow',
'workflow_action_in_use' => 'Această acțiune este utilizată în prezent de Workflow-uri.',
'workflow_action_name' => 'Nume',

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 (1644)
// Translators: Admin (1647)
$text = array(
'2_factor_auth' => 'Двухфакторная аутентификация',
@ -88,6 +88,14 @@ URL: [url]',
'already_subscribed' => 'Уже подписан',
'and' => 'и',
'apply' => 'Применить',
'approvals_accepted' => '',
'approvals_and_reviews_accepted' => '',
'approvals_and_reviews_not_touched' => '',
'approvals_and_reviews_rejected' => '',
'approvals_not_touched' => '',
'approvals_rejected' => '',
'approvals_without_group' => '',
'approvals_without_user' => '',
'approval_deletion_email' => 'Запрос на утверждение удалён',
'approval_deletion_email_body' => 'Запрос на утверждение удален
Имя: [name]
@ -277,7 +285,9 @@ URL: [url]',
'confirm_rm_transmittal' => 'Подтвердить удаление',
'confirm_rm_transmittalitem' => 'Подтвердить удаление',
'confirm_rm_user' => 'Удалить пользователя «[username]»?<br>Действие <b>необратимо</b>',
'confirm_rm_user_from_processes' => '',
'confirm_rm_version' => 'Удалить версию [version] документа «[documentname]»?<br>Действие <b>необратимо</b>',
'confirm_transfer_objects' => '',
'confirm_update_transmittalitem' => 'Подтвердите обновление',
'content' => 'Содержимое',
'continue' => 'Продолжить',
@ -326,6 +336,7 @@ URL: [url]',
'documents_user_reception' => '',
'documents_user_rejected' => 'Отклоненные документы',
'documents_user_requiring_attention' => 'Ваши документы, требующие внимания',
'documents_with_notification' => '',
'document_already_checkedout' => 'Этот документ уже проверен',
'document_already_locked' => 'Документ уже заблокирован',
'document_comment_changed_email' => 'Изменён комментарий',
@ -493,6 +504,7 @@ URL: [url]',
'folder' => 'Каталог',
'folders' => 'кат.',
'folders_and_documents_statistic' => 'Обзор содержимого',
'folders_with_notification' => '',
'folder_comment_changed_email' => 'Комментарий изменён',
'folder_comment_changed_email_body' => 'Изменён комментарий каталога
Каталог: [name]
@ -572,13 +584,13 @@ URL: [url]',
'include_content' => 'Включая содержимое',
'include_documents' => 'Включая документы',
'include_subdirectories' => 'Включая подкаталоги',
'indexing_tasks_in_queue' => '',
'indexing_tasks_in_queue' => 'Задача индексирования поставлена в очередь',
'index_converters' => 'Индексирование документов',
'index_done' => '',
'index_error' => '',
'index_folder' => 'Полнотекстовый индекс',
'index_pending' => '',
'index_waiting' => '',
'index_waiting' => 'Ожидание',
'individuals' => 'Пользователи',
'indivіduals_in_groups' => 'Пользователи группы',
'inherited' => 'унаследованный',
@ -621,6 +633,7 @@ URL: [url]',
'js_no_approval_group' => 'Выберите утверждающую группу',
'js_no_approval_status' => 'Выберите статус утверждения',
'js_no_comment' => 'Нет комментария',
'js_no_currentpwd' => '',
'js_no_email' => 'Введите свой e-mail',
'js_no_file' => 'Выберите файл',
'js_no_keywords' => 'Укажите метки',
@ -685,6 +698,7 @@ URL: [url]',
'march' => 'Март',
'max_upload_size' => 'Ограничение размера файла',
'may' => 'Май',
'menu_dropfolder' => '',
'mimetype' => 'MIME-тип',
'minutes' => 'минуты',
'misc' => 'Прочее',
@ -797,7 +811,7 @@ URL: [url]',
'only_jpg_user_images' => 'Разрешены только .jpg-изображения',
'order_by_sequence_off' => 'Сортировка последовательности выключена в настройках. Если вы хотите применить этот эффект, вам необходимо его включить',
'original_filename' => 'Исходное имя файла',
'overall_indexing_progress' => '',
'overall_indexing_progress' => 'Общий прогресс индексации',
'owner' => 'Владелец',
'ownership_changed_email' => 'Владелец изменён',
'ownership_changed_email_body' => 'Изменён владелец
@ -833,7 +847,9 @@ URL: [url]',
'password_strength_insuffient' => 'Недостаточная надёжность пароля',
'password_wrong' => 'Неверный пароль',
'pending_approvals' => 'В ожидании утверждения',
'pending_receipt' => '',
'pending_reviews' => 'В ожидании рецензии',
'pending_revision' => '',
'pending_workflows' => 'В ожидании процесса',
'personal_default_keywords' => 'Личный список меток',
'pl_PL' => 'Polish',
@ -846,11 +862,18 @@ URL: [url]',
'preview_plain' => 'Текст',
'previous_state' => 'Предыдущее состояние',
'previous_versions' => 'Предыдущие версии',
'process' => '',
'process_without_user_group' => '',
'pt_BR' => 'Portugese (BR)',
'quota' => 'Квота',
'quota_exceeded' => 'Ваша дисковая квота превышена на [bytes].',
'quota_is_disabled' => 'Поддержка квот в настоящее время отключена в настройках.',
'quota_warning' => 'Ваша дисковая квота превышена на [bytes]. Удалите ненужные документы или их предыдущие версии.',
'receipts_accepted' => '',
'receipts_not_touched' => '',
'receipts_rejected' => '',
'receipts_without_group' => '',
'receipts_without_user' => '',
'receipt_deletion_email_body' => '',
'receipt_deletion_email_subject' => '',
'receipt_log' => 'Лог получения',
@ -882,7 +905,7 @@ URL: [url]',
'removed_file_email_subject' => '[sitename]: удалено вложение к «[document]»',
'removed_recipient' => 'удален из списка получателей',
'removed_reviewer' => 'удалён из списка рецензентов',
'removed_revispr' => 'удалён из списка редакторов',
'removed_revisor' => 'удалён из списка редакторов',
'removed_workflow_email_body' => 'Удалён процесс из версии документа
Документ: [name]
Версия: [version]
@ -921,6 +944,11 @@ URL: [url]',
'reviewers' => 'Рецензирующие',
'reviewer_already_assigned' => 'уже назначен на рецензирование',
'reviewer_already_removed' => 'уже удалён из списка рецензирующих или уже оставил рецензию',
'reviews_accepted' => '',
'reviews_not_touched' => '',
'reviews_rejected' => '',
'reviews_without_group' => '',
'reviews_without_user' => '',
'review_deletion_email' => 'Запрос на рецензию удалён',
'review_deletion_email_body' => 'Запрос на рецензию удалён
Документ: [name]
@ -955,6 +983,12 @@ URL: [url]',
'review_update_failed' => 'Ошибка обновления статуса рецензии',
'revise_document' => 'Ревизировать документ',
'revise_document_on' => 'Следующий ревизия версии документа назначен на [date]',
'revisions_accepted' => '',
'revisions_not_touched' => '',
'revisions_pending' => '',
'revisions_rejected' => '',
'revisions_without_group' => '',
'revisions_without_user' => '',
'revision_date' => 'Дата ревизии',
'revision_log' => 'Лог ревизии',
'revision_request_email_body' => 'Запрос на ревизию
@ -994,6 +1028,7 @@ URL: [url]',
'rm_transmittal' => 'Удалить передачу',
'rm_transmittalitem' => 'Удалить документ',
'rm_user' => 'Удалить пользователя',
'rm_user_from_processes' => '',
'rm_version' => 'Удалить версию',
'rm_workflow' => 'Удалить процесс',
'rm_workflow_action' => 'Удалить действие процесса',
@ -1152,6 +1187,8 @@ URL: [url]',
'settings_enableClipboard_desc' => 'Включить/отключить буфер обмена.',
'settings_enableConverting' => 'Включить преобразование',
'settings_enableConverting_desc' => 'Включить/отключить преобразование файлов.',
'settings_enableDropFolderList' => '',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => 'Включить быструю загрузку',
'settings_enableDropUpload_desc' => 'Включить/отключить область в "Просмотр папки" для загрузки при помощи Drag&Drop.',
'settings_enableDuplicateDocNames' => 'Разрешить документы<br/>с одинаковым названием',
@ -1429,12 +1466,15 @@ URL: [url]',
'splash_rm_role' => '',
'splash_rm_transmittal' => '',
'splash_rm_user' => 'Пользователь удалён',
'splash_rm_user_processes' => '',
'splash_saved_file' => '',
'splash_save_user_data' => '',
'splash_send_download_link' => '',
'splash_settings_saved' => 'Настройки сохранены',
'splash_substituted_user' => 'Пользователь переключён',
'splash_switched_back_user' => 'Переключён на исходного пользователя',
'splash_toogle_group_manager' => 'Изменён менеджер группы',
'splash_transfer_objects' => '',
'state_and_next_state' => 'Статус / следующий статус',
'statistic' => 'Статистика',
'status' => 'Статус',
@ -1503,11 +1543,15 @@ URL: [url]',
'timeline_skip_status_change_1' => 'ожидает подтверждения',
'timeline_skip_status_change_2' => 'утверждён',
'timeline_skip_status_change_3' => 'в процессе',
'timeline_skip_status_change_4' => '',
'timeline_skip_status_change_5' => '',
'timeline_status_change' => 'Версия [version]: [status]',
'to' => 'До',
'toggle_manager' => 'Изменить как менеджера',
'toggle_qrcode' => '',
'to_before_from' => 'Конечная дата не может быть меньше начальной даты',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transition_triggered_email' => 'Изменено состояние процесса',
'transition_triggered_email_body' => 'Изменено состояние процесса
Документ: [name]
@ -1566,10 +1610,12 @@ URL: [url]',
'uploading_zerosize' => 'Отменена загрузка пустого файла.',
'used_discspace' => 'Занятое дисковое пространство',
'user' => 'Пользователь',
'userid_groupid' => '',
'users' => 'Пользователи',
'users_and_groups' => 'Пользователи / группы',
'users_done_work' => 'Пользователи завершившие процесс',
'user_exists' => 'Пользователь существует',
'user_group' => '',
'user_group_management' => 'Пользователи и группы',
'user_image' => 'Изображение',
'user_info' => 'Информация о пользователе',
@ -1603,6 +1649,7 @@ URL: [url]',
'weeks' => 'недели',
'week_view' => 'Неделя',
'workflow' => 'Процесс',
'workflows_involded' => '',
'workflow_actions_management' => 'Управление действиями процессов',
'workflow_action_in_use' => 'Это действие используется в процессах.',
'workflow_action_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 (547), destinqo (19)
// Translators: Admin (551), destinqo (19)
$text = array(
'2_factor_auth' => '',
@ -88,6 +88,14 @@ URL: [url]',
'already_subscribed' => '',
'and' => 'a',
'apply' => 'Použiť',
'approvals_accepted' => '',
'approvals_and_reviews_accepted' => '',
'approvals_and_reviews_not_touched' => '',
'approvals_and_reviews_rejected' => '',
'approvals_not_touched' => '',
'approvals_rejected' => '',
'approvals_without_group' => '',
'approvals_without_user' => '',
'approval_deletion_email' => 'Poziadavka na schvalenie zmazana',
'approval_deletion_email_body' => '',
'approval_deletion_email_subject' => '',
@ -216,14 +224,14 @@ URL: [url]',
'checkout_is_disabled' => '',
'choose_attrdef' => '',
'choose_attrdefgroup' => '',
'choose_category' => '--Vyberte prosím--',
'choose_group' => '--Vyberte skupinu--',
'choose_category' => 'Vyberte prosím',
'choose_group' => 'Vyberte skupinu',
'choose_role' => '',
'choose_target_category' => '',
'choose_target_document' => 'Vyberte dokument',
'choose_target_file' => 'Vyberte súbor',
'choose_target_folder' => 'Vyberte cieľovú zložku',
'choose_user' => '--Vyberte používateľa--',
'choose_user' => 'Vyberte používateľa',
'choose_workflow' => '',
'choose_workflow_action' => '',
'choose_workflow_state' => '',
@ -254,7 +262,9 @@ URL: [url]',
'confirm_rm_transmittal' => '',
'confirm_rm_transmittalitem' => '',
'confirm_rm_user' => 'Skutočne si prajete odstrániť používateľa "[username]"?<br>Buďte opatrní, táto akcia je nezvratná.',
'confirm_rm_user_from_processes' => '',
'confirm_rm_version' => 'Naozaj chcete odstrániť verziu [version] dokumentu "[documentname]"?<br>Buďte opatrní: Túto činnosť nemožno vrátiť späť.',
'confirm_transfer_objects' => '',
'confirm_update_transmittalitem' => '',
'content' => 'Obsah',
'continue' => 'Pokračovať',
@ -303,6 +313,7 @@ URL: [url]',
'documents_user_reception' => '',
'documents_user_rejected' => '',
'documents_user_requiring_attention' => 'Dokumenty, ktoré používateľ vlastní a vyžadujú pozornosť',
'documents_with_notification' => '',
'document_already_checkedout' => '',
'document_already_locked' => 'Tento dokument je už zamknutý',
'document_comment_changed_email' => '',
@ -436,6 +447,7 @@ URL: [url]',
'folder' => 'Zlozka',
'folders' => 'Zložky',
'folders_and_documents_statistic' => 'Prehľad zložiek a dokumentov',
'folders_with_notification' => '',
'folder_comment_changed_email' => '',
'folder_comment_changed_email_body' => '',
'folder_comment_changed_email_subject' => '',
@ -544,6 +556,7 @@ URL: [url]',
'js_no_approval_group' => 'Prosím, vyberte skupinu pre schválenie',
'js_no_approval_status' => 'Prosím, vyberte stav schválenia',
'js_no_comment' => 'Žiadny komentár',
'js_no_currentpwd' => '',
'js_no_email' => 'Napíšte svoju emailovú adresu',
'js_no_file' => 'Prosím, vyberte súbor',
'js_no_keywords' => 'Zadajte nejaké kľúčové slová',
@ -578,7 +591,7 @@ URL: [url]',
'linked_to_this_version' => '',
'link_alt_updatedocument' => '',
'link_to_version' => '',
'list_access_rights' => '',
'list_access_rights' => 'Uveďte všetky prístupové práva',
'list_contains_no_access_docs' => '',
'list_hooks' => '',
'local_file' => 'Lokálny súbor',
@ -608,6 +621,7 @@ URL: [url]',
'march' => 'Marec',
'max_upload_size' => 'Maximálna veľkosť každého súboru',
'may' => 'Máj',
'menu_dropfolder' => '',
'mimetype' => '',
'minutes' => '',
'misc' => 'Rôzne',
@ -721,7 +735,9 @@ URL: [url]',
'password_strength_insuffient' => '',
'password_wrong' => '',
'pending_approvals' => '',
'pending_receipt' => '',
'pending_reviews' => '',
'pending_revision' => '',
'pending_workflows' => '',
'personal_default_keywords' => 'Osobné kľúčové slová',
'pl_PL' => 'Polština',
@ -734,11 +750,18 @@ URL: [url]',
'preview_plain' => '',
'previous_state' => '',
'previous_versions' => 'Predošlé verzie',
'process' => '',
'process_without_user_group' => '',
'pt_BR' => 'Portugalčina',
'quota' => '',
'quota_exceeded' => '',
'quota_is_disabled' => '',
'quota_warning' => '',
'receipts_accepted' => '',
'receipts_not_touched' => '',
'receipts_rejected' => '',
'receipts_without_group' => '',
'receipts_without_user' => '',
'receipt_deletion_email_body' => '',
'receipt_deletion_email_subject' => '',
'receipt_log' => '',
@ -762,7 +785,7 @@ URL: [url]',
'removed_file_email_subject' => '',
'removed_recipient' => '',
'removed_reviewer' => 'bol odstránený zo zoznamu kontrolórov.',
'removed_revispr' => '',
'removed_revisor' => '',
'removed_workflow_email_body' => '',
'removed_workflow_email_subject' => '',
'removeFolderFromDropFolder' => '',
@ -781,6 +804,11 @@ URL: [url]',
'reviewers' => 'Kontrolóri',
'reviewer_already_assigned' => 'je už poverený ako kontrolór',
'reviewer_already_removed' => 'už bol odstránený z procesu kontroly alebo poslal kontrolu',
'reviews_accepted' => '',
'reviews_not_touched' => '',
'reviews_rejected' => '',
'reviews_without_group' => '',
'reviews_without_user' => '',
'review_deletion_email' => 'Poziadavka na recenziu zmazana',
'review_deletion_email_body' => '',
'review_deletion_email_subject' => '',
@ -798,6 +826,12 @@ URL: [url]',
'review_update_failed' => 'Chyba pri aktualizácii stavu kontroly. Aktualizácia zlyhala.',
'revise_document' => '',
'revise_document_on' => '',
'revisions_accepted' => '',
'revisions_not_touched' => '',
'revisions_pending' => '',
'revisions_rejected' => '',
'revisions_without_group' => '',
'revisions_without_user' => '',
'revision_date' => '',
'revision_log' => '',
'revision_request_email_body' => '',
@ -826,6 +860,7 @@ URL: [url]',
'rm_transmittal' => '',
'rm_transmittalitem' => '',
'rm_user' => 'Odstrániť tohto používateľa',
'rm_user_from_processes' => '',
'rm_version' => 'Odstrániť verziu',
'rm_workflow' => '',
'rm_workflow_action' => '',
@ -977,6 +1012,8 @@ URL: [url]',
'settings_enableClipboard_desc' => '',
'settings_enableConverting' => '',
'settings_enableConverting_desc' => '',
'settings_enableDropFolderList' => '',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => 'Zapnúť rýchle nahratie',
'settings_enableDropUpload_desc' => '',
'settings_enableDuplicateDocNames' => '',
@ -1254,12 +1291,15 @@ URL: [url]',
'splash_rm_role' => '',
'splash_rm_transmittal' => '',
'splash_rm_user' => '',
'splash_rm_user_processes' => '',
'splash_saved_file' => '',
'splash_save_user_data' => '',
'splash_send_download_link' => '',
'splash_settings_saved' => '',
'splash_substituted_user' => '',
'splash_switched_back_user' => '',
'splash_toogle_group_manager' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => '',
'statistic' => '',
'status' => 'Stav',
@ -1328,11 +1368,15 @@ URL: [url]',
'timeline_skip_status_change_1' => '',
'timeline_skip_status_change_2' => '',
'timeline_skip_status_change_3' => '',
'timeline_skip_status_change_4' => '',
'timeline_skip_status_change_5' => '',
'timeline_status_change' => 'Verzia [version]: [status]',
'to' => 'Do',
'toggle_manager' => 'Prepnúť stav manager',
'toggle_qrcode' => '',
'to_before_from' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transition_triggered_email' => '',
'transition_triggered_email_body' => '',
'transition_triggered_email_subject' => '',
@ -1382,10 +1426,12 @@ URL: [url]',
'uploading_zerosize' => 'Nahrávate prázdny súbor. Nahrávanie je zrušené.',
'used_discspace' => 'Využitý priestor na disku',
'user' => 'Používateľ',
'userid_groupid' => '',
'users' => 'Používateľ',
'users_and_groups' => '',
'users_done_work' => '',
'user_exists' => 'Používateľ už existuje.',
'user_group' => '',
'user_group_management' => 'Správa užívateľov/skupín',
'user_image' => 'Obrázok',
'user_info' => 'Informácie o používateľovi',
@ -1414,6 +1460,7 @@ URL: [url]',
'weeks' => '',
'week_view' => 'Týždeň',
'workflow' => '',
'workflows_involded' => '',
'workflow_actions_management' => '',
'workflow_action_in_use' => '',
'workflow_action_name' => '',

View File

@ -88,6 +88,14 @@ URL: [url]',
'already_subscribed' => 'Prenumererar redan',
'and' => 'och',
'apply' => 'Använd',
'approvals_accepted' => '',
'approvals_and_reviews_accepted' => '',
'approvals_and_reviews_not_touched' => '',
'approvals_and_reviews_rejected' => '',
'approvals_not_touched' => '',
'approvals_rejected' => '',
'approvals_without_group' => '',
'approvals_without_user' => '',
'approval_deletion_email' => 'Begäran om godkännande har raderats',
'approval_deletion_email_body' => '',
'approval_deletion_email_subject' => '',
@ -265,7 +273,9 @@ URL: [url]',
'confirm_rm_transmittal' => '',
'confirm_rm_transmittalitem' => '',
'confirm_rm_user' => 'Vill du verkligen ta bort användaren "[username]"?<br>OBS! Användaren kan inte återskapas!',
'confirm_rm_user_from_processes' => '',
'confirm_rm_version' => 'Vill du verkligen ta bort versionen [version] av dokumentet "[documentname]"?<br>OBS! Versionen kan inte återskapas!',
'confirm_transfer_objects' => '',
'confirm_update_transmittalitem' => '',
'content' => 'Innehåll',
'continue' => 'Fortsätt',
@ -314,6 +324,7 @@ URL: [url]',
'documents_user_reception' => '',
'documents_user_rejected' => '',
'documents_user_requiring_attention' => 'Dokument som du behöver granska/godkänna',
'documents_with_notification' => '',
'document_already_checkedout' => '',
'document_already_locked' => 'Detta dokument är redan låst',
'document_comment_changed_email' => 'Kommentar ändrat',
@ -481,6 +492,7 @@ URL: [url]',
'folder' => 'Katalog',
'folders' => 'Kataloger',
'folders_and_documents_statistic' => 'Innehållsöversikt',
'folders_with_notification' => '',
'folder_comment_changed_email' => 'Kommentar har ändrats',
'folder_comment_changed_email_body' => 'Kommentar har ändrats
Katalog: [name]
@ -609,6 +621,7 @@ URL: [url]',
'js_no_approval_group' => 'Välj en grupp som ska godkänna',
'js_no_approval_status' => 'Välj godkännandestatus',
'js_no_comment' => 'Det finns inga kommentarer',
'js_no_currentpwd' => '',
'js_no_email' => 'Ange din e-postadress',
'js_no_file' => 'Välj en fil',
'js_no_keywords' => 'Skriv några nyckelord',
@ -673,6 +686,7 @@ URL: [url]',
'march' => 'mars',
'max_upload_size' => 'Maximal storlek för uppladdning',
'may' => 'maj',
'menu_dropfolder' => '',
'mimetype' => 'Mimetyp',
'minutes' => 'minuter',
'misc' => 'Diverse',
@ -816,7 +830,9 @@ URL: [url]',
'password_strength_insuffient' => 'För låg kvalitet på lösenordet',
'password_wrong' => 'Fel lösenord',
'pending_approvals' => '',
'pending_receipt' => '',
'pending_reviews' => '',
'pending_revision' => '',
'pending_workflows' => '',
'personal_default_keywords' => 'Personlig nyckelordslista',
'pl_PL' => 'polska',
@ -829,11 +845,18 @@ URL: [url]',
'preview_plain' => '',
'previous_state' => 'Föregående status',
'previous_versions' => 'Tidigare versioner',
'process' => '',
'process_without_user_group' => '',
'pt_BR' => 'portugisiska (BR)',
'quota' => 'Kvot',
'quota_exceeded' => 'Din minneskvot har överskridits med [bytes].',
'quota_is_disabled' => 'Kvot stöd är för närvarande inaktiverad i inställningarna. Ställa in en användarkvot kommer att ha någon effekt förrän den är aktiverad igen.',
'quota_warning' => 'Din maximala minneskvot har överskridits med [bytes]. Ta bort dokument eller tidigare versioner.',
'receipts_accepted' => '',
'receipts_not_touched' => '',
'receipts_rejected' => '',
'receipts_without_group' => '',
'receipts_without_user' => '',
'receipt_deletion_email_body' => '',
'receipt_deletion_email_subject' => '',
'receipt_log' => '',
@ -860,7 +883,7 @@ URL: [url]',
'removed_file_email_subject' => '[sitename]: [document] - Borttagen bilaga',
'removed_recipient' => '',
'removed_reviewer' => 'har tagits bort från listan med personer som ska granska dokumentet.',
'removed_revispr' => '',
'removed_revisor' => '',
'removed_workflow_email_body' => 'Arbetsflöde borttagen från dokument version
Dokument: [name]
Version: [version]
@ -892,6 +915,11 @@ URL: [url]',
'reviewers' => 'Granska',
'reviewer_already_assigned' => 'ska redan granska dokumentet',
'reviewer_already_removed' => 'har redan tagits bort från granskningen eller har redan skickat en granskning',
'reviews_accepted' => '',
'reviews_not_touched' => '',
'reviews_rejected' => '',
'reviews_without_group' => '',
'reviews_without_user' => '',
'review_deletion_email' => 'Förfrågan om granskning borttagen',
'review_deletion_email_body' => '',
'review_deletion_email_subject' => '',
@ -916,6 +944,12 @@ URL: [url]',
'review_update_failed' => 'Fel vid uppdatering av granskningsstatus. Kunde inte uppdatera.',
'revise_document' => '',
'revise_document_on' => '',
'revisions_accepted' => '',
'revisions_not_touched' => '',
'revisions_pending' => '',
'revisions_rejected' => '',
'revisions_without_group' => '',
'revisions_without_user' => '',
'revision_date' => '',
'revision_log' => '',
'revision_request_email_body' => '',
@ -950,6 +984,7 @@ URL: [url]',
'rm_transmittal' => '',
'rm_transmittalitem' => '',
'rm_user' => 'Ta bort denna användare',
'rm_user_from_processes' => '',
'rm_version' => 'Ta bort version',
'rm_workflow' => 'Ta bort arbetsflöde',
'rm_workflow_action' => 'Ta bort åtgärd från arbetsflödet',
@ -1108,6 +1143,8 @@ URL: [url]',
'settings_enableClipboard_desc' => 'Aktivera/Inaktivera urklipp funktionen.',
'settings_enableConverting' => 'Aktivera filkonvertering',
'settings_enableConverting_desc' => 'Aktivera/Inaktivera konvertering av filer',
'settings_enableDropFolderList' => '',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => 'Aktivera snabb uppladdning',
'settings_enableDropUpload_desc' => 'Aktivera / avaktivera droppområdet på "Visa mapp" sidan för att ladda upp filer genom att dra och släppa.',
'settings_enableDuplicateDocNames' => 'Tillåter samma dokumentnamn',
@ -1385,12 +1422,15 @@ URL: [url]',
'splash_rm_role' => '',
'splash_rm_transmittal' => '',
'splash_rm_user' => 'Användare har tagits bort',
'splash_rm_user_processes' => '',
'splash_saved_file' => '',
'splash_save_user_data' => '',
'splash_send_download_link' => '',
'splash_settings_saved' => 'Inställningar sparat',
'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_objects' => '',
'state_and_next_state' => 'Status/Nästa status',
'statistic' => 'Statistik',
'status' => 'Status',
@ -1459,11 +1499,15 @@ URL: [url]',
'timeline_skip_status_change_1' => '',
'timeline_skip_status_change_2' => '',
'timeline_skip_status_change_3' => '',
'timeline_skip_status_change_4' => '',
'timeline_skip_status_change_5' => '',
'timeline_status_change' => 'Version [version]: [status]',
'to' => 'till',
'toggle_manager' => 'Byt manager',
'toggle_qrcode' => '',
'to_before_from' => 'Slutdatum får inte vara innan startdatum',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transition_triggered_email' => 'Arbetsflödesövergång utlöstes',
'transition_triggered_email_body' => 'Arbetsflödesövergång utlöstes
Dokument: [name]
@ -1522,10 +1566,12 @@ URL: [url]',
'uploading_zerosize' => 'Uppladdning av tom fil. Uppladdningen avbryts.',
'used_discspace' => 'Använt minne',
'user' => 'Användare',
'userid_groupid' => '',
'users' => 'Användare',
'users_and_groups' => 'Användare/Grupper',
'users_done_work' => 'Användarens utförda jobb',
'user_exists' => 'Användaren finns redan.',
'user_group' => '',
'user_group_management' => 'Hantering av användare/grupper',
'user_image' => 'Bild',
'user_info' => 'Användarinformation',
@ -1559,6 +1605,7 @@ URL: [url]',
'weeks' => 'veckor',
'week_view' => 'veckovy',
'workflow' => 'Arbetsflöde',
'workflows_involded' => '',
'workflow_actions_management' => 'Åtgärder för arbetsflöde',
'workflow_action_in_use' => 'Denna åtgärd används i ett arbetsflöde.',
'workflow_action_name' => 'Namn',

View File

@ -87,6 +87,14 @@ URL: [url]',
'already_subscribed' => 'Zaten kayıtlı',
'and' => 've',
'apply' => 'Uygula',
'approvals_accepted' => '',
'approvals_and_reviews_accepted' => '',
'approvals_and_reviews_not_touched' => '',
'approvals_and_reviews_rejected' => '',
'approvals_not_touched' => '',
'approvals_rejected' => '',
'approvals_without_group' => '',
'approvals_without_user' => '',
'approval_deletion_email' => 'Onay talebi silindi',
'approval_deletion_email_body' => '',
'approval_deletion_email_subject' => '',
@ -271,7 +279,9 @@ URL: [url]',
'confirm_rm_transmittal' => '',
'confirm_rm_transmittalitem' => '',
'confirm_rm_user' => '"[username]" kullanıcısını silmeyi onaylıyor musunuz?<br>Dikkatli olun: Bu eylemin geri dönüşü yoktur.',
'confirm_rm_user_from_processes' => '',
'confirm_rm_version' => '"[documentname]" dokümanının [version] versiyonunu silmek istiyor musunuz?<br>Dikkatli olun: Bu eylemin geri dönüşü yoktur.',
'confirm_transfer_objects' => '',
'confirm_update_transmittalitem' => '',
'content' => 'İçerik',
'continue' => 'Devam',
@ -320,6 +330,7 @@ URL: [url]',
'documents_user_reception' => '',
'documents_user_rejected' => '',
'documents_user_requiring_attention' => 'Dikkatinizi gerektiren size ait dokümanlar',
'documents_with_notification' => '',
'document_already_checkedout' => '',
'document_already_locked' => 'Bu doküman zaten kilitli',
'document_comment_changed_email' => 'Açıklama değişti',
@ -487,6 +498,7 @@ URL: [url]',
'folder' => 'Klasör',
'folders' => 'Klasör',
'folders_and_documents_statistic' => 'İçeriğe Bakış',
'folders_with_notification' => '',
'folder_comment_changed_email' => 'Açıklama değişti',
'folder_comment_changed_email_body' => 'ıklama değişti
Klasör: [name]
@ -615,6 +627,7 @@ URL: [url]',
'js_no_approval_group' => 'Lütfen bir onay grubu seçiniz',
'js_no_approval_status' => 'Lütfen onay durumu seçiniz',
'js_no_comment' => 'Açıklama yok',
'js_no_currentpwd' => '',
'js_no_email' => 'E-posta adresinizi yazınız',
'js_no_file' => 'Lütfen dosya seçiniz',
'js_no_keywords' => 'Anahtar kelime belirleyiniz',
@ -679,6 +692,7 @@ URL: [url]',
'march' => 'Mart',
'max_upload_size' => 'Maksimum yükleme boyutu',
'may' => 'Mayıs',
'menu_dropfolder' => '',
'mimetype' => 'Mime tipi',
'minutes' => 'dakika',
'misc' => 'Diğer',
@ -832,7 +846,9 @@ Giriş yaparken halen sorun yaşıyorsanız lütfen sistem yöneticinizle görü
'password_strength_insuffient' => 'Parola güvenlik düzeyi yetersiz',
'password_wrong' => 'Yanlış parola',
'pending_approvals' => '',
'pending_receipt' => '',
'pending_reviews' => '',
'pending_revision' => '',
'pending_workflows' => '',
'personal_default_keywords' => 'Kişisel anahtar kelimeler',
'pl_PL' => 'Polonyaca',
@ -845,11 +861,18 @@ Giriş yaparken halen sorun yaşıyorsanız lütfen sistem yöneticinizle görü
'preview_plain' => '',
'previous_state' => 'Önceki durum',
'previous_versions' => 'Önceki versiyonlar',
'process' => '',
'process_without_user_group' => '',
'pt_BR' => 'Portekizce',
'quota' => 'Kota',
'quota_exceeded' => 'Size ayrılan disk kotası [bytes] aşıldı.',
'quota_is_disabled' => 'Kota desteği ayarlardan kapatılmış durumda. Açılana kadar kullanıcıya kota tanımlamanın bir etkisi olmaz.',
'quota_warning' => 'Size ayrılan disk kotası [bytes] aşıldı. Lütfen gereksiz olduğunu düşündüğünüz dokümanları veya eski versiyonları silin.',
'receipts_accepted' => '',
'receipts_not_touched' => '',
'receipts_rejected' => '',
'receipts_without_group' => '',
'receipts_without_user' => '',
'receipt_deletion_email_body' => '',
'receipt_deletion_email_subject' => '',
'receipt_log' => '',
@ -876,7 +899,7 @@ URL: [url]',
'removed_file_email_subject' => '[sitename]: [document] - Ek silindi',
'removed_recipient' => '',
'removed_reviewer' => 'kontrol edenler listesinden çıkarıldı',
'removed_revispr' => '',
'removed_revisor' => '',
'removed_workflow_email_body' => 'Doküman versiyonundan akışı silindi
Doküman: [name]
Versiyon: [version]
@ -908,6 +931,11 @@ URL: [url]',
'reviewers' => 'Kontrol edenler',
'reviewer_already_assigned' => 'zaten kontrol eden olarak tanımlı',
'reviewer_already_removed' => 'kontrol sürecinden silindi veya zaten kontrolü gönderdi',
'reviews_accepted' => '',
'reviews_not_touched' => '',
'reviews_rejected' => '',
'reviews_without_group' => '',
'reviews_without_user' => '',
'review_deletion_email' => 'Kontrol talebi silindi',
'review_deletion_email_body' => '',
'review_deletion_email_subject' => '',
@ -932,6 +960,12 @@ URL: [url]',
'review_update_failed' => 'Kontrol güncelleme durumu hatalı. Güncelleme başarısız.',
'revise_document' => '',
'revise_document_on' => '',
'revisions_accepted' => '',
'revisions_not_touched' => '',
'revisions_pending' => '',
'revisions_rejected' => '',
'revisions_without_group' => '',
'revisions_without_user' => '',
'revision_date' => '',
'revision_log' => '',
'revision_request_email_body' => '',
@ -966,6 +1000,7 @@ URL: [url]',
'rm_transmittal' => '',
'rm_transmittalitem' => '',
'rm_user' => 'Bu kullanıcıyı sil',
'rm_user_from_processes' => '',
'rm_version' => 'Versiyonu sil',
'rm_workflow' => 'İş akışını sil',
'rm_workflow_action' => 'İş Akış Eylemini Sil',
@ -1124,6 +1159,8 @@ URL: [url]',
'settings_enableClipboard_desc' => '\'Klasör Görüntüle\' sayfasında panoyu etkinleştir/devredışı bırak',
'settings_enableConverting' => 'Dönüştürmeyi etkinleştir',
'settings_enableConverting_desc' => 'Dosyaları dönüştürmeyi etkinleştir/devredışı bırak',
'settings_enableDropFolderList' => '',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => 'Hızlı Yüklemeyi Etkinleştir',
'settings_enableDropUpload_desc' => '\'Klasör Görüntüle\' alanında dosyaları Sürükle&Bırak yöntemiyle yüklemek için sürükleme alanını etkinleştir/devredışı bırak',
'settings_enableDuplicateDocNames' => 'Mükerrer doküman isimlerine izin ver',
@ -1401,12 +1438,15 @@ URL: [url]',
'splash_rm_role' => '',
'splash_rm_transmittal' => '',
'splash_rm_user' => 'Kullanıcı silindi',
'splash_rm_user_processes' => '',
'splash_saved_file' => '',
'splash_save_user_data' => '',
'splash_send_download_link' => '',
'splash_settings_saved' => 'Ayarlar kaydedildi',
'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_objects' => '',
'state_and_next_state' => 'Durum/Sonraki durum',
'statistic' => 'İstatistik',
'status' => 'Durum',
@ -1475,11 +1515,15 @@ URL: [url]',
'timeline_skip_status_change_1' => '',
'timeline_skip_status_change_2' => 'serbest olanlar',
'timeline_skip_status_change_3' => 'iş akışı içinde',
'timeline_skip_status_change_4' => '',
'timeline_skip_status_change_5' => '',
'timeline_status_change' => 'Versiyon [version]: [status]',
'to' => 'Kime',
'toggle_manager' => 'Değişim yönetimi',
'toggle_qrcode' => '',
'to_before_from' => 'Bitiş tarihi başlama tarihinden önce olamaz',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transition_triggered_email' => 'İş Akış Geçişi Tetiklendi',
'transition_triggered_email_body' => 'İş Akış Geçişi Tetiklendi
Doküman: [name]
@ -1538,10 +1582,12 @@ URL: [url]',
'uploading_zerosize' => 'Boş bir dosya yükleniyor. Yükleme iptal edildi.',
'used_discspace' => 'Kullanılan disk alanı',
'user' => 'Kullanıcı',
'userid_groupid' => '',
'users' => 'Kullanıcı',
'users_and_groups' => 'Kullanıcılar/Gruplar',
'users_done_work' => 'Kullanıcılar işi yaptı',
'user_exists' => 'Kullanıcı zaten mevcut.',
'user_group' => '',
'user_group_management' => 'Kullanıcı/Grup Yönetimi',
'user_image' => 'İmaj',
'user_info' => 'Kullanıcı Bilgisi',
@ -1575,6 +1621,7 @@ URL: [url]',
'weeks' => 'hafta',
'week_view' => 'Hafta görünümü',
'workflow' => 'İş akışı',
'workflows_involded' => '',
'workflow_actions_management' => 'İş akış eylem yönetimi',
'workflow_action_in_use' => 'Bu eylem iş akışları tarafından kullanımda.',
'workflow_action_name' => 'İsim',

View File

@ -88,6 +88,14 @@ URL: [url]',
'already_subscribed' => 'Вже підписаний',
'and' => 'і',
'apply' => 'Застосувати',
'approvals_accepted' => '',
'approvals_and_reviews_accepted' => '',
'approvals_and_reviews_not_touched' => '',
'approvals_and_reviews_rejected' => '',
'approvals_not_touched' => '',
'approvals_rejected' => '',
'approvals_without_group' => '',
'approvals_without_user' => '',
'approval_deletion_email' => 'Запит на підтвердження скасовано',
'approval_deletion_email_body' => 'Запит на підтвердження скасовано
Назва: [name]
@ -277,7 +285,9 @@ URL: [url]',
'confirm_rm_transmittal' => '',
'confirm_rm_transmittalitem' => 'Підтвердити видалення',
'confirm_rm_user' => 'Видалити користувача «[username]»?<br>Дія <b>незворотня</b>',
'confirm_rm_user_from_processes' => '',
'confirm_rm_version' => 'Видалити версію [version] документа «[documentname]»?<br>Дія <b>незворотня</b>',
'confirm_transfer_objects' => '',
'confirm_update_transmittalitem' => 'Підтвердити оновлення',
'content' => 'Вміст',
'continue' => 'Продовжити',
@ -326,6 +336,7 @@ URL: [url]',
'documents_user_reception' => '',
'documents_user_rejected' => 'Документи, які відхилили',
'documents_user_requiring_attention' => 'Ваші документи, які потребують уваги',
'documents_with_notification' => '',
'document_already_checkedout' => 'Цей документ вже на опрацюванні',
'document_already_locked' => 'Цей документ вже заблокований',
'document_comment_changed_email' => 'Змінено коментар',
@ -493,6 +504,7 @@ URL: [url]',
'folder' => 'Каталог',
'folders' => 'кат.',
'folders_and_documents_statistic' => 'Огляд вмісту',
'folders_with_notification' => '',
'folder_comment_changed_email' => 'Коментар змінено',
'folder_comment_changed_email_body' => 'Змінено коментар каталогу
Каталог: [name]
@ -621,6 +633,7 @@ URL: [url]',
'js_no_approval_group' => 'Оберіть групу затвердження',
'js_no_approval_status' => 'Оберіть статус затвердження',
'js_no_comment' => 'Немає коментаря',
'js_no_currentpwd' => '',
'js_no_email' => 'Введіть свій e-mail',
'js_no_file' => 'Оберіть файл',
'js_no_keywords' => 'Вкажіть ключові слова',
@ -685,6 +698,7 @@ URL: [url]',
'march' => 'Березень',
'max_upload_size' => 'Обмеження розміру файлу',
'may' => 'Травень',
'menu_dropfolder' => '',
'mimetype' => 'MIME-тип',
'minutes' => 'хвилини',
'misc' => 'Інше',
@ -833,7 +847,9 @@ URL: [url]',
'password_strength_insuffient' => 'Недостатня надійність пароля',
'password_wrong' => 'Невірний пароль',
'pending_approvals' => 'Очікує затвердження',
'pending_receipt' => '',
'pending_reviews' => 'Очікує рецензії',
'pending_revision' => '',
'pending_workflows' => 'Очікує процес',
'personal_default_keywords' => 'Особистий список ключових слів',
'pl_PL' => 'Polish',
@ -846,11 +862,18 @@ URL: [url]',
'preview_plain' => 'Текст',
'previous_state' => 'Попередній стан',
'previous_versions' => 'Попередні версії',
'process' => '',
'process_without_user_group' => '',
'pt_BR' => 'Portugese (BR)',
'quota' => 'Квота',
'quota_exceeded' => 'Ваша дискова квота перевищена на [bytes].',
'quota_is_disabled' => 'Квотування відключено',
'quota_warning' => 'Ваша дискова квота перевищена на [bytes]. Видаліть непотрібні документи або їх попередні версії.',
'receipts_accepted' => '',
'receipts_not_touched' => '',
'receipts_rejected' => '',
'receipts_without_group' => '',
'receipts_without_user' => '',
'receipt_deletion_email_body' => '',
'receipt_deletion_email_subject' => '',
'receipt_log' => 'Лог отримання',
@ -882,7 +905,7 @@ URL: [url]',
'removed_file_email_subject' => '[sitename]: видалено додаток до «[document]»',
'removed_recipient' => 'видалено отримувача',
'removed_reviewer' => 'видалено зі списку рецензентів',
'removed_revispr' => 'видалено зі списку редакторів',
'removed_revisor' => 'видалено зі списку редакторів',
'removed_workflow_email_body' => 'Видалено процес з версії документа
Документ: [name]
Версія: [version]
@ -914,6 +937,11 @@ URL: [url]',
'reviewers' => 'Рецензенти',
'reviewer_already_assigned' => 'вже призначений для рецензування',
'reviewer_already_removed' => 'вже видалено зі списку рецензентів або вже лишив рецензію',
'reviews_accepted' => '',
'reviews_not_touched' => '',
'reviews_rejected' => '',
'reviews_without_group' => '',
'reviews_without_user' => '',
'review_deletion_email' => 'Запит на редагування видалено',
'review_deletion_email_body' => 'Запит на рецензування видалено
Документ: [name]
@ -948,6 +976,12 @@ URL: [url]',
'review_update_failed' => 'Помилка оновлення статусу рецензії',
'revise_document' => 'Ревізувати документ',
'revise_document_on' => 'Наступна ревізія документу [date]',
'revisions_accepted' => '',
'revisions_not_touched' => '',
'revisions_pending' => '',
'revisions_rejected' => '',
'revisions_without_group' => '',
'revisions_without_user' => '',
'revision_date' => 'Дата ревізії',
'revision_log' => 'Лог ревізії',
'revision_request_email_body' => 'Запит на ревізію
@ -987,6 +1021,7 @@ URL: [url]',
'rm_transmittal' => 'Видалити передачу',
'rm_transmittalitem' => 'Видалити елемент передачі',
'rm_user' => 'Видалити користувача',
'rm_user_from_processes' => '',
'rm_version' => 'Видалити версію',
'rm_workflow' => 'Видалити процес',
'rm_workflow_action' => 'Видалити дію процесу',
@ -1145,6 +1180,8 @@ URL: [url]',
'settings_enableClipboard_desc' => 'Увімкнути/вимкнути буфер обміну.',
'settings_enableConverting' => 'Увімкнути перетворення',
'settings_enableConverting_desc' => 'Увімкнути/вимкнути перетворення файлів.',
'settings_enableDropFolderList' => '',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => 'Увімкнути швидке завантаження',
'settings_enableDropUpload_desc' => 'Увімкнути/вимкнути область в "Перегляді каталогу" для завантаження за допомогою Drag&Drop.',
'settings_enableDuplicateDocNames' => 'Дозволити документи<br/>з однаковою назвою',
@ -1422,12 +1459,15 @@ URL: [url]',
'splash_rm_role' => '',
'splash_rm_transmittal' => '',
'splash_rm_user' => 'Користувача видалено',
'splash_rm_user_processes' => '',
'splash_saved_file' => '',
'splash_save_user_data' => '',
'splash_send_download_link' => '',
'splash_settings_saved' => 'Налаштування збережено',
'splash_substituted_user' => 'Користувача переключено',
'splash_switched_back_user' => 'Переключено на початкового користувача',
'splash_toogle_group_manager' => 'Змінено менеджера групи',
'splash_transfer_objects' => '',
'state_and_next_state' => 'Статус / наступний статус',
'statistic' => 'Статистика',
'status' => 'Статус',
@ -1496,11 +1536,15 @@ URL: [url]',
'timeline_skip_status_change_1' => 'очікую підтвердження',
'timeline_skip_status_change_2' => 'затверджений',
'timeline_skip_status_change_3' => 'у процесі',
'timeline_skip_status_change_4' => '',
'timeline_skip_status_change_5' => '',
'timeline_status_change' => 'Версія [version]: [status]',
'to' => 'До',
'toggle_manager' => 'Змінити ознаку менеджера',
'toggle_qrcode' => '',
'to_before_from' => 'Кінцева дата не може бути меншою початкової дати',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transition_triggered_email' => 'Змінено стан процесу',
'transition_triggered_email_body' => 'Змінено стан процесу
Документ: [name]
@ -1559,10 +1603,12 @@ URL: [url]',
'uploading_zerosize' => 'Відміна завантаження порожнього файлу.',
'used_discspace' => 'Зайнятий дисковий простір',
'user' => 'Користувач',
'userid_groupid' => '',
'users' => 'Користувачі',
'users_and_groups' => 'Користувачі / групи',
'users_done_work' => 'Користувачі, які завершили процес',
'user_exists' => 'Користувач існує',
'user_group' => '',
'user_group_management' => 'Користувачі і групи',
'user_image' => 'Зображення',
'user_info' => 'Інформація про користувача',
@ -1596,6 +1642,7 @@ URL: [url]',
'weeks' => 'тижні',
'week_view' => 'Тиждень',
'workflow' => 'Процес',
'workflows_involded' => '',
'workflow_actions_management' => 'Керування діями процесів',
'workflow_action_in_use' => 'Ця дія використовується в процесах.',
'workflow_action_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 (683), fengjohn (5)
// Translators: Admin (732), fengjohn (5)
$text = array(
'2_factor_auth' => '',
@ -88,6 +88,14 @@ URL: [url]',
'already_subscribed' => '已经订阅',
'and' => 'and',
'apply' => '应用',
'approvals_accepted' => '',
'approvals_and_reviews_accepted' => '',
'approvals_and_reviews_not_touched' => '',
'approvals_and_reviews_rejected' => '',
'approvals_not_touched' => '',
'approvals_rejected' => '',
'approvals_without_group' => '',
'approvals_without_user' => '',
'approval_deletion_email' => '审核请求已被删除',
'approval_deletion_email_body' => '',
'approval_deletion_email_subject' => '',
@ -233,7 +241,7 @@ URL: [url]',
'clear_password' => '',
'clipboard' => '剪切板',
'close' => '关闭',
'command' => '',
'command' => '命令',
'comment' => '说明',
'comment_changed_email' => '',
'comment_for_current_version' => '版本说明',
@ -254,7 +262,9 @@ URL: [url]',
'confirm_rm_transmittal' => '',
'confirm_rm_transmittalitem' => '',
'confirm_rm_user' => '您确定要删除"[username]"用户?<br>请注意:此动作执行后不能撤销.',
'confirm_rm_user_from_processes' => '',
'confirm_rm_version' => '您确定要删除"[documentname]文档的[version]版本文件?<br>请注意:此动作执行后不能撤销.',
'confirm_transfer_objects' => '',
'confirm_update_transmittalitem' => '',
'content' => '内容',
'continue' => '继续',
@ -305,6 +315,7 @@ URL: [url]',
'documents_user_reception' => '',
'documents_user_rejected' => '',
'documents_user_requiring_attention' => '需您关注的文档',
'documents_with_notification' => '',
'document_already_checkedout' => '',
'document_already_locked' => '该文档已被锁定',
'document_comment_changed_email' => '',
@ -407,18 +418,18 @@ URL: [url]',
'error_toogle_permission' => '',
'es_ES' => '西班牙语',
'event_details' => '错误详情',
'exclude_items' => '',
'exclude_items' => '排除项目',
'expired' => '过期',
'expired_at_date' => '',
'expires' => '有效限期',
'expire_by_date' => '',
'expire_by_date' => '指定过期时间',
'expire_in_1d' => '',
'expire_in_1h' => '',
'expire_in_1m' => '',
'expire_in_1w' => '',
'expire_in_1y' => '',
'expire_in_1m' => '1月后过期',
'expire_in_1w' => '1周后过期',
'expire_in_1y' => '1年后过期',
'expire_in_2h' => '',
'expire_in_2y' => '',
'expire_in_2y' => '2年后过期',
'expire_today' => '',
'expire_tomorrow' => '',
'expiry_changed_email' => '到期日子已改变',
@ -438,6 +449,7 @@ URL: [url]',
'folder' => '文件夹',
'folders' => '文件夹',
'folders_and_documents_statistic' => '内容概要',
'folders_with_notification' => '',
'folder_comment_changed_email' => '',
'folder_comment_changed_email_body' => '',
'folder_comment_changed_email_subject' => '',
@ -546,6 +558,7 @@ URL: [url]',
'js_no_approval_group' => '请选择审核组',
'js_no_approval_status' => '请选择审核状态',
'js_no_comment' => '没有添加说明',
'js_no_currentpwd' => '',
'js_no_email' => '输入您的e-mail',
'js_no_file' => '请选择一个文件',
'js_no_keywords' => '指定关键字',
@ -610,6 +623,7 @@ URL: [url]',
'march' => '三 月',
'max_upload_size' => '最大上传文件大小',
'may' => '五 月',
'menu_dropfolder' => '',
'mimetype' => 'MIME类型',
'minutes' => '',
'misc' => '其他',
@ -699,7 +713,7 @@ URL: [url]',
'only_jpg_user_images' => '只用jpg格式的图片才可以作为用户身份图片',
'order_by_sequence_off' => '',
'original_filename' => '原始文件名',
'overall_indexing_progress' => '',
'overall_indexing_progress' => '所有索引进程',
'owner' => '所有者',
'ownership_changed_email' => '所有者已变更',
'ownership_changed_email_body' => '',
@ -723,7 +737,9 @@ URL: [url]',
'password_strength_insuffient' => '密码强度不够',
'password_wrong' => '',
'pending_approvals' => '',
'pending_receipt' => '',
'pending_reviews' => '',
'pending_revision' => '',
'pending_workflows' => '',
'personal_default_keywords' => '用户关键字',
'pl_PL' => '波兰语',
@ -736,11 +752,18 @@ URL: [url]',
'preview_plain' => '',
'previous_state' => '',
'previous_versions' => '先前版本',
'process' => '',
'process_without_user_group' => '',
'pt_BR' => '葡萄牙语',
'quota' => '配额',
'quota_exceeded' => '',
'quota_is_disabled' => '配额的支持',
'quota_warning' => '',
'receipts_accepted' => '',
'receipts_not_touched' => '',
'receipts_rejected' => '',
'receipts_without_group' => '',
'receipts_without_user' => '',
'receipt_deletion_email_body' => '',
'receipt_deletion_email_subject' => '',
'receipt_log' => '',
@ -764,10 +787,10 @@ URL: [url]',
'removed_file_email_subject' => '',
'removed_recipient' => '',
'removed_reviewer' => '已经从校对人名单中删除',
'removed_revispr' => '',
'removed_revisor' => '',
'removed_workflow_email_body' => '',
'removed_workflow_email_subject' => '',
'removeFolderFromDropFolder' => '',
'removeFolderFromDropFolder' => '导入后删除文件夹',
'remove_marked_files' => '删除选中的文件',
'repaired' => '',
'repairing_objects' => '',
@ -783,6 +806,11 @@ URL: [url]',
'reviewers' => '校对人',
'reviewer_already_assigned' => '已经被指派为校对人',
'reviewer_already_removed' => '已经从校对队列中删除或者已经提交校对',
'reviews_accepted' => '',
'reviews_not_touched' => '',
'reviews_rejected' => '',
'reviews_without_group' => '',
'reviews_without_user' => '',
'review_deletion_email' => '校对请求被删除',
'review_deletion_email_body' => '',
'review_deletion_email_subject' => '',
@ -800,6 +828,12 @@ URL: [url]',
'review_update_failed' => '错误 更新校对状态.更新失败',
'revise_document' => '',
'revise_document_on' => '',
'revisions_accepted' => '',
'revisions_not_touched' => '',
'revisions_pending' => '',
'revisions_rejected' => '',
'revisions_without_group' => '',
'revisions_without_user' => '',
'revision_date' => '',
'revision_log' => '',
'revision_request_email_body' => '',
@ -828,6 +862,7 @@ URL: [url]',
'rm_transmittal' => '',
'rm_transmittalitem' => '',
'rm_user' => '删除该用户',
'rm_user_from_processes' => '',
'rm_version' => '删除该版本',
'rm_workflow' => '',
'rm_workflow_action' => '',
@ -888,7 +923,7 @@ URL: [url]',
'select_users' => '点击选择用户',
'select_workflow' => '',
'send_email' => '',
'send_test_mail' => '',
'send_test_mail' => '发送测试邮件',
'september' => '九 月',
'sequence' => '次序',
'seq_after' => '在"[prevname]"之后',
@ -899,7 +934,7 @@ URL: [url]',
'settings' => '设置',
'settings_activate_module' => '',
'settings_activate_php_extension' => '',
'settings_adminIP' => '',
'settings_adminIP' => '管理员IP',
'settings_adminIP_desc' => '',
'settings_Advanced' => '高级设置',
'settings_advancedAcl' => '',
@ -914,7 +949,7 @@ URL: [url]',
'settings_backupDir_desc' => '',
'settings_cacheDir' => '',
'settings_cacheDir_desc' => '',
'settings_Calendar' => '',
'settings_Calendar' => '日历设置',
'settings_calendarDefaultView' => '日历默认试图',
'settings_calendarDefaultView_desc' => '日历默认试图',
'settings_cannot_disable' => '',
@ -940,7 +975,7 @@ URL: [url]',
'settings_Database' => '数据库设置',
'settings_dbDatabase' => '数据库名称',
'settings_dbDatabase_desc' => '设置连接的数据库',
'settings_dbDriver' => '',
'settings_dbDriver' => '数据库类型',
'settings_dbDriver_desc' => '',
'settings_dbHostname' => '数据库地址',
'settings_dbHostname_desc' => '设置数据库的连接地址',
@ -953,8 +988,8 @@ URL: [url]',
'settings_defaultAccessDocs_desc' => '',
'settings_defaultSearchMethod' => '',
'settings_defaultSearchMethod_desc' => '',
'settings_defaultSearchMethod_valdatabase' => '',
'settings_defaultSearchMethod_valfulltext' => '',
'settings_defaultSearchMethod_valdatabase' => '数据库',
'settings_defaultSearchMethod_valfulltext' => '全文',
'settings_delete_install_folder' => '',
'settings_disableSelfEdit' => '',
'settings_disableSelfEdit_desc' => '',
@ -973,12 +1008,14 @@ URL: [url]',
'settings_enableAdminReceipt_desc' => '',
'settings_enableAdminRevApp' => '',
'settings_enableAdminRevApp_desc' => '',
'settings_enableCalendar' => '',
'settings_enableCalendar' => '开启日历',
'settings_enableCalendar_desc' => '',
'settings_enableClipboard' => '允许剪切板',
'settings_enableClipboard_desc' => '',
'settings_enableConverting' => '打开转换',
'settings_enableConverting_desc' => '打开/关闭文件转换',
'settings_enableDropFolderList' => '',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => '允许快速上传',
'settings_enableDropUpload_desc' => '',
'settings_enableDuplicateDocNames' => '允许重复的文件名',
@ -993,11 +1030,11 @@ URL: [url]',
'settings_enableGuestAutoLogin_desc' => '',
'settings_enableGuestLogin' => '',
'settings_enableGuestLogin_desc' => '',
'settings_enableHelp' => '',
'settings_enableHelp' => '开启帮助',
'settings_enableHelp_desc' => '',
'settings_enableLanguageSelector' => '',
'settings_enableLanguageSelector_desc' => '',
'settings_enableLargeFileUpload' => '',
'settings_enableLargeFileUpload' => '开启大文件上传',
'settings_enableLargeFileUpload_desc' => '',
'settings_enableMenuTasks' => '',
'settings_enableMenuTasks_desc' => '',
@ -1011,7 +1048,7 @@ URL: [url]',
'settings_enableOwnerNotification_desc' => '',
'settings_enableOwnerReceipt' => '',
'settings_enableOwnerReceipt_desc' => '',
'settings_enableOwnerRevApp' => '',
'settings_enableOwnerRevApp' => '允许所有者进行审查或批准',
'settings_enableOwnerRevApp_desc' => '',
'settings_enablePasswordForgotten' => '',
'settings_enablePasswordForgotten_desc' => '',
@ -1023,7 +1060,7 @@ URL: [url]',
'settings_enableSelfRevApp_desc' => '',
'settings_enableSessionList' => '',
'settings_enableSessionList_desc' => '',
'settings_enableThemeSelector' => '',
'settings_enableThemeSelector' => '主题选择',
'settings_enableThemeSelector_desc' => '',
'settings_enableUpdateReceipt' => '',
'settings_enableUpdateReceipt_desc' => '',
@ -1037,11 +1074,11 @@ URL: [url]',
'settings_enableVersionDeletion_desc' => '',
'settings_enableVersionModification' => '',
'settings_enableVersionModification_desc' => '',
'settings_encryptionKey' => '',
'settings_encryptionKey' => '加密密钥',
'settings_encryptionKey_desc' => '',
'settings_error' => '',
'settings_expandFolderTree' => '',
'settings_expandFolderTree_desc' => '',
'settings_expandFolderTree' => '展开文件夹树',
'settings_expandFolderTree_desc' => '展开文件夹树',
'settings_expandFolderTree_val0' => '',
'settings_expandFolderTree_val1' => '',
'settings_expandFolderTree_val2' => '',
@ -1049,14 +1086,14 @@ URL: [url]',
'settings_extraPath' => '额外的PHP的include路径',
'settings_extraPath_desc' => '附加软件的路径。这是包含目录例如在ADODB目录或额外的PEAR包',
'settings_firstDayOfWeek' => '每周第一天',
'settings_firstDayOfWeek_desc' => '',
'settings_firstDayOfWeek_desc' => '本周第一天',
'settings_footNote' => '附注',
'settings_footNote_desc' => '显示在每个页面底部的信息',
'settings_fullSearchEngine' => '全文搜索引擎',
'settings_fullSearchEngine_desc' => '',
'settings_fullSearchEngine_vallucene' => 'Zend Lucene',
'settings_fullSearchEngine_valsqlitefts' => 'SQLiteFTS',
'settings_guestID' => '',
'settings_guestID' => '访客名称',
'settings_guestID_desc' => '',
'settings_httpRoot' => '',
'settings_httpRoot_desc' => '',
@ -1076,11 +1113,11 @@ URL: [url]',
'settings_language_desc' => '默认语言(“语言”文件夹的一个子文件夹的名字',
'settings_libraryFolder' => '',
'settings_libraryFolder_desc' => '',
'settings_logFileEnable' => '',
'settings_logFileEnable' => '开启日历文件',
'settings_logFileEnable_desc' => '',
'settings_logFileRotation' => '',
'settings_logFileRotation_desc' => '',
'settings_loginFailure' => '',
'settings_loginFailure' => '登录失败',
'settings_loginFailure_desc' => '',
'settings_luceneClassDir' => 'Lucene的SeedDMS目录',
'settings_luceneClassDir_desc' => '',
@ -1101,7 +1138,7 @@ URL: [url]',
'settings_Notification' => '通知设置',
'settings_notwritable' => '设置_不可写',
'settings_no_content_dir' => '',
'settings_overrideMimeType' => '',
'settings_overrideMimeType' => '覆盖Mime Type',
'settings_overrideMimeType_desc' => '',
'settings_partitionSize' => '',
'settings_partitionSize_desc' => '',
@ -1112,8 +1149,8 @@ URL: [url]',
'settings_passwordStrength' => '',
'settings_passwordStrengthAlgorithm' => '',
'settings_passwordStrengthAlgorithm_desc' => '',
'settings_passwordStrengthAlgorithm_valadvanced' => '',
'settings_passwordStrengthAlgorithm_valsimple' => '',
'settings_passwordStrengthAlgorithm_valadvanced' => '高级',
'settings_passwordStrengthAlgorithm_valsimple' => '简单',
'settings_passwordStrength_desc' => '',
'settings_pear_log' => '',
'settings_pear_webdav' => '',
@ -1138,7 +1175,7 @@ URL: [url]',
'settings_restricted_desc' => '',
'settings_rootDir' => '根目录',
'settings_rootDir_desc' => '',
'settings_rootFolderID' => '',
'settings_rootFolderID' => '根文件夹名称',
'settings_rootFolderID_desc' => '',
'settings_SaveError' => '',
'settings_Server' => '服务设置',
@ -1154,22 +1191,22 @@ URL: [url]',
'settings_siteName' => '站点名称',
'settings_siteName_desc' => '用于页面标题的站点名称默认为SeedDMS',
'settings_SMTP' => 'SMTP 服务器设定',
'settings_smtpPassword' => '',
'settings_smtpPassword_desc' => '',
'settings_smtpPassword' => 'SMTP服务器密码',
'settings_smtpPassword_desc' => 'SMTP服务器密码',
'settings_smtpPort' => 'SMTP 服务器端口',
'settings_smtpPort_desc' => 'SMTP 服务器端口默认25',
'settings_smtpSendFrom' => '发送自',
'settings_smtpSendFrom_desc' => '发送自',
'settings_smtpServer' => 'SMTP 服务器名称',
'settings_smtpServer_desc' => 'SMTP 服务器名称',
'settings_smtpUser' => '',
'settings_smtpUser_desc' => '',
'settings_smtpUser' => 'SMTP服务器用户',
'settings_smtpUser_desc' => 'SMTP服务器用户',
'settings_sortFoldersDefault' => '',
'settings_sortFoldersDefault_desc' => '',
'settings_sortFoldersDefault_val_name' => '',
'settings_sortFoldersDefault_val_name' => '通过名字',
'settings_sortFoldersDefault_val_sequence' => '',
'settings_sortFoldersDefault_val_unsorted' => '',
'settings_sortUsersInList' => '',
'settings_sortFoldersDefault_val_unsorted' => '未分类',
'settings_sortUsersInList' => '对列表中的用户排序',
'settings_sortUsersInList_desc' => '',
'settings_sortUsersInList_val_fullname' => '',
'settings_sortUsersInList_val_login' => '',
@ -1178,15 +1215,15 @@ URL: [url]',
'settings_start_install' => '',
'settings_stopWordsFile' => '',
'settings_stopWordsFile_desc' => '',
'settings_strictFormCheck' => '',
'settings_strictFormCheck_desc' => '',
'settings_strictFormCheck' => '严格表格检查',
'settings_strictFormCheck_desc' => '严格表格检查。如果此项为是,将检查所有表格中字段的值。如果设置为否,内容和关键字段检查将成为可选项。同时提交评论或覆盖文件时,始终要求注释',
'settings_suggestionvalue' => '',
'settings_System' => '系统设置',
'settings_theme' => '主题设置',
'settings_theme_desc' => '默认风格(“风格”文件夹的一个子文件夹的名字',
'settings_titleDisplayHack' => '',
'settings_titleDisplayHack_desc' => '',
'settings_undelUserIds' => '',
'settings_undelUserIds' => '不可删除的用户名',
'settings_undelUserIds_desc' => '',
'settings_updateDatabase' => '',
'settings_updateNotifyTime' => '更新时间通知',
@ -1195,9 +1232,9 @@ URL: [url]',
'settings_versioningFileName' => '文件名版本',
'settings_versioningFileName_desc' => '',
'settings_versiontolow' => '',
'settings_viewOnlineFileTypes' => '',
'settings_viewOnlineFileTypes' => '查看在线文件属性',
'settings_viewOnlineFileTypes_desc' => '',
'settings_workflowMode' => '',
'settings_workflowMode' => '工作流模式',
'settings_workflowMode_desc' => '',
'settings_workflowMode_valadvanced' => '先进...',
'settings_workflowMode_valtraditional' => '传统',
@ -1256,12 +1293,15 @@ URL: [url]',
'splash_rm_role' => '',
'splash_rm_transmittal' => '',
'splash_rm_user' => '',
'splash_rm_user_processes' => '',
'splash_saved_file' => '',
'splash_save_user_data' => '',
'splash_send_download_link' => '',
'splash_settings_saved' => '',
'splash_substituted_user' => '',
'splash_switched_back_user' => '',
'splash_toogle_group_manager' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => '',
'statistic' => '统计',
'status' => '状态',
@ -1323,18 +1363,22 @@ URL: [url]',
'timeline_full_add_version' => '',
'timeline_full_status_change' => '',
'timeline_selected_item' => '',
'timeline_skip_add_file' => '',
'timeline_skip_add_file' => '添加附件',
'timeline_skip_status_change_-1' => '拒绝',
'timeline_skip_status_change_-3' => '过期',
'timeline_skip_status_change_0' => '',
'timeline_skip_status_change_1' => '',
'timeline_skip_status_change_2' => '',
'timeline_skip_status_change_3' => '',
'timeline_skip_status_change_0' => '待审核',
'timeline_skip_status_change_1' => '待批准',
'timeline_skip_status_change_2' => '发布',
'timeline_skip_status_change_3' => '在工作咯流中',
'timeline_skip_status_change_4' => '',
'timeline_skip_status_change_5' => '',
'timeline_status_change' => '版本 [版本]: [状态]',
'to' => '到',
'toggle_manager' => '角色切换',
'toggle_qrcode' => '',
'to_before_from' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transition_triggered_email' => '',
'transition_triggered_email_body' => '',
'transition_triggered_email_subject' => '',
@ -1384,10 +1428,12 @@ URL: [url]',
'uploading_zerosize' => '上传失败!请检查是否没有选择上传的文件。',
'used_discspace' => '使用磁盘空间',
'user' => '用户',
'userid_groupid' => '',
'users' => '用户',
'users_and_groups' => '',
'users_done_work' => '',
'user_exists' => '用户已存在',
'user_group' => '',
'user_group_management' => '用户/组的管理',
'user_image' => '用户图片',
'user_info' => '用户信息',
@ -1416,6 +1462,7 @@ URL: [url]',
'weeks' => '',
'week_view' => '周视图',
'workflow' => '',
'workflows_involded' => '',
'workflow_actions_management' => '',
'workflow_action_in_use' => '',
'workflow_action_name' => '',

View File

@ -88,6 +88,14 @@ URL: [url]',
'already_subscribed' => '已經訂閱',
'and' => '和',
'apply' => '接受',
'approvals_accepted' => '',
'approvals_and_reviews_accepted' => '',
'approvals_and_reviews_not_touched' => '',
'approvals_and_reviews_rejected' => '',
'approvals_not_touched' => '',
'approvals_rejected' => '',
'approvals_without_group' => '',
'approvals_without_user' => '',
'approval_deletion_email' => '審核請求已被刪除',
'approval_deletion_email_body' => '',
'approval_deletion_email_subject' => '',
@ -254,7 +262,9 @@ URL: [url]',
'confirm_rm_transmittal' => '',
'confirm_rm_transmittalitem' => '',
'confirm_rm_user' => '您確定要刪除"[username]"用戶?<br>請注意:此動作執行後不能撤銷.',
'confirm_rm_user_from_processes' => '',
'confirm_rm_version' => '您確定要刪除"[documentname]文檔的[version]版本檔?<br>請注意:此動作執行後不能撤銷.',
'confirm_transfer_objects' => '',
'confirm_update_transmittalitem' => '',
'content' => '內容',
'continue' => '繼續',
@ -303,6 +313,7 @@ URL: [url]',
'documents_user_reception' => '',
'documents_user_rejected' => '',
'documents_user_requiring_attention' => '需您關注的文檔',
'documents_with_notification' => '',
'document_already_checkedout' => '',
'document_already_locked' => '該文檔已被鎖定',
'document_comment_changed_email' => '',
@ -436,6 +447,7 @@ URL: [url]',
'folder' => '資料夾',
'folders' => '資料夾',
'folders_and_documents_statistic' => '內容概要',
'folders_with_notification' => '',
'folder_comment_changed_email' => '',
'folder_comment_changed_email_body' => '',
'folder_comment_changed_email_subject' => '',
@ -544,6 +556,7 @@ URL: [url]',
'js_no_approval_group' => '請選擇審核組',
'js_no_approval_status' => '請選擇審核狀態',
'js_no_comment' => '沒有添加說明',
'js_no_currentpwd' => '',
'js_no_email' => '輸入您的e-mail',
'js_no_file' => '請選擇一個檔',
'js_no_keywords' => '指定關鍵字',
@ -608,6 +621,7 @@ URL: [url]',
'march' => '三 月',
'max_upload_size' => '最大上傳文件大小',
'may' => '五 月',
'menu_dropfolder' => '',
'mimetype' => 'MIME類型',
'minutes' => '',
'misc' => '其他',
@ -721,7 +735,9 @@ URL: [url]',
'password_strength_insuffient' => '',
'password_wrong' => '',
'pending_approvals' => '',
'pending_receipt' => '',
'pending_reviews' => '',
'pending_revision' => '',
'pending_workflows' => '',
'personal_default_keywords' => '用戶關鍵字',
'pl_PL' => '波蘭語',
@ -734,11 +750,18 @@ URL: [url]',
'preview_plain' => '',
'previous_state' => '',
'previous_versions' => '先前版本',
'process' => '',
'process_without_user_group' => '',
'pt_BR' => '葡萄牙語',
'quota' => '配額',
'quota_exceeded' => '',
'quota_is_disabled' => '',
'quota_warning' => '',
'receipts_accepted' => '',
'receipts_not_touched' => '',
'receipts_rejected' => '',
'receipts_without_group' => '',
'receipts_without_user' => '',
'receipt_deletion_email_body' => '',
'receipt_deletion_email_subject' => '',
'receipt_log' => '',
@ -762,7 +785,7 @@ URL: [url]',
'removed_file_email_subject' => '',
'removed_recipient' => '',
'removed_reviewer' => '已經從校對人名單中刪除',
'removed_revispr' => '',
'removed_revisor' => '',
'removed_workflow_email_body' => '',
'removed_workflow_email_subject' => '',
'removeFolderFromDropFolder' => '',
@ -781,6 +804,11 @@ URL: [url]',
'reviewers' => '校對人',
'reviewer_already_assigned' => '已經被指派為校對人',
'reviewer_already_removed' => '已經從校對佇列中刪除或者已經提交校對',
'reviews_accepted' => '',
'reviews_not_touched' => '',
'reviews_rejected' => '',
'reviews_without_group' => '',
'reviews_without_user' => '',
'review_deletion_email' => '校對請求被刪除',
'review_deletion_email_body' => '',
'review_deletion_email_subject' => '',
@ -798,6 +826,12 @@ URL: [url]',
'review_update_failed' => '錯誤 更新校對狀態.更新失敗',
'revise_document' => '',
'revise_document_on' => '',
'revisions_accepted' => '',
'revisions_not_touched' => '',
'revisions_pending' => '',
'revisions_rejected' => '',
'revisions_without_group' => '',
'revisions_without_user' => '',
'revision_date' => '',
'revision_log' => '',
'revision_request_email_body' => '',
@ -826,6 +860,7 @@ URL: [url]',
'rm_transmittal' => '',
'rm_transmittalitem' => '',
'rm_user' => '刪除該用戶',
'rm_user_from_processes' => '',
'rm_version' => '刪除該版本',
'rm_workflow' => '',
'rm_workflow_action' => '',
@ -977,6 +1012,8 @@ URL: [url]',
'settings_enableClipboard_desc' => '',
'settings_enableConverting' => '',
'settings_enableConverting_desc' => '',
'settings_enableDropFolderList' => '',
'settings_enableDropFolderList_desc' => '',
'settings_enableDropUpload' => '',
'settings_enableDropUpload_desc' => '',
'settings_enableDuplicateDocNames' => '允許重複的檔案名',
@ -1254,12 +1291,15 @@ URL: [url]',
'splash_rm_role' => '',
'splash_rm_transmittal' => '',
'splash_rm_user' => '',
'splash_rm_user_processes' => '',
'splash_saved_file' => '',
'splash_save_user_data' => '',
'splash_send_download_link' => '',
'splash_settings_saved' => '',
'splash_substituted_user' => '',
'splash_switched_back_user' => '',
'splash_toogle_group_manager' => '',
'splash_transfer_objects' => '',
'state_and_next_state' => '',
'statistic' => '',
'status' => '狀態',
@ -1328,11 +1368,15 @@ URL: [url]',
'timeline_skip_status_change_1' => '',
'timeline_skip_status_change_2' => '',
'timeline_skip_status_change_3' => '',
'timeline_skip_status_change_4' => '',
'timeline_skip_status_change_5' => '',
'timeline_status_change' => '版本 [版本號]:[狀態]',
'to' => '到',
'toggle_manager' => '角色切換',
'toggle_qrcode' => '',
'to_before_from' => '',
'transfer_objects' => '',
'transfer_objects_to_user' => '',
'transition_triggered_email' => '',
'transition_triggered_email_body' => '',
'transition_triggered_email_subject' => '',
@ -1382,10 +1426,12 @@ URL: [url]',
'uploading_zerosize' => '上傳失敗!請檢查是否沒有選擇上傳的檔。',
'used_discspace' => '使用磁碟空間',
'user' => '用戶',
'userid_groupid' => '',
'users' => '用戶',
'users_and_groups' => '',
'users_done_work' => '',
'user_exists' => '用戶已存在',
'user_group' => '',
'user_group_management' => '用戶/組的管理',
'user_image' => '使用者圖片',
'user_info' => '使用者資訊',
@ -1414,6 +1460,7 @@ URL: [url]',
'weeks' => '',
'week_view' => '周視圖',
'workflow' => '流程',
'workflows_involded' => '',
'workflow_actions_management' => '流程動作管理',
'workflow_action_in_use' => '正在使用之流程動作',
'workflow_action_name' => '流程動作名稱',

View File

@ -44,11 +44,12 @@ if ($document->getAccessMode($user) < M_READWRITE) {
UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("access_denied"));
}
if(isset($_POST['fineuploaderuuids']) && $_POST['fineuploaderuuids']) {
$uuids = explode(';', $_POST['fineuploaderuuids']);
$names = explode(';', $_POST['fineuploadernames']);
$prefix = 'userfile';
if(isset($_POST[$prefix.'-fine-uploader-uuids']) && $_POST[$prefix.'-fine-uploader-uuids']) {
$uuids = explode(';', $_POST[$prefix.'-fine-uploader-uuids']);
$names = explode(';', $_POST[$prefix.'-fine-uploader-names']);
foreach($uuids as $i=>$uuid) {
$fullfile = $settings->_stagingDir.'/'.basename($uuid);
$fullfile = $settings->_stagingDir.'/'.utf8_basename($uuid);
if(file_exists($fullfile)) {
$finfo = finfo_open(FILEINFO_MIME_TYPE);
$mimetype = finfo_file($finfo, $fullfile);

View File

@ -642,6 +642,7 @@ switch($command) {
$indexconf['Indexer']::init($settings->_stopWordsFile);
} else {
$index = null;
$indexconf = null;
}
$controller = Controller::factory('AddDocument');

View File

@ -245,9 +245,6 @@ else
foreach ($notifyList["groups"] as $grp) {
$notifier->toGroup($user, $grp, $subject, $message, $params);
}
// if user is not owner send notification to owner
if ($user->getID() != $document->getOwner()->getID())
$notifier->toIndividual($user, $document->getOwner(), $subject, $message, $params);
if($workflow && $settings->_enableNotificationWorkflow) {
$subject = "request_workflow_action_email_subject";
@ -272,6 +269,51 @@ else
}
}
}
if($settings->_enableNotificationAppRev) {
/* Reviewers and approvers will be informed about the new document */
if($reviewers['i'] || $reviewers['g']) {
$subject = "review_request_email_subject";
$message = "review_request_email_body";
$params = array();
$params['name'] = $document->getName();
$params['folder_path'] = $folder->getFolderPathPlain();
$params['version'] = $reqversion;
$params['comment'] = $comment;
$params['username'] = $user->getFullName();
$params['url'] = "http".((isset($_SERVER['HTTPS']) && (strcmp($_SERVER['HTTPS'],'off')!=0)) ? "s" : "")."://".$_SERVER['HTTP_HOST'].$settings->_httpRoot."out/out.ViewDocument.php?documentid=".$document->getID();
$params['sitename'] = $settings->_siteName;
$params['http_root'] = $settings->_httpRoot;
foreach($reviewers['i'] as $reviewerid) {
$notifier->toIndividual($user, $dms->getUser($reviewerid), $subject, $message, $params);
}
foreach($reviewers['g'] as $reviewergrpid) {
$notifier->toGroup($user, $dms->getGroup($reviewergrpid), $subject, $message, $params);
}
}
elseif($approvers['i'] || $approvers['g']) {
$subject = "approval_request_email_subject";
$message = "approval_request_email_body";
$params = array();
$params['name'] = $document->getName();
$params['folder_path'] = $folder->getFolderPathPlain();
$params['version'] = $reqversion;
$params['comment'] = $comment;
$params['username'] = $user->getFullName();
$params['url'] = "http".((isset($_SERVER['HTTPS']) && (strcmp($_SERVER['HTTPS'],'off')!=0)) ? "s" : "")."://".$_SERVER['HTTP_HOST'].$settings->_httpRoot."out/out.ViewDocument.php?documentid=".$document->getID();
$params['sitename'] = $settings->_siteName;
$params['http_root'] = $settings->_httpRoot;
foreach($approvers['i'] as $approverid) {
$notifier->toIndividual($user, $dms->getUser($approverid), $subject, $message, $params);
}
foreach($approvers['g'] as $approvergrpid) {
$notifier->toGroup($user, $dms->getGroup($approvergrpid), $subject, $message, $params);
}
}
}
}
$expires = false;

View File

@ -127,6 +127,8 @@ if (isset($_FILES["userfile"]) && is_uploaded_file($_FILES["userfile"]["tmp_name
$user->setImage($_FILES["userfile"]["tmp_name"], $_FILES["userfile"]["type"]);
}
$session->setSplashMsg(array('type'=>'success', 'msg'=>getMLText('splash_save_user_data')));
add_log_line("?user=".$user->getLogin());
header("Location:../out/out.MyAccount.php");

View File

@ -94,7 +94,7 @@ if($_FILES["reviewfile"]["tmp_name"]) {
}
$controller->setParam('document', $document);
$controller->setParam('content', $latestContent);
$controller->setParam('content', $content);
$controller->setParam('reviewstatus', $_POST["reviewStatus"]);
$controller->setParam('reviewtype', $_POST["reviewType"]);
if ($_POST["reviewType"] == "grp") {
@ -161,7 +161,7 @@ if($olddocstatus['status'] != $newdocstatus['status']) {
}
// Notify approvers, if necessary.
if ($newdocstatus == S_DRAFT_APP) {
if ($newdocstatus['status'] == S_DRAFT_APP) {
$requestUser = $document->getOwner();
if($notifier) {

View File

@ -164,9 +164,7 @@ if (count($receiptIndex["i"]) > 0) {
if (!isset($accessIndex["i"][$rx])) {
// User does not have any receipt privileges for this document
// revision or does not exist.
$queryStr = "INSERT INTO `tblDocumentReceiptLog` (`receiptID`, `status`, `comment`, `date`, `userID`) ".
"VALUES ('". $receiptStatus[$rv["idx"]]["receiptID"] ."', '".S_LOG_USER_REMOVED."', '".getMLText("removed_recipient")."', NOW(), '". $user->getID() ."')";
$res = $db->getResult($queryStr);
$res = $content->delIndRecipient($dms->getUser($rx), $user, getMLText("removed_recipient"));
}
else {
$res = $content->delIndRecipient($accessIndex["i"][$rx], $user);
@ -270,9 +268,7 @@ if (count($receiptIndex["g"]) > 0) {
if (!isset($accessIndex["g"][$rx])) {
// Group does not have any receipt privileges for this document
// revision or does not exist.
$queryStr = "INSERT INTO `tblDocumentReceiptLog` (`receiptID`, `status`, `comment`, `date`, `userID`) ".
"VALUES ('". $receiptStatus[$rv["idx"]]["receiptID"] ."', '".S_LOG_USER_REMOVED."', '".getMLText("removed_recipient")."', NOW(), '". $user->getID() ."')";
$res = $db->getResult($queryStr);
$res = $content->delGrpRecipient($dms->getGroup($rx), $user, getMLText("removed_recipient"));
}
else {
$res = $content->delGrpRecipient($accessIndex["g"][$rx], $user);

View File

@ -62,6 +62,7 @@ if ($overallStatus["status"]==S_REJECTED || $overallStatus["status"]==S_OBSOLETE
}
$folder = $document->getFolder();
$owner = $document->getOwner();
// Retrieve a list of all users and groups that have review / approve
// privileges.
@ -118,6 +119,18 @@ if (isset($_POST["grpIndReviewers"])) {
}
}
$pGrpRev = (isset($_POST["grpReviewers"]) ? array_values(array_unique($_POST["grpReviewers"])) : array());
if($user->getID() != $owner->getID()) {
$res=$owner->getMandatoryReviewers();
if($user->isAdmin())
$res = array();
} else
$res=$user->getMandatoryReviewers();
foreach ($res as $r) {
if(!in_array($r['reviewerUserID'], $pIndRev))
$pIndRev[] = $r['reviewerUserID'];
if(!in_array($r['reviewerGroupID'], $pGrpRev))
$pGrpRev[] = $r['reviewerGroupID'];
}
foreach ($pIndRev as $p) {
if (is_numeric($p)) {
if (isset($accessIndex["i"][$p])) {
@ -350,6 +363,18 @@ if (isset($_POST["grpIndApprovers"])) {
}
}
$pGrpApp = (isset($_POST["grpApprovers"]) ? array_values(array_unique($_POST["grpApprovers"])) : array());
if($user->getID() != $owner->getID()) {
$res=$owner->getMandatoryApprovers();
if($user->isAdmin())
$res = array();
} else
$res=$user->getMandatoryApprovers();
foreach ($res as $r) {
if(!in_array($r['approverUserID'], $pIndApp))
$pIndApp[] = $r['approverUserID'];
if(!in_array($r['approverGroupID'], $pGrpApp))
$pGrpApp[] = $r['approverGroupID'];
}
foreach ($pIndApp as $p) {
if (is_numeric($p)) {
if (isset($accessIndex["i"][$p])) {

View File

@ -161,7 +161,7 @@ if (count($revisionIndex["i"]) > 0) {
if (!isset($accessIndex["i"][$rx])) {
// User does not have any revision privileges for this document
// revision or does not exist.
$res = $content->delIndRevisor($dms->getUser($rx), $user, getMLText("removed_recipient"));
$res = $content->delIndRevisor($dms->getUser($rx), $user, getMLText("removed_revisor"));
}
else {
$res = $content->delIndRevisor($accessIndex["i"][$rx], $user);
@ -263,7 +263,7 @@ if (count($revisionIndex["g"]) > 0) {
if (!isset($accessIndex["g"][$rx])) {
// Group does not have any revision privileges for this document
// revision or does not exist.
$res = $content->delGrpRevisor($dms->getGroup($rx), $user, getMLText("removed_recipient"));
$res = $content->delGrpRevisor($dms->getGroup($rx), $user, getMLText("removed_revisor"));
}
else {
$res = $content->delGrpRevisor($accessIndex["g"][$rx], $user);
@ -307,6 +307,9 @@ if (count($revisionIndex["g"]) > 0) {
}
}
/* Recheck status, because all revisors could have been removed */
$content->verifyStatus(false, $user, getMLText('automatic_status_update'));
add_log_line("?documentid=".$documentid);
header("Location:../out/out.DocumentVersionDetail.php?documentid=".$documentid."&version=".$version);

View File

@ -84,6 +84,7 @@ if ($action == "saveSettings")
$settings->_enableSessionList = getBoolValue("enableSessionList");
$settings->_enableClipboard = getBoolValue("enableClipboard");
$settings->_enableMenuTasks = getBoolValue("enableMenuTasks");
$settings->_enableDropFolderList = getBoolValue("enableDropFolderList");
$settings->_enableDropUpload = getBoolValue("enableDropUpload");
$settings->_enableMultiUpload = getBoolValue("enableMultiUpload");
$settings->_enableFolderTree = getBoolValue("enableFolderTree");

View File

@ -182,6 +182,100 @@ else if ($action == "removeuser") {
$userid=-1;
}
// remove user from all processes (approval, review)
else if ($action == "removefromprocesses") {
/* Check if the form data comes from a trusted request */
if(!checkFormKey('removefromprocesses')) {
UI::exitError(getMLText("admin_tools"),getMLText("invalid_request_token"));
}
if (isset($_POST["userid"])) {
$userid = $_POST["userid"];
}
if (!isset($userid) || !is_numeric($userid) || intval($userid)<1) {
UI::exitError(getMLText("admin_tools"),getMLText("invalid_user_id"));
}
/* This used to be a check if an admin is deleted. Now it checks if one
* wants to delete herself.
*/
if ($userid==$user->getID()) {
UI::exitError(getMLText("admin_tools"),getMLText("cannot_delete_yourself"));
}
$userToRemove = $dms->getUser($userid);
if (!is_object($userToRemove)) {
UI::exitError(getMLText("admin_tools"),getMLText("invalid_user_id"));
}
if(isset($_POST["status"]) && is_array($_POST["status"]) && $_POST["status"]) {
if(!isset($_POST["status"]["review"]))
$_POST["status"]["review"] = array();
if(!isset($_POST["status"]["approval"]))
$_POST["status"]["approval"] = array();
if(!isset($_POST["status"]["receipt"]))
$_POST["status"]["receipt"] = array();
if(!isset($_POST["status"]["revision"]))
$_POST["status"]["revision"] = array();
if (!$userToRemove->removeFromProcesses($user, $_POST['status'])) {
UI::exitError(getMLText("admin_tools"),getMLText("error_occured"));
}
add_log_line(".php&action=removefromprocesses&userid=".$userid);
$session->setSplashMsg(array('type'=>'success', 'msg'=>getMLText('splash_rm_user_processes')));
}
}
// transfer all objects from one user to another one
else if ($action == "transferobjects") {
/* Check if the form data comes from a trusted request */
if(!checkFormKey('transferobjects')) {
UI::exitError(getMLText("admin_tools"),getMLText("invalid_request_token"));
}
if (isset($_POST["userid"])) {
$userid = $_POST["userid"];
}
if (!isset($userid) || !is_numeric($userid) || intval($userid)<1) {
UI::exitError(getMLText("admin_tools"),getMLText("invalid_user_id"));
}
/* Check if one wants to transfer his/her own objects.
*/
if ($userid==$user->getID()) {
UI::exitError(getMLText("admin_tools"),getMLText("cannot_transfer_your_objects"));
}
$userToRemove = $dms->getUser($userid);
if (!is_object($userToRemove)) {
UI::exitError(getMLText("admin_tools"),getMLText("invalid_user_id"));
}
$userToAssign = $dms->getUser($_POST["assignTo"]);
if (!$userToRemove->remove($user, $userToAssign)) {
UI::exitError(getMLText("admin_tools"),getMLText("error_occured"));
}
// if(isset($_POST["status"]) && is_array($_POST["status"]) && $_POST["status"]) {
if (!$userToRemove->transferDocumentsFolders($userToAssign)) {
UI::exitError(getMLText("admin_tools"),getMLText("error_occured"));
}
if (!$userToRemove->transferEvents($userToAssign)) {
UI::exitError(getMLText("admin_tools"),getMLText("error_occured"));
}
add_log_line(".php&action=transferobjects&userid=".$userid);
$session->setSplashMsg(array('type'=>'success', 'msg'=>getMLText('splash_transfer_objects')));
// }
}
// modify user ------------------------------------------------------------
else if ($action == "edituser") {

View File

@ -79,6 +79,7 @@ if($view) {
$view->setParam('enableselfrevapp', $settings->_enableSelfRevApp);
$view->setParam('libraryfolder', $libfolder);
$view->setParam('dropfolderdir', $settings->_dropFolderDir);
$view->setParam('dropfolderfile', isset($_REQUEST["dropfolderfileform1"]) ?$_REQUEST["dropfolderfileform1"] : '');
$view->setParam('workflowmode', $settings->_workflowMode);
$view->setParam('presetexpiration', $settings->_presetExpirationDate);
$view->setParam('sortusersinlist', $settings->_sortUsersInList);

View File

@ -36,6 +36,7 @@ if ($user->isGuest()) {
}
if($view) {
$view->setParam('showtree', showtree());
$view->setParam('cachedir', $settings->_cacheDir);
$view->setParam('previewWidthList', $settings->_previewWidthList);
$view->setParam('previewconverters', $settings->_converters['preview']);

View File

@ -26,7 +26,10 @@ include("../inc/inc.DBInit.php");
include("../inc/inc.ClassUI.php");
include("../inc/inc.Authentication.php");
if(isset($_GET["form"]))
$form = preg_replace('/[^A-Za-z0-9_]+/', '', $_GET["form"]);
else
$form = '';
if(substr($settings->_dropFolderDir, -1, 1) == DIRECTORY_SEPARATOR)
$dropfolderdir = substr($settings->_dropFolderDir, 0, -1);
@ -42,7 +45,7 @@ $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user));
if($view) {
$view->setParam('dropfolderdir', $dropfolderdir);
$view->setParam('dropfolderfile', $_GET["dropfolderfile"]);
$view->setParam('dropfolderfile', isset($_GET["dropfolderfile"]) ? $_GET["dropfolderfile"] : '');
$view->setParam('form', $form);
$view->setParam('cachedir', $settings->_cacheDir);
$view->setParam('previewWidthList', $settings->_previewWidthList);

View File

@ -48,6 +48,9 @@ $folder = $document->getFolder();
/* Create object for checking access to certain operations */
$accessop = new SeedDMS_AccessOperation($dms, $user, $settings);
if(!$accessop->mayEditAttributes($document)) {
UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("access_denied"));
}
$attrdefs = $dms->getAllAttributeDefinitions(array(SeedDMS_Core_AttributeDefinition::objtype_documentcontent, SeedDMS_Core_AttributeDefinition::objtype_all));
$f = null;

View File

@ -53,6 +53,9 @@ $folder = $document->getFolder();
/* Create object for checking access to certain operations */
$accessop = new SeedDMS_AccessOperation($dms, $user, $settings);
if(!$accessop->mayEditComment($document)) {
UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("access_denied"));
}
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user));

View File

@ -58,6 +58,7 @@ if(isset($_GET["version"])) {
$lc = $document->getLatestContent();
} else {
$version = 0;
$content = $document->getLatestContent();
$lc = $document->getLatestContent();
}
@ -77,6 +78,12 @@ if (!isset($settings->_editOnlineFileTypes) || !is_array($settings->_editOnlineF
}
*/
/* Create object for checking access to certain operations */
$accessop = new SeedDMS_AccessOperation($dms, $user, $settings);
if(!$accessop->mayEditVersion($document, $version)) {
UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("access_denied"));
}
$folder = $document->getFolder();
if($view) {

View File

@ -66,17 +66,43 @@ if(isset($_GET['setchecksum']) && $_GET['setchecksum'] == 1) {
$folder = $dms->getFolder($settings->_rootFolderID);
$unlinkedversions = $dms->getUnlinkedDocumentContent();
if(!isset($_GET['action']) || $_GET['action'] == 'listUnlinkedFolders')
$unlinkedfolders = $dms->checkFolders();
else
$unlinkedfolders = null;
if(!isset($_GET['action']) || $_GET['action'] == 'listUnlinkedDocuments')
$unlinkeddocuments = $dms->checkDocuments();
else
$unlinkeddocuments = null;
if(!isset($_GET['action']) || $_GET['action'] == 'listMissingFileSize')
$nofilesizeversions = $dms->getNoFileSizeDocumentContent();
else
$nofilesizeversions = null;
if(!isset($_GET['action']) || $_GET['action'] == 'listMissingChecksum')
$nochecksumversions = $dms->getNoChecksumDocumentContent();
else
$nochecksumversions = null;
if(!isset($_GET['action']) || $_GET['action'] == 'listDuplicateContent')
$duplicateversions = $dms->getDuplicateDocumentContent();
$tmprevs = $dms->getDocumentsInRevision();
else
$duplicateversions = null;
$processwithoutusergroup = array();
foreach(array('review', 'approval', 'receipt', 'revision') as $process) {
foreach(array('user', 'group') as $ug) {
if(!isset($_GET['action']) || $_GET['action'] == 'list'.ucfirst($process).'Without'.ucfirst($ug)) {
$processwithoutusergroup[$process][$ug] = $dms->getProcessWithoutUserGroup($process, $ug);
}
}
}
$docsinrevision = array();
if(!isset($_GET['action']) || $_GET['action'] == 'listDocsInRevisionNoAccess') {
$tmprevs = $dms->getDocumentsInRevision();
foreach($tmprevs as $rev) {
if($doc = $dms->getDocument($rev['documentID'])) {
$isdisabled = false;
if($rev['type'] == 0) {
$ruser = $dms->getUser($rev['required']);
$isdisabled = $ruser->isDisabled();
$mode = $doc->getAccessMode($ruser);
$content = $doc->getContentByVersion($rev['version']);
$cmode = $content->getAccessMode($ruser);
@ -88,16 +114,21 @@ foreach($tmprevs as $rev) {
/* Caution: $content->getAccessMode($ruser) doesn't work as it uses the role
* restrictions of the currently logged in user
*/
if($mode < M_READ || $cmode < M_READ)
if($mode < M_READ || $cmode < M_READ || $isdisabled)
$docsinrevision[] = $doc;
}
}
$tmprevs = $dms->getDocumentsInReception();
}
$docsinreception = array();
if(!isset($_GET['action']) || $_GET['action'] == 'listDocsInReceptionNoAccess') {
$tmprevs = $dms->getDocumentsInReception();
foreach($tmprevs as $rev) {
if($doc = $dms->getDocument($rev['documentID'])) {
$isdisabled = false;
if($rev['type'] == 0) {
$ruser = $dms->getUser($rev['required']);
$isdisabled = $ruser->isDisabled();
$mode = $doc->getAccessMode($ruser);
$content = $doc->getContentByVersion($rev['version']);
$cmode = $content->getAccessMode($ruser);
@ -109,10 +140,12 @@ foreach($tmprevs as $rev) {
/* Caution: $content->getAccessMode($ruser) doesn't work as it uses the role
* restrictions of the currently logged in user
*/
if($mode < M_READ || $cmode < M_READ)
if($mode < M_READ || $cmode < M_READ || $isdisabled)
$docsinreception[] = $doc;
}
}
}
$rootfolder = $dms->getFolder($settings->_rootFolderID);
function repair_tree($dms, $user, $folder, $path=':') { /* {{{ */
@ -164,7 +197,10 @@ function repair_tree($dms, $user, $folder, $path=':') { /* {{{ */
return $objects;
} /* }}} */
if(!isset($_GET['action']) || $_GET['action'] == 'listRepair')
$repairobjects = repair_tree($dms, $user, $folder);
else
$repairobjects = null;
if($view) {
$view->setParam('folder', $folder);
@ -178,6 +214,7 @@ if($view) {
$view->setParam('duplicateversions', $duplicateversions);
$view->setParam('docsinrevision', $docsinrevision);
$view->setParam('docsinreception', $docsinreception);
$view->setParam('processwithoutusergroup', $processwithoutusergroup);
$view->setParam('unlink', $unlink);
$view->setParam('setfilesize', $setfilesize);
$view->setParam('setchecksum', $setchecksum);

View File

@ -52,17 +52,13 @@ if (!is_object($content)) {
UI::exitError(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))),getMLText("invalid_version"));
}
$overallStatus = $content->getStatus();
// status change control
if ($overallStatus["status"] == S_REJECTED || $overallStatus["status"] == S_EXPIRED || $overallStatus["status"] == S_DRAFT_REV || $overallStatus["status"] == S_DRAFT_APP ) {
UI::exitError(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))),getMLText("cannot_change_final_states"));
}
$folder = $document->getFolder();
/* Create object for checking access to certain operations */
$accessop = new SeedDMS_AccessOperation($dms, $user, $settings);
if(!$accessop->mayOverwriteStatus($document)) {
UI::exitError(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))),getMLText("cannot_change_final_states"));
}
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user));

View File

@ -0,0 +1,54 @@
<?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.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.Authentication.php");
if (!$user->isAdmin()) {
UI::exitError(getMLText("admin_tools"),getMLText("access_denied"));
}
if (!isset($_GET["userid"]) || !is_numeric($_GET["userid"]) || intval($_GET["userid"])<1) {
UI::exitError(getMLText("rm_user"),getMLText("invalid_user_id"));
}
$rmuser = $dms->getUser(intval($_GET["userid"]));
if (!is_object($rmuser)) {
UI::exitError(getMLText("rm_user"),getMLText("invalid_user_id"));
}
if ($rmuser->getID()==$user->getID()) {
UI::exitError(getMLText("rm_user"),getMLText("cannot_delete_yourself"));
}
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user));
if($view) {
$view->setParam('rmuser', $rmuser);
$view($_GET);
exit;
}
?>

View File

@ -62,6 +62,9 @@ $folder = $document->getFolder();
/* Create object for checking access to certain operations */
$accessop = new SeedDMS_AccessOperation($dms, $user, $settings);
if(!$accessop->mayRemoveVersion($document)) {
UI::exitError(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))),getMLText("access_denied"));
}
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user));

View File

@ -36,6 +36,7 @@ if ($user->isGuest()) {
}
if($view) {
$view->setParam('showtree', showtree());
$view->setParam('cachedir', $settings->_cacheDir);
$view->setParam('previewWidthList', $settings->_previewWidthList);
$view->setParam('previewconverters', $settings->_converters['preview']);

View File

@ -51,18 +51,14 @@ if (!is_object($content)) {
UI::exitError(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))),getMLText("invalid_version"));
}
if(!$settings->_enableVersionModification) {
UI::exitError(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))),getMLText("no_version_modification"));
}
$folder = $document->getFolder();
/* Create object for checking access to certain operations */
$accessop = new SeedDMS_AccessOperation($dms, $user, $settings);
if(!$accessop->maySetReviewersApprovers($document)) {
UI::exitError(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))),getMLText("cannot_assign_invalid_state"));
UI::exitError(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))),getMLText("no_version_modification"));
}
$folder = $document->getFolder();
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user));
if($view) {

View File

@ -53,6 +53,9 @@ $folder = $document->getFolder();
/* Create object for checking access to certain operations */
$accessop = new SeedDMS_AccessOperation($dms, $user, $settings);
if(!$accessop->maySetWorkflow($document)) {
UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("access_denied"));
}
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user));

View File

@ -0,0 +1,57 @@
<?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.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.Authentication.php");
if (!$user->isAdmin()) {
UI::exitError(getMLText("admin_tools"),getMLText("access_denied"));
}
if (!isset($_GET["userid"]) || !is_numeric($_GET["userid"]) || intval($_GET["userid"])<1) {
UI::exitError(getMLText("rm_user"),getMLText("invalid_user_id"));
}
$rmuser = $dms->getUser(intval($_GET["userid"]));
if (!is_object($rmuser)) {
UI::exitError(getMLText("rm_user"),getMLText("invalid_user_id"));
}
if ($rmuser->getID()==$user->getID()) {
UI::exitError(getMLText("rm_user"),getMLText("cannot_delete_yourself"));
}
$allusers = $dms->getAllUsers($settings->_sortUsersInList);
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user));
if($view) {
$view->setParam('rmuser', $rmuser);
$view->setParam('allusers', $allusers);
$view($_GET);
exit;
}
?>

302
utils/open-tasks.php Normal file
View File

@ -0,0 +1,302 @@
<?php
if(isset($_SERVER['SEEDDMS_HOME'])) {
require_once($_SERVER['SEEDDMS_HOME']."/inc/inc.ClassSettings.php");
} else {
require_once("../inc/inc.ClassSettings.php");
}
include 'Mail.php';
include 'Mail/mime.php';
function usage() { /* {{{ */
echo "Usage:\n";
echo " seeddms-open-tasks [--config <file>] [-u <users>] [-r receiver] [-h] [-v] [-t] [-q] -d <days> -D <days>\n";
echo "\n";
echo "Description:\n";
echo " Check for tasks which need to be done by a user.\n";
echo "\n";
echo "Options:\n";
echo " -h, --help: print usage information and exit.\n";
echo " -v, --version: print version and exit.\n";
echo " --config=<file>: set alternative config file.\n";
echo " -u <users>: comma separated list of user names to check. If not set all\n";
echo " users will be checked.\n";
echo " -r <receiver>: email address where all mails are sent to. If not set the\n";
echo " users themselves are informed.\n";
echo " -f <email>: set From field in notification mail\n";
echo " -b <base>: set base for links in html email. The final link will be\n";
echo " <base><httpRoot>out/out.ViewDocument.php. The default is\n";
echo " http://localhost\n";
echo " -d <days>: check for n days in the future (default 14). Days always\n".
" start and end at midnight. A value of '1' means today.\n";
echo " -t: run in test mode (will not send any mails)\n";
echo " -q: be quite (just output error messages)\n";
} /* }}} */
$version = "0.0.1";
$tableformat = "%-65s %-12s";
$tableformathtml = "<tr><td>%s</td><td>%s</td></tr>";
$baseurl = "http://localhost/";
$mailfrom = "uwe@steinman.cx";
$shortoptions = "u:d:D:f:b:a:A:c:C:m:u:r:tqhv";
$longoptions = array('help', 'version', 'config:');
if(false === ($options = getopt($shortoptions, $longoptions))) {
usage();
exit(0);
}
/* Print help and exit */
if(isset($options['h']) || isset($options['help'])) {
usage();
exit(0);
}
/* Print version and exit */
if(isset($options['v']) || isset($options['verѕion'])) {
echo $version."\n";
exit(0);
}
/* Set alternative config file */
if(isset($options['config'])) {
$settings = new Settings($options['config']);
} else {
$settings = new Settings();
}
include("inc/inc.Language.php");
include("inc/inc.Extension.php");
$LANG['de_DE']['daylyDigestMail'] = 'Tägliche Benachrichtigungsmail über ausstehende Aufgaben';
$LANG['en_GB']['daylyDigestMail'] = 'Dayly digest mail with due tasks';
$LANG['de_DE']['docsNeedToCareAbout'] = 'Dokumente, die seit mehr als [days] Tagen auf ihre Bearbeitung warten.';
$LANG['en_GB']['docsNeedToCareAbout'] = 'Documents waiting for your attention for more than [days] days.';
$LANG['en_GB']['waiting_for_review'] = 'Documents waiting for your review';
$LANG['de_DE']['waiting_for_review'] = 'Dokumente, die auf ihre Prüfung warten';
$LANG['en_GB']['waiting_for_approval'] = 'Documents waiting for your approval';
$LANG['de_DE']['waiting_for_approval'] = 'Dokumente, die auf ihre Freigabe warten';
$LANG['en_GB']['waiting_for_receipt'] = 'Documents waiting for your reception';
$LANG['de_DE']['waiting_for_receipt'] = 'Dokumente, die auf ihre Empfangsbestätigung warten';
$LANG['en_GB']['waiting_for_revision'] = 'Documents waiting for your revision';
$LANG['de_DE']['waiting_for_revision'] = 'Dokumente, die auf ihre Wiederholungsprüfung warten';
$LANG['en_GB']['duedate'] = 'Due date';
$LANG['de_DE']['duedate'] = 'Fälligkeit';
if(isset($settings->_extraPath))
ini_set('include_path', $settings->_extraPath. PATH_SEPARATOR .ini_get('include_path'));
require_once("SeedDMS/Core.php");
$days = 14;
if(isset($options['d'])) {
$days = (int) $options['d'];
}
$enddays = 0;
if(isset($options['D'])) {
$enddays = (int) $options['D'];
}
if($enddays >= $days) {
echo "Value of -D must be less then value of -d\n";
exit(1);
}
if(isset($options['f'])) {
$mailfrom = trim($options['f']);
}
if(isset($options['b'])) {
$baseurl = trim($options['b']);
}
$username = '';
if(isset($options['u'])) {
$username = trim($options['u']);
}
$receiver = '';
if(isset($options['r'])) {
$receiver = trim($options['r']);
}
$dryrun = false;
if(isset($options['t'])) {
$dryrun = true;
echo "Running in test mode will not send any mail.\n";
}
$quite = false;
if(isset($options['q'])) {
$quite = true;
}
$showobsolete = false;
$db = new SeedDMS_Core_DatabaseAccess($settings->_dbDriver, $settings->_dbHostname, $settings->_dbUser, $settings->_dbPass, $settings->_dbDatabase);
$db->connect() or die ("Could not connect to db-server \"" . $settings->_dbHostname . "\"");
$db->_debug = 1;
$dms = new SeedDMS_Core_DMS($db, $settings->_contentDir.$settings->_contentOffsetDir);
if(!$settings->_doNotCheckDBVersion && !$dms->checkVersion()) {
echo "Database update needed.";
exit;
}
$dms->setRootFolderID($settings->_rootFolderID);
$dms->setMaxDirID($settings->_maxDirID);
$dms->setEnableConverting($settings->_enableConverting);
$dms->setViewOnlineFileTypes($settings->_viewOnlineFileTypes);
$startts = strtotime("midnight", time());
if($username) {
$users = array();
$tmp = explode(',', $username);
foreach($tmp as $t) {
if($u = $dms->getUserByLogin($t))
$users[] = $u;
}
} else {
$users = $dms->getAllUsers();
}
if(!$users) {
echo "No users specified or available.";
exit;
}
foreach($users as $user) {
if($user->isDisabled())
continue;
if(!$quite)
echo "Checking for tasks of user ".$user->getFullName()." which are due for more than ".$days." days\n\n";
$sendmail = false; /* Set to true if there is something to report */
$tasks = array('approval'=>array(), 'review'=>array(), 'receipt'=>array(), 'revision'=>array());
$resArr = $dms->getDocumentList('ApproveByMe', $user);
if($resArr) {
foreach ($resArr as $res) {
$tmp = explode(' ', $res['duedate'], 2);
if($tmp[0] < date('Y-m-d', $startts-$days*86400)) {
$document = $dms->getDocument($res["id"]);
if($document->getAccessMode($user) >= M_READ && $document->getLatestContent()) {
$tasks['approval'][] = array('id'=>$res['id'], 'name'=>$res['name'], 'date'=>$res['duedate']);
}
}
}
}
$resArr = $dms->getDocumentList('ReviewByMe', $user);
if($resArr) {
foreach ($resArr as $res) {
$tmp = explode(' ', $res['duedate'], 2);
if($tmp[0] < date('Y-m-d', $startts-$days*86400)) {
$document = $dms->getDocument($res["id"]);
if($document->getAccessMode($user) >= M_READ && $document->getLatestContent()) {
$tasks['review'][] = array('id'=>$res['id'], 'name'=>$res['name'], 'date'=>$res['duedate']);
}
}
}
}
$resArr = $dms->getDocumentList('ReceiptByMe', $user);
if($resArr) {
foreach ($resArr as $res) {
$tmp = explode(' ', $res['duedate'], 2);
if($tmp[0] < date('Y-m-d', $startts-$days*86400)) {
$document = $dms->getDocument($res["id"]);
if($document->getAccessMode($user) >= M_READ && $document->getLatestContent()) {
$tasks['receipt'][] = array('id'=>$res['id'], 'name'=>$res['name'], 'date'=>$res['duedate']);
}
}
}
}
$resArr = $dms->getDocumentList('ReviseByMe', $user);
if($resArr) {
foreach ($resArr as $res) {
$tmp = explode(' ', $res['duedate'], 2);
if($tmp[0] < date('Y-m-d', $startts-$days*86400)) {
$document = $dms->getDocument($res["id"]);
if($document->getAccessMode($user) >= M_READ && $document->getLatestContent()) {
$tasks['revision'][] = array('id'=>$res['id'], 'name'=>$res['name'], 'date'=>$res['duedate']);
}
}
}
}
// print_r($tasks);
if (count($tasks['approval'])>0 || count($tasks['review'])>0 || count($tasks['receipt'])>0 || count($tasks['revision'])>0) {
$bodyhead = "";
$bodyhead .= getMLText('docsNeedToCareAbout', array('days'=>$days))."\n";
$bodyhead .= "\n";
$bodyhtmlhead = "<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\n<title>SeedDMS: ".getMLText('daylyDigestMail')."</title>\n<base href=\"".$baseurl.$settings->_httpRoot."\" />\n</head>\n<body>\n";
$bodyhtmlhead .= "<h2>";
$bodyhtmlhead .= getMLText('docsNeedToCareAbout', array('days'=>$days))."\n";
$bodyhtmlhead .= "</h2>\n";
$bodyhtmlhead .= "<h3>";
$bodyhtmlhead .= "</h3>\n";
/* Build an array of mail bodies for receiver in $bodyarr
* $bodyarr['email@domain.de']['plain'] = 'mail body for plain text mail'
* $bodyarr['email@domain.de']['html'] = 'mail body for html mail'
*/
$email = $user->getEmail();
$bodyarr = array($email=>array('plain'=>'', 'html'=>''));
foreach(array('review', 'approval', 'receipt', 'revision') as $typ) {
if(!empty($tasks[$typ])) {
$bodyarr[$email]['plain'] .= sprintf($tableformat."\n", getMLText('waiting_for_'.$typ, array()), getMLText("duedate", array()));
$bodyarr[$email]['plain'] .= "---------------------------------------------------------------------------------------\n";
$bodyarr[$email]['html'] .= "<h3>".getMLText('waiting_for_'.$typ, array())."</h3>";
$bodyarr[$email]['html'] .= "<table>\n";
$bodyarr[$email]['html'] .= sprintf($tableformathtml."\n", getMLText('name', array()), getMLText("duedate", array()));
foreach($tasks[$typ] as $task) {
$bodyarr[$email]['plain'] .= sprintf($tableformat."\n", $task["name"], (!$task["date"] ? "-":$task["date"]));
$bodyarr[$email]['html'] .= sprintf($tableformathtml."\n", '<a href="out/out.ViewDocument.php?documentid='.$task["id"].'">'.htmlspecialchars($task["name"]).'</a>', (!$task["date"] ? "-":$task["date"]));
}
$bodyarr[$email]['plain'] .= "\n";
$bodyarr[$email]['html'] .= "</table>\n";
}
}
$bodyfoot = "\n";
$bodyhtmlfoot = "";
// echo $body;
// echo "----------------------------\n\n\n";
// echo $bodyhtml;
foreach($bodyarr as $address => $msg) {
if(!$quite) {
echo "\n=== Send mail to ".trim($address)." =====================================================\n";
echo $bodyhead;
echo $bodyarr[$address]['plain'];
echo $bodyfoot;
} else {
}
if(!$dryrun) {
$mime = new Mail_mime(array('eol' => "\n"));
$mime->setTXTBody($bodyhead.$msg['plain'].$bodyfoot);
$mime->setHTMLBody($bodyhtmlhead.$msg['html'].$bodyhtmlfoot);
$body = $mime->get(array(
'text_encoding'=>'8bit',
'html_encoding'=>'8bit',
'head_charset'=>'utf-8',
'text_charset'=>'utf-8',
'html_charset'=>'utf-8'
));
$hdrs = $mime->headers(array('From' => $mailfrom, 'Subject' => 'SeedDMS: '.getMLText('daylyDigestMail').($receiver ? " (".trim($address).")" : ""), 'Content-Type' => 'text/plain; charset=UTF-8'));
$mail = Mail::factory('mail');
if($receiver)
$mail->send($receiver, $hdrs, $body);
else
$mail->send(trim($address), $hdrs, $body);
}
}
} else {
if(!$quite) {
echo "No notification needed\n";
}
}
}

6
utils/seeddms-open-tasks Normal file
View File

@ -0,0 +1,6 @@
#!/bin/sh
if [ -z ${SEEDDMS_HOME+x} ]; then
echo "Please set SEEDDMS_HOME before running this script";
exit 1;
fi
php -f ${SEEDDMS_HOME}/utils/open-tasks.php -- $*

View File

@ -337,6 +337,7 @@ function tree($folder, $parent=null, $indent='', $skipcurrent=false) { /* {{{ */
echo $indent." <attr name=\"comment\">".wrapWithCData($version->getComment())."</attr>\n";
echo $indent." <attr name=\"owner\">".$owner->getId()."</attr>\n";
echo $indent." <attr name=\"orgfilename\">".wrapWithCData($version->getOriginalFileName())."</attr>\n";
echo $indent." <attr name=\"revisiondate\" format=\"Y-m-d\">".$version->getRevisionDate()."</attr>\n";
if($attributes = $version->getAttributes()) {
foreach($attributes as $attribute) {
$attrdef = $attribute->getAttributeDefinition();

View File

@ -631,6 +631,7 @@ function insert_document($document) { /* {{{ */
$newVersion = $result[1]->getContent();
$newVersion->setDate(dateToTimestamp($initversion['attributes']['date']));
$newVersion->setRevisionDate($initversion['attributes']['revisiondate']);
if($workflowstate)
$newVersion->setWorkflowState($workflowstate);
$newlogs = array();
@ -659,6 +660,10 @@ function insert_document($document) { /* {{{ */
$newreceipts = getRevAppLog($initversion['receipts']);
$newVersion->rewriteReceiptLog($newreceipts);
}
if($initversion['revisions']) {
$newrevisions = getRevAppLog($initversion['revisions']);
$newVersion->rewriteRevisionLog($newrevisions);
}
if($initversion['workflowlogs']) {
$newworkflowlogs = getWorkflowLog($initversion['workflowlogs']);
@ -749,6 +754,7 @@ function insert_document($document) { /* {{{ */
if($workflowstate)
$newVersion->setWorkflowState($workflowstate);
$newVersion->setDate(dateToTimestamp($version['attributes']['date']));
$newVersion->setRevisionDate($version['attributes']['revisiondate']);
$newlogs = array();
foreach($version['statuslogs'] as $i=>$log) {
if(!array_key_exists($log['attributes']['user'], $objmap['users'])) {
@ -773,6 +779,10 @@ function insert_document($document) { /* {{{ */
$newreceipts = getRevAppLog($version['receipts']);
$newVersion->rewriteReceiptLog($newreceipts);
}
if($version['revisions']) {
$newrevisions = getRevAppLog($version['revisions']);
$newVersion->rewriteRevisionLog($newrevisions);
}
if($version['workflowlogs']) {
$newworkflowlogs = getWorkflowLog($version['workflowlogs']);
@ -1072,7 +1082,7 @@ function set_mandatory() { /* {{{ */
} /* }}} */
function startElement($parser, $name, $attrs) { /* {{{ */
global $logger, $dms, $noversioncheck, $elementstack, $objmap, $cur_user, $cur_group, $cur_folder, $cur_document, $cur_version, $cur_statuslog, $cur_workflowlog, $cur_approval, $cur_approvallog, $cur_review, $cur_reviewlog, $cur_receipt, $cur_receiptlog, $cur_attrdef, $cur_documentcat, $cur_keyword, $cur_keywordcat, $cur_file, $cur_link, $cur_workflow, $cur_workflowtransition, $cur_workflowaction, $cur_workflowstate, $cur_transition, $cur_transmittal, $cur_transmittalitem, $cur_role, $cur_acopath, $cur_acos;
global $logger, $dms, $noversioncheck, $elementstack, $objmap, $cur_user, $cur_group, $cur_folder, $cur_document, $cur_version, $cur_statuslog, $cur_workflowlog, $cur_approval, $cur_approvallog, $cur_review, $cur_reviewlog, $cur_receipt, $cur_receiptlog, $cur_revision, $cur_revisionlog, $cur_attrdef, $cur_documentcat, $cur_keyword, $cur_keywordcat, $cur_file, $cur_link, $cur_workflow, $cur_workflowtransition, $cur_workflowaction, $cur_workflowstate, $cur_transition, $cur_transmittal, $cur_transmittalitem, $cur_role, $cur_acopath, $cur_acos;
$parent = end($elementstack);
array_push($elementstack, array('name'=>$name, 'attributes'=>$attrs));
@ -1195,6 +1205,7 @@ function startElement($parser, $name, $attrs) { /* {{{ */
$cur_version['approvals'] = array();
$cur_version['reviews'] = array();
$cur_version['receipts'] = array();
$cur_version['revisions'] = array();
$cur_version['statuslogs'] = array();
$cur_version['workflowlogs'] = array();
break;
@ -1236,6 +1247,15 @@ function startElement($parser, $name, $attrs) { /* {{{ */
$cur_receiptlog = array();
$cur_receiptlog['attributes'] = array();
break;
case "REVISION":
$cur_revision = array();
$cur_revision['attributes'] = array();
$cur_revision['logs'] = array();
break;
case "REVISIONLOG":
$cur_revisionlog = array();
$cur_revisionlog['attributes'] = array();
break;
case 'ATTRIBUTEDEFINITION':
$cur_attrdef = array();
$cur_attrdef['id'] = (int) $attrs['ID'];
@ -1271,6 +1291,10 @@ function startElement($parser, $name, $attrs) { /* {{{ */
$cur_receipt['attributes'][$attrs['NAME']] = '';
} elseif($parent['name'] == 'RECEIPTLOG') {
$cur_receiptlog['attributes'][$attrs['NAME']] = '';
} elseif($parent['name'] == 'REVISION') {
$cur_revision['attributes'][$attrs['NAME']] = '';
} elseif($parent['name'] == 'REVISIONLOG') {
$cur_revisionlog['attributes'][$attrs['NAME']] = '';
} elseif($parent['name'] == 'FOLDER') {
if(isset($attrs['TYPE']) && $attrs['TYPE'] == 'user') {
$cur_folder['user_attributes'][$attrs['ATTRDEF']] = '';
@ -1463,7 +1487,7 @@ function startElement($parser, $name, $attrs) { /* {{{ */
} /* }}} */
function endElement($parser, $name) { /* {{{ */
global $logger, $dms, $sections, $rootfolder, $objmap, $elementstack, $users, $groups, $links,$cur_user, $cur_group, $cur_folder, $cur_document, $cur_version, $cur_statuslog, $cur_approval, $cur_approvallog, $cur_review, $cur_reviewlog, $cur_receipt, $cur_receiptlog, $cur_attrdef, $cur_documentcat, $cur_keyword, $cur_keywordcat, $cur_file, $cur_link, $cur_workflow, $cur_workflowlog, $cur_workflowtransition, $cur_workflowaction, $cur_workflowstate, $cur_transition, $cur_transmittal, $cur_transmittalitem, $cur_role, $cur_acopath, $cur_acos;
global $logger, $dms, $sections, $rootfolder, $objmap, $elementstack, $users, $groups, $links,$cur_user, $cur_group, $cur_folder, $cur_document, $cur_version, $cur_statuslog, $cur_approval, $cur_approvallog, $cur_review, $cur_reviewlog, $cur_receipt, $cur_receiptlog, $cur_revision, $cur_revisionlog, $cur_attrdef, $cur_documentcat, $cur_keyword, $cur_keywordcat, $cur_file, $cur_link, $cur_workflow, $cur_workflowlog, $cur_workflowtransition, $cur_workflowaction, $cur_workflowstate, $cur_transition, $cur_transmittal, $cur_transmittalitem, $cur_role, $cur_acopath, $cur_acos;
array_pop($elementstack);
$parent = end($elementstack);
@ -1503,6 +1527,12 @@ function endElement($parser, $name) { /* {{{ */
case "RECEIPTLOG":
$cur_receipt['logs'][] = $cur_receiptlog;
break;
case "REVISION":
$cur_version['revisions'][] = $cur_revision;
break;
case "REVISIONLOG":
$cur_revision['logs'][] = $cur_revisionlog;
break;
case "USER":
/* users can be the users data or the member of a group */
$first = $elementstack[1];
@ -1609,7 +1639,7 @@ function endElement($parser, $name) { /* {{{ */
} /* }}} */
function characterData($parser, $data) { /* {{{ */
global $elementstack, $objmap, $cur_user, $cur_group, $cur_folder, $cur_document, $cur_version, $cur_statuslog, $cur_approval, $cur_approvallog, $cur_review, $cur_reviewlog, $cur_receipt, $cur_receiptlog, $cur_attrdef, $cur_documentcat, $cur_keyword, $cur_keywordcat, $cur_file, $cur_link, $cur_workflow, $cur_workflowlog, $cur_workflowtransition, $cur_workflowaction, $cur_workflowstate, $cur_transition, $cur_transmittal, $cur_transmittalitem, $cur_role, $cur_acopath, $cur_acos;
global $elementstack, $objmap, $cur_user, $cur_group, $cur_folder, $cur_document, $cur_version, $cur_statuslog, $cur_approval, $cur_approvallog, $cur_review, $cur_reviewlog, $cur_receipt, $cur_receiptlog, $cur_revision, $cur_revisionlog, $cur_attrdef, $cur_documentcat, $cur_keyword, $cur_keywordcat, $cur_file, $cur_link, $cur_workflow, $cur_workflowlog, $cur_workflowtransition, $cur_workflowaction, $cur_workflowstate, $cur_transition, $cur_transmittal, $cur_transmittalitem, $cur_role, $cur_acopath, $cur_acos;
$current = end($elementstack);
$parent = prev($elementstack);
@ -1688,6 +1718,15 @@ function characterData($parser, $data) { /* {{{ */
else
$cur_receiptlog['attributes'][$current['attributes']['NAME']] = $data;
break;
case 'REVISION':
$cur_revision['attributes'][$current['attributes']['NAME']] = $data;
break;
case 'REVISIONLOG':
if(isset($cur_revisionlog['attributes'][$current['attributes']['NAME']]))
$cur_revisionlog['attributes'][$current['attributes']['NAME']] .= $data;
else
$cur_revisionlog['attributes'][$current['attributes']['NAME']] = $data;
break;
case 'WORKFLOWLOG':
if(isset($cur_workflowlog['attributes'][$current['attributes']['NAME']]))
$cur_workflowlog['attributes'][$current['attributes']['NAME']] .= $data;

View File

@ -40,11 +40,11 @@ $('#acostree').tree({
closedIcon: '<i class="icon-plus-sign"></i>',
onCreateLi: function(node, $li) {
switch(node.permission) {
case "-1":
case -1:
$li.find('.jqtree-element span:last-child').after('<span style="position: absolute; right:10px;" class="jqtree-remove-permission" data-acoid="'+node.acoid+'" data-aroid="'+node.aroid+'"><i class="icon-minus-sign"></i></span> <span style="position: absolute; right:50px;" class="jqtree-toggle-permission" data-acoid="'+node.acoid+'" data-aroid="'+node.aroid+'"><i class="icon-exchange"></i></span>');
$li.attr('style', 'background-color:#FDD');
break;
case "1":
case 1:
$li.find('.jqtree-element span:last-child').after('<span style="position: absolute; right:10px;" class="jqtree-remove-permission" data-acoid="'+node.acoid+'" data-aroid="'+node.aroid+'"><i class="icon-minus-sign"></i></span> <span style="position: absolute; right:50px;" class="jqtree-toggle-permission" data-acoid="'+node.acoid+'" data-aroid="'+node.aroid+'"><i class="icon-exchange"></i></span>');
$li.attr('style', 'background-color:#DFD');
break;

View File

@ -164,6 +164,7 @@ $(document).ready(function() {
$strictformcheck = $this->params['strictformcheck'];
$dropfolderdir = $this->params['dropfolderdir'];
$libraryfolder = $this->params['libraryfolder'];
$dropfolderfile = $this->params['dropfolderfile'];
$workflowmode = $this->params['workflowmode'];
$presetexpiration = $this->params['presetexpiration'];
$sortusersinlist = $this->params['sortusersinlist'];
@ -340,7 +341,7 @@ $(document).ready(function() {
<?php if($dropfolderdir) { ?>
<tr>
<td><?php printMLText("dropfolder_file");?>:</td>
<td><?php $this->printDropFolderChooserHtml("form1");?></td>
<td><?php $this->printDropFolderChooserHtml("form1", $dropfolderfile);?></td>
</tr>
<?php } ?>
<?php if($libraryfolder) { ?>

View File

@ -68,11 +68,17 @@ $(document).ready( function() {
timeout: 1500,
});
},
highlight: function(e, errorClass, validClass) {
$(e).parent().parent().removeClass(validClass).addClass(errorClass);
},
unhighlight: function(e, errorClass, validClass) {
$(e).parent().parent().removeClass(errorClass).addClass(validClass);
},
<?php
if($enablelargefileupload) {
?>
submitHandler: function(form) {
manualuploader.uploadStoredFiles();
userfileuploader.uploadStoredFiles();
},
<?php
}
@ -82,7 +88,7 @@ $(document).ready( function() {
if($enablelargefileupload) {
?>
fineuploaderuuids: {
fineuploader: [ manualuploader ]
fineuploader: [ userfileuploader ]
}
<?php
} else {

View File

@ -35,37 +35,7 @@ class SeedDMS_View_AddSubFolder extends SeedDMS_Bootstrap_Style {
$strictformcheck = $this->params['strictformcheck'];
header('Content-Type: application/javascript');
?>
function checkForm()
{
msg = new Array();
if (document.form1.name.value == "") msg.push("<?php printMLText("js_no_name");?>");
<?php
if ($strictformcheck) {
?>
if (document.form1.comment.value == "") msg.push("<?php printMLText("js_no_comment");?>");
<?php
}
?>
if (msg != "") {
noty({
text: msg.join('<br />'),
type: 'error',
dismissQueue: true,
layout: 'topRight',
theme: 'defaultTheme',
_timeout: 1500,
});
return false;
}
else
return true;
}
$(document).ready( function() {
/* $('body').on('submit', '#form1', function(ev){
if(checkForm()) return;
ev.preventDefault();
});
*/
$("#form1").validate({
invalidHandler: function(e, validator) {
noty({
@ -77,6 +47,12 @@ $(document).ready( function() {
timeout: 1500,
});
},
highlight: function(e, errorClass, validClass) {
$(e).parent().parent().removeClass(validClass).addClass(errorClass);
},
unhighlight: function(e, errorClass, validClass) {
$(e).parent().parent().removeClass(errorClass).addClass(validClass);
},
messages: {
name: "<?php printMLText("js_no_name");?>",
comment: "<?php printMLText("js_no_comment");?>"

View File

@ -82,19 +82,22 @@ $(document).ready( function() {
foreach($res['frequencies'][$type] as $entry) {
$value = $selattrdef->parseValue($entry['value']);
$content .= "<tr>";
$content .= "<td>".implode(';', $value)."</td><td>".$entry['c']."</td>";
$content .= "<td>".implode(';', $value)."</td>";
$content .= "<td><a href=\"../out/out.Search.php?resultmode=".($type == 'folder' ? 2 : ($type == 'document' ? 1 : 3))."&attributes[".$selattrdef->getID()."]=".$entry['value']."\">".urlencode($entry['c'])."</a></td>";
$content .= "<td>";
/* various checks, if the value is valid */
if(!$selattrdef->validate($entry['value'])) {
$content .= getAttributeValidationText($selattrdef->getValidationError(), $selattrdef->getName(), $entry['value']);
$content .= getAttributeValidationText($selattrdef->getValidationError(), $selattrdef->getName(), $entry['value'], $selattrdef->getRegex());
}
$content .= "<td>";
/* Check if value is in value set */
/*
if($selattrdef->getValueSet()) {
foreach($value as $v) {
if(!in_array($v, $selattrdef->getValueSetAsArray()))
$content .= getMLText("attribute_value_not_in_valueset");
}
}
*/
$content .= "</td>";
$content .= "</tr>";
}

View File

@ -410,6 +410,14 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
//$this->addFooterJS('checkTasks();');
}
if($this->params['dropfolderdir'] && $this->params['enabledropfolderlist']) {
echo " <div id=\"menu-dropfolder\">";
echo " <div class=\"ajax\" data-no-spinner=\"true\" data-view=\"DropFolderChooser\" data-action=\"menuList\"";
if ($folder!=null && is_object($folder) && !strcasecmp(get_class($folder), $dms->getClassname('folder')))
echo " data-query=\"folderid=".$folder->getID()."\"";
echo "></div>";
echo " </div>";
}
if($this->params['enablesessionlist']) {
echo " <div id=\"menu-session\">";
echo " <div class=\"ajax\" data-no-spinner=\"true\" data-view=\"Session\" data-action=\"menuSessions\"></div>";
@ -965,6 +973,7 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
$icons = array();
$icons["txt"] = "text-x-preview.svg";
$icons["text"] = "text-x-preview.svg";
$icons["tex"] = "text-x-preview.svg";
$icons["doc"] = "office-document.svg";
$icons["dot"] = "office-document.svg";
$icons["docx"] = "office-document.svg";
@ -988,27 +997,26 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
$icons["png"] = "image.svg";
$icons["tif"] = "image.svg";
$icons["tiff"] = "image.svg";
$icons["log"] = "log.png";
$icons["log"] = "text-x-preview.svg";
$icons["midi"] = "audio.svg";
$icons["pdf"] = "pdf.png";
$icons["pdf"] = "gnome-mime-application-pdf.svg";
$icons["wav"] = "audio.svg";
$icons["mp3"] = "audio.svg";
$icons["c"] = "source_c.png";
$icons["cpp"] = "source_cpp.png";
$icons["h"] = "source_h.png";
$icons["java"] = "source_java.png";
$icons["py"] = "source_py.png";
$icons["c"] = "text-x-preview.svg";
$icons["cpp"] = "text-x-preview.svg";
$icons["h"] = "text-x-preview.svg";
$icons["java"] = "text-x-preview.svg";
$icons["py"] = "text-x-preview.svg";
$icons["tar"] = "package.svg";
$icons["gz"] = "gz.png";
$icons["7z"] = "gz.png";
$icons["bz"] = "gz.png";
$icons["bz2"] = "gz.png";
$icons["tgz"] = "gz.png";
$icons["gz"] = "package.svg";
$icons["7z"] = "package.svg";
$icons["bz"] = "package.svg";
$icons["bz2"] = "package.svg";
$icons["tgz"] = "package.svg";
$icons["zip"] = "package.svg";
$icons["rar"] = "gz.png";
$icons["rar"] = "package.svg";
$icons["mpg"] = "video.svg";
$icons["avi"] = "video.svg";
$icons["tex"] = "tex.png";
$icons["ods"] = "office-spreadsheet.svg";
$icons["ots"] = "office-spreadsheet.svg";
$icons["sxc"] = "office-spreadsheet.svg";
@ -1021,10 +1029,10 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
$icons["otp"] = "office-presentation.svg";
$icons["sxi"] = "office-presentation.svg";
$icons["sti"] = "office-presentation.svg";
$icons["odg"] = "office-drawing.png";
$icons["otg"] = "office-drawing.png";
$icons["sxd"] = "office-drawing.png";
$icons["std"] = "office-drawing.png";
$icons["odg"] = "office-drawing.svg";
$icons["otg"] = "office-drawing.svg";
$icons["sxd"] = "office-drawing.svg";
$icons["std"] = "office-drawing.svg";
$icons["odf"] = "ooo_formula.png";
$icons["sxm"] = "ooo_formula.png";
$icons["smf"] = "ooo_formula.png";
@ -2180,15 +2188,21 @@ $(document).ready( function() {
$allcomments = array('-1'=>array(), '1'=>array());
foreach ($receiptStatus as $r) {
$rstat[''.$r['status']]++;
if($r['comment'])
$allcomments[''.$r['status']][] = htmlspecialchars($r['comment']);
if($r['comment']) {
// $allcomments[''.$r['status']][] = htmlspecialchars($r['comment']);
$m5 = md5(trim($r['comment']));
if(isset($allcomments[''.$r['status']][$m5]))
$allcomments[''.$r['status']][$m5]['n']++;
else
$allcomments[''.$r['status']][$m5] = array('n'=>1, 'c'=>htmlspecialchars(trim($r['comment'])));
}
}
$totalreceipts = $rstat['-1'] + $rstat['0'] + $rstat['1'];
if($totalreceipts) {
$content .= ";
<div class=\"progress\">
<div class=\"bar bar-success\" style=\"width: ".round($rstat['1']/$totalreceipts*100)."%;\">".($rstat['1'] ? $rstat['1']."/".$totalreceipts : '').($allcomments['1'] ? " ".$this->printPopupBox('<i class="icon-comment"></i>', implode('<br />', $allcomments['1']), true) : "")."</div>
<div class=\"bar bar-danger\" style=\"width: ".round($rstat['-1']/$totalreceipts*100)."%;\">".($rstat['-1'] ? $rstat['-1']."/".$totalreceipts : '').($allcomments['-1'] ? " ".$this->printPopupBox('<i class="icon-comment"></i>', implode('<br />', $allcomments['-1']), true) : "")."</div>
<div class=\"bar bar-success\" style=\"width: ".round($rstat['1']/$totalreceipts*100)."%;\">".($rstat['1'] ? $rstat['1']."/".$totalreceipts : '').($allcomments['1'] ? " ".$this->printPopupBox('<i class="icon-comment"></i>', implode('<br />', formatComment($allcomments['1'])), true) : "")."</div>
<div class=\"bar bar-danger\" style=\"width: ".round($rstat['-1']/$totalreceipts*100)."%;\">".($rstat['-1'] ? $rstat['-1']."/".$totalreceipts : '').($allcomments['-1'] ? " ".$this->printPopupBox('<i class="icon-comment"></i>', implode('<br />', formatComment($allcomments['-1'])), true) : "")."</div>
</div>";
}
}

View File

@ -52,4 +52,3 @@ class SeedDMS_View_CreateIndex extends SeedDMS_Bootstrap_Style {
} /* }}} */
}
?>

View File

@ -270,6 +270,8 @@ class SeedDMS_View_DocumentVersionDetail extends SeedDMS_Bootstrap_Style {
echo "</td>";
print "</tr></tbody>\n</table>\n";
$this->contentContainerEnd();
$this->contentContainerStart();
print "<table class=\"table-condensed\">\n";
@ -456,7 +458,7 @@ class SeedDMS_View_DocumentVersionDetail extends SeedDMS_Bootstrap_Style {
$this->contentContainerEnd();
}
if($user->isAdmin()) {
if($user->isAdmin() || $user->getId() == $document->getOwner()->getId()) {
$this->contentHeading(getMLText("status"));
$this->contentContainerStart();
$statuslog = $version->getStatusLog();

View File

@ -50,6 +50,61 @@ $('.folderselect').click(function(ev) {
<?php
} /* }}} */
public function menuList() { /* {{{ */
$dms = $this->params['dms'];
$user = $this->params['user'];
$dropfolderdir = $this->params['dropfolderdir'];
$showfolders = $this->params['showfolders'];
$cachedir = $this->params['cachedir'];
$timeout = $this->params['timeout'];
$folderid = isset($_GET['folderid']) ? $_GET['folderid'] : 0;
$previewwidth = 40;
$previewer = new SeedDMS_Preview_Previewer($cachedir, $previewwidth, $timeout);
$c = 0; // count files
$filecontent = '';
$dir = $dropfolderdir.'/'.$user->getLogin();
/* Check if we are still looking in the configured directory and
* not somewhere else, e.g. if the login was '../test'
*/
if(dirname($dir) == $dropfolderdir) {
if(is_dir($dir)) {
$d = dir($dir);
$finfo = finfo_open(FILEINFO_MIME_TYPE);
while (false !== ($entry = $d->read())) {
if($entry != '..' && $entry != '.') {
if($showfolders == 0 && !is_dir($dir.'/'.$entry)) {
$c++;
$mimetype = finfo_file($finfo, $dir.'/'.$entry);
$previewer->createRawPreview($dir.'/'.$entry, 'dropfolder/', $mimetype);
$filecontent .= "<li><a".($folderid ? " href=\"../out/out.AddDocument.php?folderid=".$folderid."&dropfolderfileform1=".urldecode($entry)."\"" : "").">";
if($previewer->hasRawPreview($dir.'/'.$entry, 'dropfolder/')) {
$filecontent .= "<div style=\"float: left; display:inline; width:40px; max-height:40px;overflow:hidden;\"><img filename=\"".$entry."\" width=\"".$previewwidth."\" src=\"../op/op.DropFolderPreview.php?filename=".$entry."&width=".$previewwidth."\" title=\"".htmlspecialchars($mimetype)."\"></div>";
}
$filecontent .= "<div style=\"margin-left:10px; margin-right: 40px; display:inline-block;\">".$entry."<br /><span style=\"font-size: 85%;\">".SeedDMS_Core_File::format_filesize(filesize($dir.'/'.$entry)).", ".date('Y-m-d H:i:s', filectime($dir.'/'.$entry))."</span></div></a></li>\n";
} elseif($showfolders && is_dir($dir.'/'.$entry)) {
$filecontent .= "<li><a _href=\"\">".$entry."</a></li>";
}
}
}
}
}
$content = '';
if($c) {
$content .= " <ul id=\"main-menu-dropfolderlist\" class=\"nav pull-right\">\n";
$content .= " <li class=\"dropdown add-dropfolderlist-area\">\n";
$content .= " <a href=\"#\" class=\"dropdown-toggle\" data-toggle=\"dropdown\" class=\"add-dropfolderlist-area\">".getMLText('menu_dropfolder')." (".$c.") <i class=\"icon-caret-down\"></i></a>\n";
$content .= " <ul class=\"dropdown-menu\" role=\"menu\">\n";
$content .= $filecontent;
$content .= " </ul>\n";
$content .= " </li>\n";
$content .= " </ul>\n";
}
echo $content;
} /* }}} */
function show() { /* {{{ */
$dms = $this->params['dms'];
$user = $this->params['user'];

View File

@ -36,41 +36,7 @@ class SeedDMS_View_EditDocument extends SeedDMS_Bootstrap_Style {
header('Content-Type: application/javascript');
$this->printKeywordChooserJs('form1');
?>
function checkForm()
{
msg = new Array();
if ($("#name").val() == "") msg.push("<?php printMLText("js_no_name");?>");
<?php
if ($strictformcheck) {
?>
if ($("#comment").val() == "") msg.push("<?php printMLText("js_no_comment");?>");
if ($("#keywords").val() == "") msg.push("<?php printMLText("js_no_keywords");?>");
<?php
}
?>
if (msg != "")
{
noty({
text: msg.join('<br />'),
type: 'error',
dismissQueue: true,
layout: 'topRight',
theme: 'defaultTheme',
_timeout: 1500,
});
return false;
}
else
return true;
}
$(document).ready( function() {
/*
$('body').on('submit', '#form1', function(ev){
if(checkForm()) return;
ev.preventDefault();
});
*/
$("#form1").validate({
invalidHandler: function(e, validator) {
noty({

View File

@ -35,37 +35,7 @@ class SeedDMS_View_EditFolder extends SeedDMS_Bootstrap_Style {
$strictformcheck = $this->params['strictformcheck'];
header('Content-Type: application/javascript; charset=UTF-8');
?>
function checkForm()
{
msg = new Array();
if (document.form1.name.value == "") msg.push("<?php printMLText("js_no_name");?>");
<?php
if ($strictformcheck) {
?>
if (document.form1.comment.value == "") msg.push("<?php printMLText("js_no_comment");?>");
<?php
}
?>
if (msg != "") {
noty({
text: msg.join('<br />'),
type: 'error',
dismissQueue: true,
layout: 'topRight',
theme: 'defaultTheme',
});
return false;
}
else
return true;
}
$(document).ready(function() {
/*
$('body').on('submit', '#form1', function(ev){
if(checkForm()) return;
ev.preventDefault();
});
*/
$("#form1").validate({
invalidHandler: function(e, validator) {
noty({
@ -77,6 +47,12 @@ $(document).ready(function() {
timeout: 1500,
});
},
highlight: function(e, errorClass, validClass) {
$(e).parent().parent().removeClass(validClass).addClass(errorClass);
},
unhighlight: function(e, errorClass, validClass) {
$(e).parent().parent().removeClass(errorClass).addClass(validClass);
},
messages: {
name: "<?php printMLText("js_no_name");?>",
comment: "<?php printMLText("js_no_comment");?>"

View File

@ -34,35 +34,7 @@ class SeedDMS_View_EditUserData extends SeedDMS_Bootstrap_Style {
function js() { /* {{{ */
header('Content-Type: application/javascript');
?>
function checkForm()
{
msg = new Array();
if ($("#pwd").val() != $("#pwdconf").val()) msg.push("<?php printMLText("js_pwd_not_conf");?>");
if ($("#fullname").val() == "") msg.push("<?php printMLText("js_no_name");?>");
if ($("#email").val() == "") msg.push("<?php printMLText("js_no_email");?>");
// if (document.form1.comment.value == "") msg.push("<?php printMLText("js_no_comment");?>");
if (msg != "") {
noty({
text: msg.join('<br />'),
type: 'error',
dismissQueue: true,
layout: 'topRight',
theme: 'defaultTheme',
_timeout: 1500,
});
return false;
}
else
return true;
}
$(document).ready( function() {
/*
$('body').on('submit', '#form', function(ev){
if(checkForm()) return;
ev.preventDefault();
});
*/
$("#form").validate({
invalidHandler: function(e, validator) {
noty({
@ -74,7 +46,16 @@ $(document).ready( function() {
timeout: 1500,
});
},
highlight: function(e, errorClass, validClass) {
$(e).parent().parent().removeClass(validClass).addClass(errorClass);
},
unhighlight: function(e, errorClass, validClass) {
$(e).parent().parent().removeClass(errorClass).addClass(validClass);
},
rules: {
currentpwd: {
required: true
},
fullname: {
required: true
},
@ -87,6 +68,7 @@ $(document).ready( function() {
}
},
messages: {
currentpwd: "<?php printMLText("js_no_currentpwd");?>",
fullname: "<?php printMLText("js_no_name");?>",
email: {
required: "<?php printMLText("js_no_email");?>",

View File

@ -39,17 +39,46 @@ class SeedDMS_View_Help extends SeedDMS_Bootstrap_Style {
$this->htmlStartPage(getMLText("help"));
$this->globalNavigation();
$this->contentStart();
$this->pageNavigation(getMLText("help").": ".getMLText('help_'.strtolower($context), array(), $context), "");
$this->contentContainerStart('help');
// $this->pageNavigation(getMLText("help").": ".getMLText('help_'.strtolower($context), array(), $context), "");
?>
<div class="row-fluid">
<div class="span4">
<legend>Table of contents</legend>
<?php
$d = dir("../languages/".$this->params['session']->getLanguage()."/help");
echo "<ul>";
while (false !== ($entry = $d->read())) {
if($entry != '..' && $entry != '.') {
$path_parts = pathinfo($dir."/".$entry);
if($path_parts['extension'] == 'html' || $path_parts['extension'] == 'md') {
echo "<li><a href=\"../out/out.Help.php?context=".$path_parts['filename']."\">".getMLText('help_'.$path_parts['filename'], array(), $path_parts['filename'])."</a></li>";
}
}
}
echo "</ul>";
?>
</div>
<div class="span8">
<legend><?php printMLText('help_'.strtolower($context), array(), $context); ?></legend>
<?php
$helpfile = "../languages/".$this->params['session']->getLanguage()."/help/".$context.".html";
if(file_exists($helpfile))
readfile($helpfile);
else
else {
$helpfile = "../languages/".$this->params['session']->getLanguage()."/help/".$context.".md";
if(file_exists($helpfile)) {
require_once('parsedown/Parsedown.php');
$Parsedown = new Parsedown();
echo $Parsedown->text(file_get_contents($helpfile));
} else
readfile("../languages/".$this->params['session']->getLanguage()."/help.htm");
}
$this->contentContainerEnd();
?>
</div>
</div>
<?php
$this->contentEnd();
$this->htmlEndPage();
} /* }}} */

View File

@ -41,8 +41,8 @@ class SeedDMS_View_ObjectCheck extends SeedDMS_Bootstrap_Style {
print "<thead>\n<tr>\n";
print "<th></th>\n";
if($order) {
$orderby = $this->params['orderby'];
$orderdir = $this->params['orderdir'];
$orderby = ''; //$this->params['orderby'];
$orderdir = ''; //$this->params['orderdir'];
print "<th><a data-action=\"".$order."\" data-orderby=\"n\" data-orderdir=\"".($orderdir == 'desc' ? '' : 'desc')."\">".getMLText("name")."</a> ".($orderby == 'n' || $orderby == '' ? ($orderdir == 'desc' ? '<i class="icon-arrow-up"></i>' : '<i class="icon-arrow-down"></i>') : '')." &middot; <a data-action=\"".$order."\" data-orderby=\"u\" data-orderdir=\"".($orderdir == 'desc' ? '' : 'desc')."\">".getMLText("last_update")."</a> ".($orderby == 'u' ? ($orderdir == 'desc' ? '<i class="icon-arrow-up"></i>' : '<i class="icon-arrow-down"></i>') : '')." &middot; <a data-action=\"".$order."\" data-orderby=\"e\" data-orderdir=\"".($orderdir == 'desc' ? '' : 'desc')."\">".getMLText("expires")."</a> ".($orderby == 'e' ? ($orderdir == 'desc' ? '<i class="icon-arrow-up"></i>' : '<i class="icon-arrow-down"></i>') : '')."</th>\n";
} else
@ -215,6 +215,7 @@ class SeedDMS_View_ObjectCheck extends SeedDMS_Bootstrap_Style {
$user = $this->params['user'];
$folder = $this->params['folder'];
$nofilesizeversions = $this->params['nofilesizeversions'];
$setfilesize = $this->params['setfilesize'];
$this->contentHeading(getMLText("missing_filesize"));
if($nofilesizeversions) {
@ -351,6 +352,74 @@ class SeedDMS_View_ObjectCheck extends SeedDMS_Bootstrap_Style {
}
} /* }}} */
function listProcessesWithoutUserGroup($process, $ug) { /* {{{ */
$dms = $this->params['dms'];
$user = $this->params['user'];
$folder = $this->params['folder'];
$processwithoutusergroup = $this->params['processwithoutusergroup'];
$cachedir = $this->params['cachedir'];
$previewwidth = $this->params['previewWidthList'];
$previewconverters = $this->params['previewconverters'];
$timeout = $this->params['timeout'];
$previewer = new SeedDMS_Preview_Previewer($cachedir, $previewwidth, $timeout);
$previewer->setConverters($previewconverters);
$this->contentHeading(getMLText($process."s_without_".$ug));
if($processwithoutusergroup[$process][$ug]) {
print "<table class=\"table table-condensed\">";
print "<thead>\n<tr>\n";
print "<th>".getMLText("process")."</th>\n";
print "<th>".getMLText("user_group")."</th>\n";
print "<th>".getMLText("document")."</th>\n";
print "<th>".getMLText("version")."</th>\n";
print "<th>".getMLText("userid_groupid")."</th>\n";
print "</tr>\n</thead>\n<tbody>\n";
foreach($processwithoutusergroup[$process][$ug] as $rec) {
print "<tr>";
print "<td>".$process."</td>";
print "<td>".$ug."</td>";
print "<td><a href=\"../out/out.ViewDocument.php?documentid=".$rec['documentID']."\">".$rec['name']."</a></td><td>".$rec['version']."</td>";
print "<td>".$rec['required']."</td>";
print "</tr>\n";
}
print "</tbody></table>\n";
}
} /* }}} */
function listReviewWithoutUser() { /* {{{ */
$this->listProcessesWithoutUserGroup('review', 'user');
} /* }}} */
function listReviewWithoutGroup() { /* {{{ */
$this->listProcessesWithoutUserGroup('review', 'group');
} /* }}} */
function listApprovalWithoutUser() { /* {{{ */
$this->listProcessesWithoutUserGroup('approval', 'user');
} /* }}} */
function listApprovalWithoutGroup() { /* {{{ */
$this->listProcessesWithoutUserGroup('approval', 'group');
} /* }}} */
function listReceiptWithoutUser() { /* {{{ */
$this->listProcessesWithoutUserGroup('receipt', 'user');
} /* }}} */
function listReceiptWithoutGroup() { /* {{{ */
$this->listProcessesWithoutUserGroup('receipt', 'group');
} /* }}} */
function listRevisionWithoutUser() { /* {{{ */
$this->listProcessesWithoutUserGroup('revision', 'user');
} /* }}} */
function listRevisionWithoutGroup() { /* {{{ */
$this->listProcessesWithoutUserGroup('revision', 'group');
} /* }}} */
function js() { /* {{{ */
$user = $this->params['user'];
$folder = $this->params['folder'];
@ -388,6 +457,7 @@ $(document).ready( function() {
$duplicateversions = $this->params['duplicateversions'];
$docsinrevision = $this->params['docsinrevision'];
$docsinreception = $this->params['docsinreception'];
$processwithoutusergroup = $this->params['processwithoutusergroup'];
$repair = $this->params['repair'];
$unlink = $this->params['unlink'];
$setfilesize = $this->params['setfilesize'];
@ -420,6 +490,13 @@ $(document).ready( function() {
echo '<li class=""><a data-href="#inrevision_no_access" data-action="listDocsInRevisionNoAccess"><span class="badge '.($docsinrevision ? 'badge-info ' : '').'badge-right">'.count($docsinrevision).'</span>'.getMLText("docs_in_revision_no_access").'</a></li>';
echo '<li class=""><a data-href="#inreception_no_access" data-action="listDocsInReceptionNoAccess"><span class="badge '.($docsinreception ? 'badge-info ' : '').'badge-right">'.count($docsinreception).'</span>'.getMLText("docs_in_reception_no_access").'</a></li>';
echo '</ul>';
echo '<ul class="nav nav-list bs-docs-sidenav _affix">';
foreach(array('review', 'approval', 'receipt', 'revision') as $process) {
foreach(array('user', 'group') as $ug) {
echo '<li class=""><a data-href="#'.$process.'_without_'.$ug.'" data-action="list'.ucfirst($process).'Without'.ucfirst($ug).'"><span class="badge '.($processwithoutusergroup[$process][$ug] ? 'badge-info ' : '').'badge-right">'.count($processwithoutusergroup[$process][$ug]).'</span>'.getMLText($process."s_without_".$ug).'</a></li>';
}
}
echo '</ul>';
echo '</div>';
echo '<div class="span9">';

View File

@ -42,20 +42,25 @@ class SeedDMS_View_RemoveUser extends SeedDMS_Bootstrap_Style {
$this->contentStart();
$this->pageNavigation(getMLText("admin_tools"), "admin_tools");
$this->contentHeading(getMLText("rm_user"));
$this->contentContainerStart();
?>
<form action="../op/op.UsrMgr.php" name="form1" method="post">
<div class="alert">
<?php printMLText("confirm_rm_user", array ("username" => htmlspecialchars($rmuser->getFullName())));?>
</div>
<?php
$this->contentContainerStart();
?>
<form class="form-horizontal" action="../op/op.UsrMgr.php" name="form1" method="post">
<input type="hidden" name="userid" value="<?php print $rmuser->getID();?>">
<input type="hidden" name="action" value="removeuser">
<?php echo createHiddenFieldWithKey('removeuser'); ?>
<p>
<?php printMLText("confirm_rm_user", array ("username" => htmlspecialchars($rmuser->getFullName())));?>
</p>
<p>
<div class="control-group">
<label class="control-label" for="assignTo">
<?php printMLText("assign_user_property_to"); ?>:
<select name="assignTo">
</label>
<div class="controls">
<select name="assignTo" class="chzn-select">
<?php
foreach ($allusers as $currUser) {
if ($currUser->isGuest() || ($currUser->getID() == $rmuser->getID()) )
@ -66,9 +71,14 @@ class SeedDMS_View_RemoveUser extends SeedDMS_Bootstrap_Style {
}
?>
</select>
</p>
</div>
</div>
<p><button type="submit" class="btn"><i class="icon-remove"></i> <?php printMLText("rm_user");?></button></p>
<div class="control-group">
<div class="controls">
<button type="submit" class="btn"><i class="icon-remove"></i> <?php printMLText("rm_user");?></button>
</div>
</div>
</form>
<?php

View File

@ -0,0 +1,224 @@
<?php
/**
* Implementation of RemoveUserFromProcesses 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 RemoveUserFromProcesses view
*
* @category DMS
* @package SeedDMS
* @author Uwe Steinmann <uwe@steinmann.cx>
* @copyright Copyright (C) 2017 Uwe Steinmann
* @version Release: @package_version@
*/
class SeedDMS_View_RemoveUserFromProcesses extends SeedDMS_Bootstrap_Style {
function show() { /* {{{ */
$dms = $this->params['dms'];
$user = $this->params['user'];
$rmuser = $this->params['rmuser'];
$this->htmlStartPage(getMLText("admin_tools"));
$this->globalNavigation();
$this->contentStart();
$this->pageNavigation(getMLText("admin_tools"), "admin_tools");
$this->contentHeading(getMLText("rm_user_from_processes"));
?>
<div class="alert">
<?php printMLText("confirm_rm_user_from_processes", array ("username" => htmlspecialchars($rmuser->getFullName())));?>
</div>
<?php
$this->contentContainerStart();
?>
<form class="form-horizontal" action="../op/op.UsrMgr.php" name="form1" method="post">
<input type="hidden" name="userid" value="<?php print $rmuser->getID();?>">
<input type="hidden" name="action" value="removefromprocesses">
<?php echo createHiddenFieldWithKey('removefromprocesses'); ?>
<?php
$reviewStatus = $rmuser->getReviewStatus();
$tmpr = array();
foreach($reviewStatus['indstatus'] as $ri) {
if(isset($tmpr[$ri['status']]))
$tmpr[$ri['status']][] = $ri;
else
$tmpr[$ri['status']] = array($ri);
}
$approvalStatus = $rmuser->getApprovalStatus();
$tmpa = array();
foreach($approvalStatus['indstatus'] as $ai) {
if(isset($tmpa[$ai['status']]))
$tmpa[$ai['status']][] = $ai;
else
$tmpa[$ai['status']] = array($ai);
}
$receiptStatus = $rmuser->getReceiptStatus();
$tmpb = array();
foreach($receiptStatus['indstatus'] as $ai) {
if(isset($tmpb[$ai['status']]))
$tmpb[$ai['status']][] = $ai;
else
$tmpb[$ai['status']] = array($ai);
}
$revisionStatus = $rmuser->getRevisionStatus();
$tmpc = array();
foreach($revisionStatus['indstatus'] as $ai) {
if(isset($tmpc[$ai['status']]))
$tmpc[$ai['status']][] = $ai;
else
$tmpc[$ai['status']] = array($ai);
}
?>
<?php if(isset($tmpr["0"])) { ?>
<div class="control-group">
<div class="controls">
<label class="checkbox">
<input type="checkbox" name="status[review][]" value="0" checked> <?php echo getMLText('reviews_not_touched', array('no_reviews' => count($tmpr["0"]))); ?>
</label>
</div>
</div>
<?php } ?>
<?php if(isset($tmpr["1"])) { ?>
<div class="control-group">
<div class="controls">
<label class="checkbox">
<input type="checkbox" name="status[review][]" value="1"> <?php echo getMLText('reviews_accepted', array('no_reviews' => count($tmpr["1"]))); ?><br />
</label>
</div>
</div>
<?php } ?>
<?php if(isset($tmpr["-1"])) { ?>
<div class="control-group">
<div class="controls">
<label class="checkbox">
<input type="checkbox" name="status[review][]" value="-1"> <?php echo getMLText('reviews_rejected', array('no_reviews' => count($tmpr["-1"]))); ?><br />
</label>
</div>
</div>
<?php } ?>
<?php if(isset($tmpa["0"])) { ?>
<div class="control-group">
<div class="controls">
<label class="checkbox">
<input type="checkbox" name="status[approval][]" value="0" checked> <?php echo getMLText('approvals_not_touched', array('no_approvals' => count($tmpa["0"]))); ?>
</label>
</div>
</div>
<?php } ?>
<?php if(isset($tmpa["1"])) { ?>
<div class="control-group">
<div class="controls">
<label class="checkbox">
<input type="checkbox" name="status[approval][]" value="1"> <?php echo getMLText('approvals_accepted', array('no_approvals' => count($tmpa["1"]))); ?><br />
</label>
</div>
</div>
<?php } ?>
<?php if(isset($tmpa["-1"])) { ?>
<div class="control-group">
<div class="controls">
<label class="checkbox">
<input type="checkbox" name="status[approval][]" value="-1"> <?php echo getMLText('approvals_rejected', array('no_approvals' => count($tmpa["-1"]))); ?><br />
</label>
</div>
</div>
<?php } ?>
<?php if(isset($tmpb["0"])) { ?>
<div class="control-group">
<div class="controls">
<label class="checkbox">
<input type="checkbox" name="status[receipt][]" value="0" checked> <?php echo getMLText('receipts_not_touched', array('no_receipts' => count($tmpb["0"]))); ?>
</label>
</div>
</div>
<?php } ?>
<?php if(isset($tmpb["1"])) { ?>
<div class="control-group">
<div class="controls">
<label class="checkbox">
<input type="checkbox" name="status[receipt][]" value="1"> <?php echo getMLText('receipts_accepted', array('no_receipts' => count($tmpb["1"]))); ?><br />
</label>
</div>
</div>
<?php } ?>
<?php if(isset($tmpb["-1"])) { ?>
<div class="control-group">
<div class="controls">
<label class="checkbox">
<input type="checkbox" name="status[receipt][]" value="-1"> <?php echo getMLText('receipts_rejected', array('no_receipts' => count($tmpb["-1"]))); ?><br />
</label>
</div>
</div>
<?php } ?>
<?php if(isset($tmpc["0"])) { ?>
<div class="control-group">
<div class="controls">
<label class="checkbox">
<input type="checkbox" name="status[revision][]" value="0" checked> <?php echo getMLText('revisions_not_touched', array('no_revisions' => count($tmpc["0"]))); ?>
</label>
</div>
</div>
<?php } ?>
<?php if(isset($tmpc["-3"])) { ?>
<div class="control-group">
<div class="controls">
<label class="checkbox">
<input type="checkbox" name="status[revision][]" value="-3" checked> <?php echo getMLText('revisions_pending', array('no_revisions' => count($tmpc["-3"]))); ?>
</label>
</div>
</div>
<?php } ?>
<?php if(isset($tmpc["1"])) { ?>
<div class="control-group">
<div class="controls">
<label class="checkbox">
<input type="checkbox" name="status[revision][]" value="1"> <?php echo getMLText('revisions_accepted', array('no_revisions' => count($tmpc["1"]))); ?><br />
</label>
</div>
</div>
<?php } ?>
<?php if(isset($tmpc["-1"])) { ?>
<div class="control-group">
<div class="controls">
<label class="checkbox">
<input type="checkbox" name="status[revision][]" value="-1"> <?php echo getMLText('revisions_rejected', array('no_revisions' => count($tmpc["-1"]))); ?><br />
</label>
</div>
</div>
<?php } ?>
<div class="control-group">
<div class="controls">
<button type="submit" class="btn"><i class="icon-remove"></i> <?php printMLText("rm_user_from_processes");?></button>
</div>
</div>
</form>
<?php
$this->contentContainerEnd();
$this->contentEnd();
$this->htmlEndPage();
} /* }}} */
}
?>

View File

@ -128,4 +128,3 @@ class SeedDMS_View_SearchFulltext extends SeedDMS_Bootstrap_Style {
} /* }}} */
}
?>

View File

@ -45,6 +45,7 @@ class SeedDMS_View_Session extends SeedDMS_Bootstrap_Style {
$user = $this->params['user'];
$sessionmgr = new SeedDMS_SessionMgr($dms->getDB());
/* Get only sessions which has been active in the last 3600 sec. */
$sessions = $sessionmgr->getLastAccessedSessions(date('Y-m-d H:i:s', time()-3600));
if ($user->isGuest() || count($sessions) == 0) {
@ -58,7 +59,7 @@ class SeedDMS_View_Session extends SeedDMS_Bootstrap_Style {
foreach($sessions as $session) {
if($sesuser = $dms->getUser($session->getUser()))
if(!$sesuser->isHidden())
$content .= " <li><a _href=\"\"><i class=\"icon-user\"></i> ".htmlspecialchars($sesuser->getFullName())." ".getReadableDuration(time()-$session->getLastAccess())."</a></li>\n";
$content .= " <li><a _href=\"\"><i class=\"icon-user\"></i> ".htmlspecialchars($sesuser->getFullName()).($user->isAdmin() ? " (".getReadableDuration(time()-$session->getLastAccess()).")" : "")."</a></li>\n";
}
$content .= " </ul>\n";
$content .= " </li>\n";

View File

@ -43,6 +43,7 @@ class SeedDMS_View_SetReviewersApprovers extends SeedDMS_Bootstrap_Style {
$enableselfrevapp = $this->params['enableselfrevapp'];
$overallStatus = $content->getStatus();
$owner = $document->getOwner();
$this->htmlStartPage(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))));
$this->globalNavigation($folder);
@ -92,6 +93,11 @@ class SeedDMS_View_SetReviewersApprovers extends SeedDMS_Bootstrap_Style {
<select class="chzn-select span9" name="indReviewers[]" multiple="multiple" data-placeholder="<?php printMLText('select_ind_reviewers'); ?>" data-no_results_text="<?php printMLText('unknown_owner'); ?>">
<?php
if($user->getID() != $owner->getID()) {
$res=$owner->getMandatoryReviewers();
if($user->isAdmin())
$res = array();
} else
$res=$user->getMandatoryReviewers();
foreach ($docAccess["users"] as $usr) {
$mandatory=false;
@ -100,7 +106,7 @@ class SeedDMS_View_SetReviewersApprovers extends SeedDMS_Bootstrap_Style {
if ($mandatory){
print "<option value=\"".$usr->getID()."\" disabled=\"disabled\">". htmlspecialchars($usr->getLogin() . " - ". $usr->getFullName())." &lt;".$usr->getEmail()."&gt;</option>";
print "<input id='revInd".$usr->getID()."' type='hidden' name='indReviewers[]' value='". $usr->getID() ."'>";
// print "<input id='revInd".$usr->getID()."' type='hidden' name='indReviewers[]' value='". $usr->getID() ."'>";
} elseif (isset($reviewIndex["i"][$usr->getID()])) {
@ -134,6 +140,24 @@ class SeedDMS_View_SetReviewersApprovers extends SeedDMS_Bootstrap_Style {
?>
</select>
<?php
/* List all mandatory reviewers */
if($res) {
$tmp = array();
foreach ($res as $r) {
if($r['reviewerUserID'] > 0) {
$u = $dms->getUser($r['reviewerUserID']);
$tmp[] = htmlspecialchars($u->getFullName().' ('.$u->getLogin().')');
}
}
if($tmp) {
echo '<div class="mandatories"><span>'.getMLText('mandatory_reviewers').':</span> ';
echo implode(', ', $tmp);
echo "</div>\n";
}
}
?>
<div class="cbSelectTitle"><?php printMLText("groups")?>:</div>
<select class="chzn-select span9" name="grpReviewers[]" multiple="multiple" data-placeholder="<?php printMLText('select_grp_reviewers'); ?>" data-no_results_text="<?php printMLText('unknown_group'); ?>">
<?php
@ -145,7 +169,7 @@ class SeedDMS_View_SetReviewersApprovers extends SeedDMS_Bootstrap_Style {
if ($mandatory){
print "<option value=\"".$group->getID()."\" disabled='disabled'>".htmlspecialchars($group->getName())."</option>";
print "<input id='revGrp".$group->getID()."' type='hidden' name='grpReviewers[]' value='". $group->getID() ."' />";
// print "<input id='revGrp".$group->getID()."' type='hidden' name='grpReviewers[]' value='". $group->getID() ."' />";
} elseif (isset($reviewIndex["g"][$group->getID()])) {
@ -166,7 +190,24 @@ class SeedDMS_View_SetReviewersApprovers extends SeedDMS_Bootstrap_Style {
}
?>
</select>
<?php } ?>
<?php
/* List all mandatory groups of reviewers */
if($res) {
$tmp = array();
foreach ($res as $r) {
if($r['reviewerGroupID'] > 0) {
$u = $dms->getGroup($r['reviewerGroupID']);
$tmp[] = htmlspecialchars($u->getName());
}
}
if($tmp) {
echo '<div class="mandatories"><span>'.getMLText('mandatory_reviewergroups').':</span> ';
echo implode(', ', $tmp);
echo "</div>\n";
}
}
}
?>
<?php $this->contentSubHeading(getMLText("update_approvers"));?>
@ -174,8 +215,12 @@ class SeedDMS_View_SetReviewersApprovers extends SeedDMS_Bootstrap_Style {
<select class="chzn-select span9" name="indApprovers[]" multiple="multiple" data-placeholder="<?php printMLText('select_ind_approvers'); ?>" data-no_results_text="<?php printMLText('unknown_owner'); ?>">
<?php
if($user->getID() != $owner->getID()) {
$res=$owner->getMandatoryApprovers();
if($user->isAdmin())
$res = array();
} else
$res=$user->getMandatoryApprovers();
foreach ($docAccess["users"] as $usr) {
$mandatory=false;
@ -184,7 +229,7 @@ class SeedDMS_View_SetReviewersApprovers extends SeedDMS_Bootstrap_Style {
if ($mandatory){
print "<option value='". $usr->getID() ."' disabled='disabled'>". htmlspecialchars($usr->getLogin() . " - ". $usr->getFullName())." &lt;".$usr->getEmail()."&gt;</option>";
print "<input id='appInd".$usr->getID()."' type='hidden' name='indApprovers[]' value='". $usr->getID() ."'>";
// print "<input id='appInd".$usr->getID()."' type='hidden' name='indApprovers[]' value='". $usr->getID() ."'>";
} elseif (isset($approvalIndex["i"][$usr->getID()])) {
@ -207,6 +252,23 @@ class SeedDMS_View_SetReviewersApprovers extends SeedDMS_Bootstrap_Style {
}
?>
</select>
<?php
if($res) {
$tmp = array();
foreach ($res as $r) {
if($r['approverUserID'] > 0) {
$u = $dms->getUser($r['approverUserID']);
$tmp[] = htmlspecialchars($u->getFullName().' ('.$u->getLogin().')');
}
}
if($tmp) {
echo '<div class="mandatories"><span>'.getMLText('mandatory_approvers').':</span> ';
echo implode(', ', $tmp);
echo "</div>\n";
}
}
?>
<div class="cbSelectTitle"><?php printMLText("groups")?>:</div>
<div class="cbSelectTitle"><?php printMLText("indivіduals_in_groups")?>:</div>
<select class="chzn-select span9" name="grpIndApprovers[]" multiple="multiple" data-placeholder="<?php printMLText('select_grp_ind_approvers'); ?>" data-no_results_text="<?php printMLText('unknown_owner'); ?>">
@ -230,7 +292,7 @@ class SeedDMS_View_SetReviewersApprovers extends SeedDMS_Bootstrap_Style {
if ($mandatory){
print "<option type='checkbox' checked='checked' disabled='disabled'>".htmlspecialchars($group->getName())."</option>";
print "<input id='appGrp".$group->getID()."' type='hidden' name='grpApprovers[]' value='". $group->getID() ."'>";
// print "<input id='appGrp".$group->getID()."' type='hidden' name='grpApprovers[]' value='". $group->getID() ."'>";
} elseif (isset($approvalIndex["g"][$group->getID()])) {
@ -252,7 +314,23 @@ class SeedDMS_View_SetReviewersApprovers extends SeedDMS_Bootstrap_Style {
}
?>
</select>
<?php
/* List all mandatory groups of approvers */
if($res) {
$tmp = array();
foreach ($res as $r) {
if($r['approverGroupID'] > 0) {
$u = $dms->getGroup($r['approverGroupID']);
$tmp[] = htmlspecialchars($u->getName());
}
}
if($tmp) {
echo '<div class="mandatories"><span>'.getMLText('mandatory_approvergroups').':</span> ';
echo implode(', ', $tmp);
echo "</div>\n";
}
}
?>
<p>
<input type='hidden' name='documentid' value='<?php echo $document->getID() ?>'/>
<input type='hidden' name='version' value='<?php echo $content->getVersion() ?>'/>

View File

@ -272,6 +272,10 @@ if(!is_writeable($settings->_configFilePath)) {
<tr title="<?php printMLText("settings_enableMenuTasks_desc");?>">
<td><?php printMLText("settings_enableMenuTasks");?>:</td>
<td><input name="enableMenuTasks" type="checkbox" <?php if ($settings->_enableMenuTasks) echo "checked" ?> /></td>
</tr>
<tr title="<?php printMLText("settings_enableDropFolderList_desc");?>">
<td><?php printMLText("settings_enableDropFolderList");?>:</td>
<td><input name="enableDropFolderList" type="checkbox" <?php if ($settings->_enableDropFolderList) echo "checked" ?> /></td>
</tr>
<tr title="<?php printMLText("settings_enableSessionList_desc");?>">
<td><?php printMLText("settings_enableSessionList");?>:</td>

View File

@ -45,7 +45,6 @@ class SeedDMS_View_SubstituteUser extends SeedDMS_Bootstrap_Style {
$this->pageNavigation(getMLText("admin_tools"), "admin_tools");
$this->contentHeading(getMLText("substitute_user"));
$this->contentContainerStart();
?>
<table class="table table-condensed">
<thead>
@ -54,7 +53,7 @@ class SeedDMS_View_SubstituteUser extends SeedDMS_Bootstrap_Style {
<tbody>
<?php
foreach ($allUsers as $currUser) {
echo "<tr>";
echo "<tr".($currUser->isDisabled() ? " class=\"error\"" : "").">";
echo "<td>";
echo htmlspecialchars($currUser->getFullName())." (".htmlspecialchars($currUser->getLogin()).")<br />";
echo "<small>".htmlspecialchars($currUser->getComment())."</small>";
@ -97,11 +96,9 @@ class SeedDMS_View_SubstituteUser extends SeedDMS_Bootstrap_Style {
}
echo "</tbody>";
echo "</table>";
$this->contentContainerEnd();
$this->contentEnd();
$this->htmlEndPage();
} /* }}} */
}
?>

View File

@ -256,6 +256,8 @@ div.timeline-event-selected {
<input type="checkbox" name="skip[]" value="status_change_1" <?php echo ($skip && in_array('status_change_1', $skip)) ? 'checked' : '' ?>> <?php printMLText('timeline_skip_status_change_1') ?><br />
<input type="checkbox" name="skip[]" value="status_change_2" <?php echo ($skip && in_array('status_change_2', $skip)) ? 'checked' : '' ?>> <?php printMLText('timeline_skip_status_change_2') ?><br />
<input type="checkbox" name="skip[]" value="status_change_3" <?php echo ($skip && in_array('status_change_3', $skip)) ? 'checked' : '' ?>> <?php printMLText('timeline_skip_status_change_3') ?><br />
<input type="checkbox" name="skip[]" value="status_change_4" <?php echo ($skip && in_array('status_change_4', $skip)) ? 'checked' : '' ?>> <?php printMLText('timeline_skip_status_change_4') ?><br />
<input type="checkbox" name="skip[]" value="status_change_5" <?php echo ($skip && in_array('status_change_5', $skip)) ? 'checked' : '' ?>> <?php printMLText('timeline_skip_status_change_5') ?><br />
<input type="checkbox" name="skip[]" value="status_change_-1" <?php echo ($skip && in_array('status_change_-1', $skip)) ? 'checked' : '' ?>> <?php printMLText('timeline_skip_status_change_-1') ?><br />
<input type="checkbox" name="skip[]" value="status_change_-3" <?php echo ($skip && in_array('status_change_-3', $skip)) ? 'checked' : '' ?>> <?php printMLText('timeline_skip_status_change_-3') ?><br />
</div>

View File

@ -0,0 +1,90 @@
<?php
/**
* Implementation of TransferObjects 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 TransferObjects 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_TransferObjects extends SeedDMS_Bootstrap_Style {
function show() { /* {{{ */
$dms = $this->params['dms'];
$user = $this->params['user'];
$rmuser = $this->params['rmuser'];
$allusers = $this->params['allusers'];
$this->htmlStartPage(getMLText("admin_tools"));
$this->globalNavigation();
$this->contentStart();
$this->pageNavigation(getMLText("admin_tools"), "admin_tools");
$this->contentHeading(getMLText("transfer_objects"));
?>
<div class="alert">
<?php printMLText("confirm_transfer_objects", array ("username" => htmlspecialchars($rmuser->getFullName())));?>
</div>
<?php
$this->contentContainerStart();
?>
<form class="form-horizontal" action="../op/op.UsrMgr.php" name="form1" method="post">
<input type="hidden" name="userid" value="<?php print $rmuser->getID();?>">
<input type="hidden" name="action" value="transferobjects">
<?php echo createHiddenFieldWithKey('transferobjects'); ?>
<div class="control-group">
<label class="control-label" for="assignTo">
<?php printMLText("transfer_objects_to_user"); ?>:
</label>
<div class="controls">
<select name="assignTo" class="chzn-select">
<?php
foreach ($allusers as $currUser) {
if ($currUser->isGuest() || ($currUser->getID() == $rmuser->getID()) )
continue;
if ($rmuser && $currUser->getID()==$rmuser->getID()) $selected=$count;
print "<option value=\"".$currUser->getID()."\">" . htmlspecialchars($currUser->getLogin()." - ".$currUser->getFullName());
}
?>
</select>
</div>
</div>
<div class="control-group">
<div class="controls">
<button type="submit" class="btn"><i class="icon-share-alt"></i> <?php printMLText("transfer_objects");?></button>
</div>
</div>
</form>
<?php
$this->contentContainerEnd();
$this->contentEnd();
$this->htmlEndPage();
} /* }}} */
}
?>

View File

@ -44,7 +44,6 @@ class SeedDMS_View_UserList extends SeedDMS_Bootstrap_Style {
$this->contentStart();
$this->pageNavigation("", "admin_tools");
$this->contentHeading(getMLText("user_list"));
$this->contentContainerStart();
$sessionmgr = new SeedDMS_SessionMgr($dms->getDB());
?>
@ -53,7 +52,7 @@ class SeedDMS_View_UserList extends SeedDMS_Bootstrap_Style {
<thead><tr><th></th><th><?php printMLText('name'); ?></th><th><?php printMLText('groups'); ?></th><th><?php printMLText('role'); ?></th><th><?php printMLText('discspace'); ?></th><th><?php printMLText('authentication'); ?></th><th></th></tr></thead><tbody>
<?php
foreach ($allUsers as $currUser) {
echo "<tr>";
echo "<tr".($currUser->isDisabled() ? " class=\"error\"" : "").">";
echo "<td>";
if ($currUser->hasImage())
print "<img width=\"100\" src=\"".$this->html_url('UserImage', array('userid'=>$currUser->getId()))."\" >";
@ -116,7 +115,6 @@ class SeedDMS_View_UserList extends SeedDMS_Bootstrap_Style {
}
echo "</tbody></table>";
$this->contentContainerEnd();
$this->contentEnd();
$this->htmlEndPage();
} /* }}} */

View File

@ -96,39 +96,80 @@ $(document).ready( function() {
$this->contentHeading(getMLText("user_info"));
echo "<table class=\"table table-condensed\">\n";
echo "<tr><td>".getMLText('discspace')."</td><td>";
if($quota) {
$qt = $seluser->getQuota() ? $seluser->getQuota() : $quota;
echo SeedDMS_Core_File::format_filesize($seluser->getUsedDiskSpace())." / ".SeedDMS_Core_File::format_filesize($qt)."<br />";
echo $this->getProgressBar($seluser->getUsedDiskSpace(), $qt);
} else {
echo SeedDMS_Core_File::format_filesize($seluser->getUsedDiskSpace())."<br />";
}
echo "</td></tr>\n";
$documents = $seluser->getDocuments();
echo "<tr><td>".getMLText('documents')."</td><td>".count($documents)."</td></tr>\n";
$documents = $seluser->getDocumentsLocked();
echo "<tr><td>".getMLText('documents_locked')."</td><td>".count($documents)."</td></tr>\n";
$categories = $seluser->getKeywordCategories();
echo "<tr><td>".getMLText('personal_default_keywords')."</td><td>".count($categories)."</td></tr>\n";
$dnot = $seluser->getNotifications(T_DOCUMENT);
echo "<tr><td>".getMLText('documents_with_notification')."</td><td>".count($dnot)."</td></tr>\n";
$fnot = $seluser->getNotifications(T_FOLDER);
echo "<tr><td>".getMLText('folders_with_notification')."</td><td>".count($fnot)."</td></tr>\n";
if($workflowmode == "traditional") {
$reviewStatus = $seluser->getReviewStatus();
if($reviewStatus['indstatus']) {
$i = 0;
foreach($reviewStatus['indstatus'] as $rv) {
if($rv['status'] == 0) {
$i++;
$resArr = $dms->getDocumentList('ReviewByMe', $seluser);
if($resArr) {
foreach ($resArr as $res) {
$document = $dms->getDocument($res["id"]);
if($document->getAccessMode($user) >= M_READ && $document->getLatestContent()) {
$tasks['review'][] = array('id'=>$res['id'], 'name'=>$res['name']);
}
}
echo "<tr><td>".getMLText('pending_reviews')."</td><td>".$i."</td></tr>\n";
echo "<tr><td>".getMLText('pending_reviews')."</td><td>".count($tasks['review'])."</td></tr>\n";
}
}
if($workflowmode == "traditional" || $workflowmode == 'traditional_only_approval') {
$approvalStatus = $seluser->getApprovalStatus();
if($approvalStatus['indstatus']) {
$i = 0;
foreach($approvalStatus['indstatus'] as $rv) {
if($rv['status'] == 0) {
$i++;
$resArr = $dms->getDocumentList('ApproveByMe', $seluser);
if($resArr) {
foreach ($resArr as $res) {
$document = $dms->getDocument($res["id"]);
if($document->getAccessMode($user) >= M_READ && $document->getLatestContent()) {
$tasks['approval'][] = array('id'=>$res['id'], 'name'=>$res['name']);
}
}
echo "<tr><td>".getMLText('pending_approvals')."</td><td>".$i."</td></tr>\n";
echo "<tr><td>".getMLText('pending_approvals')."</td><td>".count($tasks['approval'])."</td></tr>\n";
}
$resArr = $seluser->isMandatoryReviewerOf();
if($resArr) {
echo "<tr><td>".getMLText('mandatory_reviewers')."</td><td>".count($resArr)."</td></tr>\n";
}
$resArr = $seluser->isMandatoryApproverOf();
if($resArr) {
echo "<tr><td>".getMLText('mandatory_approvers')."</td><td>".count($resArr)."</td></tr>\n";
}
}
$resArr = $dms->getDocumentList('ReceiptByMe', $seluser);
if($resArr) {
foreach ($resArr as $res) {
$document = $dms->getDocument($res["id"]);
if($document->getAccessMode($user) >= M_READ && $document->getLatestContent()) {
$tasks['receipt'][] = array('id'=>$res['id'], 'name'=>$res['name']);
}
}
echo "<tr><td>".getMLText('pending_receipt')."</td><td>".count($tasks['receipt'])."</td></tr>\n";
}
$resArr = $dms->getDocumentList('ReviseByMe', $seluser);
if($resArr) {
foreach ($resArr as $res) {
$document = $dms->getDocument($res["id"]);
if($document->getAccessMode($user) >= M_READ && $document->getLatestContent()) {
$tasks['revision'][] = array('id'=>$res['id'], 'name'=>$res['name']);
}
}
echo "<tr><td>".getMLText('pending_revision')."</td><td>".count($tasks['revision'])."</td></tr>\n";
}
if($workflowmode == 'advanced') {
$workflows = $seluser->getWorkflowsInvolved();
echo "<tr><td>".getMLText('workflows_involded')."</td><td>".count($workflows)."</td></tr>\n";
$workflowStatus = $seluser->getWorkflowStatus();
if($workflowStatus['u'])
echo "<tr><td>".getMLText('pending_workflows')."</td><td>".count($workflowStatus['u'])."</td></tr>\n";
@ -141,8 +182,37 @@ $(document).ready( function() {
// echo "<tr><td>".getMLText('network_drive')."</td><td><a href=\"http".((isset($_SERVER['HTTPS']) && (strcmp($_SERVER['HTTPS'],'off')!=0)) ? "s" : "")."://".$_SERVER['HTTP_HOST'].$settings->_httpRoot.'checkout/'.preg_replace('/[^A-Za-z0-9_-]/', '', $seluser->getLogin())."\">".preg_replace('/[^A-Za-z0-9_-]/', '', $seluser->getLogin())."</a></td></tr>\n";
echo "</table>";
}
} /* }}} */
function actionmenu() { /* {{{ */
$dms = $this->params['dms'];
$user = $this->params['user'];
$seluser = $this->params['seluser'];
$quota = $this->params['quota'];
$workflowmode = $this->params['workflowmode'];
$undeluserids = $this->params['undeluserids'];
if($seluser) {
?>
<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
if(!in_array($seluser->getID(), $undeluserids) && $this->check_access('RemoveUser')) {
echo '<li>'.$this->html_link('RemoveUser', array('userid'=>$seluser->getID()), array('class'=>''), '<i class="icon-remove"></i> '.getMLText("rm_user"), false)."</li>";
}
echo '<li><a href="../out/out.RemoveUserFromProcesses.php?userid='.$seluser->getID().'"><i class="icon-remove"></i> '.getMLText("rm_user_from_processes").'</a></li>';
echo '<li><a href="../out/out.TransferObjects.php?userid='.$seluser->getID().'"><i class="icon-share-alt"></i> '.getMLText("transfer_objects").'</a></li>';
if($user->isAdmin() && $seluser->getID() != $user->getID())
echo "<a class=\"btn btn-primary\" href=\"../op/op.SubstituteUser.php?userid=".((int) $seluser->getID())."&formtoken=".createFormKey('substituteuser')."\"><i class=\"icon-exchange\"></i> ".getMLText('substitute_user')."</a> ";
echo "<li><a href=\"../op/op.SubstituteUser.php?userid=".$seluser->getID()."&formtoken=".createFormKey('substituteuser')."\"><i class=\"icon-exchange\"></i> ".getMLText("substitute_user")."</a></li>\n";
?>
</ul>
</div>
<?php
}
} /* }}} */
@ -184,16 +254,6 @@ $(document).ready( function() {
}
?>
<table class="table-condensed">
<?php
if($currUser && !in_array($currUser->getID(), $undeluserids) && $this->check_access('RemoveUser')) {
?>
<tr>
<td></td>
<td><?php echo $this->html_link('RemoveUser', array('userid'=>$currUser->getID()), array('class'=>'btn'), '<i class="icon-remove"></i> '.getMLText("rm_user"), false); ?></td>
</tr>
<?php
}
?>
<tr>
<td><?php printMLText("user_login");?>:</td>
<td><input type="text" name="login" id="login" value="<?php print $currUser ? htmlspecialchars($currUser->getLogin()) : "";?>"></td>
@ -508,11 +568,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_user")?></option>
<option value="0"><?php echo getMLText("add_user")?></option>
@ -522,10 +578,10 @@ $(document).ready( function() {
}
?>
</select>
</div>
</div>
</form>
</div>
<?php if($accessop->check_view_access($this, array('action'=>'actionmenu'))) { ?>
<div class="ajax" style="margin-bottom: 15px;" data-view="UsrMgr" data-action="actionmenu" <?php echo ($seluser ? "data-query=\"userid=".$seluser->getID()."\"" : "") ?>></div>
<?php } ?>
<?php if($accessop->check_view_access($this, array('action'=>'info'))) { ?>
<div class="ajax" data-view="UsrMgr" data-action="info" <?php echo ($seluser ? "data-query=\"userid=".$seluser->getID()."\"" : "") ?>></div>
<?php } ?>

View File

@ -796,6 +796,7 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style {
foreach ($reviewStatus as $r) {
$required = null;
$is_reviewer = false;
$accesserr = '';
switch ($r["type"]) {
case 0: // Reviewer is an individual.
$required = $dms->getUser($r["required"]);
@ -803,7 +804,13 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style {
$reqName = getMLText("unknown_user")." '".$r["required"]."'";
}
else {
$reqName = htmlspecialchars($required->getFullName()." (".$required->getLogin().")");
$reqName = "<i class=\"icon-user\"></i> ".htmlspecialchars($required->getFullName()." (".$required->getLogin().")");
if($user->isAdmin()) {
if($document->getAccessMode($required) < M_READ || $latestContent->getAccessMode($required) < M_READ)
$accesserr = getMLText("access_denied");
elseif(is_object($required) && $required->isDisabled())
$accesserr = getMLText("login_disabled_title");
}
if($required->getId() == $user->getId()/* && ($user->getId() != $owner->getId() || $enableownerrevapp == 1)*/)
$is_reviewer = true;
}
@ -814,7 +821,12 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style {
$reqName = getMLText("unknown_group")." '".$r["required"]."'";
}
else {
$reqName = "<i>".htmlspecialchars($required->getName())."</i>";
$reqName = "<i class=\"icon-group\"></i> ".htmlspecialchars($required->getName());
if($user->isAdmin()) {
$grpusers = $required->getUsers();
if(!$grpusers)
$accesserr = getMLText("no_group_members");
}
if($required->isMember($user)/* && ($user->getId() != $owner->getId() || $enableownerrevapp == 1)*/)
$is_reviewer = true;
}
@ -836,6 +848,8 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style {
print "</td>\n";
print "<td>".getReviewStatusText($r["status"])."</td>\n";
print "<td><ul class=\"unstyled\">";
if($accesserr)
echo "<li><span class=\"alert alert-error\">".$accesserr."</span></li>";
if($accessop->mayReview($document)) {
if ($is_reviewer) {
@ -869,6 +883,7 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style {
foreach ($approvalStatus as $a) {
$required = null;
$is_approver = false;
$accesserr = '';
switch ($a["type"]) {
case 0: // Approver is an individual.
$required = $dms->getUser($a["required"]);
@ -876,7 +891,13 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style {
$reqName = getMLText("unknown_user")." '".$a["required"]."'";
}
else {
$reqName = htmlspecialchars($required->getFullName()." (".$required->getLogin().")");
$reqName = "<i class=\"icon-user\"></i> ".htmlspecialchars($required->getFullName()." (".$required->getLogin().")");
if($user->isAdmin()) {
if($document->getAccessMode($required) < M_READ || $latestContent->getAccessMode($required) < M_READ)
$accesserr = getMLText("access_denied");
elseif(is_object($required) && $required->isDisabled())
$accesserr = getMLText("login_disabled_title");
}
if($required->getId() == $user->getId())
$is_approver = true;
}
@ -887,7 +908,12 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style {
$reqName = getMLText("unknown_group")." '".$a["required"]."'";
}
else {
$reqName = "<i>".htmlspecialchars($required->getName())."</i>";
$reqName = "<i class=\"icon-group\"></i> ".htmlspecialchars($required->getName());
if($user->isAdmin()) {
$grpusers = $required->getUsers();
if(!$grpusers)
$accesserr = getMLText("no_group_members");
}
if($required->isMember($user)/* && ($user->getId() != $owner->getId() || $enableownerrevapp == 1)*/)
$is_approver = true;
}
@ -909,6 +935,8 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style {
echo "</td>\n";
print "<td>".getApprovalStatusText($a["status"])."</td>\n";
print "<td><ul class=\"unstyled\">";
if($accesserr)
echo "<li><span class=\"alert alert-error\">".$accesserr."</span></li>";
if($accessop->mayApprove($document)) {
if ($is_approver) {
@ -929,7 +957,7 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style {
print "</table>\n";
$this->contentContainerEnd();
if($user->isAdmin()) {
if($user->isAdmin() || $user->getId() == $document->getOwner()->getId()) {
?>
<div class="row-fluid">
<?php
@ -1198,13 +1226,16 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style {
switch ($r["type"]) {
case 0: // Recipient is an individual.
$required = $dms->getUser($r["required"]);
if($user->isAdmin() && ($document->getAccessMode($required) < M_READ || $latestContent->getAccessMode($required) < M_READ))
$accesserr = getMLText("access_denied");
if (!is_object($required)) {
$reqName = getMLText("unknown_user")." '".$r["required"]."'";
} else {
$reqName = "<i class=\"icon-user\"></i> ".htmlspecialchars($required->getFullName()." (".$required->getLogin().")");
if($user->isAdmin()) {
if($document->getAccessMode($required) < M_READ || $latestContent->getAccessMode($required) < M_READ)
$accesserr = getMLText("access_denied");
elseif(is_object($required) && $required->isDisabled())
$accesserr = getMLText("login_disabled_title");
}
else {
$reqName = htmlspecialchars($required->getFullName()." (".$required->getLogin().")");
}
if($r["required"] == $user->getId()/* && ($user->getId() != $owner->getId() || $enableownerreceipt == 1)*/)
$is_recipient = true;
@ -1215,7 +1246,12 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style {
$reqName = getMLText("unknown_group")." '".$r["required"]."'";
}
else {
$reqName = "<i>".htmlspecialchars($required->getName())."</i>";
$reqName = "<i class=\"icon-group\"></i> ".htmlspecialchars($required->getName());
if($user->isAdmin()) {
$grpusers = $required->getUsers();
if(!$grpusers)
$accesserr = getMLText("no_group_members");
}
if($required->isMember($user)/* && ($user->getId() != $owner->getId() || $enableownerreceipt == 1)*/)
$is_recipient = true;
}
@ -1254,16 +1290,16 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style {
</table>
<?php
$this->contentContainerEnd();
if($user->isAdmin()) {
if($user->isAdmin() || $user->getId() == $document->getOwner()->getId()) {
/* Do not count entries '-2' as they are removed userѕ */
$totalreceipts = $stat['-1'] + $stat['0'] + $stat['1'];
?>
<div class="row-fluid">
<div class="span12">
<div class="progress">
<div class="bar bar-success" style="width: <?php echo round($stat['1']/$totalreceipts*100); ?>%;"></div>
<div class="bar bar-success" style="width: <?php echo round($stat['1']/$totalreceipts*100); ?>%;"><?php echo ($stat['1'] ? $stat['1']."/".$totalreceipts : ''); ?></div>
<!-- div class="bar bar-warning" style="width: <?php echo round($stat['0']/$totalreceipts*100); ?>%;"></div -->
<div class="bar bar-danger" style="width: <?php echo round($stat['-1']/$totalreceipts*100); ?>%;"></div>
<div class="bar bar-danger" style="width: <?php echo round($stat['-1']/$totalreceipts*100); ?>%;"><?php echo ($stat['-1'] ? $stat['-1']."/".$totalreceipts : ''); ?></div>
</div>
</div>
</div>
@ -1317,14 +1353,20 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style {
foreach ($revisionStatus as $r) {
$required = null;
$is_recipient = false;
$accesserr = '';
switch ($r["type"]) {
case 0: // Reviewer is an individual.
$required = $dms->getUser($r["required"]);
if (!is_object($required)) {
$reqName = getMLText("unknown_user")." '".$r["required"]."'";
} else {
$reqName = "<i class=\"icon-user\"></i> ".htmlspecialchars($required->getFullName()." (".$required->getLogin().")");
if($user->isAdmin()) {
if($document->getAccessMode($required) < M_READ || $latestContent->getAccessMode($required) < M_READ)
$accesserr = getMLText("access_denied");
elseif(is_object($required) && $required->isDisabled())
$accesserr = getMLText("login_disabled_title");
}
else {
$reqName = htmlspecialchars($required->getFullName()." (".$required->getLogin().")");
}
if($r["required"] == $user->getId()/* && ($user->getId() != $owner->getId() || $enableownerrevapp == 1)*/)
$is_recipient = true;
@ -1335,7 +1377,7 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style {
$reqName = getMLText("unknown_group")." '".$r["required"]."'";
}
else {
$reqName = "<i>".htmlspecialchars($required->getName())."</i>";
$reqName = "<i class=\"icon-user\"></i> ".htmlspecialchars($required->getName());
if($required->isMember($user)/* && ($user->getId() != $owner->getId() || $enableownerrevapp == 1)*/)
$is_recipient = true;
}
@ -1350,7 +1392,8 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style {
print "<td>".htmlspecialchars($r["comment"])."</td>\n";
print "<td>".getRevisionStatusText($r["status"])."</td>\n";
print "<td><ul class=\"unstyled\">";
if($accesserr)
echo "<li><span class=\"alert alert-error\">".$accesserr."</span></li>";
if($accessop->mayRevise($document)) {
if ($is_recipient && $r["status"]==0) {
print "<li>".$this->html_link('ReviseDocument', array('documentid'=>$documentid, 'version'=>$latestContent->getVersion(), 'revisionid'=>$r['revisionID']), array('class'=>'btn btn-mini'), getMLText("add_revision"), false, true)."</li>";
@ -1366,7 +1409,7 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style {
</table>
<?php
$this->contentContainerEnd();
if($user->isAdmin()) {
if($user->isAdmin() || $user->getId() == $document->getOwner()->getId()) {
?>
<div class="row-fluid">
<div class="span12">

View File

@ -204,4 +204,3 @@ $(document).ready( function() {
} /* }}} */
}
?>

View File

@ -215,4 +215,3 @@ $(document).ready(function() {
} /* }}} */
}
?>

View File

@ -174,4 +174,3 @@ class SeedDMS_View_WorkflowSummary extends SeedDMS_Bootstrap_Style {
} /* }}} */
}
?>

View File

@ -0,0 +1,633 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
inkscape:export-ydpi="240.00000"
inkscape:export-xdpi="240.00000"
inkscape:export-filename="/home/jimmac/gfx/novell/pdes/trunk/docs/BIGmime-text.png"
sodipodi:docname="Gnome-x-office-document.svg"
inkscape:version="0.48.2 r9819"
sodipodi:version="0.32"
id="svg249"
height="48.000000px"
width="48.000000px"
inkscape:output_extension="org.inkscape.output.svg.inkscape"
version="1.1">
<defs
id="defs3">
<linearGradient
inkscape:collect="always"
id="linearGradient3656">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop3658" />
<stop
style="stop-color:#ffffff;stop-opacity:0;"
offset="1"
id="stop3660" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3656"
id="linearGradient6352"
gradientUnits="userSpaceOnUse"
x1="-26.753757"
y1="11.566258"
x2="-24.75"
y2="9.687501" />
<linearGradient
inkscape:collect="always"
id="linearGradient3520">
<stop
style="stop-color:#000000;stop-opacity:0.41295547"
offset="0"
id="stop3522" />
<stop
style="stop-color:#000000;stop-opacity:0;"
offset="1"
id="stop3524" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3520"
id="linearGradient6350"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.9223058,0,0,0.9185751,-92.447368,1.3256997)"
x1="-18.588562"
y1="11.052948"
x2="-28.789402"
y2="14.069944" />
<linearGradient
id="linearGradient3671">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop3673" />
<stop
id="stop3691"
offset="0.47533694"
style="stop-color:#ffffff;stop-opacity:1;" />
<stop
style="stop-color:#ffffff;stop-opacity:0;"
offset="1"
id="stop3675" />
</linearGradient>
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient3671"
id="radialGradient6348"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(0.4073362,-0.2798276,0.7510293,1.0932492,-115.18484,-8.4378699)"
cx="-26.305403"
cy="10.108011"
fx="-26.305403"
fy="10.108011"
r="7.0421038" />
<linearGradient
inkscape:collect="always"
id="linearGradient3741">
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="0"
id="stop3743" />
<stop
style="stop-color:#ffffff;stop-opacity:0;"
offset="1"
id="stop3745" />
</linearGradient>
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient3741"
id="radialGradient6346"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(1.8860258,0,0,1.1764706,-3.5441033,-4.2352941)"
cx="4"
cy="5.2999997"
fx="4"
fy="5.2999997"
r="17" />
<linearGradient
inkscape:collect="always"
id="linearGradient3613">
<stop
style="stop-color:#888a85;stop-opacity:1"
offset="0"
id="stop3615" />
<stop
style="stop-color:#babdb6;stop-opacity:1"
offset="1"
id="stop3617" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3613"
id="linearGradient6344"
gradientUnits="userSpaceOnUse"
gradientTransform="translate(-90,0)"
x1="-47.5"
y1="49.020683"
x2="-62.75"
y2="-22.502075" />
<linearGradient
id="linearGradient3683">
<stop
id="stop3685"
offset="0"
style="stop-color:#f6f6f5;stop-opacity:1;" />
<stop
id="stop3689"
offset="1"
style="stop-color:#d3d7cf;stop-opacity:1" />
</linearGradient>
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient3683"
id="radialGradient6342"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(3.9957492,0,0,1.9350367,0.62141,-31.167422)"
cx="-30.249996"
cy="35.357208"
fx="-30.249996"
fy="35.357208"
r="18.000002" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3702"
id="linearGradient6340"
gradientUnits="userSpaceOnUse"
x1="25.058096"
y1="47.027729"
x2="25.058096"
y2="39.999443" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient3688"
id="radialGradient6338"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(2.003784,0,0,1.4,-20.01187,-104.4)"
cx="4.9929786"
cy="43.5"
fx="4.9929786"
fy="43.5"
r="2.5" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient3688"
id="radialGradient6336"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(2.003784,0,0,1.4,27.98813,-17.4)"
cx="4.9929786"
cy="43.5"
fx="4.9929786"
fy="43.5"
r="2.5" />
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3702"
id="linearGradient6334"
gradientUnits="userSpaceOnUse"
x1="25.058096"
y1="47.027729"
x2="25.058096"
y2="39.999443" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient3688"
id="radialGradient6332"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(2.003784,0,0,1.4,-20.01187,-104.4)"
cx="4.9929786"
cy="43.5"
fx="4.9929786"
fy="43.5"
r="2.5" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient3688"
id="radialGradient6330"
gradientUnits="userSpaceOnUse"
gradientTransform="matrix(2.003784,0,0,1.4,27.98813,-17.4)"
cx="4.9929786"
cy="43.5"
fx="4.9929786"
fy="43.5"
r="2.5" />
<linearGradient
id="linearGradient4928">
<stop
style="stop-color:#fce94f;stop-opacity:1;"
offset="0"
id="stop4930" />
<stop
style="stop-color:#fce94f;stop-opacity:0;"
offset="1"
id="stop4932" />
</linearGradient>
<linearGradient
id="linearGradient3702">
<stop
style="stop-color:black;stop-opacity:0;"
offset="0"
id="stop3704" />
<stop
id="stop3710"
offset="0.5"
style="stop-color:black;stop-opacity:1;" />
<stop
style="stop-color:black;stop-opacity:0;"
offset="1"
id="stop3706" />
</linearGradient>
<linearGradient
inkscape:collect="always"
id="linearGradient3688">
<stop
style="stop-color:black;stop-opacity:1;"
offset="0"
id="stop3690" />
<stop
style="stop-color:black;stop-opacity:0;"
offset="1"
id="stop3692" />
</linearGradient>
</defs>
<sodipodi:namedview
inkscape:window-y="-3"
inkscape:window-x="-4"
inkscape:window-height="708"
inkscape:window-width="1024"
inkscape:document-units="px"
inkscape:grid-bbox="true"
showgrid="false"
inkscape:current-layer="layer6"
inkscape:cy="31.658889"
inkscape:cx="14.294603"
inkscape:zoom="4"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
borderopacity="0.25490196"
bordercolor="#666666"
pagecolor="#ffffff"
id="base"
inkscape:showpageshadow="false"
inkscape:window-maximized="1" />
<metadata
id="metadata4">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
<dc:subject>
<rdf:Bag>
<rdf:li>rich</rdf:li>
<rdf:li>text</rdf:li>
<rdf:li>document</rdf:li>
<rdf:li>office</rdf:li>
<rdf:li>word</rdf:li>
<rdf:li>write</rdf:li>
</rdf:Bag>
</dc:subject>
<cc:license
rdf:resource="" />
<dc:creator>
<cc:Agent>
<dc:title>Lapo Calamandrei</dc:title>
</cc:Agent>
</dc:creator>
<dc:source />
<dc:date />
<dc:rights>
<cc:Agent>
<dc:title />
</cc:Agent>
</dc:rights>
<dc:publisher>
<cc:Agent>
<dc:title />
</cc:Agent>
</dc:publisher>
<dc:identifier />
<dc:relation />
<dc:language />
<dc:coverage />
<dc:description />
<dc:contributor>
<cc:Agent>
<dc:title>Jakub Steiner</dc:title>
</cc:Agent>
</dc:contributor>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:groupmode="layer"
id="layer6"
inkscape:label="Shadow">
<g
style="display:inline"
id="g6083"
transform="translate(150,0)">
<rect
y="0"
x="-150"
height="48"
width="48"
id="rect6085"
style="opacity:0;fill:#000000;fill-opacity:1;stroke:none;display:inline" />
<g
id="g6087">
<g
style="opacity:0.65587045;display:inline"
id="g6089"
inkscape:label="Shadow"
transform="matrix(1.0464281,0,0,0.8888889,-151.18571,5.7222396)">
<g
id="g6091"
style="opacity:0.4"
transform="matrix(1.052632,0,0,1.285713,-1.263158,-13.42854)">
<rect
y="40"
x="38"
height="7"
width="5"
id="rect6093"
style="fill:url(#radialGradient6330);fill-opacity:1;stroke:none" />
<rect
transform="scale(-1,-1)"
y="-47"
x="-10"
height="7"
width="5"
id="rect6095"
style="fill:url(#radialGradient6332);fill-opacity:1;stroke:none" />
<rect
y="40"
x="10"
height="7.0000005"
width="28"
id="rect6097"
style="fill:url(#linearGradient6334);fill-opacity:1;stroke:none" />
</g>
</g>
<g
style="display:inline"
id="g6099"
inkscape:label="Shadow"
transform="matrix(0.9548466,0,0,0.5555562,-148.98776,19.888875)">
<g
id="g6101"
style="opacity:0.4"
transform="matrix(1.052632,0,0,1.285713,-1.263158,-13.42854)">
<rect
y="40"
x="38"
height="7"
width="5"
id="rect6103"
style="fill:url(#radialGradient6336);fill-opacity:1;stroke:none" />
<rect
transform="scale(-1,-1)"
y="-47"
x="-10"
height="7"
width="5"
id="rect6105"
style="fill:url(#radialGradient6338);fill-opacity:1;stroke:none" />
<rect
y="40"
x="10"
height="7.0000005"
width="28"
id="rect6107"
style="fill:url(#linearGradient6340);fill-opacity:1;stroke:none" />
</g>
</g>
<path
inkscape:connector-curvature="0"
style="fill:url(#radialGradient6342);fill-opacity:1;stroke:url(#linearGradient6344);stroke-width:1;stroke-miterlimit:4;display:inline"
d="M -141.47614,3.5 C -141.47614,3.5 -124,3.5 -122.5,3.5 C -118.62295,3.5729425 -116,6 -113.5,8.5 C -111,11 -108.89232,13.752625 -108.5,17.5 C -108.5,19 -108.5,42.476142 -108.5,42.476142 C -108.5,43.597359 -109.40264,44.5 -110.52385,44.5 L -141.47614,44.5 C -142.59736,44.5 -143.5,43.597359 -143.5,42.476142 L -143.5,5.523858 C -143.5,4.402641 -142.59736,3.5 -141.47614,3.5 z"
id="path6109"
sodipodi:nodetypes="ccsccccccc" />
<path
sodipodi:type="inkscape:offset"
inkscape:radius="-0.4861359"
inkscape:original="M 8.53125 3.5 C 7.410033 3.5 6.5 4.4100329 6.5 5.53125 L 6.5 42.46875 C 6.5 43.589967 7.4100329 44.5 8.53125 44.5 L 39.46875 44.5 C 40.589967 44.5 41.5 43.589966 41.5 42.46875 C 41.5 42.46875 41.5 19 41.5 17.5 C 41.5 16 41 13 39 11 C 37 9 36 8 34 6 C 32 4 29 3.5 27.5 3.5 C 26 3.5 8.5312499 3.5 8.53125 3.5 z "
style="opacity:0.68016196;fill:url(#radialGradient6346);fill-opacity:1;stroke:none;display:inline"
id="path6111"
d="M 8.53125,4 C 7.6730803,4 7,4.6730802 7,5.53125 L 7,42.46875 C 7,43.32692 7.6730802,44 8.53125,44 L 39.46875,44 C 40.326919,44 41,43.326918 41,42.46875 L 41,17.5 C 41,16.10803 40.513021,13.200521 38.65625,11.34375 L 33.65625,6.34375 C 31.799479,4.4869792 28.89197,4 27.5,4 L 8.53125,4 z"
transform="translate(-150,0)" />
<path
inkscape:connector-curvature="0"
style="fill:url(#radialGradient6348);fill-opacity:1;stroke:none;display:inline"
d="M -122.5,4 C -123.88889,4 -122.54207,4.4970883 -121.15625,5.125 C -119.77043,5.7529117 -116.18337,8.3400517 -117,12 C -112.67669,11.569417 -110.32087,15.122378 -110,16.28125 C -109.67913,17.440122 -109,18.888889 -109,17.5 C -108.97167,13.694419 -111.84543,11.068299 -113.84375,8.84375 C -115.84207,6.6192012 -118.84621,4.4767615 -122.5,4 z"
id="path6113"
sodipodi:nodetypes="ccccczc" />
<path
inkscape:connector-curvature="0"
style="opacity:0.87854249;fill:url(#linearGradient6350);fill-opacity:1;stroke:none;display:inline"
d="M -121.39912,5.0143528 C -120.47682,5.0143528 -118.39068,11.210015 -119.31298,15.343603 C -115.01802,14.915844 -110.4596,15.43178 -110,16.28125 C -110.32087,15.122378 -112.67669,11.569417 -117,12 C -116.13534,8.124761 -120.18657,5.3827023 -121.39912,5.0143528 z"
id="path6115"
sodipodi:nodetypes="ccccc" />
<path
sodipodi:type="inkscape:offset"
inkscape:radius="-0.99436891"
inkscape:original="M -51.46875 3.5 C -52.589967 3.5 -53.5 4.4100329 -53.5 5.53125 L -53.5 42.46875 C -53.5 43.589967 -52.589966 44.5 -51.46875 44.5 L -20.53125 44.5 C -19.410033 44.5 -18.5 43.589966 -18.5 42.46875 C -18.5 42.46875 -18.5 19 -18.5 17.5 C -18.5 16 -19 13 -21 11 C -23 9 -24 8 -26 6 C -28 4 -31 3.5 -32.5 3.5 C -34 3.5 -51.468749 3.5 -51.46875 3.5 z "
style="fill:none;stroke:url(#linearGradient6352);stroke-width:1;stroke-miterlimit:4;display:inline"
id="path6117"
d="M -51.46875,4.5 C -52.051916,4.5 -52.5,4.9480842 -52.5,5.53125 L -52.5,42.46875 C -52.5,43.051915 -52.051914,43.5 -51.46875,43.5 L -20.53125,43.5 C -19.948085,43.5 -19.5,43.051914 -19.5,42.46875 L -19.5,17.5 C -19.5,16.220971 -19.980469,13.394531 -21.6875,11.6875 L -26.6875,6.6875 C -28.394531,4.9804687 -31.220971,4.5 -32.5,4.5 L -51.46875,4.5 z"
transform="translate(-90,0)" />
</g>
</g>
<g
id="g6121"
transform="translate(-1e-5,-0.00291)">
<rect
ry="0.46875"
rx="0.46875009"
inkscape:r_cy="true"
inkscape:r_cx="true"
y="9.0625"
x="11.000001"
height="0.9375"
width="16.771515"
id="rect6123"
style="opacity:0.51098902;fill:#8d8d8d;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;marker:none;visibility:visible;display:inline;overflow:visible" />
<rect
ry="0.50145501"
rx="0.50145501"
inkscape:r_cy="true"
inkscape:r_cx="true"
y="13"
x="11.000001"
height="1.00291"
width="25.00001"
id="rect6127"
style="opacity:0.51098902;fill:#8d8d8d;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;marker:none;visibility:visible;display:inline;overflow:visible" />
<rect
style="opacity:0.51098902;fill:#8d8d8d;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;marker:none;visibility:visible;display:inline;overflow:visible"
id="rect6129"
width="21"
height="0.99999964"
x="11.00001"
y="15.00291"
inkscape:r_cx="true"
inkscape:r_cy="true"
rx="0.49999982"
ry="0.49999982" />
<rect
style="opacity:0.51098902;fill:#8d8d8d;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;marker:none;visibility:visible;display:inline;overflow:visible"
id="rect6131"
width="16.771515"
height="0.9375"
x="11.000001"
y="17.0625"
inkscape:r_cx="true"
inkscape:r_cy="true"
rx="0.46875009"
ry="0.46875" />
<rect
ry="0.46875"
rx="0.46875009"
inkscape:r_cy="true"
inkscape:r_cx="true"
y="35.0625"
x="11.000001"
height="0.9375"
width="27"
id="rect6133"
style="opacity:0.51098902;fill:#8d8d8d;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;marker:none;visibility:visible;display:inline;overflow:visible" />
<rect
style="opacity:0.51098902;fill:#8d8d8d;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;marker:none;visibility:visible;display:inline;overflow:visible"
id="rect6135"
width="27"
height="0.9375"
x="11.000001"
y="37.0625"
inkscape:r_cx="true"
inkscape:r_cy="true"
rx="0.46875009"
ry="0.46875" />
<rect
ry="0.46875"
rx="0.46875009"
inkscape:r_cy="true"
inkscape:r_cx="true"
y="39.0625"
x="11.000001"
height="0.9375"
width="9.999999"
id="rect6137"
style="opacity:0.51098902;fill:#8d8d8d;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;marker:none;visibility:visible;display:inline;overflow:visible" />
</g>
<g
inkscape:r_cy="true"
inkscape:r_cx="true"
transform="matrix(0.30622,0,0,1,26.63157,-2.00291)"
id="g6139">
<rect
style="opacity:0.51098902;fill:#8d8d8d;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;marker:none;visibility:visible;display:inline;overflow:visible"
id="rect6141"
width="26.125004"
height="0.9375"
x="11.000001"
y="23.0625"
inkscape:r_cx="true"
inkscape:r_cy="true"
rx="1.5307624"
ry="0.46875" />
<rect
ry="0.46875"
rx="1.5307624"
inkscape:r_cy="true"
inkscape:r_cx="true"
y="25.0625"
x="11.000001"
height="0.9375"
width="26.125004"
id="rect6143"
style="opacity:0.51098902;fill:#8d8d8d;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;marker:none;visibility:visible;display:inline;overflow:visible" />
<rect
ry="0.46875"
rx="1.5307624"
inkscape:r_cy="true"
inkscape:r_cx="true"
y="27.0625"
x="11.000001"
height="0.9375"
width="26.125004"
id="rect6145"
style="opacity:0.51098902;fill:#8d8d8d;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;marker:none;visibility:visible;display:inline;overflow:visible" />
<rect
style="opacity:0.51098902;fill:#8d8d8d;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;marker:none;visibility:visible;display:inline;overflow:visible"
id="rect6147"
width="26.125004"
height="0.9375"
x="11.000001"
y="29.0625"
inkscape:r_cx="true"
inkscape:r_cy="true"
rx="1.5307624"
ry="0.46875" />
<rect
style="opacity:0.51098902;fill:#8d8d8d;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;marker:none;visibility:visible;display:inline;overflow:visible"
id="rect6149"
width="26.125004"
height="0.9375"
x="11.000001"
y="31.0625"
inkscape:r_cx="true"
inkscape:r_cy="true"
rx="1.5307624"
ry="0.46875" />
<rect
ry="0.46875"
rx="1.5307624"
inkscape:r_cy="true"
inkscape:r_cx="true"
y="33.0625"
x="11.000001"
height="0.9375"
width="12.830279"
id="rect6151"
style="opacity:0.51098902;fill:#8d8d8d;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;marker:none;visibility:visible;display:inline;overflow:visible" />
</g>
<rect
style="fill:#8d8d8d;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.99999982px;marker:none;visibility:visible;display:inline;overflow:visible"
id="rect6823"
width="16.771515"
height="0.9375"
x="11"
y="9.0595856"
inkscape:r_cx="true"
inkscape:r_cy="true"
rx="0.46875009"
ry="0.46875" />
<path
d="M 15.752563,27.435764 C 16.552385,25.868077 17.46137,24.101793 18.188916,22.328502 L 18.188916,22.328502 L 18.476589,21.62848 C 17.526282,18.012268 16.956442,15.109519 17.465516,13.232569 L 17.465516,13.232569 C 17.602562,12.743226 18.169328,12.446331 18.775271,12.446331 L 18.775271,12.446331 L 19.144513,12.451764 H 19.212284 C 20.041846,12.439039 20.432463,13.494291 20.476786,13.904568 L 20.476786,13.904568 C 20.549991,14.587862 20.233865,15.744272 20.233865,15.744272 L 20.233865,15.744272 C 20.233865,15.277305 20.252167,14.522736 19.957417,13.871612 L 19.957417,13.871612 C 19.61434,13.118187 19.286633,12.66809 18.992812,12.596744 L 18.992812,12.596744 C 18.844473,12.695828 18.700279,12.901002 18.650879,13.295694 L 18.650879,13.295694 C 18.548578,13.849092 18.51791,14.547614 18.51791,14.907705 L 18.51791,14.907705 C 18.51791,16.179928 18.768408,17.859138 19.260683,19.590179 L 19.260683,19.590179 C 19.353547,19.322165 19.43526,19.064661 19.500243,18.823385 L 19.500243,18.823385 C 19.601186,18.443134 20.242945,15.922494 20.242945,15.922494 L 20.242945,15.922494 C 20.242945,15.922494 20.081236,19.277842 19.85533,20.293061 L 19.85533,20.293061 C 19.806932,20.5076 19.753529,20.71978 19.697911,20.936964 L 19.697911,20.936964 C 20.509671,23.205103 21.817709,25.229464 23.378105,26.686415 L 23.378105,26.686415 C 23.993342,27.261402 24.770358,27.72501 25.505768,28.147583 L 25.505768,28.147583 C 27.111774,27.918103 28.590456,27.809724 29.824075,27.82338 L 29.824075,27.82338 C 31.46075,27.844969 32.662126,28.087032 33.14861,28.566224 L 33.14861,28.566224 C 33.386813,28.799136 33.483466,29.080446 33.513491,29.395785 L 33.513491,29.395785 C 33.52064,29.518461 33.460875,29.806705 33.443361,29.879052 L 33.443361,29.879052 C 33.460875,29.791478 33.460875,29.360826 32.147046,28.941471 L 32.147046,28.941471 C 31.112311,28.61069 29.175739,28.620984 26.851981,28.868337 L 26.851981,28.868337 C 29.539763,30.183311 32.15827,30.83665 32.988117,30.444961 L 32.988117,30.444961 C 33.191003,30.346092 33.43707,30.008948 33.43707,30.008948 L 33.43707,30.008948 C 33.43707,30.008948 33.290802,30.673512 33.185785,30.839653 L 33.185785,30.839653 C 33.051742,31.020163 32.788805,31.215686 32.539522,31.2816 L 32.539522,31.2816 C 31.228981,31.631254 27.817587,30.822138 24.843635,29.122839 L 24.843635,29.122839 C 21.520958,29.612183 17.871933,30.516164 14.946951,31.47555 L 14.946951,31.47555 C 12.072583,36.512896 9.9116065,38.826431 8.1536147,37.946326 L 8.1536147,37.946326 L 7.5072805,37.621336 C 7.2445576,37.471066 7.2044522,37.105255 7.2652179,36.80736 L 7.2652179,36.80736 C 7.4701776,35.80458 8.7276018,34.294227 11.253388,32.786019 L 11.253388,32.786019 C 11.525261,32.621522 12.736289,31.981193 12.736289,31.981193 L 12.736289,31.981193 C 12.736289,31.981193 11.839743,32.848929 11.629708,33.019217 L 11.629708,33.019217 C 9.6137105,34.671262 8.1258054,36.749668 8.1629083,37.555423 L 8.1629083,37.555423 L 8.1702002,37.625698 C 9.8827248,37.381633 12.450904,33.895961 15.752563,27.435764 M 16.79888,27.971505 C 16.247411,29.010101 15.708383,29.97306 15.210746,30.857239 L 15.210746,30.857239 C 17.963511,29.703903 20.92631,28.965849 23.746632,28.441546 L 23.746632,28.441546 C 23.367596,28.179824 22.999641,27.902661 22.653419,27.609698 L 22.653419,27.609698 C 21.100315,26.294796 19.916239,24.654333 19.057939,22.928082 L 19.057939,22.928082 C 18.51362,24.394541 17.866357,25.952864 16.79888,27.971505"
id="path4463"
inkscape:connector-curvature="0"
style="fill:#f91d0a" />
</g>
<g
style="display:inline"
inkscape:groupmode="layer"
inkscape:label="Base"
id="layer1" />
<g
inkscape:groupmode="layer"
id="layer5"
inkscape:label="Text"
style="display:inline" />
</svg>

After

Width:  |  Height:  |  Size: 25 KiB