mirror of
https://git.code.sf.net/p/seeddms/code
synced 2025-05-30 13:37:45 +00:00
Compare commits
188 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
a825bb43fb | ||
![]() |
00c3a63ff1 | ||
![]() |
396fd6a4fe | ||
![]() |
4972929258 | ||
![]() |
776f19d501 | ||
![]() |
c014749676 | ||
![]() |
2ec29e3336 | ||
![]() |
9a826b88e9 | ||
![]() |
c638258a10 | ||
![]() |
d7c1e4b103 | ||
![]() |
637fd66210 | ||
![]() |
964495b9b6 | ||
![]() |
7fe2a12af3 | ||
![]() |
e1f976e646 | ||
![]() |
ba18e89cda | ||
![]() |
4c6d047bb8 | ||
![]() |
e687474d19 | ||
![]() |
31aa18606f | ||
![]() |
0fd6ed5381 | ||
![]() |
a74229eb14 | ||
![]() |
04e9402094 | ||
![]() |
e9388dc3ec | ||
![]() |
fb5bf43990 | ||
![]() |
abc8df5939 | ||
![]() |
72245fabe0 | ||
![]() |
cd6afd07fe | ||
![]() |
69f4d9a194 | ||
![]() |
00d5d8b334 | ||
![]() |
6610647ddf | ||
![]() |
3fb3434c61 | ||
![]() |
4ed83488ba | ||
![]() |
2288be497c | ||
![]() |
d377bd81ab | ||
![]() |
e069f784b4 | ||
![]() |
181482a1a7 | ||
![]() |
b2cfde85ca | ||
![]() |
f46ae01386 | ||
![]() |
ae66ec223c | ||
![]() |
a5edba86ae | ||
![]() |
8b0d8e85c2 | ||
![]() |
4184cd4f1d | ||
![]() |
d50247ba09 | ||
![]() |
6a39584dcc | ||
![]() |
e8c0ebbf4f | ||
![]() |
67a2afc626 | ||
![]() |
133fc5d570 | ||
![]() |
92bee67638 | ||
![]() |
5fdd83de3c | ||
![]() |
cd4743d917 | ||
![]() |
904e4b8657 | ||
![]() |
de4fae18d0 | ||
![]() |
f1859da68b | ||
![]() |
c8a7dad7d6 | ||
![]() |
3bed5b0d68 | ||
![]() |
1bff379d84 | ||
![]() |
073948d4c3 | ||
![]() |
4f3e6cadf5 | ||
![]() |
692318dcc1 | ||
![]() |
c2d8b383c3 | ||
![]() |
f8ceb0d56a | ||
![]() |
e578e2a206 | ||
![]() |
22f23c71f0 | ||
![]() |
42a38984f7 | ||
![]() |
fb59582a56 | ||
![]() |
8f2f15bb80 | ||
![]() |
7f2d12e299 | ||
![]() |
fc555555d2 | ||
![]() |
28ba7b59b9 | ||
![]() |
b7e075cdba | ||
![]() |
0ad6416d65 | ||
![]() |
d1dfc924b5 | ||
![]() |
5a40423836 | ||
![]() |
53133fc824 | ||
![]() |
7529c68c80 | ||
![]() |
edb91d3299 | ||
![]() |
5ce55216ad | ||
![]() |
f3fa653eee | ||
![]() |
37fd1ac969 | ||
![]() |
54c3ec54fc | ||
![]() |
a4899a52ad | ||
![]() |
0e6f14dbaf | ||
![]() |
c4c37becf6 | ||
![]() |
9d400a808e | ||
![]() |
287753b7bc | ||
![]() |
54832e3727 | ||
![]() |
52401dce05 | ||
![]() |
597e9c89b3 | ||
![]() |
bfe17bcc46 | ||
![]() |
df8d6edcff | ||
![]() |
9b2c120b5f | ||
![]() |
757e95ab86 | ||
![]() |
2e6d25873c | ||
![]() |
38b3abc50e | ||
![]() |
3bbdf680de | ||
![]() |
2ecef66355 | ||
![]() |
9abbf6a1e5 | ||
![]() |
9a3f217e45 | ||
![]() |
d7f1e899ba | ||
![]() |
1d62de5213 | ||
![]() |
ddab6e2b57 | ||
![]() |
dee29cb64f | ||
![]() |
128a57a9c5 | ||
![]() |
5ed5476106 | ||
![]() |
70c63afd10 | ||
![]() |
789b5daaf8 | ||
![]() |
2eb19048ab | ||
![]() |
b30c4a7a66 | ||
![]() |
b5d32f3d53 | ||
![]() |
304db26698 | ||
![]() |
444af0831b | ||
![]() |
3197f25ce8 | ||
![]() |
71d5154945 | ||
![]() |
056736ecc5 | ||
![]() |
329b54d00f | ||
![]() |
157c033f2a | ||
![]() |
d66f12ae21 | ||
![]() |
4ba5099569 | ||
![]() |
86362c5284 | ||
![]() |
9f39b639c6 | ||
![]() |
0999808364 | ||
![]() |
6c0b1691c3 | ||
![]() |
985aa5cc28 | ||
![]() |
e714e361a9 | ||
![]() |
9f5390e560 | ||
![]() |
f281376ac2 | ||
![]() |
6731882ae0 | ||
![]() |
3538fd2616 | ||
![]() |
a44ddc0b94 | ||
![]() |
879855536f | ||
![]() |
4352f95818 | ||
![]() |
0fe367820f | ||
![]() |
3fec498ce5 | ||
![]() |
d9a2ea5303 | ||
![]() |
ae34e29fed | ||
![]() |
d4bfb539b7 | ||
![]() |
b2cc1a122e | ||
![]() |
0eff90974e | ||
![]() |
b75bcb5725 | ||
![]() |
327d65c7e0 | ||
![]() |
d3d08e5b15 | ||
![]() |
a2a39ce946 | ||
![]() |
b9abff5c55 | ||
![]() |
24595a234d | ||
![]() |
199fd57151 | ||
![]() |
9dfc6e8b1e | ||
![]() |
cfc23e0ddf | ||
![]() |
7012580476 | ||
![]() |
40bd123fe3 | ||
![]() |
6c3ecaf9a1 | ||
![]() |
40ce4a74e1 | ||
![]() |
8fcfd70bd6 | ||
![]() |
6f0803e698 | ||
![]() |
5d28744758 | ||
![]() |
a17220d373 | ||
![]() |
54dea818f7 | ||
![]() |
a446f45e43 | ||
![]() |
6139c781d0 | ||
![]() |
0602fad397 | ||
![]() |
44bf03c557 | ||
![]() |
4bcb5f8e4c | ||
![]() |
4fe696f18b | ||
![]() |
023c2c58f1 | ||
![]() |
1a002c9d18 | ||
![]() |
3321b097e6 | ||
![]() |
dc2cadc6d8 | ||
![]() |
20e9157d01 | ||
![]() |
02e7066749 | ||
![]() |
18c34ce29d | ||
![]() |
b7014a6b21 | ||
![]() |
fdf14b2a1f | ||
![]() |
e79a0015f9 | ||
![]() |
0c4103ce34 | ||
![]() |
ff3dd800e4 | ||
![]() |
211a3bc6bc | ||
![]() |
e49c9e1c98 | ||
![]() |
e3002fce0b | ||
![]() |
2a45854818 | ||
![]() |
cb059d53eb | ||
![]() |
44bd7fda79 | ||
![]() |
5f54964d69 | ||
![]() |
3dc3b6f0d2 | ||
![]() |
468b146a64 | ||
![]() |
d81f946446 | ||
![]() |
097aae895f | ||
![]() |
a55662ea1b | ||
![]() |
8d35bb6a9b | ||
![]() |
7826d487cc | ||
![]() |
ddbc3839a5 |
42
CHANGELOG
42
CHANGELOG
|
@ -1,3 +1,16 @@
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
Changes in version 6.0.33
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
- merge changes up to 5.1.40
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
Changes in version 6.0.32
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
- merge changes up to 5.1.39
|
||||||
|
- fix setting attributes (user, group, document, folder) when checking in
|
||||||
|
a new document version
|
||||||
|
- validate setting revision date
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
Changes in version 6.0.31
|
Changes in version 6.0.31
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
|
@ -308,6 +321,35 @@
|
||||||
- add document list which can be exported as an archive
|
- add document list which can be exported as an archive
|
||||||
- search results can be exported
|
- search results can be exported
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
Changes in version 5.1.40
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
- fix saving user data when language selection is turned of (Closes: #568)
|
||||||
|
- add much better support for new storage drivers
|
||||||
|
- fix possible xss attacks
|
||||||
|
- saver way to collect plugin configuration
|
||||||
|
- fix update of postgres database
|
||||||
|
- add hook displayPreviewThumb
|
||||||
|
- add searching for mimetype in database
|
||||||
|
- list of expired documents can be filtered by user
|
||||||
|
- use quoted printable encoding instead of base64 for email subjects
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
Changes in version 5.1.39
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
- show quota on chart page when listing total document size per user
|
||||||
|
- turn off legend for chart sizepermonth
|
||||||
|
- do not add group manager as mandatory approver/reviewer if logged in
|
||||||
|
user is the manager itself
|
||||||
|
- fixed setting group approvers from previous document version
|
||||||
|
- very experimental support of memcached for accelerating some database
|
||||||
|
operations (do not use in production)
|
||||||
|
- prevent malicious manipulation of referer when setting language
|
||||||
|
- fix setting attributes of type user, group, document, folder when updating
|
||||||
|
a document
|
||||||
|
- objects can be removed from clipboard
|
||||||
|
- call hooks for document/folder list in attribute manager
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
Changes in version 5.1.38
|
Changes in version 5.1.38
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
|
|
|
@ -232,7 +232,8 @@ class SeedDMS_Controller_Login extends SeedDMS_Controller_Common {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$user = $authenticator->authenticate($login, $pwd);
|
if(!is_object($user))
|
||||||
|
$user = $authenticator->authenticate($login, $pwd);
|
||||||
|
|
||||||
if(0) {
|
if(0) {
|
||||||
/* Authenticate against LDAP server {{{ */
|
/* Authenticate against LDAP server {{{ */
|
||||||
|
|
|
@ -49,6 +49,9 @@ application/vnd.openxmlformats-officedocument.wordprocessingml.document
|
||||||
application/msword
|
application/msword
|
||||||
catdoc %s
|
catdoc %s
|
||||||
|
|
||||||
|
application/vnd.oasis.opendocument.text
|
||||||
|
odt2txt %s
|
||||||
|
|
||||||
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
|
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
|
||||||
xlsx2csv -d tab %s
|
xlsx2csv -d tab %s
|
||||||
|
|
||||||
|
|
|
@ -8,13 +8,13 @@ SeedDMS is a web-based application written in PHP. It uses MySQL,
|
||||||
SQLite3 or PostgreSQL to manage the documents that were uploaded into
|
SQLite3 or PostgreSQL to manage the documents that were uploaded into
|
||||||
the application. Be aware that PostgreSQL is not very well tested.
|
the application. Be aware that PostgreSQL is not very well tested.
|
||||||
|
|
||||||
Make sure you have PHP >= 7.4 and MySQL 5 or higher installed. SeedDMS
|
Make sure you have PHP >= 8.2 and MySQL 5 or higher installed. SeedDMS
|
||||||
will work with PHP running in CGI-mode as well as running as a module under
|
will work with PHP running in CGI-mode as well as running as a module under
|
||||||
apache.
|
apache.
|
||||||
|
|
||||||
Here is a detailed list of requirements:
|
Here is a detailed list of requirements:
|
||||||
|
|
||||||
1. A web server with at least php 7.4
|
1. A web server with at least php 8.2
|
||||||
2. A mysql database, unless you use SQLite
|
2. A mysql database, unless you use SQLite
|
||||||
3. The php installation must have support for `pdo_mysql`, `pdo_pgsql` or `pdo_sqlite`,
|
3. The php installation must have support for `pdo_mysql`, `pdo_pgsql` or `pdo_sqlite`,
|
||||||
`php_gd2`, `php_mbstring`, `php_xml`
|
`php_gd2`, `php_mbstring`, `php_xml`
|
||||||
|
|
|
@ -81,6 +81,7 @@ class SeedDMS_AccessOperation {
|
||||||
'CategoryChooser',
|
'CategoryChooser',
|
||||||
'ChangePassword',
|
'ChangePassword',
|
||||||
'CheckInDocument',
|
'CheckInDocument',
|
||||||
|
'CheckOutDocument',
|
||||||
'Clipboard',
|
'Clipboard',
|
||||||
'Dashboard',
|
'Dashboard',
|
||||||
'DocumentAccess',
|
'DocumentAccess',
|
||||||
|
|
|
@ -75,7 +75,7 @@ class SeedDMS_Controller_Common {
|
||||||
if(method_exists($this, $action)) {
|
if(method_exists($this, $action)) {
|
||||||
$refl = new ReflectionMethod($this, $action);
|
$refl = new ReflectionMethod($this, $action);
|
||||||
if($refl->isPublic())
|
if($refl->isPublic())
|
||||||
return $this->{$action}();
|
$ret = $this->{$action}();
|
||||||
else {
|
else {
|
||||||
echo "Action '".$action."' not public";
|
echo "Action '".$action."' not public";
|
||||||
return false;
|
return false;
|
||||||
|
@ -85,11 +85,12 @@ class SeedDMS_Controller_Common {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
} else
|
} else
|
||||||
return $this->run();
|
$ret = $this->run();
|
||||||
} else {
|
} else {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
$this->callHook('postRun', get_class($this), $action ? $action : 'run');
|
$this->callHook('postRun', get_class($this), $action ? $action : 'run');
|
||||||
|
return $ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function setParams($params) {
|
public function setParams($params) {
|
||||||
|
|
|
@ -93,11 +93,25 @@ class SeedDMS_Download_Mgr {
|
||||||
*/
|
*/
|
||||||
protected $filenames;
|
protected $filenames;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var boolean $skipdefaultcols skip default columns, will only export extracols
|
||||||
|
* @access protected
|
||||||
|
*/
|
||||||
|
protected $skipdefaultcols;
|
||||||
|
|
||||||
function __construct($tmpdir = '') {
|
function __construct($tmpdir = '') {
|
||||||
$this->tmpdir = $tmpdir;
|
$this->tmpdir = $tmpdir;
|
||||||
$this->items = array();
|
$this->items = array();
|
||||||
$this->folder_items = array();
|
$this->folder_items = array();
|
||||||
$this->header = array(getMLText('download_header_document_no'), getMLText('download_header_document_name'), getMLText('download_header_filename'), getMLText('download_header_state'), getMLText('download_header_internal_version'), getMLText('download_header_reviewer'), getMLText('download_header_review_date'), getMLText('download_header_review_comment'), getMLText('download_header_review_state'), getMLText('download_header_approver'), getMLText('download_header_approval_date'), getMLText('download_header_approval_comment'), getMLText('download_header_approval_state'));
|
$this->header = array(getMLText('download_header_document_no'), getMLText('download_header_document_name'), getMLText('download_header_filename'), getMLText('download_header_state'), getMLText('download_header_internal_version'));
|
||||||
|
$this->header[] = getMLText('download_header_reviewer');
|
||||||
|
$this->header[] = getMLText('download_header_review_date');
|
||||||
|
$this->header[] = getMLText('download_header_review_comment');
|
||||||
|
$this->header[] = getMLText('download_header_review_state');
|
||||||
|
$this->header[] = getMLText('download_header_approver');
|
||||||
|
$this->header[] = getMLText('download_header_approval_date');
|
||||||
|
$this->header[] = getMLText('download_header_approval_comment');
|
||||||
|
$this->header[] = getMLText('download_header_approval_state');
|
||||||
$this->folder_header = array(getMLText('download_header_folder_no'), getMLText('download_header_folder_name'));
|
$this->folder_header = array(getMLText('download_header_folder_no'), getMLText('download_header_folder_name'));
|
||||||
$this->extracols = array();
|
$this->extracols = array();
|
||||||
$this->folder_extracols = array();
|
$this->folder_extracols = array();
|
||||||
|
@ -105,8 +119,14 @@ class SeedDMS_Download_Mgr {
|
||||||
$this->extraheader = array();
|
$this->extraheader = array();
|
||||||
$this->folder_extraheader = array();
|
$this->folder_extraheader = array();
|
||||||
$this->filenames = array();
|
$this->filenames = array();
|
||||||
|
$this->includereviewers = false;
|
||||||
|
$this->includeapprovers = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function skipDefaultCols($v) { /* {{{ */
|
||||||
|
$this->skipdefaultcols = (bool) $v;
|
||||||
|
} /* }}} */
|
||||||
|
|
||||||
public function addHeader($extraheader) { /* {{{ */
|
public function addHeader($extraheader) { /* {{{ */
|
||||||
$this->extraheader = $extraheader;
|
$this->extraheader = $extraheader;
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
|
@ -137,8 +157,9 @@ class SeedDMS_Download_Mgr {
|
||||||
|
|
||||||
$i = 1;
|
$i = 1;
|
||||||
$col = 1;
|
$col = 1;
|
||||||
foreach($this->header as $h)
|
if(!$this->skipdefaultcols)
|
||||||
$sheet->setCellValue([$col++, $i], $h);
|
foreach($this->header as $h)
|
||||||
|
$sheet->setCellValue([$col++, $i], $h);
|
||||||
foreach($this->extraheader as $h)
|
foreach($this->extraheader as $h)
|
||||||
$sheet->setCellValue([$col++, $i], $h);
|
$sheet->setCellValue([$col++, $i], $h);
|
||||||
$i++;
|
$i++;
|
||||||
|
@ -151,13 +172,14 @@ class SeedDMS_Download_Mgr {
|
||||||
$approvalStatus = $item->getApprovalStatus();
|
$approvalStatus = $item->getApprovalStatus();
|
||||||
|
|
||||||
$col = 1;
|
$col = 1;
|
||||||
|
$l = $i; // Number of reviewers
|
||||||
|
$k = $i; // Number of approvers
|
||||||
|
if(!$this->skipdefaultcols) {
|
||||||
$sheet->setCellValue([$col++, $i], $document->getID());
|
$sheet->setCellValue([$col++, $i], $document->getID());
|
||||||
$sheet->setCellValue([$col++, $i], $document->getName());
|
$sheet->setCellValue([$col++, $i], $document->getName());
|
||||||
$sheet->setCellValue([$col++, $i], $document->getID()."-".$item->getOriginalFileName());
|
$sheet->setCellValue([$col++, $i], $document->getID()."-".$item->getOriginalFileName());
|
||||||
$sheet->setCellValue([$col++, $i], getOverallStatusText($status['status']));
|
$sheet->setCellValue([$col++, $i], getOverallStatusText($status['status']));
|
||||||
$sheet->setCellValue([$col++, $i], $item->getVersion());
|
$sheet->setCellValue([$col++, $i], $item->getVersion());
|
||||||
$l = $i;
|
|
||||||
$k = $i;
|
|
||||||
if($reviewStatus) {
|
if($reviewStatus) {
|
||||||
foreach ($reviewStatus as $r) {
|
foreach ($reviewStatus as $r) {
|
||||||
switch ($r["type"]) {
|
switch ($r["type"]) {
|
||||||
|
@ -181,7 +203,7 @@ class SeedDMS_Download_Mgr {
|
||||||
$tcol = $col;
|
$tcol = $col;
|
||||||
$sheet->setCellValue([$tcol++, $l], $reqName);
|
$sheet->setCellValue([$tcol++, $l], $reqName);
|
||||||
$sheet->setCellValue([$tcol, $l], ($r['status']==1 || $r['status']==-1) ? \PhpOffice\PhpSpreadsheet\Shared\Date::PHPToExcel(new DateTime($r['date'])) : null);
|
$sheet->setCellValue([$tcol, $l], ($r['status']==1 || $r['status']==-1) ? \PhpOffice\PhpSpreadsheet\Shared\Date::PHPToExcel(new DateTime($r['date'])) : null);
|
||||||
$sheet->getStyleByColumnAndRow($tcol++, $l)->getNumberFormat()->setFormatCode(\PhpOffice\PhpSpreadsheet\Style\NumberFormat::FORMAT_DATE_DATETIME);
|
$sheet->getStyle([$tcol++, $l])->getNumberFormat()->setFormatCode(\PhpOffice\PhpSpreadsheet\Style\NumberFormat::FORMAT_DATE_DATETIME);
|
||||||
$sheet->setCellValue([$tcol++, $l], $r['comment']);
|
$sheet->setCellValue([$tcol++, $l], $r['comment']);
|
||||||
$sheet->setCellValue([$tcol++, $l], getReviewStatusText($r["status"]));
|
$sheet->setCellValue([$tcol++, $l], getReviewStatusText($r["status"]));
|
||||||
$l++;
|
$l++;
|
||||||
|
@ -212,7 +234,7 @@ class SeedDMS_Download_Mgr {
|
||||||
$tcol = $col;
|
$tcol = $col;
|
||||||
$sheet->setCellValue([$tcol++, $k], $reqName);
|
$sheet->setCellValue([$tcol++, $k], $reqName);
|
||||||
$sheet->setCellValue([$tcol, $k], ($r['status']==1 || $r['status']==-1) ? \PhpOffice\PhpSpreadsheet\Shared\Date::PHPToExcel(new DateTime($r['date'])) : null);
|
$sheet->setCellValue([$tcol, $k], ($r['status']==1 || $r['status']==-1) ? \PhpOffice\PhpSpreadsheet\Shared\Date::PHPToExcel(new DateTime($r['date'])) : null);
|
||||||
$sheet->getStyleByColumnAndRow($tcol++, $k)->getNumberFormat()->setFormatCode(\PhpOffice\PhpSpreadsheet\Style\NumberFormat::FORMAT_DATE_DATETIME);
|
$sheet->getStyle([$tcol++, $k])->getNumberFormat()->setFormatCode(\PhpOffice\PhpSpreadsheet\Style\NumberFormat::FORMAT_DATE_DATETIME);
|
||||||
$sheet->setCellValue([$tcol++, $k], $r['comment']);
|
$sheet->setCellValue([$tcol++, $k], $r['comment']);
|
||||||
$sheet->setCellValue([$tcol++, $k], getApprovalStatusText($r["status"]));
|
$sheet->setCellValue([$tcol++, $k], getApprovalStatusText($r["status"]));
|
||||||
$k++;
|
$k++;
|
||||||
|
@ -220,6 +242,7 @@ class SeedDMS_Download_Mgr {
|
||||||
$k--;
|
$k--;
|
||||||
}
|
}
|
||||||
$col += 4;
|
$col += 4;
|
||||||
|
}
|
||||||
if(isset($this->extracols[$item->getID()]) && $this->extracols[$item->getID()]) {
|
if(isset($this->extracols[$item->getID()]) && $this->extracols[$item->getID()]) {
|
||||||
foreach($this->extracols[$item->getID()] as $column)
|
foreach($this->extracols[$item->getID()] as $column)
|
||||||
$sheet->setCellValue([$col++, $i], is_array($column) ? implode("\n", $column) : $column );
|
$sheet->setCellValue([$col++, $i], is_array($column) ? implode("\n", $column) : $column );
|
||||||
|
@ -239,8 +262,9 @@ class SeedDMS_Download_Mgr {
|
||||||
|
|
||||||
$i = 1;
|
$i = 1;
|
||||||
$col = 1;
|
$col = 1;
|
||||||
foreach($this->folder_header as $h)
|
if(!$this->skipdefaultcols)
|
||||||
$sheet->setCellValue([$col++, $i], $h);
|
foreach($this->folder_header as $h)
|
||||||
|
$sheet->setCellValue([$col++, $i], $h);
|
||||||
foreach($this->folder_extraheader as $h)
|
foreach($this->folder_extraheader as $h)
|
||||||
$sheet->setCellValue([$col++, $i], $h);
|
$sheet->setCellValue([$col++, $i], $h);
|
||||||
$i++;
|
$i++;
|
||||||
|
@ -251,8 +275,10 @@ class SeedDMS_Download_Mgr {
|
||||||
$dms = $folder->_dms;
|
$dms = $folder->_dms;
|
||||||
|
|
||||||
$col = 1;
|
$col = 1;
|
||||||
$sheet->setCellValue([$col++, $i], $folder->getID());
|
if(!$this->skipdefaultcols) {
|
||||||
$sheet->setCellValue([$col++, $i], $folder->getName());
|
$sheet->setCellValue([$col++, $i], $folder->getID());
|
||||||
|
$sheet->setCellValue([$col++, $i], $folder->getName());
|
||||||
|
}
|
||||||
if(isset($this->folder_extracols[$item->getID()]) && $this->folder_extracols[$item->getID()]) {
|
if(isset($this->folder_extracols[$item->getID()]) && $this->folder_extracols[$item->getID()]) {
|
||||||
foreach($this->folder_extracols[$item->getID()] as $column)
|
foreach($this->folder_extracols[$item->getID()] as $column)
|
||||||
$sheet->setCellValue([$col++, $i], is_array($column) ? implode("\n", $column) : $column );
|
$sheet->setCellValue([$col++, $i], is_array($column) ? implode("\n", $column) : $column );
|
||||||
|
|
|
@ -205,7 +205,7 @@ class SeedDMS_EmailNotify extends SeedDMS_Notify {
|
||||||
if($returnpath)
|
if($returnpath)
|
||||||
$headers['Return-Path'] = $returnpath;
|
$headers['Return-Path'] = $returnpath;
|
||||||
$headers['To'] = $to;
|
$headers['To'] = $to;
|
||||||
$preferences = array("input-charset" => "UTF-8", "output-charset" => "UTF-8");
|
$preferences = array("input-charset" => "UTF-8", "output-charset" => "UTF-8", "scheme"=>"Q");
|
||||||
$encoded_subject = iconv_mime_encode("Subject", getMLText($subject, $params, null, $lang), $preferences);
|
$encoded_subject = iconv_mime_encode("Subject", getMLText($subject, $params, null, $lang), $preferences);
|
||||||
$headers['Subject'] = substr($encoded_subject, strlen('Subject: '));
|
$headers['Subject'] = substr($encoded_subject, strlen('Subject: '));
|
||||||
$headers['Date'] = date('r', time());
|
$headers['Date'] = date('r', time());
|
||||||
|
|
|
@ -210,13 +210,19 @@ class SeedDMS_Extension_Mgr {
|
||||||
$fp = @fopen(self::getExtensionsConfFile(), "w");
|
$fp = @fopen(self::getExtensionsConfFile(), "w");
|
||||||
if($fp) {
|
if($fp) {
|
||||||
if($extensions) {
|
if($extensions) {
|
||||||
|
$EXT_CONF = [];
|
||||||
foreach($extensions as $_ext) {
|
foreach($extensions as $_ext) {
|
||||||
if(file_exists($this->extdir . "/" . $_ext . "/conf.php")) {
|
if(file_exists($this->extdir . "/" . $_ext . "/conf.php")) {
|
||||||
$content = file_get_contents($this->extdir . "/" . $_ext . "/conf.php");
|
include $this->extdir . "/" . $_ext . "/conf.php";
|
||||||
fwrite($fp, $content);
|
// $content = file_get_contents($this->extdir . "/" . $_ext . "/conf.php");
|
||||||
|
// fwrite($fp, $content);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// fclose($fp);
|
||||||
|
// $fp = @fopen(self::getExtensionsConfFile(), "w");
|
||||||
|
fwrite($fp, '<?php
|
||||||
|
$EXT_CONF = '.var_export($EXT_CONF, true).';');
|
||||||
fclose($fp);
|
fclose($fp);
|
||||||
return true;
|
return true;
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -286,6 +286,24 @@ class SeedDMS_Session {
|
||||||
return (array) $this->data['clipboard'];
|
return (array) $this->data['clipboard'];
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check if object is on clipboard
|
||||||
|
*
|
||||||
|
* @param object $object Document or folder
|
||||||
|
*/
|
||||||
|
function isOnClipboard($object) { /* {{{ */
|
||||||
|
/* id is only set if load() was called before */
|
||||||
|
if($this->id) {
|
||||||
|
$dms = $object->getDMS();
|
||||||
|
if($object->isType('document')) {
|
||||||
|
return in_array($object->getID(), $this->data['clipboard']['docs']);
|
||||||
|
} elseif($object->isType('folder')) {
|
||||||
|
return in_array($object->getID(), $this->data['clipboard']['folders']);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
} /* }}} */
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add to clipboard of session
|
* Add to clipboard of session
|
||||||
*
|
*
|
||||||
|
|
|
@ -152,6 +152,8 @@ class Settings { /* {{{ */
|
||||||
var $_batchOperations = array(); // or 'all', 'change_owner', etc.
|
var $_batchOperations = array(); // or 'all', 'change_owner', etc.
|
||||||
// jump straight to the document if it is the only hit of a search
|
// jump straight to the document if it is the only hit of a search
|
||||||
var $_showSingleSearchHit = true;
|
var $_showSingleSearchHit = true;
|
||||||
|
// enable/disable use of memcached
|
||||||
|
var $_enableMemcached = false;
|
||||||
// contentOffsetDirTo
|
// contentOffsetDirTo
|
||||||
var $_contentOffsetDir = "1048576";
|
var $_contentOffsetDir = "1048576";
|
||||||
// Maximum number of sub-directories per parent directory
|
// Maximum number of sub-directories per parent directory
|
||||||
|
@ -706,6 +708,7 @@ class Settings { /* {{{ */
|
||||||
$this->_partitionSize = strval($tab["partitionSize"]);
|
$this->_partitionSize = strval($tab["partitionSize"]);
|
||||||
$this->_maxUploadSize = strval($tab["maxUploadSize"]);
|
$this->_maxUploadSize = strval($tab["maxUploadSize"]);
|
||||||
$this->_enableXsendfile = Settings::boolVal($tab["enableXsendfile"]);
|
$this->_enableXsendfile = Settings::boolVal($tab["enableXsendfile"]);
|
||||||
|
$this->_enableMemcached = Settings::boolVal($tab["enableMemcached"]);
|
||||||
|
|
||||||
// XML Path: /configuration/system/authentication
|
// XML Path: /configuration/system/authentication
|
||||||
$node = $xml->xpath('/configuration/system/authentication');
|
$node = $xml->xpath('/configuration/system/authentication');
|
||||||
|
@ -1011,6 +1014,8 @@ class Settings { /* {{{ */
|
||||||
if (is_null($configFilePath))
|
if (is_null($configFilePath))
|
||||||
$configFilePath = $this->_configFilePath;
|
$configFilePath = $this->_configFilePath;
|
||||||
|
|
||||||
|
// copy($configFilePath, $configFilePath.'.'.time());
|
||||||
|
|
||||||
// Load
|
// Load
|
||||||
$xml = simplexml_load_string(file_get_contents($configFilePath));
|
$xml = simplexml_load_string(file_get_contents($configFilePath));
|
||||||
$this->getXMLNode($xml, '/', 'configuration');
|
$this->getXMLNode($xml, '/', 'configuration');
|
||||||
|
@ -1124,6 +1129,7 @@ class Settings { /* {{{ */
|
||||||
$this->setXMLAttributValue($node, "partitionSize", $this->_partitionSize);
|
$this->setXMLAttributValue($node, "partitionSize", $this->_partitionSize);
|
||||||
$this->setXMLAttributValue($node, "maxUploadSize", $this->_maxUploadSize);
|
$this->setXMLAttributValue($node, "maxUploadSize", $this->_maxUploadSize);
|
||||||
$this->setXMLAttributValue($node, "enableXsendfile", $this->_enableXsendfile);
|
$this->setXMLAttributValue($node, "enableXsendfile", $this->_enableXsendfile);
|
||||||
|
$this->setXMLAttributValue($node, "enableMemcached", $this->_enableMemcached);
|
||||||
|
|
||||||
// XML Path: /configuration/system/authentication
|
// XML Path: /configuration/system/authentication
|
||||||
$node = $this->getXMLNode($xml, '/configuration/system', 'authentication');
|
$node = $this->getXMLNode($xml, '/configuration/system', 'authentication');
|
||||||
|
@ -1350,9 +1356,9 @@ class Settings { /* {{{ */
|
||||||
*/
|
*/
|
||||||
foreach($extension as $fieldname=>$confvalue) {
|
foreach($extension as $fieldname=>$confvalue) {
|
||||||
if($fieldname != '___disable__' && $confvalue) {
|
if($fieldname != '___disable__' && $confvalue) {
|
||||||
$parameter = $extnode->addChild('parameter');
|
$parameter = $extnode->addChild('parameter');
|
||||||
$parameter[0] = isset($extension[$fieldname]) ? (is_array($extension[$fieldname]) ? implode(',', $extension[$fieldname]) : $extension[$fieldname]) : '';
|
$parameter[0] = isset($extension[$fieldname]) ? (is_array($extension[$fieldname]) ? implode(',', $extension[$fieldname]) : $extension[$fieldname]) : '';
|
||||||
$this->setXMLAttributValue($parameter, 'name', $fieldname);
|
$this->setXMLAttributValue($parameter, 'name', $fieldname);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* Old code saves those parameters listed in the configuration
|
/* Old code saves those parameters listed in the configuration
|
||||||
|
|
|
@ -46,7 +46,7 @@ class UI extends UI_Default {
|
||||||
* @return object an object of a class implementing the view
|
* @return object an object of a class implementing the view
|
||||||
*/
|
*/
|
||||||
static public function factory($theme, $class='', $params=array()) { /* {{{ */
|
static public function factory($theme, $class='', $params=array()) { /* {{{ */
|
||||||
global $settings, $dms, $user, $session, $extMgr, $request, $logger, $notifier;
|
global $settings, $dms, $user, $session, $extMgr, $request, $logger, $notifier, $fulltextservice;
|
||||||
if(!$class) {
|
if(!$class) {
|
||||||
$class = 'Bootstrap';
|
$class = 'Bootstrap';
|
||||||
$class = 'Style';
|
$class = 'Style';
|
||||||
|
@ -138,6 +138,7 @@ class UI extends UI_Default {
|
||||||
$view->setParam('request', $request);
|
$view->setParam('request', $request);
|
||||||
$view->setParam('logger', $logger);
|
$view->setParam('logger', $logger);
|
||||||
$view->setParam('notifier', $notifier);
|
$view->setParam('notifier', $notifier);
|
||||||
|
$view->setParam('fulltextservice', $fulltextservice);
|
||||||
// $view->setParam('settings', $settings);
|
// $view->setParam('settings', $settings);
|
||||||
$view->setParam('sitename', $settings->_siteName);
|
$view->setParam('sitename', $settings->_siteName);
|
||||||
$view->setParam('rootfolderid', $settings->_rootFolderID);
|
$view->setParam('rootfolderid', $settings->_rootFolderID);
|
||||||
|
|
|
@ -56,7 +56,7 @@ if(isset($GLOBALS['SEEDDMS_HOOKS']['initStorage'])) {
|
||||||
|
|
||||||
$dms = new SeedDMS_Core_DMS($db, $storage ? $storage : $settings->_contentDir.$settings->_contentOffsetDir);
|
$dms = new SeedDMS_Core_DMS($db, $storage ? $storage : $settings->_contentDir.$settings->_contentOffsetDir);
|
||||||
|
|
||||||
if(extension_loaded('memcached')) {
|
if($settings->_enableMemcached && extension_loaded('memcached')) {
|
||||||
$memcache = new Memcached('seeddms');
|
$memcache = new Memcached('seeddms');
|
||||||
$memcache->addServers(array(
|
$memcache->addServers(array(
|
||||||
array('localhost',11211),
|
array('localhost',11211),
|
||||||
|
|
|
@ -53,11 +53,12 @@ class SeedDMS_ExpiredDocumentsTask extends SeedDMS_SchedulerTaskBase { /* {{{ */
|
||||||
$params['count'] = count($docs);
|
$params['count'] = count($docs);
|
||||||
$params['__body__'] = $body;
|
$params['__body__'] = $body;
|
||||||
$params['__body_html__'] = $bodyhtml;
|
$params['__body_html__'] = $bodyhtml;
|
||||||
|
$params['__skip_footer__'] = true;
|
||||||
$params['sitename'] = $settings->_siteName;
|
$params['sitename'] = $settings->_siteName;
|
||||||
$email->toIndividual('', $u, 'expired_docs_mail_subject', '', $params);
|
$email->toIndividual('', $u, 'expired_docs_mail_subject', '', $params);
|
||||||
$logger->log('Task \'expired_docs\': Sending reminder \'expired_docs_mail_subject\' to user \''.$u->getLogin().'\'', PEAR_LOG_INFO);
|
$logger->log('Task \'expired_docs\': Sending reminder \'expired_docs_mail_subject\' to user \''.$u->getLogin().'\' ('.(count($docs)).' documents)', PEAR_LOG_INFO);
|
||||||
} else {
|
} else {
|
||||||
$logger->log('Task \'expired_docs\': Dry run, not sending reminder \'expired_docs_mail_subject\' to user \''.$u->getLogin().'\'', PEAR_LOG_INFO);
|
$logger->log('Task \'expired_docs\': Dry run, not sending reminder \'expired_docs_mail_subject\' to user \''.$u->getLogin().'\' ('.(count($docs)).' documents)', PEAR_LOG_INFO);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -79,12 +80,13 @@ class SeedDMS_ExpiredDocumentsTask extends SeedDMS_SchedulerTaskBase { /* {{{ */
|
||||||
$params['count'] = count($docs);
|
$params['count'] = count($docs);
|
||||||
$params['__body__'] = $body;
|
$params['__body__'] = $body;
|
||||||
$params['__body_html__'] = $bodyhtml;
|
$params['__body_html__'] = $bodyhtml;
|
||||||
|
$params['__skip_footer__'] = true;
|
||||||
$params['sitename'] = $settings->_siteName;
|
$params['sitename'] = $settings->_siteName;
|
||||||
$email->toIndividual('', $taskparams['email'], 'expired_docs_mail_subject', '', $params);
|
$email->toIndividual('', $taskparams['email'], 'expired_docs_mail_subject', '', $params);
|
||||||
|
|
||||||
$logger->log('Task \'expired_docs\': Sending reminder \'expired_docs_mail_subject\' to user \''.$taskparams['email'].'\'', PEAR_LOG_INFO);
|
$logger->log('Task \'expired_docs\': Sending reminder \'expired_docs_mail_subject\' to user \''.$taskparams['email'].'\' ('.(count($docs)).' documents)', PEAR_LOG_INFO);
|
||||||
} else {
|
} else {
|
||||||
$logger->log('Task \'expired_docs\': Dry run, not sending reminder \'expired_docs_mail_subject\' to user \''.$taskparams['email'].'\'', PEAR_LOG_INFO);
|
$logger->log('Task \'expired_docs\': Dry run, not sending reminder \'expired_docs_mail_subject\' to user \''.$taskparams['email'].'\' ('.(count($docs)).' documents)', PEAR_LOG_INFO);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
@ -613,6 +615,7 @@ class SeedDMS_CalendarTask extends SeedDMS_SchedulerTaskBase { /* {{{ */
|
||||||
$params['count'] = count($events);
|
$params['count'] = count($events);
|
||||||
$params['__body__'] = $body;
|
$params['__body__'] = $body;
|
||||||
$params['__body_html__'] = $bodyhtml;
|
$params['__body_html__'] = $bodyhtml;
|
||||||
|
$params['__skip_footer__'] = true;
|
||||||
$params['sitename'] = $settings->_siteName;
|
$params['sitename'] = $settings->_siteName;
|
||||||
$email->toIndividual('', $auser, 'calendar_events_mail_subject', '', $params);
|
$email->toIndividual('', $auser, 'calendar_events_mail_subject', '', $params);
|
||||||
|
|
||||||
|
@ -714,6 +717,7 @@ class SeedDMS_StatisticTask extends SeedDMS_SchedulerTaskBase { /* {{{ */
|
||||||
$params = array();
|
$params = array();
|
||||||
$params['__body__'] = $body;
|
$params['__body__'] = $body;
|
||||||
$params['__body_html__'] = $bodyhtml;
|
$params['__body_html__'] = $bodyhtml;
|
||||||
|
$params['__skip_footer__'] = true;
|
||||||
$params['sitename'] = $settings->_siteName;
|
$params['sitename'] = $settings->_siteName;
|
||||||
$email->toIndividual('', $auser, 'statistics_mail_subject', '', $params);
|
$email->toIndividual('', $auser, 'statistics_mail_subject', '', $params);
|
||||||
|
|
||||||
|
|
|
@ -1100,7 +1100,9 @@ function getMandatoryReviewers($folder, $document, $user) { /* {{{ */
|
||||||
foreach($groups as $group) {
|
foreach($groups as $group) {
|
||||||
$managers = $group->getManagers();
|
$managers = $group->getManagers();
|
||||||
foreach($managers as $manager) {
|
foreach($managers as $manager) {
|
||||||
$revi[] = $manager->getId();
|
/* Do not add myself, if I'm the manager of the group */
|
||||||
|
if($manager->getId() != $user->getId())
|
||||||
|
$revi[] = $manager->getId();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1195,7 +1197,9 @@ function getMandatoryApprovers($folder, $document, $user) { /* {{{ */
|
||||||
foreach($groups as $group) {
|
foreach($groups as $group) {
|
||||||
$managers = $group->getManagers();
|
$managers = $group->getManagers();
|
||||||
foreach($managers as $manager) {
|
foreach($managers as $manager) {
|
||||||
$appi[] = $manager->getId();
|
/* Do not add myself, if I'm the manager of the group */
|
||||||
|
if($manager->getId() != $user->getId())
|
||||||
|
$appi[] = $manager->getId();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1416,3 +1420,659 @@ class SeedDMS_FolderTree { /* {{{ */
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
|
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
|
|
||||||
|
class SeedDMS_Search { /* {{{ */
|
||||||
|
protected $dms;
|
||||||
|
|
||||||
|
protected $user;
|
||||||
|
|
||||||
|
protected $fulltextservice;
|
||||||
|
|
||||||
|
protected $settings;
|
||||||
|
|
||||||
|
public $searchparams;
|
||||||
|
|
||||||
|
protected $dcount;
|
||||||
|
|
||||||
|
protected $fcount;
|
||||||
|
|
||||||
|
protected $totalPages;
|
||||||
|
|
||||||
|
protected $entries;
|
||||||
|
|
||||||
|
protected $terms;
|
||||||
|
|
||||||
|
protected $searchTime;
|
||||||
|
|
||||||
|
public function __construct($dms, $user, $fulltextservice, $settings) {
|
||||||
|
$this->dms = $dms;
|
||||||
|
$this->user = $user;
|
||||||
|
$this->fulltextservice = $fulltextservice;
|
||||||
|
$this->settings = $settings;
|
||||||
|
$this->searchparams = [];
|
||||||
|
$this->dcount = 0;
|
||||||
|
$this->fcount = 0;
|
||||||
|
$this->totalPages = 0;
|
||||||
|
$this->entries = array();
|
||||||
|
$this->terms = array();
|
||||||
|
$this->searchTime = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function getTime() { /* {{{ */
|
||||||
|
if (function_exists('microtime')) {
|
||||||
|
$tm = microtime();
|
||||||
|
$tm = explode(' ', $tm);
|
||||||
|
return (float) sprintf('%f', $tm[1] + $tm[0]);
|
||||||
|
}
|
||||||
|
return time();
|
||||||
|
} /* }}} */
|
||||||
|
|
||||||
|
public function createSearchFromQuery($get) { /* {{{ */
|
||||||
|
$dms = $this->dms;
|
||||||
|
|
||||||
|
/* Creation date {{{ */
|
||||||
|
$createstartts = null;
|
||||||
|
$createstartdate = null;
|
||||||
|
$createendts = null;
|
||||||
|
$createenddate = null;
|
||||||
|
$created['from'] = null;
|
||||||
|
$created['to'] = null;
|
||||||
|
if(!empty($get["created"]["from"])) {
|
||||||
|
$createstartts = makeTsFromDate($get["created"]["from"]);
|
||||||
|
$createstartdate = array('year'=>(int)date('Y', $createstartts), 'month'=>(int)date('m', $createstartts), 'day'=>(int)date('d', $createstartts), 'hour'=>0, 'minute'=>0, 'second'=>0);
|
||||||
|
if (!checkdate($createstartdate['month'], $createstartdate['day'], $createstartdate['year'])) {
|
||||||
|
UI::exitError(getMLText("search"),getMLText("invalid_create_date_end"));
|
||||||
|
}
|
||||||
|
$created['from'] = $createstartts;
|
||||||
|
}
|
||||||
|
if(!empty($get["created"]["to"])) {
|
||||||
|
$createendts = makeTsFromDate($get["created"]["to"]);
|
||||||
|
$createenddate = array('year'=>(int)date('Y', $createendts), 'month'=>(int)date('m', $createendts), 'day'=>(int)date('d', $createendts), 'hour'=>23, 'minute'=>59, 'second'=>59);
|
||||||
|
if (!checkdate($createenddate['month'], $createenddate['day'], $createenddate['year'])) {
|
||||||
|
UI::exitError(getMLText("search"),getMLText("invalid_create_date_end"));
|
||||||
|
}
|
||||||
|
$created['to'] = $createendts;
|
||||||
|
}
|
||||||
|
$this->searchparams['created'] = $created;
|
||||||
|
/* }}} */
|
||||||
|
|
||||||
|
/* Modification date {{{ */
|
||||||
|
$modifystartts = null;
|
||||||
|
$modifystartdate = null;
|
||||||
|
$modifyendts = null;
|
||||||
|
$modifyenddate = null;
|
||||||
|
$modified['from'] = null;
|
||||||
|
$modified['to'] = null;
|
||||||
|
if(!empty($get["modified"]["from"])) {
|
||||||
|
$modifystartts = makeTsFromDate($get["modified"]["from"]);
|
||||||
|
$modifystartdate = array('year'=>(int)date('Y', $modifystartts), 'month'=>(int)date('m', $modifystartts), 'day'=>(int)date('d', $modifystartts), 'hour'=>0, 'minute'=>0, 'second'=>0);
|
||||||
|
if (!checkdate($modifystartdate['month'], $modifystartdate['day'], $modifystartdate['year'])) {
|
||||||
|
UI::exitError(getMLText("search"),getMLText("invalid_modification_date_end"));
|
||||||
|
}
|
||||||
|
$modified['from'] = $modifystartts;
|
||||||
|
}
|
||||||
|
if(!empty($get["modified"]["to"])) {
|
||||||
|
$modifyendts = makeTsFromDate($get["modified"]["to"]);
|
||||||
|
$modifyenddate = array('year'=>(int)date('Y', $modifyendts), 'month'=>(int)date('m', $modifyendts), 'day'=>(int)date('d', $modifyendts), 'hour'=>23, 'minute'=>59, 'second'=>59);
|
||||||
|
if (!checkdate($modifyenddate['month'], $modifyenddate['day'], $modifyenddate['year'])) {
|
||||||
|
UI::exitError(getMLText("search"),getMLText("invalid_modification_date_end"));
|
||||||
|
}
|
||||||
|
$modified['to'] = $modifyendts;
|
||||||
|
}
|
||||||
|
$this->searchparams['modified'] = $modified;
|
||||||
|
/* }}} */
|
||||||
|
|
||||||
|
/* Filesize {{{ */
|
||||||
|
$filesizestart = 0;
|
||||||
|
$filesizeend = 0;
|
||||||
|
$filesize['from'] = null;
|
||||||
|
$filesize['to'] = null;
|
||||||
|
if(!empty($get["filesize"]["from"])) {
|
||||||
|
$filesizestart = $get["filesize"]["from"];
|
||||||
|
$filesize['from'] = $get["filesize"]["from"];
|
||||||
|
}
|
||||||
|
if(!empty($get["filesize"]["to"])) {
|
||||||
|
$filesizeend = $get["filesize"]["to"];
|
||||||
|
$filesize['to'] = $get["filesize"]["to"];
|
||||||
|
}
|
||||||
|
$this->searchparams['filesize'] = $filesize;
|
||||||
|
/* }}} */
|
||||||
|
|
||||||
|
// Check to see if the search has been restricted to a particular
|
||||||
|
// document owner.
|
||||||
|
// $get['owner'] can be a name of an array of names or ids {{{
|
||||||
|
$owner = [];
|
||||||
|
$ownernames = []; // Needed by fulltext search
|
||||||
|
$ownerobjs = []; // Needed by database search
|
||||||
|
if(!empty($get["owner"])) {
|
||||||
|
$owner = $get['owner'];
|
||||||
|
if (!is_array($get['owner'])) {
|
||||||
|
if(is_numeric($get['owner']))
|
||||||
|
$o = $dms->getUser($get['owner']);
|
||||||
|
else
|
||||||
|
$o = $dms->getUserByLogin($get['owner']);
|
||||||
|
if($o) {
|
||||||
|
$ownernames[] = $o->getLogin();
|
||||||
|
$ownerobjs[] = $o;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
foreach($get["owner"] as $l) {
|
||||||
|
if($l) {
|
||||||
|
if(is_numeric($l))
|
||||||
|
$o = $dms->getUser($l);
|
||||||
|
else
|
||||||
|
$o = $dms->getUserByLogin($l);
|
||||||
|
if($o) {
|
||||||
|
$ownernames[] = $o->getLogin();
|
||||||
|
$ownerobjs[] = $o;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$this->searchparams['ownernames'] = $ownernames;
|
||||||
|
$this->searchparams['ownerobjs'] = $ownerobjs;
|
||||||
|
/* }}} */
|
||||||
|
|
||||||
|
// category {{{
|
||||||
|
$categories = array();
|
||||||
|
$categorynames = array();
|
||||||
|
$category = array();
|
||||||
|
if(isset($get['category']) && $get['category']) {
|
||||||
|
$category = $get['category'];
|
||||||
|
foreach($get['category'] as $catid) {
|
||||||
|
if($catid) {
|
||||||
|
if(is_numeric($catid)) {
|
||||||
|
if($cat = $dms->getDocumentCategory($catid)) {
|
||||||
|
$categories[] = $cat;
|
||||||
|
$categorynames[] = $cat->getName();
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$categorynames[] = $catid;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$this->searchparams['categorynames'] = $categorynames;
|
||||||
|
$this->searchparams['categories'] = $categories;
|
||||||
|
/* }}} */
|
||||||
|
|
||||||
|
if (isset($get["orderby"]) && is_string($get["orderby"])) {
|
||||||
|
$orderby = $get["orderby"];
|
||||||
|
} else {
|
||||||
|
$orderby = "";
|
||||||
|
}
|
||||||
|
$this->searchparams['orderby'] = $orderby;
|
||||||
|
|
||||||
|
$limit = (isset($get["limit"]) && is_numeric($get["limit"])) ? (int) $get['limit'] : 20;
|
||||||
|
$this->searchparams['limit'] = $limit;
|
||||||
|
$fullsearch = ((!isset($get["fullsearch"]) && $this->settings->_defaultSearchMethod == 'fulltext') || !empty($get["fullsearch"])) && $this->settings->_enableFullSearch;
|
||||||
|
$this->searchparams['fullsearch'] = $fullsearch;
|
||||||
|
$facetsearch = !empty($get["facetsearch"]) && $this->settings->_enableFullSearch;
|
||||||
|
$this->searchparams['facetsearch'] = $facetsearch;
|
||||||
|
|
||||||
|
if (isset($get["query"]) && is_string($get["query"])) {
|
||||||
|
$query = $get["query"];
|
||||||
|
} else {
|
||||||
|
$query = "";
|
||||||
|
}
|
||||||
|
$this->searchparams['query'] = $query;
|
||||||
|
|
||||||
|
// Check to see if the search has been restricted to a particular
|
||||||
|
// mimetype. {{{
|
||||||
|
$mimetype = [];
|
||||||
|
if (isset($get["mimetype"])) {
|
||||||
|
if (!is_array($get['mimetype'])) {
|
||||||
|
if(!empty($get['mimetype']))
|
||||||
|
$mimetype[] = $get['mimetype'];
|
||||||
|
} else {
|
||||||
|
foreach($get["mimetype"] as $l) {
|
||||||
|
if($l)
|
||||||
|
$mimetype[] = $l;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$this->searchparams['mimetype'] = $mimetype;
|
||||||
|
/* }}} */
|
||||||
|
|
||||||
|
// status
|
||||||
|
$status = isset($get['status']) ? $get['status'] : array();
|
||||||
|
$this->searchparams['status'] = $status;
|
||||||
|
|
||||||
|
// Get the page number to display. If the result set contains more than
|
||||||
|
// 25 entries, it is displayed across multiple pages.
|
||||||
|
//
|
||||||
|
// This requires that a page number variable be used to track which page the
|
||||||
|
// user is interested in, and an extra clause on the select statement.
|
||||||
|
//
|
||||||
|
// Default page to display is always one.
|
||||||
|
$pageNumber=1;
|
||||||
|
if (isset($get["pg"])) {
|
||||||
|
if (is_numeric($get["pg"]) && $get["pg"]>0) {
|
||||||
|
$pageNumber = (int) $get["pg"];
|
||||||
|
}
|
||||||
|
elseif (!strcasecmp($get["pg"], "all")) {
|
||||||
|
$pageNumber = "all";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$this->searchparams['pageNumber'] = $pageNumber;
|
||||||
|
|
||||||
|
if($fullsearch) {
|
||||||
|
// Search in Fulltext {{{
|
||||||
|
|
||||||
|
// record_type
|
||||||
|
if(isset($get['record_type']))
|
||||||
|
$record_type = $get['record_type'];
|
||||||
|
else
|
||||||
|
$record_type = array();
|
||||||
|
$this->searchparams['record_type'] = $record_type;
|
||||||
|
|
||||||
|
if (isset($get["attributes"]))
|
||||||
|
$attributes = $get["attributes"];
|
||||||
|
else
|
||||||
|
$attributes = array();
|
||||||
|
|
||||||
|
foreach($attributes as $an=>&$av) {
|
||||||
|
if(substr($an, 0, 5) == 'attr_') {
|
||||||
|
$tmp = explode('_', $an);
|
||||||
|
if($attrdef = $dms->getAttributeDefinition($tmp[1])) {
|
||||||
|
switch($attrdef->getType()) {
|
||||||
|
/* Turn dates into timestamps */
|
||||||
|
case SeedDMS_Core_AttributeDefinition::type_date:
|
||||||
|
foreach(['from', 'to'] as $kk)
|
||||||
|
if(!empty($av[$kk])) {
|
||||||
|
if(!is_numeric($av[$kk])) {
|
||||||
|
$av[$kk] = makeTsFromDate($av[$kk]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$this->searchparams['attributes'] = $attributes;
|
||||||
|
|
||||||
|
/* Create $order array for fulltext search */
|
||||||
|
$order = ['by'=>'', 'dir'=>''];
|
||||||
|
switch($orderby) {
|
||||||
|
case 'dd':
|
||||||
|
$order = ['by'=>'created', 'dir'=>'desc'];
|
||||||
|
break;
|
||||||
|
case 'd':
|
||||||
|
$order = ['by'=>'created', 'dir'=>'asc'];
|
||||||
|
break;
|
||||||
|
case 'nd':
|
||||||
|
$order = ['by'=>'title', 'dir'=>'desc'];
|
||||||
|
break;
|
||||||
|
case 'n':
|
||||||
|
$order = ['by'=>'title', 'dir'=>'asc'];
|
||||||
|
break;
|
||||||
|
case 'id':
|
||||||
|
$order = ['by'=>'id', 'dir'=>'desc'];
|
||||||
|
break;
|
||||||
|
case 'i':
|
||||||
|
$order = ['by'=>'id', 'dir'=>'asc'];
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
$order = ['by'=>'', 'dir'=>''];
|
||||||
|
}
|
||||||
|
$this->searchparams['order'] = $order;
|
||||||
|
|
||||||
|
// Check to see if the search has been restricted to a particular sub-tree in
|
||||||
|
// the folder hierarchy.
|
||||||
|
$startFolder = null;
|
||||||
|
if (isset($get["folderfullsearchid"]) && is_numeric($get["folderfullsearchid"]) && $get["folderfullsearchid"]>0) {
|
||||||
|
$targetid = $get["folderfullsearchid"];
|
||||||
|
$startFolder = $this->dms->getFolder($targetid);
|
||||||
|
if (!is_object($startFolder)) {
|
||||||
|
UI::exitError(getMLText("search"),getMLText("invalid_folder_id"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$this->searchparams['startFolder'] = $startFolder;
|
||||||
|
|
||||||
|
$rootFolder = $this->dms->getFolder($this->settings->_rootFolderID);
|
||||||
|
$this->searchparams['rootFolder'] = $rootFolder;
|
||||||
|
|
||||||
|
// }}}
|
||||||
|
} else {
|
||||||
|
// Search in Database {{{
|
||||||
|
|
||||||
|
/* Select if only documents (0x01), only folders (0x02) or both (0x03)
|
||||||
|
* are found
|
||||||
|
*/
|
||||||
|
$resultmode = 0x03;
|
||||||
|
if (isset($get["resultmode"]) && is_numeric($get["resultmode"])) {
|
||||||
|
$resultmode = $get['resultmode'];
|
||||||
|
}
|
||||||
|
$this->searchparams['resultmode'] = $resultmode;
|
||||||
|
|
||||||
|
$mode = "AND";
|
||||||
|
if (isset($get["mode"]) && is_numeric($get["mode"]) && $get["mode"]==0) {
|
||||||
|
$mode = "OR";
|
||||||
|
}
|
||||||
|
$this->searchparams['mode'] = $mode;
|
||||||
|
|
||||||
|
$searchin = array();
|
||||||
|
if (isset($get['searchin']) && is_array($get["searchin"])) {
|
||||||
|
foreach ($get["searchin"] as $si) {
|
||||||
|
if (isset($si) && is_numeric($si)) {
|
||||||
|
switch ($si) {
|
||||||
|
case 1: // keywords
|
||||||
|
case 2: // name
|
||||||
|
case 3: // comment
|
||||||
|
case 4: // attributes
|
||||||
|
case 5: // id
|
||||||
|
$searchin[$si] = $si;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// if none is checkd search all
|
||||||
|
if (count($searchin)==0) $searchin=array(1, 2, 3, 4, 5);
|
||||||
|
$this->searchparams['searchin'] = $searchin;
|
||||||
|
|
||||||
|
// Check to see if the search has been restricted to a particular sub-tree in
|
||||||
|
// the folder hierarchy.
|
||||||
|
if (isset($get["targetid"]) && is_numeric($get["targetid"]) && $get["targetid"]>0) {
|
||||||
|
$targetid = $get["targetid"];
|
||||||
|
$startFolder = $this->dms->getFolder($targetid);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$startFolder = $this->dms->getRootFolder();
|
||||||
|
}
|
||||||
|
if (!is_object($startFolder)) {
|
||||||
|
UI::exitError(getMLText("search"),getMLText("invalid_folder_id"));
|
||||||
|
}
|
||||||
|
$this->searchparams['startFolder'] = $startFolder;
|
||||||
|
|
||||||
|
/* Revision date {{{ */
|
||||||
|
$revisionstartts = null;
|
||||||
|
$revisionstartdate = array();
|
||||||
|
$revisionendts = null;
|
||||||
|
$revisionenddate = array();
|
||||||
|
$revised['from'] = null;
|
||||||
|
$revised['to'] = null;
|
||||||
|
if(!empty($get["revisiondatestart"])) {
|
||||||
|
$revisionstartts = makeTsFromDate($get["revisiondatestart"]);
|
||||||
|
$revisionstartdate = array('year'=>(int)date('Y', $revisionstartts), 'month'=>(int)date('m', $revisionstartts), 'day'=>(int)date('d', $revisionstartts), 'hour'=>0, 'minute'=>0, 'second'=>0);
|
||||||
|
if (!checkdate($revisionstartdate['month'], $revisionstartdate['day'], $revisionstartdate['year'])) {
|
||||||
|
UI::exitError(getMLText("search"),getMLText("invalid_revision_date_start"));
|
||||||
|
}
|
||||||
|
$revised['from'] = $revisionstartts;
|
||||||
|
}
|
||||||
|
$this->searchparams['revisionstartdate'] = $revisionstartdate;
|
||||||
|
if(!empty($get["revisiondateend"])) {
|
||||||
|
$revisionendts = makeTsFromDate($get["revisiondateend"]);
|
||||||
|
$revisionenddate = array('year'=>(int)date('Y', $revisionendts), 'month'=>(int)date('m', $revisionendts), 'day'=>(int)date('d', $revisionendts), 'hour'=>23, 'minute'=>59, 'second'=>59);
|
||||||
|
if (!checkdate($revisionenddate['month'], $revisionenddate['day'], $revisionenddate['year'])) {
|
||||||
|
UI::exitError(getMLText("search"),getMLText("invalid_revision_date_end"));
|
||||||
|
}
|
||||||
|
$revised['to'] = $revisionendts;
|
||||||
|
}
|
||||||
|
$this->searchparams['revisionenddate'] = $revisionenddate;
|
||||||
|
/* }}} */
|
||||||
|
|
||||||
|
/* Status date {{{ */
|
||||||
|
$statusstartdate = array();
|
||||||
|
$statusenddate = array();
|
||||||
|
if(!empty($get["statusdatestart"])) {
|
||||||
|
$statusstartts = makeTsFromDate($get["statusdatestart"]);
|
||||||
|
$statusstartdate = array('year'=>(int)date('Y', $statusstartts), 'month'=>(int)date('m', $statusstartts), 'day'=>(int)date('d', $statusstartts), 'hour'=>0, 'minute'=>0, 'second'=>0);
|
||||||
|
}
|
||||||
|
$this->searchparams['statusstartdate'] = $statusstartdate;
|
||||||
|
if ($statusstartdate && !checkdate($statusstartdate['month'], $statusstartdate['day'], $statusstartdate['year'])) {
|
||||||
|
UI::exitError(getMLText("search"),getMLText("invalid_status_date_start"));
|
||||||
|
}
|
||||||
|
$this->searchparams['statusstartdate'] = $statusstartdate;
|
||||||
|
|
||||||
|
if(!empty($get["statusdateend"])) {
|
||||||
|
$statusendts = makeTsFromDate($get["statusdateend"]);
|
||||||
|
$statusenddate = array('year'=>(int)date('Y', $statusendts), 'month'=>(int)date('m', $statusendts), 'day'=>(int)date('d', $statusendts), 'hour'=>23, 'minute'=>59, 'second'=>59);
|
||||||
|
}
|
||||||
|
if ($statusenddate && !checkdate($statusenddate['month'], $statusenddate['day'], $statusenddate['year'])) {
|
||||||
|
UI::exitError(getMLText("search"),getMLText("invalid_status_date_end"));
|
||||||
|
}
|
||||||
|
$this->searchparams['statusenddate'] = $statusenddate;
|
||||||
|
/* }}} */
|
||||||
|
|
||||||
|
/* Expiration date {{{ */
|
||||||
|
$expstartdate = array();
|
||||||
|
$expenddate = array();
|
||||||
|
if(!empty($get["expirationstart"])) {
|
||||||
|
$expstartts = makeTsFromDate($get["expirationstart"]);
|
||||||
|
$expstartdate = array('year'=>(int)date('Y', $expstartts), 'month'=>(int)date('m', $expstartts), 'day'=>(int)date('d', $expstartts), 'hour'=>0, 'minute'=>0, 'second'=>0);
|
||||||
|
if (!checkdate($expstartdate['month'], $expstartdate['day'], $expstartdate['year'])) {
|
||||||
|
UI::exitError(getMLText("search"),getMLText("invalid_expiration_date_start"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$this->searchparams['expstartdate'] = $expstartdate;
|
||||||
|
if(!empty($get["expirationend"])) {
|
||||||
|
$expendts = makeTsFromDate($get["expirationend"]);
|
||||||
|
$expenddate = array('year'=>(int)date('Y', $expendts), 'month'=>(int)date('m', $expendts), 'day'=>(int)date('d', $expendts), 'hour'=>23, 'minute'=>59, 'second'=>59);
|
||||||
|
if (!checkdate($expenddate['month'], $expenddate['day'], $expenddate['year'])) {
|
||||||
|
UI::exitError(getMLText("search"),getMLText("invalid_expiration_date_end"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$this->searchparams['expenddate'] = $expenddate;
|
||||||
|
/* }}} */
|
||||||
|
|
||||||
|
$reception = array();
|
||||||
|
if (isset($get["reception"])){
|
||||||
|
$reception = $get["reception"];
|
||||||
|
}
|
||||||
|
$this->searchparams['reception'] = $reception;
|
||||||
|
|
||||||
|
/* Do not search for folders if result shall be filtered by status.
|
||||||
|
* If this is not done, unexplainable results will be delivered.
|
||||||
|
* e.g. a search for expired documents of a given user will list
|
||||||
|
* also all folders of that user because the status doesn't apply
|
||||||
|
* to folders.
|
||||||
|
*/
|
||||||
|
// if($status)
|
||||||
|
// $resultmode = 0x01;
|
||||||
|
|
||||||
|
if (isset($get["attributes"]))
|
||||||
|
$attributes = $get["attributes"];
|
||||||
|
else
|
||||||
|
$attributes = array();
|
||||||
|
|
||||||
|
foreach($attributes as $attrdefid=>$attribute) {
|
||||||
|
$attrdef = $this->dms->getAttributeDefinition($attrdefid);
|
||||||
|
if($attribute) {
|
||||||
|
if($attrdef->getType() == SeedDMS_Core_AttributeDefinition::type_date) {
|
||||||
|
if(is_array($attribute)) {
|
||||||
|
if(!empty($attributes[$attrdefid]['from']))
|
||||||
|
$attributes[$attrdefid]['from'] = date('Y-m-d', makeTsFromDate($attribute['from']));
|
||||||
|
if(!empty($attributes[$attrdefid]['to']))
|
||||||
|
$attributes[$attrdefid]['to'] = date('Y-m-d', makeTsFromDate($attribute['to']));
|
||||||
|
} else {
|
||||||
|
$attributes[$attrdefid] = date('Y-m-d', makeTsFromDate($attribute));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$this->searchparams['attributes'] = $attributes;
|
||||||
|
|
||||||
|
// }}}
|
||||||
|
}
|
||||||
|
return $this->searchparams;
|
||||||
|
} /* }}} */
|
||||||
|
|
||||||
|
public function setSearchParam($name, $value) {
|
||||||
|
$this->searchparams[$name] = $value;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function search() { /* {{{ */
|
||||||
|
if($this->searchparams['fullsearch']) {
|
||||||
|
if($this->settings->_fullSearchEngine == 'lucene') {
|
||||||
|
Zend_Search_Lucene_Search_QueryParser::setDefaultEncoding('utf-8');
|
||||||
|
}
|
||||||
|
|
||||||
|
$startTime = $this->getTime();
|
||||||
|
$total = 0;
|
||||||
|
$index = $this->fulltextservice->Indexer();
|
||||||
|
if($index) {
|
||||||
|
if(!empty($this->settings->_suggestTerms) && !empty($get['query'])) {
|
||||||
|
$st = preg_split("/[\s,]+/", trim($get['query']));
|
||||||
|
if($lastterm = end($st))
|
||||||
|
$this->terms = $index->terms($lastterm, $this->settings->_suggestTerms);
|
||||||
|
}
|
||||||
|
$limit = $this->searchparams['limit'];
|
||||||
|
$lucenesearch = $this->fulltextservice->Search();
|
||||||
|
$searchresult = $lucenesearch->search($this->searchparams['query'],
|
||||||
|
array(
|
||||||
|
'record_type'=>$this->searchparams['record_type'],
|
||||||
|
'owner'=>$this->searchparams['ownernames'],
|
||||||
|
'status'=>$this->searchparams['status'],
|
||||||
|
'category'=>$this->searchparams['categorynames'],
|
||||||
|
'user'=>$this->user->isAdmin() ? [] : [$this->user->getLogin()],
|
||||||
|
'mimetype'=>$this->searchparams['mimetype'],
|
||||||
|
'startFolder'=>$this->searchparams['startFolder'],
|
||||||
|
'rootFolder'=>$this->searchparams['rootFolder'],
|
||||||
|
'created_start'=>$this->searchparams['created']['from'],
|
||||||
|
'created_end'=>$this->searchparams['created']['to'],
|
||||||
|
'modified_start'=>$this->searchparams['modified']['from'],
|
||||||
|
'modified_end'=>$this->searchparams['modified']['to'],
|
||||||
|
'filesize_start'=>$this->searchparams['filesize']['from'],
|
||||||
|
'filesize_end'=>$this->searchparams['filesize']['to'],
|
||||||
|
'attributes'=>$this->searchparams['attributes']
|
||||||
|
), ($this->searchparams['pageNumber'] == 'all' ? array() : array('limit'=>$limit, 'offset'=>$limit * ($this->searchparams['pageNumber']-1))), $this->searchparams['order']);
|
||||||
|
if($searchresult !== false) {
|
||||||
|
$entries = array();
|
||||||
|
$facets = $searchresult['facets'];
|
||||||
|
$stats = $searchresult['stats'] ?? null;
|
||||||
|
$dcount = 0;
|
||||||
|
$fcount = 0;
|
||||||
|
if($searchresult['hits']) {
|
||||||
|
foreach($searchresult['hits'] as $hit) {
|
||||||
|
if($hit['document_id'][0] == 'D') {
|
||||||
|
if($tmp = $this->dms->getDocument(substr($hit['document_id'], 1))) {
|
||||||
|
// if($tmp->getAccessMode($user) >= M_READ) {
|
||||||
|
$tmp->verifyLastestContentExpriry();
|
||||||
|
$entries[] = $tmp;
|
||||||
|
$dcount++;
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
} elseif($hit['document_id'][0] == 'F') {
|
||||||
|
if($tmp = $this->dms->getFolder(substr($hit['document_id'], 1))) {
|
||||||
|
// if($tmp->getAccessMode($user) >= M_READ) {
|
||||||
|
$entries[] = $tmp;
|
||||||
|
$fcount++;
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(isset($facets['record_type'])) {
|
||||||
|
$fcount = isset($facets['record_type']['folder']) ? $facets['record_type']['folder'] : 0;
|
||||||
|
$dcount = isset($facets['record_type']['document']) ? $facets['record_type']['document'] : 0 ;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$this->fcount = $fcount;
|
||||||
|
$this->dcount = $dcount;
|
||||||
|
$this->stats = $stats;
|
||||||
|
$this->entries = $entries;
|
||||||
|
$this->facets = $facets;
|
||||||
|
$totalPages = 0;
|
||||||
|
if($limit > 0) {
|
||||||
|
if($searchresult['count'] > $limit) {
|
||||||
|
$totalPages = (int) ($searchresult['count']/$limit);
|
||||||
|
if($searchresult['count']%$limit)
|
||||||
|
$totalPages++;
|
||||||
|
} else {
|
||||||
|
$totalPages = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$this->total = $searchresult['count'];
|
||||||
|
$this->totalPages = $totalPages;
|
||||||
|
}
|
||||||
|
$searchTime = $this->getTime() - $startTime;
|
||||||
|
$this->searchTime = round($searchTime, 2);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// ---------------- Start searching -----------------------------------------
|
||||||
|
$startTime = $this->getTime();
|
||||||
|
$resArr = $this->dms->search(array(
|
||||||
|
'query'=>$this->searchparams['query'],
|
||||||
|
'limit'=>0,
|
||||||
|
'offset'=>0,
|
||||||
|
'logicalmode'=>$this->searchparams['mode'],
|
||||||
|
'searchin'=>$this->searchparams['searchin'],
|
||||||
|
'startFolder'=>$this->searchparams['startFolder'],
|
||||||
|
'owner'=>$this->searchparams['ownerobjs'],
|
||||||
|
'status'=>$this->searchparams['status'],
|
||||||
|
'mimetype'=>$this->searchparams['mimetype'],
|
||||||
|
'creationstartdate'=>$this->searchparams['created']['from'],
|
||||||
|
'creationenddate'=>$this->searchparams['created']['to'],
|
||||||
|
'modificationstartdate'=>$this->searchparams['modified']['from'],
|
||||||
|
'modificationenddate'=>$this->searchparams['modified']['to'],
|
||||||
|
'filesizestart'=>$this->searchparams['filesize']['from'],
|
||||||
|
'filesizeend'=>$this->searchparams['filesize']['to'],
|
||||||
|
'categories'=>$this->searchparams['categories'],
|
||||||
|
'attributes'=>$this->searchparams['attributes'],
|
||||||
|
'mode'=>$this->searchparams['resultmode'],
|
||||||
|
'expirationstartdate'=>$this->searchparams['expstartdate'],
|
||||||
|
'expirationenddate'=>$this->searchparams['expenddate'],
|
||||||
|
'revisionstartdate'=>$this->searchparams['revisionstartdate'],
|
||||||
|
'revisionenddate'=>$this->searchparams['revisionenddate'],
|
||||||
|
'reception'=>$this->searchparams['reception'],
|
||||||
|
'statusstartdate'=>$this->searchparams['statusstartdate'],
|
||||||
|
'statusenddate'=>$this->searchparams['statusenddate'],
|
||||||
|
'orderby'=>$this->searchparams['orderby']
|
||||||
|
));
|
||||||
|
$this->total = $resArr['totalDocs'] + $resArr['totalFolders'];
|
||||||
|
$searchTime = $this->getTime() - $startTime;
|
||||||
|
$this->searchTime = round($searchTime, 2);
|
||||||
|
|
||||||
|
$entries = array();
|
||||||
|
$fcount = 0;
|
||||||
|
if($resArr['folders']) {
|
||||||
|
foreach ($resArr['folders'] as $entry) {
|
||||||
|
if ($entry->getAccessMode($this->user) >= M_READ) {
|
||||||
|
$entries[] = $entry;
|
||||||
|
$fcount++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$this->fcount = $fcount;
|
||||||
|
$dcount = 0;
|
||||||
|
if($resArr['docs']) {
|
||||||
|
foreach ($resArr['docs'] as $entry) {
|
||||||
|
if ($entry->getAccessMode($this->user) >= M_READ) {
|
||||||
|
if($entry->getLatestContent()) {
|
||||||
|
$entry->verifyLastestContentExpriry();
|
||||||
|
$entries[] = $entry;
|
||||||
|
$dcount++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$limit = $this->searchparams['limit'];
|
||||||
|
$this->dcount = $dcount;
|
||||||
|
$totalPages = 0;
|
||||||
|
if($limit > 0) {
|
||||||
|
$totalPages = (int) (count($entries)/$limit);
|
||||||
|
if(count($entries)%$limit)
|
||||||
|
$totalPages++;
|
||||||
|
}
|
||||||
|
if($this->searchparams['pageNumber'] != 'all')
|
||||||
|
$this->entries = array_slice($entries, ($this->searchparams['pageNumber']-1)*$limit, $limit);
|
||||||
|
$this->totalPages = $totalPages;
|
||||||
|
$this->facets = array();
|
||||||
|
$this->stats = array();
|
||||||
|
}
|
||||||
|
} /* }}} */
|
||||||
|
|
||||||
|
public function getFolderCount() {
|
||||||
|
return $this->fcount;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getDocumentCount() {
|
||||||
|
return $this->dcount;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getTotal() {
|
||||||
|
return $this->total;
|
||||||
|
}
|
||||||
|
} /* }}} */
|
||||||
|
|
|
@ -20,7 +20,7 @@
|
||||||
|
|
||||||
class SeedDMS_Version { /* {{{ */
|
class SeedDMS_Version { /* {{{ */
|
||||||
|
|
||||||
const _number = "6.0.31";
|
const _number = "6.0.33";
|
||||||
const _string = "SeedDMS";
|
const _string = "SeedDMS";
|
||||||
|
|
||||||
function __construct() {
|
function __construct() {
|
||||||
|
|
50
index.php
50
index.php
|
@ -44,32 +44,9 @@ if(true) {
|
||||||
|
|
||||||
$containerBuilder = new \DI\ContainerBuilder();
|
$containerBuilder = new \DI\ContainerBuilder();
|
||||||
$c = $containerBuilder->build();
|
$c = $containerBuilder->build();
|
||||||
/*
|
|
||||||
$c['notFoundHandler'] = function ($c) use ($settings, $dms) {
|
|
||||||
return function ($request, $response) use ($c, $settings, $dms) {
|
|
||||||
$uri = $request->getUri();
|
|
||||||
if($uri->getBasePath())
|
|
||||||
$file = $uri->getPath();
|
|
||||||
else
|
|
||||||
$file = substr($uri->getPath(), 1);
|
|
||||||
if(file_exists($file) && is_file($file)) {
|
|
||||||
$_SERVER['SCRIPT_FILENAME'] = basename($file);
|
|
||||||
// include($file);
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
if($request->isXhr()) {
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
// print_r($request->getUri());
|
|
||||||
// exit;
|
|
||||||
return $c['response']
|
|
||||||
->withStatus(302)
|
|
||||||
->withHeader('Location', isset($settings->_siteDefaultPage) && strlen($settings->_siteDefaultPage)>0 ? $settings->_httpRoot.$settings->_siteDefaultPage : $settings->_httpRoot."out/out.ViewFolder.php");
|
|
||||||
};
|
|
||||||
};
|
|
||||||
*/
|
|
||||||
AppFactory::setContainer($c);
|
AppFactory::setContainer($c);
|
||||||
$app = AppFactory::create();
|
$app = AppFactory::create();
|
||||||
|
|
||||||
/* put lots of data into the container, because if slim instanciates
|
/* put lots of data into the container, because if slim instanciates
|
||||||
* a class by itself (with the help from the DI container), it will
|
* a class by itself (with the help from the DI container), it will
|
||||||
* pass the container to the constructor of the instanciated class.
|
* pass the container to the constructor of the instanciated class.
|
||||||
|
@ -91,12 +68,8 @@ if(true) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$app->get('/', function($request, $response) {
|
$app->addErrorMiddleware(false, true, true);
|
||||||
return $response
|
|
||||||
->withHeader('Location', '/out/out.ViewFolder.php')
|
|
||||||
->withStatus(302);
|
|
||||||
|
|
||||||
});
|
|
||||||
if(isset($GLOBALS['SEEDDMS_HOOKS']['initDMS'])) {
|
if(isset($GLOBALS['SEEDDMS_HOOKS']['initDMS'])) {
|
||||||
foreach($GLOBALS['SEEDDMS_HOOKS']['initDMS'] as $hookObj) {
|
foreach($GLOBALS['SEEDDMS_HOOKS']['initDMS'] as $hookObj) {
|
||||||
if (method_exists($hookObj, 'addRoute')) {
|
if (method_exists($hookObj, 'addRoute')) {
|
||||||
|
@ -107,20 +80,13 @@ if(true) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/* Catch all route */
|
||||||
$app->get('/out/[{path:.*}]', function($request, $response, $path = null) use ($app) {
|
$app->get('/{path:.*}', function($request, $response) use ($settings) {
|
||||||
$uri = $request->getUri();
|
return $response
|
||||||
if($uri->getBasePath())
|
->withHeader('Location', $settings->_httpRoot.'out/out.ViewFolder.php')
|
||||||
$file = $uri->getPath();
|
->withStatus(302);
|
||||||
else
|
|
||||||
$file = substr($uri->getPath(), 1);
|
|
||||||
if(file_exists($file) && is_file($file)) {
|
|
||||||
$_SERVER['SCRIPT_FILENAME'] = basename($file);
|
|
||||||
include($file);
|
|
||||||
exit;
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
*/
|
|
||||||
|
|
||||||
$app->run();
|
$app->run();
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -406,86 +406,97 @@ echo '<p><a href="install.php">' . getMLText("settings_start_install") . '</a></
|
||||||
$this->contentHeading("SeedDMS Installation for version ".$_GET['version']);
|
$this->contentHeading("SeedDMS Installation for version ".$_GET['version']);
|
||||||
$this->contentContainerStart();
|
$this->contentContainerStart();
|
||||||
|
|
||||||
$sqlfile = "update.sql";
|
$sqlfile = "update.sql";
|
||||||
switch($settings->_dbDriver) {
|
switch($settings->_dbDriver) {
|
||||||
case 'mysql':
|
case 'mysql':
|
||||||
case 'mysqli':
|
case 'mysqli':
|
||||||
case 'mysqlnd':
|
case 'mysqlnd':
|
||||||
$tmp = explode(":", $settings->_dbHostname);
|
$tmp = explode(":", $settings->_dbHostname);
|
||||||
$dsn = $settings->_dbDriver.":dbname=".$settings->_dbDatabase.";host=".$tmp[0];
|
$dsn = $settings->_dbDriver.":dbname=".$settings->_dbDatabase.";host=".$tmp[0];
|
||||||
if(isset($tmp[1]))
|
if(isset($tmp[1]))
|
||||||
$dsn .= ";port=".$tmp[1];
|
$dsn .= ";port=".$tmp[1];
|
||||||
break;
|
break;
|
||||||
case 'sqlite':
|
case 'sqlite':
|
||||||
$dsn = $settings->_dbDriver.":".$settings->_dbDatabase;
|
$dsn = $settings->_dbDriver.":".$settings->_dbDatabase;
|
||||||
if(file_exists('update-'.$_GET['version'].'/update-sqlite3.sql'))
|
if(file_exists('update-'.$_GET['version'].'/update-sqlite3.sql'))
|
||||||
$sqlfile = "update-sqlite3.sql";
|
$sqlfile = "update-sqlite3.sql";
|
||||||
break;
|
break;
|
||||||
case 'pgsql':
|
case 'pgsql':
|
||||||
$tmp = explode(":", $settings->_dbHostname);
|
$tmp = explode(":", $settings->_dbHostname);
|
||||||
$dsn = $settings->_dbDriver.":dbname=".$settings->_dbDatabase.";host=".$tmp[0];
|
$dsn = $settings->_dbDriver.":dbname=".$settings->_dbDatabase.";host=".$tmp[0];
|
||||||
if(isset($tmp[1]))
|
if(isset($tmp[1]))
|
||||||
$dsn .= ";port=".$tmp[1];
|
$dsn .= ";port=".$tmp[1];
|
||||||
if(file_exists('update-'.$_GET['version'].'/update-postgres.sql'))
|
if(file_exists('update-'.$_GET['version'].'/update-postgres.sql'))
|
||||||
$sqlfile = "update-postgres.sql";
|
$sqlfile = "update-postgres.sql";
|
||||||
}
|
}
|
||||||
$db = new PDO($dsn, $settings->_dbUser, $settings->_dbPass);
|
$db = new PDO($dsn, $settings->_dbUser, $settings->_dbPass);
|
||||||
if (!$db) {
|
if (!$db) {
|
||||||
die;
|
die;
|
||||||
}
|
}
|
||||||
|
|
||||||
$errorMsg = '';
|
$errorMsg = '';
|
||||||
$res = $db->query('select * from tblVersion');
|
switch($settings->_dbDriver) {
|
||||||
$recs = $res->fetchAll(PDO::FETCH_ASSOC);
|
case 'mysql':
|
||||||
if(!empty($recs)) {
|
case 'mysqli':
|
||||||
$rec = $recs[0];
|
case 'mysqlnd':
|
||||||
if($_GET['version'] > $rec['major'].'.'.$rec['minor'].'.'.$rec['subminor']) {
|
case 'sqlite':
|
||||||
|
$sql = 'select * from `tblVersion`';
|
||||||
|
break;
|
||||||
|
case 'pgsql':
|
||||||
|
$sql = 'select * from "tblVersion"';
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
$res = $db->query($sql);
|
||||||
|
$recs = $res->fetchAll(PDO::FETCH_ASSOC);
|
||||||
|
if(!empty($recs)) {
|
||||||
|
$rec = $recs[0];
|
||||||
|
if($_GET['version'] > $rec['major'].'.'.$rec['minor'].'.'.$rec['subminor']) {
|
||||||
|
|
||||||
if(file_exists('update-'.$_GET['version'].'/'.$sqlfile)) {
|
if(file_exists('update-'.$_GET['version'].'/'.$sqlfile)) {
|
||||||
$queries = file_get_contents('update-'.$_GET['version'].'/'.$sqlfile);
|
$queries = file_get_contents('update-'.$_GET['version'].'/'.$sqlfile);
|
||||||
$queries = explode(";", $queries);
|
$queries = explode(";", $queries);
|
||||||
|
|
||||||
// execute queries
|
// execute queries
|
||||||
if($queries) {
|
if($queries) {
|
||||||
echo "<h3>Updating database schema</h3>";
|
echo "<h3>Updating database schema</h3>";
|
||||||
foreach($queries as $query) {
|
foreach($queries as $query) {
|
||||||
$query = trim($query);
|
$query = trim($query);
|
||||||
if (!empty($query)) {
|
if (!empty($query)) {
|
||||||
echo $query."<br />";
|
echo $query."<br />";
|
||||||
if(false === $db->exec($query)) {
|
if(false === $db->exec($query)) {
|
||||||
$e = $db->ErrorInfo();
|
$e = $db->ErrorInfo();
|
||||||
$errorMsg .= $e[2] . "<br/>";
|
$errorMsg .= $e[2] . "<br/>";
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
echo "<p>SQL file for update missing!</p>";
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
echo "<p>Database schema already up to date.</p>";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if(!$errorMsg) {
|
||||||
|
if(file_exists('update-'.$_GET['version'].'/update.php')) {
|
||||||
|
echo "<h3>Running update script</h3>";
|
||||||
|
include('update-'.$_GET['version'].'/update.php');
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
echo "<h3>Error Messages</h3>";
|
||||||
|
echo $errorMsg;
|
||||||
|
}
|
||||||
|
echo "<p><a href=\"install.php\">Go back to installation and recheck.</a></p>";
|
||||||
} else {
|
} else {
|
||||||
echo "<p>SQL file for update missing!</p>";
|
echo "<p>Could not determine database schema version.</p>";
|
||||||
}
|
}
|
||||||
} else {
|
$db = null;
|
||||||
echo "<p>Database schema already up to date.</p>";
|
|
||||||
}
|
|
||||||
|
|
||||||
|
// just remove info for web page installation
|
||||||
if(!$errorMsg) {
|
$settings->_printDisclaimer = false;
|
||||||
if(file_exists('update-'.$_GET['version'].'/update.php')) {
|
$settings->_footNote = false;
|
||||||
echo "<h3>Running update script</h3>";
|
// end of the page
|
||||||
include('update-'.$_GET['version'].'/update.php');
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
echo "<h3>Error Messages</h3>";
|
|
||||||
echo $errorMsg;
|
|
||||||
}
|
|
||||||
echo "<p><a href=\"install.php\">Go back to installation and recheck.</a></p>";
|
|
||||||
} else {
|
|
||||||
echo "<p>Could not determine database schema version.</p>";
|
|
||||||
}
|
|
||||||
$db = null;
|
|
||||||
|
|
||||||
// just remove info for web page installation
|
|
||||||
$settings->_printDisclaimer = false;
|
|
||||||
$settings->_footNote = false;
|
|
||||||
// end of the page
|
|
||||||
$this->contentContainerEnd();
|
$this->contentContainerEnd();
|
||||||
$this->contentEnd();
|
$this->contentEnd();
|
||||||
$this->htmlEndPage();
|
$this->htmlEndPage();
|
||||||
|
|
|
@ -686,6 +686,8 @@ URL: [url]',
|
||||||
'export_user_list_csv' => '',
|
'export_user_list_csv' => '',
|
||||||
'extension_archive' => 'إرشيف أطول',
|
'extension_archive' => 'إرشيف أطول',
|
||||||
'extension_changelog' => 'سجل التعديلات',
|
'extension_changelog' => 'سجل التعديلات',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => '',
|
'extension_is_off_now' => '',
|
||||||
'extension_is_on_now' => '',
|
'extension_is_on_now' => '',
|
||||||
'extension_loading' => 'تحميل الإضافات',
|
'extension_loading' => 'تحميل الإضافات',
|
||||||
|
@ -1140,6 +1142,7 @@ URL: [url]',
|
||||||
'no_groups' => 'لايوجد مجموعات',
|
'no_groups' => 'لايوجد مجموعات',
|
||||||
'no_group_members' => 'هذه المجموعة لايوجد بها اعضاء',
|
'no_group_members' => 'هذه المجموعة لايوجد بها اعضاء',
|
||||||
'no_linked_files' => 'لايوجد ملفات مرتبطة',
|
'no_linked_files' => 'لايوجد ملفات مرتبطة',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => 'لايوجد اصدارات سابقة',
|
'no_previous_versions' => 'لايوجد اصدارات سابقة',
|
||||||
'no_receipt_needed' => 'لا يحتاج لأي مستلم',
|
'no_receipt_needed' => 'لا يحتاج لأي مستلم',
|
||||||
'no_review_needed' => 'لايوجد مراجعات في الانتظار',
|
'no_review_needed' => 'لايوجد مراجعات في الانتظار',
|
||||||
|
@ -1287,6 +1290,7 @@ URL: [url]',
|
||||||
'removeFolderFromDropFolder' => 'إزالة مجلد من إسقاط لائحة',
|
'removeFolderFromDropFolder' => 'إزالة مجلد من إسقاط لائحة',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => '',
|
'remove_approval_log' => '',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => 'ازالة الملفات المختارة',
|
'remove_marked_files' => 'ازالة الملفات المختارة',
|
||||||
'remove_review_log' => '',
|
'remove_review_log' => '',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1683,6 +1687,8 @@ URL: [url]',
|
||||||
'settings_enableLargeFileUpload_desc' => 'تمكين تحميل الملفات الكبيرة',
|
'settings_enableLargeFileUpload_desc' => 'تمكين تحميل الملفات الكبيرة',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => 'تمكين مهام القائمة',
|
'settings_enableMenuTasks' => 'تمكين مهام القائمة',
|
||||||
'settings_enableMenuTasks_desc' => 'تمكين مهام القائمة',
|
'settings_enableMenuTasks_desc' => 'تمكين مهام القائمة',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -2001,6 +2007,7 @@ URL: [url]',
|
||||||
'sign_out' => 'تسجيل الخروج',
|
'sign_out' => 'تسجيل الخروج',
|
||||||
'sign_out_user' => 'تسجيل خروج مستخدم',
|
'sign_out_user' => 'تسجيل خروج مستخدم',
|
||||||
'site_brand' => 'مجلس النواب اللبناني',
|
'site_brand' => 'مجلس النواب اللبناني',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => 'السلوفاكية',
|
'sk_SK' => 'السلوفاكية',
|
||||||
'sort_by_date' => 'رتب حسب التاريخ',
|
'sort_by_date' => 'رتب حسب التاريخ',
|
||||||
'sort_by_expiration_date' => '',
|
'sort_by_expiration_date' => '',
|
||||||
|
@ -2130,6 +2137,7 @@ URL: [url]',
|
||||||
'status_revision_sleeping' => 'مراجعة الوضع في حالة النوم',
|
'status_revision_sleeping' => 'مراجعة الوضع في حالة النوم',
|
||||||
'status_revisor_removed' => 'تم ازالة حالة المراجع',
|
'status_revisor_removed' => 'تم ازالة حالة المراجع',
|
||||||
'status_unknown' => 'مجهول',
|
'status_unknown' => 'مجهول',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => 'حجم التخزين',
|
'storage_size' => 'حجم التخزين',
|
||||||
'subfolder_duplicate_name' => 'اسم مجلد فرعي مكرر',
|
'subfolder_duplicate_name' => 'اسم مجلد فرعي مكرر',
|
||||||
'submit_2_fact_auth' => 'قدم ثنائي عامل التوثيق',
|
'submit_2_fact_auth' => 'قدم ثنائي عامل التوثيق',
|
||||||
|
|
|
@ -620,6 +620,8 @@ $text = array(
|
||||||
'export_user_list_csv' => '',
|
'export_user_list_csv' => '',
|
||||||
'extension_archive' => '',
|
'extension_archive' => '',
|
||||||
'extension_changelog' => '',
|
'extension_changelog' => '',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => '',
|
'extension_is_off_now' => '',
|
||||||
'extension_is_on_now' => '',
|
'extension_is_on_now' => '',
|
||||||
'extension_loading' => '',
|
'extension_loading' => '',
|
||||||
|
@ -1018,6 +1020,7 @@ $text = array(
|
||||||
'no_groups' => 'Няма групи',
|
'no_groups' => 'Няма групи',
|
||||||
'no_group_members' => 'Групата няма членове',
|
'no_group_members' => 'Групата няма членове',
|
||||||
'no_linked_files' => 'Няма свързани файлове',
|
'no_linked_files' => 'Няма свързани файлове',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => 'Няма други версии',
|
'no_previous_versions' => 'Няма други версии',
|
||||||
'no_receipt_needed' => '',
|
'no_receipt_needed' => '',
|
||||||
'no_review_needed' => 'Рецензия не е нужна',
|
'no_review_needed' => 'Рецензия не е нужна',
|
||||||
|
@ -1156,6 +1159,7 @@ $text = array(
|
||||||
'removeFolderFromDropFolder' => '',
|
'removeFolderFromDropFolder' => '',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => '',
|
'remove_approval_log' => '',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => '',
|
'remove_marked_files' => '',
|
||||||
'remove_review_log' => '',
|
'remove_review_log' => '',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1525,6 +1529,8 @@ $text = array(
|
||||||
'settings_enableLargeFileUpload_desc' => 'Ако е включено, качване на файлове е дустъпно и чрез джава-аплет, именован jumploader, без лимит за размер на файла. Това също ще позволи да се качват няколко файла наведнъж.',
|
'settings_enableLargeFileUpload_desc' => 'Ако е включено, качване на файлове е дустъпно и чрез джава-аплет, именован jumploader, без лимит за размер на файла. Това също ще позволи да се качват няколко файла наведнъж.',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => '',
|
'settings_enableMenuTasks' => '',
|
||||||
'settings_enableMenuTasks_desc' => '',
|
'settings_enableMenuTasks_desc' => '',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -1843,6 +1849,7 @@ $text = array(
|
||||||
'sign_out' => 'изход',
|
'sign_out' => 'изход',
|
||||||
'sign_out_user' => '',
|
'sign_out_user' => '',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => 'Словашки',
|
'sk_SK' => 'Словашки',
|
||||||
'sort_by_date' => 'Сортирай по дата"',
|
'sort_by_date' => 'Сортирай по дата"',
|
||||||
'sort_by_expiration_date' => '',
|
'sort_by_expiration_date' => '',
|
||||||
|
@ -1972,6 +1979,7 @@ $text = array(
|
||||||
'status_revision_sleeping' => '',
|
'status_revision_sleeping' => '',
|
||||||
'status_revisor_removed' => '',
|
'status_revisor_removed' => '',
|
||||||
'status_unknown' => 'Неизвестен',
|
'status_unknown' => 'Неизвестен',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => 'Размер на хранилището',
|
'storage_size' => 'Размер на хранилището',
|
||||||
'subfolder_duplicate_name' => '',
|
'subfolder_duplicate_name' => '',
|
||||||
'submit_2_fact_auth' => '',
|
'submit_2_fact_auth' => '',
|
||||||
|
|
|
@ -625,6 +625,8 @@ URL: [url]',
|
||||||
'export_user_list_csv' => '',
|
'export_user_list_csv' => '',
|
||||||
'extension_archive' => '',
|
'extension_archive' => '',
|
||||||
'extension_changelog' => '',
|
'extension_changelog' => '',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => '',
|
'extension_is_off_now' => '',
|
||||||
'extension_is_on_now' => '',
|
'extension_is_on_now' => '',
|
||||||
'extension_loading' => '',
|
'extension_loading' => '',
|
||||||
|
@ -1023,6 +1025,7 @@ URL: [url]',
|
||||||
'no_groups' => 'No hi ha grups',
|
'no_groups' => 'No hi ha grups',
|
||||||
'no_group_members' => 'Aquest grup no té membres',
|
'no_group_members' => 'Aquest grup no té membres',
|
||||||
'no_linked_files' => 'No hi ha fitxers enllaçats',
|
'no_linked_files' => 'No hi ha fitxers enllaçats',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => 'No s\'han trobat altres versions',
|
'no_previous_versions' => 'No s\'han trobat altres versions',
|
||||||
'no_receipt_needed' => '',
|
'no_receipt_needed' => '',
|
||||||
'no_review_needed' => 'No hi ha revisions pendents.',
|
'no_review_needed' => 'No hi ha revisions pendents.',
|
||||||
|
@ -1161,6 +1164,7 @@ URL: [url]',
|
||||||
'removeFolderFromDropFolder' => 'Esborrar carpeta després de la importació',
|
'removeFolderFromDropFolder' => 'Esborrar carpeta després de la importació',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => '',
|
'remove_approval_log' => '',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => '',
|
'remove_marked_files' => '',
|
||||||
'remove_review_log' => '',
|
'remove_review_log' => '',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1530,6 +1534,8 @@ URL: [url]',
|
||||||
'settings_enableLargeFileUpload_desc' => '',
|
'settings_enableLargeFileUpload_desc' => '',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => '',
|
'settings_enableMenuTasks' => '',
|
||||||
'settings_enableMenuTasks_desc' => '',
|
'settings_enableMenuTasks_desc' => '',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -1848,6 +1854,7 @@ URL: [url]',
|
||||||
'sign_out' => 'desconnectar',
|
'sign_out' => 'desconnectar',
|
||||||
'sign_out_user' => '',
|
'sign_out_user' => '',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => 'Eslovac',
|
'sk_SK' => 'Eslovac',
|
||||||
'sort_by_date' => '',
|
'sort_by_date' => '',
|
||||||
'sort_by_expiration_date' => '',
|
'sort_by_expiration_date' => '',
|
||||||
|
@ -1977,6 +1984,7 @@ URL: [url]',
|
||||||
'status_revision_sleeping' => '',
|
'status_revision_sleeping' => '',
|
||||||
'status_revisor_removed' => '',
|
'status_revisor_removed' => '',
|
||||||
'status_unknown' => 'Desconegut',
|
'status_unknown' => 'Desconegut',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => 'Storage size',
|
'storage_size' => 'Storage size',
|
||||||
'subfolder_duplicate_name' => '',
|
'subfolder_duplicate_name' => '',
|
||||||
'submit_2_fact_auth' => '',
|
'submit_2_fact_auth' => '',
|
||||||
|
|
|
@ -710,6 +710,8 @@ URL: [url]',
|
||||||
'export_user_list_csv' => '',
|
'export_user_list_csv' => '',
|
||||||
'extension_archive' => 'Rozšíření',
|
'extension_archive' => 'Rozšíření',
|
||||||
'extension_changelog' => 'Changelog',
|
'extension_changelog' => 'Changelog',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => '',
|
'extension_is_off_now' => '',
|
||||||
'extension_is_on_now' => '',
|
'extension_is_on_now' => '',
|
||||||
'extension_loading' => 'Načítání rozšíření',
|
'extension_loading' => 'Načítání rozšíření',
|
||||||
|
@ -1171,6 +1173,7 @@ URL: [url]',
|
||||||
'no_groups' => 'Žádné skupiny',
|
'no_groups' => 'Žádné skupiny',
|
||||||
'no_group_members' => 'Tato skupina nemá žádné členy',
|
'no_group_members' => 'Tato skupina nemá žádné členy',
|
||||||
'no_linked_files' => 'Žádné propojené soubory',
|
'no_linked_files' => 'Žádné propojené soubory',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => 'Nebyly nalezeny žádné jiné verze',
|
'no_previous_versions' => 'Nebyly nalezeny žádné jiné verze',
|
||||||
'no_receipt_needed' => 'Nejsou žádné dokumenty, které by vyžadovaly potvrzení o přijetí.',
|
'no_receipt_needed' => 'Nejsou žádné dokumenty, které by vyžadovaly potvrzení o přijetí.',
|
||||||
'no_review_needed' => 'Nic nečeká k recenzi.',
|
'no_review_needed' => 'Nic nečeká k recenzi.',
|
||||||
|
@ -1333,6 +1336,7 @@ URL: [url]',
|
||||||
'removeFolderFromDropFolder' => 'Odstranit složku po nahrání',
|
'removeFolderFromDropFolder' => 'Odstranit složku po nahrání',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => '',
|
'remove_approval_log' => '',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => 'Odstranit označené soubory',
|
'remove_marked_files' => 'Odstranit označené soubory',
|
||||||
'remove_review_log' => '',
|
'remove_review_log' => '',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1755,6 +1759,8 @@ Jméno: [username]
|
||||||
'settings_enableLargeFileUpload_desc' => 'Je-li nastaveno, nahrávání souborů je také k dispozici prostřednictvím java appletu s názvem jumploader bez omezení velikosti souboru nastaveného prohlížečem. Umožňuje také nahrát několik souborů v jednom kroku.',
|
'settings_enableLargeFileUpload_desc' => 'Je-li nastaveno, nahrávání souborů je také k dispozici prostřednictvím java appletu s názvem jumploader bez omezení velikosti souboru nastaveného prohlížečem. Umožňuje také nahrát několik souborů v jednom kroku.',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => 'Povolit seznam úkolů v nabídce',
|
'settings_enableMenuTasks' => 'Povolit seznam úkolů v nabídce',
|
||||||
'settings_enableMenuTasks_desc' => 'Aktivovat / Zakázat položku nabídky, která obsahuje všechny úkoly pro uživatele. Obsahuje dokumenty, které musí být přezkoumány, schváleny atd.',
|
'settings_enableMenuTasks_desc' => 'Aktivovat / Zakázat položku nabídky, která obsahuje všechny úkoly pro uživatele. Obsahuje dokumenty, které musí být přezkoumány, schváleny atd.',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -2073,6 +2079,7 @@ Jméno: [username]
|
||||||
'sign_out' => 'Odhlásit',
|
'sign_out' => 'Odhlásit',
|
||||||
'sign_out_user' => 'Odhlášení uživatele',
|
'sign_out_user' => 'Odhlášení uživatele',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => 'Slovenština',
|
'sk_SK' => 'Slovenština',
|
||||||
'sort_by_date' => '',
|
'sort_by_date' => '',
|
||||||
'sort_by_expiration_date' => '',
|
'sort_by_expiration_date' => '',
|
||||||
|
@ -2202,6 +2209,7 @@ Jméno: [username]
|
||||||
'status_revision_sleeping' => 'Probíhá',
|
'status_revision_sleeping' => 'Probíhá',
|
||||||
'status_revisor_removed' => 'Kontrolor odstraněn ze seznamu',
|
'status_revisor_removed' => 'Kontrolor odstraněn ze seznamu',
|
||||||
'status_unknown' => 'Neznámý',
|
'status_unknown' => 'Neznámý',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => 'Velikost úložiště',
|
'storage_size' => 'Velikost úložiště',
|
||||||
'subfolder_duplicate_name' => '',
|
'subfolder_duplicate_name' => '',
|
||||||
'submit_2_fact_auth' => 'Poslán tajný kód',
|
'submit_2_fact_auth' => 'Poslán tajný kód',
|
||||||
|
|
|
@ -19,7 +19,7 @@
|
||||||
// along with this program; if not, write to the Free Software
|
// along with this program; if not, write to the Free Software
|
||||||
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
//
|
//
|
||||||
// Translators: Admin (3433), dgrutsch (22)
|
// Translators: Admin (3444), dgrutsch (22)
|
||||||
|
|
||||||
$text = array(
|
$text = array(
|
||||||
'2_factor_auth' => '2-Faktor Authentifizierung',
|
'2_factor_auth' => '2-Faktor Authentifizierung',
|
||||||
|
@ -409,7 +409,7 @@ URL: [url]</p>',
|
||||||
'current_version' => 'Aktuelle Version',
|
'current_version' => 'Aktuelle Version',
|
||||||
'daily' => 'täglich',
|
'daily' => 'täglich',
|
||||||
'dashboard' => 'Übersicht',
|
'dashboard' => 'Übersicht',
|
||||||
'databasesearch' => 'Datenbanksuche',
|
'databasesearch' => 'Datenbank',
|
||||||
'database_schema_version' => 'Version des Datenbankschemas',
|
'database_schema_version' => 'Version des Datenbankschemas',
|
||||||
'data_loading' => 'Bitte warten, bis die Daten geladen sind …',
|
'data_loading' => 'Bitte warten, bis die Daten geladen sind …',
|
||||||
'date' => 'Datum',
|
'date' => 'Datum',
|
||||||
|
@ -850,6 +850,8 @@ URL: [url]</p>',
|
||||||
'export_user_list_csv' => 'Exportiere Benutzer als CSV-Datei',
|
'export_user_list_csv' => 'Exportiere Benutzer als CSV-Datei',
|
||||||
'extension_archive' => 'Erweiterung',
|
'extension_archive' => 'Erweiterung',
|
||||||
'extension_changelog' => 'Versionshistorie',
|
'extension_changelog' => 'Versionshistorie',
|
||||||
|
'extension_config' => 'Einstellungen',
|
||||||
|
'extension_info' => 'Erweiterungen',
|
||||||
'extension_is_off_now' => 'Erweiterung ist ausgeschaltet',
|
'extension_is_off_now' => 'Erweiterung ist ausgeschaltet',
|
||||||
'extension_is_on_now' => 'Erweiterung ist eingeschaltet',
|
'extension_is_on_now' => 'Erweiterung ist eingeschaltet',
|
||||||
'extension_loading' => 'Lade Erweiterungen ...',
|
'extension_loading' => 'Lade Erweiterungen ...',
|
||||||
|
@ -865,7 +867,7 @@ URL: [url]</p>',
|
||||||
'extension_readme' => 'Readme',
|
'extension_readme' => 'Readme',
|
||||||
'extension_toggle_error' => 'Konnte Erweiterung nicht aus/einschalten',
|
'extension_toggle_error' => 'Konnte Erweiterung nicht aus/einschalten',
|
||||||
'extension_version_list' => 'Versionen',
|
'extension_version_list' => 'Versionen',
|
||||||
'facetfullsearch' => 'Volltextsuche (Facetten)',
|
'facetfullsearch' => 'Volltext (Facetten)',
|
||||||
'february' => 'Februar',
|
'february' => 'Februar',
|
||||||
'file' => 'Datei',
|
'file' => 'Datei',
|
||||||
'files' => 'Dateien',
|
'files' => 'Dateien',
|
||||||
|
@ -1046,7 +1048,7 @@ URL: [url]</p>',
|
||||||
'friday_abbr' => 'Fr',
|
'friday_abbr' => 'Fr',
|
||||||
'from' => 'von',
|
'from' => 'von',
|
||||||
'fr_FR' => 'Französisch',
|
'fr_FR' => 'Französisch',
|
||||||
'fullsearch' => 'Volltextsuche',
|
'fullsearch' => 'Volltext',
|
||||||
'fullsearch_hint' => 'Volltext-Index benutzen',
|
'fullsearch_hint' => 'Volltext-Index benutzen',
|
||||||
'fulltextsearch_disabled' => 'Volltext-Index ist ausgeschaltet',
|
'fulltextsearch_disabled' => 'Volltext-Index ist ausgeschaltet',
|
||||||
'fulltext_converters' => 'Index Dokumentenumwandlung',
|
'fulltext_converters' => 'Index Dokumentenumwandlung',
|
||||||
|
@ -1404,6 +1406,7 @@ URL: [url]</p>',
|
||||||
'no_groups' => 'keine Gruppen',
|
'no_groups' => 'keine Gruppen',
|
||||||
'no_group_members' => 'Diese Gruppe hat keine Mitglieder',
|
'no_group_members' => 'Diese Gruppe hat keine Mitglieder',
|
||||||
'no_linked_files' => 'Keine verknüpften Dokumente',
|
'no_linked_files' => 'Keine verknüpften Dokumente',
|
||||||
|
'no_mimetype' => 'Kein Mime-Type',
|
||||||
'no_previous_versions' => 'Keine anderen Versionen gefunden',
|
'no_previous_versions' => 'Keine anderen Versionen gefunden',
|
||||||
'no_receipt_needed' => 'Es gibt zur Zeit keine Dokumente, die eine Empfangsbestätigung erfordern.',
|
'no_receipt_needed' => 'Es gibt zur Zeit keine Dokumente, die eine Empfangsbestätigung erfordern.',
|
||||||
'no_review_needed' => 'Keine offenen Prüfungen.',
|
'no_review_needed' => 'Keine offenen Prüfungen.',
|
||||||
|
@ -1622,6 +1625,7 @@ URL: [url]</p>',
|
||||||
'removeFolderFromDropFolder' => 'Ordner nach Import entfernen',
|
'removeFolderFromDropFolder' => 'Ordner nach Import entfernen',
|
||||||
'removeFolderFromDropFolder_desc' => 'Schalten Sie dies ein, um den importierten Ordner im Ablageordner auf der Festplatte zu löschen.',
|
'removeFolderFromDropFolder_desc' => 'Schalten Sie dies ein, um den importierten Ordner im Ablageordner auf der Festplatte zu löschen.',
|
||||||
'remove_approval_log' => 'Einzelne Freigabe entfernen',
|
'remove_approval_log' => 'Einzelne Freigabe entfernen',
|
||||||
|
'remove_from_clipboard' => 'Aus Zwischenablage entfernen',
|
||||||
'remove_marked_files' => 'Markierte Dateien löschen',
|
'remove_marked_files' => 'Markierte Dateien löschen',
|
||||||
'remove_review_log' => 'Einzelne Prüfung entfernen',
|
'remove_review_log' => 'Einzelne Prüfung entfernen',
|
||||||
'remove_task' => 'Task entfernen',
|
'remove_task' => 'Task entfernen',
|
||||||
|
@ -2146,6 +2150,8 @@ Sollten Sie kein Passwort bekommen haben, dann nutzen Sie bitte die Passwort-Ver
|
||||||
'settings_enableLargeFileUpload_desc' => 'Wenn dies gesetzt ist, dann ist ebenfalls der Upload von Dokumenten durch ein java applet mit Namen \'jumploader\' ohne Begrenzung der maximalen Dateigröße möglich. Auch das Hochladen mehrerer Dokumente in einem Schritt wird dadurch ermöglicht. Das Einschalten bewirkt, dass keine http only Cookies mehr gesetzt werden.',
|
'settings_enableLargeFileUpload_desc' => 'Wenn dies gesetzt ist, dann ist ebenfalls der Upload von Dokumenten durch ein java applet mit Namen \'jumploader\' ohne Begrenzung der maximalen Dateigröße möglich. Auch das Hochladen mehrerer Dokumente in einem Schritt wird dadurch ermöglicht. Das Einschalten bewirkt, dass keine http only Cookies mehr gesetzt werden.',
|
||||||
'settings_enableLoginByEmail' => 'Anmeldung mit E-Mail erlauben',
|
'settings_enableLoginByEmail' => 'Anmeldung mit E-Mail erlauben',
|
||||||
'settings_enableLoginByEmail_desc' => 'Wenn eingeschaltet, dann ist auch die Anmeldung mit der E-Mail-Adresse möglich. Die Anmeldung mit dem Benutzername bleibt weiterhin möglich. Diese Einstellung wird möglicherweise nicht von allen Authentifizierungsmethoden berücksichtigt. Da die E-Mail nicht eindeutig ist, kann die Identifikation fehlschagen, auch wenn das Password aus Sicht des anmeldenen Benutzers korrekt ist.',
|
'settings_enableLoginByEmail_desc' => 'Wenn eingeschaltet, dann ist auch die Anmeldung mit der E-Mail-Adresse möglich. Die Anmeldung mit dem Benutzername bleibt weiterhin möglich. Diese Einstellung wird möglicherweise nicht von allen Authentifizierungsmethoden berücksichtigt. Da die E-Mail nicht eindeutig ist, kann die Identifikation fehlschagen, auch wenn das Password aus Sicht des anmeldenen Benutzers korrekt ist.',
|
||||||
|
'settings_enableMemcached' => 'Memcached verwenden',
|
||||||
|
'settings_enableMemcached_desc' => 'Verwendet intern memcached, um einige Datenbankoperationen zu beschleunigen und sollte nicht im Produktionsbetrieb eingeschaltet werden.',
|
||||||
'settings_enableMenuTasks' => 'Aufgabenliste im Menü',
|
'settings_enableMenuTasks' => 'Aufgabenliste im Menü',
|
||||||
'settings_enableMenuTasks_desc' => 'Ein-/Ausschalten des Menüeintrags, der anstehenden Aufgaben des Benutzers enthält. Diese Liste beinhaltet Dokumente die geprüft, freigegeben, usw. werden müssen.',
|
'settings_enableMenuTasks_desc' => 'Ein-/Ausschalten des Menüeintrags, der anstehenden Aufgaben des Benutzers enthält. Diese Liste beinhaltet Dokumente die geprüft, freigegeben, usw. werden müssen.',
|
||||||
'settings_enableMenuTransmittals' => 'Dokumentenlisten im Menü',
|
'settings_enableMenuTransmittals' => 'Dokumentenlisten im Menü',
|
||||||
|
@ -2464,6 +2470,7 @@ Sollten Sie kein Passwort bekommen haben, dann nutzen Sie bitte die Passwort-Ver
|
||||||
'sign_out' => 'Abmelden',
|
'sign_out' => 'Abmelden',
|
||||||
'sign_out_user' => 'Benutzer abmelden',
|
'sign_out_user' => 'Benutzer abmelden',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => 'Keine voreingestellten Spalten',
|
||||||
'sk_SK' => 'Slovakisch',
|
'sk_SK' => 'Slovakisch',
|
||||||
'sort_by_date' => 'Nach Datum sortieren',
|
'sort_by_date' => 'Nach Datum sortieren',
|
||||||
'sort_by_expiration_date' => 'Nach Ablaufdatum sortieren',
|
'sort_by_expiration_date' => 'Nach Ablaufdatum sortieren',
|
||||||
|
@ -2593,6 +2600,7 @@ Sollten Sie kein Passwort bekommen haben, dann nutzen Sie bitte die Passwort-Ver
|
||||||
'status_revision_sleeping' => 'wartend',
|
'status_revision_sleeping' => 'wartend',
|
||||||
'status_revisor_removed' => 'Wiederholungsprüfer von Liste entfernt',
|
'status_revisor_removed' => 'Wiederholungsprüfer von Liste entfernt',
|
||||||
'status_unknown' => 'unbekannt',
|
'status_unknown' => 'unbekannt',
|
||||||
|
'storage' => 'Speicherung',
|
||||||
'storage_size' => 'Speicherverbrauch',
|
'storage_size' => 'Speicherverbrauch',
|
||||||
'subfolder_duplicate_name' => 'Doppelter Unterordnername',
|
'subfolder_duplicate_name' => 'Doppelter Unterordnername',
|
||||||
'submit_2_fact_auth' => 'Schlüssel speichern',
|
'submit_2_fact_auth' => 'Schlüssel speichern',
|
||||||
|
|
|
@ -620,6 +620,8 @@ $text = array(
|
||||||
'export_user_list_csv' => '',
|
'export_user_list_csv' => '',
|
||||||
'extension_archive' => '',
|
'extension_archive' => '',
|
||||||
'extension_changelog' => '',
|
'extension_changelog' => '',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => '',
|
'extension_is_off_now' => '',
|
||||||
'extension_is_on_now' => '',
|
'extension_is_on_now' => '',
|
||||||
'extension_loading' => '',
|
'extension_loading' => '',
|
||||||
|
@ -1029,6 +1031,7 @@ URL: [url]',
|
||||||
'no_groups' => '',
|
'no_groups' => '',
|
||||||
'no_group_members' => '',
|
'no_group_members' => '',
|
||||||
'no_linked_files' => 'δεν υπάρχουν συνδεδεμένα αρχεία',
|
'no_linked_files' => 'δεν υπάρχουν συνδεδεμένα αρχεία',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => '',
|
'no_previous_versions' => '',
|
||||||
'no_receipt_needed' => '',
|
'no_receipt_needed' => '',
|
||||||
'no_review_needed' => '',
|
'no_review_needed' => '',
|
||||||
|
@ -1167,6 +1170,7 @@ URL: [url]',
|
||||||
'removeFolderFromDropFolder' => '',
|
'removeFolderFromDropFolder' => '',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => '',
|
'remove_approval_log' => '',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => '',
|
'remove_marked_files' => '',
|
||||||
'remove_review_log' => '',
|
'remove_review_log' => '',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1536,6 +1540,8 @@ URL: [url]',
|
||||||
'settings_enableLargeFileUpload_desc' => '',
|
'settings_enableLargeFileUpload_desc' => '',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => '',
|
'settings_enableMenuTasks' => '',
|
||||||
'settings_enableMenuTasks_desc' => '',
|
'settings_enableMenuTasks_desc' => '',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -1854,6 +1860,7 @@ URL: [url]',
|
||||||
'sign_out' => 'Αποσύνδεση',
|
'sign_out' => 'Αποσύνδεση',
|
||||||
'sign_out_user' => 'Αποσύνδεση χρήστη',
|
'sign_out_user' => 'Αποσύνδεση χρήστη',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => 'Σλοβάκικα',
|
'sk_SK' => 'Σλοβάκικα',
|
||||||
'sort_by_date' => '',
|
'sort_by_date' => '',
|
||||||
'sort_by_expiration_date' => '',
|
'sort_by_expiration_date' => '',
|
||||||
|
@ -1983,6 +1990,7 @@ URL: [url]',
|
||||||
'status_revision_sleeping' => '',
|
'status_revision_sleeping' => '',
|
||||||
'status_revisor_removed' => '',
|
'status_revisor_removed' => '',
|
||||||
'status_unknown' => '',
|
'status_unknown' => '',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => '',
|
'storage_size' => '',
|
||||||
'subfolder_duplicate_name' => '',
|
'subfolder_duplicate_name' => '',
|
||||||
'submit_2_fact_auth' => '',
|
'submit_2_fact_auth' => '',
|
||||||
|
|
|
@ -19,7 +19,7 @@
|
||||||
// along with this program; if not, write to the Free Software
|
// along with this program; if not, write to the Free Software
|
||||||
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
//
|
//
|
||||||
// Translators: Admin (2531), archonwang (3), dgrutsch (9), netixw (14)
|
// Translators: Admin (2547), archonwang (3), dgrutsch (9), netixw (14)
|
||||||
|
|
||||||
$text = array(
|
$text = array(
|
||||||
'2_factor_auth' => '2-factor authentication',
|
'2_factor_auth' => '2-factor authentication',
|
||||||
|
@ -409,7 +409,7 @@ URL: [url]</p>',
|
||||||
'current_version' => 'Current version',
|
'current_version' => 'Current version',
|
||||||
'daily' => 'Daily',
|
'daily' => 'Daily',
|
||||||
'dashboard' => 'Dashboard',
|
'dashboard' => 'Dashboard',
|
||||||
'databasesearch' => 'Database search',
|
'databasesearch' => 'Database',
|
||||||
'database_schema_version' => 'Version of database schema',
|
'database_schema_version' => 'Version of database schema',
|
||||||
'data_loading' => 'Please wait, until the data is loaded …',
|
'data_loading' => 'Please wait, until the data is loaded …',
|
||||||
'date' => 'Date',
|
'date' => 'Date',
|
||||||
|
@ -467,7 +467,7 @@ URL: [url]</p>',
|
||||||
'documents_user_no_reception' => 'Documents without reception',
|
'documents_user_no_reception' => 'Documents without reception',
|
||||||
'documents_user_obsolete' => 'Obsolete documents',
|
'documents_user_obsolete' => 'Obsolete documents',
|
||||||
'documents_user_reception' => 'Documents awaiting reception',
|
'documents_user_reception' => 'Documents awaiting reception',
|
||||||
'documents_user_rejected' => 'Rejected documents',
|
'documents_user_rejected' => 'Documents rejected',
|
||||||
'documents_user_requiring_attention' => 'Documents owned by you that require attention',
|
'documents_user_requiring_attention' => 'Documents owned by you that require attention',
|
||||||
'documents_with_notification' => 'Documents with notification',
|
'documents_with_notification' => 'Documents with notification',
|
||||||
'document_access_permission_changed_email' => 'Permission changed',
|
'document_access_permission_changed_email' => 'Permission changed',
|
||||||
|
@ -850,6 +850,8 @@ URL: [url]</p>',
|
||||||
'export_user_list_csv' => 'Export users as CSV',
|
'export_user_list_csv' => 'Export users as CSV',
|
||||||
'extension_archive' => 'Extension',
|
'extension_archive' => 'Extension',
|
||||||
'extension_changelog' => 'Changelog',
|
'extension_changelog' => 'Changelog',
|
||||||
|
'extension_config' => 'Settings',
|
||||||
|
'extension_info' => 'Extensions',
|
||||||
'extension_is_off_now' => 'Extension off now',
|
'extension_is_off_now' => 'Extension off now',
|
||||||
'extension_is_on_now' => 'Extension now enabled',
|
'extension_is_on_now' => 'Extension now enabled',
|
||||||
'extension_loading' => 'Loading extensions ...',
|
'extension_loading' => 'Loading extensions ...',
|
||||||
|
@ -865,7 +867,7 @@ URL: [url]</p>',
|
||||||
'extension_readme' => 'Readme',
|
'extension_readme' => 'Readme',
|
||||||
'extension_toggle_error' => 'Could not toggle extension',
|
'extension_toggle_error' => 'Could not toggle extension',
|
||||||
'extension_version_list' => 'Versions',
|
'extension_version_list' => 'Versions',
|
||||||
'facetfullsearch' => 'Full text search (facetts)',
|
'facetfullsearch' => 'Full text (facetts)',
|
||||||
'february' => 'February',
|
'february' => 'February',
|
||||||
'file' => 'File',
|
'file' => 'File',
|
||||||
'files' => 'Files',
|
'files' => 'Files',
|
||||||
|
@ -875,7 +877,7 @@ URL: [url]</p>',
|
||||||
'files_loading' => 'Please wait, until the list of files is loaded …',
|
'files_loading' => 'Please wait, until the list of files is loaded …',
|
||||||
'filetype' => 'File type',
|
'filetype' => 'File type',
|
||||||
'filter_for_documents' => 'Additional filter for documents',
|
'filter_for_documents' => 'Additional filter for documents',
|
||||||
'filter_for_documents_and_folders' => 'Additional filter for folder and documents',
|
'filter_for_documents_and_folders' => 'Additional filter for folders and documents',
|
||||||
'filter_for_folders' => 'Additional filter for folders',
|
'filter_for_folders' => 'Additional filter for folders',
|
||||||
'finished_workflow_log' => 'Finished workflows',
|
'finished_workflow_log' => 'Finished workflows',
|
||||||
'folder' => 'Folder',
|
'folder' => 'Folder',
|
||||||
|
@ -1046,7 +1048,7 @@ URL: [url]</p>',
|
||||||
'friday_abbr' => 'Fr',
|
'friday_abbr' => 'Fr',
|
||||||
'from' => 'From',
|
'from' => 'From',
|
||||||
'fr_FR' => 'French',
|
'fr_FR' => 'French',
|
||||||
'fullsearch' => 'Full text search',
|
'fullsearch' => 'Full text',
|
||||||
'fullsearch_hint' => 'Use fulltext index',
|
'fullsearch_hint' => 'Use fulltext index',
|
||||||
'fulltextsearch_disabled' => 'Fulltext index is disabled',
|
'fulltextsearch_disabled' => 'Fulltext index is disabled',
|
||||||
'fulltext_converters' => 'Index document conversion',
|
'fulltext_converters' => 'Index document conversion',
|
||||||
|
@ -1198,9 +1200,9 @@ URL: [url]</p>',
|
||||||
'language' => 'Language',
|
'language' => 'Language',
|
||||||
'lastaccess' => 'Last access',
|
'lastaccess' => 'Last access',
|
||||||
'last_update' => 'Last Update',
|
'last_update' => 'Last Update',
|
||||||
'latest_newdocuments' => 'Latest added documents',
|
'latest_newdocuments' => 'Recently added documents',
|
||||||
'latest_statuschange' => 'Latest status change',
|
'latest_statuschange' => 'Documents with recent status change',
|
||||||
'latest_updateddocuments' => 'Latest updated documents',
|
'latest_updateddocuments' => 'Recently updated documents',
|
||||||
'legend' => 'Legend',
|
'legend' => 'Legend',
|
||||||
'librarydoc' => 'Document from library',
|
'librarydoc' => 'Document from library',
|
||||||
'linked_document' => 'Linked document',
|
'linked_document' => 'Linked document',
|
||||||
|
@ -1406,6 +1408,7 @@ URL: [url]</p>',
|
||||||
'no_groups' => 'No groups',
|
'no_groups' => 'No groups',
|
||||||
'no_group_members' => 'This group has no members',
|
'no_group_members' => 'This group has no members',
|
||||||
'no_linked_files' => 'No linked files',
|
'no_linked_files' => 'No linked files',
|
||||||
|
'no_mimetype' => 'No mimetype',
|
||||||
'no_previous_versions' => 'No other versions found',
|
'no_previous_versions' => 'No other versions found',
|
||||||
'no_receipt_needed' => 'There are currently no documents requiring a receipt confirmation.',
|
'no_receipt_needed' => 'There are currently no documents requiring a receipt confirmation.',
|
||||||
'no_review_needed' => 'No review pending.',
|
'no_review_needed' => 'No review pending.',
|
||||||
|
@ -1624,6 +1627,7 @@ URL: [url]</p>',
|
||||||
'removeFolderFromDropFolder' => 'Remove folder after import',
|
'removeFolderFromDropFolder' => 'Remove folder after import',
|
||||||
'removeFolderFromDropFolder_desc' => 'Enable this if you want the folder which was imported to be removed from the drop folder.',
|
'removeFolderFromDropFolder_desc' => 'Enable this if you want the folder which was imported to be removed from the drop folder.',
|
||||||
'remove_approval_log' => 'Remove approval',
|
'remove_approval_log' => 'Remove approval',
|
||||||
|
'remove_from_clipboard' => 'Remove from clipboard',
|
||||||
'remove_marked_files' => 'Remove marked files',
|
'remove_marked_files' => 'Remove marked files',
|
||||||
'remove_review_log' => 'Remove review',
|
'remove_review_log' => 'Remove review',
|
||||||
'remove_task' => 'Remove task',
|
'remove_task' => 'Remove task',
|
||||||
|
@ -2148,6 +2152,8 @@ If you did not receive a password, please use the password forgotten function on
|
||||||
'settings_enableLargeFileUpload_desc' => 'If set, file upload is also available through a java applet called jumploader without a file size limit set by the browser. It also allows to upload several files in one step. Turning this on will turn off http only cookies.',
|
'settings_enableLargeFileUpload_desc' => 'If set, file upload is also available through a java applet called jumploader without a file size limit set by the browser. It also allows to upload several files in one step. Turning this on will turn off http only cookies.',
|
||||||
'settings_enableLoginByEmail' => 'Enable login by email',
|
'settings_enableLoginByEmail' => 'Enable login by email',
|
||||||
'settings_enableLoginByEmail_desc' => 'If enabled, the user maya also use the email address for login. This will not disable login with the username. This setting may not be regarded by all authentication methods. Because the email is not unique, authentication may fail, even if the user enters a right password.',
|
'settings_enableLoginByEmail_desc' => 'If enabled, the user maya also use the email address for login. This will not disable login with the username. This setting may not be regarded by all authentication methods. Because the email is not unique, authentication may fail, even if the user enters a right password.',
|
||||||
|
'settings_enableMemcached' => 'Use memcached (experimental)',
|
||||||
|
'settings_enableMemcached_desc' => 'Use memcached for accelerating some database operations. This should not be be turned on in production.',
|
||||||
'settings_enableMenuTasks' => 'Enable task list in menu',
|
'settings_enableMenuTasks' => 'Enable task list in menu',
|
||||||
'settings_enableMenuTasks_desc' => 'Enable/Disable the menu item which contains all tasks for the user. This contains documents, that need to be reviewed, approved, etc.',
|
'settings_enableMenuTasks_desc' => 'Enable/Disable the menu item which contains all tasks for the user. This contains documents, that need to be reviewed, approved, etc.',
|
||||||
'settings_enableMenuTransmittals' => 'Enable transmittals in menu',
|
'settings_enableMenuTransmittals' => 'Enable transmittals in menu',
|
||||||
|
@ -2466,6 +2472,7 @@ If you did not receive a password, please use the password forgotten function on
|
||||||
'sign_out' => 'Sign out',
|
'sign_out' => 'Sign out',
|
||||||
'sign_out_user' => 'Sign out user',
|
'sign_out_user' => 'Sign out user',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => 'Skip default columns',
|
||||||
'sk_SK' => 'Slovak',
|
'sk_SK' => 'Slovak',
|
||||||
'sort_by_date' => 'Sort by date',
|
'sort_by_date' => 'Sort by date',
|
||||||
'sort_by_expiration_date' => 'Sort by date of expiration',
|
'sort_by_expiration_date' => 'Sort by date of expiration',
|
||||||
|
@ -2595,6 +2602,7 @@ If you did not receive a password, please use the password forgotten function on
|
||||||
'status_revision_sleeping' => 'pending',
|
'status_revision_sleeping' => 'pending',
|
||||||
'status_revisor_removed' => 'Revisor removed from list',
|
'status_revisor_removed' => 'Revisor removed from list',
|
||||||
'status_unknown' => 'Unknown',
|
'status_unknown' => 'Unknown',
|
||||||
|
'storage' => 'Storage',
|
||||||
'storage_size' => 'Storage size',
|
'storage_size' => 'Storage size',
|
||||||
'subfolder_duplicate_name' => 'Duplicate subfolder name',
|
'subfolder_duplicate_name' => 'Duplicate subfolder name',
|
||||||
'submit_2_fact_auth' => 'Save secret',
|
'submit_2_fact_auth' => 'Save secret',
|
||||||
|
|
|
@ -699,6 +699,8 @@ URL: [url]',
|
||||||
'export_user_list_csv' => '',
|
'export_user_list_csv' => '',
|
||||||
'extension_archive' => '',
|
'extension_archive' => '',
|
||||||
'extension_changelog' => 'Log de Cambios',
|
'extension_changelog' => 'Log de Cambios',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => '',
|
'extension_is_off_now' => '',
|
||||||
'extension_is_on_now' => '',
|
'extension_is_on_now' => '',
|
||||||
'extension_loading' => 'Cargando extensiones',
|
'extension_loading' => 'Cargando extensiones',
|
||||||
|
@ -1155,6 +1157,7 @@ URL: [url]',
|
||||||
'no_groups' => 'No hay grupos',
|
'no_groups' => 'No hay grupos',
|
||||||
'no_group_members' => 'Este grupo no tiene miembros',
|
'no_group_members' => 'Este grupo no tiene miembros',
|
||||||
'no_linked_files' => 'No hay ficheros vinculados',
|
'no_linked_files' => 'No hay ficheros vinculados',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => 'No se han encontrado otras versiones',
|
'no_previous_versions' => 'No se han encontrado otras versiones',
|
||||||
'no_receipt_needed' => '',
|
'no_receipt_needed' => '',
|
||||||
'no_review_needed' => 'No hay revisiones pendientes.',
|
'no_review_needed' => 'No hay revisiones pendientes.',
|
||||||
|
@ -1310,6 +1313,7 @@ nURL: [url]',
|
||||||
'removeFolderFromDropFolder' => 'Eliminar carpeta después de importar',
|
'removeFolderFromDropFolder' => 'Eliminar carpeta después de importar',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => '',
|
'remove_approval_log' => '',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => 'Eliminar ficheros marcados',
|
'remove_marked_files' => 'Eliminar ficheros marcados',
|
||||||
'remove_review_log' => '',
|
'remove_review_log' => '',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1706,6 +1710,8 @@ URL: [url]',
|
||||||
'settings_enableLargeFileUpload_desc' => 'Si se habilita, la carga de ficheros también estará disponible a través de un applet java llamado jumploader, sin límite de tamaño de fichero fijado por el navegador. También permite la carga de múltiples ficheros de una sola vez.',
|
'settings_enableLargeFileUpload_desc' => 'Si se habilita, la carga de ficheros también estará disponible a través de un applet java llamado jumploader, sin límite de tamaño de fichero fijado por el navegador. También permite la carga de múltiples ficheros de una sola vez.',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => 'Activar en el menú la lista de tareas',
|
'settings_enableMenuTasks' => 'Activar en el menú la lista de tareas',
|
||||||
'settings_enableMenuTasks_desc' => 'Habilita/Deshabillita la parte del menú que contiene todas las tareas para el usuario. Contiene documentos que necesitan ser revisados, aprobados, etc.',
|
'settings_enableMenuTasks_desc' => 'Habilita/Deshabillita la parte del menú que contiene todas las tareas para el usuario. Contiene documentos que necesitan ser revisados, aprobados, etc.',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -2024,6 +2030,7 @@ URL: [url]',
|
||||||
'sign_out' => 'Salir',
|
'sign_out' => 'Salir',
|
||||||
'sign_out_user' => 'Desconectar usuario',
|
'sign_out_user' => 'Desconectar usuario',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => 'Slovaco',
|
'sk_SK' => 'Slovaco',
|
||||||
'sort_by_date' => 'Ordenar por Fecha',
|
'sort_by_date' => 'Ordenar por Fecha',
|
||||||
'sort_by_expiration_date' => 'Ordenar por fecha de vencimiento',
|
'sort_by_expiration_date' => 'Ordenar por fecha de vencimiento',
|
||||||
|
@ -2153,6 +2160,7 @@ URL: [url]',
|
||||||
'status_revision_sleeping' => 'pendiente',
|
'status_revision_sleeping' => 'pendiente',
|
||||||
'status_revisor_removed' => '',
|
'status_revisor_removed' => '',
|
||||||
'status_unknown' => 'Desconocido',
|
'status_unknown' => 'Desconocido',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => 'Tamaño de almacenamiento',
|
'storage_size' => 'Tamaño de almacenamiento',
|
||||||
'subfolder_duplicate_name' => '',
|
'subfolder_duplicate_name' => '',
|
||||||
'submit_2_fact_auth' => '',
|
'submit_2_fact_auth' => '',
|
||||||
|
|
|
@ -19,7 +19,7 @@
|
||||||
// along with this program; if not, write to the Free Software
|
// along with this program; if not, write to the Free Software
|
||||||
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
//
|
//
|
||||||
// Translators: Admin (1173), jeromerobert (50), lonnnew (9), Oudiceval (1171)
|
// Translators: Admin (1175), jeromerobert (50), lonnnew (9), Oudiceval (1171)
|
||||||
|
|
||||||
$text = array(
|
$text = array(
|
||||||
'2_factor_auth' => 'Authentification forte',
|
'2_factor_auth' => 'Authentification forte',
|
||||||
|
@ -820,6 +820,8 @@ URL : [url]</p>',
|
||||||
'export_user_list_csv' => 'Exporter les utilisateurs en CSV',
|
'export_user_list_csv' => 'Exporter les utilisateurs en CSV',
|
||||||
'extension_archive' => 'Extension',
|
'extension_archive' => 'Extension',
|
||||||
'extension_changelog' => 'Journal des modifications',
|
'extension_changelog' => 'Journal des modifications',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => 'L’extension est désactivée',
|
'extension_is_off_now' => 'L’extension est désactivée',
|
||||||
'extension_is_on_now' => 'L’extension est activée',
|
'extension_is_on_now' => 'L’extension est activée',
|
||||||
'extension_loading' => 'Chargement des extensions…',
|
'extension_loading' => 'Chargement des extensions…',
|
||||||
|
@ -1361,6 +1363,7 @@ URL : [url]</p>',
|
||||||
'no_groups' => 'Aucun groupe',
|
'no_groups' => 'Aucun groupe',
|
||||||
'no_group_members' => 'Ce groupe ne contient aucun membre',
|
'no_group_members' => 'Ce groupe ne contient aucun membre',
|
||||||
'no_linked_files' => 'Aucun fichier lié',
|
'no_linked_files' => 'Aucun fichier lié',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => 'Aucune autre version trouvée',
|
'no_previous_versions' => 'Aucune autre version trouvée',
|
||||||
'no_receipt_needed' => 'Il n’y a actuellement aucun document nécessitant une confirmation de réception.',
|
'no_receipt_needed' => 'Il n’y a actuellement aucun document nécessitant une confirmation de réception.',
|
||||||
'no_review_needed' => 'Aucune vérification en attente',
|
'no_review_needed' => 'Aucune vérification en attente',
|
||||||
|
@ -1577,6 +1580,7 @@ URL : [url]</p>',
|
||||||
'removeFolderFromDropFolder' => 'Suppression du dossier après importation',
|
'removeFolderFromDropFolder' => 'Suppression du dossier après importation',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => 'Approbation retirée',
|
'remove_approval_log' => 'Approbation retirée',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => 'Supprimer les fichiers sélectionnés',
|
'remove_marked_files' => 'Supprimer les fichiers sélectionnés',
|
||||||
'remove_review_log' => 'Vérification retirée',
|
'remove_review_log' => 'Vérification retirée',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -2093,6 +2097,8 @@ Nom : [username]
|
||||||
'settings_enableLargeFileUpload_desc' => 'Si défini, le téléchargement de fichier est également disponible via un applet java appelé jumploader sans limite de taille définie par le navigateur. Il permet également de télécharger plusieurs fichiers en une seule fois.',
|
'settings_enableLargeFileUpload_desc' => 'Si défini, le téléchargement de fichier est également disponible via un applet java appelé jumploader sans limite de taille définie par le navigateur. Il permet également de télécharger plusieurs fichiers en une seule fois.',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => 'Activer le menu des tâches',
|
'settings_enableMenuTasks' => 'Activer le menu des tâches',
|
||||||
'settings_enableMenuTasks_desc' => 'Affiche un menu avec la liste des tâches. Cette liste contient les documents en attente d’une action par l’utilisateur.',
|
'settings_enableMenuTasks_desc' => 'Affiche un menu avec la liste des tâches. Cette liste contient les documents en attente d’une action par l’utilisateur.',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -2411,6 +2417,7 @@ Nom : [username]
|
||||||
'sign_out' => 'Déconnexion',
|
'sign_out' => 'Déconnexion',
|
||||||
'sign_out_user' => 'Déconnecter l\'utilisateur',
|
'sign_out_user' => 'Déconnecter l\'utilisateur',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => 'Slovaque',
|
'sk_SK' => 'Slovaque',
|
||||||
'sort_by_date' => 'Trier par date',
|
'sort_by_date' => 'Trier par date',
|
||||||
'sort_by_expiration_date' => 'Trier par date d’expiration',
|
'sort_by_expiration_date' => 'Trier par date d’expiration',
|
||||||
|
@ -2540,6 +2547,7 @@ Nom : [username]
|
||||||
'status_revision_sleeping' => 'en attente',
|
'status_revision_sleeping' => 'en attente',
|
||||||
'status_revisor_removed' => 'Réviseur retiré de la liste',
|
'status_revisor_removed' => 'Réviseur retiré de la liste',
|
||||||
'status_unknown' => 'Inconnu',
|
'status_unknown' => 'Inconnu',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => 'Taille occupée',
|
'storage_size' => 'Taille occupée',
|
||||||
'subfolder_duplicate_name' => 'Un sous-dossier porte déjà ce nom !',
|
'subfolder_duplicate_name' => 'Un sous-dossier porte déjà ce nom !',
|
||||||
'submit_2_fact_auth' => 'Enregistrer la clé secrète',
|
'submit_2_fact_auth' => 'Enregistrer la clé secrète',
|
||||||
|
@ -2684,7 +2692,7 @@ URL : [url]</p>',
|
||||||
'type_to_filter' => 'Filtrer dans la liste',
|
'type_to_filter' => 'Filtrer dans la liste',
|
||||||
'type_to_search' => 'Effectuer une recherche',
|
'type_to_search' => 'Effectuer une recherche',
|
||||||
'uk_UA' => 'Ukrénien',
|
'uk_UA' => 'Ukrénien',
|
||||||
'undefined' => '',
|
'undefined' => 'indéfini',
|
||||||
'under_folder' => 'Dans le dossier',
|
'under_folder' => 'Dans le dossier',
|
||||||
'unknown_attrdef' => 'Définition d’attribut inconnue',
|
'unknown_attrdef' => 'Définition d’attribut inconnue',
|
||||||
'unknown_command' => 'Commande non reconnue.',
|
'unknown_command' => 'Commande non reconnue.',
|
||||||
|
@ -2703,7 +2711,7 @@ URL : [url]</p>',
|
||||||
'unlock_cause_locking_user' => 'Vous pouvez encore le mettre à jour, car vous êtes le seul à l\'avoir verrouillé. Le verrouillage sera automatiquement annulé.',
|
'unlock_cause_locking_user' => 'Vous pouvez encore le mettre à jour, car vous êtes le seul à l\'avoir verrouillé. Le verrouillage sera automatiquement annulé.',
|
||||||
'unlock_document' => 'Déverrouiller',
|
'unlock_document' => 'Déverrouiller',
|
||||||
'update' => 'Mettre à jour',
|
'update' => 'Mettre à jour',
|
||||||
'updated' => '',
|
'updated' => 'mis à jour',
|
||||||
'updated_documents' => '',
|
'updated_documents' => '',
|
||||||
'update_approvers' => 'Mettre à jour la liste des approbateurs',
|
'update_approvers' => 'Mettre à jour la liste des approbateurs',
|
||||||
'update_document' => 'Mettre à jour',
|
'update_document' => 'Mettre à jour',
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -693,6 +693,8 @@ URL: [url]',
|
||||||
'export_user_list_csv' => '',
|
'export_user_list_csv' => '',
|
||||||
'extension_archive' => 'Bővítmények',
|
'extension_archive' => 'Bővítmények',
|
||||||
'extension_changelog' => 'Változásnapló',
|
'extension_changelog' => 'Változásnapló',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => '',
|
'extension_is_off_now' => '',
|
||||||
'extension_is_on_now' => '',
|
'extension_is_on_now' => '',
|
||||||
'extension_loading' => 'Kiterjesztések betöltése ...',
|
'extension_loading' => 'Kiterjesztések betöltése ...',
|
||||||
|
@ -1146,6 +1148,7 @@ URL: [url]',
|
||||||
'no_groups' => 'Nincsenek csoportok',
|
'no_groups' => 'Nincsenek csoportok',
|
||||||
'no_group_members' => 'Ennek a csoportnak nincsenek tagjai',
|
'no_group_members' => 'Ennek a csoportnak nincsenek tagjai',
|
||||||
'no_linked_files' => 'Nincsenek hivatkozott állományok',
|
'no_linked_files' => 'Nincsenek hivatkozott állományok',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => 'Nem találhatók más változatok',
|
'no_previous_versions' => 'Nem találhatók más változatok',
|
||||||
'no_receipt_needed' => '',
|
'no_receipt_needed' => '',
|
||||||
'no_review_needed' => 'Nincs folyamatban lévő felülvizsgálat.',
|
'no_review_needed' => 'Nincs folyamatban lévő felülvizsgálat.',
|
||||||
|
@ -1301,6 +1304,7 @@ URL: [url]',
|
||||||
'removeFolderFromDropFolder' => '',
|
'removeFolderFromDropFolder' => '',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => '',
|
'remove_approval_log' => '',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => 'Megjelölt állományok eltávolítása',
|
'remove_marked_files' => 'Megjelölt állományok eltávolítása',
|
||||||
'remove_review_log' => '',
|
'remove_review_log' => '',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1696,6 +1700,8 @@ URL: [url]',
|
||||||
'settings_enableLargeFileUpload_desc' => 'Ha beállítja az állományok feltöltése elérhető lesz egy jumploadernek hívott java appleten keresztül a böngészőprogram állomány méret korlátja nélkül. Ez engedélyezi több állomány feltöltését egy lépésben.',
|
'settings_enableLargeFileUpload_desc' => 'Ha beállítja az állományok feltöltése elérhető lesz egy jumploadernek hívott java appleten keresztül a böngészőprogram állomány méret korlátja nélkül. Ez engedélyezi több állomány feltöltését egy lépésben.',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => 'Feladatok menüpont engedélyezése',
|
'settings_enableMenuTasks' => 'Feladatok menüpont engedélyezése',
|
||||||
'settings_enableMenuTasks_desc' => 'Engedélyezi / letiltja a menüelemet, amely a felhasználó összes feladatát tartalmazza. Ez olyan dokumentumokat tartalmaz, amelyeket felül kell vizsgálni, jóvá kell hagyni stb.',
|
'settings_enableMenuTasks_desc' => 'Engedélyezi / letiltja a menüelemet, amely a felhasználó összes feladatát tartalmazza. Ez olyan dokumentumokat tartalmaz, amelyeket felül kell vizsgálni, jóvá kell hagyni stb.',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -2014,6 +2020,7 @@ URL: [url]',
|
||||||
'sign_out' => 'Kijelentkezés',
|
'sign_out' => 'Kijelentkezés',
|
||||||
'sign_out_user' => 'Kijelentkezés',
|
'sign_out_user' => 'Kijelentkezés',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => 'Szlovák',
|
'sk_SK' => 'Szlovák',
|
||||||
'sort_by_date' => '',
|
'sort_by_date' => '',
|
||||||
'sort_by_expiration_date' => '',
|
'sort_by_expiration_date' => '',
|
||||||
|
@ -2143,6 +2150,7 @@ URL: [url]',
|
||||||
'status_revision_sleeping' => '',
|
'status_revision_sleeping' => '',
|
||||||
'status_revisor_removed' => '',
|
'status_revisor_removed' => '',
|
||||||
'status_unknown' => 'Ismeretlen',
|
'status_unknown' => 'Ismeretlen',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => 'Tároló mérete',
|
'storage_size' => 'Tároló mérete',
|
||||||
'subfolder_duplicate_name' => '',
|
'subfolder_duplicate_name' => '',
|
||||||
'submit_2_fact_auth' => '',
|
'submit_2_fact_auth' => '',
|
||||||
|
|
|
@ -19,7 +19,7 @@
|
||||||
// along with this program; if not, write to the Free Software
|
// along with this program; if not, write to the Free Software
|
||||||
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
//
|
//
|
||||||
// Translators: Admin (485), atoz-chevara (835)
|
// Translators: Admin (489), atoz-chevara (835)
|
||||||
|
|
||||||
$text = array(
|
$text = array(
|
||||||
'2_factor_auth' => '',
|
'2_factor_auth' => '',
|
||||||
|
@ -382,7 +382,7 @@ URL: [url]</p>',
|
||||||
'dashboard' => '',
|
'dashboard' => '',
|
||||||
'databasesearch' => 'Pencarian Basis data',
|
'databasesearch' => 'Pencarian Basis data',
|
||||||
'database_schema_version' => 'Versi skema basis data',
|
'database_schema_version' => 'Versi skema basis data',
|
||||||
'data_loading' => '',
|
'data_loading' => 'Harap tunggu, data sedang disiapkan.',
|
||||||
'date' => 'Tanggal',
|
'date' => 'Tanggal',
|
||||||
'days' => 'hari',
|
'days' => 'hari',
|
||||||
'debug' => 'Debug',
|
'debug' => 'Debug',
|
||||||
|
@ -689,7 +689,7 @@ URL: [url]</p>',
|
||||||
'empty_notify_list' => 'Tidak ada entri',
|
'empty_notify_list' => 'Tidak ada entri',
|
||||||
'enable_extension' => 'Aktifkan ekstensi',
|
'enable_extension' => 'Aktifkan ekstensi',
|
||||||
'enddate' => '',
|
'enddate' => '',
|
||||||
'en_GB' => '',
|
'en_GB' => 'Inggris (GB)',
|
||||||
'equal_transition_states' => 'Status awal dan akhir sama',
|
'equal_transition_states' => 'Status awal dan akhir sama',
|
||||||
'error' => 'Galat',
|
'error' => 'Galat',
|
||||||
'error_add_aro' => 'Kesalahan saat menambahkan objek permintaan akses',
|
'error_add_aro' => 'Kesalahan saat menambahkan objek permintaan akses',
|
||||||
|
@ -749,6 +749,8 @@ URL: [url]',
|
||||||
'export_user_list_csv' => 'Ekspor pengguna sebagai CSV',
|
'export_user_list_csv' => 'Ekspor pengguna sebagai CSV',
|
||||||
'extension_archive' => 'Ekstensi',
|
'extension_archive' => 'Ekstensi',
|
||||||
'extension_changelog' => '',
|
'extension_changelog' => '',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => 'Perpanjangan tidak aktif sekarang',
|
'extension_is_off_now' => 'Perpanjangan tidak aktif sekarang',
|
||||||
'extension_is_on_now' => '',
|
'extension_is_on_now' => '',
|
||||||
'extension_loading' => 'Memuat ekstensi...',
|
'extension_loading' => 'Memuat ekstensi...',
|
||||||
|
@ -965,7 +967,7 @@ URL: [url]</p>',
|
||||||
'index_processing' => '',
|
'index_processing' => '',
|
||||||
'index_waiting' => 'Mengunggu',
|
'index_waiting' => 'Mengunggu',
|
||||||
'individuals' => 'Perorangan',
|
'individuals' => 'Perorangan',
|
||||||
'individuals_in_groups' => '',
|
'individuals_in_groups' => 'Anggota di grup',
|
||||||
'ind_review_removed' => 'Perubahan status, karena ulasan pengguna [name] telah dihapus.',
|
'ind_review_removed' => 'Perubahan status, karena ulasan pengguna [name] telah dihapus.',
|
||||||
'info_recipients_tab_not_released' => '',
|
'info_recipients_tab_not_released' => '',
|
||||||
'info_rm_user_from_processes_none' => '',
|
'info_rm_user_from_processes_none' => '',
|
||||||
|
@ -1239,6 +1241,7 @@ URL: [url]',
|
||||||
'no_groups' => 'Tidak ada kelompok',
|
'no_groups' => 'Tidak ada kelompok',
|
||||||
'no_group_members' => 'Kelompok ini tidak memiliki anggota',
|
'no_group_members' => 'Kelompok ini tidak memiliki anggota',
|
||||||
'no_linked_files' => 'Tidak ada berkas yang ditautkan',
|
'no_linked_files' => 'Tidak ada berkas yang ditautkan',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => 'Tidak ada versi lain yang ditemukan',
|
'no_previous_versions' => 'Tidak ada versi lain yang ditemukan',
|
||||||
'no_receipt_needed' => 'Saat ini tidak ada dokumen yang memerlukan konfirmasi tanda terima.',
|
'no_receipt_needed' => 'Saat ini tidak ada dokumen yang memerlukan konfirmasi tanda terima.',
|
||||||
'no_review_needed' => 'Tidak ada tinjauan yang tertunda.',
|
'no_review_needed' => 'Tidak ada tinjauan yang tertunda.',
|
||||||
|
@ -1410,6 +1413,7 @@ URL: [url]',
|
||||||
'removeFolderFromDropFolder' => 'Hapus folder setelah diimpor',
|
'removeFolderFromDropFolder' => 'Hapus folder setelah diimpor',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => 'Hapus persetujuan',
|
'remove_approval_log' => 'Hapus persetujuan',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => 'Hapus file yang ditandai',
|
'remove_marked_files' => 'Hapus file yang ditandai',
|
||||||
'remove_review_log' => 'Hapus ulasan',
|
'remove_review_log' => 'Hapus ulasan',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1786,6 +1790,8 @@ Jika Anda tidak menerima kata sandi, silakan gunakan fitur lupa kata sandi di ha
|
||||||
'settings_enableLargeFileUpload_desc' => 'Jika disetel, unggah berkas juga tersedia melalui java applet yang disebut jumploader tanpa batas ukuran berkas yang ditetapkan oleh peramban. Ini juga memungkinkan untuk mengunggah beberapa berkas dalam satu langkah. Mengaktifkan ini akan mematikan cookie http saja.',
|
'settings_enableLargeFileUpload_desc' => 'Jika disetel, unggah berkas juga tersedia melalui java applet yang disebut jumploader tanpa batas ukuran berkas yang ditetapkan oleh peramban. Ini juga memungkinkan untuk mengunggah beberapa berkas dalam satu langkah. Mengaktifkan ini akan mematikan cookie http saja.',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => 'Aktifkan daftar task di menu',
|
'settings_enableMenuTasks' => 'Aktifkan daftar task di menu',
|
||||||
'settings_enableMenuTasks_desc' => '',
|
'settings_enableMenuTasks_desc' => '',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -2104,6 +2110,7 @@ Jika Anda tidak menerima kata sandi, silakan gunakan fitur lupa kata sandi di ha
|
||||||
'sign_out' => 'Keluar',
|
'sign_out' => 'Keluar',
|
||||||
'sign_out_user' => '',
|
'sign_out_user' => '',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => 'Slovakia',
|
'sk_SK' => 'Slovakia',
|
||||||
'sort_by_date' => 'Urutkan berdasarkan tanggal',
|
'sort_by_date' => 'Urutkan berdasarkan tanggal',
|
||||||
'sort_by_expiration_date' => 'Urutkan berdasarkan tanggal kadaluwarsa',
|
'sort_by_expiration_date' => 'Urutkan berdasarkan tanggal kadaluwarsa',
|
||||||
|
@ -2233,6 +2240,7 @@ Jika Anda tidak menerima kata sandi, silakan gunakan fitur lupa kata sandi di ha
|
||||||
'status_revision_sleeping' => 'tertunda',
|
'status_revision_sleeping' => 'tertunda',
|
||||||
'status_revisor_removed' => '',
|
'status_revisor_removed' => '',
|
||||||
'status_unknown' => 'Tidak diketahui',
|
'status_unknown' => 'Tidak diketahui',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => 'Ukuran penyimpanan',
|
'storage_size' => 'Ukuran penyimpanan',
|
||||||
'subfolder_duplicate_name' => 'Duplikasi nama subfolder',
|
'subfolder_duplicate_name' => 'Duplikasi nama subfolder',
|
||||||
'submit_2_fact_auth' => '',
|
'submit_2_fact_auth' => '',
|
||||||
|
|
|
@ -703,6 +703,8 @@ URL: [url]',
|
||||||
'export_user_list_csv' => '',
|
'export_user_list_csv' => '',
|
||||||
'extension_archive' => 'Archivio estensioni',
|
'extension_archive' => 'Archivio estensioni',
|
||||||
'extension_changelog' => 'Registro delle modifiche delle estensioni',
|
'extension_changelog' => 'Registro delle modifiche delle estensioni',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => '',
|
'extension_is_off_now' => '',
|
||||||
'extension_is_on_now' => '',
|
'extension_is_on_now' => '',
|
||||||
'extension_loading' => 'Caricamento estensioni...',
|
'extension_loading' => 'Caricamento estensioni...',
|
||||||
|
@ -1153,6 +1155,7 @@ URL: [url]',
|
||||||
'no_groups' => 'Nessun gruppo',
|
'no_groups' => 'Nessun gruppo',
|
||||||
'no_group_members' => 'Questo gruppo non ha membri',
|
'no_group_members' => 'Questo gruppo non ha membri',
|
||||||
'no_linked_files' => 'Nessun file collegato',
|
'no_linked_files' => 'Nessun file collegato',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => 'Nessun\'altra versione trovata',
|
'no_previous_versions' => 'Nessun\'altra versione trovata',
|
||||||
'no_receipt_needed' => 'Rete disco',
|
'no_receipt_needed' => 'Rete disco',
|
||||||
'no_review_needed' => 'Nessuna revisione in corso.',
|
'no_review_needed' => 'Nessuna revisione in corso.',
|
||||||
|
@ -1319,6 +1322,7 @@ URL: [url]',
|
||||||
'removeFolderFromDropFolder' => 'Rimuovi la cartella di pubblicazione dopo l\'importazione',
|
'removeFolderFromDropFolder' => 'Rimuovi la cartella di pubblicazione dopo l\'importazione',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => '',
|
'remove_approval_log' => '',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => 'Rimuovi i files contrassegnati',
|
'remove_marked_files' => 'Rimuovi i files contrassegnati',
|
||||||
'remove_review_log' => '',
|
'remove_review_log' => '',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1742,6 +1746,8 @@ Name: [username]
|
||||||
'settings_enableLargeFileUpload_desc' => 'Se selezionato, il caricamento (upload) dei files può essere effettuato anche attraverso un\'applet Java chiamata Jumploader evitando il limite di dimensioni file imposto dal browser; Jumploader permette anche il caricamento di diversi files contemporaneamente.',
|
'settings_enableLargeFileUpload_desc' => 'Se selezionato, il caricamento (upload) dei files può essere effettuato anche attraverso un\'applet Java chiamata Jumploader evitando il limite di dimensioni file imposto dal browser; Jumploader permette anche il caricamento di diversi files contemporaneamente.',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => 'Abilita compito delle attività nel menù',
|
'settings_enableMenuTasks' => 'Abilita compito delle attività nel menù',
|
||||||
'settings_enableMenuTasks_desc' => 'Abilita/disabilita la voce di menu che contiene tutte le attività degli utenti. Questo conterrà i documenti che devono essere rivisti, approvati, etc.',
|
'settings_enableMenuTasks_desc' => 'Abilita/disabilita la voce di menu che contiene tutte le attività degli utenti. Questo conterrà i documenti che devono essere rivisti, approvati, etc.',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -2060,6 +2066,7 @@ Name: [username]
|
||||||
'sign_out' => 'Disconnettiti',
|
'sign_out' => 'Disconnettiti',
|
||||||
'sign_out_user' => 'Disconnetti l\'utente',
|
'sign_out_user' => 'Disconnetti l\'utente',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => 'Slovacco',
|
'sk_SK' => 'Slovacco',
|
||||||
'sort_by_date' => 'Ordina per data',
|
'sort_by_date' => 'Ordina per data',
|
||||||
'sort_by_expiration_date' => '',
|
'sort_by_expiration_date' => '',
|
||||||
|
@ -2189,6 +2196,7 @@ Name: [username]
|
||||||
'status_revision_sleeping' => 'in attesa',
|
'status_revision_sleeping' => 'in attesa',
|
||||||
'status_revisor_removed' => 'Revisore rimosso dalla lista',
|
'status_revisor_removed' => 'Revisore rimosso dalla lista',
|
||||||
'status_unknown' => 'Sconosciuto',
|
'status_unknown' => 'Sconosciuto',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => 'Spazio di archiviazione',
|
'storage_size' => 'Spazio di archiviazione',
|
||||||
'subfolder_duplicate_name' => 'Nome sottocartella duplicato',
|
'subfolder_duplicate_name' => 'Nome sottocartella duplicato',
|
||||||
'submit_2_fact_auth' => 'Salva segreto',
|
'submit_2_fact_auth' => 'Salva segreto',
|
||||||
|
|
|
@ -699,6 +699,8 @@ URL: [url]',
|
||||||
'export_user_list_csv' => '',
|
'export_user_list_csv' => '',
|
||||||
'extension_archive' => '',
|
'extension_archive' => '',
|
||||||
'extension_changelog' => '',
|
'extension_changelog' => '',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => '',
|
'extension_is_off_now' => '',
|
||||||
'extension_is_on_now' => '',
|
'extension_is_on_now' => '',
|
||||||
'extension_loading' => '',
|
'extension_loading' => '',
|
||||||
|
@ -1153,6 +1155,7 @@ URL [url]',
|
||||||
'no_groups' => '그룹이 없음',
|
'no_groups' => '그룹이 없음',
|
||||||
'no_group_members' => '그룹 회원 이 없습니다.',
|
'no_group_members' => '그룹 회원 이 없습니다.',
|
||||||
'no_linked_files' => '연결되지 않은 파일',
|
'no_linked_files' => '연결되지 않은 파일',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => '다른 버전을 찾을 수 없습니다',
|
'no_previous_versions' => '다른 버전을 찾을 수 없습니다',
|
||||||
'no_receipt_needed' => '접수가 필요하지 않습니다',
|
'no_receipt_needed' => '접수가 필요하지 않습니다',
|
||||||
'no_review_needed' => '검토중인 자료가 없습니다.',
|
'no_review_needed' => '검토중인 자료가 없습니다.',
|
||||||
|
@ -1300,6 +1303,7 @@ URL: [url]',
|
||||||
'removeFolderFromDropFolder' => '',
|
'removeFolderFromDropFolder' => '',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => '',
|
'remove_approval_log' => '',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => '마크 파일을 제거',
|
'remove_marked_files' => '마크 파일을 제거',
|
||||||
'remove_review_log' => '',
|
'remove_review_log' => '',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1713,6 +1717,8 @@ URL : [url]',
|
||||||
'settings_enableLargeFileUpload_desc' => '설정하면, 브라우저가 설정 한 파일 크기 제한없이 jumploader라는 파일 업로드 자바 애플릿을 통해 사용할 수 있습니다. 또한 한 번에 여러 파일을 업로드 할 수 있습니다.',
|
'settings_enableLargeFileUpload_desc' => '설정하면, 브라우저가 설정 한 파일 크기 제한없이 jumploader라는 파일 업로드 자바 애플릿을 통해 사용할 수 있습니다. 또한 한 번에 여러 파일을 업로드 할 수 있습니다.',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => '메뉴의 작업 목록 허용',
|
'settings_enableMenuTasks' => '메뉴의 작업 목록 허용',
|
||||||
'settings_enableMenuTasks_desc' => '사용자의 모든 작업이 포함되어있는 메뉴 항목을 활성/비활성 합니다. 이것은 검토, 승인등이 필요한 문서를 포함 합니다',
|
'settings_enableMenuTasks_desc' => '사용자의 모든 작업이 포함되어있는 메뉴 항목을 활성/비활성 합니다. 이것은 검토, 승인등이 필요한 문서를 포함 합니다',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -2031,6 +2037,7 @@ URL : [url]',
|
||||||
'sign_out' => '로그 아웃',
|
'sign_out' => '로그 아웃',
|
||||||
'sign_out_user' => '사용자가 로그 아웃',
|
'sign_out_user' => '사용자가 로그 아웃',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => '슬로바키아어',
|
'sk_SK' => '슬로바키아어',
|
||||||
'sort_by_date' => '',
|
'sort_by_date' => '',
|
||||||
'sort_by_expiration_date' => '',
|
'sort_by_expiration_date' => '',
|
||||||
|
@ -2160,6 +2167,7 @@ URL : [url]',
|
||||||
'status_revision_sleeping' => '보류',
|
'status_revision_sleeping' => '보류',
|
||||||
'status_revisor_removed' => '감사자 목록에서 제거',
|
'status_revisor_removed' => '감사자 목록에서 제거',
|
||||||
'status_unknown' => '알 수없는',
|
'status_unknown' => '알 수없는',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => '저장 크기',
|
'storage_size' => '저장 크기',
|
||||||
'subfolder_duplicate_name' => '',
|
'subfolder_duplicate_name' => '',
|
||||||
'submit_2_fact_auth' => '',
|
'submit_2_fact_auth' => '',
|
||||||
|
|
|
@ -696,6 +696,8 @@ URL: [url]',
|
||||||
'export_user_list_csv' => '',
|
'export_user_list_csv' => '',
|
||||||
'extension_archive' => '',
|
'extension_archive' => '',
|
||||||
'extension_changelog' => '',
|
'extension_changelog' => '',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => '',
|
'extension_is_off_now' => '',
|
||||||
'extension_is_on_now' => '',
|
'extension_is_on_now' => '',
|
||||||
'extension_loading' => '',
|
'extension_loading' => '',
|
||||||
|
@ -1150,6 +1152,7 @@ URL: [url]',
|
||||||
'no_groups' => 'ບໍ່ມີກຸ່ມ',
|
'no_groups' => 'ບໍ່ມີກຸ່ມ',
|
||||||
'no_group_members' => 'ກຸ່ມນີ້ຍັງບໍ່ມີສະມາຊິກ',
|
'no_group_members' => 'ກຸ່ມນີ້ຍັງບໍ່ມີສະມາຊິກ',
|
||||||
'no_linked_files' => 'ບໍ່ມີໄຟລທີ່ເຊື່ອມໂຍງ',
|
'no_linked_files' => 'ບໍ່ມີໄຟລທີ່ເຊື່ອມໂຍງ',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => 'ບໍ່ພົບເວີຊັນອື່ນ',
|
'no_previous_versions' => 'ບໍ່ພົບເວີຊັນອື່ນ',
|
||||||
'no_receipt_needed' => 'ປະຈຸບັນນີ້ບໍ່ມີເອກະສານທີ່ຈະຕ້ອງຢືນຢັນກ່ຽວກັບການຮັບສິນຄ້າ',
|
'no_receipt_needed' => 'ປະຈຸບັນນີ້ບໍ່ມີເອກະສານທີ່ຈະຕ້ອງຢືນຢັນກ່ຽວກັບການຮັບສິນຄ້າ',
|
||||||
'no_review_needed' => 'ບໍ່ມີເອກະສານທີຍັງຄ້າງທີລໍຖ້າກວດຄືນ',
|
'no_review_needed' => 'ບໍ່ມີເອກະສານທີຍັງຄ້າງທີລໍຖ້າກວດຄືນ',
|
||||||
|
@ -1316,6 +1319,7 @@ URL: [url]',
|
||||||
'removeFolderFromDropFolder' => 'ຍ້າຍໂຟລເດີຫຼັງຈາກນຳຂໍ້ມູນເຂົ້າ',
|
'removeFolderFromDropFolder' => 'ຍ້າຍໂຟລເດີຫຼັງຈາກນຳຂໍ້ມູນເຂົ້າ',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => '',
|
'remove_approval_log' => '',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => 'ລົບໄຟລທີມີເຄື່ອງໝາຍໄວ້',
|
'remove_marked_files' => 'ລົບໄຟລທີມີເຄື່ອງໝາຍໄວ້',
|
||||||
'remove_review_log' => '',
|
'remove_review_log' => '',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1739,6 +1743,8 @@ URL: [url]',
|
||||||
'settings_enableLargeFileUpload_desc' => 'ການຕັ້ງຄ່າອັບໂຫລດໄຟລຈະມີໃຫ້ບໍລິການຜ່ານທາງດ້ານຂວາຂອງເອັບເຟັກທີ່ເອີ້ນວ່າ jumploader ໂດຍບໍ່ມີຂິດຈຳກັດຂອງຂະໜາດໄຟລທີກຳນົດໂດຍບາວເຊີ ນອກຈາກນີຍັງຊ່ວຍໃນການອັບໂຫລດໄຟລຫຼາຍໄຟລໃນຂັນຕອນດຽວການເປີດຄຸນລັກສະນະນີ້ຈະປິດຄຸກກີ້ສະເພາະ Http ເທົ່ານັ້ນ',
|
'settings_enableLargeFileUpload_desc' => 'ການຕັ້ງຄ່າອັບໂຫລດໄຟລຈະມີໃຫ້ບໍລິການຜ່ານທາງດ້ານຂວາຂອງເອັບເຟັກທີ່ເອີ້ນວ່າ jumploader ໂດຍບໍ່ມີຂິດຈຳກັດຂອງຂະໜາດໄຟລທີກຳນົດໂດຍບາວເຊີ ນອກຈາກນີຍັງຊ່ວຍໃນການອັບໂຫລດໄຟລຫຼາຍໄຟລໃນຂັນຕອນດຽວການເປີດຄຸນລັກສະນະນີ້ຈະປິດຄຸກກີ້ສະເພາະ Http ເທົ່ານັ້ນ',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => 'ເປີດການໄຊ້ງານ',
|
'settings_enableMenuTasks' => 'ເປີດການໄຊ້ງານ',
|
||||||
'settings_enableMenuTasks_desc' => 'ເປີດ/ປິດ ລາຍການເມນູທີ່ມີວຽກທັງໝົດສຳລັບຜູ້ໄຊ້ເອກະສານນີ້ມີເອກະສານທີຈ້ອງໄດ້ຮັບການກວດສອບ',
|
'settings_enableMenuTasks_desc' => 'ເປີດ/ປິດ ລາຍການເມນູທີ່ມີວຽກທັງໝົດສຳລັບຜູ້ໄຊ້ເອກະສານນີ້ມີເອກະສານທີຈ້ອງໄດ້ຮັບການກວດສອບ',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -2057,6 +2063,7 @@ URL: [url]',
|
||||||
'sign_out' => 'ອອກຈາກລະບົບ',
|
'sign_out' => 'ອອກຈາກລະບົບ',
|
||||||
'sign_out_user' => 'ອອກຈາກລະບົບຜູ້ໄຊ້',
|
'sign_out_user' => 'ອອກຈາກລະບົບຜູ້ໄຊ້',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => 'ສະໂລວາເກຍ',
|
'sk_SK' => 'ສະໂລວາເກຍ',
|
||||||
'sort_by_date' => '',
|
'sort_by_date' => '',
|
||||||
'sort_by_expiration_date' => '',
|
'sort_by_expiration_date' => '',
|
||||||
|
@ -2186,6 +2193,7 @@ URL: [url]',
|
||||||
'status_revision_sleeping' => 'ຢູ່ລະຫວ່າງດຳເນີນການ',
|
'status_revision_sleeping' => 'ຢູ່ລະຫວ່າງດຳເນີນການ',
|
||||||
'status_revisor_removed' => 'ແກ້ໄຂຄຳອະທິບາຍອອກຈາກລາຍການ',
|
'status_revisor_removed' => 'ແກ້ໄຂຄຳອະທິບາຍອອກຈາກລາຍການ',
|
||||||
'status_unknown' => 'ບໍ່ຮູ້',
|
'status_unknown' => 'ບໍ່ຮູ້',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => 'ຂະໜາດພື້ນທີ່ເກັບຂໍ້ມູນ',
|
'storage_size' => 'ຂະໜາດພື້ນທີ່ເກັບຂໍ້ມູນ',
|
||||||
'subfolder_duplicate_name' => '',
|
'subfolder_duplicate_name' => '',
|
||||||
'submit_2_fact_auth' => 'ເກັບຄວາມລັບໄວ້',
|
'submit_2_fact_auth' => 'ເກັບຄວາມລັບໄວ້',
|
||||||
|
|
|
@ -710,6 +710,8 @@ URL: [url]',
|
||||||
'export_user_list_csv' => '',
|
'export_user_list_csv' => '',
|
||||||
'extension_archive' => 'Utvidelse',
|
'extension_archive' => 'Utvidelse',
|
||||||
'extension_changelog' => 'Endringslogg',
|
'extension_changelog' => 'Endringslogg',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => '',
|
'extension_is_off_now' => '',
|
||||||
'extension_is_on_now' => '',
|
'extension_is_on_now' => '',
|
||||||
'extension_loading' => 'Laster inn utvidelser ...',
|
'extension_loading' => 'Laster inn utvidelser ...',
|
||||||
|
@ -1171,6 +1173,7 @@ URL: [url]',
|
||||||
'no_groups' => 'Ingen grupper',
|
'no_groups' => 'Ingen grupper',
|
||||||
'no_group_members' => 'Denne gruppen har ingen medlemmer',
|
'no_group_members' => 'Denne gruppen har ingen medlemmer',
|
||||||
'no_linked_files' => 'Ingen koblede filer',
|
'no_linked_files' => 'Ingen koblede filer',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => 'Ingen andre versjoner funnet',
|
'no_previous_versions' => 'Ingen andre versjoner funnet',
|
||||||
'no_receipt_needed' => 'Det er for øyeblikket ingen dokumenter som krever kvitteringsbekreftelse.',
|
'no_receipt_needed' => 'Det er for øyeblikket ingen dokumenter som krever kvitteringsbekreftelse.',
|
||||||
'no_review_needed' => 'Ingen gjennomgang i påvente.',
|
'no_review_needed' => 'Ingen gjennomgang i påvente.',
|
||||||
|
@ -1331,6 +1334,7 @@ URL: [url]',
|
||||||
'removeFolderFromDropFolder' => 'Fjern mappe etter import',
|
'removeFolderFromDropFolder' => 'Fjern mappe etter import',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => '',
|
'remove_approval_log' => '',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => 'Fjern markerte filer',
|
'remove_marked_files' => 'Fjern markerte filer',
|
||||||
'remove_review_log' => '',
|
'remove_review_log' => '',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1752,6 +1756,8 @@ Bruker: [username]
|
||||||
'settings_enableLargeFileUpload_desc' => 'Hvis det er satt, er filopplasting også tilgjengelig via en java-applet som heter jumploader uten en filstørrelsesgrense som er angitt av nettleseren. Det gjør det også mulig å laste opp flere filer på ett trinn. Hvis du slår på dette, slås bare av cookies.',
|
'settings_enableLargeFileUpload_desc' => 'Hvis det er satt, er filopplasting også tilgjengelig via en java-applet som heter jumploader uten en filstørrelsesgrense som er angitt av nettleseren. Det gjør det også mulig å laste opp flere filer på ett trinn. Hvis du slår på dette, slås bare av cookies.',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => 'Aktiver oppgaveliste i menyen',
|
'settings_enableMenuTasks' => 'Aktiver oppgaveliste i menyen',
|
||||||
'settings_enableMenuTasks_desc' => 'Aktiver/deaktiver menypunktet som inneholder alle oppgaver for brukeren. Denne inneholder dokumenter som må gjennomgås, godkjennes osv.',
|
'settings_enableMenuTasks_desc' => 'Aktiver/deaktiver menypunktet som inneholder alle oppgaver for brukeren. Denne inneholder dokumenter som må gjennomgås, godkjennes osv.',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -2070,6 +2076,7 @@ Bruker: [username]
|
||||||
'sign_out' => 'Logg ut',
|
'sign_out' => 'Logg ut',
|
||||||
'sign_out_user' => 'Logg ut bruker',
|
'sign_out_user' => 'Logg ut bruker',
|
||||||
'site_brand' => 'Nettsted merke/logo',
|
'site_brand' => 'Nettsted merke/logo',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => 'Slovakisk',
|
'sk_SK' => 'Slovakisk',
|
||||||
'sort_by_date' => 'Sorter etter dato',
|
'sort_by_date' => 'Sorter etter dato',
|
||||||
'sort_by_expiration_date' => '',
|
'sort_by_expiration_date' => '',
|
||||||
|
@ -2199,6 +2206,7 @@ Bruker: [username]
|
||||||
'status_revision_sleeping' => 'avventer',
|
'status_revision_sleeping' => 'avventer',
|
||||||
'status_revisor_removed' => 'Revisor fjernet fra listen',
|
'status_revisor_removed' => 'Revisor fjernet fra listen',
|
||||||
'status_unknown' => 'Ukjent',
|
'status_unknown' => 'Ukjent',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => 'Lagrings størrelse',
|
'storage_size' => 'Lagrings størrelse',
|
||||||
'subfolder_duplicate_name' => 'Dupliser navnet på undermappen',
|
'subfolder_duplicate_name' => 'Dupliser navnet på undermappen',
|
||||||
'submit_2_fact_auth' => 'Lagre hemmelighet',
|
'submit_2_fact_auth' => 'Lagre hemmelighet',
|
||||||
|
|
|
@ -703,6 +703,8 @@ URL: [url]',
|
||||||
'export_user_list_csv' => 'Exporteer gebruikers in csv-formaat',
|
'export_user_list_csv' => 'Exporteer gebruikers in csv-formaat',
|
||||||
'extension_archive' => 'Extensies',
|
'extension_archive' => 'Extensies',
|
||||||
'extension_changelog' => 'Overzicht van wijzigingen',
|
'extension_changelog' => 'Overzicht van wijzigingen',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => 'Extensie uitgeschakeld',
|
'extension_is_off_now' => 'Extensie uitgeschakeld',
|
||||||
'extension_is_on_now' => 'Extensie ingeschakeld',
|
'extension_is_on_now' => 'Extensie ingeschakeld',
|
||||||
'extension_loading' => 'Laden van extensies ...',
|
'extension_loading' => 'Laden van extensies ...',
|
||||||
|
@ -1163,6 +1165,7 @@ URL: [url]',
|
||||||
'no_groups' => 'Geen groepen',
|
'no_groups' => 'Geen groepen',
|
||||||
'no_group_members' => 'Deze groep heeft geen leden',
|
'no_group_members' => 'Deze groep heeft geen leden',
|
||||||
'no_linked_files' => 'Geen gekoppelde bestanden',
|
'no_linked_files' => 'Geen gekoppelde bestanden',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => 'Geen andere versie(s) gevonden',
|
'no_previous_versions' => 'Geen andere versie(s) gevonden',
|
||||||
'no_receipt_needed' => 'Geen ontvangstbericht nodig',
|
'no_receipt_needed' => 'Geen ontvangstbericht nodig',
|
||||||
'no_review_needed' => 'Geen review bezig.',
|
'no_review_needed' => 'Geen review bezig.',
|
||||||
|
@ -1329,6 +1332,7 @@ URL: [url]',
|
||||||
'removeFolderFromDropFolder' => 'Map verwijderen uit Dropfilder',
|
'removeFolderFromDropFolder' => 'Map verwijderen uit Dropfilder',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => '',
|
'remove_approval_log' => '',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => 'Geselecteerde bestanden worden verwijderd',
|
'remove_marked_files' => 'Geselecteerde bestanden worden verwijderd',
|
||||||
'remove_review_log' => '',
|
'remove_review_log' => '',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1751,6 +1755,8 @@ Name: [username]
|
||||||
'settings_enableLargeFileUpload_desc' => 'Indien ingeschakeld, is bestandsupload ook beschikbaar via een java applet jumploader genaamd zonder een bestandsgrootte limiet door de browser. Het staat ook toe om meerdere bestanden in een keer te versturen.',
|
'settings_enableLargeFileUpload_desc' => 'Indien ingeschakeld, is bestandsupload ook beschikbaar via een java applet jumploader genaamd zonder een bestandsgrootte limiet door de browser. Het staat ook toe om meerdere bestanden in een keer te versturen.',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => 'Menu-taken aanzetten',
|
'settings_enableMenuTasks' => 'Menu-taken aanzetten',
|
||||||
'settings_enableMenuTasks_desc' => 'Menu-taken aanzetten',
|
'settings_enableMenuTasks_desc' => 'Menu-taken aanzetten',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -2069,6 +2075,7 @@ Name: [username]
|
||||||
'sign_out' => 'Log uit',
|
'sign_out' => 'Log uit',
|
||||||
'sign_out_user' => 'Log gebruiker uit',
|
'sign_out_user' => 'Log gebruiker uit',
|
||||||
'site_brand' => 'Merk van de site',
|
'site_brand' => 'Merk van de site',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => 'Slowaaks',
|
'sk_SK' => 'Slowaaks',
|
||||||
'sort_by_date' => 'Sorteren op datum',
|
'sort_by_date' => 'Sorteren op datum',
|
||||||
'sort_by_expiration_date' => 'Sorteren op vervaldatum',
|
'sort_by_expiration_date' => 'Sorteren op vervaldatum',
|
||||||
|
@ -2198,6 +2205,7 @@ Name: [username]
|
||||||
'status_revision_sleeping' => 'Slapend',
|
'status_revision_sleeping' => 'Slapend',
|
||||||
'status_revisor_removed' => 'Verwijderd',
|
'status_revisor_removed' => 'Verwijderd',
|
||||||
'status_unknown' => 'Onbekend',
|
'status_unknown' => 'Onbekend',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => 'Omvang opslag',
|
'storage_size' => 'Omvang opslag',
|
||||||
'subfolder_duplicate_name' => 'Dubble mapnaam',
|
'subfolder_duplicate_name' => 'Dubble mapnaam',
|
||||||
'submit_2_fact_auth' => '2-factor-authentificatie verstuurd',
|
'submit_2_fact_auth' => '2-factor-authentificatie verstuurd',
|
||||||
|
|
|
@ -686,6 +686,8 @@ URL: [url]',
|
||||||
'export_user_list_csv' => 'Eksportuj użytkowników do pliku CSV',
|
'export_user_list_csv' => 'Eksportuj użytkowników do pliku CSV',
|
||||||
'extension_archive' => 'Rozszerzenie',
|
'extension_archive' => 'Rozszerzenie',
|
||||||
'extension_changelog' => 'Log Zmian',
|
'extension_changelog' => 'Log Zmian',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => '',
|
'extension_is_off_now' => '',
|
||||||
'extension_is_on_now' => '',
|
'extension_is_on_now' => '',
|
||||||
'extension_loading' => 'Wgrywam dodatki...',
|
'extension_loading' => 'Wgrywam dodatki...',
|
||||||
|
@ -1140,6 +1142,7 @@ URL: [url]',
|
||||||
'no_groups' => 'Brak grup',
|
'no_groups' => 'Brak grup',
|
||||||
'no_group_members' => 'Ta grupa nie ma członków',
|
'no_group_members' => 'Ta grupa nie ma członków',
|
||||||
'no_linked_files' => 'Brak powiązanych dokumentów',
|
'no_linked_files' => 'Brak powiązanych dokumentów',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => 'Nie znaleziono poprzednich wersji',
|
'no_previous_versions' => 'Nie znaleziono poprzednich wersji',
|
||||||
'no_receipt_needed' => 'Brak dokumentów w trakcie potwierdzenia',
|
'no_receipt_needed' => 'Brak dokumentów w trakcie potwierdzenia',
|
||||||
'no_review_needed' => 'Brak dokumentów w trakcie opiniowania',
|
'no_review_needed' => 'Brak dokumentów w trakcie opiniowania',
|
||||||
|
@ -1295,6 +1298,7 @@ URL: [url]',
|
||||||
'removeFolderFromDropFolder' => 'Usuń folder po imporcie',
|
'removeFolderFromDropFolder' => 'Usuń folder po imporcie',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => '',
|
'remove_approval_log' => '',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => 'Usuń zaznaczone pliki',
|
'remove_marked_files' => 'Usuń zaznaczone pliki',
|
||||||
'remove_review_log' => '',
|
'remove_review_log' => '',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1682,6 +1686,8 @@ Name: [username]
|
||||||
'settings_enableLargeFileUpload_desc' => 'Jeśli zaznaczone, wczytywanie plików będzie możliwe również przez aplet javy bez limitu rozmiaru plików. Aplet pozwala również na wczytywanie wielu plików jednocześnie.',
|
'settings_enableLargeFileUpload_desc' => 'Jeśli zaznaczone, wczytywanie plików będzie możliwe również przez aplet javy bez limitu rozmiaru plików. Aplet pozwala również na wczytywanie wielu plików jednocześnie.',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => 'Włącz listę zadań w menu',
|
'settings_enableMenuTasks' => 'Włącz listę zadań w menu',
|
||||||
'settings_enableMenuTasks_desc' => 'Włącza/Wyłącza pozycję w menu w której znajdują się wszystkie zadania dla użytkownika. Zawiera dokumenty, które potrzebują być ocenione, zatwierdzone, itd.',
|
'settings_enableMenuTasks_desc' => 'Włącza/Wyłącza pozycję w menu w której znajdują się wszystkie zadania dla użytkownika. Zawiera dokumenty, które potrzebują być ocenione, zatwierdzone, itd.',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -2000,6 +2006,7 @@ Name: [username]
|
||||||
'sign_out' => 'Wyloguj',
|
'sign_out' => 'Wyloguj',
|
||||||
'sign_out_user' => 'Wyloguj użytkownika',
|
'sign_out_user' => 'Wyloguj użytkownika',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => 'słowacki',
|
'sk_SK' => 'słowacki',
|
||||||
'sort_by_date' => 'Sortuj według daty',
|
'sort_by_date' => 'Sortuj według daty',
|
||||||
'sort_by_expiration_date' => 'Sortuj według daty ważności',
|
'sort_by_expiration_date' => 'Sortuj według daty ważności',
|
||||||
|
@ -2129,6 +2136,7 @@ Name: [username]
|
||||||
'status_revision_sleeping' => 'Oczekujące',
|
'status_revision_sleeping' => 'Oczekujące',
|
||||||
'status_revisor_removed' => 'Revisor usunięty z listy',
|
'status_revisor_removed' => 'Revisor usunięty z listy',
|
||||||
'status_unknown' => 'Nieznany',
|
'status_unknown' => 'Nieznany',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => 'Zajętość dysku',
|
'storage_size' => 'Zajętość dysku',
|
||||||
'subfolder_duplicate_name' => 'Zduplikowana nazwa podfolderu',
|
'subfolder_duplicate_name' => 'Zduplikowana nazwa podfolderu',
|
||||||
'submit_2_fact_auth' => 'Zapisz sekretne hasło',
|
'submit_2_fact_auth' => 'Zapisz sekretne hasło',
|
||||||
|
|
|
@ -710,6 +710,8 @@ URL: [url]',
|
||||||
'export_user_list_csv' => '',
|
'export_user_list_csv' => '',
|
||||||
'extension_archive' => 'Extensão',
|
'extension_archive' => 'Extensão',
|
||||||
'extension_changelog' => 'Alterações no Log',
|
'extension_changelog' => 'Alterações no Log',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => '',
|
'extension_is_off_now' => '',
|
||||||
'extension_is_on_now' => '',
|
'extension_is_on_now' => '',
|
||||||
'extension_loading' => 'Carregando Extensões',
|
'extension_loading' => 'Carregando Extensões',
|
||||||
|
@ -1170,6 +1172,7 @@ URL: [url]',
|
||||||
'no_groups' => 'Sem grupos',
|
'no_groups' => 'Sem grupos',
|
||||||
'no_group_members' => 'Este grupo não tem membros',
|
'no_group_members' => 'Este grupo não tem membros',
|
||||||
'no_linked_files' => 'Não há arquivos vinculados',
|
'no_linked_files' => 'Não há arquivos vinculados',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => 'Nenhuma outra versão encontrada',
|
'no_previous_versions' => 'Nenhuma outra versão encontrada',
|
||||||
'no_receipt_needed' => 'Atualmente, não há documentos que exijam uma confirmação de recebimento.',
|
'no_receipt_needed' => 'Atualmente, não há documentos que exijam uma confirmação de recebimento.',
|
||||||
'no_review_needed' => 'Nenhuma revisão pendente.',
|
'no_review_needed' => 'Nenhuma revisão pendente.',
|
||||||
|
@ -1336,6 +1339,7 @@ URL: [url]',
|
||||||
'removeFolderFromDropFolder' => 'Remover pasta após a importação',
|
'removeFolderFromDropFolder' => 'Remover pasta após a importação',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => '',
|
'remove_approval_log' => '',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => 'Remover arquivos marcados',
|
'remove_marked_files' => 'Remover arquivos marcados',
|
||||||
'remove_review_log' => '',
|
'remove_review_log' => '',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1758,6 +1762,8 @@ Nome: [username]
|
||||||
'settings_enableLargeFileUpload_desc' => 'Se selecionado, o upload de arquivo também estará disponível através de um applet java chamado jumploader sem limite de tamanho de arquivo definido pelo navegador. Ele também permite fazer o upload de vários arquivos de uma só vez.',
|
'settings_enableLargeFileUpload_desc' => 'Se selecionado, o upload de arquivo também estará disponível através de um applet java chamado jumploader sem limite de tamanho de arquivo definido pelo navegador. Ele também permite fazer o upload de vários arquivos de uma só vez.',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => 'Ativar lista de tarefas no menu',
|
'settings_enableMenuTasks' => 'Ativar lista de tarefas no menu',
|
||||||
'settings_enableMenuTasks_desc' => 'Ativar / desativar o item de menu que contém todas as tarefas do usuário. Contém documentos que precisam ser revisados, aprovados etc.',
|
'settings_enableMenuTasks_desc' => 'Ativar / desativar o item de menu que contém todas as tarefas do usuário. Contém documentos que precisam ser revisados, aprovados etc.',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -2076,6 +2082,7 @@ Nome: [username]
|
||||||
'sign_out' => 'Sair',
|
'sign_out' => 'Sair',
|
||||||
'sign_out_user' => 'Sair usuário',
|
'sign_out_user' => 'Sair usuário',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => 'Eslovaco',
|
'sk_SK' => 'Eslovaco',
|
||||||
'sort_by_date' => 'classificar por data',
|
'sort_by_date' => 'classificar por data',
|
||||||
'sort_by_expiration_date' => '',
|
'sort_by_expiration_date' => '',
|
||||||
|
@ -2205,6 +2212,7 @@ Nome: [username]
|
||||||
'status_revision_sleeping' => 'Pendente',
|
'status_revision_sleeping' => 'Pendente',
|
||||||
'status_revisor_removed' => 'Revisor removido da lista',
|
'status_revisor_removed' => 'Revisor removido da lista',
|
||||||
'status_unknown' => 'Desconhecido',
|
'status_unknown' => 'Desconhecido',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => 'Tamanho de armazenamento',
|
'storage_size' => 'Tamanho de armazenamento',
|
||||||
'subfolder_duplicate_name' => 'nome duplicado da subpasta',
|
'subfolder_duplicate_name' => 'nome duplicado da subpasta',
|
||||||
'submit_2_fact_auth' => 'Salvar senha',
|
'submit_2_fact_auth' => 'Salvar senha',
|
||||||
|
|
|
@ -698,6 +698,8 @@ URL: [url]',
|
||||||
'export_user_list_csv' => '',
|
'export_user_list_csv' => '',
|
||||||
'extension_archive' => '',
|
'extension_archive' => '',
|
||||||
'extension_changelog' => '',
|
'extension_changelog' => '',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => '',
|
'extension_is_off_now' => '',
|
||||||
'extension_is_on_now' => '',
|
'extension_is_on_now' => '',
|
||||||
'extension_loading' => 'Se incarca extensiile',
|
'extension_loading' => 'Se incarca extensiile',
|
||||||
|
@ -1152,6 +1154,7 @@ URL: [url]',
|
||||||
'no_groups' => 'Nu există grupe',
|
'no_groups' => 'Nu există grupe',
|
||||||
'no_group_members' => 'Acest grup nu are membri',
|
'no_group_members' => 'Acest grup nu are membri',
|
||||||
'no_linked_files' => 'Nici un fișiere asociate',
|
'no_linked_files' => 'Nici un fișiere asociate',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => 'Nu sunt alte versiuni gasite',
|
'no_previous_versions' => 'Nu sunt alte versiuni gasite',
|
||||||
'no_receipt_needed' => '',
|
'no_receipt_needed' => '',
|
||||||
'no_review_needed' => 'Nici o revizuire în așteptare.',
|
'no_review_needed' => 'Nici o revizuire în așteptare.',
|
||||||
|
@ -1307,6 +1310,7 @@ URL: [url]',
|
||||||
'removeFolderFromDropFolder' => '',
|
'removeFolderFromDropFolder' => '',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => '',
|
'remove_approval_log' => '',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => 'Eliminați fișierele marcate',
|
'remove_marked_files' => 'Eliminați fișierele marcate',
|
||||||
'remove_review_log' => '',
|
'remove_review_log' => '',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1720,6 +1724,8 @@ URL: [url]',
|
||||||
'settings_enableLargeFileUpload_desc' => 'Dacă este setat, incărcarea este de asemenea disponibilă prin intermediul unui applet Java numit jumploader fără limită de dimensiune a fișierului stabilită de browser. De asemenea, permite încărcarea mai multor fișiere într-un singur pas. Activand aceasta optiune va dezactiva optiunea http only cookies.',
|
'settings_enableLargeFileUpload_desc' => 'Dacă este setat, incărcarea este de asemenea disponibilă prin intermediul unui applet Java numit jumploader fără limită de dimensiune a fișierului stabilită de browser. De asemenea, permite încărcarea mai multor fișiere într-un singur pas. Activand aceasta optiune va dezactiva optiunea http only cookies.',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => '',
|
'settings_enableMenuTasks' => '',
|
||||||
'settings_enableMenuTasks_desc' => '',
|
'settings_enableMenuTasks_desc' => '',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -2038,6 +2044,7 @@ URL: [url]',
|
||||||
'sign_out' => 'Sign out',
|
'sign_out' => 'Sign out',
|
||||||
'sign_out_user' => 'Sign out utilizator',
|
'sign_out_user' => 'Sign out utilizator',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => 'Slovacă',
|
'sk_SK' => 'Slovacă',
|
||||||
'sort_by_date' => 'Sortare dupa data',
|
'sort_by_date' => 'Sortare dupa data',
|
||||||
'sort_by_expiration_date' => '',
|
'sort_by_expiration_date' => '',
|
||||||
|
@ -2167,6 +2174,7 @@ URL: [url]',
|
||||||
'status_revision_sleeping' => 'in asteptare',
|
'status_revision_sleeping' => 'in asteptare',
|
||||||
'status_revisor_removed' => 'Revizuitor eliminat din lista',
|
'status_revisor_removed' => 'Revizuitor eliminat din lista',
|
||||||
'status_unknown' => 'Necunoscut',
|
'status_unknown' => 'Necunoscut',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => 'Dimensiunea de stocare',
|
'storage_size' => 'Dimensiunea de stocare',
|
||||||
'subfolder_duplicate_name' => '',
|
'subfolder_duplicate_name' => '',
|
||||||
'submit_2_fact_auth' => '',
|
'submit_2_fact_auth' => '',
|
||||||
|
|
|
@ -698,6 +698,8 @@ URL: [url]',
|
||||||
'export_user_list_csv' => '',
|
'export_user_list_csv' => '',
|
||||||
'extension_archive' => '',
|
'extension_archive' => '',
|
||||||
'extension_changelog' => 'Журнал изменений',
|
'extension_changelog' => 'Журнал изменений',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => '',
|
'extension_is_off_now' => '',
|
||||||
'extension_is_on_now' => '',
|
'extension_is_on_now' => '',
|
||||||
'extension_loading' => 'Загрузка расширений',
|
'extension_loading' => 'Загрузка расширений',
|
||||||
|
@ -1151,6 +1153,7 @@ URL: [url]',
|
||||||
'no_groups' => 'Нет групп',
|
'no_groups' => 'Нет групп',
|
||||||
'no_group_members' => 'Группа не имеет членов',
|
'no_group_members' => 'Группа не имеет членов',
|
||||||
'no_linked_files' => 'Нет связанных документов',
|
'no_linked_files' => 'Нет связанных документов',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => 'Нет предыдущих версий',
|
'no_previous_versions' => 'Нет предыдущих версий',
|
||||||
'no_receipt_needed' => 'Нет документов, нуждающихся в подтверждении получения',
|
'no_receipt_needed' => 'Нет документов, нуждающихся в подтверждении получения',
|
||||||
'no_review_needed' => 'Рецензия не требуется',
|
'no_review_needed' => 'Рецензия не требуется',
|
||||||
|
@ -1309,6 +1312,7 @@ URL: [url]',
|
||||||
'removeFolderFromDropFolder' => '',
|
'removeFolderFromDropFolder' => '',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => '',
|
'remove_approval_log' => '',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => 'Удалить выбранные файлы',
|
'remove_marked_files' => 'Удалить выбранные файлы',
|
||||||
'remove_review_log' => '',
|
'remove_review_log' => '',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1727,6 +1731,8 @@ URL: [url]',
|
||||||
'settings_enableLargeFileUpload_desc' => 'Если включено, загрузка файлов доступна так же через Java-апплет, называемый jumploader, без ограничения размера файла. Это также позволит загружать несколько файлов за раз.',
|
'settings_enableLargeFileUpload_desc' => 'Если включено, загрузка файлов доступна так же через Java-апплет, называемый jumploader, без ограничения размера файла. Это также позволит загружать несколько файлов за раз.',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => 'Включить список задач в меню',
|
'settings_enableMenuTasks' => 'Включить список задач в меню',
|
||||||
'settings_enableMenuTasks_desc' => 'Включить/отключить пункт меню, который содержит все задачи пользователя. Там содержатся документы, которые нуждаются в рецензии, утверждении и т.д.',
|
'settings_enableMenuTasks_desc' => 'Включить/отключить пункт меню, который содержит все задачи пользователя. Там содержатся документы, которые нуждаются в рецензии, утверждении и т.д.',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -2045,6 +2051,7 @@ URL: [url]',
|
||||||
'sign_out' => 'Выйти',
|
'sign_out' => 'Выйти',
|
||||||
'sign_out_user' => 'Пользовательский выход',
|
'sign_out_user' => 'Пользовательский выход',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => 'Slovak',
|
'sk_SK' => 'Slovak',
|
||||||
'sort_by_date' => 'Сортировка по дате',
|
'sort_by_date' => 'Сортировка по дате',
|
||||||
'sort_by_expiration_date' => '',
|
'sort_by_expiration_date' => '',
|
||||||
|
@ -2174,6 +2181,7 @@ URL: [url]',
|
||||||
'status_revision_sleeping' => 'В ожидании рецензии',
|
'status_revision_sleeping' => 'В ожидании рецензии',
|
||||||
'status_revisor_removed' => 'Ревизор удален из списка',
|
'status_revisor_removed' => 'Ревизор удален из списка',
|
||||||
'status_unknown' => 'Неизвестный',
|
'status_unknown' => 'Неизвестный',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => 'Размер хранилища',
|
'storage_size' => 'Размер хранилища',
|
||||||
'subfolder_duplicate_name' => '',
|
'subfolder_duplicate_name' => '',
|
||||||
'submit_2_fact_auth' => '',
|
'submit_2_fact_auth' => '',
|
||||||
|
|
|
@ -710,6 +710,8 @@ URL: [url]',
|
||||||
'export_user_list_csv' => '',
|
'export_user_list_csv' => '',
|
||||||
'extension_archive' => 'Rozšírenie',
|
'extension_archive' => 'Rozšírenie',
|
||||||
'extension_changelog' => 'Denník zmien',
|
'extension_changelog' => 'Denník zmien',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => '',
|
'extension_is_off_now' => '',
|
||||||
'extension_is_on_now' => '',
|
'extension_is_on_now' => '',
|
||||||
'extension_loading' => 'Nahrávajú sa rozšírenia ...',
|
'extension_loading' => 'Nahrávajú sa rozšírenia ...',
|
||||||
|
@ -1171,6 +1173,7 @@ URL: [url]',
|
||||||
'no_groups' => 'Žiadne skupiny',
|
'no_groups' => 'Žiadne skupiny',
|
||||||
'no_group_members' => 'Táto skupina nemá žiadnych členov',
|
'no_group_members' => 'Táto skupina nemá žiadnych členov',
|
||||||
'no_linked_files' => 'No linked files',
|
'no_linked_files' => 'No linked files',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => 'Neboli nájdené žiadne iné verzie',
|
'no_previous_versions' => 'Neboli nájdené žiadne iné verzie',
|
||||||
'no_receipt_needed' => 'There are currently no documents requiring a receipt confirmation.',
|
'no_receipt_needed' => 'There are currently no documents requiring a receipt confirmation.',
|
||||||
'no_review_needed' => 'No review pending.',
|
'no_review_needed' => 'No review pending.',
|
||||||
|
@ -1337,6 +1340,7 @@ URL: [url]',
|
||||||
'removeFolderFromDropFolder' => 'Po importe odstrániť zložku',
|
'removeFolderFromDropFolder' => 'Po importe odstrániť zložku',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => '',
|
'remove_approval_log' => '',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => 'Odstrániť označené súbory',
|
'remove_marked_files' => 'Odstrániť označené súbory',
|
||||||
'remove_review_log' => '',
|
'remove_review_log' => '',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1760,6 +1764,8 @@ Meno: [username]
|
||||||
'settings_enableLargeFileUpload_desc' => 'If set, file upload is also available through a java applet called jumploader without a file size limit set by the browser. It also allows to upload several files in one step. Turning this on will turn off http only cookies.',
|
'settings_enableLargeFileUpload_desc' => 'If set, file upload is also available through a java applet called jumploader without a file size limit set by the browser. It also allows to upload several files in one step. Turning this on will turn off http only cookies.',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => 'Enable task list in menu',
|
'settings_enableMenuTasks' => 'Enable task list in menu',
|
||||||
'settings_enableMenuTasks_desc' => 'Enable/Disable the menu item which contains all tasks for the user. This contains documents, that need to be reviewed, approved, etc.',
|
'settings_enableMenuTasks_desc' => 'Enable/Disable the menu item which contains all tasks for the user. This contains documents, that need to be reviewed, approved, etc.',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -2078,6 +2084,7 @@ Meno: [username]
|
||||||
'sign_out' => 'odhlásiť',
|
'sign_out' => 'odhlásiť',
|
||||||
'sign_out_user' => 'Odhlásiť používateľa',
|
'sign_out_user' => 'Odhlásiť používateľa',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => 'Slovenčina',
|
'sk_SK' => 'Slovenčina',
|
||||||
'sort_by_date' => '',
|
'sort_by_date' => '',
|
||||||
'sort_by_expiration_date' => '',
|
'sort_by_expiration_date' => '',
|
||||||
|
@ -2207,6 +2214,7 @@ Meno: [username]
|
||||||
'status_revision_sleeping' => 'pending',
|
'status_revision_sleeping' => 'pending',
|
||||||
'status_revisor_removed' => 'Revisor removed from list',
|
'status_revisor_removed' => 'Revisor removed from list',
|
||||||
'status_unknown' => 'Neznámy',
|
'status_unknown' => 'Neznámy',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => 'Objem dát',
|
'storage_size' => 'Objem dát',
|
||||||
'subfolder_duplicate_name' => '',
|
'subfolder_duplicate_name' => '',
|
||||||
'submit_2_fact_auth' => 'Save secret',
|
'submit_2_fact_auth' => 'Save secret',
|
||||||
|
|
|
@ -704,6 +704,8 @@ URL: [url]',
|
||||||
'export_user_list_csv' => '',
|
'export_user_list_csv' => '',
|
||||||
'extension_archive' => '',
|
'extension_archive' => '',
|
||||||
'extension_changelog' => '',
|
'extension_changelog' => '',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => '',
|
'extension_is_off_now' => '',
|
||||||
'extension_is_on_now' => '',
|
'extension_is_on_now' => '',
|
||||||
'extension_loading' => '',
|
'extension_loading' => '',
|
||||||
|
@ -1158,6 +1160,7 @@ URL: [url]',
|
||||||
'no_groups' => 'Inga grupper',
|
'no_groups' => 'Inga grupper',
|
||||||
'no_group_members' => 'Denna grupp har inga medlemmar',
|
'no_group_members' => 'Denna grupp har inga medlemmar',
|
||||||
'no_linked_files' => 'Inga länkade filer',
|
'no_linked_files' => 'Inga länkade filer',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => 'Inga andra versioner hittades.',
|
'no_previous_versions' => 'Inga andra versioner hittades.',
|
||||||
'no_receipt_needed' => 'Det finns inga dokument som saknar mottagningsbevis.',
|
'no_receipt_needed' => 'Det finns inga dokument som saknar mottagningsbevis.',
|
||||||
'no_review_needed' => 'Det finns inga dokument som du behöver granska.',
|
'no_review_needed' => 'Det finns inga dokument som du behöver granska.',
|
||||||
|
@ -1310,6 +1313,7 @@ URL: [url]',
|
||||||
'removeFolderFromDropFolder' => 'Radera katalog efter import',
|
'removeFolderFromDropFolder' => 'Radera katalog efter import',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => '',
|
'remove_approval_log' => '',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => 'Ta bort markerade filer',
|
'remove_marked_files' => 'Ta bort markerade filer',
|
||||||
'remove_review_log' => '',
|
'remove_review_log' => '',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1733,6 +1737,8 @@ Kommentar: [comment]',
|
||||||
'settings_enableLargeFileUpload_desc' => 'Om aktiverad, kan filer laddas upp via javaapplet med namnet jumploader, utan begränsningar i filstorlek. Flera filer kan även laddas upp samtidigt i ett steg.',
|
'settings_enableLargeFileUpload_desc' => 'Om aktiverad, kan filer laddas upp via javaapplet med namnet jumploader, utan begränsningar i filstorlek. Flera filer kan även laddas upp samtidigt i ett steg.',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => 'Aktivera uppgiftslista i menyn',
|
'settings_enableMenuTasks' => 'Aktivera uppgiftslista i menyn',
|
||||||
'settings_enableMenuTasks_desc' => 'Aktiverar ett menyobjekt som visar användarens uppgifter, såsom dokument som behöver granskas eller godkännas.',
|
'settings_enableMenuTasks_desc' => 'Aktiverar ett menyobjekt som visar användarens uppgifter, såsom dokument som behöver granskas eller godkännas.',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -2051,6 +2057,7 @@ Kommentar: [comment]',
|
||||||
'sign_out' => 'Logga ut',
|
'sign_out' => 'Logga ut',
|
||||||
'sign_out_user' => 'Logga ut användare',
|
'sign_out_user' => 'Logga ut användare',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => 'Slovakiska',
|
'sk_SK' => 'Slovakiska',
|
||||||
'sort_by_date' => '',
|
'sort_by_date' => '',
|
||||||
'sort_by_expiration_date' => '',
|
'sort_by_expiration_date' => '',
|
||||||
|
@ -2180,6 +2187,7 @@ Kommentar: [comment]',
|
||||||
'status_revision_sleeping' => 'Vilande',
|
'status_revision_sleeping' => 'Vilande',
|
||||||
'status_revisor_removed' => 'Reviderare borttagen från listan',
|
'status_revisor_removed' => 'Reviderare borttagen från listan',
|
||||||
'status_unknown' => 'Okänd',
|
'status_unknown' => 'Okänd',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => 'Lagringsstorlek',
|
'storage_size' => 'Lagringsstorlek',
|
||||||
'subfolder_duplicate_name' => '',
|
'subfolder_duplicate_name' => '',
|
||||||
'submit_2_fact_auth' => 'Spara hemlighet',
|
'submit_2_fact_auth' => 'Spara hemlighet',
|
||||||
|
|
|
@ -692,6 +692,8 @@ URL: [url]',
|
||||||
'export_user_list_csv' => 'Kullanıcıları CSV olarak dışa aktar',
|
'export_user_list_csv' => 'Kullanıcıları CSV olarak dışa aktar',
|
||||||
'extension_archive' => '',
|
'extension_archive' => '',
|
||||||
'extension_changelog' => 'Değişiklik Listesi',
|
'extension_changelog' => 'Değişiklik Listesi',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => '',
|
'extension_is_off_now' => '',
|
||||||
'extension_is_on_now' => '',
|
'extension_is_on_now' => '',
|
||||||
'extension_loading' => 'Uzantı yüklendi',
|
'extension_loading' => 'Uzantı yüklendi',
|
||||||
|
@ -1144,6 +1146,7 @@ URL: [url]',
|
||||||
'no_groups' => 'Grup yok',
|
'no_groups' => 'Grup yok',
|
||||||
'no_group_members' => 'Bu grubun hiç üyesi yok',
|
'no_group_members' => 'Bu grubun hiç üyesi yok',
|
||||||
'no_linked_files' => 'Link verilmiş dosya yok',
|
'no_linked_files' => 'Link verilmiş dosya yok',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => 'Başka versiyon yok',
|
'no_previous_versions' => 'Başka versiyon yok',
|
||||||
'no_receipt_needed' => '',
|
'no_receipt_needed' => '',
|
||||||
'no_review_needed' => 'Bekleyen kontrol yok.',
|
'no_review_needed' => 'Bekleyen kontrol yok.',
|
||||||
|
@ -1301,6 +1304,7 @@ URL: [url]',
|
||||||
'removeFolderFromDropFolder' => '',
|
'removeFolderFromDropFolder' => '',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => '',
|
'remove_approval_log' => '',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => 'İşaretli dosyaları sil',
|
'remove_marked_files' => 'İşaretli dosyaları sil',
|
||||||
'remove_review_log' => '',
|
'remove_review_log' => '',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1697,6 +1701,8 @@ URL: [url]',
|
||||||
'settings_enableLargeFileUpload_desc' => 'Etkinleştirilirse, büyük dosyalar dosya limitine bakılmaksızın jumploader isimli java applet aracılığıyla yüklenebilir. Bu ayrıca bir seferde birden çok dosya yüklemeyi de sağlar. Bu açıldığında sadece http çerezleri kapanmış olur.',
|
'settings_enableLargeFileUpload_desc' => 'Etkinleştirilirse, büyük dosyalar dosya limitine bakılmaksızın jumploader isimli java applet aracılığıyla yüklenebilir. Bu ayrıca bir seferde birden çok dosya yüklemeyi de sağlar. Bu açıldığında sadece http çerezleri kapanmış olur.',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => '',
|
'settings_enableMenuTasks' => '',
|
||||||
'settings_enableMenuTasks_desc' => '',
|
'settings_enableMenuTasks_desc' => '',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -2015,6 +2021,7 @@ URL: [url]',
|
||||||
'sign_out' => 'Çıkış',
|
'sign_out' => 'Çıkış',
|
||||||
'sign_out_user' => 'Kullanıcı hesabından çıkış',
|
'sign_out_user' => 'Kullanıcı hesabından çıkış',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => 'Slovakça',
|
'sk_SK' => 'Slovakça',
|
||||||
'sort_by_date' => 'Tarihe göre sırala',
|
'sort_by_date' => 'Tarihe göre sırala',
|
||||||
'sort_by_expiration_date' => '',
|
'sort_by_expiration_date' => '',
|
||||||
|
@ -2144,6 +2151,7 @@ URL: [url]',
|
||||||
'status_revision_sleeping' => '',
|
'status_revision_sleeping' => '',
|
||||||
'status_revisor_removed' => '',
|
'status_revisor_removed' => '',
|
||||||
'status_unknown' => 'Bilinmeyen',
|
'status_unknown' => 'Bilinmeyen',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => 'Depo boyutu',
|
'storage_size' => 'Depo boyutu',
|
||||||
'subfolder_duplicate_name' => '',
|
'subfolder_duplicate_name' => '',
|
||||||
'submit_2_fact_auth' => '',
|
'submit_2_fact_auth' => '',
|
||||||
|
|
|
@ -697,6 +697,8 @@ URL: [url]',
|
||||||
'export_user_list_csv' => '',
|
'export_user_list_csv' => '',
|
||||||
'extension_archive' => '',
|
'extension_archive' => '',
|
||||||
'extension_changelog' => '',
|
'extension_changelog' => '',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => '',
|
'extension_is_off_now' => '',
|
||||||
'extension_is_on_now' => '',
|
'extension_is_on_now' => '',
|
||||||
'extension_loading' => '',
|
'extension_loading' => '',
|
||||||
|
@ -1150,6 +1152,7 @@ URL: [url]',
|
||||||
'no_groups' => 'Немає груп',
|
'no_groups' => 'Немає груп',
|
||||||
'no_group_members' => 'Група не має членів',
|
'no_group_members' => 'Група не має членів',
|
||||||
'no_linked_files' => 'Немає пов\'язаних документів',
|
'no_linked_files' => 'Немає пов\'язаних документів',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => 'Немає попередніх версій',
|
'no_previous_versions' => 'Немає попередніх версій',
|
||||||
'no_receipt_needed' => 'Немає документів, які потребують підтвердження отримання',
|
'no_receipt_needed' => 'Немає документів, які потребують підтвердження отримання',
|
||||||
'no_review_needed' => 'Рецензія не потрібна',
|
'no_review_needed' => 'Рецензія не потрібна',
|
||||||
|
@ -1308,6 +1311,7 @@ URL: [url]',
|
||||||
'removeFolderFromDropFolder' => '',
|
'removeFolderFromDropFolder' => '',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => '',
|
'remove_approval_log' => '',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => 'Видалити обрані файли',
|
'remove_marked_files' => 'Видалити обрані файли',
|
||||||
'remove_review_log' => '',
|
'remove_review_log' => '',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1719,6 +1723,8 @@ URL: [url]',
|
||||||
'settings_enableLargeFileUpload_desc' => 'Якщо увімкнено, завантаження файлів доступне також через Java-аплет jumploader без обмеження розміру файлів. Це також дозволить завантажувати кілька файлів за раз.',
|
'settings_enableLargeFileUpload_desc' => 'Якщо увімкнено, завантаження файлів доступне також через Java-аплет jumploader без обмеження розміру файлів. Це також дозволить завантажувати кілька файлів за раз.',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => 'Включити список завдань в меню',
|
'settings_enableMenuTasks' => 'Включити список завдань в меню',
|
||||||
'settings_enableMenuTasks_desc' => 'Включити/відключити пункт меню, який містить всі завдання користувача. Там містяться документи, які потребують рецензії, затвердження і т.ін.',
|
'settings_enableMenuTasks_desc' => 'Включити/відключити пункт меню, який містить всі завдання користувача. Там містяться документи, які потребують рецензії, затвердження і т.ін.',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -2037,6 +2043,7 @@ URL: [url]',
|
||||||
'sign_out' => 'Вийти',
|
'sign_out' => 'Вийти',
|
||||||
'sign_out_user' => 'Вихід користувача',
|
'sign_out_user' => 'Вихід користувача',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => 'Slovak',
|
'sk_SK' => 'Slovak',
|
||||||
'sort_by_date' => '',
|
'sort_by_date' => '',
|
||||||
'sort_by_expiration_date' => '',
|
'sort_by_expiration_date' => '',
|
||||||
|
@ -2166,6 +2173,7 @@ URL: [url]',
|
||||||
'status_revision_sleeping' => 'Ревізію призупинено',
|
'status_revision_sleeping' => 'Ревізію призупинено',
|
||||||
'status_revisor_removed' => 'Ревізора видалено зі списку',
|
'status_revisor_removed' => 'Ревізора видалено зі списку',
|
||||||
'status_unknown' => 'Невідомий',
|
'status_unknown' => 'Невідомий',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => 'Розмір сховища',
|
'storage_size' => 'Розмір сховища',
|
||||||
'subfolder_duplicate_name' => '',
|
'subfolder_duplicate_name' => '',
|
||||||
'submit_2_fact_auth' => '',
|
'submit_2_fact_auth' => '',
|
||||||
|
|
|
@ -700,6 +700,8 @@ URL: [url]',
|
||||||
'export_user_list_csv' => '',
|
'export_user_list_csv' => '',
|
||||||
'extension_archive' => '扩展',
|
'extension_archive' => '扩展',
|
||||||
'extension_changelog' => '更新日志',
|
'extension_changelog' => '更新日志',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => '',
|
'extension_is_off_now' => '',
|
||||||
'extension_is_on_now' => '',
|
'extension_is_on_now' => '',
|
||||||
'extension_loading' => '加载扩展',
|
'extension_loading' => '加载扩展',
|
||||||
|
@ -1154,6 +1156,7 @@ URL: [url]',
|
||||||
'no_groups' => '无组别',
|
'no_groups' => '无组别',
|
||||||
'no_group_members' => '该组没有成员',
|
'no_group_members' => '该组没有成员',
|
||||||
'no_linked_files' => '无链接文件',
|
'no_linked_files' => '无链接文件',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => '无其它版本',
|
'no_previous_versions' => '无其它版本',
|
||||||
'no_receipt_needed' => '目前没有需要收据确认的文件',
|
'no_receipt_needed' => '目前没有需要收据确认的文件',
|
||||||
'no_review_needed' => '无待校对的文件',
|
'no_review_needed' => '无待校对的文件',
|
||||||
|
@ -1314,6 +1317,7 @@ URL: [url]',
|
||||||
'removeFolderFromDropFolder' => '导入后删除文件夹',
|
'removeFolderFromDropFolder' => '导入后删除文件夹',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => '',
|
'remove_approval_log' => '',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => '删除选中的文件',
|
'remove_marked_files' => '删除选中的文件',
|
||||||
'remove_review_log' => '',
|
'remove_review_log' => '',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1707,6 +1711,8 @@ URL: [url]',
|
||||||
'settings_enableLargeFileUpload_desc' => '如果设置了文件上传,也可以通过一个名为jumploader的浏览器java小程序来实现文件上传。它还允许一次上传多个文件。打开此选项将关闭网页cookie。',
|
'settings_enableLargeFileUpload_desc' => '如果设置了文件上传,也可以通过一个名为jumploader的浏览器java小程序来实现文件上传。它还允许一次上传多个文件。打开此选项将关闭网页cookie。',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => '在菜单中启用任务列表',
|
'settings_enableMenuTasks' => '在菜单中启用任务列表',
|
||||||
'settings_enableMenuTasks_desc' => '启用/禁用包含用户所有任务的菜单项。其中包含需要审核、批准的文件等。',
|
'settings_enableMenuTasks_desc' => '启用/禁用包含用户所有任务的菜单项。其中包含需要审核、批准的文件等。',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -2025,6 +2031,7 @@ URL: [url]',
|
||||||
'sign_out' => '登出',
|
'sign_out' => '登出',
|
||||||
'sign_out_user' => '退出登录',
|
'sign_out_user' => '退出登录',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => '斯洛伐克语',
|
'sk_SK' => '斯洛伐克语',
|
||||||
'sort_by_date' => '日期排序',
|
'sort_by_date' => '日期排序',
|
||||||
'sort_by_expiration_date' => '',
|
'sort_by_expiration_date' => '',
|
||||||
|
@ -2154,6 +2161,7 @@ URL: [url]',
|
||||||
'status_revision_sleeping' => '等待',
|
'status_revision_sleeping' => '等待',
|
||||||
'status_revisor_removed' => '从名单中删除校订人',
|
'status_revisor_removed' => '从名单中删除校订人',
|
||||||
'status_unknown' => '未知',
|
'status_unknown' => '未知',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => '存储大小',
|
'storage_size' => '存储大小',
|
||||||
'subfolder_duplicate_name' => '重复的文件夹',
|
'subfolder_duplicate_name' => '重复的文件夹',
|
||||||
'submit_2_fact_auth' => '保存秘钥',
|
'submit_2_fact_auth' => '保存秘钥',
|
||||||
|
|
|
@ -710,6 +710,8 @@ URL: [url]',
|
||||||
'export_user_list_csv' => '',
|
'export_user_list_csv' => '',
|
||||||
'extension_archive' => '擴充',
|
'extension_archive' => '擴充',
|
||||||
'extension_changelog' => '修改紀錄',
|
'extension_changelog' => '修改紀錄',
|
||||||
|
'extension_config' => '',
|
||||||
|
'extension_info' => '',
|
||||||
'extension_is_off_now' => '',
|
'extension_is_off_now' => '',
|
||||||
'extension_is_on_now' => '',
|
'extension_is_on_now' => '',
|
||||||
'extension_loading' => '擴充套件讀取中',
|
'extension_loading' => '擴充套件讀取中',
|
||||||
|
@ -1171,6 +1173,7 @@ URL: [url]',
|
||||||
'no_groups' => '無組別',
|
'no_groups' => '無組別',
|
||||||
'no_group_members' => '該組沒有成員',
|
'no_group_members' => '該組沒有成員',
|
||||||
'no_linked_files' => '無連結檔',
|
'no_linked_files' => '無連結檔',
|
||||||
|
'no_mimetype' => '',
|
||||||
'no_previous_versions' => '無其它版本',
|
'no_previous_versions' => '無其它版本',
|
||||||
'no_receipt_needed' => '當前沒有需要收據確認的文件。',
|
'no_receipt_needed' => '當前沒有需要收據確認的文件。',
|
||||||
'no_review_needed' => '無待校對的文件',
|
'no_review_needed' => '無待校對的文件',
|
||||||
|
@ -1335,6 +1338,7 @@ URL: [url]',
|
||||||
'removeFolderFromDropFolder' => '導入後刪除文件夾',
|
'removeFolderFromDropFolder' => '導入後刪除文件夾',
|
||||||
'removeFolderFromDropFolder_desc' => '',
|
'removeFolderFromDropFolder_desc' => '',
|
||||||
'remove_approval_log' => '',
|
'remove_approval_log' => '',
|
||||||
|
'remove_from_clipboard' => '',
|
||||||
'remove_marked_files' => '刪除勾選的檔案',
|
'remove_marked_files' => '刪除勾選的檔案',
|
||||||
'remove_review_log' => '',
|
'remove_review_log' => '',
|
||||||
'remove_task' => '',
|
'remove_task' => '',
|
||||||
|
@ -1758,6 +1762,8 @@ URL: [url]',
|
||||||
'settings_enableLargeFileUpload_desc' => '如果設置了該選項,則還可以通過一個名為Jumploader的Java小程序來上傳文件,而瀏覽器沒有設置文件大小限制。它還允許一步上傳幾個文件。啟用此功能將關閉僅HTTP cookie。',
|
'settings_enableLargeFileUpload_desc' => '如果設置了該選項,則還可以通過一個名為Jumploader的Java小程序來上傳文件,而瀏覽器沒有設置文件大小限制。它還允許一步上傳幾個文件。啟用此功能將關閉僅HTTP cookie。',
|
||||||
'settings_enableLoginByEmail' => '',
|
'settings_enableLoginByEmail' => '',
|
||||||
'settings_enableLoginByEmail_desc' => '',
|
'settings_enableLoginByEmail_desc' => '',
|
||||||
|
'settings_enableMemcached' => '',
|
||||||
|
'settings_enableMemcached_desc' => '',
|
||||||
'settings_enableMenuTasks' => '在菜單中啟用任務列表',
|
'settings_enableMenuTasks' => '在菜單中啟用任務列表',
|
||||||
'settings_enableMenuTasks_desc' => '啟用/禁用包含用戶所有任務的菜單項。其中包含需要審查,批准等的文件。',
|
'settings_enableMenuTasks_desc' => '啟用/禁用包含用戶所有任務的菜單項。其中包含需要審查,批准等的文件。',
|
||||||
'settings_enableMenuTransmittals' => '',
|
'settings_enableMenuTransmittals' => '',
|
||||||
|
@ -2076,6 +2082,7 @@ URL: [url]',
|
||||||
'sign_out' => '登出',
|
'sign_out' => '登出',
|
||||||
'sign_out_user' => '登出使用者',
|
'sign_out_user' => '登出使用者',
|
||||||
'site_brand' => '',
|
'site_brand' => '',
|
||||||
|
'skip_default_export_cols' => '',
|
||||||
'sk_SK' => '斯洛伐克語',
|
'sk_SK' => '斯洛伐克語',
|
||||||
'sort_by_date' => '依日期排序',
|
'sort_by_date' => '依日期排序',
|
||||||
'sort_by_expiration_date' => '',
|
'sort_by_expiration_date' => '',
|
||||||
|
@ -2205,6 +2212,7 @@ URL: [url]',
|
||||||
'status_revision_sleeping' => '待定',
|
'status_revision_sleeping' => '待定',
|
||||||
'status_revisor_removed' => '修訂者已從清單中刪除',
|
'status_revisor_removed' => '修訂者已從清單中刪除',
|
||||||
'status_unknown' => '未知',
|
'status_unknown' => '未知',
|
||||||
|
'storage' => '',
|
||||||
'storage_size' => '存儲大小',
|
'storage_size' => '存儲大小',
|
||||||
'subfolder_duplicate_name' => '子文件夾名稱重複',
|
'subfolder_duplicate_name' => '子文件夾名稱重複',
|
||||||
'submit_2_fact_auth' => '保存秘密',
|
'submit_2_fact_auth' => '保存秘密',
|
||||||
|
|
|
@ -250,10 +250,38 @@ default:
|
||||||
$attributes = $_POST["attributes_version"];
|
$attributes = $_POST["attributes_version"];
|
||||||
foreach($attributes as $attrdefid=>$attribute) {
|
foreach($attributes as $attrdefid=>$attribute) {
|
||||||
$attrdef = $dms->getAttributeDefinition($attrdefid);
|
$attrdef = $dms->getAttributeDefinition($attrdefid);
|
||||||
|
if(null === ($ret = $controller->callHook('validateAttribute', $attrdef, $attribute))) {
|
||||||
if($attribute) {
|
if($attribute) {
|
||||||
switch($attrdef->getType()) {
|
switch($attrdef->getType()) {
|
||||||
case SeedDMS_Core_AttributeDefinition::type_date:
|
case SeedDMS_Core_AttributeDefinition::type_date:
|
||||||
$attribute = date('Y-m-d', makeTsFromDate($attribute));
|
if(is_array($attribute))
|
||||||
|
$attribute = array_map(fn($value): string => date('Y-m-d', makeTsFromDate($value)), $attribute);
|
||||||
|
else
|
||||||
|
$attribute = date('Y-m-d', makeTsFromDate($attribute));
|
||||||
|
break;
|
||||||
|
case SeedDMS_Core_AttributeDefinition::type_folder:
|
||||||
|
if(is_array($attribute))
|
||||||
|
$attribute = array_map(fn($value): object => $dms->getFolder((int) $value), $attribute);
|
||||||
|
else
|
||||||
|
$attribute = $dms->getFolder((int) $attribute);
|
||||||
|
break;
|
||||||
|
case SeedDMS_Core_AttributeDefinition::type_document:
|
||||||
|
if(is_array($attribute))
|
||||||
|
$attribute = array_map(fn($value): object => $dms->getDocument((int) $value), $attribute);
|
||||||
|
else
|
||||||
|
$attribute = $dms->getDocument((int) $attribute);
|
||||||
|
break;
|
||||||
|
case SeedDMS_Core_AttributeDefinition::type_user:
|
||||||
|
if(is_array($attribute))
|
||||||
|
$attribute = array_map(fn($value): object => $dms->getUser((int) $value), $attribute);
|
||||||
|
else
|
||||||
|
$attribute = $dms->getUser((int) $attribute);
|
||||||
|
break;
|
||||||
|
case SeedDMS_Core_AttributeDefinition::type_group:
|
||||||
|
if(is_array($attribute))
|
||||||
|
$attribute = array_map(fn($value): object => $dms->getGroup((int) $value), $attribute);
|
||||||
|
else
|
||||||
|
$attribute = $dms->getGroup((int) $attribute);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if(!$attrdef->validate($attribute, null, true)) {
|
if(!$attrdef->validate($attribute, null, true)) {
|
||||||
|
@ -263,6 +291,10 @@ default:
|
||||||
} elseif($attrdef->getMinValues() > 0) {
|
} elseif($attrdef->getMinValues() > 0) {
|
||||||
UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("attr_min_values", array("attrname"=>$attrdef->getName())));
|
UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("attr_min_values", array("attrname"=>$attrdef->getName())));
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
if($ret === false)
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$attributes = array();
|
$attributes = array();
|
||||||
|
|
|
@ -46,7 +46,8 @@ if(!checkFormKey('edituserdata')) {
|
||||||
$fullname = $_POST["fullname"];
|
$fullname = $_POST["fullname"];
|
||||||
$email = $_POST["email"];
|
$email = $_POST["email"];
|
||||||
$comment = $_POST["comment"];
|
$comment = $_POST["comment"];
|
||||||
$language = $_POST["language"];
|
if(isset($_POST["language"]))
|
||||||
|
$language = $_POST["language"];
|
||||||
/* 'theme' won't be set, if themeselector is turned off */
|
/* 'theme' won't be set, if themeselector is turned off */
|
||||||
if(isset($_POST["theme"]))
|
if(isset($_POST["theme"]))
|
||||||
$mytheme = $_POST["theme"];
|
$mytheme = $_POST["theme"];
|
||||||
|
@ -103,7 +104,7 @@ if ($user->getEmail() != $email)
|
||||||
if ($user->getComment() != $comment)
|
if ($user->getComment() != $comment)
|
||||||
$user->setComment($comment);
|
$user->setComment($comment);
|
||||||
|
|
||||||
if ($user->getLanguage() != $language)
|
if (isset($language) && $user->getLanguage() != $language)
|
||||||
$user->setLanguage($language);
|
$user->setLanguage($language);
|
||||||
|
|
||||||
if (isset($mytheme) && $user->getTheme() != $mytheme)
|
if (isset($mytheme) && $user->getTheme() != $mytheme)
|
||||||
|
|
|
@ -55,7 +55,10 @@ if($user) {
|
||||||
$params['url'] = getBaseUrl().$settings->_httpRoot."out/out.ChangePassword.php?hash=".$hash;
|
$params['url'] = getBaseUrl().$settings->_httpRoot."out/out.ChangePassword.php?hash=".$hash;
|
||||||
$params['url_prefix'] = getBaseUrl().$settings->_httpRoot;
|
$params['url_prefix'] = getBaseUrl().$settings->_httpRoot;
|
||||||
$emailobj->toIndividual($settings->_smtpSendFrom, $user, $subject, $message, $params);
|
$emailobj->toIndividual($settings->_smtpSendFrom, $user, $subject, $message, $params);
|
||||||
|
add_log_line("Request for '".$login."' send to '".$email."'", PEAR_LOG_INFO);
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
add_log_line("No such user '".$login."' with email '".$email."'", PEAR_LOG_WARNING);
|
||||||
}
|
}
|
||||||
|
|
||||||
header('Location: ../out/out.PasswordSend.php');
|
header('Location: ../out/out.PasswordSend.php');
|
||||||
|
|
|
@ -31,5 +31,4 @@ include("../inc/inc.Authentication.php");
|
||||||
|
|
||||||
$session->setLanguage($_GET['lang']);
|
$session->setLanguage($_GET['lang']);
|
||||||
|
|
||||||
header("Location: http".((isset($_SERVER['HTTPS']) && (strcmp($_SERVER['HTTPS'],'off')!=0)) ? "s" : "")."://".$_SERVER['HTTP_HOST'].$_GET['referer']);
|
header("Location: http".((isset($_SERVER['HTTPS']) && (strcmp($_SERVER['HTTPS'],'off')!=0)) ? "s" : "")."://".$_SERVER['HTTP_HOST'].decryptData($settings->_encryptionKey, $_GET['referer']));
|
||||||
?>
|
|
||||||
|
|
|
@ -55,10 +55,12 @@ if (!is_object($content)) {
|
||||||
UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("invalid_version"));
|
UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("invalid_version"));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isset($_POST["startdate"])) {
|
$ts = null;
|
||||||
|
if (!empty($_POST["startdate"])) {
|
||||||
$ts = makeTsFromDate($_POST["startdate"]);
|
$ts = makeTsFromDate($_POST["startdate"]);
|
||||||
} else {
|
}
|
||||||
$ts = time();
|
if(!$ts) {
|
||||||
|
UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("invalid_revision_date"));
|
||||||
}
|
}
|
||||||
$startdate = date('Y-m-d', $ts);
|
$startdate = date('Y-m-d', $ts);
|
||||||
|
|
||||||
|
|
|
@ -29,17 +29,6 @@ include("../inc/inc.DBInit.php");
|
||||||
include("../inc/inc.ClassUI.php");
|
include("../inc/inc.ClassUI.php");
|
||||||
include("../inc/inc.Authentication.php");
|
include("../inc/inc.Authentication.php");
|
||||||
|
|
||||||
|
|
||||||
function getBoolValue($post_name)
|
|
||||||
{
|
|
||||||
$out = false;
|
|
||||||
if (isset($_POST[$post_name]))
|
|
||||||
if ($_POST[$post_name]=="on")
|
|
||||||
$out = true;
|
|
||||||
|
|
||||||
return $out;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!$user->isAdmin()) {
|
if (!$user->isAdmin()) {
|
||||||
UI::exitError(getMLText("admin_tools"),getMLText("access_denied"));
|
UI::exitError(getMLText("admin_tools"),getMLText("access_denied"));
|
||||||
}
|
}
|
||||||
|
@ -68,10 +57,12 @@ if ($action == "saveSettings")
|
||||||
function setBoolValue($name) {
|
function setBoolValue($name) {
|
||||||
global $_POST, $settings;
|
global $_POST, $settings;
|
||||||
if(!in_array($name, $settings->_hiddenConfFields)) {
|
if(!in_array($name, $settings->_hiddenConfFields)) {
|
||||||
if (isset($_POST[$name]) && $_POST[$name]=="on")
|
if (isset($_POST[$name])) {
|
||||||
$settings->{"_".$name} = true;
|
if ($_POST[$name]=="on")
|
||||||
else
|
$settings->{"_".$name} = true;
|
||||||
$settings->{"_".$name} = false;
|
else
|
||||||
|
$settings->{"_".$name} = false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
function setIntValue($name) {
|
function setIntValue($name) {
|
||||||
|
@ -81,11 +72,13 @@ if ($action == "saveSettings")
|
||||||
}
|
}
|
||||||
function setArrayValue($name) {
|
function setArrayValue($name) {
|
||||||
global $_POST, $settings;
|
global $_POST, $settings;
|
||||||
if(!in_array($name, $settings->_hiddenConfFields)) {
|
if (!in_array($name, $settings->_hiddenConfFields)) {
|
||||||
if(isset($_POST[$name]) && $_POST[$name])
|
if (isset($_POST[$name])) {
|
||||||
$settings->{"_".$name} = $_POST[$name];
|
if ($_POST[$name])
|
||||||
else
|
$settings->{"_".$name} = $_POST[$name];
|
||||||
$settings->{"_".$name} = array();
|
else
|
||||||
|
$settings->{"_".$name} = array();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
function setDirValue($name) {
|
function setDirValue($name) {
|
||||||
|
@ -199,6 +192,7 @@ if ($action == "saveSettings")
|
||||||
setStrValue("partitionSize"); // TODO: check if valid value, e.g. 1M or 5K
|
setStrValue("partitionSize"); // TODO: check if valid value, e.g. 1M or 5K
|
||||||
setStrValue("maxUploadSize"); // TODO: check if valid value, e.g. 1M or 5K
|
setStrValue("maxUploadSize"); // TODO: check if valid value, e.g. 1M or 5K
|
||||||
setBoolValue("enableXsendfile");
|
setBoolValue("enableXsendfile");
|
||||||
|
setBoolValue("enableMemcached");
|
||||||
|
|
||||||
// SETTINGS - SYSTEM - AUTHENTICATION
|
// SETTINGS - SYSTEM - AUTHENTICATION
|
||||||
setBoolValue("enableGuestLogin");
|
setBoolValue("enableGuestLogin");
|
||||||
|
@ -299,7 +293,7 @@ if ($action == "saveSettings")
|
||||||
// SETTINGS - ADVANCED - SERVER
|
// SETTINGS - ADVANCED - SERVER
|
||||||
setStrValue("coreDir");
|
setStrValue("coreDir");
|
||||||
setStrValue("luceneClassDir");
|
setStrValue("luceneClassDir");
|
||||||
setIntValue("contentOffsetDir");
|
setStrValue("contentOffsetDir");
|
||||||
setIntValue("maxDirID");
|
setIntValue("maxDirID");
|
||||||
setIntValue("updateNotifyTime");
|
setIntValue("updateNotifyTime");
|
||||||
setIntValue("maxExecutionTime");
|
setIntValue("maxExecutionTime");
|
||||||
|
@ -347,15 +341,21 @@ if ($action == "saveSettings")
|
||||||
// -------------------------------------------------------------------------
|
// -------------------------------------------------------------------------
|
||||||
// save
|
// save
|
||||||
// -------------------------------------------------------------------------
|
// -------------------------------------------------------------------------
|
||||||
if (!$settings->save())
|
if (!$settings->save()) {
|
||||||
UI::exitError(getMLText("admin_tools"),getMLText("settings_SaveError"));
|
if(isAjax()) {
|
||||||
|
echo json_encode(array('success'=>false, 'msg'=>getMLText('settings_SaveError')));
|
||||||
|
exit;
|
||||||
|
} else {
|
||||||
|
UI::exitError(getMLText("admin_tools"),getMLText("settings_SaveError"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
add_log_line(".php&action=savesettings");
|
add_log_line(".php&action=savesettings");
|
||||||
}
|
}
|
||||||
|
|
||||||
$session->setSplashMsg(array('type'=>'success', 'msg'=>getMLText('splash_settings_saved')));
|
if(isAjax()) {
|
||||||
|
echo json_encode(array('success'=>true, 'msg'=>getMLText('splash_settings_saved')));
|
||||||
|
} else {
|
||||||
header("Location:../out/out.Settings.php?currenttab=".$_POST['currenttab']);
|
$session->setSplashMsg(array('type'=>'success', 'msg'=>getMLText('splash_settings_saved')));
|
||||||
|
header("Location:../out/out.Settings.php?currenttab=".$_POST['currenttab']);
|
||||||
?>
|
}
|
||||||
|
|
|
@ -346,10 +346,38 @@ default:
|
||||||
$attributes = $_POST["attributes_version"];
|
$attributes = $_POST["attributes_version"];
|
||||||
foreach($attributes as $attrdefid=>$attribute) {
|
foreach($attributes as $attrdefid=>$attribute) {
|
||||||
$attrdef = $dms->getAttributeDefinition($attrdefid);
|
$attrdef = $dms->getAttributeDefinition($attrdefid);
|
||||||
|
if(null === ($ret = $controller->callHook('validateAttribute', $attrdef, $attribute))) {
|
||||||
if($attribute) {
|
if($attribute) {
|
||||||
switch($attrdef->getType()) {
|
switch($attrdef->getType()) {
|
||||||
case SeedDMS_Core_AttributeDefinition::type_date:
|
case SeedDMS_Core_AttributeDefinition::type_date:
|
||||||
$attribute = date('Y-m-d', makeTsFromDate($attribute));
|
if(is_array($attribute))
|
||||||
|
$attribute = array_map(fn($value): string => date('Y-m-d', makeTsFromDate($value)), $attribute);
|
||||||
|
else
|
||||||
|
$attribute = date('Y-m-d', makeTsFromDate($attribute));
|
||||||
|
break;
|
||||||
|
case SeedDMS_Core_AttributeDefinition::type_folder:
|
||||||
|
if(is_array($attribute))
|
||||||
|
$attribute = array_map(fn($value): object => $dms->getFolder((int) $value), $attribute);
|
||||||
|
else
|
||||||
|
$attribute = $dms->getFolder((int) $attribute);
|
||||||
|
break;
|
||||||
|
case SeedDMS_Core_AttributeDefinition::type_document:
|
||||||
|
if(is_array($attribute))
|
||||||
|
$attribute = array_map(fn($value): object => $dms->getDocument((int) $value), $attribute);
|
||||||
|
else
|
||||||
|
$attribute = $dms->getDocument((int) $attribute);
|
||||||
|
break;
|
||||||
|
case SeedDMS_Core_AttributeDefinition::type_user:
|
||||||
|
if(is_array($attribute))
|
||||||
|
$attribute = array_map(fn($value): object => $dms->getUser((int) $value), $attribute);
|
||||||
|
else
|
||||||
|
$attribute = $dms->getUser((int) $attribute);
|
||||||
|
break;
|
||||||
|
case SeedDMS_Core_AttributeDefinition::type_group:
|
||||||
|
if(is_array($attribute))
|
||||||
|
$attribute = array_map(fn($value): object => $dms->getGroup((int) $value), $attribute);
|
||||||
|
else
|
||||||
|
$attribute = $dms->getGroup((int) $attribute);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if(!$attrdef->validate($attribute, null, true)) {
|
if(!$attrdef->validate($attribute, null, true)) {
|
||||||
|
@ -359,6 +387,10 @@ default:
|
||||||
} elseif($attrdef->getMinValues() > 0) {
|
} elseif($attrdef->getMinValues() > 0) {
|
||||||
UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("attr_min_values", array("attrname"=>$attrdef->getName())));
|
UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("attr_min_values", array("attrname"=>$attrdef->getName())));
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
if($ret === false)
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$attributes = array();
|
$attributes = array();
|
||||||
|
|
|
@ -57,6 +57,8 @@ if($view) {
|
||||||
$view->setParam('enableRecursiveCount', $settings->_enableRecursiveCount);
|
$view->setParam('enableRecursiveCount', $settings->_enableRecursiveCount);
|
||||||
$view->setParam('maxRecursiveCount', $settings->_maxRecursiveCount);
|
$view->setParam('maxRecursiveCount', $settings->_maxRecursiveCount);
|
||||||
$view->setParam('previewWidthList', $settings->_previewWidthList);
|
$view->setParam('previewWidthList', $settings->_previewWidthList);
|
||||||
|
$view->setParam('previewConverters', isset($settings->_converters['preview']) ? $settings->_converters['preview'] : array());
|
||||||
|
$view->setParam('convertToPdf', $settings->_convertToPdf);
|
||||||
$view->setParam('timeout', $settings->_cmdTimeout);
|
$view->setParam('timeout', $settings->_cmdTimeout);
|
||||||
$view->setParam('accessobject', $accessop);
|
$view->setParam('accessobject', $accessop);
|
||||||
$view->setParam('xsendfile', $settings->_enableXsendfile);
|
$view->setParam('xsendfile', $settings->_enableXsendfile);
|
||||||
|
|
|
@ -53,6 +53,7 @@ if ($view) {
|
||||||
$view->setParam('type', $type);
|
$view->setParam('type', $type);
|
||||||
$view->setParam('data', $data);
|
$view->setParam('data', $data);
|
||||||
$view->setParam('accessobject', $accessop);
|
$view->setParam('accessobject', $accessop);
|
||||||
|
$view->setParam('quota', $settings->_quota);
|
||||||
$view($_GET);
|
$view($_GET);
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
|
|
@ -49,6 +49,7 @@ if (isset($_GET["orderdir"]) && strlen($_GET["orderdir"])==1 ) {
|
||||||
$days = null;
|
$days = null;
|
||||||
$startts = null;
|
$startts = null;
|
||||||
$endts = null;
|
$endts = null;
|
||||||
|
$seluser = null;
|
||||||
if(isset($_GET['days']) && is_numeric($_GET['days'])) {
|
if(isset($_GET['days']) && is_numeric($_GET['days'])) {
|
||||||
$days = (int) $_GET['days'];
|
$days = (int) $_GET['days'];
|
||||||
} else {
|
} else {
|
||||||
|
@ -59,6 +60,9 @@ if(isset($_GET['days']) && is_numeric($_GET['days'])) {
|
||||||
$endts = makeTsFromDate($_GET['enddate']);
|
$endts = makeTsFromDate($_GET['enddate']);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if(isset($_GET['seluserid'])) {
|
||||||
|
$seluser = $dms->getUser((int) $_GET['seluserid']);
|
||||||
|
}
|
||||||
|
|
||||||
if($view) {
|
if($view) {
|
||||||
$view->setParam('conversionmgr', $conversionmgr);
|
$view->setParam('conversionmgr', $conversionmgr);
|
||||||
|
@ -68,6 +72,7 @@ if($view) {
|
||||||
$view->setParam('days', $days);
|
$view->setParam('days', $days);
|
||||||
$view->setParam('startts', $startts);
|
$view->setParam('startts', $startts);
|
||||||
$view->setParam('endts', $endts);
|
$view->setParam('endts', $endts);
|
||||||
|
$view->setParam('seluser', $seluser);
|
||||||
$view->setParam('cachedir', $settings->_cacheDir);
|
$view->setParam('cachedir', $settings->_cacheDir);
|
||||||
$view->setParam('previewWidthList', $settings->_previewWidthList);
|
$view->setParam('previewWidthList', $settings->_previewWidthList);
|
||||||
$view->setParam('timeout', $settings->_cmdTimeout);
|
$view->setParam('timeout', $settings->_cmdTimeout);
|
||||||
|
|
|
@ -29,51 +29,57 @@ require_once("inc/inc.DBInit.php");
|
||||||
require_once("inc/inc.ClassUI.php");
|
require_once("inc/inc.ClassUI.php");
|
||||||
require_once("inc/inc.Authentication.php");
|
require_once("inc/inc.Authentication.php");
|
||||||
|
|
||||||
function getTime() {
|
function getTime() { /* {{{ */
|
||||||
if (function_exists('microtime')) {
|
if (function_exists('microtime')) {
|
||||||
$tm = microtime();
|
$tm = microtime();
|
||||||
$tm = explode(' ', $tm);
|
$tm = explode(' ', $tm);
|
||||||
return (float) sprintf('%f', $tm[1] + $tm[0]);
|
return (float) sprintf('%f', $tm[1] + $tm[0]);
|
||||||
}
|
}
|
||||||
return time();
|
return time();
|
||||||
}
|
} /* }}} */
|
||||||
|
|
||||||
|
$get = $_GET;
|
||||||
|
|
||||||
// Redirect to the search page if the navigation search button has been
|
// Redirect to the search page if the navigation search button has been
|
||||||
// selected without supplying any search terms.
|
// selected without supplying any search terms.
|
||||||
if (isset($_GET["navBar"])) {
|
if (isset($get["navBar"])) {
|
||||||
if (!isset($_GET["folderid"]) || !is_numeric($_GET["folderid"]) || intval($_GET["folderid"])<1) {
|
if (!isset($get["folderid"]) || !is_numeric($get["folderid"]) || intval($get["folderid"])<1) {
|
||||||
$folderid=$settings->_rootFolderID;
|
$folderid=$settings->_rootFolderID;
|
||||||
} else {
|
} else {
|
||||||
$folderid = $_GET["folderid"];
|
$folderid = $get["folderid"];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$includecontent = false;
|
$includecontent = false;
|
||||||
if (isset($_GET["includecontent"]) && $_GET["includecontent"])
|
if (isset($get["includecontent"]) && $get["includecontent"])
|
||||||
$includecontent = true;
|
$includecontent = true;
|
||||||
|
|
||||||
|
$skipdefaultcols = false;
|
||||||
|
if (isset($get["skipdefaultcols"]) && $get["skipdefaultcols"])
|
||||||
|
$skipdefaultcols = true;
|
||||||
|
|
||||||
$newowner = null;
|
$newowner = null;
|
||||||
if (isset($_GET["newowner"]) && is_numeric($_GET["newowner"]) && $_GET['newowner'] > 0) {
|
if (isset($get["newowner"]) && is_numeric($get["newowner"]) && $get['newowner'] > 0) {
|
||||||
$newowner = $dms->getUser((int) $_GET['newowner']);
|
$newowner = $dms->getUser((int) $get['newowner']);
|
||||||
}
|
}
|
||||||
|
|
||||||
$newreviewer = null;
|
$newreviewer = null;
|
||||||
if (isset($_GET["newreviewer"]) && is_numeric($_GET["newreviewer"]) && $_GET['newreviewer'] > 0) {
|
if (isset($get["newreviewer"]) && is_numeric($get["newreviewer"]) && $get['newreviewer'] > 0) {
|
||||||
$newreviewer = $dms->getUser((int) $_GET['newreviewer']);
|
$newreviewer = $dms->getUser((int) $get['newreviewer']);
|
||||||
}
|
}
|
||||||
|
|
||||||
$newapprover = null;
|
$newapprover = null;
|
||||||
if (isset($_GET["newapprover"]) && is_numeric($_GET["newapprover"]) && $_GET['newapprover'] > 0) {
|
if (isset($get["newapprover"]) && is_numeric($get["newapprover"]) && $get['newapprover'] > 0) {
|
||||||
$newapprover = $dms->getUser((int) $_GET['newapprover']);
|
$newapprover = $dms->getUser((int) $get['newapprover']);
|
||||||
}
|
}
|
||||||
|
|
||||||
$changecategory = null;
|
$changecategory = null;
|
||||||
if (isset($_GET["changecategory"]) && is_numeric($_GET["changecategory"]) && $_GET['changecategory'] > 0) {
|
if (isset($get["changecategory"]) && is_numeric($get["changecategory"]) && $get['changecategory'] > 0) {
|
||||||
$changecategory = $dms->getDocumentCategory((int) $_GET['changecategory']);
|
$changecategory = $dms->getDocumentCategory((int) $get['changecategory']);
|
||||||
}
|
}
|
||||||
$removecategory = 0;
|
$removecategory = 0;
|
||||||
if (isset($_GET["removecategory"]) && is_numeric($_GET["removecategory"]) && $_GET['removecategory'] > 0) {
|
if (isset($get["removecategory"]) && is_numeric($get["removecategory"]) && $get['removecategory'] > 0) {
|
||||||
$removecategory = (int) $_GET['removecategory'];
|
$removecategory = (int) $get['removecategory'];
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Creation date {{{ */
|
/* Creation date {{{ */
|
||||||
|
@ -83,16 +89,16 @@ $createendts = null;
|
||||||
$createenddate = null;
|
$createenddate = null;
|
||||||
$created['from'] = null;
|
$created['from'] = null;
|
||||||
$created['to'] = null;
|
$created['to'] = null;
|
||||||
if(!empty($_GET["created"]["from"])) {
|
if(!empty($get["created"]["from"])) {
|
||||||
$createstartts = makeTsFromDate($_GET["created"]["from"]);
|
$createstartts = makeTsFromDate($get["created"]["from"]);
|
||||||
$createstartdate = array('year'=>(int)date('Y', $createstartts), 'month'=>(int)date('m', $createstartts), 'day'=>(int)date('d', $createstartts), 'hour'=>0, 'minute'=>0, 'second'=>0);
|
$createstartdate = array('year'=>(int)date('Y', $createstartts), 'month'=>(int)date('m', $createstartts), 'day'=>(int)date('d', $createstartts), 'hour'=>0, 'minute'=>0, 'second'=>0);
|
||||||
if (!checkdate($createstartdate['month'], $createstartdate['day'], $createstartdate['year'])) {
|
if (!checkdate($createstartdate['month'], $createstartdate['day'], $createstartdate['year'])) {
|
||||||
UI::exitError(getMLText("search"),getMLText("invalid_create_date_end"));
|
UI::exitError(getMLText("search"),getMLText("invalid_create_date_end"));
|
||||||
}
|
}
|
||||||
$created['from'] = $createstartts;
|
$created['from'] = $createstartts;
|
||||||
}
|
}
|
||||||
if(!empty($_GET["created"]["to"])) {
|
if(!empty($get["created"]["to"])) {
|
||||||
$createendts = makeTsFromDate($_GET["created"]["to"]);
|
$createendts = makeTsFromDate($get["created"]["to"]);
|
||||||
$createenddate = array('year'=>(int)date('Y', $createendts), 'month'=>(int)date('m', $createendts), 'day'=>(int)date('d', $createendts), 'hour'=>23, 'minute'=>59, 'second'=>59);
|
$createenddate = array('year'=>(int)date('Y', $createendts), 'month'=>(int)date('m', $createendts), 'day'=>(int)date('d', $createendts), 'hour'=>23, 'minute'=>59, 'second'=>59);
|
||||||
if (!checkdate($createenddate['month'], $createenddate['day'], $createenddate['year'])) {
|
if (!checkdate($createenddate['month'], $createenddate['day'], $createenddate['year'])) {
|
||||||
UI::exitError(getMLText("search"),getMLText("invalid_create_date_end"));
|
UI::exitError(getMLText("search"),getMLText("invalid_create_date_end"));
|
||||||
|
@ -108,16 +114,16 @@ $modifyendts = null;
|
||||||
$modifyenddate = null;
|
$modifyenddate = null;
|
||||||
$modified['from'] = null;
|
$modified['from'] = null;
|
||||||
$modified['to'] = null;
|
$modified['to'] = null;
|
||||||
if(!empty($_GET["modified"]["from"])) {
|
if(!empty($get["modified"]["from"])) {
|
||||||
$modifystartts = makeTsFromDate($_GET["modified"]["from"]);
|
$modifystartts = makeTsFromDate($get["modified"]["from"]);
|
||||||
$modifystartdate = array('year'=>(int)date('Y', $modifystartts), 'month'=>(int)date('m', $modifystartts), 'day'=>(int)date('d', $modifystartts), 'hour'=>0, 'minute'=>0, 'second'=>0);
|
$modifystartdate = array('year'=>(int)date('Y', $modifystartts), 'month'=>(int)date('m', $modifystartts), 'day'=>(int)date('d', $modifystartts), 'hour'=>0, 'minute'=>0, 'second'=>0);
|
||||||
if (!checkdate($modifystartdate['month'], $modifystartdate['day'], $modifystartdate['year'])) {
|
if (!checkdate($modifystartdate['month'], $modifystartdate['day'], $modifystartdate['year'])) {
|
||||||
UI::exitError(getMLText("search"),getMLText("invalid_modification_date_end"));
|
UI::exitError(getMLText("search"),getMLText("invalid_modification_date_end"));
|
||||||
}
|
}
|
||||||
$modified['from'] = $modifystartts;
|
$modified['from'] = $modifystartts;
|
||||||
}
|
}
|
||||||
if(!empty($_GET["modified"]["to"])) {
|
if(!empty($get["modified"]["to"])) {
|
||||||
$modifyendts = makeTsFromDate($_GET["modified"]["to"]);
|
$modifyendts = makeTsFromDate($get["modified"]["to"]);
|
||||||
$modifyenddate = array('year'=>(int)date('Y', $modifyendts), 'month'=>(int)date('m', $modifyendts), 'day'=>(int)date('d', $modifyendts), 'hour'=>23, 'minute'=>59, 'second'=>59);
|
$modifyenddate = array('year'=>(int)date('Y', $modifyendts), 'month'=>(int)date('m', $modifyendts), 'day'=>(int)date('d', $modifyendts), 'hour'=>23, 'minute'=>59, 'second'=>59);
|
||||||
if (!checkdate($modifyenddate['month'], $modifyenddate['day'], $modifyenddate['year'])) {
|
if (!checkdate($modifyenddate['month'], $modifyenddate['day'], $modifyenddate['year'])) {
|
||||||
UI::exitError(getMLText("search"),getMLText("invalid_modification_date_end"));
|
UI::exitError(getMLText("search"),getMLText("invalid_modification_date_end"));
|
||||||
|
@ -131,35 +137,35 @@ $filesizestart = 0;
|
||||||
$filesizeend = 0;
|
$filesizeend = 0;
|
||||||
$filesize['from'] = null;
|
$filesize['from'] = null;
|
||||||
$filesize['to'] = null;
|
$filesize['to'] = null;
|
||||||
if(!empty($_GET["filesize"]["from"])) {
|
if(!empty($get["filesize"]["from"])) {
|
||||||
$filesizestart = $_GET["filesize"]["from"];
|
$filesizestart = $get["filesize"]["from"];
|
||||||
$filesize['from'] = $_GET["filesize"]["from"];
|
$filesize['from'] = $get["filesize"]["from"];
|
||||||
}
|
}
|
||||||
if(!empty($_GET["filesize"]["to"])) {
|
if(!empty($get["filesize"]["to"])) {
|
||||||
$filesizeend = $_GET["filesize"]["to"];
|
$filesizeend = $get["filesize"]["to"];
|
||||||
$filesize['to'] = $_GET["filesize"]["to"];
|
$filesize['to'] = $get["filesize"]["to"];
|
||||||
}
|
}
|
||||||
/* }}} */
|
/* }}} */
|
||||||
|
|
||||||
// Check to see if the search has been restricted to a particular
|
// Check to see if the search has been restricted to a particular
|
||||||
// document owner.
|
// document owner.
|
||||||
// $_GET['owner'] can be a name of an array of names or ids {{{
|
// $get['owner'] can be a name of an array of names or ids {{{
|
||||||
$owner = [];
|
$owner = [];
|
||||||
$ownernames = []; // Needed by fulltext search
|
$ownernames = []; // Needed by fulltext search
|
||||||
$ownerobjs = []; // Needed by database search
|
$ownerobjs = []; // Needed by database search
|
||||||
if(!empty($_GET["owner"])) {
|
if(!empty($get["owner"])) {
|
||||||
$owner = $_GET['owner'];
|
$owner = $get['owner'];
|
||||||
if (!is_array($_GET['owner'])) {
|
if (!is_array($get['owner'])) {
|
||||||
if(is_numeric($_GET['owner']))
|
if(is_numeric($get['owner']))
|
||||||
$o = $dms->getUser($_GET['owner']);
|
$o = $dms->getUser($get['owner']);
|
||||||
else
|
else
|
||||||
$o = $dms->getUserByLogin($_GET['owner']);
|
$o = $dms->getUserByLogin($get['owner']);
|
||||||
if($o) {
|
if($o) {
|
||||||
$ownernames[] = $o->getLogin();
|
$ownernames[] = $o->getLogin();
|
||||||
$ownerobjs[] = $o;
|
$ownerobjs[] = $o;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
foreach($_GET["owner"] as $l) {
|
foreach($get["owner"] as $l) {
|
||||||
if($l) {
|
if($l) {
|
||||||
if(is_numeric($l))
|
if(is_numeric($l))
|
||||||
$o = $dms->getUser($l);
|
$o = $dms->getUser($l);
|
||||||
|
@ -174,121 +180,89 @@ if(!empty($_GET["owner"])) {
|
||||||
}
|
}
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
|
|
||||||
// category {{{
|
// category {{{
|
||||||
$categories = array();
|
$categories = array();
|
||||||
$categorynames = array();
|
$categorynames = array();
|
||||||
$category = array();
|
$category = array();
|
||||||
if(isset($_GET['category']) && $_GET['category']) {
|
if(isset($get['category']) && $get['category']) {
|
||||||
$category = $_GET['category'];
|
$category = $get['category'];
|
||||||
foreach($_GET['category'] as $catid) {
|
foreach($get['category'] as $catid) {
|
||||||
if($catid) {
|
if($catid) {
|
||||||
if(is_numeric($catid)) {
|
if(is_numeric($catid)) {
|
||||||
if($cat = $dms->getDocumentCategory($catid)) {
|
if($cat = $dms->getDocumentCategory($catid)) {
|
||||||
$categories[] = $cat;
|
$categories[] = $cat;
|
||||||
$categorynames[] = $cat->getName();
|
$categorynames[] = $cat->getName();
|
||||||
}
|
|
||||||
} else {
|
|
||||||
$categorynames[] = $catid;
|
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
$categorynames[] = $catid;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} /* }}} */
|
}
|
||||||
|
} /* }}} */
|
||||||
|
|
||||||
if (isset($_GET["orderby"]) && is_string($_GET["orderby"])) {
|
if (isset($get["orderby"]) && is_string($get["orderby"])) {
|
||||||
$orderby = $_GET["orderby"];
|
$orderby = $get["orderby"];
|
||||||
}
|
} else {
|
||||||
else {
|
$orderby = "";
|
||||||
$orderby = "";
|
}
|
||||||
}
|
|
||||||
|
|
||||||
$terms = [];
|
$terms = [];
|
||||||
$limit = (isset($_GET["limit"]) && is_numeric($_GET["limit"])) ? (int) $_GET['limit'] : 20;
|
$limit = (isset($get["limit"]) && is_numeric($get["limit"])) ? (int) $get['limit'] : 20;
|
||||||
$fullsearch = ((!isset($_GET["fullsearch"]) && $settings->_defaultSearchMethod == 'fulltext') || !empty($_GET["fullsearch"])) && $settings->_enableFullSearch;
|
$fullsearch = ((!isset($get["fullsearch"]) && $settings->_defaultSearchMethod == 'fulltext') || !empty($get["fullsearch"])) && $settings->_enableFullSearch;
|
||||||
$facetsearch = !empty($_GET["facetsearch"]) && $settings->_enableFullSearch;
|
$facetsearch = !empty($get["facetsearch"]) && $settings->_enableFullSearch;
|
||||||
|
|
||||||
|
if (isset($get["query"]) && is_string($get["query"])) {
|
||||||
|
$query = $get["query"];
|
||||||
|
} else {
|
||||||
|
$query = "";
|
||||||
|
}
|
||||||
|
|
||||||
|
// Check to see if the search has been restricted to a particular
|
||||||
|
// mimetype. {{{
|
||||||
|
$mimetype = [];
|
||||||
|
if (isset($get["mimetype"])) {
|
||||||
|
if (!is_array($get['mimetype'])) {
|
||||||
|
if(!empty($get['mimetype']))
|
||||||
|
$mimetype[] = $get['mimetype'];
|
||||||
|
} else {
|
||||||
|
foreach($get["mimetype"] as $l) {
|
||||||
|
if($l)
|
||||||
|
$mimetype[] = $l;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} /* }}} */
|
||||||
|
|
||||||
|
// status
|
||||||
|
$status = isset($get['status']) ? $get['status'] : array();
|
||||||
|
|
||||||
|
// Get the page number to display. If the result set contains more than
|
||||||
|
// 25 entries, it is displayed across multiple pages.
|
||||||
|
//
|
||||||
|
// This requires that a page number variable be used to track which page the
|
||||||
|
// user is interested in, and an extra clause on the select statement.
|
||||||
|
//
|
||||||
|
// Default page to display is always one.
|
||||||
|
$pageNumber=1;
|
||||||
|
if (isset($get["pg"])) {
|
||||||
|
if (is_numeric($get["pg"]) && $get["pg"]>0) {
|
||||||
|
$pageNumber = (int) $get["pg"];
|
||||||
|
}
|
||||||
|
elseif (!strcasecmp($get["pg"], "all")) {
|
||||||
|
$pageNumber = "all";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if($fullsearch) {
|
if($fullsearch) {
|
||||||
// Search in Fulltext {{{
|
// Search in Fulltext {{{
|
||||||
if (isset($_GET["query"]) && is_string($_GET["query"])) {
|
|
||||||
$query = $_GET["query"];
|
|
||||||
// if(isset($_GET['action']) && ($_GET['action'] == 'typeahead'))
|
|
||||||
// $query .= '*';
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
$query = "";
|
|
||||||
}
|
|
||||||
|
|
||||||
//
|
|
||||||
// Get the page number to display. If the result set contains more than
|
|
||||||
// 25 entries, it is displayed across multiple pages.
|
|
||||||
//
|
|
||||||
// This requires that a page number variable be used to track which page the
|
|
||||||
// user is interested in, and an extra clause on the select statement.
|
|
||||||
//
|
|
||||||
// Default page to display is always one.
|
|
||||||
$pageNumber=1;
|
|
||||||
if (isset($_GET["pg"])) {
|
|
||||||
if (is_numeric($_GET["pg"]) && $_GET["pg"]>0) {
|
|
||||||
$pageNumber = (integer)$_GET["pg"];
|
|
||||||
}
|
|
||||||
elseif (!strcasecmp($_GET["pg"], "all")) {
|
|
||||||
$pageNumber = "all";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// --------------- Suche starten --------------------------------------------
|
|
||||||
|
|
||||||
// Check to see if the search has been restricted to a particular
|
|
||||||
// mimetype. {{{
|
|
||||||
$mimetype = [];
|
|
||||||
if (isset($_GET["mimetype"])) {
|
|
||||||
if (!is_array($_GET['mimetype'])) {
|
|
||||||
if(!empty($_GET['mimetype']))
|
|
||||||
$mimetype[] = $_GET['mimetype'];
|
|
||||||
} else {
|
|
||||||
foreach($_GET["mimetype"] as $l) {
|
|
||||||
if($l)
|
|
||||||
$mimetype[] = $l;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} /* }}} */
|
|
||||||
|
|
||||||
/* Creation date {{{
|
|
||||||
$createstartts = null;
|
|
||||||
$createstartdate = null;
|
|
||||||
$createendts = null;
|
|
||||||
$createenddate = null;
|
|
||||||
$created = [];
|
|
||||||
if(!empty($_GET["created"]["from"])) {
|
|
||||||
$createstartts = makeTsFromDate($_GET["created"]["from"]);
|
|
||||||
$createstartdate = array('year'=>(int)date('Y', $createstartts), 'month'=>(int)date('m', $createstartts), 'day'=>(int)date('d', $createstartts), 'hour'=>0, 'minute'=>0, 'second'=>0);
|
|
||||||
if (!checkdate($createstartdate['month'], $createstartdate['day'], $createstartdate['year'])) {
|
|
||||||
UI::exitError(getMLText("search"),getMLText("invalid_create_date_end"));
|
|
||||||
}
|
|
||||||
$created['from'] = $createstartts;
|
|
||||||
}
|
|
||||||
if(!empty($_GET["created"]["to"])) {
|
|
||||||
$createendts = makeTsFromDate($_GET["created"]["to"]);
|
|
||||||
$createenddate = array('year'=>(int)date('Y', $createendts), 'month'=>(int)date('m', $createendts), 'day'=>(int)date('d', $createendts), 'hour'=>23, 'minute'=>59, 'second'=>59);
|
|
||||||
if (!checkdate($createenddate['month'], $createenddate['day'], $createenddate['year'])) {
|
|
||||||
UI::exitError(getMLText("search"),getMLText("invalid_create_date_end"));
|
|
||||||
}
|
|
||||||
$created['to'] = $createendts;
|
|
||||||
}
|
|
||||||
}}} */
|
|
||||||
|
|
||||||
// status
|
|
||||||
if(isset($_GET['status']))
|
|
||||||
$status = $_GET['status'];
|
|
||||||
else
|
|
||||||
$status = array();
|
|
||||||
|
|
||||||
// record_type
|
// record_type
|
||||||
if(isset($_GET['record_type']))
|
if(isset($get['record_type']))
|
||||||
$record_type = $_GET['record_type'];
|
$record_type = $get['record_type'];
|
||||||
else
|
else
|
||||||
$record_type = array();
|
$record_type = array();
|
||||||
|
|
||||||
if (isset($_GET["attributes"]))
|
if (isset($get["attributes"]))
|
||||||
$attributes = $_GET["attributes"];
|
$attributes = $get["attributes"];
|
||||||
else
|
else
|
||||||
$attributes = array();
|
$attributes = array();
|
||||||
|
|
||||||
|
@ -340,8 +314,8 @@ if($fullsearch) {
|
||||||
// Check to see if the search has been restricted to a particular sub-tree in
|
// Check to see if the search has been restricted to a particular sub-tree in
|
||||||
// the folder hierarchy.
|
// the folder hierarchy.
|
||||||
$startFolder = null;
|
$startFolder = null;
|
||||||
if (isset($_GET["folderfullsearchid"]) && is_numeric($_GET["folderfullsearchid"]) && $_GET["folderfullsearchid"]>0) {
|
if (isset($get["folderfullsearchid"]) && is_numeric($get["folderfullsearchid"]) && $get["folderfullsearchid"]>0) {
|
||||||
$targetid = $_GET["folderfullsearchid"];
|
$targetid = $get["folderfullsearchid"];
|
||||||
$startFolder = $dms->getFolder($targetid);
|
$startFolder = $dms->getFolder($targetid);
|
||||||
if (!is_object($startFolder)) {
|
if (!is_object($startFolder)) {
|
||||||
UI::exitError(getMLText("search"),getMLText("invalid_folder_id"));
|
UI::exitError(getMLText("search"),getMLText("invalid_folder_id"));
|
||||||
|
@ -350,7 +324,6 @@ if($fullsearch) {
|
||||||
|
|
||||||
$rootFolder = $dms->getFolder($settings->_rootFolderID);
|
$rootFolder = $dms->getFolder($settings->_rootFolderID);
|
||||||
|
|
||||||
$startTime = getTime();
|
|
||||||
if($settings->_fullSearchEngine == 'lucene') {
|
if($settings->_fullSearchEngine == 'lucene') {
|
||||||
Zend_Search_Lucene_Search_QueryParser::setDefaultEncoding('utf-8');
|
Zend_Search_Lucene_Search_QueryParser::setDefaultEncoding('utf-8');
|
||||||
}
|
}
|
||||||
|
@ -358,6 +331,7 @@ if($fullsearch) {
|
||||||
if(strlen($query) < 4 && strpos($query, '*')) {
|
if(strlen($query) < 4 && strpos($query, '*')) {
|
||||||
$session->setSplashMsg(array('type'=>'error', 'msg'=>getMLText('splash_invalid_searchterm')));
|
$session->setSplashMsg(array('type'=>'error', 'msg'=>getMLText('splash_invalid_searchterm')));
|
||||||
$dcount = 0;
|
$dcount = 0;
|
||||||
|
$fcount = 0;
|
||||||
$totalPages = 0;
|
$totalPages = 0;
|
||||||
$entries = array();
|
$entries = array();
|
||||||
$searchTime = 0;
|
$searchTime = 0;
|
||||||
|
@ -367,13 +341,30 @@ if($fullsearch) {
|
||||||
$total = 0;
|
$total = 0;
|
||||||
$index = $fulltextservice->Indexer();
|
$index = $fulltextservice->Indexer();
|
||||||
if($index) {
|
if($index) {
|
||||||
if(!empty($settings->_suggestTerms) && !empty($_GET['query'])) {
|
if(!empty($settings->_suggestTerms) && !empty($get['query'])) {
|
||||||
$st = preg_split("/[\s,]+/", trim($_GET['query']));
|
$st = preg_split("/[\s,]+/", trim($get['query']));
|
||||||
if($lastterm = end($st))
|
if($lastterm = end($st))
|
||||||
$terms = $index->terms($lastterm, $settings->_suggestTerms);
|
$terms = $index->terms($lastterm, $settings->_suggestTerms);
|
||||||
}
|
}
|
||||||
$lucenesearch = $fulltextservice->Search();
|
$lucenesearch = $fulltextservice->Search();
|
||||||
$searchresult = $lucenesearch->search($query, array('record_type'=>$record_type, 'owner'=>$ownernames, 'status'=>$status, 'category'=>$categorynames, 'user'=>$user->isAdmin() ? [] : [$user->getLogin()], 'mimetype'=>$mimetype, 'startFolder'=>$startFolder, 'rootFolder'=>$rootFolder, 'created_start'=>$createstartts, 'created_end'=>$createendts, 'modified_start'=>$modifystartts, 'modified_end'=>$modifyendts, 'filesize_start'=>$filesizestart, 'filesize_end'=>$filesizeend, 'attributes'=>$attributes), ($pageNumber == 'all' ? array() : array('limit'=>$limit, 'offset'=>$limit * ($pageNumber-1))), $order);
|
$searchresult = $lucenesearch->search($query,
|
||||||
|
array(
|
||||||
|
'record_type'=>$record_type,
|
||||||
|
'owner'=>$ownernames,
|
||||||
|
'status'=>$status,
|
||||||
|
'category'=>$categorynames,
|
||||||
|
'user'=>$user->isAdmin() ? [] : [$user->getLogin()],
|
||||||
|
'mimetype'=>$mimetype,
|
||||||
|
'startFolder'=>$startFolder,
|
||||||
|
'rootFolder'=>$rootFolder,
|
||||||
|
'created_start'=>$created['from'],
|
||||||
|
'created_end'=>$created['to'],
|
||||||
|
'modified_start'=>$modified['from'],
|
||||||
|
'modified_end'=>$modified['to'],
|
||||||
|
'filesize_start'=>$filesize['from'],
|
||||||
|
'filesize_end'=>$filesize['to'],
|
||||||
|
'attributes'=>$attributes
|
||||||
|
), ($pageNumber == 'all' ? array() : array('limit'=>$limit, 'offset'=>$limit * ($pageNumber-1))), $order);
|
||||||
if($searchresult === false) {
|
if($searchresult === false) {
|
||||||
$session->setSplashMsg(array('type'=>'error', 'msg'=>getMLText('splash_invalid_searchterm')));
|
$session->setSplashMsg(array('type'=>'error', 'msg'=>getMLText('splash_invalid_searchterm')));
|
||||||
$dcount = 0;
|
$dcount = 0;
|
||||||
|
@ -441,29 +432,23 @@ if($fullsearch) {
|
||||||
// }}}
|
// }}}
|
||||||
} else {
|
} else {
|
||||||
// Search in Database {{{
|
// Search in Database {{{
|
||||||
if (isset($_GET["query"]) && is_string($_GET["query"])) {
|
|
||||||
$query = $_GET["query"];
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
$query = "";
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Select if only documents (0x01), only folders (0x02) or both (0x03)
|
/* Select if only documents (0x01), only folders (0x02) or both (0x03)
|
||||||
* are found
|
* are found
|
||||||
*/
|
*/
|
||||||
$resultmode = 0x03;
|
$resultmode = 0x03;
|
||||||
if (isset($_GET["resultmode"]) && is_numeric($_GET["resultmode"])) {
|
if (isset($get["resultmode"]) && is_numeric($get["resultmode"])) {
|
||||||
$resultmode = $_GET['resultmode'];
|
$resultmode = $get['resultmode'];
|
||||||
}
|
}
|
||||||
|
|
||||||
$mode = "AND";
|
$mode = "AND";
|
||||||
if (isset($_GET["mode"]) && is_numeric($_GET["mode"]) && $_GET["mode"]==0) {
|
if (isset($get["mode"]) && is_numeric($get["mode"]) && $get["mode"]==0) {
|
||||||
$mode = "OR";
|
$mode = "OR";
|
||||||
}
|
}
|
||||||
|
|
||||||
$searchin = array();
|
$searchin = array();
|
||||||
if (isset($_GET['searchin']) && is_array($_GET["searchin"])) {
|
if (isset($get['searchin']) && is_array($get["searchin"])) {
|
||||||
foreach ($_GET["searchin"] as $si) {
|
foreach ($get["searchin"] as $si) {
|
||||||
if (isset($si) && is_numeric($si)) {
|
if (isset($si) && is_numeric($si)) {
|
||||||
switch ($si) {
|
switch ($si) {
|
||||||
case 1: // keywords
|
case 1: // keywords
|
||||||
|
@ -483,8 +468,8 @@ if($fullsearch) {
|
||||||
|
|
||||||
// Check to see if the search has been restricted to a particular sub-tree in
|
// Check to see if the search has been restricted to a particular sub-tree in
|
||||||
// the folder hierarchy.
|
// the folder hierarchy.
|
||||||
if (isset($_GET["targetid"]) && is_numeric($_GET["targetid"]) && $_GET["targetid"]>0) {
|
if (isset($get["targetid"]) && is_numeric($get["targetid"]) && $get["targetid"]>0) {
|
||||||
$targetid = $_GET["targetid"];
|
$targetid = $get["targetid"];
|
||||||
$startFolder = $dms->getFolder($targetid);
|
$startFolder = $dms->getFolder($targetid);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
@ -494,76 +479,43 @@ if($fullsearch) {
|
||||||
UI::exitError(getMLText("search"),getMLText("invalid_folder_id"));
|
UI::exitError(getMLText("search"),getMLText("invalid_folder_id"));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Check to see if the search has been restricted to a particular
|
|
||||||
/* document owner. {{{
|
|
||||||
$owner = array();
|
|
||||||
$ownerobjs = array();
|
|
||||||
if (isset($_GET["owner"])) {
|
|
||||||
$owner = $_GET['owner'];
|
|
||||||
if (!is_array($_GET['owner'])) {
|
|
||||||
if(!empty($_GET['owner']) && $o = $dms->getUser($_GET['owner'])) {
|
|
||||||
$ownerobjs[] = $o;
|
|
||||||
} else
|
|
||||||
UI::exitError(getMLText("search"),getMLText("unknown_owner"));
|
|
||||||
} else {
|
|
||||||
foreach($_GET["owner"] as $l) {
|
|
||||||
if($o = $dms->getUser($l)) {
|
|
||||||
$ownerobjs[] = $o;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} }}} */
|
|
||||||
|
|
||||||
/* Creation date {{{
|
|
||||||
$createstartdate = array();
|
|
||||||
$createenddate = array();
|
|
||||||
if(!empty($_GET["createstart"])) {
|
|
||||||
$createstartts = makeTsFromDate($_GET["createstart"]);
|
|
||||||
$createstartdate = array('year'=>(int)date('Y', $createstartts), 'month'=>(int)date('m', $createstartts), 'day'=>(int)date('d', $createstartts), 'hour'=>0, 'minute'=>0, 'second'=>0);
|
|
||||||
}
|
|
||||||
if ($createstartdate && !checkdate($createstartdate['month'], $createstartdate['day'], $createstartdate['year'])) {
|
|
||||||
UI::exitError(getMLText("search"),getMLText("invalid_create_date_end"));
|
|
||||||
}
|
|
||||||
if(!empty($_GET["createend"])) {
|
|
||||||
$createendts = makeTsFromDate($_GET["createend"]);
|
|
||||||
$createenddate = array('year'=>(int)date('Y', $createendts), 'month'=>(int)date('m', $createendts), 'day'=>(int)date('d', $createendts), 'hour'=>23, 'minute'=>59, 'second'=>59);
|
|
||||||
}
|
|
||||||
if ($createenddate && !checkdate($createenddate['month'], $createenddate['day'], $createenddate['year'])) {
|
|
||||||
UI::exitError(getMLText("search"),getMLText("invalid_create_date_end"));
|
|
||||||
}
|
|
||||||
}}} */
|
|
||||||
|
|
||||||
/* Revision date {{{ */
|
/* Revision date {{{ */
|
||||||
|
$revisionstartts = null;
|
||||||
$revisionstartdate = array();
|
$revisionstartdate = array();
|
||||||
|
$revisionendts = null;
|
||||||
$revisionenddate = array();
|
$revisionenddate = array();
|
||||||
if(!empty($_GET["revisiondatestart"])) {
|
$revised['from'] = null;
|
||||||
$revisionstartts = makeTsFromDate($_GET["revisiondatestart"]);
|
$revised['to'] = null;
|
||||||
|
if(!empty($get["revisiondatestart"])) {
|
||||||
|
$revisionstartts = makeTsFromDate($get["revisiondatestart"]);
|
||||||
$revisionstartdate = array('year'=>(int)date('Y', $revisionstartts), 'month'=>(int)date('m', $revisionstartts), 'day'=>(int)date('d', $revisionstartts), 'hour'=>0, 'minute'=>0, 'second'=>0);
|
$revisionstartdate = array('year'=>(int)date('Y', $revisionstartts), 'month'=>(int)date('m', $revisionstartts), 'day'=>(int)date('d', $revisionstartts), 'hour'=>0, 'minute'=>0, 'second'=>0);
|
||||||
if (!checkdate($revisionstartdate['month'], $revisionstartdate['day'], $revisionstartdate['year'])) {
|
if (!checkdate($revisionstartdate['month'], $revisionstartdate['day'], $revisionstartdate['year'])) {
|
||||||
UI::exitError(getMLText("search"),getMLText("invalid_revision_date_start"));
|
UI::exitError(getMLText("search"),getMLText("invalid_revision_date_start"));
|
||||||
}
|
}
|
||||||
|
$revised['from'] = $revisionstartts;
|
||||||
}
|
}
|
||||||
if(!empty($_GET["revisiondateend"])) {
|
if(!empty($get["revisiondateend"])) {
|
||||||
$revisionendts = makeTsFromDate($_GET["revisiondateend"]);
|
$revisionendts = makeTsFromDate($get["revisiondateend"]);
|
||||||
$revisionenddate = array('year'=>(int)date('Y', $revisionendts), 'month'=>(int)date('m', $revisionendts), 'day'=>(int)date('d', $revisionendts), 'hour'=>23, 'minute'=>59, 'second'=>59);
|
$revisionenddate = array('year'=>(int)date('Y', $revisionendts), 'month'=>(int)date('m', $revisionendts), 'day'=>(int)date('d', $revisionendts), 'hour'=>23, 'minute'=>59, 'second'=>59);
|
||||||
if (!checkdate($revisionenddate['month'], $revisionenddate['day'], $revisionenddate['year'])) {
|
if (!checkdate($revisionenddate['month'], $revisionenddate['day'], $revisionenddate['year'])) {
|
||||||
UI::exitError(getMLText("search"),getMLText("invalid_revision_date_end"));
|
UI::exitError(getMLText("search"),getMLText("invalid_revision_date_end"));
|
||||||
}
|
}
|
||||||
|
$revised['to'] = $revisionendts;
|
||||||
}
|
}
|
||||||
/* }}} */
|
/* }}} */
|
||||||
|
|
||||||
/* Status date {{{ */
|
/* Status date {{{ */
|
||||||
$statusstartdate = array();
|
$statusstartdate = array();
|
||||||
$statusenddate = array();
|
$statusenddate = array();
|
||||||
if(!empty($_GET["statusdatestart"])) {
|
if(!empty($get["statusdatestart"])) {
|
||||||
$statusstartts = makeTsFromDate($_GET["statusdatestart"]);
|
$statusstartts = makeTsFromDate($get["statusdatestart"]);
|
||||||
$statusstartdate = array('year'=>(int)date('Y', $statusstartts), 'month'=>(int)date('m', $statusstartts), 'day'=>(int)date('d', $statusstartts), 'hour'=>0, 'minute'=>0, 'second'=>0);
|
$statusstartdate = array('year'=>(int)date('Y', $statusstartts), 'month'=>(int)date('m', $statusstartts), 'day'=>(int)date('d', $statusstartts), 'hour'=>0, 'minute'=>0, 'second'=>0);
|
||||||
}
|
}
|
||||||
if ($statusstartdate && !checkdate($statusstartdate['month'], $statusstartdate['day'], $statusstartdate['year'])) {
|
if ($statusstartdate && !checkdate($statusstartdate['month'], $statusstartdate['day'], $statusstartdate['year'])) {
|
||||||
UI::exitError(getMLText("search"),getMLText("invalid_status_date_start"));
|
UI::exitError(getMLText("search"),getMLText("invalid_status_date_start"));
|
||||||
}
|
}
|
||||||
if(!empty($_GET["statusdateend"])) {
|
if(!empty($get["statusdateend"])) {
|
||||||
$statusendts = makeTsFromDate($_GET["statusdateend"]);
|
$statusendts = makeTsFromDate($get["statusdateend"]);
|
||||||
$statusenddate = array('year'=>(int)date('Y', $statusendts), 'month'=>(int)date('m', $statusendts), 'day'=>(int)date('d', $statusendts), 'hour'=>23, 'minute'=>59, 'second'=>59);
|
$statusenddate = array('year'=>(int)date('Y', $statusendts), 'month'=>(int)date('m', $statusendts), 'day'=>(int)date('d', $statusendts), 'hour'=>23, 'minute'=>59, 'second'=>59);
|
||||||
}
|
}
|
||||||
if ($statusenddate && !checkdate($statusenddate['month'], $statusenddate['day'], $statusenddate['year'])) {
|
if ($statusenddate && !checkdate($statusenddate['month'], $statusenddate['day'], $statusenddate['year'])) {
|
||||||
|
@ -574,15 +526,15 @@ if($fullsearch) {
|
||||||
/* Expiration date {{{ */
|
/* Expiration date {{{ */
|
||||||
$expstartdate = array();
|
$expstartdate = array();
|
||||||
$expenddate = array();
|
$expenddate = array();
|
||||||
if(!empty($_GET["expirationstart"])) {
|
if(!empty($get["expirationstart"])) {
|
||||||
$expstartts = makeTsFromDate($_GET["expirationstart"]);
|
$expstartts = makeTsFromDate($get["expirationstart"]);
|
||||||
$expstartdate = array('year'=>(int)date('Y', $expstartts), 'month'=>(int)date('m', $expstartts), 'day'=>(int)date('d', $expstartts), 'hour'=>0, 'minute'=>0, 'second'=>0);
|
$expstartdate = array('year'=>(int)date('Y', $expstartts), 'month'=>(int)date('m', $expstartts), 'day'=>(int)date('d', $expstartts), 'hour'=>0, 'minute'=>0, 'second'=>0);
|
||||||
if (!checkdate($expstartdate['month'], $expstartdate['day'], $expstartdate['year'])) {
|
if (!checkdate($expstartdate['month'], $expstartdate['day'], $expstartdate['year'])) {
|
||||||
UI::exitError(getMLText("search"),getMLText("invalid_expiration_date_start"));
|
UI::exitError(getMLText("search"),getMLText("invalid_expiration_date_start"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(!empty($_GET["expirationend"])) {
|
if(!empty($get["expirationend"])) {
|
||||||
$expendts = makeTsFromDate($_GET["expirationend"]);
|
$expendts = makeTsFromDate($get["expirationend"]);
|
||||||
$expenddate = array('year'=>(int)date('Y', $expendts), 'month'=>(int)date('m', $expendts), 'day'=>(int)date('d', $expendts), 'hour'=>23, 'minute'=>59, 'second'=>59);
|
$expenddate = array('year'=>(int)date('Y', $expendts), 'month'=>(int)date('m', $expendts), 'day'=>(int)date('d', $expendts), 'hour'=>23, 'minute'=>59, 'second'=>59);
|
||||||
if (!checkdate($expenddate['month'], $expenddate['day'], $expenddate['year'])) {
|
if (!checkdate($expenddate['month'], $expenddate['day'], $expenddate['year'])) {
|
||||||
UI::exitError(getMLText("search"),getMLText("invalid_expiration_date_end"));
|
UI::exitError(getMLText("search"),getMLText("invalid_expiration_date_end"));
|
||||||
|
@ -590,45 +542,9 @@ if($fullsearch) {
|
||||||
}
|
}
|
||||||
/* }}} */
|
/* }}} */
|
||||||
|
|
||||||
// status
|
|
||||||
$status = isset($_GET['status']) ? $_GET['status'] : array();
|
|
||||||
/*
|
|
||||||
$status = array();
|
|
||||||
if (isset($_GET["draft"])){
|
|
||||||
$status[] = S_DRAFT;
|
|
||||||
}
|
|
||||||
if (isset($_GET["pendingReview"])){
|
|
||||||
$status[] = S_DRAFT_REV;
|
|
||||||
}
|
|
||||||
if (isset($_GET["pendingApproval"])){
|
|
||||||
$status[] = S_DRAFT_APP;
|
|
||||||
}
|
|
||||||
if (isset($_GET["inWorkflow"])){
|
|
||||||
$status[] = S_IN_WORKFLOW;
|
|
||||||
}
|
|
||||||
if (isset($_GET["released"])){
|
|
||||||
$status[] = S_RELEASED;
|
|
||||||
}
|
|
||||||
if (isset($_GET["rejected"])){
|
|
||||||
$status[] = S_REJECTED;
|
|
||||||
}
|
|
||||||
if (isset($_GET["inrevision"])){
|
|
||||||
$status[] = S_IN_REVISION;
|
|
||||||
}
|
|
||||||
if (isset($_GET["obsolete"])){
|
|
||||||
$status[] = S_OBSOLETE;
|
|
||||||
}
|
|
||||||
if (isset($_GET["expired"])){
|
|
||||||
$status[] = S_EXPIRED;
|
|
||||||
}
|
|
||||||
if (isset($_GET["needs_correction"])){
|
|
||||||
$status[] = S_NEEDS_CORRECTION;
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
$reception = array();
|
$reception = array();
|
||||||
if (isset($_GET["reception"])){
|
if (isset($get["reception"])){
|
||||||
$reception = $_GET["reception"];
|
$reception = $get["reception"];
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Do not search for folders if result shall be filtered by status.
|
/* Do not search for folders if result shall be filtered by status.
|
||||||
|
@ -640,8 +556,8 @@ if($fullsearch) {
|
||||||
// if($status)
|
// if($status)
|
||||||
// $resultmode = 0x01;
|
// $resultmode = 0x01;
|
||||||
|
|
||||||
if (isset($_GET["attributes"]))
|
if (isset($get["attributes"]))
|
||||||
$attributes = $_GET["attributes"];
|
$attributes = $get["attributes"];
|
||||||
else
|
else
|
||||||
$attributes = array();
|
$attributes = array();
|
||||||
|
|
||||||
|
@ -661,38 +577,20 @@ if($fullsearch) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
|
||||||
// Get the page number to display. If the result set contains more than
|
|
||||||
// 25 entries, it is displayed across multiple pages.
|
|
||||||
//
|
|
||||||
// This requires that a page number variable be used to track which page the
|
|
||||||
// user is interested in, and an extra clause on the select statement.
|
|
||||||
//
|
|
||||||
// Default page to display is always one.
|
|
||||||
$pageNumber=1;
|
|
||||||
// $limit = 15;
|
|
||||||
if (isset($_GET["pg"])) {
|
|
||||||
if (is_numeric($_GET["pg"]) && $_GET["pg"]>0) {
|
|
||||||
$pageNumber = (int) $_GET["pg"];
|
|
||||||
}
|
|
||||||
elseif (!strcasecmp($_GET["pg"], "all")) {
|
|
||||||
$pageNumber = "all";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// ---------------- Start searching -----------------------------------------
|
// ---------------- Start searching -----------------------------------------
|
||||||
$startTime = getTime();
|
$startTime = getTime();
|
||||||
$resArr = $dms->search(array(
|
$resArr = $dms->search(array(
|
||||||
'query'=>$query,
|
'query'=>$query,
|
||||||
'limit'=>0,
|
'limit'=>0,
|
||||||
'offset'=>0 /*$limit, ($pageNumber-1)*$limit*/,
|
'offset'=>0,
|
||||||
'logicalmode'=>$mode,
|
'logicalmode'=>$mode,
|
||||||
'searchin'=>$searchin,
|
'searchin'=>$searchin,
|
||||||
'startFolder'=>$startFolder,
|
'startFolder'=>$startFolder,
|
||||||
'owner'=>$ownerobjs,
|
'owner'=>$ownerobjs,
|
||||||
'status'=>$status,
|
'status'=>$status,
|
||||||
'creationstartdate'=>$created['from'], //$createstartdate ? $createstartdate : array(),
|
'mimetype'=>$mimetype,
|
||||||
'creationenddate'=>$created['to'], //$createenddate ? $createenddate : array(),
|
'creationstartdate'=>$created['from'],
|
||||||
|
'creationenddate'=>$created['to'],
|
||||||
'modificationstartdate'=>$modified['from'],
|
'modificationstartdate'=>$modified['from'],
|
||||||
'modificationenddate'=>$modified['to'],
|
'modificationenddate'=>$modified['to'],
|
||||||
'filesizestart'=>$filesize['from'],
|
'filesizestart'=>$filesize['from'],
|
||||||
|
@ -715,7 +613,7 @@ if($fullsearch) {
|
||||||
|
|
||||||
$entries = array();
|
$entries = array();
|
||||||
$fcount = 0;
|
$fcount = 0;
|
||||||
// if(!isset($_GET['action']) || $_GET['action'] != 'export') {
|
// if(!isset($get['action']) || $get['action'] != 'export') {
|
||||||
if($resArr['folders']) {
|
if($resArr['folders']) {
|
||||||
foreach ($resArr['folders'] as $entry) {
|
foreach ($resArr['folders'] as $entry) {
|
||||||
if ($entry->getAccessMode($user) >= M_READ) {
|
if ($entry->getAccessMode($user) >= M_READ) {
|
||||||
|
@ -738,7 +636,7 @@ if($fullsearch) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$totalPages = 1;
|
$totalPages = 1;
|
||||||
if ((!isset($_GET['action']) || $_GET['action'] != 'export') /*&& (!isset($_GET["pg"]) || strcasecmp($_GET["pg"], "all"))*/) {
|
if ((!isset($get['action']) || $get['action'] != 'export') /*&& (!isset($get["pg"]) || strcasecmp($get["pg"], "all"))*/) {
|
||||||
$totalPages = (int) (count($entries)/$limit);
|
$totalPages = (int) (count($entries)/$limit);
|
||||||
if(count($entries)%$limit)
|
if(count($entries)%$limit)
|
||||||
$totalPages++;
|
$totalPages++;
|
||||||
|
@ -772,7 +670,8 @@ if($settings->_showSingleSearchHit && count($entries) == 1) {
|
||||||
$view->setParam('accessobject', $accessop);
|
$view->setParam('accessobject', $accessop);
|
||||||
$view->setParam('query', $query);
|
$view->setParam('query', $query);
|
||||||
$view->setParam('includecontent', $includecontent);
|
$view->setParam('includecontent', $includecontent);
|
||||||
$view->setParam('marks', isset($_GET['marks']) ? $_GET['marks'] : array());
|
$view->setParam('skipdefaultcols', $skipdefaultcols);
|
||||||
|
$view->setParam('marks', isset($get['marks']) ? $get['marks'] : array());
|
||||||
$view->setParam('newowner', $newowner);
|
$view->setParam('newowner', $newowner);
|
||||||
$view->setParam('newreviewer', $newreviewer);
|
$view->setParam('newreviewer', $newreviewer);
|
||||||
$view->setParam('newapprover', $newapprover);
|
$view->setParam('newapprover', $newapprover);
|
||||||
|
@ -784,7 +683,7 @@ if($settings->_showSingleSearchHit && count($entries) == 1) {
|
||||||
$view->setParam('pagenumber', $pageNumber);
|
$view->setParam('pagenumber', $pageNumber);
|
||||||
$view->setParam('limit', $limit);
|
$view->setParam('limit', $limit);
|
||||||
$view->setParam('searchtime', $searchTime);
|
$view->setParam('searchtime', $searchTime);
|
||||||
$view->setParam('urlparams', $_GET);
|
$view->setParam('urlparams', $get);
|
||||||
$view->setParam('cachedir', $settings->_cacheDir);
|
$view->setParam('cachedir', $settings->_cacheDir);
|
||||||
$view->setParam('onepage', $settings->_onePageMode); // do most navigation by reloading areas of pages with ajax
|
$view->setParam('onepage', $settings->_onePageMode); // do most navigation by reloading areas of pages with ajax
|
||||||
$view->setParam('showtree', showtree());
|
$view->setParam('showtree', showtree());
|
||||||
|
@ -797,21 +696,21 @@ if($settings->_showSingleSearchHit && count($entries) == 1) {
|
||||||
$view->setParam('facetsearch', $facetsearch);
|
$view->setParam('facetsearch', $facetsearch);
|
||||||
$view->setParam('mode', isset($mode) ? $mode : '');
|
$view->setParam('mode', isset($mode) ? $mode : '');
|
||||||
$view->setParam('orderby', isset($orderby) ? $orderby : '');
|
$view->setParam('orderby', isset($orderby) ? $orderby : '');
|
||||||
$view->setParam('defaultsearchmethod', !empty($_GET["fullsearch"]) || $settings->_defaultSearchMethod);
|
$view->setParam('defaultsearchmethod', !empty($get["fullsearch"]) || $settings->_defaultSearchMethod);
|
||||||
$view->setParam('resultmode', isset($resultmode) ? $resultmode : '');
|
$view->setParam('resultmode', isset($resultmode) ? $resultmode : '');
|
||||||
$view->setParam('searchin', isset($searchin) ? $searchin : array());
|
$view->setParam('searchin', isset($searchin) ? $searchin : array());
|
||||||
$view->setParam('startfolder', isset($startFolder) ? $startFolder : null);
|
$view->setParam('startfolder', isset($startFolder) ? $startFolder : null);
|
||||||
$view->setParam('owner', $owner);
|
$view->setParam('owner', $owner);
|
||||||
$view->setParam('createstartdate', $createstartts);
|
$view->setParam('createstartdate', $created['from']);
|
||||||
$view->setParam('createenddate', $createendts);
|
$view->setParam('createenddate', $created['to']);
|
||||||
$view->setParam('created', $created);
|
$view->setParam('created', $created);
|
||||||
$view->setParam('revisionstartdate', !empty($revisionstartdate) ? getReadableDate($revisionstartts) : '');
|
$view->setParam('revisionstartdate', !empty($revisionstartdate) ? getReadableDate($revisionstartts) : '');
|
||||||
$view->setParam('revisionenddate', !empty($revisionenddate) ? getReadableDate($revisionendts) : '');
|
$view->setParam('revisionenddate', !empty($revisionenddate) ? getReadableDate($revisionendts) : '');
|
||||||
$view->setParam('modifystartdate', $modifystartts);
|
$view->setParam('modifystartdate', $modified['from']);
|
||||||
$view->setParam('modifyenddate', $modifyendts);
|
$view->setParam('modifyenddate', $modified['to']);
|
||||||
$view->setParam('modified', $modified);
|
$view->setParam('modified', $modified);
|
||||||
$view->setParam('filesizestart', $filesizestart);
|
$view->setParam('filesizestart', $filesize['from']);
|
||||||
$view->setParam('filesizeend', $filesizeend);
|
$view->setParam('filesizeend', $filesize['to']);
|
||||||
$view->setParam('filesize', $filesize);
|
$view->setParam('filesize', $filesize);
|
||||||
$view->setParam('expstartdate', !empty($expstartdate) ? getReadableDate($expstartts) : '');
|
$view->setParam('expstartdate', !empty($expstartdate) ? getReadableDate($expstartts) : '');
|
||||||
$view->setParam('expenddate', !empty($expenddate) ? getReadableDate($expendts) : '');
|
$view->setParam('expenddate', !empty($expenddate) ? getReadableDate($expendts) : '');
|
||||||
|
@ -839,7 +738,7 @@ if($settings->_showSingleSearchHit && count($entries) == 1) {
|
||||||
$view->setParam('xsendfile', $settings->_enableXsendfile);
|
$view->setParam('xsendfile', $settings->_enableXsendfile);
|
||||||
$view->setParam('reception', $reception);
|
$view->setParam('reception', $reception);
|
||||||
$view->setParam('showsinglesearchhit', $settings->_showSingleSearchHit);
|
$view->setParam('showsinglesearchhit', $settings->_showSingleSearchHit);
|
||||||
$view($_GET);
|
$view($get);
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -42,6 +42,7 @@ if($view) {
|
||||||
$view->setParam('settings', $settings);
|
$view->setParam('settings', $settings);
|
||||||
$view->setParam('extmgr', $extMgr);
|
$view->setParam('extmgr', $extMgr);
|
||||||
$view->setParam('currenttab', (isset($_REQUEST['currenttab']) ? $_REQUEST['currenttab'] : ''));
|
$view->setParam('currenttab', (isset($_REQUEST['currenttab']) ? $_REQUEST['currenttab'] : ''));
|
||||||
|
$view->setParam('extname', (isset($_REQUEST['extensionname']) ? $_REQUEST['extensionname'] : ''));
|
||||||
$view->setParam('allusers', $users);
|
$view->setParam('allusers', $users);
|
||||||
$view->setParam('allgroups', $groups);
|
$view->setParam('allgroups', $groups);
|
||||||
$view->setParam('accessobject', $accessop);
|
$view->setParam('accessobject', $accessop);
|
||||||
|
|
|
@ -161,7 +161,11 @@ $(document).ready( function() {
|
||||||
foreach($res['docs'] as $document) {
|
foreach($res['docs'] as $document) {
|
||||||
$extracontent = array();
|
$extracontent = array();
|
||||||
$extracontent['below_title'] = $this->getListRowPath($document);
|
$extracontent['below_title'] = $this->getListRowPath($document);
|
||||||
echo $this->documentListRow($document, $previewer, false, 0, $extracontent);
|
$txt = $this->callHook('documentListItem', $document, $previewer, false, 'attributemgr', $extracontent);
|
||||||
|
if(is_string($txt))
|
||||||
|
echo $txt;
|
||||||
|
else
|
||||||
|
echo $this->documentListRow($document, $previewer, false, 0, $extracontent);
|
||||||
}
|
}
|
||||||
|
|
||||||
echo "</tbody>\n</table>\n";
|
echo "</tbody>\n</table>\n";
|
||||||
|
@ -176,10 +180,14 @@ $(document).ready( function() {
|
||||||
print "<th>".getMLText("action")."</th>\n";
|
print "<th>".getMLText("action")."</th>\n";
|
||||||
print "</tr>\n</thead>\n<tbody>\n";
|
print "</tr>\n</thead>\n<tbody>\n";
|
||||||
foreach($res['contents'] as $content) {
|
foreach($res['contents'] as $content) {
|
||||||
$doc = $content->getDocument();
|
$document = $content->getDocument();
|
||||||
$extracontent = array();
|
$extracontent = array();
|
||||||
$extracontent['below_title'] = $this->getListRowPath($doc);
|
$extracontent['below_title'] = $this->getListRowPath($doc);
|
||||||
echo $this->documentListRow($doc, $previewer, false, 0, $extracontent);
|
$txt = $this->callHook('documentListItem', $document, $previewer, false, 'attributemgr', $extracontent);
|
||||||
|
if(is_string($txt))
|
||||||
|
echo $txt;
|
||||||
|
else
|
||||||
|
echo $this->documentListRow($document, $previewer, false, 0, $extracontent);
|
||||||
}
|
}
|
||||||
print "</tbody></table>";
|
print "</tbody></table>";
|
||||||
}
|
}
|
||||||
|
|
|
@ -464,7 +464,7 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
|
||||||
echo "<li class=\"active\">";
|
echo "<li class=\"active\">";
|
||||||
else
|
else
|
||||||
echo "<li>";
|
echo "<li>";
|
||||||
echo "<a href=\"".$this->params['settings']->_httpRoot."op/op.SetLanguage.php?lang=".$currLang."&referer=".$_SERVER["REQUEST_URI"]."\">";
|
echo "<a href=\"".$this->params['settings']->_httpRoot."op/op.SetLanguage.php?lang=".$currLang."&referer=".urlencode(encryptData($this->params['settings']->_encryptionKey, $_SERVER["REQUEST_URI"]))."\">";
|
||||||
echo getMLText($currLang)."</a></li>\n";
|
echo getMLText($currLang)."</a></li>\n";
|
||||||
}
|
}
|
||||||
echo " </ul>\n";
|
echo " </ul>\n";
|
||||||
|
@ -563,7 +563,11 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
|
||||||
echo " <a class=\"dropdown-toggle\" data-toggle=\"dropdown\">".$menuitem['label']." <i class=\"fa fa-caret-down\"></i></a>\n";
|
echo " <a class=\"dropdown-toggle\" data-toggle=\"dropdown\">".$menuitem['label']." <i class=\"fa fa-caret-down\"></i></a>\n";
|
||||||
echo " <ul class=\"dropdown-menu\" role=\"menu\">\n";
|
echo " <ul class=\"dropdown-menu\" role=\"menu\">\n";
|
||||||
foreach($menuitem['children'] as $submenuitem) {
|
foreach($menuitem['children'] as $submenuitem) {
|
||||||
echo " <li><a href=\"".$submenuitem['link']."\"".(isset($submenuitem['target']) ? ' target="'.$submenuitem['target'].'"' : '').">".$submenuitem['label']."</a></li>\n";
|
echo " <li><a href=\"".$submenuitem['link']."\"".(isset($submenuitem['target']) ? ' target="'.$submenuitem['target'].'"' : '');
|
||||||
|
if(!empty($submenuitem['attributes']))
|
||||||
|
foreach($submenuitem['attributes'] as $attr)
|
||||||
|
echo ' '.$attr[0].'="'.$attr[1].'"';
|
||||||
|
echo ">".$submenuitem['label']."</a></li>\n";
|
||||||
}
|
}
|
||||||
echo " </ul>\n";
|
echo " </ul>\n";
|
||||||
} else {
|
} else {
|
||||||
|
@ -768,6 +772,7 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
|
||||||
|
|
||||||
private function folderNavigationBar($folder) { /* {{{ */
|
private function folderNavigationBar($folder) { /* {{{ */
|
||||||
$dms = $this->params['dms'];
|
$dms = $this->params['dms'];
|
||||||
|
$session = $this->params['session'];
|
||||||
$enableClipboard = $this->params['enableclipboard'];
|
$enableClipboard = $this->params['enableclipboard'];
|
||||||
$accessobject = $this->params['accessobject'];
|
$accessobject = $this->params['accessobject'];
|
||||||
if (!is_object($folder) || !$folder->isType('folder')) {
|
if (!is_object($folder) || !$folder->isType('folder')) {
|
||||||
|
@ -812,7 +817,10 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
|
||||||
$menuitems['edit_folder_notify'] = array('link'=>$this->params['settings']->_httpRoot."out/out.FolderNotify.php?folderid=". $folderID ."&showtree=". showtree(), 'label'=>getMLText('edit_folder_notify'));
|
$menuitems['edit_folder_notify'] = array('link'=>$this->params['settings']->_httpRoot."out/out.FolderNotify.php?folderid=". $folderID ."&showtree=". showtree(), 'label'=>getMLText('edit_folder_notify'));
|
||||||
}
|
}
|
||||||
if($enableClipboard) {
|
if($enableClipboard) {
|
||||||
$menuitems['add_to_clipboard'] = array('class'=>'addtoclipboard', 'attributes'=>array(['rel', 'F'.$folder->getId()], ['msg', getMLText('splash_added_to_clipboard')], ['title', getMLText("add_to_clipboard")]), 'label'=>getMLText("add_to_clipboard"));
|
if($session->isOnClipboard($folder))
|
||||||
|
$menuitems['remove_from_clipboard'] = array('class'=>'removefromclipboard', 'attributes'=>array(['rel', 'F'.$folder->getId()], ['msg', getMLText('splash_removed_from_clipboard')], ['title', getMLText("remove_from_clipboard")]), 'label'=>getMLText("remove_from_clipboard"));
|
||||||
|
else
|
||||||
|
$menuitems['add_to_clipboard'] = array('class'=>'addtoclipboard', 'attributes'=>array(['rel', 'F'.$folder->getId()], ['msg', getMLText('splash_added_to_clipboard')], ['title', getMLText("add_to_clipboard")]), 'label'=>getMLText("add_to_clipboard"));
|
||||||
}
|
}
|
||||||
if ($accessobject->check_view_access('Indexer') && $this->params['enablefullsearch']) {
|
if ($accessobject->check_view_access('Indexer') && $this->params['enablefullsearch']) {
|
||||||
$menuitems['index_folder'] = array('link'=>$this->params['settings']->_httpRoot."out/out.Indexer.php?folderid=". $folderID."&showtree=".showtree(), 'label'=>getMLText('index_folder'));
|
$menuitems['index_folder'] = array('link'=>$this->params['settings']->_httpRoot."out/out.Indexer.php?folderid=". $folderID."&showtree=".showtree(), 'label'=>getMLText('index_folder'));
|
||||||
|
@ -835,6 +843,7 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
|
|
||||||
private function documentNavigationBar($document) { /* {{{ */
|
private function documentNavigationBar($document) { /* {{{ */
|
||||||
|
$session = $this->params['session'];
|
||||||
$accessobject = $this->params['accessobject'];
|
$accessobject = $this->params['accessobject'];
|
||||||
$enableClipboard = $this->params['enableclipboard'];
|
$enableClipboard = $this->params['enableclipboard'];
|
||||||
$accessMode = $document->getAccessMode($this->params['user']);
|
$accessMode = $document->getAccessMode($this->params['user']);
|
||||||
|
@ -896,7 +905,10 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
|
||||||
$menuitems['edit_document_notify'] = array('link'=>$this->params['settings']->_httpRoot."out/out.DocumentNotify". $docid, 'label'=>getMLText('edit_document_notify'));
|
$menuitems['edit_document_notify'] = array('link'=>$this->params['settings']->_httpRoot."out/out.DocumentNotify". $docid, 'label'=>getMLText('edit_document_notify'));
|
||||||
}
|
}
|
||||||
if($enableClipboard) {
|
if($enableClipboard) {
|
||||||
$menuitems['add_to_clipboard'] = array('class'=>'addtoclipboard', 'attributes'=>array(['rel', 'D'.$document->getId()], ['msg', getMLText('splash_added_to_clipboard')], ['title', getMLText("add_to_clipboard")]), 'label'=>getMLText("add_to_clipboard"));
|
if($session->isOnClipboard($document))
|
||||||
|
$menuitems['remove_from_clipboard'] = array('class'=>'removefromclipboard', 'attributes'=>array(['rel', 'D'.$document->getId()], ['msg', getMLText('splash_removed_from_clipboard')], ['title', getMLText("remove_from_clipboard")]), 'label'=>getMLText("remove_from_clipboard"));
|
||||||
|
else
|
||||||
|
$menuitems['add_to_clipboard'] = array('class'=>'addtoclipboard', 'attributes'=>array(['rel', 'D'.$document->getId()], ['msg', getMLText('splash_added_to_clipboard')], ['title', getMLText("add_to_clipboard")]), 'label'=>getMLText("add_to_clipboard"));
|
||||||
}
|
}
|
||||||
if ($accessobject->check_view_access('TransferDocument')) {
|
if ($accessobject->check_view_access('TransferDocument')) {
|
||||||
$menuitems['transfer_document'] = array('link'=>$this->params['settings']->_httpRoot."out/out.TransferDocument". $docid, 'label'=>getMLText('transfer_document'));
|
$menuitems['transfer_document'] = array('link'=>$this->params['settings']->_httpRoot."out/out.TransferDocument". $docid, 'label'=>getMLText('transfer_document'));
|
||||||
|
@ -1623,9 +1635,9 @@ function getOverallStatusIcon($status) { /* {{{ */
|
||||||
*/
|
*/
|
||||||
function getModalBox($config) { /* {{{ */
|
function getModalBox($config) { /* {{{ */
|
||||||
$content = '
|
$content = '
|
||||||
<div class="modal modal-wide hide" id="'.$config['id'].'" tabindex="-1" role="dialog" aria-labelledby="'.$config['id'].'Label" aria-hidden="true">
|
<div class="modal modal-wide hide" id="'.$config['id'].'" tabindex="-1" role="dialog" aria-labelledby="'.$config['id'].'Label">
|
||||||
<div class="modal-header">
|
<div class="modal-header">
|
||||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
<button type="button" class="close" data-dismiss="modal">×</button>
|
||||||
<h3 id="'.$config['id'].'Label">'.$config['title'].'</h3>
|
<h3 id="'.$config['id'].'Label">'.$config['title'].'</h3>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
|
@ -1640,7 +1652,7 @@ function getOverallStatusIcon($status) { /* {{{ */
|
||||||
';
|
';
|
||||||
if($config['buttons']) {
|
if($config['buttons']) {
|
||||||
foreach($config['buttons'] as $button)
|
foreach($config['buttons'] as $button)
|
||||||
$content .= '<button class="btn'.(!empty($button['id']) ? ' btn-primary" id="'.$button['id'].'"': '" ').'data-dismiss="modal" aria-hidden="true">'.$button['title'].'</button>';
|
$content .= '<button class="btn'.(!empty($button['id']) ? ' btn-primary" id="'.$button['id'].'"': '" ').'data-dismiss="modal">'.$button['title'].'</button>';
|
||||||
}
|
}
|
||||||
$content .= '
|
$content .= '
|
||||||
</div>
|
</div>
|
||||||
|
@ -2100,6 +2112,15 @@ $(document).ready(function() {
|
||||||
echo self::getAttributeEditField($attrdef, $attribute, $fieldname, $norequire, $namepostfix, $alwaysmultiple);
|
echo self::getAttributeEditField($attrdef, $attribute, $fieldname, $norequire, $namepostfix, $alwaysmultiple);
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return html code for an input/select field of an attribute
|
||||||
|
*
|
||||||
|
* The passed attribute ($attribute) can either be an object of type
|
||||||
|
* SeedDMS_Core_Attribute, scalar or an array. A scalar or array is
|
||||||
|
* passed when the method is called to create the search form. In that
|
||||||
|
* case $attribute has the value from the post data after submitting the
|
||||||
|
* search form.
|
||||||
|
*/
|
||||||
function getAttributeEditField($attrdef, $attribute, $fieldname='attributes', $norequire=false, $namepostfix='', $alwaysmultiple=false) { /* {{{ */
|
function getAttributeEditField($attrdef, $attribute, $fieldname='attributes', $norequire=false, $namepostfix='', $alwaysmultiple=false) { /* {{{ */
|
||||||
$dms = $this->params['dms'];
|
$dms = $this->params['dms'];
|
||||||
$attr_id = $fieldname.'_'.$attrdef->getId().($namepostfix ? '_'.$namepostfix : '');
|
$attr_id = $fieldname.'_'.$attrdef->getId().($namepostfix ? '_'.$namepostfix : '');
|
||||||
|
@ -2136,10 +2157,19 @@ $(document).ready(function() {
|
||||||
$content .= $this->getDocumentChooserHtml("attr".$attrdef->getId(), M_READ, -1, $target, $attr_name);
|
$content .= $this->getDocumentChooserHtml("attr".$attrdef->getId(), M_READ, -1, $target, $attr_name);
|
||||||
break;
|
break;
|
||||||
case SeedDMS_Core_AttributeDefinition::type_user:
|
case SeedDMS_Core_AttributeDefinition::type_user:
|
||||||
$target = $attribute ? $attribute->getValueAsArray() : [];
|
|
||||||
$objvalue = [];
|
$objvalue = [];
|
||||||
foreach($target as $t)
|
if($attribute) {
|
||||||
$objvalue[] = $t->getId();
|
if(is_object($attribute)) {
|
||||||
|
$target = $attribute->getValueAsArray();
|
||||||
|
foreach($target as $t)
|
||||||
|
$objvalue[] = $t->getId();
|
||||||
|
} elseif(is_array($attribute)) {
|
||||||
|
foreach($attribute as $t)
|
||||||
|
$objvalue[] = $t;
|
||||||
|
} else {
|
||||||
|
$objvalue[] = $attribute;
|
||||||
|
}
|
||||||
|
}
|
||||||
$users = $dms->getAllUsers();
|
$users = $dms->getAllUsers();
|
||||||
if($users) {
|
if($users) {
|
||||||
$allowempty = $attrdef->getMinValues() == 0;
|
$allowempty = $attrdef->getMinValues() == 0;
|
||||||
|
@ -2159,10 +2189,19 @@ $(document).ready(function() {
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case SeedDMS_Core_AttributeDefinition::type_group:
|
case SeedDMS_Core_AttributeDefinition::type_group:
|
||||||
$target = $attribute ? $attribute->getValueAsArray() : [];
|
|
||||||
$objvalue = [];
|
$objvalue = [];
|
||||||
foreach($target as $t)
|
if($attribute) {
|
||||||
$objvalue[] = $t->getId();
|
if(is_object($attribute)) {
|
||||||
|
$target = $attribute->getValueAsArray();
|
||||||
|
foreach($target as $t)
|
||||||
|
$objvalue[] = $t->getId();
|
||||||
|
} elseif(is_array($attribute)) {
|
||||||
|
foreach($attribute as $t)
|
||||||
|
$objvalue[] = $t;
|
||||||
|
} else {
|
||||||
|
$objvalue[] = $attribute;
|
||||||
|
}
|
||||||
|
}
|
||||||
$groups = $dms->getAllGroups();
|
$groups = $dms->getAllGroups();
|
||||||
if($groups) {
|
if($groups) {
|
||||||
$allowempty = $attrdef->getMinValues() == 0;
|
$allowempty = $attrdef->getMinValues() == 0;
|
||||||
|
@ -2656,9 +2695,9 @@ $(function() {
|
||||||
*
|
*
|
||||||
* @param string text
|
* @param string text
|
||||||
*/
|
*/
|
||||||
function printInlineEdit($text, $object){ /* {{{ */
|
function printInlineEditDocumentName($text, $object){ /* {{{ */
|
||||||
if(!empty($this->params['settings']->_inlineEditing)) {
|
if(!empty($this->params['settings']->_inlineEditing)) {
|
||||||
echo "<span class=\"editable\" contenteditable=\"true\"";
|
echo "<span class=\"editdocname editable\" contenteditable=\"true\"";
|
||||||
if($object->isType('document'))
|
if($object->isType('document'))
|
||||||
echo " data-document=\"".$object->getId()."\" data-formtoken=\"".createFormKey('setdocumentname')."\"";
|
echo " data-document=\"".$object->getId()."\" data-formtoken=\"".createFormKey('setdocumentname')."\"";
|
||||||
echo ">".$text;
|
echo ">".$text;
|
||||||
|
@ -3277,6 +3316,7 @@ $('body').on('click', '[id^=\"table-row-folder\"] td:nth-child(2)', function(ev)
|
||||||
|
|
||||||
function documentListRowAction($document, $previewer, $skipcont=false, $version=0, $extracontent=array()) { /* {{{ */
|
function documentListRowAction($document, $previewer, $skipcont=false, $version=0, $extracontent=array()) { /* {{{ */
|
||||||
$user = $this->params['user'];
|
$user = $this->params['user'];
|
||||||
|
$session = $this->params['session'];
|
||||||
$enableClipboard = $this->params['enableclipboard'];
|
$enableClipboard = $this->params['enableclipboard'];
|
||||||
$accessop = $this->params['accessobject'];
|
$accessop = $this->params['accessobject'];
|
||||||
$onepage = $this->params['onepage'];
|
$onepage = $this->params['onepage'];
|
||||||
|
@ -3306,7 +3346,10 @@ $('body').on('click', '[id^=\"table-row-folder\"] td:nth-child(2)', function(ev)
|
||||||
$actions['document_access'] = $this->printAccessButton($document, true);
|
$actions['document_access'] = $this->printAccessButton($document, true);
|
||||||
}
|
}
|
||||||
if($enableClipboard) {
|
if($enableClipboard) {
|
||||||
$actions['add_to_clipboard'] = '<a class="addtoclipboard" rel="D'.$docID.'" msg="'.getMLText('splash_added_to_clipboard').'" title="'.getMLText("add_to_clipboard").'"><i class="fa fa-copy"></i></a>';
|
if($session->isOnClipboard($document))
|
||||||
|
$actions['remove_from_clipboard'] = '<a class="removefromclipboard" rel="D'.$docID.'" msg="'.getMLText('splash_removed_from_clipboard').'" title="'.getMLText("remove_from_clipboard").'"><i class="fa fa-copy"></i></a>';
|
||||||
|
else
|
||||||
|
$actions['add_to_clipboard'] = '<a class="addtoclipboard" rel="D'.$docID.'" msg="'.getMLText('splash_added_to_clipboard').'" title="'.getMLText("add_to_clipboard").'"><i class="fa fa-copy"></i></a>';
|
||||||
}
|
}
|
||||||
if($onepage)
|
if($onepage)
|
||||||
$actions['view_document'] = '<a href="'.$this->params['settings']->_httpRoot.'out/out.ViewDocument.php?documentid='.$docID.'" title="'.getMLText("view_document").'"><i class="fa fa-eye"></i></a>';
|
$actions['view_document'] = '<a href="'.$this->params['settings']->_httpRoot.'out/out.ViewDocument.php?documentid='.$docID.'" title="'.getMLText("view_document").'"><i class="fa fa-eye"></i></a>';
|
||||||
|
@ -3378,7 +3421,7 @@ $('body').on('click', '[id^=\"table-row-folder\"] td:nth-child(2)', function(ev)
|
||||||
$extracontent = array_merge($extracontent, $ec);
|
$extracontent = array_merge($extracontent, $ec);
|
||||||
|
|
||||||
$content .= "<td>";
|
$content .= "<td>";
|
||||||
if (file_exists($dms->contentDir . $latestContent->getPath())) {
|
if ($latestContent->exists()) {
|
||||||
$previewhtml = $this->callHook('documentListPreview', $previewer, $document, $latestContent);
|
$previewhtml = $this->callHook('documentListPreview', $previewer, $document, $latestContent);
|
||||||
if(is_string($previewhtml))
|
if(is_string($previewhtml))
|
||||||
$content .= $previewhtml;
|
$content .= $previewhtml;
|
||||||
|
@ -3512,6 +3555,7 @@ $('body').on('click', '[id^=\"table-row-folder\"] td:nth-child(2)', function(ev)
|
||||||
function folderListRowAction($subFolder, $skipcont=false, $extracontent=array()) { /* {{{ */
|
function folderListRowAction($subFolder, $skipcont=false, $extracontent=array()) { /* {{{ */
|
||||||
$dms = $this->params['dms'];
|
$dms = $this->params['dms'];
|
||||||
$user = $this->params['user'];
|
$user = $this->params['user'];
|
||||||
|
$session = $this->params['session'];
|
||||||
// $folder = $this->params['folder'];
|
// $folder = $this->params['folder'];
|
||||||
$showtree = $this->params['showtree'];
|
$showtree = $this->params['showtree'];
|
||||||
$enableRecursiveCount = $this->params['enableRecursiveCount'];
|
$enableRecursiveCount = $this->params['enableRecursiveCount'];
|
||||||
|
@ -3544,7 +3588,10 @@ $('body').on('click', '[id^=\"table-row-folder\"] td:nth-child(2)', function(ev)
|
||||||
$actions['folder_access'] = $this->printAccessButton($subFolder, true);
|
$actions['folder_access'] = $this->printAccessButton($subFolder, true);
|
||||||
}
|
}
|
||||||
if($enableClipboard) {
|
if($enableClipboard) {
|
||||||
$actions['add_to_clipboard'] = '<a class="addtoclipboard" rel="F'.$subFolder->getID().'" msg="'.getMLText('splash_added_to_clipboard').'" title="'.getMLText("add_to_clipboard").'"><i class="fa fa-copy"></i></a>';
|
if($session->isOnClipboard($subFolder))
|
||||||
|
$actions['add_to_clipboard'] = '<a class="removefromclipboard" rel="F'.$subFolder->getID().'" msg="'.getMLText('splash_removed_from_clipboard').'" title="'.getMLText("remove_from_clipboard").'"><i class="fa fa-copy"></i></a>';
|
||||||
|
else
|
||||||
|
$actions['add_to_clipboard'] = '<a class="addtoclipboard" rel="F'.$subFolder->getID().'" msg="'.getMLText('splash_added_to_clipboard').'" title="'.getMLText("add_to_clipboard").'"><i class="fa fa-copy"></i></a>';
|
||||||
}
|
}
|
||||||
if($onepage)
|
if($onepage)
|
||||||
$actions['view_folder'] = '<a href="'.$this->params['settings']->_httpRoot.'out/out.ViewFolder.php?folderid='.$subFolder->getID().'" title="'.getMLText("view_folder").'"><i class="fa fa-eye"></i></a>';
|
$actions['view_folder'] = '<a href="'.$this->params['settings']->_httpRoot.'out/out.ViewFolder.php?folderid='.$subFolder->getID().'" title="'.getMLText("view_folder").'"><i class="fa fa-eye"></i></a>';
|
||||||
|
|
|
@ -244,11 +244,49 @@ $(document).ready( function() {
|
||||||
return true;
|
return true;
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
|
|
||||||
|
protected function getSearchUrl($type, $item) {
|
||||||
|
$dms = $this->params['dms'];
|
||||||
|
$settings = $this->params['settings'];
|
||||||
|
|
||||||
|
$searchurl = null;
|
||||||
|
switch($type) {
|
||||||
|
case 'docsperuser':
|
||||||
|
case 'sizeperuser':
|
||||||
|
$searchurl = $settings->_httpRoot.'out/out.Search.php?fullsearch=0&query=&mode=1&orderby=&resultmode=1&owner%5B%5D='.$item['res'];
|
||||||
|
break;
|
||||||
|
case 'foldersperuser':
|
||||||
|
$searchurl = $settings->_httpRoot.'out/out.Search.php?fullsearch=0&query=&mode=1&orderby=&resultmode=2&owner%5B%5D='.$item['res'];
|
||||||
|
break;
|
||||||
|
case 'docspercategory':
|
||||||
|
$searchurl = $settings->_httpRoot.'out/out.Search.php?fullsearch=0&query=&mode=1&orderby=&resultmode=1&category%5B%5D='.$item['res'];
|
||||||
|
break;
|
||||||
|
case 'docsperstatus':
|
||||||
|
$searchurl = $settings->_httpRoot.'out/out.Search.php?fullsearch=0&query=&mode=1&orderby=&resultmode=1&status%5B%5D='.$item['res'];
|
||||||
|
break;
|
||||||
|
case 'docspermonth':
|
||||||
|
case 'sizepermonth':
|
||||||
|
$startmonth = $item['key'].'-01';
|
||||||
|
$endmonth = date('Y-m-t', strtotime($startmonth));
|
||||||
|
$searchurl = $settings->_httpRoot.'out/out.Search.php?fullsearch=0&query=&mode=1&orderby=&resultmode=1&created%5Bfrom%5D='.$startmonth.'&created%5Bto%5D='.$endmonth;
|
||||||
|
break;
|
||||||
|
case 'docspermimetype':
|
||||||
|
$searchurl = $settings->_httpRoot.'out/out.Search.php?fullsearch=0&query=&mode=1&orderby=&resultmode=1&mimetype%5B%5D='.urlencode($item['key']);
|
||||||
|
break;
|
||||||
|
case 'docsaccumulated':
|
||||||
|
$start = date('Y-m-d', $item['key']/1000);
|
||||||
|
$end = date('Y-m-d', $item['key']/1000 + 86400);
|
||||||
|
$searchurl = $settings->_httpRoot.'out/out.Search.php?fullsearch=0&query=&mode=1&orderby=&resultmode=1&created%5Bfrom%5D='.$start.'&created%5Bto%5D='.$end;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return $searchurl;
|
||||||
|
}
|
||||||
|
|
||||||
public function show() { /* {{{ */
|
public function show() { /* {{{ */
|
||||||
$dms = $this->params['dms'];
|
$dms = $this->params['dms'];
|
||||||
$user = $this->params['user'];
|
$user = $this->params['user'];
|
||||||
$data = $this->params['data'];
|
$data = $this->params['data'];
|
||||||
$type = $this->params['type'];
|
$type = $this->params['type'];
|
||||||
|
$quota = $this->params['quota'];
|
||||||
|
|
||||||
$this->htmlAddHeader(
|
$this->htmlAddHeader(
|
||||||
'<script type="text/javascript" src="../styles/bootstrap/flot/jquery.flot.min.js"></script>'."\n".
|
'<script type="text/javascript" src="../styles/bootstrap/flot/jquery.flot.min.js"></script>'."\n".
|
||||||
|
@ -272,7 +310,7 @@ $(document).ready( function() {
|
||||||
$this->contentContainerEnd();
|
$this->contentContainerEnd();
|
||||||
$this->columnEnd();
|
$this->columnEnd();
|
||||||
|
|
||||||
if(in_array($type, array('docspermonth', 'docsaccumulated'))) {
|
if(in_array($type, array('sizepermonth', 'docspermonth', 'docsaccumulated'))) {
|
||||||
$this->columnStart(9);
|
$this->columnStart(9);
|
||||||
} else {
|
} else {
|
||||||
$this->columnStart(6);
|
$this->columnStart(6);
|
||||||
|
@ -285,9 +323,14 @@ $(document).ready( function() {
|
||||||
$this->contentContainerEnd();
|
$this->contentContainerEnd();
|
||||||
echo "<table class=\"table table-condensed table-sm table-hover\">";
|
echo "<table class=\"table table-condensed table-sm table-hover\">";
|
||||||
echo "<tr>";
|
echo "<tr>";
|
||||||
echo "<th>".getMLText('chart_'.$type.'_title')."</th><th>".getMLText('total')."</th>";
|
echo "<th>".getMLText('chart_'.$type.'_title')."</th>";
|
||||||
if(in_array($type, array('docspermonth', 'docsaccumulated')))
|
echo "<th>".getMLText('total')."</th>";
|
||||||
|
$types = array('docspermonth', 'docsaccumulated');
|
||||||
|
if($quota)
|
||||||
|
$types[] = 'sizeperuser';
|
||||||
|
if(in_array($type, $types))
|
||||||
echo "<th></th>";
|
echo "<th></th>";
|
||||||
|
echo "<th>Search</th>";
|
||||||
echo "</tr>";
|
echo "</tr>";
|
||||||
$total = 0;
|
$total = 0;
|
||||||
switch($type) {
|
switch($type) {
|
||||||
|
@ -304,6 +347,11 @@ $(document).ready( function() {
|
||||||
echo "<td>".$item['total']."</td>";
|
echo "<td>".$item['total']."</td>";
|
||||||
if(in_array($type, array('docspermonth')))
|
if(in_array($type, array('docspermonth')))
|
||||||
echo "<td>".sprintf('%+d', $item['total']-$oldtotal)."</td>";
|
echo "<td>".sprintf('%+d', $item['total']-$oldtotal)."</td>";
|
||||||
|
$searchurl = $this->getSearchUrl($type, $item);
|
||||||
|
if($searchurl)
|
||||||
|
echo "<td><a href=\"".$searchurl."\"><i class=\"fa fa-search\"></i></a></td>";
|
||||||
|
else
|
||||||
|
echo "<td></td>";
|
||||||
echo "</tr>";
|
echo "</tr>";
|
||||||
$oldtotal = $item['total'];
|
$oldtotal = $item['total'];
|
||||||
$total += $item['total'];
|
$total += $item['total'];
|
||||||
|
@ -317,15 +365,46 @@ $(document).ready( function() {
|
||||||
echo "<td>".getReadableDate($item['key']/1000)."</td>";
|
echo "<td>".getReadableDate($item['key']/1000)."</td>";
|
||||||
echo "<td>".$item['total']."</td>";
|
echo "<td>".$item['total']."</td>";
|
||||||
echo "<td>".sprintf('%+d', $item['total']-$oldtotal)."</td>";
|
echo "<td>".sprintf('%+d', $item['total']-$oldtotal)."</td>";
|
||||||
|
$searchurl = $this->getSearchUrl($type, $item);
|
||||||
|
if($searchurl)
|
||||||
|
echo "<td><a href=\"".$searchurl."\"><i class=\"fa fa-search\"></i></a></td>";
|
||||||
|
else
|
||||||
|
echo "<td></td>";
|
||||||
echo "</tr>";
|
echo "</tr>";
|
||||||
$oldtotal = $item['total'];
|
$oldtotal = $item['total'];
|
||||||
$total += $item['total'];
|
$total += $item['total'];
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 'sizeperuser':
|
case 'sizeperuser':
|
||||||
|
foreach($data as $item) {
|
||||||
|
$currUser = $dms->getUser($item['res']);
|
||||||
|
echo "<tr><td>".htmlspecialchars($item['key'])."</td>";
|
||||||
|
echo "<td>".SeedDMS_Core_File::format_filesize((int) $item['total'])."</td>";
|
||||||
|
if($quota) {
|
||||||
|
echo "<td width=\"100\">";
|
||||||
|
$qt = $currUser->getQuota() ? $currUser->getQuota() : $quota;
|
||||||
|
echo $this->getProgressBar($currUser->getUsedDiskSpace(), $qt);
|
||||||
|
echo "</td>";
|
||||||
|
}
|
||||||
|
$searchurl = $this->getSearchUrl($type, $item);
|
||||||
|
if($searchurl)
|
||||||
|
echo "<td><a href=\"".$searchurl."\"><i class=\"fa fa-search\"></i></a></td>";
|
||||||
|
else
|
||||||
|
echo "<td></td>";
|
||||||
|
echo "</tr>";
|
||||||
|
$total += $item['total'];
|
||||||
|
}
|
||||||
|
echo "<tr><th></th><th>".SeedDMS_Core_File::format_filesize($total)."<th></tr>";
|
||||||
|
break;
|
||||||
case 'sizepermonth':
|
case 'sizepermonth':
|
||||||
foreach($data as $item) {
|
foreach($data as $item) {
|
||||||
echo "<tr><td>".htmlspecialchars($item['key'])."</td><td>".SeedDMS_Core_File::format_filesize((int) $item['total'])."</td></tr>";
|
echo "<tr><td>".htmlspecialchars($item['key'])."</td><td>".SeedDMS_Core_File::format_filesize((int) $item['total'])."</td>";
|
||||||
|
$searchurl = $this->getSearchUrl($type, $item);
|
||||||
|
if($searchurl)
|
||||||
|
echo "<td><a href=\"".$searchurl."\"><i class=\"fa fa-search\"></i></a></td>";
|
||||||
|
else
|
||||||
|
echo "<td></td>";
|
||||||
|
echo "</tr>";
|
||||||
$total += $item['total'];
|
$total += $item['total'];
|
||||||
}
|
}
|
||||||
echo "<tr><th></th><th>".SeedDMS_Core_File::format_filesize($total)."<th></tr>";
|
echo "<tr><th></th><th>".SeedDMS_Core_File::format_filesize($total)."<th></tr>";
|
||||||
|
@ -334,7 +413,7 @@ $(document).ready( function() {
|
||||||
echo "</table>";
|
echo "</table>";
|
||||||
$this->columnEnd();
|
$this->columnEnd();
|
||||||
|
|
||||||
if(!in_array($type, array('docspermonth', 'docsaccumulated'))) {
|
if(!in_array($type, array('sizepermonth', 'docspermonth', 'docsaccumulated'))) {
|
||||||
$this->columnStart(3);
|
$this->columnStart(3);
|
||||||
$this->contentHeading(getMLText('legend'));
|
$this->contentHeading(getMLText('legend'));
|
||||||
$this->contentContainerStart('', 'legend');
|
$this->contentContainerStart('', 'legend');
|
||||||
|
|
|
@ -52,12 +52,12 @@ class SeedDMS_View_Clipboard extends SeedDMS_Theme_Style {
|
||||||
$subitems = [];
|
$subitems = [];
|
||||||
foreach($clipboard['folders'] as $folderid) {
|
foreach($clipboard['folders'] as $folderid) {
|
||||||
if($folder = $this->params['dms']->getFolder($folderid)) {
|
if($folder = $this->params['dms']->getFolder($folderid)) {
|
||||||
$subitems[] = array('label'=>'<i class="fa fa-folder-o"></i> '.$folder->getName(), 'link'=>$this->params['settings']->_httpRoot."out/out.ViewFolder.php?folderid=".$folder->getID(), 'class'=>"table-row-folder droptarget", 'attributes'=>array(array('data-droptarget', "folder_".$folder->getID()), array('rel', "folder_".$folder->getID()), array('data-name', htmlspecialchars($folder->getName(), ENT_QUOTES))));
|
$subitems[] = array('label'=>'<i class="fa fa-folder-o"></i> '.htmlspecialchars($folder->getName()), 'link'=>$this->params['settings']->_httpRoot."out/out.ViewFolder.php?folderid=".$folder->getID(), 'class'=>"table-row-folder droptarget", 'attributes'=>array(array('data-droptarget', "folder_".$folder->getID()), array('rel', "folder_".$folder->getID()), array('data-name', htmlspecialchars($folder->getName(), ENT_QUOTES))));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
foreach($clipboard['docs'] as $docid) {
|
foreach($clipboard['docs'] as $docid) {
|
||||||
if($document = $this->params['dms']->getDocument($docid))
|
if($document = $this->params['dms']->getDocument($docid))
|
||||||
$subitems[] = array('label'=>'<i class="fa fa-file"></i> '.$document->getName(), 'link'=>$this->params['settings']->_httpRoot."out/out.ViewDocument.php?documentid=".$document->getID(), 'class'=>"table-row-document droptarget", 'attributes'=>array(array('data-droptarget', "document_".$document->getID()), array('rel', "document_".$document->getID()), array('formtoken', createFormKey('')), array('data-name', htmlspecialchars($document->getName(), ENT_QUOTES))));
|
$subitems[] = array('label'=>'<i class="fa fa-file"></i> '.htmlspecialchars($document->getName()), 'link'=>$this->params['settings']->_httpRoot."out/out.ViewDocument.php?documentid=".$document->getID(), 'class'=>"table-row-document droptarget", 'attributes'=>array(array('data-droptarget', "document_".$document->getID()), array('rel', "document_".$document->getID()), array('formtoken', createFormKey('')), array('data-name', htmlspecialchars($document->getName(), ENT_QUOTES))));
|
||||||
}
|
}
|
||||||
if((count($clipboard['docs']) + count($clipboard['folders'])) > 0) {
|
if((count($clipboard['docs']) + count($clipboard['folders'])) > 0) {
|
||||||
$subitems[] = array('divider'=>true);
|
$subitems[] = array('divider'=>true);
|
||||||
|
|
|
@ -353,7 +353,7 @@ class SeedDMS_View_DocumentVersionDetail extends SeedDMS_Theme_Style {
|
||||||
print "<li>".$arr[0].": ".$arr[1]."</li>\n";
|
print "<li>".$arr[0].": ".$arr[1]."</li>\n";
|
||||||
} else {
|
} else {
|
||||||
$attrdef = $attribute->getAttributeDefinition();
|
$attrdef = $attribute->getAttributeDefinition();
|
||||||
print "<li>".htmlspecialchars($attrdef->getName()).": ".htmlspecialchars(implode(', ', $attribute->getValueAsArray()))."</li>\n";
|
print "<li>".htmlspecialchars($attrdef->getName()).": ".htmlspecialchars($attribute->getValueAsString())."</li>\n";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -45,6 +45,7 @@ class SeedDMS_View_ExpiredDocuments extends SeedDMS_Theme_Style {
|
||||||
function show() { /* {{{ */
|
function show() { /* {{{ */
|
||||||
$dms = $this->params['dms'];
|
$dms = $this->params['dms'];
|
||||||
$user = $this->params['user'];
|
$user = $this->params['user'];
|
||||||
|
$settings = $this->params['settings'];
|
||||||
$orderby = $this->params['orderby'];
|
$orderby = $this->params['orderby'];
|
||||||
$orderdir = $this->params['orderdir'];
|
$orderdir = $this->params['orderdir'];
|
||||||
$conversionmgr = $this->params['conversionmgr'];
|
$conversionmgr = $this->params['conversionmgr'];
|
||||||
|
@ -56,6 +57,7 @@ class SeedDMS_View_ExpiredDocuments extends SeedDMS_Theme_Style {
|
||||||
$days = $this->params['days'];
|
$days = $this->params['days'];
|
||||||
$startts = $this->params['startts'];
|
$startts = $this->params['startts'];
|
||||||
$endts = $this->params['endts'];
|
$endts = $this->params['endts'];
|
||||||
|
$seluser = $this->params['seluser'];
|
||||||
|
|
||||||
$db = $dms->getDB();
|
$db = $dms->getDB();
|
||||||
$previewer = new SeedDMS_Preview_Previewer($cachedir, $previewwidth, $timeout, $xsendfile);
|
$previewer = new SeedDMS_Preview_Previewer($cachedir, $previewwidth, $timeout, $xsendfile);
|
||||||
|
@ -91,6 +93,21 @@ class SeedDMS_View_ExpiredDocuments extends SeedDMS_Theme_Style {
|
||||||
getMLText("enddate"),
|
getMLText("enddate"),
|
||||||
$this->getDateChooser(getReadableDate($endts), "enddate", $this->params['session']->getLanguage(), '', '')
|
$this->getDateChooser(getReadableDate($endts), "enddate", $this->params['session']->getLanguage(), '', '')
|
||||||
);
|
);
|
||||||
|
$allUsers = $dms->getAllUsers($settings->_sortUsersInList);
|
||||||
|
foreach ($allUsers as $currUser) {
|
||||||
|
if (!$currUser->isGuest())
|
||||||
|
$options[] = array($currUser->getID(), htmlspecialchars($currUser->getLogin()), $seluser && ($seluser->getId() == $currUser->getId()), array(array('data-subtitle', htmlspecialchars($currUser->getFullName()))));
|
||||||
|
}
|
||||||
|
$this->formField(
|
||||||
|
getMLText("user"),
|
||||||
|
array(
|
||||||
|
'element'=>'select',
|
||||||
|
'name'=>'seluserid',
|
||||||
|
'class'=>'chzn-select',
|
||||||
|
'options'=>$options,
|
||||||
|
'attributes'=>array(array('data-allow-clear', 'true'), array('data-placeholder', getMLText('select_user'))),
|
||||||
|
)
|
||||||
|
);
|
||||||
$this->formSubmit("<i class=\"fa fa-refresh\"></i> ".getMLText('update'));
|
$this->formSubmit("<i class=\"fa fa-refresh\"></i> ".getMLText('update'));
|
||||||
?>
|
?>
|
||||||
</form>
|
</form>
|
||||||
|
@ -99,7 +116,7 @@ class SeedDMS_View_ExpiredDocuments extends SeedDMS_Theme_Style {
|
||||||
$this->columnStart(8);
|
$this->columnStart(8);
|
||||||
|
|
||||||
if(is_numeric($days)) {
|
if(is_numeric($days)) {
|
||||||
$docs = $dms->getDocumentsExpired($days, null, $orderby, $orderdir, true);
|
$docs = $dms->getDocumentsExpired($days, $seluser, $orderby, $orderdir, true);
|
||||||
$this->contentHeading(''.$days);
|
$this->contentHeading(''.$days);
|
||||||
} else {
|
} else {
|
||||||
$d = [];
|
$d = [];
|
||||||
|
@ -107,7 +124,7 @@ class SeedDMS_View_ExpiredDocuments extends SeedDMS_Theme_Style {
|
||||||
$d['start'] = $startts;
|
$d['start'] = $startts;
|
||||||
if($endts)
|
if($endts)
|
||||||
$d['end'] = $endts+86400;
|
$d['end'] = $endts+86400;
|
||||||
$docs = $dms->getDocumentsExpired($d, null, $orderby, $orderdir, true);
|
$docs = $dms->getDocumentsExpired($d, $seluser, $orderby, $orderdir, true);
|
||||||
$this->contentHeading(getReadableDate($startts)." - ".getReadableDate($endts));
|
$this->contentHeading(getReadableDate($startts)." - ".getReadableDate($endts));
|
||||||
}
|
}
|
||||||
if($docs) {
|
if($docs) {
|
||||||
|
@ -137,4 +154,3 @@ class SeedDMS_View_ExpiredDocuments extends SeedDMS_Theme_Style {
|
||||||
$this->htmlEndPage();
|
$this->htmlEndPage();
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
}
|
}
|
||||||
?>
|
|
||||||
|
|
|
@ -55,6 +55,25 @@ class SeedDMS_View_ExtensionMgr extends SeedDMS_Theme_Style {
|
||||||
});
|
});
|
||||||
*/
|
*/
|
||||||
});
|
});
|
||||||
|
$('body').on('click', '#btn_save_config', function(ev){
|
||||||
|
var element = $(this);
|
||||||
|
ev.preventDefault();
|
||||||
|
$.ajax({url: '../op/op.Settings.php',
|
||||||
|
type: 'POST',
|
||||||
|
dataType: "json",
|
||||||
|
data: data = $('#formconfig').serializeArray(),
|
||||||
|
success: function(data) {
|
||||||
|
noty({
|
||||||
|
text: data.msg,
|
||||||
|
type: (data.error) ? 'error' : 'success',
|
||||||
|
dismissQueue: true,
|
||||||
|
layout: 'topRight',
|
||||||
|
theme: 'defaultTheme',
|
||||||
|
timeout: 1500,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
$('body').on('click', 'a.toggle', function(ev){
|
$('body').on('click', 'a.toggle', function(ev){
|
||||||
// $('a.toggle').click(function(ev){
|
// $('a.toggle').click(function(ev){
|
||||||
var element = $(this);
|
var element = $(this);
|
||||||
|
@ -247,8 +266,10 @@ class SeedDMS_View_ExtensionMgr extends SeedDMS_Theme_Style {
|
||||||
if(!empty($extconf['changelog']) && file_exists($extdir."/".$extname."/".$extconf['changelog'])) {
|
if(!empty($extconf['changelog']) && file_exists($extdir."/".$extname."/".$extconf['changelog'])) {
|
||||||
echo $this->getModalBoxLink(array('target'=>'extensionChangelog', 'remote'=>'out.ExtensionMgr.php?action=changelog&extensionname='.$extname, 'class'=>'', 'title'=>'<i class="fa fa-reorder"></i>', 'attributes'=>array('title'=>getMLText('show_extension_changelog'))));
|
echo $this->getModalBoxLink(array('target'=>'extensionChangelog', 'remote'=>'out.ExtensionMgr.php?action=changelog&extensionname='.$extname, 'class'=>'', 'title'=>'<i class="fa fa-reorder"></i>', 'attributes'=>array('title'=>getMLText('show_extension_changelog'))));
|
||||||
}
|
}
|
||||||
if($extconf['config'])
|
if($extconf['config']) {
|
||||||
echo "<a href=\"../out/out.Settings.php?currenttab=extensions#".$extname."\" title=\"".getMLText('configure_extension')."\"><i class=\"fa fa-cogs\"></i></a>";
|
// echo "<a href=\"../out/out.Settings.php?currenttab=extensions#".$extname."\" title=\"".getMLText('configure_extension')."\"><i class=\"fa fa-cogs\"></i></a>";
|
||||||
|
echo $this->getModalBoxLink(array('target'=>'extensionConfig', 'remote'=>'out.Settings.php?action=extension&extensionname='.$extname, 'class'=>'', 'title'=>'<i class="fa fa-cogs"></i>', 'attributes'=>array('title'=>getMLText('show_extension_changelog'), 'data-modal-title'=>'<i class=\'fa fa-circle'.(isset($settings->_extensions[$extname]["__disable__"]) && $settings->_extensions[$extname]["__disable__"] ? ' disabled' : ' enabled').'\'></i> '.$extconf['title'])));
|
||||||
|
}
|
||||||
if($settings->_enableExtensionDownload)
|
if($settings->_enableExtensionDownload)
|
||||||
echo "<form style=\"display: inline-block; margin: 0px;\" method=\"post\" action=\"../op/op.ExtensionMgr.php\" id=\"".$extname."-download\">".createHiddenFieldWithKey('extensionmgr')."<input type=\"hidden\" name=\"action\" value=\"download\" /><input type=\"hidden\" name=\"extname\" value=\"".$extname."\" /><a class=\"download\" data-extname=\"".$extname."\" title=\"".getMLText('download_extension')."\"><i class=\"fa fa-download\"></i></a></form>";
|
echo "<form style=\"display: inline-block; margin: 0px;\" method=\"post\" action=\"../op/op.ExtensionMgr.php\" id=\"".$extname."-download\">".createHiddenFieldWithKey('extensionmgr')."<input type=\"hidden\" name=\"action\" value=\"download\" /><input type=\"hidden\" name=\"extname\" value=\"".$extname."\" /><a class=\"download\" data-extname=\"".$extname."\" title=\"".getMLText('download_extension')."\"><i class=\"fa fa-download\"></i></a></form>";
|
||||||
if(is_writeable($settings->_configFilePath) && $check) {
|
if(is_writeable($settings->_configFilePath) && $check) {
|
||||||
|
@ -392,6 +413,7 @@ class SeedDMS_View_ExtensionMgr extends SeedDMS_Theme_Style {
|
||||||
echo $this->getModalBox(array('id'=>'extensionInfo', 'title'=>getMLText('extension_version_list'), 'content'=>'<p>'.getMLText('extension_loading').'</p>', 'buttons'=>array(array('title'=>getMLText('close')))));
|
echo $this->getModalBox(array('id'=>'extensionInfo', 'title'=>getMLText('extension_version_list'), 'content'=>'<p>'.getMLText('extension_loading').'</p>', 'buttons'=>array(array('title'=>getMLText('close')))));
|
||||||
echo $this->getModalBox(array('id'=>'extensionChangelog', 'title'=>getMLText('extension_changelog'), 'content'=>'<p>'.getMLText('changelog_loading').'</p>', 'buttons'=>array(array('title'=>getMLText('close')))));
|
echo $this->getModalBox(array('id'=>'extensionChangelog', 'title'=>getMLText('extension_changelog'), 'content'=>'<p>'.getMLText('changelog_loading').'</p>', 'buttons'=>array(array('title'=>getMLText('close')))));
|
||||||
echo $this->getModalBox(array('id'=>'extensionReadme', 'title'=>getMLText('extension_readme'), 'content'=>'<p>'.getMLText('readme_loading').'</p>', 'buttons'=>array(array('title'=>getMLText('close')))));
|
echo $this->getModalBox(array('id'=>'extensionReadme', 'title'=>getMLText('extension_readme'), 'content'=>'<p>'.getMLText('readme_loading').'</p>', 'buttons'=>array(array('title'=>getMLText('close')))));
|
||||||
|
echo $this->getModalBox(array('id'=>'extensionConfig', 'title'=>getMLText('extension_config'), 'content'=>'<p>'.getMLText('readme_loading').'</p>', 'buttons'=>array(array('title'=>getMLText('close')), array('id'=>'btn_save_config', 'title'=>getMLText('save')))));
|
||||||
$this->contentEnd();
|
$this->contentEnd();
|
||||||
$this->htmlEndPage();
|
$this->htmlEndPage();
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
|
|
|
@ -13,11 +13,6 @@
|
||||||
* @version Release: @package_version@
|
* @version Release: @package_version@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
|
||||||
* Include parent class
|
|
||||||
*/
|
|
||||||
//require_once("class.Bootstrap.php");
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class which outputs the html page for Info view
|
* Class which outputs the html page for Info view
|
||||||
*
|
*
|
||||||
|
@ -60,17 +55,30 @@ class SeedDMS_View_Info extends SeedDMS_Theme_Style {
|
||||||
$this->rowStart();
|
$this->rowStart();
|
||||||
$this->columnStart(6);
|
$this->columnStart(6);
|
||||||
$this->contentHeading(getMLText("seeddms_info"));
|
$this->contentHeading(getMLText("seeddms_info"));
|
||||||
$seedextensions = $extmgr->getExtensionConfiguration();
|
|
||||||
echo "<table class=\"table table-condensed table-sm\">\n";
|
echo "<table class=\"table table-condensed table-sm\">\n";
|
||||||
echo "<thead>\n<tr>\n";
|
echo "<thead>\n<tr>\n";
|
||||||
echo "<th></th>";
|
echo "<th>".getMLText("name")."</th>\n";
|
||||||
echo "<th>".getMLText("name");
|
|
||||||
echo "</th>\n";
|
|
||||||
echo "</tr>\n</thead>\n<tbody>\n";
|
echo "</tr>\n</thead>\n<tbody>\n";
|
||||||
$dbversion = $dms->getDBVersion();
|
$dbversion = $dms->getDBVersion();
|
||||||
echo "<tr><td></td><td></td><td>".getMLText('seeddms_version')."</td><td>".$version->version()."</td></tr>\n";
|
echo "<tr><td>".getMLText('seeddms_version')."</td><td>".$version->version()."</td></tr>\n";
|
||||||
if($user->isAdmin()) {
|
if($user->isAdmin()) {
|
||||||
echo "<tr><td></td><td></td><td>".getMLText('database_schema_version')."</td><td>".$dbversion['major'].".".$dbversion['minor'].".".$dbversion['subminor']."</td></tr>\n";
|
$storage = $dms->getStorage();
|
||||||
|
echo "<tr><td>".getMLText('database_schema_version')."</td><td>".$dbversion['major'].".".$dbversion['minor'].".".$dbversion['subminor']."</td></tr>\n";
|
||||||
|
echo "<tr></td><td>".getMLText('storage')."</td><td>".($storage ? $storage->info() : "legacy")."</td></tr>\n";
|
||||||
|
}
|
||||||
|
echo "</tbody>\n</table>\n";
|
||||||
|
|
||||||
|
if($user->isAdmin()) {
|
||||||
|
$this->contentHeading(getMLText("extension_info"));
|
||||||
|
echo "<table class=\"table table-condensed table-sm\">\n";
|
||||||
|
echo "<thead>\n<tr>\n";
|
||||||
|
echo "<th></th>";
|
||||||
|
echo "<th></th>";
|
||||||
|
echo "<th>".getMLText("name");
|
||||||
|
echo "<th>".getMLText("version")."</th>\n";
|
||||||
|
echo "</th>\n";
|
||||||
|
echo "</tr>\n</thead>\n<tbody>\n";
|
||||||
|
$seedextensions = $extmgr->getExtensionConfiguration();
|
||||||
foreach($seedextensions as $extname=>$extconf) {
|
foreach($seedextensions as $extname=>$extconf) {
|
||||||
echo "<tr><td>";
|
echo "<tr><td>";
|
||||||
if(!$settings->extensionIsDisabled($extname))
|
if(!$settings->extensionIsDisabled($extname))
|
||||||
|
@ -85,8 +93,8 @@ class SeedDMS_View_Info extends SeedDMS_Theme_Style {
|
||||||
echo "<td>".$extname."<br />".$extconf['title']."</td><td>".$extconf['version']."</td>";
|
echo "<td>".$extname."<br />".$extconf['title']."</td><td>".$extconf['version']."</td>";
|
||||||
echo "</tr>\n";
|
echo "</tr>\n";
|
||||||
}
|
}
|
||||||
|
echo "</tbody>\n</table>\n";
|
||||||
}
|
}
|
||||||
echo "</tbody>\n</table>\n";
|
|
||||||
$this->columnEnd();
|
$this->columnEnd();
|
||||||
$this->columnStart(6);
|
$this->columnStart(6);
|
||||||
if($user->isAdmin()) {
|
if($user->isAdmin()) {
|
||||||
|
@ -98,6 +106,7 @@ class SeedDMS_View_Info extends SeedDMS_Theme_Style {
|
||||||
echo "</tr>\n</thead>\n<tbody>\n";
|
echo "</tr>\n</thead>\n<tbody>\n";
|
||||||
echo "<tr><td>PHP</td><td>".phpversion()."</td></tr>\n";
|
echo "<tr><td>PHP</td><td>".phpversion()."</td></tr>\n";
|
||||||
echo "<tr><td>Path to php.ini</td><td>".php_ini_loaded_file()."</td></tr>\n";
|
echo "<tr><td>Path to php.ini</td><td>".php_ini_loaded_file()."</td></tr>\n";
|
||||||
|
echo "<tr><td>Timezone</td><td>".date_default_timezone_get()." (Current date/time on server is ".getLongReadableDate(time()).")</td></tr>\n";
|
||||||
echo "</tbody>\n</table>\n";
|
echo "</tbody>\n</table>\n";
|
||||||
|
|
||||||
$this->contentHeading(getMLText("installed_php_extensions"));
|
$this->contentHeading(getMLText("installed_php_extensions"));
|
||||||
|
|
|
@ -57,7 +57,7 @@ $(document).ready( function() {
|
||||||
$('#export').on('click', function(ev) {
|
$('#export').on('click', function(ev) {
|
||||||
ev.preventDefault();
|
ev.preventDefault();
|
||||||
ev.stopPropagation();
|
ev.stopPropagation();
|
||||||
var url = $(this).attr('href')+'&includecontent='+($('#includecontent').prop('checked') ? '1' : '0');
|
var url = $(this).attr('href')+'&includecontent='+($('#includecontent').prop('checked') ? '1' : '0')+'&skipdefaultcols='+($('#skipdefaultcols').prop('checked') ? '1' : '0');
|
||||||
var values = {};
|
var values = {};
|
||||||
$('input[name^=\"marks\"]').each(function() {
|
$('input[name^=\"marks\"]').each(function() {
|
||||||
if(this.checked)
|
if(this.checked)
|
||||||
|
@ -225,10 +225,12 @@ $(document).ready(function() {
|
||||||
$user = $this->params['user'];
|
$user = $this->params['user'];
|
||||||
$entries = $this->params['searchhits'];
|
$entries = $this->params['searchhits'];
|
||||||
$includecontent = $this->params['includecontent'];
|
$includecontent = $this->params['includecontent'];
|
||||||
|
$skipdefaultcols = $this->params['skipdefaultcols'];
|
||||||
$marks = $this->params['marks'];
|
$marks = $this->params['marks'];
|
||||||
|
|
||||||
include("../inc/inc.ClassDownloadMgr.php");
|
include("../inc/inc.ClassDownloadMgr.php");
|
||||||
$downmgr = new SeedDMS_Download_Mgr();
|
$downmgr = new SeedDMS_Download_Mgr();
|
||||||
|
$downmgr->skipDefaultCols($skipdefaultcols);
|
||||||
if($extraheader = $this->callHook('extraDownloadHeader'))
|
if($extraheader = $this->callHook('extraDownloadHeader'))
|
||||||
$downmgr->addHeader($extraheader);
|
$downmgr->addHeader($extraheader);
|
||||||
foreach($entries as $entry) {
|
foreach($entries as $entry) {
|
||||||
|
@ -545,6 +547,12 @@ $(document).ready(function() {
|
||||||
<li class="nav-item <?php echo ($facetsearch == true && $facetsearch == true) ? 'active' : ''; ?>"><a class="nav-link <?php echo ($facetsearch == true && $facetsearch == true) ? 'active' : ''; ?>" data-target="#facetfulltext" data-toggle="tab" role="button"><?php printMLText('facetfullsearch'); ?></a></li>
|
<li class="nav-item <?php echo ($facetsearch == true && $facetsearch == true) ? 'active' : ''; ?>"><a class="nav-link <?php echo ($facetsearch == true && $facetsearch == true) ? 'active' : ''; ?>" data-target="#facetfulltext" data-toggle="tab" role="button"><?php printMLText('facetfullsearch'); ?></a></li>
|
||||||
<?php
|
<?php
|
||||||
}
|
}
|
||||||
|
$tabs = $this->callHook('extraTabs');
|
||||||
|
if($tabs) {
|
||||||
|
foreach($tabs as $tabid=>$tab) {
|
||||||
|
echo '<li class="nav-item"><a class="nav-link" data-target="#'.$tabid.'" data-toggle="tab" role="button">'.$tab['title'].'</a></li>';
|
||||||
|
}
|
||||||
|
}
|
||||||
?>
|
?>
|
||||||
</ul>
|
</ul>
|
||||||
<div class="tab-content">
|
<div class="tab-content">
|
||||||
|
@ -710,6 +718,8 @@ $(document).ready(function() {
|
||||||
$openfilterdlg = true;
|
$openfilterdlg = true;
|
||||||
if($status)
|
if($status)
|
||||||
$openfilterdlg = true;
|
$openfilterdlg = true;
|
||||||
|
if($mimetype)
|
||||||
|
$openfilterdlg = true;
|
||||||
if($modifyenddate || $modifystartdate)
|
if($modifyenddate || $modifystartdate)
|
||||||
$openfilterdlg = true;
|
$openfilterdlg = true;
|
||||||
if($revisionstartdate || $revisionenddate)
|
if($revisionstartdate || $revisionenddate)
|
||||||
|
@ -754,6 +764,7 @@ $(document).ready(function() {
|
||||||
}
|
}
|
||||||
$options[] = array(S_DRAFT_APP, getOverallStatusText(S_DRAFT_APP), in_array(S_DRAFT_APP, $status));
|
$options[] = array(S_DRAFT_APP, getOverallStatusText(S_DRAFT_APP), in_array(S_DRAFT_APP, $status));
|
||||||
$options[] = array(S_RELEASED, getOverallStatusText(S_RELEASED), in_array(S_RELEASED, $status));
|
$options[] = array(S_RELEASED, getOverallStatusText(S_RELEASED), in_array(S_RELEASED, $status));
|
||||||
|
$options[] = array(S_DRAFT, getOverallStatusText(S_DRAFT), in_array(S_DRAFT, $status));
|
||||||
$options[] = array(S_REJECTED, getOverallStatusText(S_REJECTED), in_array(S_REJECTED, $status));
|
$options[] = array(S_REJECTED, getOverallStatusText(S_REJECTED), in_array(S_REJECTED, $status));
|
||||||
$options[] = array(S_IN_REVISION, getOverallStatusText(S_IN_REVISION), in_array(S_IN_REVISION, $status));
|
$options[] = array(S_IN_REVISION, getOverallStatusText(S_IN_REVISION), in_array(S_IN_REVISION, $status));
|
||||||
$options[] = array(S_EXPIRED, getOverallStatusText(S_EXPIRED), in_array(S_EXPIRED, $status));
|
$options[] = array(S_EXPIRED, getOverallStatusText(S_EXPIRED), in_array(S_EXPIRED, $status));
|
||||||
|
@ -770,6 +781,22 @@ $(document).ready(function() {
|
||||||
'options'=>$options
|
'options'=>$options
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
$options = [];
|
||||||
|
foreach($dms->getMimeTypes() as $m) {
|
||||||
|
$options[] = array($m['mimeType'], $m['mimeType'], in_array($m['mimeType'], $mimetype)/*, array(array('data-subtitle', htmlspecialchars($m['c'].' ×')))*/);
|
||||||
|
}
|
||||||
|
$this->formField(
|
||||||
|
getMLText("mimetype"),
|
||||||
|
array(
|
||||||
|
'element'=>'select',
|
||||||
|
'class'=>'chzn-select',
|
||||||
|
'name'=>'mimetype[]',
|
||||||
|
'multiple'=>true,
|
||||||
|
'attributes'=>array(array('data-placeholder', getMLText('select_mimetype')), array('data-no_results_text', getMLText('no_mimetype'))),
|
||||||
|
'options'=>$options
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
$this->formField(
|
$this->formField(
|
||||||
getMLText("modified")." (".getMLText('from').")",
|
getMLText("modified")." (".getMLText('from').")",
|
||||||
$this->getDateChooser(!empty($modifystartdate) ? getReadableDate($modifystartdate) : null, "modified[from]", $this->params['session']->getLanguage())
|
$this->getDateChooser(!empty($modifystartdate) ? getReadableDate($modifystartdate) : null, "modified[from]", $this->params['session']->getLanguage())
|
||||||
|
@ -811,9 +838,9 @@ $(document).ready(function() {
|
||||||
} elseif(in_array($attrdef->getType(), [SeedDMS_Core_AttributeDefinition::type_int, SeedDMS_Core_AttributeDefinition::type_float]) && !$attrdef->getValueSet()) {
|
} elseif(in_array($attrdef->getType(), [SeedDMS_Core_AttributeDefinition::type_int, SeedDMS_Core_AttributeDefinition::type_float]) && !$attrdef->getValueSet()) {
|
||||||
$this->formField(htmlspecialchars($attrdef->getName().' ('.getMLText('from').')'), $this->getAttributeEditField($attrdef, !empty($attributes[$attrdef->getID()]['from']) ? $attributes[$attrdef->getID()]['from'] : '', 'attributes', true, 'from'));
|
$this->formField(htmlspecialchars($attrdef->getName().' ('.getMLText('from').')'), $this->getAttributeEditField($attrdef, !empty($attributes[$attrdef->getID()]['from']) ? $attributes[$attrdef->getID()]['from'] : '', 'attributes', true, 'from'));
|
||||||
$this->formField(htmlspecialchars($attrdef->getName().' ('.getMLText('to').')'), $this->getAttributeEditField($attrdef, !empty($attributes[$attrdef->getID()]['to']) ? $attributes[$attrdef->getID()]['to'] : '', 'attributes', true, 'to'));
|
$this->formField(htmlspecialchars($attrdef->getName().' ('.getMLText('to').')'), $this->getAttributeEditField($attrdef, !empty($attributes[$attrdef->getID()]['to']) ? $attributes[$attrdef->getID()]['to'] : '', 'attributes', true, 'to'));
|
||||||
|
} else {
|
||||||
} else
|
$this->formField(htmlspecialchars($attrdef->getName()), $this->getAttributeEditField($attrdef, isset($attributes[$attrdef->getID()]) ? $attributes[$attrdef->getID()] : '', 'attributes', true, '', false));
|
||||||
$this->formField(htmlspecialchars($attrdef->getName()), $this->getAttributeEditField($attrdef, isset($attributes[$attrdef->getID()]) ? $attributes[$attrdef->getID()] : '', 'attributes', true, '', true));
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1483,6 +1510,14 @@ $(document).ready(function() {
|
||||||
echo "</div>\n";
|
echo "</div>\n";
|
||||||
}
|
}
|
||||||
// }}}
|
// }}}
|
||||||
|
|
||||||
|
if($tabs) {
|
||||||
|
foreach($tabs as $tabid=>$tab) {
|
||||||
|
echo '<div class="tab-pane" id="'.$tabid.'" role="tabpanel">';
|
||||||
|
echo $tab['content'];
|
||||||
|
echo "</div>\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
?>
|
?>
|
||||||
</div>
|
</div>
|
||||||
<?php
|
<?php
|
||||||
|
@ -1506,6 +1541,16 @@ $(document).ready(function() {
|
||||||
'value'=>1,
|
'value'=>1,
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
$this->formField(
|
||||||
|
getMLText("skip_default_export_cols"),
|
||||||
|
array(
|
||||||
|
'element'=>'input',
|
||||||
|
'type'=>'checkbox',
|
||||||
|
'name'=>'skipdefaultcols',
|
||||||
|
'id'=>'skipdefaultcols',
|
||||||
|
'value'=>1,
|
||||||
|
)
|
||||||
|
);
|
||||||
//$this->formSubmit("<i class=\"fa fa-download\"></i> ".getMLText('export'));
|
//$this->formSubmit("<i class=\"fa fa-download\"></i> ".getMLText('export'));
|
||||||
print $this->html_link('Search', array_merge($_GET, array('action'=>'export')), array('class'=>'btn btn-primary', 'id'=>'export'), "<i class=\"fa fa-download\"></i> ".getMLText("batch_export"), false, true)."\n";
|
print $this->html_link('Search', array_merge($_GET, array('action'=>'export')), array('class'=>'btn btn-primary', 'id'=>'export'), "<i class=\"fa fa-download\"></i> ".getMLText("batch_export"), false, true)."\n";
|
||||||
$content = ob_get_clean();
|
$content = ob_get_clean();
|
||||||
|
|
|
@ -13,11 +13,6 @@
|
||||||
* @version Release: @package_version@
|
* @version Release: @package_version@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
|
||||||
* Include parent class
|
|
||||||
*/
|
|
||||||
//require_once("class.Bootstrap.php");
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class which outputs the html page for SetRevisors view
|
* Class which outputs the html page for SetRevisors view
|
||||||
*
|
*
|
||||||
|
@ -31,6 +26,26 @@
|
||||||
*/
|
*/
|
||||||
class SeedDMS_View_SetRevisors extends SeedDMS_Theme_Style {
|
class SeedDMS_View_SetRevisors extends SeedDMS_Theme_Style {
|
||||||
|
|
||||||
|
function js() { /* {{{ */
|
||||||
|
header('Content-Type: application/javascript; charset=UTF-8');
|
||||||
|
parent::jsTranslations(array('js_form_error', 'js_form_errors'));
|
||||||
|
?>
|
||||||
|
function runValidation() {
|
||||||
|
$("#form1").validate({
|
||||||
|
rules: {
|
||||||
|
startdate: {
|
||||||
|
required: true
|
||||||
|
},
|
||||||
|
},
|
||||||
|
messages: {
|
||||||
|
comment: "<?php printMLText("js_no_reviѕion_date");?>",
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
runValidation();
|
||||||
|
<?php
|
||||||
|
} /* }}} */
|
||||||
|
|
||||||
function show() { /* {{{ */
|
function show() { /* {{{ */
|
||||||
$dms = $this->params['dms'];
|
$dms = $this->params['dms'];
|
||||||
$user = $this->params['user'];
|
$user = $this->params['user'];
|
||||||
|
@ -44,6 +59,9 @@ class SeedDMS_View_SetRevisors extends SeedDMS_Theme_Style {
|
||||||
|
|
||||||
$overallStatus = $content->getStatus();
|
$overallStatus = $content->getStatus();
|
||||||
|
|
||||||
|
$this->htmlAddHeader('<script type="text/javascript" src="../views/'.$this->theme.'/vendors/jquery-validation/jquery.validate.js"></script>'."\n", 'js');
|
||||||
|
$this->htmlAddHeader('<script type="text/javascript" src="../views/'.$this->theme.'/styles/validation-default.js"></script>'."\n", 'js');
|
||||||
|
|
||||||
$this->htmlStartPage(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))));
|
$this->htmlStartPage(getMLText("document_title", array("documentname" => htmlspecialchars($document->getName()))));
|
||||||
$this->globalNavigation($folder);
|
$this->globalNavigation($folder);
|
||||||
$this->contentStart();
|
$this->contentStart();
|
||||||
|
@ -69,7 +87,7 @@ class SeedDMS_View_SetRevisors extends SeedDMS_Theme_Style {
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
|
|
||||||
<form class="form-horizontal" action="../op/op.SetRevisors.php" method="post" name="form1">
|
<form class="form-horizontal" action="../op/op.SetRevisors.php" method="post" id="form1" name="form1">
|
||||||
<input type='hidden' name='documentid' value='<?php echo $document->getID() ?>'/>
|
<input type='hidden' name='documentid' value='<?php echo $document->getID() ?>'/>
|
||||||
<input type='hidden' name='version' value='<?php echo $content->getVersion() ?>'/>
|
<input type='hidden' name='version' value='<?php echo $content->getVersion() ?>'/>
|
||||||
|
|
||||||
|
@ -184,4 +202,3 @@ class SeedDMS_View_SetRevisors extends SeedDMS_Theme_Style {
|
||||||
$this->htmlEndPage();
|
$this->htmlEndPage();
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
}
|
}
|
||||||
?>
|
|
||||||
|
|
|
@ -189,9 +189,10 @@ class SeedDMS_View_Settings extends SeedDMS_Theme_Style {
|
||||||
<td><?= getMLText($title) ?></td>
|
<td><?= getMLText($title) ?></td>
|
||||||
<td>
|
<td>
|
||||||
<?php
|
<?php
|
||||||
if($this->isVisible($name))
|
if($this->isVisible($name)) {
|
||||||
|
echo '<input name="'.$name.'" type="hidden" vaule="" />';
|
||||||
echo '<input name="'.$name.'" type="checkbox" '.($settings->{"_".$name} ? "checked" : '').' />';
|
echo '<input name="'.$name.'" type="checkbox" '.($settings->{"_".$name} ? "checked" : '').' />';
|
||||||
else
|
} else
|
||||||
echo getMLText('settings_conf_field_not_editable');
|
echo getMLText('settings_conf_field_not_editable');
|
||||||
echo "</td>\n";
|
echo "</td>\n";
|
||||||
?>
|
?>
|
||||||
|
@ -331,7 +332,184 @@ class SeedDMS_View_Settings extends SeedDMS_Theme_Style {
|
||||||
<?php
|
<?php
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
|
|
||||||
function js() { /* {{{ */
|
protected function showExtensionConfig($extname, $extconf) { /* {{{ */
|
||||||
|
$dms = $this->params['dms'];
|
||||||
|
$settings = $this->params['settings'];
|
||||||
|
|
||||||
|
foreach($extconf['config'] as $confkey=>$conf) {
|
||||||
|
ob_start();
|
||||||
|
if($this->isVisible($extname.'|'.$confkey)) {
|
||||||
|
switch($conf['type']) {
|
||||||
|
case 'checkbox':
|
||||||
|
?>
|
||||||
|
<input type="hidden" name="<?php echo "extensions[".$extname."][".$confkey."]"; ?>" value=""><input type="checkbox" id="extension_<?= $extname ?>_<?= $confkey ?>" name="<?php echo "extensions[".$extname."][".$confkey."]"; ?>" value="1" <?php if(isset($settings->_extensions[$extname][$confkey]) && $settings->_extensions[$extname][$confkey]) echo 'checked'; ?> />
|
||||||
|
<?php
|
||||||
|
break;
|
||||||
|
case 'select':
|
||||||
|
$allowempty = empty($conf['allow_empty']) ? false : $conf['allow_empty'];
|
||||||
|
$multiple = empty($conf['multiple']) ? false : $conf['multiple'];
|
||||||
|
$order = empty($conf['order']) ? '' : $conf['order'];
|
||||||
|
if(!empty($conf['options'])) {
|
||||||
|
$selections = empty($settings->_extensions[$extname][$confkey]) ? array() : explode(",", $settings->_extensions[$extname][$confkey]);
|
||||||
|
echo "<select id=\"extension_".$extname."_".$confkey."\" class=\"chzn-select\"".($allowempty ? " data-allow-clear=\"true\"" : "").($order ? " order=\"".$order."\"" : "")." name=\"extensions[".$extname."][".$confkey."][]\"".($multiple ? " multiple" : "").(!empty($conf['size']) ? " size=\"".$conf['size']."\"" : "")." data-placeholder=\"".getMLText("select_option")."\" style=\"width: 100%;\">";
|
||||||
|
if(is_array($conf['options'])) {
|
||||||
|
$options = $conf['options'];
|
||||||
|
} elseif(is_string($conf['options']) && $conf['options'] == 'hook') {
|
||||||
|
$options = $this->callHook('getOptions', $confkey, $extname, $extconf);
|
||||||
|
} else {
|
||||||
|
$options = [];
|
||||||
|
}
|
||||||
|
if($allowempty)
|
||||||
|
echo "<option value=\"\"></option>";
|
||||||
|
foreach($options as $key=>$opt) {
|
||||||
|
echo "<option value=\"".$key."\"";
|
||||||
|
if(in_array($key, $selections))
|
||||||
|
echo " selected";
|
||||||
|
if(is_array($opt)) {
|
||||||
|
echo " data-subtitle=\"".htmlspecialchars($opt['subtitle'])."\">".htmlspecialchars($opt['value']);
|
||||||
|
} else {
|
||||||
|
echo ">".htmlspecialchars(getMLText($extname.'_'.$opt, array(), $opt));
|
||||||
|
}
|
||||||
|
echo "</option>";
|
||||||
|
}
|
||||||
|
echo "</select>";
|
||||||
|
} elseif(!empty($conf['internal'])) {
|
||||||
|
$selections = empty($settings->_extensions[$extname][$confkey]) ? array() : explode(",", $settings->_extensions[$extname][$confkey]);
|
||||||
|
switch($conf['internal']) {
|
||||||
|
case "categories":
|
||||||
|
$categories = $dms->getDocumentCategories();
|
||||||
|
if($categories) {
|
||||||
|
echo "<select class=\"chzn-select\"".($allowempty ? " data-allow-clear=\"true\"" : "")." name=\"extensions[".$extname."][".$confkey."][]\"".($multiple ? " multiple" : "").(!empty($conf['size']) ? " size=\"".$conf['size']."\"" : "")." data-placeholder=\"".getMLText("select_category")."\" style=\"width: 100%;\">";
|
||||||
|
if($allowempty)
|
||||||
|
echo "<option value=\"\"></option>";
|
||||||
|
foreach($categories as $category) {
|
||||||
|
echo "<option value=\"".$category->getID()."\"";
|
||||||
|
if(in_array($category->getID(), $selections))
|
||||||
|
echo " selected";
|
||||||
|
echo ">".htmlspecialchars($category->getName())."</option>";
|
||||||
|
}
|
||||||
|
echo "</select>";
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case "users":
|
||||||
|
$users = $dms->getAllUsers();
|
||||||
|
if($users) {
|
||||||
|
echo "<select class=\"chzn-select\"".($allowempty ? " data-allow-clear=\"true\"" : "")." name=\"extensions[".$extname."][".$confkey."][]\"".(!empty($conf['multiple']) ? " multiple" : "").(!empty($conf['size']) ? " size=\"".$conf['size']."\"" : "")." data-placeholder=\"".getMLText("select_user")."\" style=\"width: 100%;\">";
|
||||||
|
if($allowempty)
|
||||||
|
echo "<option value=\"\"></option>";
|
||||||
|
foreach($users as $curuser) {
|
||||||
|
echo "<option value=\"".$curuser->getID()."\"";
|
||||||
|
if(in_array($curuser->getID(), $selections))
|
||||||
|
echo " selected";
|
||||||
|
echo ">".htmlspecialchars($curuser->getLogin()." - ".$curuser->getFullName())."</option>";
|
||||||
|
}
|
||||||
|
echo "</select>";
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case "groups":
|
||||||
|
$recs = $dms->getAllGroups();
|
||||||
|
if($recs) {
|
||||||
|
echo "<select class=\"chzn-select\"".($allowempty ? " data-allow-clear=\"true\"" : "")." name=\"extensions[".$extname."][".$confkey."][]\"".(!empty($conf['multiple']) ? " multiple" : "").(!empty($conf['size']) ? " size=\"".$conf['size']."\"" : "")." data-placeholder=\"".getMLText("select_group")."\" style=\"width: 100%;\">";
|
||||||
|
if($allowempty)
|
||||||
|
echo "<option value=\"\"></option>";
|
||||||
|
foreach($recs as $rec) {
|
||||||
|
echo "<option value=\"".$rec->getID()."\"";
|
||||||
|
if(in_array($rec->getID(), $selections))
|
||||||
|
echo " selected";
|
||||||
|
echo ">".htmlspecialchars($rec->getName())."</option>";
|
||||||
|
}
|
||||||
|
echo "</select>";
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case "attributedefinitions":
|
||||||
|
$objtype = empty($conf['objtype']) ? 0 : $conf['objtype'];
|
||||||
|
$attrtype = empty($conf['attrtype']) ? 0 : $conf['attrtype'];
|
||||||
|
$order = empty($conf['order']) ? '' : $conf['order'];
|
||||||
|
$recs = $dms->getAllAttributeDefinitions($objtype, $attrtype);
|
||||||
|
if($recs) {
|
||||||
|
echo "<select class=\"chzn-select\"".($allowempty ? " data-allow-clear=\"true\"" : "").($order ? " order=\"".$order."\"" : "")." name=\"extensions[".$extname."][".$confkey."][]\"".(!empty($conf['multiple']) ? " multiple" : "").(!empty($conf['size']) ? " size=\"".$conf['size']."\"" : "")." data-placeholder=\"".getMLText("select_attrdef")."\" data-no_results_text=\"".getMLText('unknown_attrdef')."\" style=\"width: 100%;\">";
|
||||||
|
if($allowempty)
|
||||||
|
echo "<option value=\"\"></option>";
|
||||||
|
if($order == 'keep') {
|
||||||
|
foreach($selections as $selid) {
|
||||||
|
if($rec = $dms->getAttributeDefinition($selid)) {
|
||||||
|
echo "<option value=\"".$rec->getID()."\" selected data-subtitle=\"".htmlspecialchars(getAttributeObjectTypeText($rec).", ".getAttributeTypeText($rec))."\">".htmlspecialchars($rec->getName())."</option>";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
foreach($recs as $rec) {
|
||||||
|
if($order == 'keep' && in_array($rec->getID(), $selections))
|
||||||
|
continue;
|
||||||
|
echo "<option value=\"".$rec->getID()."\"";
|
||||||
|
if(in_array($rec->getID(), $selections))
|
||||||
|
echo " selected";
|
||||||
|
echo " data-subtitle=\"".htmlspecialchars(getAttributeObjectTypeText($rec).", ".getAttributeTypeText($rec))."\">".htmlspecialchars($rec->getName())."</option>";
|
||||||
|
}
|
||||||
|
echo "</select>";
|
||||||
|
} else {
|
||||||
|
printMLText('no_attribute_definitions');
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case "workflows":
|
||||||
|
$recs = $dms->getAllWorkflows();
|
||||||
|
if($recs) {
|
||||||
|
echo "<select class=\"chzn-select\"".($allowempty ? " data-allow-clear=\"true\"" : "")." name=\"extensions[".$extname."][".$confkey."][]\"".(!empty($conf['multiple']) ? " multiple" : "").(!empty($conf['size']) ? " size=\"".$conf['size']."\"" : "")." data-placeholder=\"".getMLText("select_attribute_value")."\" style=\"width: 100%;\">";
|
||||||
|
if($allowempty)
|
||||||
|
echo "<option value=\"\"></option>";
|
||||||
|
foreach($recs as $rec) {
|
||||||
|
echo "<option value=\"".$rec->getID()."\"";
|
||||||
|
if(in_array($rec->getID(), $selections))
|
||||||
|
echo " selected";
|
||||||
|
echo ">".htmlspecialchars($rec->getName())."</option>";
|
||||||
|
}
|
||||||
|
echo "</select>";
|
||||||
|
} else {
|
||||||
|
printMLText('no_workflows');
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case "folders":
|
||||||
|
$this->formField(null, $this->getFolderChooserHtml("form".$extname.$confkey, M_READ, -1, $selections ? $dms->getFolder($selections[0]) : 0, 'extensions['.$extname."][".$confkey."]"));
|
||||||
|
break;
|
||||||
|
case "folderlist":
|
||||||
|
echo "<select class=\"chzn-select-folder\"".($allowempty ? " data-allow-clear=\"true\"" : "")." name=\"extensions[".$extname."][".$confkey."][]\"".(!empty($conf['multiple']) ? " multiple" : "").(!empty($conf['size']) ? " size=\"".$conf['size']."\"" : "")." data-placeholder=\"".getMLText("select_attribute_value")."\" style=\"width: 100%;\">";
|
||||||
|
if($selections) {
|
||||||
|
foreach ($selections as $selid) {
|
||||||
|
if ($f = $dms->getFolder($selid)) {
|
||||||
|
echo "<option value=\"".$f->getID()."\"";
|
||||||
|
echo " selected";
|
||||||
|
echo ">".htmlspecialchars($f->getName())."</option>";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
echo "</select>";
|
||||||
|
break;
|
||||||
|
case "documents":
|
||||||
|
$this->formField(null, $this->getDocumentChooserHtml("form".$extname.$confkey, M_READ, -1, $selections ? $dms->getDocument($selections[0]) : 0, 'extensions['.$extname."][".$confkey."]"));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'hook':
|
||||||
|
echo $this->callHook('showConfig', $confkey, $extname, $extconf);
|
||||||
|
break;
|
||||||
|
case "date":
|
||||||
|
$this->formField(
|
||||||
|
null,
|
||||||
|
$this->getDateChooser((isset($settings->_extensions[$extname][$confkey]) ? getReadableDate($settings->_extensions[$extname][$confkey]) : ''), "extensions[".$extname."][".$confkey."]", $this->params['session']->getLanguage())
|
||||||
|
);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
$this->showTextField("extensions[".$extname."][".$confkey."]", isset($settings->_extensions[$extname][$confkey]) ? $settings->_extensions[$extname][$confkey] : '', isset($conf['type']) ? $conf['type'] : '', isset($conf['placeholder']) ? $conf['placeholder'] : '');
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
echo getMLText('settings_conf_field_not_editable');
|
||||||
|
}
|
||||||
|
$html = ob_get_clean();
|
||||||
|
$this->showConfigPlain($conf['title'], isset($conf['help']) ? $conf['help'] : '', $html);
|
||||||
|
}
|
||||||
|
} /* }}} */
|
||||||
|
|
||||||
|
public function js() { /* {{{ */
|
||||||
$extmgr = $this->params['extmgr'];
|
$extmgr = $this->params['extmgr'];
|
||||||
|
|
||||||
header('Content-Type: application/javascript; charset=UTF-8');
|
header('Content-Type: application/javascript; charset=UTF-8');
|
||||||
|
@ -382,7 +560,42 @@ console.log($(event.currentTarget).data('target').substring(1));
|
||||||
<?php
|
<?php
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
|
|
||||||
function show() { /* {{{ */
|
public function extension() { /* {{{ */
|
||||||
|
$dms = $this->params['dms'];
|
||||||
|
$user = $this->params['user'];
|
||||||
|
$extname = $this->params['extname'];
|
||||||
|
$settings = $this->params['settings'];
|
||||||
|
$extmgr = $this->params['extmgr'];
|
||||||
|
|
||||||
|
$extconf = $extmgr->getExtensionConfiguration()[$extname];
|
||||||
|
?>
|
||||||
|
<form action="../op/op.Settings.php" method="post" enctype="multipart/form-data" id="formconfig" name="formconfig" >
|
||||||
|
<?php echo createHiddenFieldWithKey('savesettings'); ?>
|
||||||
|
<input type="hidden" name="action" value="saveSettings" />
|
||||||
|
<?php
|
||||||
|
if($this->hasHook('processConfig')) {
|
||||||
|
$ttt = $this->callHook('processConfig', $extname, $extconf);
|
||||||
|
if($ttt)
|
||||||
|
$extconf = $ttt;
|
||||||
|
}
|
||||||
|
if($this->isVisible($extname.'|')) {
|
||||||
|
if($extconf['config']) {
|
||||||
|
// $this->showRawConfigHeadline("<p><a id=\"".$extname."\" name=\"".$extname."\"></a>".'<input type="hidden" name="extensions['.$extname.'][__disable__]" value="'.(isset($settings->_extensions[$extname]["__disable__"]) && $settings->_extensions[$extname]["__disable__"] ? '1' : '').'" /><i class="fa fa-circle'.(isset($settings->_extensions[$extname]["__disable__"]) && $settings->_extensions[$extname]["__disable__"] ? ' disabled' : ' enabled').'"></i> <span title="'.$extname.'">'.$extconf['title'].'</span></p>');
|
||||||
|
$this->showExtensionConfig($extname, $extconf);
|
||||||
|
} else {
|
||||||
|
/* Even no configuration exists, output the input field to enable/disable
|
||||||
|
* the extension. Otherwise it will be enabled each time the config is
|
||||||
|
* saved.
|
||||||
|
*/
|
||||||
|
echo '<input type="hidden" name="extensions['.$extname.'][__disable__]" value="'.(isset($settings->_extensions[$extname]["__disable__"]) && $settings->_extensions[$extname]["__disable__"] ? '1' : '').'" />'."\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
</form>
|
||||||
|
<?php
|
||||||
|
} /* }}} */
|
||||||
|
|
||||||
|
public function show() { /* {{{ */
|
||||||
$dms = $this->params['dms'];
|
$dms = $this->params['dms'];
|
||||||
$user = $this->params['user'];
|
$user = $this->params['user'];
|
||||||
$users = $this->params['allusers'];
|
$users = $this->params['allusers'];
|
||||||
|
@ -547,6 +760,7 @@ if(($kkk = $this->callHook('getFullSearchEngine')) && is_array($kkk))
|
||||||
<?php $this->showConfigText('settings_partitionSize', 'partitionSize'); ?>
|
<?php $this->showConfigText('settings_partitionSize', 'partitionSize'); ?>
|
||||||
<?php $this->showConfigText('settings_maxUploadSize', 'maxUploadSize'); ?>
|
<?php $this->showConfigText('settings_maxUploadSize', 'maxUploadSize'); ?>
|
||||||
<?php $this->showConfigCheckbox('settings_enableXsendfile', 'enableXsendfile'); ?>
|
<?php $this->showConfigCheckbox('settings_enableXsendfile', 'enableXsendfile'); ?>
|
||||||
|
<?php $this->showConfigCheckbox('settings_enableMemcached', 'enableMemcached'); ?>
|
||||||
<!--
|
<!--
|
||||||
-- SETTINGS - SYSTEM - AUTHENTICATION
|
-- SETTINGS - SYSTEM - AUTHENTICATION
|
||||||
-->
|
-->
|
||||||
|
@ -717,171 +931,7 @@ if(($kkk = $this->callHook('getFullSearchEngine')) && is_array($kkk))
|
||||||
if($this->isVisible($extname.'|')) {
|
if($this->isVisible($extname.'|')) {
|
||||||
if($extconf['config']) {
|
if($extconf['config']) {
|
||||||
$this->showRawConfigHeadline("<a id=\"".$extname."\" name=\"".$extname."\"></a>".'<input type="hidden" name="extensions['.$extname.'][__disable__]" value="'.(isset($settings->_extensions[$extname]["__disable__"]) && $settings->_extensions[$extname]["__disable__"] ? '1' : '').'" /><i class="fa fa-circle'.(isset($settings->_extensions[$extname]["__disable__"]) && $settings->_extensions[$extname]["__disable__"] ? ' disabled' : ' enabled').'"></i> <span title="'.$extname.'">'.$extconf['title'].'</span>');
|
$this->showRawConfigHeadline("<a id=\"".$extname."\" name=\"".$extname."\"></a>".'<input type="hidden" name="extensions['.$extname.'][__disable__]" value="'.(isset($settings->_extensions[$extname]["__disable__"]) && $settings->_extensions[$extname]["__disable__"] ? '1' : '').'" /><i class="fa fa-circle'.(isset($settings->_extensions[$extname]["__disable__"]) && $settings->_extensions[$extname]["__disable__"] ? ' disabled' : ' enabled').'"></i> <span title="'.$extname.'">'.$extconf['title'].'</span>');
|
||||||
foreach($extconf['config'] as $confkey=>$conf) {
|
$this->showExtensionConfig($extname, $extconf);
|
||||||
ob_start();
|
|
||||||
if($this->isVisible($extname.'|'.$confkey)) {
|
|
||||||
switch($conf['type']) {
|
|
||||||
case 'checkbox':
|
|
||||||
?>
|
|
||||||
<input type="hidden" name="<?php echo "extensions[".$extname."][".$confkey."]"; ?>" value=""><input type="checkbox" name="<?php echo "extensions[".$extname."][".$confkey."]"; ?>" value="1" <?php if(isset($settings->_extensions[$extname][$confkey]) && $settings->_extensions[$extname][$confkey]) echo 'checked'; ?> />
|
|
||||||
<?php
|
|
||||||
break;
|
|
||||||
case 'select':
|
|
||||||
$allowempty = empty($conf['allow_empty']) ? false : $conf['allow_empty'];
|
|
||||||
$multiple = empty($conf['multiple']) ? false : $conf['multiple'];
|
|
||||||
if(!empty($conf['options'])) {
|
|
||||||
$selections = empty($settings->_extensions[$extname][$confkey]) ? array() : explode(",", $settings->_extensions[$extname][$confkey]);
|
|
||||||
echo "<select class=\"chzn-select\"".($allowempty ? " data-allow-clear=\"true\"" : "")." name=\"extensions[".$extname."][".$confkey."][]\"".($multiple ? " multiple" : "").(!empty($conf['size']) ? " size=\"".$conf['size']."\"" : "")." data-placeholder=\"".getMLText("select_option")."\" style=\"width: 100%;\">";
|
|
||||||
if(is_array($conf['options'])) {
|
|
||||||
$options = $conf['options'];
|
|
||||||
} elseif(is_string($conf['options']) && $conf['options'] == 'hook') {
|
|
||||||
$options = $this->callHook('getOptions', $confkey, $extname, $extconf);
|
|
||||||
} else {
|
|
||||||
$options = [];
|
|
||||||
}
|
|
||||||
if($allowempty)
|
|
||||||
echo "<option value=\"\"></option>";
|
|
||||||
foreach($options as $key=>$opt) {
|
|
||||||
echo "<option value=\"".$key."\"";
|
|
||||||
if(in_array($key, $selections))
|
|
||||||
echo " selected";
|
|
||||||
echo ">".htmlspecialchars(getMLText($extname.'_'.$opt, array(), $opt))."</option>";
|
|
||||||
}
|
|
||||||
echo "</select>";
|
|
||||||
} elseif(!empty($conf['internal'])) {
|
|
||||||
$selections = empty($settings->_extensions[$extname][$confkey]) ? array() : explode(",", $settings->_extensions[$extname][$confkey]);
|
|
||||||
switch($conf['internal']) {
|
|
||||||
case "categories":
|
|
||||||
$categories = $dms->getDocumentCategories();
|
|
||||||
if($categories) {
|
|
||||||
echo "<select class=\"chzn-select\"".($allowempty ? " data-allow-clear=\"true\"" : "")." name=\"extensions[".$extname."][".$confkey."][]\"".($multiple ? " multiple" : "").(!empty($conf['size']) ? " size=\"".$conf['size']."\"" : "")." data-placeholder=\"".getMLText("select_category")."\" style=\"width: 100%;\">";
|
|
||||||
if($allowempty)
|
|
||||||
echo "<option value=\"\"></option>";
|
|
||||||
foreach($categories as $category) {
|
|
||||||
echo "<option value=\"".$category->getID()."\"";
|
|
||||||
if(in_array($category->getID(), $selections))
|
|
||||||
echo " selected";
|
|
||||||
echo ">".htmlspecialchars($category->getName())."</option>";
|
|
||||||
}
|
|
||||||
echo "</select>";
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case "users":
|
|
||||||
$users = $dms->getAllUsers();
|
|
||||||
if($users) {
|
|
||||||
echo "<select class=\"chzn-select\"".($allowempty ? " data-allow-clear=\"true\"" : "")." name=\"extensions[".$extname."][".$confkey."][]\"".(!empty($conf['multiple']) ? " multiple" : "").(!empty($conf['size']) ? " size=\"".$conf['size']."\"" : "")." data-placeholder=\"".getMLText("select_user")."\" style=\"width: 100%;\">";
|
|
||||||
if($allowempty)
|
|
||||||
echo "<option value=\"\"></option>";
|
|
||||||
foreach($users as $curuser) {
|
|
||||||
echo "<option value=\"".$curuser->getID()."\"";
|
|
||||||
if(in_array($curuser->getID(), $selections))
|
|
||||||
echo " selected";
|
|
||||||
echo ">".htmlspecialchars($curuser->getLogin()." - ".$curuser->getFullName())."</option>";
|
|
||||||
}
|
|
||||||
echo "</select>";
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case "groups":
|
|
||||||
$recs = $dms->getAllGroups();
|
|
||||||
if($recs) {
|
|
||||||
echo "<select class=\"chzn-select\"".($allowempty ? " data-allow-clear=\"true\"" : "")." name=\"extensions[".$extname."][".$confkey."][]\"".(!empty($conf['multiple']) ? " multiple" : "").(!empty($conf['size']) ? " size=\"".$conf['size']."\"" : "")." data-placeholder=\"".getMLText("select_group")."\" style=\"width: 100%;\">";
|
|
||||||
if($allowempty)
|
|
||||||
echo "<option value=\"\"></option>";
|
|
||||||
foreach($recs as $rec) {
|
|
||||||
echo "<option value=\"".$rec->getID()."\"";
|
|
||||||
if(in_array($rec->getID(), $selections))
|
|
||||||
echo " selected";
|
|
||||||
echo ">".htmlspecialchars($rec->getName())."</option>";
|
|
||||||
}
|
|
||||||
echo "</select>";
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case "attributedefinitions":
|
|
||||||
$objtype = empty($conf['objtype']) ? 0 : $conf['objtype'];
|
|
||||||
$attrtype = empty($conf['attrtype']) ? 0 : $conf['attrtype'];
|
|
||||||
$order = empty($conf['order']) ? '' : $conf['order'];
|
|
||||||
$recs = $dms->getAllAttributeDefinitions($objtype, $attrtype);
|
|
||||||
if($recs) {
|
|
||||||
echo "<select class=\"chzn-select\"".($allowempty ? " data-allow-clear=\"true\"" : "").($order ? " order=\"".$order."\"" : "")." name=\"extensions[".$extname."][".$confkey."][]\"".(!empty($conf['multiple']) ? " multiple" : "").(!empty($conf['size']) ? " size=\"".$conf['size']."\"" : "")." data-placeholder=\"".getMLText("select_attrdef")."\" data-no_results_text=\"".getMLText('unknown_attrdef')."\" style=\"width: 100%;\">";
|
|
||||||
if($allowempty)
|
|
||||||
echo "<option value=\"\"></option>";
|
|
||||||
if($order == 'keep') {
|
|
||||||
foreach($selections as $selid) {
|
|
||||||
if($rec = $dms->getAttributeDefinition($selid)) {
|
|
||||||
echo "<option value=\"".$rec->getID()."\" selected data-subtitle=\"".htmlspecialchars(getAttributeObjectTypeText($rec).", ".getAttributeTypeText($rec))."\">".htmlspecialchars($rec->getName())."</option>";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
foreach($recs as $rec) {
|
|
||||||
if($order == 'keep' && in_array($rec->getID(), $selections))
|
|
||||||
continue;
|
|
||||||
echo "<option value=\"".$rec->getID()."\"";
|
|
||||||
if(in_array($rec->getID(), $selections))
|
|
||||||
echo " selected";
|
|
||||||
echo " data-subtitle=\"".htmlspecialchars(getAttributeObjectTypeText($rec).", ".getAttributeTypeText($rec))."\">".htmlspecialchars($rec->getName())."</option>";
|
|
||||||
}
|
|
||||||
echo "</select>";
|
|
||||||
} else {
|
|
||||||
printMLText('no_attribute_definitions');
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case "workflows":
|
|
||||||
$recs = $dms->getAllWorkflows();
|
|
||||||
if($recs) {
|
|
||||||
echo "<select class=\"chzn-select\"".($allowempty ? " data-allow-clear=\"true\"" : "")." name=\"extensions[".$extname."][".$confkey."][]\"".(!empty($conf['multiple']) ? " multiple" : "").(!empty($conf['size']) ? " size=\"".$conf['size']."\"" : "")." data-placeholder=\"".getMLText("select_attribute_value")."\" style=\"width: 100%;\">";
|
|
||||||
if($allowempty)
|
|
||||||
echo "<option value=\"\"></option>";
|
|
||||||
foreach($recs as $rec) {
|
|
||||||
echo "<option value=\"".$rec->getID()."\"";
|
|
||||||
if(in_array($rec->getID(), $selections))
|
|
||||||
echo " selected";
|
|
||||||
echo ">".htmlspecialchars($rec->getName())."</option>";
|
|
||||||
}
|
|
||||||
echo "</select>";
|
|
||||||
} else {
|
|
||||||
printMLText('no_workflows');
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case "folders":
|
|
||||||
$this->formField(null, $this->getFolderChooserHtml("form".$extname.$confkey, M_READ, -1, $selections ? $dms->getFolder($selections[0]) : 0, 'extensions['.$extname."][".$confkey."]"));
|
|
||||||
break;
|
|
||||||
case "folderlist":
|
|
||||||
echo "<select class=\"chzn-select-folder\"".($allowempty ? " data-allow-clear=\"true\"" : "")." name=\"extensions[".$extname."][".$confkey."][]\"".(!empty($conf['multiple']) ? " multiple" : "").(!empty($conf['size']) ? " size=\"".$conf['size']."\"" : "")." data-placeholder=\"".getMLText("select_attribute_value")."\" style=\"width: 100%;\">";
|
|
||||||
if($selections) {
|
|
||||||
foreach ($selections as $selid) {
|
|
||||||
if ($f = $dms->getFolder($selid)) {
|
|
||||||
echo "<option value=\"".$f->getID()."\"";
|
|
||||||
echo " selected";
|
|
||||||
echo ">".htmlspecialchars($f->getName())."</option>";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
echo "</select>";
|
|
||||||
break;
|
|
||||||
case "documents":
|
|
||||||
$this->formField(null, $this->getDocumentChooserHtml("form".$extname.$confkey, M_READ, -1, $selections ? $dms->getDocument($selections[0]) : 0, 'extensions['.$extname."][".$confkey."]"));
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 'hook':
|
|
||||||
echo $this->callHook('showConfig', $confkey, $extname, $extconf);
|
|
||||||
break;
|
|
||||||
case "date":
|
|
||||||
$this->formField(
|
|
||||||
null,
|
|
||||||
$this->getDateChooser((isset($settings->_extensions[$extname][$confkey]) ? getReadableDate($settings->_extensions[$extname][$confkey]) : ''), "extensions[".$extname."][".$confkey."]", $this->params['session']->getLanguage())
|
|
||||||
);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
$this->showTextField("extensions[".$extname."][".$confkey."]", isset($settings->_extensions[$extname][$confkey]) ? $settings->_extensions[$extname][$confkey] : '', isset($conf['type']) ? $conf['type'] : '', isset($conf['placeholder']) ? $conf['placeholder'] : '');
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
echo getMLText('settings_conf_field_not_editable');
|
|
||||||
}
|
|
||||||
$html = ob_get_clean();
|
|
||||||
$this->showConfigPlain($conf['title'], isset($conf['help']) ? $conf['help'] : '', $html);
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
/* Even no configuration exists, output the input field to enable/disable
|
/* Even no configuration exists, output the input field to enable/disable
|
||||||
* the extension. Otherwise it will be enabled each time the config is
|
* the extension. Otherwise it will be enabled each time the config is
|
||||||
|
|
|
@ -298,7 +298,7 @@ class SeedDMS_View_Tasks extends SeedDMS_Theme_Style {
|
||||||
$subitems = [];
|
$subitems = [];
|
||||||
foreach($tasks['review'] as $t) {
|
foreach($tasks['review'] as $t) {
|
||||||
$doc = $dms->getDocument($t['id']);
|
$doc = $dms->getDocument($t['id']);
|
||||||
$subitems[] = array('label'=>$doc->getName(), 'link'=>$this->params['settings']->_httpRoot."out/out.ViewDocument.php?documentid=".$doc->getID()."¤ttab=revapp", 'class'=>"table-row-document", 'rel'=>"document_".$doc->getID());
|
$subitems[] = array('label'=>htmlspecialchars($doc->getName()), 'link'=>$this->params['settings']->_httpRoot."out/out.ViewDocument.php?documentid=".$doc->getID()."¤ttab=revapp", 'class'=>"table-row-document", 'rel'=>"document_".$doc->getID());
|
||||||
}
|
}
|
||||||
$menuitems['tasks']['children']['review'] = array('label'=>getMLText('documents_to_review'), 'children'=>$subitems);
|
$menuitems['tasks']['children']['review'] = array('label'=>getMLText('documents_to_review'), 'children'=>$subitems);
|
||||||
|
|
||||||
|
@ -307,7 +307,7 @@ class SeedDMS_View_Tasks extends SeedDMS_Theme_Style {
|
||||||
$subitems = [];
|
$subitems = [];
|
||||||
foreach($tasks['approval'] as $t) {
|
foreach($tasks['approval'] as $t) {
|
||||||
$doc = $dms->getDocument($t['id']);
|
$doc = $dms->getDocument($t['id']);
|
||||||
$subitems[] = array('label'=>$doc->getName(), 'link'=>$this->params['settings']->_httpRoot."out/out.ViewDocument.php?documentid=".$doc->getID()."¤ttab=revapp", 'class'=>"table-row-document", 'rel'=>"document_".$doc->getID());
|
$subitems[] = array('label'=>htmlspecialchars($doc->getName()), 'link'=>$this->params['settings']->_httpRoot."out/out.ViewDocument.php?documentid=".$doc->getID()."¤ttab=revapp", 'class'=>"table-row-document", 'rel'=>"document_".$doc->getID());
|
||||||
}
|
}
|
||||||
$menuitems['tasks']['children']['approval'] = array('label'=>getMLText('documents_to_approve'), 'children'=>$subitems);
|
$menuitems['tasks']['children']['approval'] = array('label'=>getMLText('documents_to_approve'), 'children'=>$subitems);
|
||||||
}
|
}
|
||||||
|
@ -315,7 +315,7 @@ class SeedDMS_View_Tasks extends SeedDMS_Theme_Style {
|
||||||
$subitems = [];
|
$subitems = [];
|
||||||
foreach($tasks['workflow'] as $t) {
|
foreach($tasks['workflow'] as $t) {
|
||||||
$doc = $dms->getDocument($t['id']);
|
$doc = $dms->getDocument($t['id']);
|
||||||
$subitems[] = array('label'=>$doc->getName(), 'link'=>$this->params['settings']->_httpRoot."out/out.ViewDocument.php?documentid=".$doc->getID()."¤ttab=workflow", 'class'=>"table-row-document", 'rel'=>"document_".$doc->getID());
|
$subitems[] = array('label'=>htmlspecialchars($doc->getName()), 'link'=>$this->params['settings']->_httpRoot."out/out.ViewDocument.php?documentid=".$doc->getID()."¤ttab=workflow", 'class'=>"table-row-document", 'rel'=>"document_".$doc->getID());
|
||||||
}
|
}
|
||||||
$menuitems['tasks']['children']['workflow'] = array('label'=>getMLText('documents_to_trigger_workflow'), 'children'=>$subitems);
|
$menuitems['tasks']['children']['workflow'] = array('label'=>getMLText('documents_to_trigger_workflow'), 'children'=>$subitems);
|
||||||
}
|
}
|
||||||
|
@ -323,7 +323,7 @@ class SeedDMS_View_Tasks extends SeedDMS_Theme_Style {
|
||||||
$subitems = [];
|
$subitems = [];
|
||||||
foreach($tasks['receipt'] as $t) {
|
foreach($tasks['receipt'] as $t) {
|
||||||
$doc = $dms->getDocument($t['id']);
|
$doc = $dms->getDocument($t['id']);
|
||||||
$subitems[] = array('label'=>$doc->getName(), 'link'=>"../out/out.ViewDocument.php?documentid=".$doc->getID()."¤ttab=recipients", 'class'=>"table-row-document", 'rel'=>"document_".$doc->getID());
|
$subitems[] = array('label'=>htmlspecialchars($doc->getName()), 'link'=>"../out/out.ViewDocument.php?documentid=".$doc->getID()."¤ttab=recipients", 'class'=>"table-row-document", 'rel'=>"document_".$doc->getID());
|
||||||
}
|
}
|
||||||
$menuitems['tasks']['children']['receipt'] = array('label'=>getMLText('documents_to_receipt'), 'children'=>$subitems);
|
$menuitems['tasks']['children']['receipt'] = array('label'=>getMLText('documents_to_receipt'), 'children'=>$subitems);
|
||||||
}
|
}
|
||||||
|
@ -331,7 +331,7 @@ class SeedDMS_View_Tasks extends SeedDMS_Theme_Style {
|
||||||
$subitems = [];
|
$subitems = [];
|
||||||
foreach($tasks['revision'] as $t) {
|
foreach($tasks['revision'] as $t) {
|
||||||
$doc = $dms->getDocument($t['id']);
|
$doc = $dms->getDocument($t['id']);
|
||||||
$subitems[] = array('label'=>$doc->getName(), 'link'=>"../out/out.ViewDocument.php?documentid=".$doc->getID()."¤ttab=revision", 'class'=>"table-row-document", 'rel'=>"document_".$doc->getID());
|
$subitems[] = array('label'=>htmlspecialchars($doc->getName()), 'link'=>"../out/out.ViewDocument.php?documentid=".$doc->getID()."¤ttab=revision", 'class'=>"table-row-document", 'rel'=>"document_".$doc->getID());
|
||||||
}
|
}
|
||||||
$menuitems['tasks']['children']['revision'] = array('label'=>getMLText('documents_to_revise'), 'children'=>$subitems);
|
$menuitems['tasks']['children']['revision'] = array('label'=>getMLText('documents_to_revise'), 'children'=>$subitems);
|
||||||
}
|
}
|
||||||
|
@ -339,7 +339,7 @@ class SeedDMS_View_Tasks extends SeedDMS_Theme_Style {
|
||||||
$subitems = [];
|
$subitems = [];
|
||||||
foreach($tasks['needscorrection'] as $t) {
|
foreach($tasks['needscorrection'] as $t) {
|
||||||
$doc = $dms->getDocument($t['id']);
|
$doc = $dms->getDocument($t['id']);
|
||||||
$subitems[] = array('label'=>$doc->getName(), 'link'=>"../out/out.ViewDocument.php?documentid=".$doc->getID()."¤ttab=docinfo", 'class'=>"table-row-document", 'rel'=>"document_".$doc->getID());
|
$subitems[] = array('label'=>htmlspecialchars($doc->getName()), 'link'=>"../out/out.ViewDocument.php?documentid=".$doc->getID()."¤ttab=docinfo", 'class'=>"table-row-document", 'rel'=>"document_".$doc->getID());
|
||||||
}
|
}
|
||||||
$menuitems['tasks']['children']['needscorrection'] = array('label'=>getMLText('documents_to_correct'), 'children'=>$subitems);
|
$menuitems['tasks']['children']['needscorrection'] = array('label'=>getMLText('documents_to_correct'), 'children'=>$subitems);
|
||||||
}
|
}
|
||||||
|
@ -347,15 +347,15 @@ class SeedDMS_View_Tasks extends SeedDMS_Theme_Style {
|
||||||
$subitems = [];
|
$subitems = [];
|
||||||
foreach($tasks['rejected'] as $t) {
|
foreach($tasks['rejected'] as $t) {
|
||||||
$doc = $dms->getDocument($t['id']);
|
$doc = $dms->getDocument($t['id']);
|
||||||
$subitems[] = array('label'=>$doc->getName(), 'link'=>$this->params['settings']->_httpRoot."out/out.ViewDocument.php?documentid=".$doc->getID()."¤ttab=docinfo", 'class'=>"table-row-document", 'rel'=>"document_".$doc->getID());
|
$subitems[] = array('label'=>htmlspecialchars($doc->getName()), 'link'=>$this->params['settings']->_httpRoot."out/out.ViewDocument.php?documentid=".$doc->getID()."¤ttab=docinfo", 'class'=>"table-row-document", 'rel'=>"document_".$doc->getID());
|
||||||
}
|
}
|
||||||
$menuitems['tasks']['children']['rejected'] = array('label'=>getMLText('documents_rejected'), 'children'=>$subitems);
|
$menuitems['tasks']['children']['rejected'] = array('label'=>getMLText('documents_user_rejected'), 'children'=>$subitems);
|
||||||
}
|
}
|
||||||
if(!empty($tasks['checkedout'])) {
|
if(!empty($tasks['checkedout'])) {
|
||||||
$subitems = [];
|
$subitems = [];
|
||||||
foreach($tasks['checkedout'] as $t) {
|
foreach($tasks['checkedout'] as $t) {
|
||||||
$doc = $dms->getDocument($t['id']);
|
$doc = $dms->getDocument($t['id']);
|
||||||
$subitems[] = array('label'=>$doc->getName(), 'link'=>"../out/out.ViewDocument.php?documentid=".$doc->getID()."¤ttab=docinfo", 'class'=>"table-row-document", 'rel'=>"document_".$doc->getID());
|
$subitems[] = array('label'=>htmlspecialchars($doc->getName()), 'link'=>"../out/out.ViewDocument.php?documentid=".$doc->getID()."¤ttab=docinfo", 'class'=>"table-row-document", 'rel'=>"document_".$doc->getID());
|
||||||
}
|
}
|
||||||
$menuitems['tasks']['children']['checkedout'] = array('label'=>getMLText('documents_checked_out_by_you'), 'children'=>$subitems);
|
$menuitems['tasks']['children']['checkedout'] = array('label'=>getMLText('documents_checked_out_by_you'), 'children'=>$subitems);
|
||||||
}
|
}
|
||||||
|
|
|
@ -604,10 +604,12 @@ console.log(element);
|
||||||
$tmp = array();
|
$tmp = array();
|
||||||
foreach($approvalStatus as $r) {
|
foreach($approvalStatus as $r) {
|
||||||
if($r['type'] == 1) {
|
if($r['type'] == 1) {
|
||||||
if(!in_array($r['required'], $mapprovers['g']))
|
if($mapprovers) {
|
||||||
|
if(!in_array($r['required'], $mapprovers['g']))
|
||||||
|
$tmp[] = $r['required'];
|
||||||
|
} else {
|
||||||
$tmp[] = $r['required'];
|
$tmp[] = $r['required'];
|
||||||
} else {
|
}
|
||||||
$tmp[] = $r['required'];
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$fieldwrap = array('', '');
|
$fieldwrap = array('', '');
|
||||||
|
|
|
@ -321,14 +321,14 @@ $(document).ready( function() {
|
||||||
|
|
||||||
foreach($files as $file) {
|
foreach($files as $file) {
|
||||||
|
|
||||||
$file_exists=file_exists($dms->contentDir . $file->getPath());
|
$file_exists = $file->exists();//file_exists($dms->contentDir . $file->getPath());
|
||||||
|
|
||||||
$responsibleUser = $file->getUser();
|
$responsibleUser = $file->getUser();
|
||||||
|
|
||||||
print "<tr>";
|
print "<tr>";
|
||||||
print "<td>";
|
print "<td>";
|
||||||
$previewer->createPreview($file, $previewwidthdetail);
|
|
||||||
if($file_exists) {
|
if($file_exists) {
|
||||||
|
$previewer->createPreview($file, $previewwidthdetail);
|
||||||
if ($viewonlinefiletypes && (in_array(strtolower($file->getFileType()), $viewonlinefiletypes) || in_array(strtolower($file->getMimeType()), $viewonlinefiletypes))) {
|
if ($viewonlinefiletypes && (in_array(strtolower($file->getFileType()), $viewonlinefiletypes) || in_array(strtolower($file->getMimeType()), $viewonlinefiletypes))) {
|
||||||
if($accessobject->check_controller_access('ViewOnline', array('action'=>'run'))) {
|
if($accessobject->check_controller_access('ViewOnline', array('action'=>'run'))) {
|
||||||
print "<a target=\"_blank\" href=\"".$this->params['settings']->_httpRoot."op/op.ViewOnline.php?documentid=".$documentid."&file=". $file->getID()."\">";
|
print "<a target=\"_blank\" href=\"".$this->params['settings']->_httpRoot."op/op.ViewOnline.php?documentid=".$documentid."&file=". $file->getID()."\">";
|
||||||
|
@ -338,15 +338,15 @@ $(document).ready( function() {
|
||||||
print "<a href=\"".$this->params['settings']->_httpRoot."op/op.Download.php?documentid=".$documentid."&file=".$file->getID()."\">";
|
print "<a href=\"".$this->params['settings']->_httpRoot."op/op.Download.php?documentid=".$documentid."&file=".$file->getID()."\">";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
if($previewer->hasPreview($file)) {
|
||||||
if($previewer->hasPreview($file)) {
|
print("<img class=\"mimeicon\" width=\"".$previewwidthdetail."\" src=\"".$this->params['settings']->_httpRoot."op/op.Preview.php?documentid=".$document->getID()."&file=".$file->getID()."&width=".$previewwidthdetail."\" title=\"".htmlspecialchars($file->getMimeType())."\">");
|
||||||
print("<img class=\"mimeicon\" width=\"".$previewwidthdetail."\" src=\"".$this->params['settings']->_httpRoot."op/op.Preview.php?documentid=".$document->getID()."&file=".$file->getID()."&width=".$previewwidthdetail."\" title=\"".htmlspecialchars($file->getMimeType())."\">");
|
} else {
|
||||||
} else {
|
print "<img class=\"mimeicon\" width=\"".$previewwidthdetail."\" src=\"".$this->getMimeIcon($file->getFileType())."\" title=\"".htmlspecialchars($file->getMimeType())."\">";
|
||||||
print "<img class=\"mimeicon\" width=\"".$previewwidthdetail."\" src=\"".$this->getMimeIcon($file->getFileType())."\" title=\"".htmlspecialchars($file->getMimeType())."\">";
|
}
|
||||||
}
|
|
||||||
if($file_exists) {
|
|
||||||
if($accessobject->check_controller_access('Download', array('action'=>'run')) || $accessobject->check_controller_access('ViewOnline', array('action'=>'run')))
|
if($accessobject->check_controller_access('Download', array('action'=>'run')) || $accessobject->check_controller_access('ViewOnline', array('action'=>'run')))
|
||||||
print "</a>";
|
print "</a>";
|
||||||
|
} else {
|
||||||
|
print "<img class=\"mimeicon\" width=\"".$previewwidthdetail."\" src=\"".$this->getMimeIcon($file->getFileType())."\" title=\"".htmlspecialchars($file->getMimeType())."\">";
|
||||||
}
|
}
|
||||||
print "</td>";
|
print "</td>";
|
||||||
|
|
||||||
|
@ -357,7 +357,7 @@ $(document).ready( function() {
|
||||||
print "<li>".htmlspecialchars($file->getOriginalFileName())."</li>\n";
|
print "<li>".htmlspecialchars($file->getOriginalFileName())."</li>\n";
|
||||||
if ($file_exists) {
|
if ($file_exists) {
|
||||||
$realmimetype = $file->getRealMimeType();
|
$realmimetype = $file->getRealMimeType();
|
||||||
print "<li>".SeedDMS_Core_File::format_filesize(filesize($dms->contentDir . $file->getPath())) ." bytes, ".htmlspecialchars($file->getMimeType())."</li>";
|
print "<li>".SeedDMS_Core_File::format_filesize($file->size()) ." bytes, ".htmlspecialchars($file->getMimeType())."</li>";
|
||||||
} else print "<li>".htmlspecialchars($file->getMimeType())." - <span class=\"warning\">".getMLText("document_deleted")."</span></li>";
|
} else print "<li>".htmlspecialchars($file->getMimeType())." - <span class=\"warning\">".getMLText("document_deleted")."</span></li>";
|
||||||
|
|
||||||
print "<li>".getMLText("uploaded_by")." <a href=\"mailto:".htmlspecialchars($responsibleUser->getEmail())."\">".htmlspecialchars($responsibleUser->getFullName())."</a></li>";
|
print "<li>".getMLText("uploaded_by")." <a href=\"mailto:".htmlspecialchars($responsibleUser->getEmail())."\">".htmlspecialchars($responsibleUser->getFullName())."</a></li>";
|
||||||
|
@ -440,7 +440,7 @@ $(document).ready( function() {
|
||||||
?>
|
?>
|
||||||
<tr>
|
<tr>
|
||||||
<td><?php printMLText("name");?>:</td>
|
<td><?php printMLText("name");?>:</td>
|
||||||
<td><?php $this->printInlineEdit(htmlspecialchars($document->getName()), $document);?></td>
|
<td><?php $this->printInlineEditDocumentName(htmlspecialchars($document->getName()), $document);?></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><?php printMLText("owner");?>:</td>
|
<td><?php printMLText("owner");?>:</td>
|
||||||
|
@ -733,7 +733,7 @@ $(document).ready( function() {
|
||||||
$previewwidthdetail = $this->params['previewWidthDetail'];
|
$previewwidthdetail = $this->params['previewWidthDetail'];
|
||||||
|
|
||||||
// verify if file exists
|
// verify if file exists
|
||||||
$file_exists=file_exists($dms->contentDir . $latestContent->getPath());
|
$file_exists = $latestContent->exists(); //file_exists($dms->contentDir . $latestContent->getPath());
|
||||||
|
|
||||||
$status = $latestContent->getStatus();
|
$status = $latestContent->getStatus();
|
||||||
|
|
||||||
|
@ -747,23 +747,30 @@ $(document).ready( function() {
|
||||||
$this->rowStart();
|
$this->rowStart();
|
||||||
$this->columnStart(3);
|
$this->columnStart(3);
|
||||||
if ($file_exists) {
|
if ($file_exists) {
|
||||||
if ($viewonlinefiletypes && (in_array(strtolower($latestContent->getFileType()), $viewonlinefiletypes) || in_array(strtolower($latestContent->getMimeType()), $viewonlinefiletypes))) {
|
$previewer->createPreview($latestContent);
|
||||||
if($accessobject->check_controller_access('ViewOnline', array('action'=>'run')))
|
$previewhtml = $this->callHook('documentPreviewThumb', $previewer, $latestContent->getDocument(), $latestContent);
|
||||||
print "<a target=\"_blank\" href=\"".$this->params['settings']->_httpRoot."op/op.ViewOnline.php?documentid=".$latestContent->getDocument()->getId()."&version=". $latestContent->getVersion()."\">";
|
if(is_string($previewhtml))
|
||||||
} else {
|
echo $previewhtml;
|
||||||
if($accessobject->check_controller_access('Download', array('action'=>'version')))
|
else {
|
||||||
print "<a href=\"".$this->params['settings']->_httpRoot."op/op.Download.php?documentid=".$latestContent->getDocument()->getId()."&version=".$latestContent->getVersion()."\">";
|
if ($viewonlinefiletypes && (in_array(strtolower($latestContent->getFileType()), $viewonlinefiletypes) || in_array(strtolower($latestContent->getMimeType()), $viewonlinefiletypes))) {
|
||||||
|
if($accessobject->check_controller_access('ViewOnline', array('action'=>'run')))
|
||||||
|
print "<a target=\"_blank\" href=\"".$this->params['settings']->_httpRoot."op/op.ViewOnline.php?documentid=".$latestContent->getDocument()->getId()."&version=". $latestContent->getVersion()."\">";
|
||||||
|
} else {
|
||||||
|
if($accessobject->check_controller_access('Download', array('action'=>'version')))
|
||||||
|
print "<a href=\"".$this->params['settings']->_httpRoot."op/op.Download.php?documentid=".$latestContent->getDocument()->getId()."&version=".$latestContent->getVersion()."\">";
|
||||||
|
}
|
||||||
|
if($previewer->hasPreview($latestContent)) {
|
||||||
|
print("<img class=\"mimeicon\" width=\"".$previewwidthdetail."\" src=\"".$this->params['settings']->_httpRoot."op/op.Preview.php?documentid=".$latestContent->getDocument()->getID()."&version=".$latestContent->getVersion()."&width=".$previewwidthdetail."\" title=\"".htmlspecialchars($latestContent->getMimeType())."\">");
|
||||||
|
} else {
|
||||||
|
print "<img class=\"mimeicon\" width=\"".$previewwidthdetail."\" src=\"".$this->getMimeIcon($latestContent->getFileType())."\" title=\"".htmlspecialchars($latestContent->getMimeType())."\">";
|
||||||
|
}
|
||||||
|
if ($accessobject->check_controller_access('ViewOnline', array('action'=>'run')) || $accessobject->check_controller_access('Download', array('action'=>'version'))) {
|
||||||
|
print "</a>";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
$previewer->createPreview($latestContent);
|
|
||||||
if($previewer->hasPreview($latestContent)) {
|
|
||||||
print("<img class=\"mimeicon\" width=\"".$previewwidthdetail."\" src=\"".$this->params['settings']->_httpRoot."op/op.Preview.php?documentid=".$latestContent->getDocument()->getID()."&version=".$latestContent->getVersion()."&width=".$previewwidthdetail."\" title=\"".htmlspecialchars($latestContent->getMimeType())."\">");
|
|
||||||
} else {
|
} else {
|
||||||
print "<img class=\"mimeicon\" width=\"".$previewwidthdetail."\" src=\"".$this->getMimeIcon($latestContent->getFileType())."\" title=\"".htmlspecialchars($latestContent->getMimeType())."\">";
|
print "<img class=\"mimeicon\" width=\"".$previewwidthdetail."\" src=\"".$this->getMimeIcon($latestContent->getFileType())."\" title=\"".htmlspecialchars($latestContent->getMimeType())."\">";
|
||||||
}
|
}
|
||||||
if ($file_exists && ($accessobject->check_controller_access('ViewOnline', array('action'=>'run')) || $accessobject->check_controller_access('Download', array('action'=>'version')))) {
|
|
||||||
print "</a>";
|
|
||||||
}
|
|
||||||
// print "</td>\n";
|
// print "</td>\n";
|
||||||
|
|
||||||
// print "<td>";
|
// print "<td>";
|
||||||
|
@ -2050,4 +2057,3 @@ $(document).ready( function() {
|
||||||
$this->htmlEndPage();
|
$this->htmlEndPage();
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
}
|
}
|
||||||
?>
|
|
||||||
|
|
|
@ -363,6 +363,7 @@ $(document).ready( function() {
|
||||||
}); /* }}} */
|
}); /* }}} */
|
||||||
|
|
||||||
$('body').on('click', '[data-toggle="modal"]', function(ev){ /* {{{ */
|
$('body').on('click', '[data-toggle="modal"]', function(ev){ /* {{{ */
|
||||||
|
setTimeout(function(){initMost();}, 500);
|
||||||
/* Also set the title */
|
/* Also set the title */
|
||||||
if($(this).data("modal-title"))
|
if($(this).data("modal-title"))
|
||||||
$($(this).data("target")+' .modal-header h3').html($(this).data("modal-title"));
|
$($(this).data("target")+' .modal-header h3').html($(this).data("modal-title"));
|
||||||
|
@ -407,6 +408,8 @@ $(document).ready( function() {
|
||||||
if(data.success) {
|
if(data.success) {
|
||||||
$("#main-clipboard").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=mainclipboard')
|
$("#main-clipboard").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=mainclipboard')
|
||||||
$("#menu-clipboard div").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=menuclipboard')
|
$("#menu-clipboard div").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=menuclipboard')
|
||||||
|
$("div.ajax[data-action='navigation']").trigger('update', {});
|
||||||
|
$("div.ajax[data-action='folderList']").trigger('update', {});
|
||||||
noty({
|
noty({
|
||||||
text: attr_msg,
|
text: attr_msg,
|
||||||
type: 'success',
|
type: 'success',
|
||||||
|
@ -442,6 +445,8 @@ $(document).ready( function() {
|
||||||
if(data.success) {
|
if(data.success) {
|
||||||
$("#main-clipboard").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=mainclipboard')
|
$("#main-clipboard").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=mainclipboard')
|
||||||
$("#menu-clipboard div").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=menuclipboard')
|
$("#menu-clipboard div").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=menuclipboard')
|
||||||
|
$("div.ajax[data-action='navigation']").trigger('update', {});
|
||||||
|
$("div.ajax[data-action='folderList']").trigger('update', {});
|
||||||
noty({
|
noty({
|
||||||
text: attr_msg,
|
text: attr_msg,
|
||||||
type: 'success',
|
type: 'success',
|
||||||
|
@ -716,8 +721,7 @@ $(document).ready( function() {
|
||||||
window.history.back();
|
window.history.back();
|
||||||
}); /* }}} */
|
}); /* }}} */
|
||||||
|
|
||||||
$("body").on("blur", "span.editable", function(e) { /* {{{ */
|
$("body").on("blur", "span.editdocname", function(e) { /* {{{ */
|
||||||
console.log($(this).data('document'));
|
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
$.post(seeddms_webroot+"op/op.Ajax.php", { command: "setdocumentname", id: $(this).data('document'), formtoken: $(this).data('formtoken'), name: $(this).text() })
|
$.post(seeddms_webroot+"op/op.Ajax.php", { command: "setdocumentname", id: $(this).data('document'), formtoken: $(this).data('formtoken'), name: $(this).text() })
|
||||||
.done(function( data ) {
|
.done(function( data ) {
|
||||||
|
@ -753,6 +757,8 @@ function onAddClipboard(ev) { /* {{{ */
|
||||||
if(data.success) {
|
if(data.success) {
|
||||||
$("#main-clipboard").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=mainclipboard')
|
$("#main-clipboard").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=mainclipboard')
|
||||||
$("#menu-clipboard div").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=menuclipboard')
|
$("#menu-clipboard div").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=menuclipboard')
|
||||||
|
$("div.ajax[data-action='navigation']").trigger('update', {});
|
||||||
|
$("div.ajax[data-action='folderList']").trigger('update', {});
|
||||||
noty({
|
noty({
|
||||||
text: data.message,
|
text: data.message,
|
||||||
type: 'success',
|
type: 'success',
|
||||||
|
|
|
@ -378,7 +378,11 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
|
||||||
echo " <a class=\"nav-link dropdown-toggle\" data-toggle=\"dropdown\">".$menuitem['label']."</a>\n";
|
echo " <a class=\"nav-link dropdown-toggle\" data-toggle=\"dropdown\">".$menuitem['label']."</a>\n";
|
||||||
echo " <div class=\"dropdown-menu dropdown-menu-left\">\n";
|
echo " <div class=\"dropdown-menu dropdown-menu-left\">\n";
|
||||||
foreach($menuitem['children'] as $submenuitem) {
|
foreach($menuitem['children'] as $submenuitem) {
|
||||||
echo " <a class=\"dropdown-item\" href=\"".$submenuitem['link']."\"".(isset($submenuitem['target']) ? ' target="'.$submenuitem['target'].'"' : '').">".$submenuitem['label']."</a>\n";
|
echo " <a class=\"dropdown-item\" href=\"".$submenuitem['link']."\"".(isset($submenuitem['target']) ? ' target="'.$submenuitem['target'].'"' : '');
|
||||||
|
if(!empty($submenuitem['attributes']))
|
||||||
|
foreach($submenuitem['attributes'] as $attr)
|
||||||
|
echo ' '.$attr[0].'="'.$attr[1].'"';
|
||||||
|
echo ">".$submenuitem['label']."</a>\n";
|
||||||
}
|
}
|
||||||
echo " </div>\n";
|
echo " </div>\n";
|
||||||
} else {
|
} else {
|
||||||
|
@ -472,7 +476,7 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
|
||||||
echo " <a class=\"dropdown-item active\"";
|
echo " <a class=\"dropdown-item active\"";
|
||||||
else
|
else
|
||||||
echo " <a class=\"dropdown-item\"";
|
echo " <a class=\"dropdown-item\"";
|
||||||
echo " href=\"".$this->params['settings']->_httpRoot."op/op.SetLanguage.php?lang=".$currLang."&referer=".$_SERVER["REQUEST_URI"]."\">";
|
echo " href=\"".$this->params['settings']->_httpRoot."op/op.SetLanguage.php?lang=".$currLang."&referer=".urlencode(encryptData($this->params['settings']->_encryptionKey, $_SERVER["REQUEST_URI"]))."\">";
|
||||||
echo getMLText($currLang)."</a>\n";
|
echo getMLText($currLang)."</a>\n";
|
||||||
}
|
}
|
||||||
echo " </div>\n";
|
echo " </div>\n";
|
||||||
|
@ -701,6 +705,7 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
|
||||||
|
|
||||||
private function folderNavigationBar($folder) { /* {{{ */
|
private function folderNavigationBar($folder) { /* {{{ */
|
||||||
$dms = $this->params['dms'];
|
$dms = $this->params['dms'];
|
||||||
|
$session = $this->params['session'];
|
||||||
$enableClipboard = $this->params['enableclipboard'];
|
$enableClipboard = $this->params['enableclipboard'];
|
||||||
$accessobject = $this->params['accessobject'];
|
$accessobject = $this->params['accessobject'];
|
||||||
if (!is_object($folder) || !$folder->isType('folder')) {
|
if (!is_object($folder) || !$folder->isType('folder')) {
|
||||||
|
@ -743,7 +748,10 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
|
||||||
$menuitems['edit_folder_notify'] = array('link'=>$this->params['settings']->_httpRoot."out/out.FolderNotify.php?folderid=". $folderID ."&showtree=". showtree(), 'label'=>getMLText('edit_folder_notify'));
|
$menuitems['edit_folder_notify'] = array('link'=>$this->params['settings']->_httpRoot."out/out.FolderNotify.php?folderid=". $folderID ."&showtree=". showtree(), 'label'=>getMLText('edit_folder_notify'));
|
||||||
}
|
}
|
||||||
if($enableClipboard) {
|
if($enableClipboard) {
|
||||||
$menuitems['add_to_clipboard'] = array('class'=>'addtoclipboard', 'attributes'=>array(['rel', 'F'.$folder->getId()], ['msg', getMLText('splash_added_to_clipboard')], ['title', getMLText("add_to_clipboard")]), 'label'=>getMLText("add_to_clipboard"));
|
if($session->isOnClipboard($folder))
|
||||||
|
$menuitems['remove_from_clipboard'] = array('class'=>'removefromclipboard', 'attributes'=>array(['rel', 'F'.$folder->getId()], ['msg', getMLText('splash_removed_from_clipboard')], ['title', getMLText("remove_from_clipboard")]), 'label'=>getMLText("remove_from_clipboard"));
|
||||||
|
else
|
||||||
|
$menuitems['add_to_clipboard'] = array('class'=>'addtoclipboard', 'attributes'=>array(['rel', 'F'.$folder->getId()], ['msg', getMLText('splash_added_to_clipboard')], ['title', getMLText("add_to_clipboard")]), 'label'=>getMLText("add_to_clipboard"));
|
||||||
}
|
}
|
||||||
if ($this->params['user']->isAdmin() && $this->params['enablefullsearch']) {
|
if ($this->params['user']->isAdmin() && $this->params['enablefullsearch']) {
|
||||||
$menuitems['index_folder'] = array('link'=>$this->params['settings']->_httpRoot."out/out.Indexer.php?folderid=". $folderID."&showtree=".showtree(), 'label'=>getMLText('index_folder'));
|
$menuitems['index_folder'] = array('link'=>$this->params['settings']->_httpRoot."out/out.Indexer.php?folderid=". $folderID."&showtree=".showtree(), 'label'=>getMLText('index_folder'));
|
||||||
|
@ -764,6 +772,7 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
|
|
||||||
private function documentNavigationBar($document) { /* {{{ */
|
private function documentNavigationBar($document) { /* {{{ */
|
||||||
|
$session = $this->params['session'];
|
||||||
$accessobject = $this->params['accessobject'];
|
$accessobject = $this->params['accessobject'];
|
||||||
$enableClipboard = $this->params['enableclipboard'];
|
$enableClipboard = $this->params['enableclipboard'];
|
||||||
$accessMode = $document->getAccessMode($this->params['user']);
|
$accessMode = $document->getAccessMode($this->params['user']);
|
||||||
|
@ -823,7 +832,10 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
|
||||||
$menuitems['edit_document_notify'] = array('link'=>$this->params['settings']->_httpRoot."out/out.DocumentNotify". $docid, 'label'=>getMLText('edit_document_notify'));
|
$menuitems['edit_document_notify'] = array('link'=>$this->params['settings']->_httpRoot."out/out.DocumentNotify". $docid, 'label'=>getMLText('edit_document_notify'));
|
||||||
}
|
}
|
||||||
if($enableClipboard) {
|
if($enableClipboard) {
|
||||||
$menuitems['add_to_clipboard'] = array('class'=>'addtoclipboard', 'attributes'=>array(['rel', 'D'.$document->getId()], ['msg', getMLText('splash_added_to_clipboard')], ['title', getMLText("add_to_clipboard")]), 'label'=>getMLText("add_to_clipboard"));
|
if($session->isOnClipboard($document))
|
||||||
|
$menuitems['remove_from_clipboard'] = array('class'=>'removefromclipboard', 'attributes'=>array(['rel', 'D'.$document->getId()], ['msg', getMLText('splash_removed_from_clipboard')], ['title', getMLText("remove_from_clipboard")]), 'label'=>getMLText("remove_from_clipboard"));
|
||||||
|
else
|
||||||
|
$menuitems['add_to_clipboard'] = array('class'=>'addtoclipboard', 'attributes'=>array(['rel', 'D'.$document->getId()], ['msg', getMLText('splash_added_to_clipboard')], ['title', getMLText("add_to_clipboard")]), 'label'=>getMLText("add_to_clipboard"));
|
||||||
}
|
}
|
||||||
if ($accessobject->check_view_access('TransferDocument')) {
|
if ($accessobject->check_view_access('TransferDocument')) {
|
||||||
$menuitems['transfer_document'] = array('link'=>$this->params['settings']->_httpRoot."out/out.TransferDocument". $docid, 'label'=>getMLText('transfer_document'));
|
$menuitems['transfer_document'] = array('link'=>$this->params['settings']->_httpRoot."out/out.TransferDocument". $docid, 'label'=>getMLText('transfer_document'));
|
||||||
|
@ -1539,12 +1551,12 @@ function getOverallStatusIcon($status) { /* {{{ */
|
||||||
function getModalBox($config) { /* {{{ */
|
function getModalBox($config) { /* {{{ */
|
||||||
$content = '';
|
$content = '';
|
||||||
$content .= '
|
$content .= '
|
||||||
<div class="modal fade" id="'.$config['id'].'" tabindex="-1" role="dialog" aria-labelledby="'.$config['id'].'Label" aria-hidden="true">
|
<div class="modal fade" id="'.$config['id'].'" tabindex="-1" role="dialog" aria-labelledby="'.$config['id'].'Label">
|
||||||
<div class="modal-dialog modal-lg" role="document">
|
<div class="modal-dialog modal-lg" role="document">
|
||||||
<div class="modal-content">
|
<div class="modal-content">
|
||||||
<div class="modal-header">
|
<div class="modal-header">
|
||||||
<h3 id="'.$config['id'].'Label">'.$config['title'].'</h3>
|
<h3 id="'.$config['id'].'Label">'.$config['title'].'</h3>
|
||||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
<button type="button" class="close" data-dismiss="modal">×</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
';
|
';
|
||||||
|
@ -1558,7 +1570,7 @@ function getOverallStatusIcon($status) { /* {{{ */
|
||||||
';
|
';
|
||||||
if($config['buttons']) {
|
if($config['buttons']) {
|
||||||
foreach($config['buttons'] as $button)
|
foreach($config['buttons'] as $button)
|
||||||
$content .= '<button class="btn'.(!empty($button['id']) ? ' btn-primary" id="'.$button['id'].'"': ' btn-secondary" ').' data-dismiss="modal" aria-hidden="true">'.$button['title'].'</button>';
|
$content .= '<button class="btn'.(!empty($button['id']) ? ' btn-primary" id="'.$button['id'].'"': ' btn-secondary" ').' data-dismiss="modal">'.$button['title'].'</button>';
|
||||||
}
|
}
|
||||||
$content .= '
|
$content .= '
|
||||||
</div>
|
</div>
|
||||||
|
@ -2044,6 +2056,15 @@ $(document).ready(function() {
|
||||||
echo self::getAttributeEditField($attrdef, $attribute, $fieldname, $norequire, $namepostfix, $alwaysmultiple);
|
echo self::getAttributeEditField($attrdef, $attribute, $fieldname, $norequire, $namepostfix, $alwaysmultiple);
|
||||||
} /* }}} */
|
} /* }}} */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return html code for an input/select field of an attribute
|
||||||
|
*
|
||||||
|
* The passed attribute ($attribute) can either be an object of type
|
||||||
|
* SeedDMS_Core_Attribute, scalar or an array. A scalar or array is
|
||||||
|
* passed when the method is called to create the search form. In that
|
||||||
|
* case $attribute has the value from the post data after submitting the
|
||||||
|
* search form.
|
||||||
|
*/
|
||||||
function getAttributeEditField($attrdef, $attribute, $fieldname='attributes', $norequire=false, $namepostfix='', $alwaysmultiple=false) { /* {{{ */
|
function getAttributeEditField($attrdef, $attribute, $fieldname='attributes', $norequire=false, $namepostfix='', $alwaysmultiple=false) { /* {{{ */
|
||||||
$dms = $this->params['dms'];
|
$dms = $this->params['dms'];
|
||||||
$attr_id = $fieldname.'_'.$attrdef->getId().($namepostfix ? '_'.$namepostfix : '');
|
$attr_id = $fieldname.'_'.$attrdef->getId().($namepostfix ? '_'.$namepostfix : '');
|
||||||
|
@ -2077,18 +2098,27 @@ $(document).ready(function() {
|
||||||
$content .= "<input type=\"text\" class=\"form-control\" id=\"".$attr_id."\" name=\"".$attr_name."\" value=\"".htmlspecialchars($objvalue)."\"".((!$norequire && $attrdef->getMinValues() > 0) ? ' required="required"' : '')." data-rule-number=\"true\"/>";
|
$content .= "<input type=\"text\" class=\"form-control\" id=\"".$attr_id."\" name=\"".$attr_name."\" value=\"".htmlspecialchars($objvalue)."\"".((!$norequire && $attrdef->getMinValues() > 0) ? ' required="required"' : '')." data-rule-number=\"true\"/>";
|
||||||
break; */
|
break; */
|
||||||
case SeedDMS_Core_AttributeDefinition::type_folder:
|
case SeedDMS_Core_AttributeDefinition::type_folder:
|
||||||
$target = $attribute ? $attribute->getValue() : null;
|
$target = $attribute ? (is_object($attribute) ? $attribute->getValue() : $attribute) : null;
|
||||||
$content .= $this->getFolderChooserHtml("attr".$attrdef->getId(), M_READWRITE, -1, $target, $attr_name, false);
|
$content .= $this->getFolderChooserHtml("attr".$attrdef->getId(), M_READWRITE, -1, $target, $attr_name, false);
|
||||||
break;
|
break;
|
||||||
case SeedDMS_Core_AttributeDefinition::type_document:
|
case SeedDMS_Core_AttributeDefinition::type_document:
|
||||||
$target = $attribute ? $attribute->getValue() : null;
|
$target = $attribute ? (is_object($attribute) ? $attribute->getValue() : $attribute) : null;
|
||||||
$content .= $this->getDocumentChooserHtml("attr".$attrdef->getId(), M_READ, -1, $target, $attr_name);
|
$content .= $this->getDocumentChooserHtml("attr".$attrdef->getId(), M_READ, -1, $target, $attr_name);
|
||||||
break;
|
break;
|
||||||
case SeedDMS_Core_AttributeDefinition::type_user:
|
case SeedDMS_Core_AttributeDefinition::type_user:
|
||||||
$target = $attribute ? $attribute->getValueAsArray() : [];
|
|
||||||
$objvalue = [];
|
$objvalue = [];
|
||||||
foreach($target as $t)
|
if($attribute) {
|
||||||
$objvalue[] = $t->getId();
|
if(is_object($attribute)) {
|
||||||
|
$target = $attribute->getValueAsArray();
|
||||||
|
foreach($target as $t)
|
||||||
|
$objvalue[] = $t->getId();
|
||||||
|
} elseif(is_array($attribute)) {
|
||||||
|
foreach($attribute as $t)
|
||||||
|
$objvalue[] = $t;
|
||||||
|
} else {
|
||||||
|
$objvalue[] = $attribute;
|
||||||
|
}
|
||||||
|
}
|
||||||
$users = $dms->getAllUsers();
|
$users = $dms->getAllUsers();
|
||||||
if($users) {
|
if($users) {
|
||||||
$allowempty = $attrdef->getMinValues() == 0;
|
$allowempty = $attrdef->getMinValues() == 0;
|
||||||
|
@ -2108,10 +2138,19 @@ $(document).ready(function() {
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case SeedDMS_Core_AttributeDefinition::type_group:
|
case SeedDMS_Core_AttributeDefinition::type_group:
|
||||||
$target = $attribute ? $attribute->getValueAsArray() : [];
|
|
||||||
$objvalue = [];
|
$objvalue = [];
|
||||||
foreach($target as $t)
|
if($attribute) {
|
||||||
$objvalue[] = $t->getId();
|
if(is_object($attribute)) {
|
||||||
|
$target = $attribute->getValueAsArray();
|
||||||
|
foreach($target as $t)
|
||||||
|
$objvalue[] = $t->getId();
|
||||||
|
} elseif(is_array($attribute)) {
|
||||||
|
foreach($attribute as $t)
|
||||||
|
$objvalue[] = $t;
|
||||||
|
} else {
|
||||||
|
$objvalue[] = $attribute;
|
||||||
|
}
|
||||||
|
}
|
||||||
$groups = $dms->getAllGroups();
|
$groups = $dms->getAllGroups();
|
||||||
if($groups) {
|
if($groups) {
|
||||||
$allowempty = $attrdef->getMinValues() == 0;
|
$allowempty = $attrdef->getMinValues() == 0;
|
||||||
|
@ -2606,9 +2645,9 @@ $(function() {
|
||||||
*
|
*
|
||||||
* @param string text
|
* @param string text
|
||||||
*/
|
*/
|
||||||
function printInlineEdit($text, $object){ /* {{{ */
|
function printInlineEditDocumentName($text, $object){ /* {{{ */
|
||||||
if(!empty($this->params['settings']->_inlineEditing)) {
|
if(!empty($this->params['settings']->_inlineEditing)) {
|
||||||
echo "<span class=\"editable\" contenteditable=\"true\"";
|
echo "<span class=\"editdocname editable\" contenteditable=\"true\"";
|
||||||
if($object->isType('document'))
|
if($object->isType('document'))
|
||||||
echo " data-document=\"".$object->getId()."\" data-formtoken=\"".createFormKey('setdocumentname')."\"";
|
echo " data-document=\"".$object->getId()."\" data-formtoken=\"".createFormKey('setdocumentname')."\"";
|
||||||
echo ">".$text;
|
echo ">".$text;
|
||||||
|
@ -3251,6 +3290,7 @@ $('body').on('click', '[id^=\"table-row-folder\"] td:nth-child(2)', function(ev)
|
||||||
|
|
||||||
function documentListRowAction($document, $previewer, $skipcont=false, $version=0, $extracontent=array()) { /* {{{ */
|
function documentListRowAction($document, $previewer, $skipcont=false, $version=0, $extracontent=array()) { /* {{{ */
|
||||||
$user = $this->params['user'];
|
$user = $this->params['user'];
|
||||||
|
$session = $this->params['session'];
|
||||||
$enableClipboard = $this->params['enableclipboard'];
|
$enableClipboard = $this->params['enableclipboard'];
|
||||||
$accessop = $this->params['accessobject'];
|
$accessop = $this->params['accessobject'];
|
||||||
$onepage = $this->params['onepage'];
|
$onepage = $this->params['onepage'];
|
||||||
|
@ -3280,7 +3320,10 @@ $('body').on('click', '[id^=\"table-row-folder\"] td:nth-child(2)', function(ev)
|
||||||
$actions['document_access'] = $this->printAccessButton($document, true);
|
$actions['document_access'] = $this->printAccessButton($document, true);
|
||||||
}
|
}
|
||||||
if($enableClipboard) {
|
if($enableClipboard) {
|
||||||
$actions['add_to_clipboard'] = '<a class="addtoclipboard" rel="D'.$docID.'" msg="'.getMLText('splash_added_to_clipboard').'" title="'.getMLText("add_to_clipboard").'"><i class="fa fa-copy"></i></a>';
|
if($session->isOnClipboard($document))
|
||||||
|
$actions['remove_from_clipboard'] = '<a class="removefromclipboard" rel="D'.$docID.'" msg="'.getMLText('splash_removed_from_clipboard').'" title="'.getMLText("remove_from_clipboard").'"><i class="fa fa-copy"></i></a>';
|
||||||
|
else
|
||||||
|
$actions['add_to_clipboard'] = '<a class="addtoclipboard" rel="D'.$docID.'" msg="'.getMLText('splash_added_to_clipboard').'" title="'.getMLText("add_to_clipboard").'"><i class="fa fa-copy"></i></a>';
|
||||||
}
|
}
|
||||||
if($onepage)
|
if($onepage)
|
||||||
$actions['view_document'] = '<a href="'.$this->params['settings']->_httpRoot.'out/out.ViewDocument.php?documentid='.$docID.'" title="'.getMLText("view_document").'"><i class="fa fa-eye"></i></a>';
|
$actions['view_document'] = '<a href="'.$this->params['settings']->_httpRoot.'out/out.ViewDocument.php?documentid='.$docID.'" title="'.getMLText("view_document").'"><i class="fa fa-eye"></i></a>';
|
||||||
|
@ -3351,7 +3394,7 @@ $('body').on('click', '[id^=\"table-row-folder\"] td:nth-child(2)', function(ev)
|
||||||
$extracontent = array_merge($extracontent, $ec);
|
$extracontent = array_merge($extracontent, $ec);
|
||||||
|
|
||||||
$content .= "<td>";
|
$content .= "<td>";
|
||||||
if (file_exists($dms->contentDir . $latestContent->getPath())) {
|
if ($latestContent->exists()) {
|
||||||
$previewhtml = $this->callHook('documentListPreview', $previewer, $document, $latestContent);
|
$previewhtml = $this->callHook('documentListPreview', $previewer, $document, $latestContent);
|
||||||
if(is_string($previewhtml))
|
if(is_string($previewhtml))
|
||||||
$content .= $previewhtml;
|
$content .= $previewhtml;
|
||||||
|
@ -3421,7 +3464,7 @@ $('body').on('click', '[id^=\"table-row-folder\"] td:nth-child(2)', function(ev)
|
||||||
if($totalreceipts) {
|
if($totalreceipts) {
|
||||||
$content .= "
|
$content .= "
|
||||||
<div class=\"progress\">
|
<div class=\"progress\">
|
||||||
<div class=\"progress-bar bar bar-success bg-success d-block\" role=\"progress-bar\" style=\"width: ".round($rstat['1']/$totalreceipts*100)."%;\">".($rstat['1'] ? $rstat['1']."/".$totalreceipts : '').($allcomments['1'] ? " ".$this->printPopupBox('<i class="fa fa-comment"></i>', implode('<br />', formatComment($allcomments['1'])), true) : "")."</div>
|
<div class=\"progress-bar bar bar-success bg-success\" role=\"progress-bar\" style=\"width: ".round($rstat['1']/$totalreceipts*100)."%;\">".($rstat['1'] ? $rstat['1']."/".$totalreceipts : '').($allcomments['1'] ? " ".$this->printPopupBox('<i class="fa fa-comment"></i>', implode('<br />', formatComment($allcomments['1'])), true) : "")."</div>
|
||||||
<div class=\"progress-bar bar bar-danger bg-danger\" style=\"width: ".round($rstat['-1']/$totalreceipts*100)."%;\">".($rstat['-1'] ? $rstat['-1']."/".$totalreceipts : '').($allcomments['-1'] ? " ".$this->printPopupBox('<i class="fa fa-comment"></i>', implode('<br />', formatComment($allcomments['-1'])), true) : "")."</div>
|
<div class=\"progress-bar bar bar-danger bg-danger\" style=\"width: ".round($rstat['-1']/$totalreceipts*100)."%;\">".($rstat['-1'] ? $rstat['-1']."/".$totalreceipts : '').($allcomments['-1'] ? " ".$this->printPopupBox('<i class="fa fa-comment"></i>', implode('<br />', formatComment($allcomments['-1'])), true) : "")."</div>
|
||||||
</div>";
|
</div>";
|
||||||
}
|
}
|
||||||
|
@ -3538,6 +3581,7 @@ $('body').on('click', '[id^=\"table-row-folder\"] td:nth-child(2)', function(ev)
|
||||||
function folderListRowAction($subFolder, $skipcont=false, $extracontent=array()) { /* {{{ */
|
function folderListRowAction($subFolder, $skipcont=false, $extracontent=array()) { /* {{{ */
|
||||||
$dms = $this->params['dms'];
|
$dms = $this->params['dms'];
|
||||||
$user = $this->params['user'];
|
$user = $this->params['user'];
|
||||||
|
$session = $this->params['session'];
|
||||||
// $folder = $this->params['folder'];
|
// $folder = $this->params['folder'];
|
||||||
$showtree = $this->params['showtree'];
|
$showtree = $this->params['showtree'];
|
||||||
$enableRecursiveCount = $this->params['enableRecursiveCount'];
|
$enableRecursiveCount = $this->params['enableRecursiveCount'];
|
||||||
|
@ -3570,7 +3614,10 @@ $('body').on('click', '[id^=\"table-row-folder\"] td:nth-child(2)', function(ev)
|
||||||
$actions['folder_access'] = $this->printAccessButton($subFolder, true);
|
$actions['folder_access'] = $this->printAccessButton($subFolder, true);
|
||||||
}
|
}
|
||||||
if($enableClipboard) {
|
if($enableClipboard) {
|
||||||
$actions['add_to_clipboard'] = '<a class="addtoclipboard" rel="F'.$subFolder->getID().'" msg="'.getMLText('splash_added_to_clipboard').'" title="'.getMLText("add_to_clipboard").'"><i class="fa fa-copy"></i></a>';
|
if($session->isOnClipboard($subFolder))
|
||||||
|
$actions['add_to_clipboard'] = '<a class="removefromclipboard" rel="F'.$subFolder->getID().'" msg="'.getMLText('splash_removed_from_clipboard').'" title="'.getMLText("remove_from_clipboard").'"><i class="fa fa-copy"></i></a>';
|
||||||
|
else
|
||||||
|
$actions['add_to_clipboard'] = '<a class="addtoclipboard" rel="F'.$subFolder->getID().'" msg="'.getMLText('splash_added_to_clipboard').'" title="'.getMLText("add_to_clipboard").'"><i class="fa fa-copy"></i></a>';
|
||||||
}
|
}
|
||||||
if($onepage)
|
if($onepage)
|
||||||
$actions['view_folder'] = '<a href="'.$this->params['settings']->_httpRoot.'out/out.ViewFolder.php?folderid='.$subFolder->getID().'" title="'.getMLText("view_folder").'"><i class="fa fa-eye"></i></a>';
|
$actions['view_folder'] = '<a href="'.$this->params['settings']->_httpRoot.'out/out.ViewFolder.php?folderid='.$subFolder->getID().'" title="'.getMLText("view_folder").'"><i class="fa fa-eye"></i></a>';
|
||||||
|
|
|
@ -396,7 +396,7 @@ $(document).ready( function() {
|
||||||
$('body').on('click', '[data-toggle="modal"]', function(ev){ /* {{{ */
|
$('body').on('click', '[data-toggle="modal"]', function(ev){ /* {{{ */
|
||||||
ev.preventDefault();
|
ev.preventDefault();
|
||||||
if($(this).data("remote"))
|
if($(this).data("remote"))
|
||||||
$($(this).data("target")+' .modal-body').load($(this).data("remote"));
|
$($(this).data("target")+' .modal-body').load($(this).data("remote"), function() {setTimeout(function(){initMost();}, 500);});
|
||||||
/* Also set the title */
|
/* Also set the title */
|
||||||
if($(this).data("modal-title"))
|
if($(this).data("modal-title"))
|
||||||
$($(this).data("target")+' .modal-header h3').html($(this).data("modal-title"));
|
$($(this).data("target")+' .modal-header h3').html($(this).data("modal-title"));
|
||||||
|
@ -456,6 +456,8 @@ $(document).ready( function() {
|
||||||
if(data.success) {
|
if(data.success) {
|
||||||
$("#main-clipboard").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=mainclipboard')
|
$("#main-clipboard").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=mainclipboard')
|
||||||
$("#menu-clipboard div").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=menuclipboard')
|
$("#menu-clipboard div").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=menuclipboard')
|
||||||
|
$("div.ajax[data-action='navigation']").trigger('update', {});
|
||||||
|
$("div.ajax[data-action='folderList']").trigger('update', {});
|
||||||
noty({
|
noty({
|
||||||
text: attr_msg,
|
text: attr_msg,
|
||||||
type: 'success',
|
type: 'success',
|
||||||
|
@ -491,6 +493,8 @@ $(document).ready( function() {
|
||||||
if(data.success) {
|
if(data.success) {
|
||||||
$("#main-clipboard").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=mainclipboard')
|
$("#main-clipboard").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=mainclipboard')
|
||||||
$("#menu-clipboard div").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=menuclipboard')
|
$("#menu-clipboard div").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=menuclipboard')
|
||||||
|
$("div.ajax[data-action='navigation']").trigger('update', {});
|
||||||
|
$("div.ajax[data-action='folderList']").trigger('update', {});
|
||||||
noty({
|
noty({
|
||||||
text: attr_msg,
|
text: attr_msg,
|
||||||
type: 'success',
|
type: 'success',
|
||||||
|
@ -765,8 +769,7 @@ $(document).ready( function() {
|
||||||
window.history.back();
|
window.history.back();
|
||||||
}); /* }}} */
|
}); /* }}} */
|
||||||
|
|
||||||
$("body").on("blur", "span.editable", function(e) { /* {{{ */
|
$("body").on("blur", "span.editdocname", function(e) { /* {{{ */
|
||||||
console.log($(this).data('document'));
|
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
$.post(seeddms_webroot+"op/op.Ajax.php", { command: "setdocumentname", id: $(this).data('document'), formtoken: $(this).data('formtoken'), name: $(this).text() })
|
$.post(seeddms_webroot+"op/op.Ajax.php", { command: "setdocumentname", id: $(this).data('document'), formtoken: $(this).data('formtoken'), name: $(this).text() })
|
||||||
.done(function( data ) {
|
.done(function( data ) {
|
||||||
|
@ -802,6 +805,8 @@ function onAddClipboard(ev) { /* {{{ */
|
||||||
if(data.success) {
|
if(data.success) {
|
||||||
$("#main-clipboard").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=mainclipboard')
|
$("#main-clipboard").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=mainclipboard')
|
||||||
$("#menu-clipboard div").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=menuclipboard')
|
$("#menu-clipboard div").html('Loading').load(seeddms_webroot+'out/out.Clipboard.php?action=menuclipboard')
|
||||||
|
$("div.ajax[data-action='navigation']").trigger('update', {});
|
||||||
|
$("div.ajax[data-action='folderList']").trigger('update', {});
|
||||||
noty({
|
noty({
|
||||||
text: data.message,
|
text: data.message,
|
||||||
type: 'success',
|
type: 'success',
|
||||||
|
|
Loading…
Reference in New Issue
Block a user