Merge branch 'seeddms-5.1.x'

This commit is contained in:
Uwe Steinmann 2019-06-13 11:23:19 +02:00
commit 023c2c58f1
39 changed files with 334 additions and 88 deletions

View File

@ -1,3 +1,15 @@
--------------------------------------------------------------------------------
Changes in version 5.1.11
--------------------------------------------------------------------------------
- fix for CVE-2019-12744, add .htaccess file to data directory, better
documentation for installing seeddms
- fix for CVE-2019-12745, propperly escape strings used in Select2 js library
- do not show attributes in search results in extra column anymore
- fix setting language during login (Closes #437)
- fix indexing documents even if no preIndexDocument hook is set (Closes #437)
- fix moving documents on the clipboard into the current folder
- new hook 'footNote' in class Bootstrap
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
Changes in version 5.1.10 Changes in version 5.1.10
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
@ -46,7 +58,7 @@
- catch error when updating a document fails (Closes #410) - catch error when updating a document fails (Closes #410)
- use always 'Send from' address as Return-Path when set, only if not set the - use always 'Send from' address as Return-Path when set, only if not set the
logged in user's email will be used (Closes #418) logged in user's email will be used (Closes #418)
- show the debug output when sendind a test mail - show the debug output when sending a test mail
- add hooks add hooks folderListPreContent and folderListPostContent in - add hooks add hooks folderListPreContent and folderListPostContent in
class.ViewFolder.php class.ViewFolder.php
- do not redirect to ForcePassword page if out.Logout.php was opened. This - do not redirect to ForcePassword page if out.Logout.php was opened. This

View File

@ -376,7 +376,7 @@ class SeedDMS_Core_DMS {
$this->callbacks = array(); $this->callbacks = array();
$this->version = '@package_version@'; $this->version = '@package_version@';
if($this->version[0] == '@') if($this->version[0] == '@')
$this->version = '5.1.10'; $this->version = '5.1.11';
} /* }}} */ } /* }}} */
/** /**

View File

@ -12,11 +12,11 @@
<email>uwe@steinmann.cx</email> <email>uwe@steinmann.cx</email>
<active>yes</active> <active>yes</active>
</lead> </lead>
<date>2018-11-23</date> <date>2019-05-03</date>
<time>07:31:17</time> <time>07:31:17</time>
<version> <version>
<release>5.1.10</release> <release>5.1.11</release>
<api>5.1.10</api> <api>5.1.11</api>
</version> </version>
<stability> <stability>
<release>stable</release> <release>stable</release>
@ -24,8 +24,7 @@
</stability> </stability>
<license uri="http://opensource.org/licenses/gpl-license">GPL License</license> <license uri="http://opensource.org/licenses/gpl-license">GPL License</license>
<notes> <notes>
fix php warning if workflow state doesn' have next transition ???
add method SeedDMS_Core_DatabaseAccess::setLogFp()
</notes> </notes>
<contents> <contents>
<dir baseinstalldir="SeedDMS" name="/"> <dir baseinstalldir="SeedDMS" name="/">
@ -1635,5 +1634,22 @@ new optional parameter $listguest for SeedDMS_Core_Document::getReadAccessList()
remove deprecated methods SeedDMS_Core_Document::convert(), SeedDMS_Core_Document::wasConverted(), SeedDMS_Core_Document::viewOnline(), SeedDMS_Core_Document::getUrl() remove deprecated methods SeedDMS_Core_Document::convert(), SeedDMS_Core_Document::wasConverted(), SeedDMS_Core_Document::viewOnline(), SeedDMS_Core_Document::getUrl()
</notes> </notes>
</release> </release>
<release>
<date>2019-04-04</date>
<time>07:31:17</time>
<version>
<release>5.1.10</release>
<api>5.1.10</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<license uri="http://opensource.org/licenses/gpl-license">GPL License</license>
<notes>
fix php warning if workflow state doesn' have next transition
add method SeedDMS_Core_DatabaseAccess::setLogFp()
</notes>
</release>
</changelog> </changelog>
</package> </package>

View File

@ -151,11 +151,9 @@ class SeedDMS_Controller_Login extends SeedDMS_Controller_Common {
$user->clearLoginFailures(); $user->clearLoginFailures();
// Capture the user's language and theme settings. // Capture the user's language and theme settings.
if (isset($_REQUEST["lang"]) && strlen($_REQUEST["lang"])>0 && is_numeric(array_search($_REQUEST["lang"],getLanguages())) ) { if ($lang) {
$lang = $_REQUEST["lang"];
$user->setLanguage($lang); $user->setLanguage($lang);
} } else {
else {
$lang = $user->getLanguage(); $lang = $user->getLanguage();
if (strlen($lang)==0) { if (strlen($lang)==0) {
$lang = $settings->_language; $lang = $settings->_language;

View File

@ -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 5.4 and MySQL 5 or higher installed. SeedDMS Make sure you have PHP 7.x 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 5.4 1. A web server with at least php 7.0
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` or `pdo_sqlite`, 3. The php installation must have support for `pdo_mysql` or `pdo_sqlite`,
`php_gd2`, `php_mbstring` `php_gd2`, `php_mbstring`
@ -36,24 +36,74 @@ QUICKSTART
=========== ===========
The fastes way to get SeedDMS running is by unpacking the archive The fastes way to get SeedDMS running is by unpacking the archive
`seeddms-quickstart-x.y.z.tar.gz` into your webservers document root. `seeddms-quickstart-x.y.z.tar.gz` on your webserver.
Let's assume you use seeddms-quickstart-5.1.10.tar.gz.
It will create a new directory `seeddms51x` containing everything you It will create a new directory `seeddms51x` containing everything you
need to run SeedDMS with sqlite3. Make sure that the subdіrectory need to run SeedDMS with sqlite3.
`seeddms51x/data` Either let the document root of your web server point to the directory `www`
and the configuration file `seeddms51/www/conf/settings.xml` is writeable below `seeddms51x` or add an alias. For apache this could be like
by your web server. All other directories must just be readable by your
web server. In the next step you need to adjust
the configuration file in `seeddms51/www/conf/settings.xml`. If you
are not afraid of xml files, then open it in your favorite text editor
and search for `/home/wwww-data`. Replace that part in any path found
with your document root. Alternatively, you can open the installer
with a browser at http://your-domain/seeddms51x/install/
It will first ask to unlock the installer by creating a file
`ENABLE_INSTALL_TOOL` in the diretory `seeddms51/www/conf/`. Change all
paths by replacing `/home/wwww-data` with your document root. Once done,
save it, remove the file `ENABLE_INSTALL_TOOL` and point your browser to
http://your-domain/seeddms51x/.
Alias /seeddms51x /<some directory>/seeddms51x/www
Do not set the DocumentRoot to
the `seeddms51x` directory, because this will allow anybody to access
your `data` and `conf` directory. This is a major security risk.
Make sure that the subdіrectory `seeddms51x/data` and the configuration file
`seeddms51/conf/settings.xml` is writeable by your web server. All other
directories must just be readable by your web server.
In the next step you need to adjust the configuration file in
`seeddms51x/conf/settings.xml`. Open the file in your favorite text editor
and search for `/home/wwww-data`. Replace that part in any path found with your
base directory where you placed seeddms51x (e.g. /var/www/html/seeddms51x).
Alternatively, you can open the installer with a browser at
http://your-domain/install (if the document root points to
`seeddms51x/www`) or http://your-domain/seeddms51x/install/ (if you have
set an alias like described above).
It will first ask to unlock the installer by creating a file
`ENABLE_INSTALL_TOOL` in the diretory `seeddms51x/conf/`. Change all paths by
replacing `/home/wwww-data` with your base directory where you put seeddms51x.
Set httpRoot to '/' (if the document root points to`seeddms51x/www`) or
'/seeddms51x' (if you have set an alias like described above).
Once your configuration is done,
save it, remove the file `ENABLE_INSTALL_TOOL` and point your browser to
http://your-domain/ or http://your-domain/seeddms51x.
SECURITY CONSIDERATIONS
=======================
A crucial point when setting up SeedDMS is the propper placement of the
data directory. Do not place it below your document root as
configured in your web server! If you do so, there is good change that
attackers can easily access your documents with a regular browser.
If you can't place the data directory outside of document root, that either
restrict access to it with an appropriate .htaccess file or/and change
the `contentOffsetDir` in `settings.xml` to something random, but ensure it
is still a valid directory name. If you change contentOffsetDir then
do not forget to move `data/1048576` to `data/<your random name>`.
Example for .htaccess file in data directory
----------------------------------------------
```
# line below if for Apache 2.4
<ifModule mod_authz_core.c>
Require all denied
</ifModule>
# line below if for Apache 2.2
<ifModule !mod_authz_core.c>
deny from all
Satisfy All
</ifModule>
# section for Apache 2.2 and 2.4
<ifModule mod_autoindex.c>
IndexIgnore *
</ifModule>
```
UPDATING FROM A PREVIOUS VERSION OR SEEDDMS UPDATING FROM A PREVIOUS VERSION OR SEEDDMS
============================================= =============================================

View File

@ -20,7 +20,7 @@
class SeedDMS_Version { class SeedDMS_Version {
public $_number = "5.1.10"; public $_number = "5.1.11";
private $_string = "SeedDMS"; private $_string = "SeedDMS";
function __construct() { function __construct() {

View File

@ -927,6 +927,7 @@ URL: [url]',
'reception_noaction' => '', 'reception_noaction' => '',
'reception_rejected' => '', 'reception_rejected' => '',
'recipients' => '', 'recipients' => '',
'recipient_already_removed' => '',
'redraw' => '', 'redraw' => '',
'refresh' => 'اعادة تحميل', 'refresh' => 'اعادة تحميل',
'rejected' => 'مرفوض', 'rejected' => 'مرفوض',
@ -1264,6 +1265,8 @@ URL: [url]',
'settings_enableOwnerRevApp_desc' => '', 'settings_enableOwnerRevApp_desc' => '',
'settings_enablePasswordForgotten' => '', 'settings_enablePasswordForgotten' => '',
'settings_enablePasswordForgotten_desc' => '', 'settings_enablePasswordForgotten_desc' => '',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => '', 'settings_enableReceiptWorkflow' => '',
'settings_enableReceiptWorkflow_desc' => '', 'settings_enableReceiptWorkflow_desc' => '',
'settings_enableRecursiveCount' => '', 'settings_enableRecursiveCount' => '',

View File

@ -826,6 +826,7 @@ $text = array(
'reception_noaction' => '', 'reception_noaction' => '',
'reception_rejected' => '', 'reception_rejected' => '',
'recipients' => '', 'recipients' => '',
'recipient_already_removed' => '',
'redraw' => '', 'redraw' => '',
'refresh' => 'Обнови', 'refresh' => 'Обнови',
'rejected' => 'Отказан', 'rejected' => 'Отказан',
@ -1127,6 +1128,8 @@ $text = array(
'settings_enableOwnerRevApp_desc' => '', 'settings_enableOwnerRevApp_desc' => '',
'settings_enablePasswordForgotten' => 'Включи възстанавяване на парола', 'settings_enablePasswordForgotten' => 'Включи възстанавяване на парола',
'settings_enablePasswordForgotten_desc' => 'Ако е включено, разрешава на потребителите да си възстанавяват паролата на email.', 'settings_enablePasswordForgotten_desc' => 'Ако е включено, разрешава на потребителите да си възстанавяват паролата на email.',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => '', 'settings_enableReceiptWorkflow' => '',
'settings_enableReceiptWorkflow_desc' => '', 'settings_enableReceiptWorkflow_desc' => '',
'settings_enableRecursiveCount' => '', 'settings_enableRecursiveCount' => '',

View File

@ -831,6 +831,7 @@ URL: [url]',
'reception_noaction' => '', 'reception_noaction' => '',
'reception_rejected' => '', 'reception_rejected' => '',
'recipients' => '', 'recipients' => '',
'recipient_already_removed' => '',
'redraw' => '', 'redraw' => '',
'refresh' => 'Refresh', 'refresh' => 'Refresh',
'rejected' => 'Rebutjat', 'rejected' => 'Rebutjat',
@ -1132,6 +1133,8 @@ URL: [url]',
'settings_enableOwnerRevApp_desc' => '', 'settings_enableOwnerRevApp_desc' => '',
'settings_enablePasswordForgotten' => '', 'settings_enablePasswordForgotten' => '',
'settings_enablePasswordForgotten_desc' => '', 'settings_enablePasswordForgotten_desc' => '',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => '', 'settings_enableReceiptWorkflow' => '',
'settings_enableReceiptWorkflow_desc' => '', 'settings_enableReceiptWorkflow_desc' => '',
'settings_enableRecursiveCount' => '', 'settings_enableRecursiveCount' => '',

View File

@ -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 (1521), kreml (579) // Translators: Admin (1523), kreml (579)
$text = array( $text = array(
'2_factor_auth' => 'dvoufaktorové ověření', '2_factor_auth' => 'dvoufaktorové ověření',
@ -980,6 +980,7 @@ URL: [url]',
'reception_noaction' => 'Žádná akce', 'reception_noaction' => 'Žádná akce',
'reception_rejected' => 'Přijetí odmítnuto', 'reception_rejected' => 'Přijetí odmítnuto',
'recipients' => 'Příjemci', 'recipients' => 'Příjemci',
'recipient_already_removed' => '',
'redraw' => 'Překreslit', 'redraw' => 'Překreslit',
'refresh' => 'Obnovit', 'refresh' => 'Obnovit',
'rejected' => 'Odmítnuto', 'rejected' => 'Odmítnuto',
@ -1343,6 +1344,8 @@ Jméno: [username]
'settings_enableOwnerRevApp_desc' => 'Povolte, pokud chcete, aby byl vlastník dokumentu uveden jako posuzovatel/schvalovatel a pro přechody workflow.', 'settings_enableOwnerRevApp_desc' => 'Povolte, pokud chcete, aby byl vlastník dokumentu uveden jako posuzovatel/schvalovatel a pro přechody workflow.',
'settings_enablePasswordForgotten' => 'Povolit zaslání zapomenutého hesla', 'settings_enablePasswordForgotten' => 'Povolit zaslání zapomenutého hesla',
'settings_enablePasswordForgotten_desc' => 'Chcete-li povolit uživateli nastavit nové heslo a poslat ho e-mailem, zaškrtněte tuto možnost.', 'settings_enablePasswordForgotten_desc' => 'Chcete-li povolit uživateli nastavit nové heslo a poslat ho e-mailem, zaškrtněte tuto možnost.',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => 'Povolit potvrzení příjmu dokumentů', 'settings_enableReceiptWorkflow' => 'Povolit potvrzení příjmu dokumentů',
'settings_enableReceiptWorkflow_desc' => 'Povolte, pro spuštění workflow při potvrzení příjmu dokumentu.', 'settings_enableReceiptWorkflow_desc' => 'Povolte, pro spuštění workflow při potvrzení příjmu dokumentu.',
'settings_enableRecursiveCount' => 'Povolit rekurzivní počítání dokumentů / složek', 'settings_enableRecursiveCount' => 'Povolit rekurzivní počítání dokumentů / složek',
@ -1373,8 +1376,8 @@ Jméno: [username]
'settings_enableVersionModification_desc' => 'Povolit / zakázat úpravu verze dokumentu běžnému uživateli po té, co byla verze nahrána. Administrátor může vždy změnit verzi po nahrání.', 'settings_enableVersionModification_desc' => 'Povolit / zakázat úpravu verze dokumentu běžnému uživateli po té, co byla verze nahrána. Administrátor může vždy změnit verzi po nahrání.',
'settings_enableWebdavReplaceDoc' => 'Nahradit dokument při ukládání', 'settings_enableWebdavReplaceDoc' => 'Nahradit dokument při ukládání',
'settings_enableWebdavReplaceDoc_desc' => 'Je-li tato možnost povolena, uložení nové verze dokumentu nahrazuje starý dokument namísto vytvoření nové verze. Platí to pouze tehdy, pokud se uživatel, typ mozku a název souboru rovnají poslední verzi. To může být užitečné, když aplikace automaticky ukládají dokument v pevných intervalech.', 'settings_enableWebdavReplaceDoc_desc' => 'Je-li tato možnost povolena, uložení nové verze dokumentu nahrazuje starý dokument namísto vytvoření nové verze. Platí to pouze tehdy, pokud se uživatel, typ mozku a název souboru rovnají poslední verzi. To může být užitečné, když aplikace automaticky ukládají dokument v pevných intervalech.',
'settings_enableXsendfile' => '', 'settings_enableXsendfile' => 'Použij modul apache xsendfile',
'settings_enableXsendfile_desc' => '', 'settings_enableXsendfile_desc' => 'Pokud je tato volba aktivní a modul apache xsendfile je nainstalován, tento bude použit pro doručování obrázků.',
'settings_encryptionKey' => 'Šifrovací klíč', 'settings_encryptionKey' => 'Šifrovací klíč',
'settings_encryptionKey_desc' => 'Tento řetězec se používá k vytvoření jedinečného identifikátoru, který je přidán jako skryté pole formuláře, aby se zabránilo útokům CSRF.', 'settings_encryptionKey_desc' => 'Tento řetězec se používá k vytvoření jedinečného identifikátoru, který je přidán jako skryté pole formuláře, aby se zabránilo útokům CSRF.',
'settings_error' => 'Chyba', 'settings_error' => 'Chyba',

View File

@ -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 (2652), dgrutsch (22) // Translators: Admin (2654), dgrutsch (22)
$text = array( $text = array(
'2_factor_auth' => '2-Faktor Authentifizierung', '2_factor_auth' => '2-Faktor Authentifizierung',
@ -982,6 +982,7 @@ URL: [url]',
'reception_noaction' => 'Keine Aktion', 'reception_noaction' => 'Keine Aktion',
'reception_rejected' => 'Empfang abgelehnt', 'reception_rejected' => 'Empfang abgelehnt',
'recipients' => 'Empfänger', 'recipients' => 'Empfänger',
'recipient_already_removed' => '',
'redraw' => 'Neu zeichnen', 'redraw' => 'Neu zeichnen',
'refresh' => 'Aktualisieren', 'refresh' => 'Aktualisieren',
'rejected' => 'abgelehnt', 'rejected' => 'abgelehnt',
@ -1353,6 +1354,8 @@ Name: [username]
'settings_enableOwnerRevApp_desc' => 'Anwählen, um den Besitzer eines Dokuments in der Liste der Prüfer/Freigeber und für Workflow-Aktionen auswählbar zu machen.', 'settings_enableOwnerRevApp_desc' => 'Anwählen, um den Besitzer eines Dokuments in der Liste der Prüfer/Freigeber und für Workflow-Aktionen auswählbar zu machen.',
'settings_enablePasswordForgotten' => 'Passwort-Vergessen Funktion einschalten', 'settings_enablePasswordForgotten' => 'Passwort-Vergessen Funktion einschalten',
'settings_enablePasswordForgotten_desc' => 'Setzen Sie diese Option, wenn Benutzer ein neues Password per E-Mail anfordern dürfen.', 'settings_enablePasswordForgotten_desc' => 'Setzen Sie diese Option, wenn Benutzer ein neues Password per E-Mail anfordern dürfen.',
'settings_enableReceiptReject' => 'Erlaube Ablehnung einer Empfangsbestätgung',
'settings_enableReceiptReject_desc' => 'Amwählen, um Empfangsbestätigungen abzulehnen.',
'settings_enableReceiptWorkflow' => 'Ermögliche Bestätigung des Dokumentenempfang', 'settings_enableReceiptWorkflow' => 'Ermögliche Bestätigung des Dokumentenempfang',
'settings_enableReceiptWorkflow_desc' => 'Anwählen, um den Workflow zur Kenntnisnahme von Dokumenten einzuschalten', 'settings_enableReceiptWorkflow_desc' => 'Anwählen, um den Workflow zur Kenntnisnahme von Dokumenten einzuschalten',
'settings_enableRecursiveCount' => 'Rekursive Dokumenten-/Ordner-Zählung', 'settings_enableRecursiveCount' => 'Rekursive Dokumenten-/Ordner-Zählung',

View File

@ -837,6 +837,7 @@ URL: [url]',
'reception_noaction' => '', 'reception_noaction' => '',
'reception_rejected' => '', 'reception_rejected' => '',
'recipients' => '', 'recipients' => '',
'recipient_already_removed' => '',
'redraw' => '', 'redraw' => '',
'refresh' => '', 'refresh' => '',
'rejected' => '', 'rejected' => '',
@ -1138,6 +1139,8 @@ URL: [url]',
'settings_enableOwnerRevApp_desc' => '', 'settings_enableOwnerRevApp_desc' => '',
'settings_enablePasswordForgotten' => '', 'settings_enablePasswordForgotten' => '',
'settings_enablePasswordForgotten_desc' => '', 'settings_enablePasswordForgotten_desc' => '',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => '', 'settings_enableReceiptWorkflow' => '',
'settings_enableReceiptWorkflow_desc' => '', 'settings_enableReceiptWorkflow_desc' => '',
'settings_enableRecursiveCount' => '', 'settings_enableRecursiveCount' => '',

View File

@ -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 (1769), archonwang (3), dgrutsch (9), netixw (14) // Translators: Admin (1773), archonwang (3), dgrutsch (9), netixw (14)
$text = array( $text = array(
'2_factor_auth' => '2-factor authentication', '2_factor_auth' => '2-factor authentication',
@ -984,6 +984,7 @@ URL: [url]',
'reception_noaction' => 'No action', 'reception_noaction' => 'No action',
'reception_rejected' => 'Reception rejected', 'reception_rejected' => 'Reception rejected',
'recipients' => 'Recipients', 'recipients' => 'Recipients',
'recipient_already_removed' => 'Recipient has already been removed or aknowledged recepiton.',
'redraw' => 'Redraw', 'redraw' => 'Redraw',
'refresh' => 'Refresh', 'refresh' => 'Refresh',
'rejected' => 'Rejected', 'rejected' => 'Rejected',
@ -1348,12 +1349,14 @@ Name: [username]
'settings_enableOwnerRevApp_desc' => 'Enable this if you want the owner of a document to be listed as reviewers/approvers and for workflow transitions.', 'settings_enableOwnerRevApp_desc' => 'Enable this if you want the owner of a document to be listed as reviewers/approvers and for workflow transitions.',
'settings_enablePasswordForgotten' => 'Enable Password forgotten', 'settings_enablePasswordForgotten' => 'Enable Password forgotten',
'settings_enablePasswordForgotten_desc' => 'If you want to allow user to set a new password and send it by mail, check this option.', 'settings_enablePasswordForgotten_desc' => 'If you want to allow user to set a new password and send it by mail, check this option.',
'settings_enableReceiptReject' => 'Enable rejection of receptions',
'settings_enableReceiptReject_desc' => 'Enable, to turn on the rejection of receptions.',
'settings_enableReceiptWorkflow' => 'Enable acknowledge of document reception', 'settings_enableReceiptWorkflow' => 'Enable acknowledge of document reception',
'settings_enableReceiptWorkflow_desc' => 'Enable, to turn on the workflow to acknowledge document reception.', 'settings_enableReceiptWorkflow_desc' => 'Enable, to turn on the workflow to acknowledge document reception.',
'settings_enableRecursiveCount' => 'Enable recursive document/folder count', 'settings_enableRecursiveCount' => 'Enable recursive document/folder count',
'settings_enableRecursiveCount_desc' => 'If turned on, the number of documents and folders in the folder view will be determined by counting all objects by recursively processing the folders and counting those documents and folders the user is allowed to access.', 'settings_enableRecursiveCount_desc' => 'If turned on, the number of documents and folders in the folder view will be determined by counting all objects by recursively processing the folders and counting those documents and folders the user is allowed to access.',
'settings_enableRevisionOnVoteReject' => 'Reject by one revisor', 'settings_enableRevisionOnVoteReject' => 'Reject by one revisor',
'settings_enableRevisionOnVoteReject_desc' => 'If set the document will be reject if one revisor rejects the document.', 'settings_enableRevisionOnVoteReject_desc' => 'If set the document will be rejected if one revisor rejects the document.',
'settings_enableRevisionWorkflow' => 'Enable revision of documents', 'settings_enableRevisionWorkflow' => 'Enable revision of documents',
'settings_enableRevisionWorkflow_desc' => 'Enable, to be able to run the workflow for revising a document after a given period of time.', 'settings_enableRevisionWorkflow_desc' => 'Enable, to be able to run the workflow for revising a document after a given period of time.',
'settings_enableSelfReceipt' => 'Allow reception of documents for logged in user', 'settings_enableSelfReceipt' => 'Allow reception of documents for logged in user',

View File

@ -942,6 +942,7 @@ Si continua teniendo problemas de acceso, por favor contacte con el administrado
'reception_noaction' => '', 'reception_noaction' => '',
'reception_rejected' => '', 'reception_rejected' => '',
'recipients' => '', 'recipients' => '',
'recipient_already_removed' => '',
'redraw' => '', 'redraw' => '',
'refresh' => 'Actualizar', 'refresh' => 'Actualizar',
'rejected' => 'Rechazado', 'rejected' => 'Rechazado',
@ -1279,6 +1280,8 @@ URL: [url]',
'settings_enableOwnerRevApp_desc' => 'Habilitar esto si quiere que el propietario de un documento sea listado como revisor/aprobador y para las transiciones del flujo de trabajo.', 'settings_enableOwnerRevApp_desc' => 'Habilitar esto si quiere que el propietario de un documento sea listado como revisor/aprobador y para las transiciones del flujo de trabajo.',
'settings_enablePasswordForgotten' => 'Habilitar recordatorio de contraseña', 'settings_enablePasswordForgotten' => 'Habilitar recordatorio de contraseña',
'settings_enablePasswordForgotten_desc' => 'Si quiere permitir a los usuarios fijar una nueva contraseña recibiendo un correo electrónico, active esta opción.', 'settings_enablePasswordForgotten_desc' => 'Si quiere permitir a los usuarios fijar una nueva contraseña recibiendo un correo electrónico, active esta opción.',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => '', 'settings_enableReceiptWorkflow' => '',
'settings_enableReceiptWorkflow_desc' => '', 'settings_enableReceiptWorkflow_desc' => '',
'settings_enableRecursiveCount' => 'Habilitar cuenta de documento/carpeta recursivo', 'settings_enableRecursiveCount' => 'Habilitar cuenta de documento/carpeta recursivo',

View File

@ -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 (1091), jeromerobert (50), lonnnew (9), Oudiceval (725) // Translators: Admin (1091), jeromerobert (50), lonnnew (9), Oudiceval (739)
$text = array( $text = array(
'2_factor_auth' => 'Authentification forte', '2_factor_auth' => 'Authentification forte',
@ -982,6 +982,7 @@ URL : [url]',
'reception_noaction' => 'Aucune action', 'reception_noaction' => 'Aucune action',
'reception_rejected' => 'Réception rejetée', 'reception_rejected' => 'Réception rejetée',
'recipients' => 'Destinataires', 'recipients' => 'Destinataires',
'recipient_already_removed' => '',
'redraw' => 'Redessiner', 'redraw' => 'Redessiner',
'refresh' => 'Actualiser', 'refresh' => 'Actualiser',
'rejected' => 'Rejeté', 'rejected' => 'Rejeté',
@ -1332,6 +1333,8 @@ Nom : [username]
'settings_enableOwnerRevApp_desc' => 'Activer cette option pour ajouter le propriétaire du document à la liste des examinateurs/approbateurs et pour les transitions de workflow.', 'settings_enableOwnerRevApp_desc' => 'Activer cette option pour ajouter le propriétaire du document à la liste des examinateurs/approbateurs et pour les transitions de workflow.',
'settings_enablePasswordForgotten' => 'Activer Mot de passe oublié', 'settings_enablePasswordForgotten' => 'Activer Mot de passe oublié',
'settings_enablePasswordForgotten_desc' => 'Si vous voulez permettre à l\'utilisateur de définir un nouveau mot de passe et l\'envoyer par mail, cochez cette option.', 'settings_enablePasswordForgotten_desc' => 'Si vous voulez permettre à l\'utilisateur de définir un nouveau mot de passe et l\'envoyer par mail, cochez cette option.',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => 'Activer la réception de document', 'settings_enableReceiptWorkflow' => 'Activer la réception de document',
'settings_enableReceiptWorkflow_desc' => 'Activer cette option pour permettre de confirmer la réception de document dans le workflow.', 'settings_enableReceiptWorkflow_desc' => 'Activer cette option pour permettre de confirmer la réception de document dans le workflow.',
'settings_enableRecursiveCount' => 'Décompte récursif des documents/dossiers', 'settings_enableRecursiveCount' => 'Décompte récursif des documents/dossiers',
@ -1521,14 +1524,14 @@ Nom : [username]
'settings_strictFormCheck_desc' => 'Contrôle strict des formulaires. Si cette option est activée, tous les champs du formulaire doivent être saisis. Sinon, la plupart des champs (commentaires et mots-clés) sont facultatifs. Les commentaires sont toujours obligatoires lors de la soumission d\'une vérification ou du changement de statut dun document.', 'settings_strictFormCheck_desc' => 'Contrôle strict des formulaires. Si cette option est activée, tous les champs du formulaire doivent être saisis. Sinon, la plupart des champs (commentaires et mots-clés) sont facultatifs. Les commentaires sont toujours obligatoires lors de la soumission d\'une vérification ou du changement de statut dun document.',
'settings_suggestionvalue' => 'Valeur suggérée', 'settings_suggestionvalue' => 'Valeur suggérée',
'settings_System' => 'Système', 'settings_System' => 'Système',
'settings_tasksInMenu' => '', 'settings_tasksInMenu' => 'Tâches sélectionnées',
'settings_tasksInMenu_approval' => '', 'settings_tasksInMenu_approval' => 'Approbations',
'settings_tasksInMenu_desc' => '', 'settings_tasksInMenu_desc' => 'Sélectionnez les tâches à comptabiliser. Si aucune nest sélectionnée, toutes les tâches seront comptabilisées.',
'settings_tasksInMenu_needscorrection' => '', 'settings_tasksInMenu_needscorrection' => 'Nécessitant une correction',
'settings_tasksInMenu_receipt' => '', 'settings_tasksInMenu_receipt' => 'Réceptions',
'settings_tasksInMenu_review' => '', 'settings_tasksInMenu_review' => 'Vérifications',
'settings_tasksInMenu_revision' => '', 'settings_tasksInMenu_revision' => 'Révisions',
'settings_tasksInMenu_workflow' => '', 'settings_tasksInMenu_workflow' => 'Workflow',
'settings_theme' => 'Thème par défaut', 'settings_theme' => 'Thème par défaut',
'settings_theme_desc' => 'Thème par défaut(nom d\'un sous-répertoire du répertoire "styles")', 'settings_theme_desc' => 'Thème par défaut(nom d\'un sous-répertoire du répertoire "styles")',
'settings_titleDisplayHack' => 'Title Display Hack', 'settings_titleDisplayHack' => 'Title Display Hack',
@ -1587,15 +1590,15 @@ Nom : [username]
'splash_edit_event' => 'Événement modifié', 'splash_edit_event' => 'Événement modifié',
'splash_edit_group' => 'Groupe modifié', 'splash_edit_group' => 'Groupe modifié',
'splash_edit_role' => 'Rôle modifié', 'splash_edit_role' => 'Rôle modifié',
'splash_edit_task' => '', 'splash_edit_task' => 'Tâche modifiée',
'splash_edit_user' => 'Utilisateur modifié', 'splash_edit_user' => 'Utilisateur modifié',
'splash_error_add_to_transmittal' => 'Erreur lors de lajout du document à la transmission', 'splash_error_add_to_transmittal' => 'Erreur lors de lajout du document à la transmission',
'splash_error_rm_download_link' => 'Erreur lors de la suppression du lien de téléchargement', 'splash_error_rm_download_link' => 'Erreur lors de la suppression du lien de téléchargement',
'splash_error_send_download_link' => 'Erreur lors de lenvoi du lien de téléchargement', 'splash_error_send_download_link' => 'Erreur lors de lenvoi du lien de téléchargement',
'splash_extension_getlist' => '', 'splash_extension_getlist' => 'Liste des extensions mises à jour depuis le dépôt',
'splash_extension_import' => 'Extension installée', 'splash_extension_import' => 'Extension installée',
'splash_extension_refresh' => 'Liste des extensions actualisée', 'splash_extension_refresh' => 'Liste des extensions actualisée',
'splash_extension_upload' => '', 'splash_extension_upload' => 'Extension installée',
'splash_folder_edited' => 'Dossier modifié', 'splash_folder_edited' => 'Dossier modifié',
'splash_importfs' => '[docs] documents et [folders] dossiers importés', 'splash_importfs' => '[docs] documents et [folders] dossiers importés',
'splash_inherit_access' => 'Droits daccès hérités', 'splash_inherit_access' => 'Droits daccès hérités',
@ -1702,10 +1705,10 @@ Nom : [username]
'timeline_full_add_version' => '[document]<br />Nouvelle version ([version])', 'timeline_full_add_version' => '[document]<br />Nouvelle version ([version])',
'timeline_full_scheduled_revision' => '[document]<br />Révision de la version [version]', 'timeline_full_scheduled_revision' => '[document]<br />Révision de la version [version]',
'timeline_full_status_change' => '[document]<br />Version [version] : [status]', 'timeline_full_status_change' => '[document]<br />Version [version] : [status]',
'timeline_scheduled_revision' => '', 'timeline_scheduled_revision' => 'Révision de la version [version]',
'timeline_selected_item' => 'Document sélectionné', 'timeline_selected_item' => 'Document sélectionné',
'timeline_skip_add_file' => 'avec fichiers attachés', 'timeline_skip_add_file' => 'avec fichiers attachés',
'timeline_skip_scheduled_revision' => '', 'timeline_skip_scheduled_revision' => 'Révision planifiée',
'timeline_skip_status_change_-1' => 'rejetés', 'timeline_skip_status_change_-1' => 'rejetés',
'timeline_skip_status_change_-3' => 'expirés', 'timeline_skip_status_change_-3' => 'expirés',
'timeline_skip_status_change_0' => 'en attente de revue', 'timeline_skip_status_change_0' => 'en attente de revue',
@ -1775,7 +1778,7 @@ URL : [url]',
'update_locked_msg' => 'Ce document est verrouillé.', 'update_locked_msg' => 'Ce document est verrouillé.',
'update_recipients' => 'Mettre à jour la liste des destinataires', 'update_recipients' => 'Mettre à jour la liste des destinataires',
'update_reviewers' => 'Mettre à jour la liste des examinateurs', 'update_reviewers' => 'Mettre à jour la liste des examinateurs',
'update_revisors' => '', 'update_revisors' => 'Mettre à jour la liste des réviseurs',
'update_transmittalitem' => 'Mettre à jour lélément', 'update_transmittalitem' => 'Mettre à jour lélément',
'uploaded_by' => 'Déposé par', 'uploaded_by' => 'Déposé par',
'uploading_failed' => 'Dépôt d\'un des documents échoué. Veuillez vérifier la taille d\'envoi maximale autorisée.', 'uploading_failed' => 'Dépôt d\'un des documents échoué. Veuillez vérifier la taille d\'envoi maximale autorisée.',

View File

@ -946,6 +946,7 @@ Ako i dalje imate problema s prijavom, molimo kontaktirajte Vašeg administrator
'reception_noaction' => '', 'reception_noaction' => '',
'reception_rejected' => '', 'reception_rejected' => '',
'recipients' => 'Primatelji', 'recipients' => 'Primatelji',
'recipient_already_removed' => '',
'redraw' => '', 'redraw' => '',
'refresh' => 'Osvježi', 'refresh' => 'Osvježi',
'rejected' => 'Odbijeno', 'rejected' => 'Odbijeno',
@ -1300,6 +1301,8 @@ Internet poveznica: [url]',
'settings_enableOwnerRevApp_desc' => 'Omogućite ovo ako želite da vlasnik dokumenta bude naveden kao recezent/validator i za promjene tokova rada.', 'settings_enableOwnerRevApp_desc' => 'Omogućite ovo ako želite da vlasnik dokumenta bude naveden kao recezent/validator i za promjene tokova rada.',
'settings_enablePasswordForgotten' => 'Omogući zaboravljanje lozinke', 'settings_enablePasswordForgotten' => 'Omogući zaboravljanje lozinke',
'settings_enablePasswordForgotten_desc' => 'Ako želite omogućiti korisniku da postavi novu lozinku i pošalje ju e-mailom, označite ovu opciju.', 'settings_enablePasswordForgotten_desc' => 'Ako želite omogućiti korisniku da postavi novu lozinku i pošalje ju e-mailom, označite ovu opciju.',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => 'Omogućavanje potvrđivanja prijema dokumenta', 'settings_enableReceiptWorkflow' => 'Omogućavanje potvrđivanja prijema dokumenta',
'settings_enableReceiptWorkflow_desc' => 'Omogućite kako bi omogućili tok rada za potvrđivajne prijema dokumenta.', 'settings_enableReceiptWorkflow_desc' => 'Omogućite kako bi omogućili tok rada za potvrđivajne prijema dokumenta.',
'settings_enableRecursiveCount' => 'Omogući rekurzivno brojanje dokumenta/mape', 'settings_enableRecursiveCount' => 'Omogući rekurzivno brojanje dokumenta/mape',

View File

@ -942,6 +942,7 @@ Amennyiben problémákba ütközik a bejelentkezés során, kérjük vegye fel a
'reception_noaction' => '', 'reception_noaction' => '',
'reception_rejected' => '', 'reception_rejected' => '',
'recipients' => '', 'recipients' => '',
'recipient_already_removed' => '',
'redraw' => 'újrarajzol', 'redraw' => 'újrarajzol',
'refresh' => 'Frissítés', 'refresh' => 'Frissítés',
'rejected' => 'Elutasított', 'rejected' => 'Elutasított',
@ -1278,6 +1279,8 @@ URL: [url]',
'settings_enableOwnerRevApp_desc' => 'Engedélyezze, ha szeretné, hogy a dokumentum tulajdonosa listázásra kerüljön a felülvizsgálóknál/jóváhagyóknál és a munkamenet átmeneteknél.', 'settings_enableOwnerRevApp_desc' => 'Engedélyezze, ha szeretné, hogy a dokumentum tulajdonosa listázásra kerüljön a felülvizsgálóknál/jóváhagyóknál és a munkamenet átmeneteknél.',
'settings_enablePasswordForgotten' => 'Jelszó emlékeztető engedélyezése', 'settings_enablePasswordForgotten' => 'Jelszó emlékeztető engedélyezése',
'settings_enablePasswordForgotten_desc' => 'Ha azt szeretné, hogy a felhasználó megadhasson új jelszót és elküldhesse azt emailben, engedélyezze ezt a lehetőséget.', 'settings_enablePasswordForgotten_desc' => 'Ha azt szeretné, hogy a felhasználó megadhasson új jelszót és elküldhesse azt emailben, engedélyezze ezt a lehetőséget.',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => '', 'settings_enableReceiptWorkflow' => '',
'settings_enableReceiptWorkflow_desc' => '', 'settings_enableReceiptWorkflow_desc' => '',
'settings_enableRecursiveCount' => 'Engedélyezi a rekurzív dokumentum/mappa számot', 'settings_enableRecursiveCount' => 'Engedélyezi a rekurzív dokumentum/mappa számot',

View File

@ -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 (1622), rickr (144), s.pnt (26) // Translators: Admin (1624), rickr (144), s.pnt (26)
$text = array( $text = array(
'2_factor_auth' => 'Autorizzazione a due fattori', '2_factor_auth' => 'Autorizzazione a due fattori',
@ -953,6 +953,7 @@ URL: [url]',
'reception_noaction' => '', 'reception_noaction' => '',
'reception_rejected' => '', 'reception_rejected' => '',
'recipients' => 'Cartelle', 'recipients' => 'Cartelle',
'recipient_already_removed' => '',
'redraw' => '', 'redraw' => '',
'refresh' => 'Ricarica', 'refresh' => 'Ricarica',
'rejected' => 'Rifiutato', 'rejected' => 'Rifiutato',
@ -1179,8 +1180,8 @@ URL: [url]',
'seq_keep' => 'Mantieni la posizione', 'seq_keep' => 'Mantieni la posizione',
'seq_start' => 'Prima posizione', 'seq_start' => 'Prima posizione',
'sessions' => '', 'sessions' => '',
'setDateFromFile' => '', 'setDateFromFile' => 'Prende la data dal file importato',
'setDateFromFolder' => '', 'setDateFromFolder' => 'Prende la data dalla cartella importata',
'settings' => 'Impostazioni', 'settings' => 'Impostazioni',
'settings_activate_module' => 'Attivazione modulo', 'settings_activate_module' => 'Attivazione modulo',
'settings_activate_php_extension' => 'Attivazione estensione PHP', 'settings_activate_php_extension' => 'Attivazione estensione PHP',
@ -1312,6 +1313,8 @@ URL: [url]',
'settings_enableOwnerRevApp_desc' => 'Spuntare per aggiungere il proprietario del documento alla lista dei revisori/approvatori e per le transizioni del flusso di lavoro.', 'settings_enableOwnerRevApp_desc' => 'Spuntare per aggiungere il proprietario del documento alla lista dei revisori/approvatori e per le transizioni del flusso di lavoro.',
'settings_enablePasswordForgotten' => 'Abilita recupero password', 'settings_enablePasswordForgotten' => 'Abilita recupero password',
'settings_enablePasswordForgotten_desc' => 'Spuntare nel caso si desideri permettere all\'utente di re-impostare la password inviata per email.', 'settings_enablePasswordForgotten_desc' => 'Spuntare nel caso si desideri permettere all\'utente di re-impostare la password inviata per email.',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => 'Abilitare per notifiche', 'settings_enableReceiptWorkflow' => 'Abilitare per notifiche',
'settings_enableReceiptWorkflow_desc' => 'Abilitare per attivare sul workflow le ricevute di notifica.', 'settings_enableReceiptWorkflow_desc' => 'Abilitare per attivare sul workflow le ricevute di notifica.',
'settings_enableRecursiveCount' => 'Abilita il conteggio ricursivo di documenti/cartelle', 'settings_enableRecursiveCount' => 'Abilita il conteggio ricursivo di documenti/cartelle',

View File

@ -940,6 +940,7 @@ URL : [url]',
'reception_noaction' => '', 'reception_noaction' => '',
'reception_rejected' => '', 'reception_rejected' => '',
'recipients' => '받는 사람', 'recipients' => '받는 사람',
'recipient_already_removed' => '',
'redraw' => '다시 그리기', 'redraw' => '다시 그리기',
'refresh' => '새로 고침', 'refresh' => '새로 고침',
'rejected' => '거부', 'rejected' => '거부',
@ -1294,6 +1295,8 @@ URL : [url]',
'settings_enableOwnerRevApp_desc' => '이 문서의 소유자가 검토 / 승인으로 워크 플로우 전환에 대한 나열하고자 할 경우에 사용합니다.', 'settings_enableOwnerRevApp_desc' => '이 문서의 소유자가 검토 / 승인으로 워크 플로우 전환에 대한 나열하고자 할 경우에 사용합니다.',
'settings_enablePasswordForgotten' => '비밀번호 분실 활성화', 'settings_enablePasswordForgotten' => '비밀번호 분실 활성화',
'settings_enablePasswordForgotten_desc' => '옵션을 사용자가 새 비밀번호를 설정하도록 메일로 보내 확인 할 수 있습니다.', 'settings_enablePasswordForgotten_desc' => '옵션을 사용자가 새 비밀번호를 설정하도록 메일로 보내 확인 할 수 있습니다.',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => '문서 수신의 응답 활성화', 'settings_enableReceiptWorkflow' => '문서 수신의 응답 활성화',
'settings_enableReceiptWorkflow_desc' => '문서의 수신 확인을 위해 워크플로어를 선택하고 활성화 합니다.', 'settings_enableReceiptWorkflow_desc' => '문서의 수신 확인을 위해 워크플로어를 선택하고 활성화 합니다.',
'settings_enableRecursiveCount' => '재귀적 문서 / 폴더 수 사용', 'settings_enableRecursiveCount' => '재귀적 문서 / 폴더 수 사용',

View File

@ -963,6 +963,7 @@ URL: [url]',
'reception_noaction' => 'ບໍ່ມີການຕອບສະຫນອງ', 'reception_noaction' => 'ບໍ່ມີການຕອບສະຫນອງ',
'reception_rejected' => 'ປະຕິເສດການຕ້ອນຮັບ', 'reception_rejected' => 'ປະຕິເສດການຕ້ອນຮັບ',
'recipients' => 'ຜູ້ຮັບ', 'recipients' => 'ຜູ້ຮັບ',
'recipient_already_removed' => '',
'redraw' => 'ຂຽນໄຫມ່', 'redraw' => 'ຂຽນໄຫມ່',
'refresh' => 'ລີເຟສ', 'refresh' => 'ລີເຟສ',
'rejected' => 'ປະຕິເສດ', 'rejected' => 'ປະຕິເສດ',
@ -1327,6 +1328,8 @@ URL: [url]',
'settings_enableOwnerRevApp_desc' => 'ເປີດໄຊ້ງານລັກສະນະນີ້ຫາກເຈົ້າຕ້ອງການໃຫ້ເຈົ້າຂອງເກະສານລະບຸວ່າເປັນຜູ້ກວດສອບ/ຜູ້ອະນຸມັດແລະສຳລັບການປ່ຽນແປງວິທີການເຮັດວຽກ', 'settings_enableOwnerRevApp_desc' => 'ເປີດໄຊ້ງານລັກສະນະນີ້ຫາກເຈົ້າຕ້ອງການໃຫ້ເຈົ້າຂອງເກະສານລະບຸວ່າເປັນຜູ້ກວດສອບ/ຜູ້ອະນຸມັດແລະສຳລັບການປ່ຽນແປງວິທີການເຮັດວຽກ',
'settings_enablePasswordForgotten' => 'ລືມລະຫັດຜ່ານເປີດໄຊ້ງານ', 'settings_enablePasswordForgotten' => 'ລືມລະຫັດຜ່ານເປີດໄຊ້ງານ',
'settings_enablePasswordForgotten_desc' => 'ຖ້າເຈົ້າຕ້ອງການອະນຸຍາດໃຫ້ຜູ້ໄຊ້ຕັ້ງລະຫັດຜ່ານໄຫມ່ແລະສົ່ງດ້ວຍອີເມວ ໃຫ້ເລືອກຕົວເລືອກນີ້', 'settings_enablePasswordForgotten_desc' => 'ຖ້າເຈົ້າຕ້ອງການອະນຸຍາດໃຫ້ຜູ້ໄຊ້ຕັ້ງລະຫັດຜ່ານໄຫມ່ແລະສົ່ງດ້ວຍອີເມວ ໃຫ້ເລືອກຕົວເລືອກນີ້',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => '', 'settings_enableReceiptWorkflow' => '',
'settings_enableReceiptWorkflow_desc' => '', 'settings_enableReceiptWorkflow_desc' => '',
'settings_enableRecursiveCount' => 'ເປີດໄຊ້ງານການນັບເອກະສານ/ໂຟລເດີນັບຊໍ້າ', 'settings_enableRecursiveCount' => 'ເປີດໄຊ້ງານການນັບເອກະສານ/ໂຟລເດີນັບຊໍ້າ',

View File

@ -958,6 +958,7 @@ URL: [url]',
'reception_noaction' => 'Geen actie', 'reception_noaction' => 'Geen actie',
'reception_rejected' => 'bestemming geweigerd', 'reception_rejected' => 'bestemming geweigerd',
'recipients' => 'Ontvangers', 'recipients' => 'Ontvangers',
'recipient_already_removed' => '',
'redraw' => 'Nogmaals weergeven', 'redraw' => 'Nogmaals weergeven',
'refresh' => 'Verversen', 'refresh' => 'Verversen',
'rejected' => 'Afgewezen', 'rejected' => 'Afgewezen',
@ -1324,6 +1325,8 @@ Name: [username]
'settings_enableOwnerRevApp_desc' => 'Activeer dit als de eigenaar van een document genoteerd staat as beoordelaar/ goedkeurder en voor workflow overdrachten.', 'settings_enableOwnerRevApp_desc' => 'Activeer dit als de eigenaar van een document genoteerd staat as beoordelaar/ goedkeurder en voor workflow overdrachten.',
'settings_enablePasswordForgotten' => '\'wachtwoord vergeten\' aanzetten', 'settings_enablePasswordForgotten' => '\'wachtwoord vergeten\' aanzetten',
'settings_enablePasswordForgotten_desc' => 'Inschakelen om een wachtwoord via mail te versturen als de gebruiker een nieuw wachtwoord heeft ingesteld.', 'settings_enablePasswordForgotten_desc' => 'Inschakelen om een wachtwoord via mail te versturen als de gebruiker een nieuw wachtwoord heeft ingesteld.',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => 'Aanzetten Workflow-stappen', 'settings_enableReceiptWorkflow' => 'Aanzetten Workflow-stappen',
'settings_enableReceiptWorkflow_desc' => 'Aanzetten workflow-stappen', 'settings_enableReceiptWorkflow_desc' => 'Aanzetten workflow-stappen',
'settings_enableRecursiveCount' => 'Document/ map teller herhalen toestaan', 'settings_enableRecursiveCount' => 'Document/ map teller herhalen toestaan',

View File

@ -935,6 +935,7 @@ Jeśli nadal będą problemy z zalogowaniem, prosimy o kontakt z administratorem
'reception_noaction' => '', 'reception_noaction' => '',
'reception_rejected' => '', 'reception_rejected' => '',
'recipients' => '', 'recipients' => '',
'recipient_already_removed' => '',
'redraw' => '', 'redraw' => '',
'refresh' => 'Odśwież', 'refresh' => 'Odśwież',
'rejected' => 'Odrzucony', 'rejected' => 'Odrzucony',
@ -1258,6 +1259,8 @@ URL: [url]',
'settings_enableOwnerRevApp_desc' => 'Włącz tę opcję jeżeli właściciel dokumentu powinien być wymieniony jako zatwierdzających/recenzentów oraz dla przepływu procesu', 'settings_enableOwnerRevApp_desc' => 'Włącz tę opcję jeżeli właściciel dokumentu powinien być wymieniony jako zatwierdzających/recenzentów oraz dla przepływu procesu',
'settings_enablePasswordForgotten' => 'Włącz odzyskiwanie hasła po jego zapomnieniu', 'settings_enablePasswordForgotten' => 'Włącz odzyskiwanie hasła po jego zapomnieniu',
'settings_enablePasswordForgotten_desc' => 'Jeśli chcesz zezwolić użytkownikom na zmianę własnego hasła i wysyłanie go emailem, zaznacz tę opcję.', 'settings_enablePasswordForgotten_desc' => 'Jeśli chcesz zezwolić użytkownikom na zmianę własnego hasła i wysyłanie go emailem, zaznacz tę opcję.',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => '', 'settings_enableReceiptWorkflow' => '',
'settings_enableReceiptWorkflow_desc' => '', 'settings_enableReceiptWorkflow_desc' => '',
'settings_enableRecursiveCount' => 'Włącz licznik rekurencji dokumentu/folderu', 'settings_enableRecursiveCount' => 'Włącz licznik rekurencji dokumentu/folderu',

View File

@ -940,6 +940,7 @@ Se você ainda tiver problemas para fazer o login, por favor, contate o administ
'reception_noaction' => '', 'reception_noaction' => '',
'reception_rejected' => '', 'reception_rejected' => '',
'recipients' => '', 'recipients' => '',
'recipient_already_removed' => '',
'redraw' => '', 'redraw' => '',
'refresh' => 'Atualizar', 'refresh' => 'Atualizar',
'rejected' => 'Rejected', 'rejected' => 'Rejected',
@ -1276,6 +1277,8 @@ URL: [url]',
'settings_enableOwnerRevApp_desc' => 'Habilite esta opção se quiser que o proprietário de um documento seja listado como revisores/aprovadores e para transições de fluxo de trabalho.', 'settings_enableOwnerRevApp_desc' => 'Habilite esta opção se quiser que o proprietário de um documento seja listado como revisores/aprovadores e para transições de fluxo de trabalho.',
'settings_enablePasswordForgotten' => 'Ativar Senhas esquecidas', 'settings_enablePasswordForgotten' => 'Ativar Senhas esquecidas',
'settings_enablePasswordForgotten_desc' => 'Se você quiser permitir o usuário definir uma nova senha e enviá-la por e-mail, marque esta opção.', 'settings_enablePasswordForgotten_desc' => 'Se você quiser permitir o usuário definir uma nova senha e enviá-la por e-mail, marque esta opção.',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => '', 'settings_enableReceiptWorkflow' => '',
'settings_enableReceiptWorkflow_desc' => '', 'settings_enableReceiptWorkflow_desc' => '',
'settings_enableRecursiveCount' => 'Ativar contagem de documentos/pasta recursiva', 'settings_enableRecursiveCount' => 'Ativar contagem de documentos/pasta recursiva',

View File

@ -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 (1082), balan (87) // Translators: Admin (1085), balan (87)
$text = array( $text = array(
'2_factor_auth' => '', '2_factor_auth' => '',
@ -914,7 +914,7 @@ Dacă aveți în continuare probleme la autentificare, vă rugăm să contactaț
'pl_PL' => 'Poloneză', 'pl_PL' => 'Poloneză',
'possible_substitutes' => '', 'possible_substitutes' => '',
'preset_expires' => 'Expirarea presetului', 'preset_expires' => 'Expirarea presetului',
'preview' => '', 'preview' => 'Previzualizare',
'preview_converters' => '', 'preview_converters' => '',
'preview_images' => '', 'preview_images' => '',
'preview_markdown' => '', 'preview_markdown' => '',
@ -947,6 +947,7 @@ Dacă aveți în continuare probleme la autentificare, vă rugăm să contactaț
'reception_noaction' => '', 'reception_noaction' => '',
'reception_rejected' => '', 'reception_rejected' => '',
'recipients' => 'Destinatari', 'recipients' => 'Destinatari',
'recipient_already_removed' => '',
'redraw' => '', 'redraw' => '',
'refresh' => 'Refresh', 'refresh' => 'Refresh',
'rejected' => 'Respins', 'rejected' => 'Respins',
@ -1301,6 +1302,8 @@ URL: [url]',
'settings_enableOwnerRevApp_desc' => 'Activați această opțiune dacă doriți ca proprietarul unui document să fie listat ca revizuitor/aprobator sau in tranzițiile workflow-ului.', 'settings_enableOwnerRevApp_desc' => 'Activați această opțiune dacă doriți ca proprietarul unui document să fie listat ca revizuitor/aprobator sau in tranzițiile workflow-ului.',
'settings_enablePasswordForgotten' => 'Activați Am uitat parola', 'settings_enablePasswordForgotten' => 'Activați Am uitat parola',
'settings_enablePasswordForgotten_desc' => 'Dacă doriți să permiteti utilizatorilor să stabilească o nouă parolă și să le fie trimisă prin e-mail, bifați această opțiune.', 'settings_enablePasswordForgotten_desc' => 'Dacă doriți să permiteti utilizatorilor să stabilească o nouă parolă și să le fie trimisă prin e-mail, bifați această opțiune.',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => '', 'settings_enableReceiptWorkflow' => '',
'settings_enableReceiptWorkflow_desc' => '', 'settings_enableReceiptWorkflow_desc' => '',
'settings_enableRecursiveCount' => 'Activați numararea recursiva pentru documente/foldere', 'settings_enableRecursiveCount' => 'Activați numararea recursiva pentru documente/foldere',
@ -1690,10 +1693,10 @@ URL: [url]',
'to_before_from' => 'Data de încheiere nu poate fi înainte de data de începere', 'to_before_from' => 'Data de încheiere nu poate fi înainte de data de începere',
'transfer_document' => 'Transfer document', 'transfer_document' => 'Transfer document',
'transfer_no_read_access' => '', 'transfer_no_read_access' => '',
'transfer_no_write_access' => '', 'transfer_no_write_access' => 'Utilizatorul nu are drepturi de scriere pe acest dosar',
'transfer_objects' => '', 'transfer_objects' => '',
'transfer_objects_to_user' => '', 'transfer_objects_to_user' => '',
'transfer_to_user' => '', 'transfer_to_user' => 'Trabsferare catre alt utilizator',
'transition_triggered_email' => 'Tranziție Workflow declanșată', 'transition_triggered_email' => 'Tranziție Workflow declanșată',
'transition_triggered_email_body' => 'Tranziție Workflow declanșată 'transition_triggered_email_body' => 'Tranziție Workflow declanșată
Document: [name] Document: [name]

View File

@ -949,6 +949,7 @@ URL: [url]',
'reception_noaction' => '', 'reception_noaction' => '',
'reception_rejected' => '', 'reception_rejected' => '',
'recipients' => 'Получатели', 'recipients' => 'Получатели',
'recipient_already_removed' => '',
'redraw' => 'Обновить картинку', 'redraw' => 'Обновить картинку',
'refresh' => 'Обновить', 'refresh' => 'Обновить',
'rejected' => 'Отклонён', 'rejected' => 'Отклонён',
@ -1308,6 +1309,8 @@ URL: [url]',
'settings_enableOwnerRevApp_desc' => 'Включите для того, чтобы владелец документа был в списке рецензентов/утверждающих и в изменении процесса.', 'settings_enableOwnerRevApp_desc' => 'Включите для того, чтобы владелец документа был в списке рецензентов/утверждающих и в изменении процесса.',
'settings_enablePasswordForgotten' => 'Включить восстановление пароля', 'settings_enablePasswordForgotten' => 'Включить восстановление пароля',
'settings_enablePasswordForgotten_desc' => 'Если включено, разрешает пользователям восстанавливать пароль через e-mail.', 'settings_enablePasswordForgotten_desc' => 'Если включено, разрешает пользователям восстанавливать пароль через e-mail.',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => 'Включить подтверждение получения документа', 'settings_enableReceiptWorkflow' => 'Включить подтверждение получения документа',
'settings_enableReceiptWorkflow_desc' => 'Включить для активации функции подтверждения получения документа', 'settings_enableReceiptWorkflow_desc' => 'Включить для активации функции подтверждения получения документа',
'settings_enableRecursiveCount' => 'Рекурсивно подсчитывать<br/>документы и каталоги', 'settings_enableRecursiveCount' => 'Рекурсивно подсчитывать<br/>документы и каталоги',

View File

@ -984,6 +984,7 @@ URL: [url]',
'reception_noaction' => 'Žiadna akcia', 'reception_noaction' => 'Žiadna akcia',
'reception_rejected' => 'Reception rejected', 'reception_rejected' => 'Reception rejected',
'recipients' => 'Príjemcovia', 'recipients' => 'Príjemcovia',
'recipient_already_removed' => '',
'redraw' => 'Prekresliť', 'redraw' => 'Prekresliť',
'refresh' => 'Obnoviť', 'refresh' => 'Obnoviť',
'rejected' => 'Odmietnuté', 'rejected' => 'Odmietnuté',
@ -1348,6 +1349,8 @@ Meno: [username]
'settings_enableOwnerRevApp_desc' => 'Enable this if you want the owner of a document to be listed as reviewers/approvers and for workflow transitions.', 'settings_enableOwnerRevApp_desc' => 'Enable this if you want the owner of a document to be listed as reviewers/approvers and for workflow transitions.',
'settings_enablePasswordForgotten' => 'Povoliť zabudnuté heslo', 'settings_enablePasswordForgotten' => 'Povoliť zabudnuté heslo',
'settings_enablePasswordForgotten_desc' => 'If you want to allow user to set a new password and send it by mail, check this option.', 'settings_enablePasswordForgotten_desc' => 'If you want to allow user to set a new password and send it by mail, check this option.',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => 'Enable acknowledge of document reception', 'settings_enableReceiptWorkflow' => 'Enable acknowledge of document reception',
'settings_enableReceiptWorkflow_desc' => 'Enable, to turn on the workflow to acknowledge document reception.', 'settings_enableReceiptWorkflow_desc' => 'Enable, to turn on the workflow to acknowledge document reception.',
'settings_enableRecursiveCount' => 'Enable recursive document/folder count', 'settings_enableRecursiveCount' => 'Enable recursive document/folder count',

View File

@ -957,6 +957,7 @@ Om du fortfarande har problem med inloggningen, kontakta administratören.',
'reception_noaction' => 'Ingen åtgärd', 'reception_noaction' => 'Ingen åtgärd',
'reception_rejected' => '', 'reception_rejected' => '',
'recipients' => 'Mottagare', 'recipients' => 'Mottagare',
'recipient_already_removed' => '',
'redraw' => 'Återkalla', 'redraw' => 'Återkalla',
'refresh' => 'Uppdatera', 'refresh' => 'Uppdatera',
'rejected' => 'Avvisat', 'rejected' => 'Avvisat',
@ -1321,6 +1322,8 @@ Kommentar: [comment]',
'settings_enableOwnerRevApp_desc' => 'Aktivera om du vill att en dokumentägare visas i listan för personer som granskar/godkänner dokumentet och i övergång på arbetsflöden.', 'settings_enableOwnerRevApp_desc' => 'Aktivera om du vill att en dokumentägare visas i listan för personer som granskar/godkänner dokumentet och i övergång på arbetsflöden.',
'settings_enablePasswordForgotten' => 'Aktivera glömt lösenord', 'settings_enablePasswordForgotten' => 'Aktivera glömt lösenord',
'settings_enablePasswordForgotten_desc' => 'Om du vill tillåta att användare kan få nytt lösenord genom att skicka e-post, aktivera denna option.', 'settings_enablePasswordForgotten_desc' => 'Om du vill tillåta att användare kan få nytt lösenord genom att skicka e-post, aktivera denna option.',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => 'Aktivera notifiering vid mottagande av dokument', 'settings_enableReceiptWorkflow' => 'Aktivera notifiering vid mottagande av dokument',
'settings_enableReceiptWorkflow_desc' => 'Aktivera notifiering av meddelanden i arbetsflödet.', 'settings_enableReceiptWorkflow_desc' => 'Aktivera notifiering av meddelanden i arbetsflödet.',
'settings_enableRecursiveCount' => 'Aktivera rekursiv räkning av dokument/katalog', 'settings_enableRecursiveCount' => 'Aktivera rekursiv räkning av dokument/katalog',

View File

@ -943,6 +943,7 @@ Giriş yaparken halen sorun yaşıyorsanız lütfen sistem yöneticinizle görü
'reception_noaction' => '', 'reception_noaction' => '',
'reception_rejected' => '', 'reception_rejected' => '',
'recipients' => '', 'recipients' => '',
'recipient_already_removed' => '',
'redraw' => '', 'redraw' => '',
'refresh' => 'Yenile', 'refresh' => 'Yenile',
'rejected' => 'Reddedildi', 'rejected' => 'Reddedildi',
@ -1280,6 +1281,8 @@ URL: [url]',
'settings_enableOwnerRevApp_desc' => 'Bir dokümanın sahibinin kontrol eden/onaylayan listesinde ve iş akışında olmasını isterseniz bunu etkinleştirin.', 'settings_enableOwnerRevApp_desc' => 'Bir dokümanın sahibinin kontrol eden/onaylayan listesinde ve iş akışında olmasını isterseniz bunu etkinleştirin.',
'settings_enablePasswordForgotten' => 'Parola Kurtarmayı Etkinleştir', 'settings_enablePasswordForgotten' => 'Parola Kurtarmayı Etkinleştir',
'settings_enablePasswordForgotten_desc' => 'Kullanıcının unuttuğu parolayı kendisine gönderilecek e-posta ile sıfırlamasına izin vermek için bu seçeneği etkinleştirebilirsiniz.', 'settings_enablePasswordForgotten_desc' => 'Kullanıcının unuttuğu parolayı kendisine gönderilecek e-posta ile sıfırlamasına izin vermek için bu seçeneği etkinleştirebilirsiniz.',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => '', 'settings_enableReceiptWorkflow' => '',
'settings_enableReceiptWorkflow_desc' => '', 'settings_enableReceiptWorkflow_desc' => '',
'settings_enableRecursiveCount' => 'Özyinelenen doküman/klasör sayımını etkinleştir', 'settings_enableRecursiveCount' => 'Özyinelenen doküman/klasör sayımını etkinleştir',

View File

@ -949,6 +949,7 @@ URL: [url]',
'reception_noaction' => '', 'reception_noaction' => '',
'reception_rejected' => '', 'reception_rejected' => '',
'recipients' => 'Отримувачі', 'recipients' => 'Отримувачі',
'recipient_already_removed' => '',
'redraw' => '', 'redraw' => '',
'refresh' => 'Оновити', 'refresh' => 'Оновити',
'rejected' => 'Відхилений', 'rejected' => 'Відхилений',
@ -1301,6 +1302,8 @@ URL: [url]',
'settings_enableOwnerRevApp_desc' => 'Увімкніть для того, щоб власник відображався в списку рецензентів/затверджувачів і для зміни процесу.', 'settings_enableOwnerRevApp_desc' => 'Увімкніть для того, щоб власник відображався в списку рецензентів/затверджувачів і для зміни процесу.',
'settings_enablePasswordForgotten' => 'Включити відновлення паролю', 'settings_enablePasswordForgotten' => 'Включити відновлення паролю',
'settings_enablePasswordForgotten_desc' => 'Якщо увімкнено, дозволяє користувачам відновлювати пароль через e-mail.', 'settings_enablePasswordForgotten_desc' => 'Якщо увімкнено, дозволяє користувачам відновлювати пароль через e-mail.',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => 'Увімкнути підтвердження отримання документу', 'settings_enableReceiptWorkflow' => 'Увімкнути підтвердження отримання документу',
'settings_enableReceiptWorkflow_desc' => 'Включіть для активації функції підтвердження отримання документу', 'settings_enableReceiptWorkflow_desc' => 'Включіть для активації функції підтвердження отримання документу',
'settings_enableRecursiveCount' => 'Рекурсивно підраховувати<br/>документи і каталоги', 'settings_enableRecursiveCount' => 'Рекурсивно підраховувати<br/>документи і каталоги',

View File

@ -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 (757), archonwang (469), fengjohn (5), yang86 (1) // Translators: Admin (760), archonwang (469), fengjohn (5), yang86 (1)
$text = array( $text = array(
'2_factor_auth' => '双重认证', '2_factor_auth' => '双重认证',
@ -948,6 +948,7 @@ URL: [url]',
'reception_noaction' => '', 'reception_noaction' => '',
'reception_rejected' => '', 'reception_rejected' => '',
'recipients' => '', 'recipients' => '',
'recipient_already_removed' => '',
'redraw' => '', 'redraw' => '',
'refresh' => '刷新', 'refresh' => '刷新',
'rejected' => '拒绝', 'rejected' => '拒绝',
@ -1149,8 +1150,8 @@ URL: [url]',
'seq_keep' => '当前', 'seq_keep' => '当前',
'seq_start' => '首位', 'seq_start' => '首位',
'sessions' => '在线用户', 'sessions' => '在线用户',
'setDateFromFile' => '', 'setDateFromFile' => '从文件设置日期',
'setDateFromFolder' => '', 'setDateFromFolder' => '从文件夹中设置日期',
'settings' => '设置', 'settings' => '设置',
'settings_activate_module' => '启用模块', 'settings_activate_module' => '启用模块',
'settings_activate_php_extension' => '启用 PHP 扩展', 'settings_activate_php_extension' => '启用 PHP 扩展',
@ -1282,6 +1283,8 @@ URL: [url]',
'settings_enableOwnerRevApp_desc' => '', 'settings_enableOwnerRevApp_desc' => '',
'settings_enablePasswordForgotten' => '启用忘记密码功能', 'settings_enablePasswordForgotten' => '启用忘记密码功能',
'settings_enablePasswordForgotten_desc' => '如您想让用户可以通过邮件方式自主设置新密码,请勾选此选项', 'settings_enablePasswordForgotten_desc' => '如您想让用户可以通过邮件方式自主设置新密码,请勾选此选项',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => '启用文档接收确认通知', 'settings_enableReceiptWorkflow' => '启用文档接收确认通知',
'settings_enableReceiptWorkflow_desc' => '', 'settings_enableReceiptWorkflow_desc' => '',
'settings_enableRecursiveCount' => '', 'settings_enableRecursiveCount' => '',

View File

@ -830,6 +830,7 @@ URL: [url]',
'reception_noaction' => '', 'reception_noaction' => '',
'reception_rejected' => '', 'reception_rejected' => '',
'recipients' => '', 'recipients' => '',
'recipient_already_removed' => '',
'redraw' => '', 'redraw' => '',
'refresh' => '重新整理', 'refresh' => '重新整理',
'rejected' => '拒絕', 'rejected' => '拒絕',
@ -1131,6 +1132,8 @@ URL: [url]',
'settings_enableOwnerRevApp_desc' => '', 'settings_enableOwnerRevApp_desc' => '',
'settings_enablePasswordForgotten' => '', 'settings_enablePasswordForgotten' => '',
'settings_enablePasswordForgotten_desc' => '', 'settings_enablePasswordForgotten_desc' => '',
'settings_enableReceiptReject' => '',
'settings_enableReceiptReject_desc' => '',
'settings_enableReceiptWorkflow' => '', 'settings_enableReceiptWorkflow' => '',
'settings_enableReceiptWorkflow_desc' => '', 'settings_enableReceiptWorkflow_desc' => '',
'settings_enableRecursiveCount' => '', 'settings_enableRecursiveCount' => '',

View File

@ -803,15 +803,16 @@ switch($command) {
$idoc = new $indexconf['IndexedDocument']($dms, $document, isset($settings->_converters['fulltext']) ? $settings->_converters['fulltext'] : null, false, $settings->_cmdTimeout); $idoc = new $indexconf['IndexedDocument']($dms, $document, isset($settings->_converters['fulltext']) ? $settings->_converters['fulltext'] : null, false, $settings->_cmdTimeout);
$error = $idoc->getErrorMsg(); $error = $idoc->getErrorMsg();
if(!$error) { if(!$error) {
$ires = null;
if(isset($GLOBALS['SEEDDMS_HOOKS']['indexDocument'])) { if(isset($GLOBALS['SEEDDMS_HOOKS']['indexDocument'])) {
foreach($GLOBALS['SEEDDMS_HOOKS']['indexDocument'] as $hookObj) { foreach($GLOBALS['SEEDDMS_HOOKS']['indexDocument'] as $hookObj) {
if (method_exists($hookObj, 'preIndexDocument')) { if (method_exists($hookObj, 'preIndexDocument')) {
if(false !== ($ires = $hookObj->preIndexDocument(null, $document, $idoc))) { $ires = $hookObj->preIndexDocument(null, $document, $idoc);
$ires = $index->addDocument($idoc);
}
} }
} }
} }
if(false !== $ires)
$ires = $index->addDocument($idoc);
header('Content-Type: application/json'); header('Content-Type: application/json');
if(false === $ires) { if(false === $ires) {
echo json_encode(array('success'=>false, 'message'=>getMLText('error_document_indexed'), 'data'=>$document->getID())); echo json_encode(array('success'=>false, 'message'=>getMLText('error_document_indexed'), 'data'=>$document->getID()));

View File

@ -41,7 +41,7 @@ $fullname = $_POST["fullname"];
$email = $_POST["email"]; $email = $_POST["email"];
$comment = $_POST["comment"]; $comment = $_POST["comment"];
$language = $_POST["language"]; $language = $_POST["language"];
/* 'theme' won't be set, if themeselector is turn 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"];
$current_pwd = $_POST["currentpwd"]; $current_pwd = $_POST["currentpwd"];

View File

@ -65,6 +65,11 @@ if(isset($_POST['pwd'])) {
} }
} }
$lang = '';
if(isset($_REQUEST["lang"]) && strlen($_REQUEST["lang"])>0 && is_numeric(array_search($_REQUEST["lang"],getLanguages())) ) {
$lang = (string) $_REQUEST["lang"];
}
$session = new SeedDMS_Session($db); $session = new SeedDMS_Session($db);
// TODO: by the PHP manual: The superglobals $_GET and $_REQUEST are already decoded. // TODO: by the PHP manual: The superglobals $_GET and $_REQUEST are already decoded.

View File

@ -33,7 +33,15 @@ require_once("inc/inc.ClassUI.php");
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); $view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user));
$folder = null;
if (isset($_GET["folderid"]) && is_numeric($_GET["folderid"])) {
$folderid = intval($_GET["folderid"]);
$folder = $dms->getFolder($folderid);
}
if($view) { if($view) {
$view->setParam('folder', $folder);
$view->setParam('previewWidthList', $settings->_previewWidthList); $view->setParam('previewWidthList', $settings->_previewWidthList);
$view->setParam('timeout', $settings->_cmdTimeout); $view->setParam('timeout', $settings->_cmdTimeout);
$view->setParam('xsendfile', $settings->_enableXsendfile); $view->setParam('xsendfile', $settings->_enableXsendfile);

View File

@ -1,10 +1,19 @@
/* Template function which outputs an option in a chzn-select */ /* Template function which outputs an option in a chzn-select
* The replace() call is required to prevent xss attacks (see CVE-2019-12745)
* Using htmlspecialchars() in php isn't sufficient because, chzn_template_func
* will receive an unescaped string
* (see https://forums.select2.org/t/propperly-escape-option-value-to-prevent-xss/788)
*/
chzn_template_func = function (state) { chzn_template_func = function (state) {
var subtitle = $(state.element).data('subtitle'); var subtitle = '';
var warning = $(state.element).data('warning'); if($(state.element).data('subtitle'))
var html = '<span>'+state.text+''; subtitle = $(state.element).data('subtitle')+''; /* make sure it is a string */
var warning = '';
if($(state.element).data('warning'))
warning = $(state.element).data('warning')+''; /* make sure it is a string */
var html = '<span>'+state.text.replace(/</g, '&lt;')+'';
if(subtitle) if(subtitle)
html += '<br /><i>'+subtitle+'</i>'; html += '<br /><i>'+subtitle.replace(/</g, '&lt;')+'</i>';
if(warning) if(warning)
html += '<br /><span class="label label-warning"><i class="icon-warning-sign"></i></span> '+warning+''; html += '<br /><span class="label label-warning"><i class="icon-warning-sign"></i></span> '+warning+'';
html += '</span>'; html += '</span>';
@ -38,7 +47,8 @@ $(document).ready( function() {
$(".chzn-select").select2({ $(".chzn-select").select2({
width: '100%', width: '100%',
templateResult: chzn_template_func templateResult: chzn_template_func,
templateSelection: chzn_template_func
}); });
/* change the color and length of the bar graph showing the password /* change the color and length of the bar graph showing the password
@ -985,6 +995,9 @@ $(document).ready(function() { /* {{{ */
$("body").on("click", "span.openpopupbox i", function(e) { $("body").on("click", "span.openpopupbox i", function(e) {
$(e.target).parent().click(); $(e.target).parent().click();
}); });
$("body").on("click", "span.openpopupbox span", function(e) {
$(e.target).parent().click();
});
$("body").on("click", "span.closepopupbox", function(e) { $("body").on("click", "span.closepopupbox", function(e) {
$(this).parent().hide(); $(this).parent().hide();
}); });

View File

@ -141,7 +141,14 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
function htmlEndPage($nofooter=false) { /* {{{ */ function htmlEndPage($nofooter=false) { /* {{{ */
if(!$nofooter) { if(!$nofooter) {
$this->footNote(); $hookObjs = $this->getHookObjects('SeedDMS_View_Bootstrap');
$html = $this->footNote();
foreach($hookObjs as $hookObj) {
if (method_exists($hookObj, 'footNote')) {
$html = $hookObj->footNote($this, $html);
}
}
echo $html;
if($this->params['showmissingtranslations']) { if($this->params['showmissingtranslations']) {
$this->missingLanguageKeys(); $this->missingLanguageKeys();
} }
@ -218,23 +225,23 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
} /* }}} */ } /* }}} */
function footNote() { /* {{{ */ function footNote() { /* {{{ */
echo "<div class=\"container-fluid\">\n"; $html = "<div class=\"container-fluid\">\n";
echo '<div class="row-fluid">'."\n"; $html .= '<div class="row-fluid">'."\n";
echo '<div class="span12">'."\n"; $html .= '<div class="span12">'."\n";
echo '<div class="alert alert-info">'."\n"; $html .= '<div class="alert alert-info">'."\n";
if ($this->params['printdisclaimer']){ if ($this->params['printdisclaimer']){
echo "<div class=\"disclaimer\">".getMLText("disclaimer")."</div>"; $html .= "<div class=\"disclaimer\">".getMLText("disclaimer")."</div>";
} }
if (isset($this->params['footnote']) && strlen((string)$this->params['footnote'])>0) { if (isset($this->params['footnote']) && strlen((string)$this->params['footnote'])>0) {
echo "<div class=\"footNote\">".(string)$this->params['footnote']."</div>"; $html .= "<div class=\"footNote\">".(string)$this->params['footnote']."</div>";
} }
echo "</div>\n"; $html .= "</div>\n";
echo "</div>\n"; $html .= "</div>\n";
echo "</div>\n"; $html .= "</div>\n";
echo "</div>\n"; $html .= "</div>\n";
return; return $html;
} /* }}} */ } /* }}} */
function contentStart() { /* {{{ */ function contentStart() { /* {{{ */
@ -350,7 +357,7 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
} }
if($this->params['enableclipboard']) { if($this->params['enableclipboard']) {
echo " <div id=\"menu-clipboard\">"; echo " <div id=\"menu-clipboard\">";
echo " <div class=\"ajax\" data-no-spinner=\"true\" data-view=\"Clipboard\" data-action=\"menuClipboard\"></div>"; echo " <div class=\"ajax\" data-no-spinner=\"true\" data-view=\"Clipboard\" data-action=\"menuClipboard\" data-query=\"folderid=23\"></div>";
echo " </div>"; echo " </div>";
} }
@ -2171,7 +2178,7 @@ $(document).ready( function() {
* @param object $previewer * @param object $previewer
* @param boolean $skipcont set to true if embrasing tr shall be skipped * @param boolean $skipcont set to true if embrasing tr shall be skipped
*/ */
function documentListRow($document, $previewer, $skipcont=false, $version=0) { /* {{{ */ function documentListRow($document, $previewer, $skipcont=false, $version=0, $extracontent=array()) { /* {{{ */
$dms = $this->params['dms']; $dms = $this->params['dms'];
$user = $this->params['user']; $user = $this->params['user'];
$showtree = $this->params['showtree']; $showtree = $this->params['showtree'];
@ -2238,10 +2245,14 @@ $(document).ready( function() {
$content .= "<td>"; $content .= "<td>";
$content .= "<a draggable=\"false\" href=\"../out/out.ViewDocument.php?documentid=".$docID."&showtree=".$showtree."\">" . htmlspecialchars($document->getName()) . "</a>"; $content .= "<a draggable=\"false\" href=\"../out/out.ViewDocument.php?documentid=".$docID."&showtree=".$showtree."\">" . htmlspecialchars($document->getName()) . "</a>";
if(isset($extracontent['below_title']))
$content .= $extracontent['below_title'];
$content .= "<br /><span style=\"font-size: 85%; font-style: italic; color: #666; \">".getMLText('owner').": <b>".htmlspecialchars($owner->getFullName())."</b>, ".getMLText('creation_date').": <b>".date('Y-m-d', $document->getDate())."</b>, ".getMLText('version')." <b>".$version."</b> - <b>".date('Y-m-d', $latestContent->getDate())."</b>".($document->expires() ? ", ".getMLText('expires').": <b>".getReadableDate($document->getExpires())."</b>" : "")."</span>"; $content .= "<br /><span style=\"font-size: 85%; font-style: italic; color: #666; \">".getMLText('owner').": <b>".htmlspecialchars($owner->getFullName())."</b>, ".getMLText('creation_date').": <b>".date('Y-m-d', $document->getDate())."</b>, ".getMLText('version')." <b>".$version."</b> - <b>".date('Y-m-d', $latestContent->getDate())."</b>".($document->expires() ? ", ".getMLText('expires').": <b>".getReadableDate($document->getExpires())."</b>" : "")."</span>";
if($comment) { if($comment) {
$content .= "<br /><span style=\"font-size: 85%;\">".htmlspecialchars($comment)."</span>"; $content .= "<br /><span style=\"font-size: 85%;\">".htmlspecialchars($comment)."</span>";
} }
if(!empty($extracontent['bottom_title']))
$content .= $extracontent['bottom_title'];
$content .= "</td>\n"; $content .= "</td>\n";
$content .= "<td nowrap>"; $content .= "<td nowrap>";
@ -2293,7 +2304,7 @@ $(document).ready( function() {
return $content; return $content;
} /* }}} */ } /* }}} */
function folderListRow($subFolder) { /* {{{ */ function folderListRow($subFolder, $extracontent=array()) { /* {{{ */
$dms = $this->params['dms']; $dms = $this->params['dms'];
$user = $this->params['user']; $user = $this->params['user'];
// $folder = $this->params['folder']; // $folder = $this->params['folder'];
@ -2314,6 +2325,8 @@ $(document).ready( function() {
if($comment) { if($comment) {
$content .= "<br /><span style=\"font-size: 85%;\">".htmlspecialchars($comment)."</span>"; $content .= "<br /><span style=\"font-size: 85%;\">".htmlspecialchars($comment)."</span>";
} }
if(isset($extracontent['bottom_title']))
$content .= $extracontent['bottom_title'];
$content .= "</td>\n"; $content .= "</td>\n";
// $content .= "<td>".htmlspecialchars($owner->getFullName())."</td>"; // $content .= "<td>".htmlspecialchars($owner->getFullName())."</td>";
$content .= "<td colspan=\"1\" nowrap><small>"; $content .= "<td colspan=\"1\" nowrap><small>";

View File

@ -463,7 +463,7 @@ class SeedDMS_View_Search extends SeedDMS_Bootstrap_Style {
print "<thead>\n<tr>\n"; print "<thead>\n<tr>\n";
print "<th></th>\n"; print "<th></th>\n";
print "<th>".getMLText("name")."</th>\n"; print "<th>".getMLText("name")."</th>\n";
print "<th>".getMLText("attributes")."</th>\n"; //print "<th>".getMLText("attributes")."</th>\n";
print "<th>".getMLText("status")."</th>\n"; print "<th>".getMLText("status")."</th>\n";
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";
@ -487,6 +487,42 @@ class SeedDMS_View_Search extends SeedDMS_Bootstrap_Style {
else else
$comment = htmlspecialchars($document->getComment()); $comment = htmlspecialchars($document->getComment());
if (strlen($comment) > 150) $comment = substr($comment, 0, 147) . "..."; if (strlen($comment) > 150) $comment = substr($comment, 0, 147) . "...";
$belowtitle = "<br /><span style=\"font-size: 85%;\">".getMLText('in_folder').": /";
$folder = $document->getFolder();
$path = $folder->getPath();
for ($i = 1; $i < count($path); $i++) {
$belowtitle .= htmlspecialchars($path[$i]->getName())."/";
}
$belowtitle .= "</span>";
$lcattributes = $lc->getAttributes();
$attrstr = '';
if($lcattributes) {
$attrstr .= "<table class=\"table table-condensed\">\n";
$attrstr .= "<tr><th>".getMLText('name')."</th><th>".getMLText('attribute_value')."</th></tr>";
foreach($lcattributes as $lcattribute) {
$attrdef = $lcattribute->getAttributeDefinition();
$attrstr .= "<tr><td>".htmlspecialchars($attrdef->getName())."</td><td>".htmlspecialchars(implode(', ', $lcattribute->getValueAsArray()))."</td></tr>\n";
}
$attrstr .= "</table>\n";
}
$docttributes = $document->getAttributes();
if($docttributes) {
$attrstr .= "<table class=\"table table-condensed\">\n";
$attrstr .= "<tr><th>".getMLText('name')."</th><th>".getMLText('attribute_value')."</th></tr>";
foreach($docttributes as $docttribute) {
$attrdef = $docttribute->getAttributeDefinition();
$attrstr .= "<tr><td>".htmlspecialchars($attrdef->getName())."</td><td>".htmlspecialchars(implode(', ', $docttribute->getValueAsArray()))."</td></tr>\n";
}
$attrstr .= "</table>\n";
}
$extracontent = array();
$extracontent['below_title'] = $belowtitle;
if($attrstr)
$extracontent['bottom_title'] = '<br />'.$this->printPopupBox('<span class="btn btn-mini btn-default">'.getMLText('attributes').'</span>', $attrstr, true);
print $this->documentListRow($document, $previewer, false, 0, $extracontent);
if(0) {
print "<tr id=\"table-row-document-".$document->getID()."\" class=\"table-row-document\" rel=\"document_".$document->getID()."\" formtoken=\"".createFormKey('movedocument')."\" draggable=\"true\">"; print "<tr id=\"table-row-document-".$document->getID()."\" class=\"table-row-document\" rel=\"document_".$document->getID()."\" formtoken=\"".createFormKey('movedocument')."\" draggable=\"true\">";
if (in_array(2, $searchin)) { if (in_array(2, $searchin)) {
$docName = $this->markQuery(htmlspecialchars($document->getName()), "i"); $docName = $this->markQuery(htmlspecialchars($document->getName()), "i");
@ -565,6 +601,7 @@ class SeedDMS_View_Search extends SeedDMS_Bootstrap_Style {
print "</div>"; print "</div>";
print "</td>"; print "</td>";
print "</tr>\n"; print "</tr>\n";
}
} }
} elseif(get_class($entry) == $dms->getClassname('folder')) { } elseif(get_class($entry) == $dms->getClassname('folder')) {
$folder = $entry; $folder = $entry;
@ -574,6 +611,23 @@ class SeedDMS_View_Search extends SeedDMS_Bootstrap_Style {
} else { } else {
$folderName = htmlspecialchars($folder->getName()); $folderName = htmlspecialchars($folder->getName());
} }
$attrstr = '';
$folderattributes = $folder->getAttributes();
if($folderattributes) {
$attrstr .= "<table class=\"table table-condensed\">\n";
$attrstr .= "<tr><th>".getMLText('name')."</th><th>".getMLText('attribute_value')."</th></tr>";
foreach($folderattributes as $folderattribute) {
$attrdef = $folderattribute->getAttributeDefinition();
$attrstr .= "<tr><td>".htmlspecialchars($attrdef->getName())."</td><td>".htmlspecialchars(implode(', ', $folderattribute->getValueAsArray()))."</td></tr>\n";
}
$attrstr .= "</table>";
}
$extracontent = array();
if($attrstr)
$extracontent['bottom_title'] = '<br />'.$this->printPopupBox('<span class="btn btn-mini btn-default">'.getMLText('attributes').'</span>', $attrstr, true);
print $this->folderListRow($folder, $extracontent);
if(0) {
print "<tr id=\"table-row-folder-".$folder->getID()."\" draggable=\"true\" rel=\"folder_".$folder->getID()."\" class=\"folder table-row-folder\" formtoken=\"".createFormKey('movefolder')."\">"; print "<tr id=\"table-row-folder-".$folder->getID()."\" draggable=\"true\" rel=\"folder_".$folder->getID()."\" class=\"folder table-row-folder\" formtoken=\"".createFormKey('movefolder')."\">";
print "<td><a class=\"standardText\" href=\"../out/out.ViewFolder.php?folderid=".$folder->getID()."\"><img src=\"".$this->imgpath."folder.png\" width=\"24\" height=\"24\" border=0></a></td>"; print "<td><a class=\"standardText\" href=\"../out/out.ViewFolder.php?folderid=".$folder->getID()."\"><img src=\"".$this->imgpath."folder.png\" width=\"24\" height=\"24\" border=0></a></td>";
print "<td><a class=\"standardText\" href=\"../out/out.ViewFolder.php?folderid=".$folder->getID()."\">"; print "<td><a class=\"standardText\" href=\"../out/out.ViewFolder.php?folderid=".$folder->getID()."\">";
@ -630,6 +684,7 @@ class SeedDMS_View_Search extends SeedDMS_Bootstrap_Style {
print "</div>"; print "</div>";
print "</td>"; print "</td>";
print "</tr>\n"; print "</tr>\n";
}
} }
} }
print "</tbody></table>\n"; print "</tbody></table>\n";

View File

@ -320,7 +320,7 @@ $(document).ready( function() {
); );
$options = array(); $options = array();
foreach($groups as $group) { foreach($groups as $group) {
$options[] = array($group->getID(), $group->getName(), ($currUser && $group->isMember($currUser))); $options[] = array($group->getID(), htmlspecialchars($group->getName()), ($currUser && $group->isMember($currUser)));
} }
$this->formField( $this->formField(
getMLText("groups"), getMLText("groups"),