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

This commit is contained in:
Uwe Steinmann 2020-03-26 09:31:34 +01:00
commit 2a551cf990
47 changed files with 2282 additions and 161 deletions

View File

@ -9,6 +9,7 @@
--------------------------------------------------------------------------------
- fix removal of roles (Closes: #465)
- fix password forgotten process
- fix setting role of new user and retrieving role of existing user
--------------------------------------------------------------------------------
Changes in version 6.0.8
@ -143,6 +144,7 @@
- initialize categories to empty array. Closes #458
- add new parameter $skipcont to hook folderListitem()
- use standard output format for documents and folders on ManageNotify page
- allow multiple dependencies on seeddms of extension
--------------------------------------------------------------------------------
Changes in version 5.1.15

View File

@ -190,10 +190,22 @@ class SeedDMS_Core_DMS {
*/
public $callbacks;
/**
* @var string last error message. This can be set by hooks to pass an
* error message from the hook to the application which has called the
* method containing the hook. For example SeedDMS_Core_Document::remove()
* calls the hook 'onPreRemoveDocument'. The hook function can set $dms->lasterror
* which can than be read when SeedDMS_Core_Document::remove() fails.
* This variable could be set in any SeedDMS_Core class, but is currently
* only set by hooks.
* @access public
*/
public $lasterror;
/**
* @var SeedDMS_Core_DMS
*/
public $_dms;
// public $_dms;
/**
@ -459,6 +471,7 @@ class SeedDMS_Core_DMS {
$this->classnames['transmittalitem'] = 'SeedDMS_Core_TransmittalItem';
$this->classnames['downloadlink'] = 'SeedDMS_Core_DownloadLink';
$this->callbacks = array();
$this->lasterror = '';
$this->version = '@package_version@';
if($this->version[0] == '@')
$this->version = '6.0.9';
@ -2591,8 +2604,8 @@ class SeedDMS_Core_DMS {
$user = $this->getUser($this->db->getInsertID('tblUsers'));
/* Check if 'onPostAddUser' callback is set */
if(isset($this->_dms->callbacks['onPostAddUser'])) {
foreach($this->_dms->callbacks['onPostUser'] as $callback) {
if(isset($this->callbacks['onPostAddUser'])) {
foreach($this->callbacks['onPostUser'] as $callback) {
/** @noinspection PhpStatementHasEmptyBodyInspection */
if(!call_user_func($callback[0], $callback[1], $user)) {
}
@ -2654,8 +2667,8 @@ class SeedDMS_Core_DMS {
$group = $this->getGroup($this->db->getInsertID('tblGroups'));
/* Check if 'onPostAddGroup' callback is set */
if(isset($this->_dms->callbacks['onPostAddGroup'])) {
foreach($this->_dms->callbacks['onPostAddGroup'] as $callback) {
if(isset($this->callbacks['onPostAddGroup'])) {
foreach($this->callbacks['onPostAddGroup'] as $callback) {
/** @noinspection PhpStatementHasEmptyBodyInspection */
if(!call_user_func($callback[0], $callback[1], $group)) {
}
@ -2850,8 +2863,8 @@ class SeedDMS_Core_DMS {
$category = $this->getKeywordCategory($this->db->getInsertID('tblKeywordCategories'));
/* Check if 'onPostAddKeywordCategory' callback is set */
if(isset($this->_dms->callbacks['onPostAddKeywordCategory'])) {
foreach($this->_dms->callbacks['onPostAddKeywordCategory'] as $callback) {
if(isset($this->callbacks['onPostAddKeywordCategory'])) {
foreach($this->callbacks['onPostAddKeywordCategory'] as $callback) {
/** @noinspection PhpStatementHasEmptyBodyInspection */
if(!call_user_func($callback[0], $callback[1], $category)) {
}
@ -2927,8 +2940,8 @@ class SeedDMS_Core_DMS {
$category = $this->getDocumentCategory($this->db->getInsertID('tblCategory'));
/* Check if 'onPostAddDocumentCategory' callback is set */
if(isset($this->_dms->callbacks['onPostAddDocumentCategory'])) {
foreach($this->_dms->callbacks['onPostAddDocumentCategory'] as $callback) {
if(isset($this->callbacks['onPostAddDocumentCategory'])) {
foreach($this->callbacks['onPostAddDocumentCategory'] as $callback) {
/** @noinspection PhpStatementHasEmptyBodyInspection */
if(!call_user_func($callback[0], $callback[1], $category)) {
}

View File

@ -2383,6 +2383,8 @@ class SeedDMS_Core_Document extends SeedDMS_Core_Object { /* {{{ */
* @return bool|mixed
*/
function removeContent($version) { /* {{{ */
$this->_dms->lasterror = '';
/* Check if 'onPreRemoveDocument' callback is set */
if(isset($this->_dms->callbacks['onPreRemoveContent'])) {
foreach($this->_dms->callbacks['onPreRemoveContent'] as $callback) {
@ -2668,6 +2670,7 @@ class SeedDMS_Core_Document extends SeedDMS_Core_Object { /* {{{ */
*/
function remove() { /* {{{ */
$db = $this->_dms->getDB();
$this->_dms->lasterror = '';
/* Check if 'onPreRemoveDocument' callback is set */
if(isset($this->_dms->callbacks['onPreRemoveDocument'])) {

View File

@ -24,7 +24,9 @@
</stability>
<license uri="http://opensource.org/licenses/gpl-license">GPL License</license>
<notes>
- no changes, just keep same version as seeddms application
- fix call of hooks in SeedDMS_Core
- add variable lasterror in SeedDMS_Core_DMS which can be set by hooks to pass an
error msg to the calling application
</notes>
<contents>
<dir baseinstalldir="SeedDMS" name="/">

View File

@ -152,10 +152,11 @@ class SeedDMS_Preview_PdfPreviewer extends SeedDMS_Preview_Base {
* @param string $dir directory relative to $this->previewDir
* @return boolean true if preview exists, otherwise false
*/
public function hasRawPreview($infile, $dir) { /* {{{ */
public function hasRawPreview($infile, $dir, $target='') { /* {{{ */
if(!$this->previewDir)
return false;
$target = $this->previewDir.$dir.md5($infile);
if(!$target)
$target = $this->previewDir.$dir.md5($infile);
if($target !== false && file_exists($target.'.pdf') && filectime($target.'.pdf') >= filectime($infile)) {
return true;
}
@ -193,11 +194,12 @@ class SeedDMS_Preview_PdfPreviewer extends SeedDMS_Preview_Base {
* @param string $dir directory relative to $this->previewDir
* @return boolean/string image content if preview exists, otherwise false
*/
public function getRawPreview($infile, $dir) { /* {{{ */
public function getRawPreview($infile, $dir, $target='') { /* {{{ */
if(!$this->previewDir)
return false;
$target = $this->previewDir.$dir.md5($infile);
if(!$target)
$target = $this->previewDir.$dir.md5($infile);
if($target && file_exists($target.'.pdf')) {
$this->sendFile($target.'.pdf');
}

View File

@ -11,11 +11,11 @@
<email>uwe@steinmann.cx</email>
<active>yes</active>
</lead>
<date>2020-02-17</date>
<date>2020-03-21</date>
<time>09:49:39</time>
<version>
<release>1.3.0</release>
<api>1.3.0</api>
<release>1.3.1</release>
<api>1.3.1</api>
</version>
<stability>
<release>stable</release>
@ -23,7 +23,7 @@
</stability>
<license uri="http://opensource.org/licenses/gpl-license">GPL License</license>
<notes>
add new methode getPreviewFile()
add parameter $target to SeedDMS_Preview_pdfPreviewer::hasRawPreview() and SeedDMS_Preview_pdfPreviewer::getRawPreview()
</notes>
<contents>
<dir baseinstalldir="SeedDMS" name="/">
@ -420,5 +420,21 @@ new parameter for enabling/disabling xsendfile
fix creation of pdf preview if document content class is not SeedDMS_Core_DocumentContent
</notes>
</release>
<release>
<date>2020-02-17</date>
<time>09:49:39</time>
<version>
<release>1.3.0</release>
<api>1.3.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<license uri="http://opensource.org/licenses/gpl-license">GPL License</license>
<notes>
add new methode getPreviewFile()
</notes>
</release>
</changelog>
</package>

View File

@ -0,0 +1,74 @@
<?php
/**
* Implementation of PdfPreview controller
*
* @category DMS
* @package SeedDMS
* @license GPL 2
* @version @version@
* @author Uwe Steinmann <uwe@steinmann.cx>
* @copyright Copyright (C) 2010-2013 Uwe Steinmann
* @version Release: @package_version@
*/
/**
* Class which does the busines logic for previewing a document
*
* @category DMS
* @package SeedDMS
* @author Uwe Steinmann <uwe@steinmann.cx>
* @copyright Copyright (C) 2010-2013 Uwe Steinmann
* @version Release: @package_version@
*/
class SeedDMS_Controller_PdfPreview extends SeedDMS_Controller_Common {
public function run() {
global $theme;
$dms = $this->params['dms'];
$type = $this->params['type'];
$settings = $this->params['settings'];
switch($type) {
case "version":
$version = $this->params['version'];
$document = $this->params['document'];
if($version < 1) {
$content = $this->callHook('documentLatestContent', $document);
if($content === null)
$content = $document->getLatestContent();
} else {
$content = $this->callHook('documentContent', $document, $version);
if($content === null)
$content = $document->getContentByVersion($version);
}
if (!is_object($content)) {
$this->errormsg = 'invalid_version';
return false;
}
/* set params['content'] for compatiblity with older extensions which
* expect the content in the controller
*/
$this->params['content'] = $content;
if(null === $this->callHook('version')) {
$previewer = new SeedDMS_Preview_PdfPreviewer($settings->_cacheDir, $settings->_cmdTimeout);
$previewer->setConverters(isset($settings->_converters['pdf']) ? $settings->_converters['pdf'] : array());
$previewer->setXsendfile($settings->_enableXsendfile);
if(!$previewer->hasPreview($content)) {
add_log_line("");
if(!$previewer->createPreview($content)) {
add_log_line("", PEAR_LOG_ERR);
}
}
if(!$previewer->hasPreview($content)) {
header('Content-Type: application/pdf');
readfile('../views/'.$theme.'/images/empty.pdf');
exit;
}
header('Content-Type: application/pdf');
$previewer->getPreview($content);
}
break;
}
return true;
}
}

View File

@ -52,7 +52,7 @@ class SeedDMS_Controller_Preview extends SeedDMS_Controller_Common {
$this->params['content'] = $content;
if(null === $this->callHook('version')) {
if($width)
$previewer = new SeedDMS_Preview_Previewer($settings->_cacheDir, $width);
$previewer = new SeedDMS_Preview_Previewer($settings->_cacheDir, $width, $settings->_cmdTimeout);
else
$previewer = new SeedDMS_Preview_Previewer($settings->_cacheDir);
$previewer->setConverters($settings->_converters['preview']);

View File

@ -39,13 +39,16 @@ class SeedDMS_Controller_RemoveDocument extends SeedDMS_Controller_Common {
if(false === $this->callHook('preRemoveDocument')) {
if(empty($this->errormsg))
$this->errormsg = 'hook_preRemoveDocument_failed';
return null;
return false;
}
$result = $this->callHook('removeDocument', $document);
if($result === null) {
if (!$document->remove()) {
$this->errormsg = "error_occured";
if($dms->lasterror)
$this->errormsg = $dms->lasterror;
else
$this->errormsg = "error_occured";
return false;
}
} elseif($result === false) {

View File

@ -37,7 +37,7 @@ class SeedDMS_Controller_RemoveFolder extends SeedDMS_Controller_Common {
if(false === $this->callHook('preRemoveFolder')) {
if(empty($this->errormsg))
$this->errormsg = 'hook_preRemoveFolder_failed';
return null;
return false;
}
$result = $this->callHook('removeFolder', $folder);

View File

@ -372,14 +372,27 @@ class SeedDMS_Extension_Mgr {
switch($dkey) {
case 'seeddms':
$version = new SeedDMS_Version;
$tmp = explode('-', $dval, 2);
if(self::cmpVersion($tmp[0], $version->version()) > 0 || ($tmp[1] && self::cmpVersion($tmp[1], $version->version()) < 0))
$this->errmsgs[] = sprintf("Incorrect SeedDMS version (needs version %s)", $extconf['constraints']['depends']['seeddms']);
if(is_array($dval)) {
$fullfill = false;
foreach($dval as $ddval) {
$tmp = explode('-', $ddval, 2);
if(self::cmpVersion($tmp[0], $version->version()) > 0 || ($tmp[1] && self::cmpVersion($tmp[1], $version->version()) < 0))
; // No within version range
else
$fullfill = true;
}
if(!$fullfill)
$this->errmsgs[] = sprintf("Incorrect SeedDMS version (needs version \"%s\")", implode('" or "', $dval));
} elseif(is_string($dval)) {
$tmp = explode('-', $dval, 2);
if(self::cmpVersion($tmp[0], $version->version()) > 0 || ($tmp[1] && self::cmpVersion($tmp[1], $version->version()) < 0))
$this->errmsgs[] = sprintf("Incorrect SeedDMS version (needs version %s)", $extconf['constraints']['depends']['seeddms']);
}
break;
case 'php':
$tmp = explode('-', $dval, 2);
if(self::cmpVersion($tmp[0], phpversion()) > 0 || ($tmp[1] && self::cmpVersion($tmp[1], phpversion()) < 0))
$this->errmsgs[] = sprintf("Incorrect PHP version (needs version %s)", $extconf['constraints']['depends']['php']);
$this->errmsgs[] = sprintf("Incorrect PHP version (needs version %s)", $dval);
break;
case 'phpext':
if(is_array($dval) && $dval) {

View File

@ -295,6 +295,7 @@ URL: [url]',
'converter_new_cmd' => 'converter_new_cmd',
'converter_new_mimetype' => 'نوع جديد من الوثائق',
'copied_to_checkout_as' => 'نسخ الى السب مثل',
'create_download_link' => '',
'create_fulltext_index' => 'انشاء فهرس للنص الكامل',
'create_fulltext_index_warning' => 'انت على وشك اعادة انشاء فهرس النص الكامل.هذا سيتطلب وقت كافي وسيؤثر بشكل عام على كفاءة النظام. اذا كنت حقا تود اعادة انشاء الفهرس، من فضلك قم بتاكيد العملية.',
'creation_date' => 'انشأ في تاريخ',
@ -771,6 +772,7 @@ URL: [url]',
'my_documents' => 'مستنداتي',
'my_transmittals' => 'الإحالات الخاصة بي',
'name' => 'اسم',
'nb_NO' => '',
'needs_correction' => 'يحتاج الى تصحيح',
'needs_workflow_action' => 'هذا المستند يتطلب انتباهك . من فضلك تفقد زر مسار العمل',
'network_drive' => 'قرص النترنت',

View File

@ -278,6 +278,7 @@ $text = array(
'converter_new_cmd' => '',
'converter_new_mimetype' => '',
'copied_to_checkout_as' => '',
'create_download_link' => '',
'create_fulltext_index' => 'Създай пълнотекстов индекс',
'create_fulltext_index_warning' => 'Вие искате да пресъздадете пълнотекстов индекс. Това ще отнеме време и ще понижи производителността. Да продолжа ли?',
'creation_date' => 'Създаден',
@ -700,6 +701,7 @@ $text = array(
'my_documents' => 'Моите документи',
'my_transmittals' => '',
'name' => 'Име',
'nb_NO' => '',
'needs_correction' => '',
'needs_workflow_action' => '',
'network_drive' => '',

View File

@ -19,7 +19,7 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
//
// Translators: Admin (749)
// Translators: Admin (752)
$text = array(
'2_factor_auth' => '',
@ -283,6 +283,7 @@ URL: [url]',
'converter_new_cmd' => '',
'converter_new_mimetype' => '',
'copied_to_checkout_as' => '',
'create_download_link' => '',
'create_fulltext_index' => 'Crea un índex full-text',
'create_fulltext_index_warning' => '',
'creation_date' => 'Creació',
@ -703,8 +704,9 @@ URL: [url]',
'move_folder' => 'Moure directori',
'my_account' => 'El meu compte',
'my_documents' => 'Els meus documents',
'my_transmittals' => '',
'my_transmittals' => 'Documents enviats per mi',
'name' => 'Nom',
'nb_NO' => '',
'needs_correction' => '',
'needs_workflow_action' => '',
'network_drive' => '',
@ -777,7 +779,7 @@ URL: [url]',
'october' => 'Octubre',
'old' => 'Vell',
'only_jpg_user_images' => 'Només pot utilitzar imatges .jpg com imatges d\'usuari',
'order_by_sequence_off' => '',
'order_by_sequence_off' => 'L\'ordenació per seqüència és desactivada a la configuració. Si vol que aquest paràmetre sigui efectiu, haurà d\'activar-lo.',
'original_filename' => '',
'overall_indexing_progress' => '',
'owner' => 'Propietari/a',
@ -843,7 +845,7 @@ URL: [url]',
'receipt_status' => '',
'receipt_summary' => '',
'receipt_update_failed' => '',
'recent_uploads' => '',
'recent_uploads' => 'Documents pujats recentment',
'reception' => '',
'reception_acknowleged' => '',
'reception_noaction' => '',

View File

@ -307,6 +307,7 @@ URL: [url]',
'converter_new_cmd' => 'Příkaz',
'converter_new_mimetype' => 'Nový mimetype',
'copied_to_checkout_as' => 'Soubor zkopírován do kontrolního prostoru jako \'[filename]\' v [date]',
'create_download_link' => '',
'create_fulltext_index' => 'Vytvořit fulltext index',
'create_fulltext_index_warning' => 'Hodláte znovu vytvořit fulltext index. Může to trvat dlouho a zpomalit běh systému. Pokud víte, co děláte, potvďte operaci.',
'creation_date' => 'Vytvořeno',
@ -802,6 +803,7 @@ URL: [url]',
'my_documents' => 'Moje dokumenty',
'my_transmittals' => 'Moje přenosy',
'name' => 'Název',
'nb_NO' => '',
'needs_correction' => 'Vyžaduje opravu',
'needs_workflow_action' => 'Tento dokument vyžaduje vaši pozornost. Zkontrolujte prosím kartu workflow.',
'network_drive' => 'Síťové úložiště',

View File

@ -19,7 +19,7 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
//
// Translators: Admin (2749), dgrutsch (22)
// Translators: Admin (2750), dgrutsch (22)
$text = array(
'2_factor_auth' => '2-Faktor Authentifizierung',
@ -307,6 +307,7 @@ URL: [url]',
'converter_new_cmd' => 'Kommando',
'converter_new_mimetype' => 'Neuer Mime-Type',
'copied_to_checkout_as' => 'Datei am [date] in den Checkout-Space als \'[filename]\' kopiert.',
'create_download_link' => '',
'create_fulltext_index' => 'Erzeuge Volltext-Index',
'create_fulltext_index_warning' => 'Sie möchten den Volltext-Index neu erzeugen. Dies kann beträchtlich Zeit in Anspruch nehmen und Gesamtleistung Ihres System beeinträchtigen. Bestätigen Sie bitte diese Operation.',
'creation_date' => 'Erstellt am',
@ -802,6 +803,7 @@ URL: [url]',
'my_documents' => 'Meine Dokumente',
'my_transmittals' => 'Meine Dokumentenlisten',
'name' => 'Name',
'nb_NO' => 'Norwegisch',
'needs_correction' => 'Korrektur erforderlich',
'needs_workflow_action' => 'Dieses Dokument erfordert eine Aktion. Bitte schauen Sie auf den Workflow-Reiter.',
'network_drive' => 'Netzwerklaufwerk',

View File

@ -278,6 +278,7 @@ $text = array(
'converter_new_cmd' => '',
'converter_new_mimetype' => '',
'copied_to_checkout_as' => '',
'create_download_link' => '',
'create_fulltext_index' => '',
'create_fulltext_index_warning' => '',
'creation_date' => 'Δημιουργήθηκε',
@ -700,6 +701,7 @@ $text = array(
'my_documents' => 'Τα έγγραφα μου',
'my_transmittals' => '',
'name' => 'Όνομα',
'nb_NO' => '',
'needs_correction' => '',
'needs_workflow_action' => '',
'network_drive' => '',

View File

@ -19,7 +19,7 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
//
// Translators: Admin (1848), archonwang (3), dgrutsch (9), netixw (14)
// Translators: Admin (1849), archonwang (3), dgrutsch (9), netixw (14)
$text = array(
'2_factor_auth' => '2-factor authentication',
@ -307,6 +307,7 @@ URL: [url]',
'converter_new_cmd' => 'Command',
'converter_new_mimetype' => 'New mimetype',
'copied_to_checkout_as' => 'File copied to checkout space as \'[filename]\' on [date]',
'create_download_link' => '',
'create_fulltext_index' => 'Create fulltext index',
'create_fulltext_index_warning' => 'You are about to recreate the fulltext index. This can take a considerable amount of time and reduce your overall system performance. If you really want to recreate the index, please confirm your operation.',
'creation_date' => 'Created',
@ -802,6 +803,7 @@ URL: [url]',
'my_documents' => 'My Documents',
'my_transmittals' => 'My Transmittals',
'name' => 'Name',
'nb_NO' => 'Norwegian',
'needs_correction' => 'Needs correction',
'needs_workflow_action' => 'This document requires your attention. Please check the workflow tab.',
'network_drive' => 'Network drive',

View File

@ -19,7 +19,7 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
//
// Translators: acabello (20), Admin (1133), angel (123), francisco (2), jaimem (14)
// Translators: acabello (20), Admin (1136), angel (123), francisco (2), jaimem (14)
$text = array(
'2_factor_auth' => '',
@ -302,6 +302,7 @@ URL: [url]',
'converter_new_cmd' => 'Comando',
'converter_new_mimetype' => 'Nuevo mime type',
'copied_to_checkout_as' => '',
'create_download_link' => '',
'create_fulltext_index' => 'Crear índice de texto completo',
'create_fulltext_index_warning' => 'Usted va a regenerar el índice te texto completo. Esto puede tardar un tiempo considerable y consumir capacidad de su equipo. Si realmente quiere regenerar el índice, por favor confirme la operación.',
'creation_date' => 'Creación',
@ -721,7 +722,7 @@ URL: [url]',
'link_to_version' => '',
'list_access_rights' => 'Listar los derechos de acceso',
'list_contains_no_access_docs' => '',
'list_hooks' => '',
'list_hooks' => 'Mis bloques',
'list_tasks' => '',
'local_file' => 'Fichero local',
'locked_by' => 'Bloqueado por',
@ -776,8 +777,9 @@ URL: [url]',
'move_folder' => 'Mover carpeta',
'my_account' => 'Mi cuenta',
'my_documents' => 'Mis documentos',
'my_transmittals' => '',
'my_transmittals' => 'Mi transmision',
'name' => 'Nombre',
'nb_NO' => '',
'needs_correction' => '',
'needs_workflow_action' => 'Este documento requiere su atención. Por favor chequee la pestaña de flujo de trabajo.',
'network_drive' => '',
@ -1117,7 +1119,7 @@ URL: [url]',
'scheduler_class_description' => '',
'scheduler_class_parameter' => '',
'scheduler_class_tasks' => '',
'scheduler_task_mgr' => '',
'scheduler_task_mgr' => 'Rrogramacion',
'search' => 'Buscar',
'search_fulltext' => 'Buscar en texto completo',
'search_in' => 'Buscar en',

View File

@ -19,7 +19,7 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
//
// Translators: Admin (1101), jeromerobert (50), lonnnew (9), Oudiceval (767)
// Translators: Admin (1102), jeromerobert (50), lonnnew (9), Oudiceval (823)
$text = array(
'2_factor_auth' => 'Authentification forte',
@ -36,11 +36,11 @@ $text = array(
'access_mode_read' => 'Lecture',
'access_mode_readwrite' => 'Lecture-écriture',
'access_permission_changed_email' => 'Permission modifiée',
'access_permission_changed_email_body' => 'Permission modifiée
Document: [name]
Dossier parent: [folder_path]
Utilisateur: [username]
URL: [url]',
'access_permission_changed_email_body' => 'Permission modifiée
Document : [name]
Dossier parent : [folder_path]
Utilisateur : [username]
URL : [url]',
'access_permission_changed_email_subject' => '[sitename]: [name] - Permission modifiée',
'according_settings' => 'Paramètres en fonction',
'action' => 'Action',
@ -217,14 +217,14 @@ URL: [url]',
'cancel' => 'Annuler',
'cannot_assign_invalid_state' => 'Impossible de modifier un document obsolète ou rejeté',
'cannot_change_final_states' => 'Attention : Vous ne pouvez pas modifier létat d\'un document rejeté, expiré ou en attente de vérification ou dapprobation.',
'cannot_delete_user' => 'Ne peut pas effacer l\'utilisateur',
'cannot_delete_user' => 'Impossible de supprimer lutilisateur',
'cannot_delete_yourself' => 'Vous ne pouvez pas vous supprimer',
'cannot_move_root' => 'Erreur : Impossible de déplacer le dossier racine.',
'cannot_retrieve_approval_snapshot' => 'Impossible de retrouver l\'instantané de statut d\'approbation pour cette version de document.',
'cannot_retrieve_review_snapshot' => 'Impossible de récupérer linstantané du statut de vérification pour cette version du document.',
'cannot_rm_root' => 'Erreur : Dossier racine ineffaçable.',
'categories' => 'Catégories',
'categories_loading' => 'Veuillez patienter durant le chargement de la liste des catégories…',
'categories_loading' => 'Veuillez patienter pendant le chargement de la liste des catégories…',
'category' => 'Catégorie',
'category_exists' => 'Catégorie déjà existante.',
'category_filter' => 'Uniquement les catégories',
@ -232,7 +232,7 @@ URL: [url]',
'category_in_use' => 'Cette catégorie est en cours d\'utilisation par des documents.',
'category_noname' => 'Aucun nom de catégorie fourni.',
'ca_ES' => 'Catalan',
'changelog_loading' => '',
'changelog_loading' => 'Veuillez patienter pendant le chargement du journal des modifications…',
'change_assignments' => 'Changer les affectations',
'change_password' => 'Changer de mot de passe',
'change_password_message' => 'Votre mot de passe a été changé.',
@ -248,7 +248,7 @@ URL: [url]',
'chart_docsperuser_title' => 'Documents par utilisateur',
'chart_selection' => 'Sélectionnez un graphique',
'chart_sizeperuser_title' => 'Volume par utilisateur',
'checkedout_file_has_different_version' => 'La version bloquée nest pas identique à la version courante. Le déblocage ne modifiera pas le document.',
'checkedout_file_has_different_version' => 'La version bloquée nest pas identique à la version actuelle. Le déblocage ne modifiera pas le document.',
'checkedout_file_has_disappeared' => 'Le fichier du document bloqué nexiste plus. Le déblocage est impossible.',
'checkedout_file_is_unchanged' => 'Le fichier du document bloqué est inchangé. Le déblocage nest pas possible. Si vous ne souhaitez pas apporter de modifications, désactivez le blocage.',
'checkin_document' => 'Débloquer (check-in)',
@ -269,7 +269,7 @@ URL: [url]',
'choose_workflow_action' => 'Choisir une action de workflow',
'choose_workflow_state' => 'Choisir un état de workflow',
'class_name' => 'Nom de classe',
'clear_cache' => 'Effacer le cache',
'clear_cache' => 'Vider le cache',
'clear_clipboard' => 'Vider le presse-papier',
'clear_password' => 'Sans mot de passe',
'clipboard' => 'Presse-papier',
@ -279,7 +279,7 @@ URL: [url]',
'comment_changed_email' => '',
'comment_for_current_version' => 'Commentaires pour la version actuelle',
'configure_extension' => 'Configurer lextension',
'confirm_clear_cache' => 'Confirmer l\'effacement du cache',
'confirm_clear_cache' => 'Voulez-vous vraiment vider le cache ? Cela va effacer toutes les miniatures.',
'confirm_create_fulltext_index' => 'Oui, je souhaite recréer l\'index de recherche plein texte !',
'confirm_move_document' => 'Veuillez confirmer le déplacement du document.',
'confirm_move_folder' => 'Veuillez confirmer le déplacement du dossier.',
@ -299,7 +299,7 @@ URL: [url]',
'confirm_rm_user' => 'Voulez-vous vraiment supprimer lutilisateur « [username] » ?<br>Attention : Cette action est irréversible.',
'confirm_rm_user_from_processes' => 'Voulez-vous vraiment retirer lutilisateur « [username] » de tous les processus ?<br>Attention : Cette action peut entrainer la publication des documents si lutilisateur était le seul (ou dernier) approbateur.',
'confirm_rm_version' => 'Voulez-vous vraiment supprimer la version [version] du document « [documentname] » ?<br>Attention : Cette action est irréversible.',
'confirm_transfer_link_document' => '',
'confirm_transfer_link_document' => 'Sélectionnez si vous souhaitez lier le document glissé ou transférer son contenu au document cible en tant que nouvelle version. Seuls les documents avec une seule version peuvent être transférés. Le document glissé sera supprimé par la suite.',
'confirm_transfer_objects' => 'Voulez-vous vraiment transférer les documents, dossiers, etc. de lutilisateur « [username] » ?<br>Attention : Cette action est irréversible.',
'confirm_update_transmittalitem' => 'Confirmer la mise à jour',
'content' => 'Contenu',
@ -307,6 +307,7 @@ URL: [url]',
'converter_new_cmd' => 'Commande',
'converter_new_mimetype' => 'Nouveau type MIME',
'copied_to_checkout_as' => 'Fichier copié dans lespace de blocage en tant que « [filename] » ([date])',
'create_download_link' => '',
'create_fulltext_index' => 'Créer un index de recherche plein texte',
'create_fulltext_index_warning' => 'Vous allez recréer l\'index de recherche plein texte. Cela peut prendre un temps considérable et réduire les performances de votre système dans son ensemble. Si vous voulez vraiment recréer l\'index, merci de confirmer votre opération.',
'creation_date' => 'Créé le',
@ -442,7 +443,7 @@ URL: [url]',
'do_object_repair' => 'Réparer tous les dossiers et documents.',
'do_object_setchecksum' => 'Définir checksum',
'do_object_setfilesize' => 'Définir la taille du fichier',
'do_object_setfiletype' => '',
'do_object_setfiletype' => 'Définir le type de fichier',
'do_object_unlink' => 'Supprimer la version du document',
'draft' => 'Ébauche',
'draft_pending_approval' => 'Ébauche - en attente dapprobation',
@ -451,7 +452,7 @@ URL: [url]',
'dropfolderdir_missing' => 'Votre dossier de dépôt personnel n\'existe pas sur le serveur ! Veuillez faire une demande à l\'administrateur.',
'dropfolder_file' => 'Fichier du dossier de dépôt',
'dropfolder_folder' => 'Répertoire du dossier de dépôt',
'dropfolder_metadata' => '',
'dropfolder_metadata' => 'Métadonnées du dossier de dépôt',
'dropupload' => 'Téléchargement rapide',
'drop_files_here' => 'Glissez les fichiers ici !',
'dump_creation' => 'Sauvegarder la base de données',
@ -477,7 +478,7 @@ URL: [url]',
'edit_folder_props' => 'Modifier le dossier',
'edit_group' => 'Modifier un groupe',
'edit_online' => 'Modification en ligne',
'edit_online_warning' => '',
'edit_online_warning' => 'Lenregistrement de vos modifications écrasera le contenu de la version actuelle au lieu de créer une nouvelle version.',
'edit_task' => '',
'edit_transmittal_props' => 'Modifier les propriétés de la transmission',
'edit_user' => 'Modifier un utilisateur',
@ -554,8 +555,8 @@ URL : [url]',
'files' => 'Fichiers',
'files_deletion' => 'Suppression de fichiers',
'files_deletion_warning' => 'Avec cette option, vous pouvez supprimer tous les fichiers d\'un dossier DMS. Les informations de version resteront visibles.',
'files_loading' => 'Patientez pendant le chargement de la liste des fichiers',
'filetype' => '',
'files_loading' => 'Veuillez patienter pendant le chargement de la liste des fichiers…',
'filetype' => 'Type de fichier',
'file_size' => 'Taille',
'filter_for_documents' => 'Filtre additionnel pour les documents',
'filter_for_folders' => 'Filtre additionnel pour les dossiers',
@ -661,7 +662,7 @@ URL: [url]',
'index_done' => 'Terminé',
'index_error' => 'Erreur',
'index_folder' => 'Dossier Index',
'index_no_content' => '',
'index_no_content' => 'Contenu non indexé',
'index_pending' => 'En attente',
'index_waiting' => 'Chargement…',
'individuals' => 'Individuels',
@ -727,7 +728,7 @@ URL: [url]',
'keep' => 'Ne pas modifier',
'keep_doc_status' => 'Garder le statut du document',
'keywords' => 'Mots-clés',
'keywords_loading' => 'Patientez pendant le chargement de la liste des mots-clés ...',
'keywords_loading' => 'Veuillez patienter pendant le chargement de la liste des mots-clés…',
'keyword_exists' => 'Mot-clé déjà existant',
'ko_KR' => 'Korean',
'language' => 'Langue',
@ -752,7 +753,7 @@ URL: [url]',
'lock_document' => 'Verrouiller',
'lock_message' => 'Ce document a été verrouillé par [username]. Seuls les utilisateurs autorisés peuvent déverrouiller ce document.',
'lock_status' => 'Statut',
'logfile_loading' => '',
'logfile_loading' => 'Veuillez patienter pendant le chargement du fichier journal…',
'login' => 'Identification',
'login_disabled_text' => 'Votre compte est désactivé, sans doute à cause de trop nombreuses connexions qui ont échoué.',
'login_disabled_title' => 'Compte désactivé',
@ -779,7 +780,7 @@ URL: [url]',
'max_upload_size' => 'Taille maximum de fichier déposé',
'may' => 'Mai',
'menu_dropfolder' => 'Dossier de dépôt',
'menu_upload_from_dropfolder' => '',
'menu_upload_from_dropfolder' => 'Importer ce fichier',
'mimetype' => 'Type MIME',
'minutes' => 'minutes',
'misc' => 'Divers',
@ -802,6 +803,7 @@ URL: [url]',
'my_documents' => 'Mes documents',
'my_transmittals' => 'Mes transmissions',
'name' => 'Nom',
'nb_NO' => '',
'needs_correction' => 'Nécessite une correction',
'needs_workflow_action' => 'Ce document requiert votre attention. Consultez l\'onglet workflow.',
'network_drive' => 'Lecteur réseau',
@ -839,11 +841,11 @@ Utilisateur : [username]
URL : [url]',
'new_subfolder_email_subject' => '[sitename]: [name] - Nouveau dossier',
'new_user_image' => 'Nouvelle image',
'next_revision_abbr' => '',
'next_revision_abbr' => 'Prochaine rév.',
'next_state' => 'Nouvel état',
'nl_NL' => 'Danois',
'no' => 'Non',
'notification' => 'Alerte',
'notification' => 'Notification',
'notify_added_email' => 'Vous avez été ajouté à la liste des notifications.',
'notify_added_email_body' => 'Ajouté à la liste des notifications
Nom : [name]
@ -863,11 +865,11 @@ URL: [url]',
'no_action' => 'Aucune action n\'est nécessaire',
'no_approval_needed' => 'Aucune approbation en attente',
'no_attached_files' => 'Aucun fichier attaché',
'no_backup_dir' => '',
'no_current_version' => 'Vous utilisez une vieille version de SeedDMS. La dernière version disponible est la [latestversion].',
'no_backup_dir' => 'Le répertoire de sauvegarde nest pas défini.',
'no_current_version' => 'Vous utilisez une ancienne version de SeedDMS. La dernière version disponible est la [latestversion].',
'no_default_keywords' => 'Aucun mot-clé disponible',
'no_docs_checked_out' => '',
'no_docs_expired' => '',
'no_docs_expired' => 'Aucun document expiré',
'no_docs_locked' => 'Aucun document verrouillé',
'no_docs_needs_correction' => 'Aucun document ne nécessite de correction',
'no_docs_rejected' => 'Aucun document rejeté.',
@ -1032,9 +1034,16 @@ URL : [url]',
'restrict_access' => 'Pas d\'accès',
'results_page' => 'Page de résultats',
'return_from_subworkflow' => 'Revenir du sous-workflow',
'return_from_subworkflow_email_body' => '',
'return_from_subworkflow_email_subject' => '',
'reverse_links' => 'Documents liés au document courant',
'return_from_subworkflow_email_body' => 'Retour du sous-workflow
Document : [name]
Version : [version]
Workflow : [workflow]
Sous-workflow : [subworkflow]
Dossier parent : [folder_path]
Utilisateur : [username]
URL : [url]',
'return_from_subworkflow_email_subject' => 'Retour du sous-workflow',
'reverse_links' => 'Documents liés au document actuel',
'reviewers' => 'Examinateurs',
'reviewer_already_assigned' => 'est déjà déclaré en tant quexaminateur',
'reviewer_already_removed' => 'Lexaminateur a déjà été retiré du processus de vérification ou a déjà soumis la vérification.',
@ -1158,7 +1167,7 @@ URL : [url]',
'scheduler_class_description' => '',
'scheduler_class_parameter' => '',
'scheduler_class_tasks' => '',
'scheduler_task_mgr' => '',
'scheduler_task_mgr' => 'Planificateur',
'search' => 'Recherche',
'search_fulltext' => 'Rechercher dans le texte',
'search_in' => 'Rechercher dans',
@ -1265,7 +1274,7 @@ Nom : [username]
'settings_createCheckOutDir_desc' => 'Les versions du document seront copiées dans ce dossier lorsquun document est bloqué (check-out).',
'settings_createdatabase' => 'Créer tables de la base de données',
'settings_createdirectory' => 'Créer répertoire',
'settings_currentvalue' => 'Valeur courante',
'settings_currentvalue' => 'Valeur actuelle',
'settings_Database' => 'Paramètres base de données',
'settings_dbDatabase' => 'Base de données',
'settings_dbDatabase_desc' => 'Le nom de votre base de données entré pendant le processus d\'installation. Ne pas modifier le champ sauf si absolument nécessaire, par exemple si la base de données a été déplacé.',
@ -1297,7 +1306,7 @@ Nom : [username]
'settings_dropFolderDir_desc' => 'Ce répertoire peut être utilisé pour déposer des fichiers sur le serveur et les importer à partir d\'ici au lieu de les charger à partir du navigateur. Le répertoire doit avoir un sous-répertoire pour chaque utilisateur autorisé à importer des fichiers de cette manière.',
'settings_Edition' => 'Paramètres dédition',
'settings_editOnlineFileTypes' => 'Types de fichiers éditables',
'settings_editOnlineFileTypes_desc' => 'Le contenu des fichiers portant les extensions précisées pourra être modifié en ligne (utiliser des lettres minuscules)',
'settings_editOnlineFileTypes_desc' => 'Le contenu des fichiers portant les extensions ou types MIME précisés pourra être modifié en ligne (utiliser des lettres minuscules)',
'settings_enable2FactorAuthentication' => 'Activer lauthentification forte',
'settings_enable2FactorAuthentication_desc' => 'Active/désactive l\'authentification forte à 2 facteurs. Les utilisateurs devront installer Google Authenticator sur leur téléphone mobile.',
'settings_enableAcknowledgeWorkflow' => '',
@ -1312,8 +1321,8 @@ Nom : [username]
'settings_enableClipboard_desc' => 'Active/désactive le presse-papier',
'settings_enableConverting' => 'Activer conversion des fichiers',
'settings_enableConverting_desc' => 'Active/désactive la conversion des fichiers',
'settings_enableDebugMode' => '',
'settings_enableDebugMode_desc' => '',
'settings_enableDebugMode' => 'Mode débogage',
'settings_enableDebugMode_desc' => 'Permet dactiver le mode débogage en ajoutant un nouveau menu dans les outils dadministration',
'settings_enableDropFolderList' => 'Activer la liste des fichiers du dossier de dépôt',
'settings_enableDropFolderList_desc' => 'Affiche un menu avec la liste des fichiers qui se trouvent dans le dossier de dépôt.',
'settings_enableDropUpload' => 'Activer la publication rapide de documents',
@ -1338,7 +1347,7 @@ Nom : [username]
'settings_enableHelp_desc' => 'Active/désactive le lien vers les écrans daide dans le menu',
'settings_enableLanguageSelector' => 'Activer la sélection de langue',
'settings_enableLanguageSelector_desc' => 'Montrer le sélecteur de langue d\'interface après connexion de l\'utilisateur.',
'settings_enableLargeFileUpload' => 'Activer téléchargement des gros fichiers',
'settings_enableLargeFileUpload' => 'Activer le dépôt de fichiers très volumineux',
'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_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 dune action par lutilisateur.',
@ -1456,8 +1465,8 @@ Nom : [username]
'settings_maxUploadSize' => 'Taille max. des fichiers',
'settings_maxUploadSize_desc' => 'Taille maximale (en octets) pour les fichiers téléversés. Concerne les versions dun document et les fichiers attachés.',
'settings_more_settings' => 'Configurer d\'autres paramètres. Connexion par défaut: admin/admin',
'settings_noDocumentFormFields' => 'N\'afficher pas ce champ',
'settings_noDocumentFormFields_desc' => 'Ce champ ne sera pas visible quand vous ajoutez ou éditez un document. Les valeurs existantes seront retenues.',
'settings_noDocumentFormFields' => 'Ne pas afficher ces champs',
'settings_noDocumentFormFields_desc' => 'Ces champs ne seront pas visibles à lajout et à la modification dun document. Les valeurs existantes seront conservées.',
'settings_notfound' => 'Introuvable',
'settings_Notification' => 'Notifications',
'settings_notwritable' => 'La configuration ne peut pas être enregistrée car le fichier de configuration nest pas accessible en écriture.',
@ -1497,12 +1506,12 @@ Nom : [username]
'settings_previewWidthMenuList_desc' => 'Largeur des vignettes affichées dans le menu déroulant « Dossier de dépôt ».',
'settings_printDisclaimer' => 'Afficher la clause de non-responsabilité',
'settings_printDisclaimer_desc' => 'Si activé, le message davertissement sera affiché en bas de chaque page.',
'settings_proxyUPassword' => '',
'settings_proxyUPassword_desc' => '',
'settings_proxyUrl' => '',
'settings_proxyUrl_desc' => '',
'settings_proxyUser' => '',
'settings_proxyUser_desc' => '',
'settings_proxyUPassword' => 'Mot de passe du proxy',
'settings_proxyUPassword_desc' => 'Mot de passe pour lauthentification via le proxy',
'settings_proxyUrl' => 'URL du proxy',
'settings_proxyUrl_desc' => 'URL du proxy utilisé pour accéder au dépôt des extensions',
'settings_proxyUser' => 'Nom dutilisateur du proxy',
'settings_proxyUser_desc' => 'Nom dutilisateur utilisé pour lauthentification via le proxy',
'settings_quota' => 'Quota de l\'utilisateur',
'settings_quota_desc' => 'Espace maximum (en octets) quun utilisateur peut occuper sur le disque. Définir à 0 pour un espace illimité. Une valeur spécifique peut être définie par utilisateur depuis son profil.',
'settings_removeFromDropFolder' => 'Supprimer le fichier du dossier de dépôt après un chargement réussi',
@ -1536,7 +1545,7 @@ Nom : [username]
'settings_smtpSendFrom' => 'Envoyé par',
'settings_smtpSendFrom_desc' => 'Envoyé par',
'settings_smtpSendTestMail' => 'Envoyer un e-mail test',
'settings_smtpSendTestMail_desc' => 'Envoie un message test pour vérifier la configuration e-mail courante.',
'settings_smtpSendTestMail_desc' => 'Envoie un message test pour vérifier la configuration e-mail actuelle.',
'settings_smtpServer' => 'Nom du serveur SMTP',
'settings_smtpServer_desc' => 'Nom du serveur SMTP',
'settings_smtpUser' => 'Utilisateur pour le serveur SMTP',
@ -1631,7 +1640,7 @@ Nom : [username]
'splash_edit_group' => 'Groupe modifié',
'splash_edit_role' => 'Rôle modifié',
'splash_edit_task' => 'Tâche modifiée',
'splash_edit_transmittal' => '',
'splash_edit_transmittal' => 'Transmission enregistrée',
'splash_edit_user' => 'Utilisateur modifié',
'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',
@ -1645,8 +1654,8 @@ Nom : [username]
'splash_inherit_access' => 'Droits daccès hérités',
'splash_invalid_folder_id' => 'Identifiant de répertoire invalide',
'splash_invalid_searchterm' => 'Recherche invalide',
'splash_link_document' => '',
'splash_moved_clipboard' => 'Contenu du presse-papier déplacé vers le dossier courant',
'splash_link_document' => 'Lien ajouté',
'splash_moved_clipboard' => 'Contenu du presse-papier déplacé vers le dossier en cours',
'splash_move_document' => 'Document déplacé',
'splash_move_folder' => 'Dossier déplacé',
'splash_notinherit_access' => 'Les droits daccès ne sont plus hérités',
@ -1676,7 +1685,7 @@ Nom : [username]
'splash_substituted_user' => 'Utilisateur de substitution',
'splash_switched_back_user' => 'Revenu à l\'utilisateur initial',
'splash_toogle_group_manager' => 'Responsable de groupe changé',
'splash_transfer_content' => '',
'splash_transfer_content' => 'Contenu transféré',
'splash_transfer_document' => 'Document transféré',
'splash_transfer_objects' => 'Objets transférés',
'splash_trigger_workflow' => 'Transition de workflow déclenchée',
@ -1726,13 +1735,13 @@ Nom : [username]
'switched_to' => 'Connexion provisoire sous',
'takeOverAttributeValue' => 'Récupérer la valeur de la dernière version',
'takeOverGrpApprover' => 'Récupérer le groupe d\'approbateurs de la dernière version.',
'takeOverGrpApprovers' => '',
'takeOverGrpApprovers' => 'Récupérer le groupe dapprobateurs',
'takeOverGrpReviewer' => 'Récupérer le groupe d\'examinateurs de la dernière version.',
'takeOverGrpReviewers' => '',
'takeOverGrpReviewers' => 'Récupérer le groupe dexaminateurs',
'takeOverIndApprover' => 'Récupérer les approbateurs de la dernière version.',
'takeOverIndApprovers' => '',
'takeOverIndApprovers' => 'Récupérer les approbateurs individuels',
'takeOverIndReviewer' => 'Récupérer les examinateurs de la dernière version.',
'takeOverIndReviewers' => '',
'takeOverIndReviewers' => 'Récupérer les examinateurs individuels',
'tasks' => 'Tâches',
'task_description' => 'Description',
'task_disabled' => 'Désactivée',
@ -1770,13 +1779,13 @@ Nom : [username]
'toggle_manager' => 'Basculer \'Responsable\'',
'toggle_qrcode' => 'Afficher/masquer le QR code',
'to_before_from' => 'La date de fin ne peut pas être avant la date de début.',
'transfer_content' => '',
'transfer_content' => 'Transférer le contenu',
'transfer_document' => 'Transférer le document',
'transfer_no_read_access' => 'Lutilisateur na pas le droit de lecture dans ce dossier',
'transfer_no_write_access' => 'Lutilisateur na pas le droit décriture dans ce dossier',
'transfer_objects' => 'Transférer les objets',
'transfer_objects_to_user' => 'Nouveau propriétaire',
'transfer_process_to_user' => '',
'transfer_process_to_user' => 'Transférer le processus à lutilisateur',
'transfer_to_user' => 'Transférer à lutilisateur',
'transition_triggered_email' => 'Transition de workflow activé',
'transition_triggered_email_body' => 'Transition de workflow déclenchée
@ -1785,7 +1794,7 @@ Version : [version]
Commentaires : [comment]
Workflow : [workflow]
État précédent : [previous_state]
État courant : [current_state]
État actuel : [current_state]
Dossier parent : [folder_path]
Utilisateur : [username]
URL : [url]',
@ -1796,7 +1805,7 @@ URL : [url]',
'transmittal_comment' => 'Commentaire',
'transmittal_name' => 'Nom',
'transmittal_size' => 'Taille',
'tree_loading' => 'Patientez pendant le chargement de l\'arborescence des documents',
'tree_loading' => 'Veuillez patienter pendant le chargement de larborescence des documents…',
'trigger_workflow' => 'Workflow',
'tr_TR' => 'Turc',
'tuesday' => 'Mardi',
@ -1859,7 +1868,7 @@ URL : [url]',
'versioning_file_creation_warning' => 'Cette opération permet de créer, pour chaque document, un fichier texte contenant les informations générales et lhistorique des versions du document. Chaque fichier sera enregistré dans le répertoire du document. Ces fichiers ne sont pas nécessaires au bon fonctionnement de SeedDMS, mais ils peuvent être utiles en cas de transfert des fichiers vers un autre système.',
'versioning_info' => 'Versions',
'versiontolow' => '',
'version_comment' => 'commentaire de la version',
'version_comment' => 'Commentaire de la version',
'version_deleted_email' => 'Version supprimée',
'version_deleted_email_body' => 'Version supprimée
Document: [name]
@ -1883,14 +1892,14 @@ URL: [url]',
'workflow_action_name' => 'Nom',
'workflow_editor' => 'Editeur de Workflow',
'workflow_group_summary' => 'Récapitulatif groupe workflow',
'workflow_has_cycle' => '',
'workflow_has_cycle' => 'Le workflow a une boucle',
'workflow_initstate' => 'Etat initial',
'workflow_in_use' => 'Ce workflow est actuellement utilisé par des documents.',
'workflow_layoutdata_saved' => '',
'workflow_management' => 'Gestion des workflows',
'workflow_name' => 'Nom',
'workflow_no_doc_rejected_state' => 'Létat « rejeté » na été défini sur aucune action !',
'workflow_no_doc_released_state' => '',
'workflow_no_doc_released_state' => 'Létat « publié » na été défini sur aucune action !',
'workflow_no_initial_state' => 'Aucune transition ne débute par létat initial défini pour ce workflow !',
'workflow_no_states' => 'Vous devez d\'abord définir des états de workflow avant d\'ajouter un workflow.',
'workflow_save_layout' => '',
@ -1902,7 +1911,7 @@ URL: [url]',
'workflow_summary' => 'Récapitulatif workflow',
'workflow_transition_without_user_group' => 'Au moins une transition a ni utilisateur, ni groupe !',
'workflow_user_summary' => 'Récapitulatif utilisateur',
'wrong_filetype' => '',
'wrong_filetype' => 'Mauvais type de fichier',
'x_more_objects' => '[number] objets supplémentaires',
'year_view' => 'Vue annuelle',
'yes' => 'Oui',

View File

@ -307,6 +307,7 @@ Internet poveznica: [url]',
'converter_new_cmd' => 'Komanda',
'converter_new_mimetype' => 'Novi tip datoteke',
'copied_to_checkout_as' => 'Datoteka je kopirana u prostor odjave kao \'[filename]\'',
'create_download_link' => '',
'create_fulltext_index' => 'Indeksiraj cijeli tekst',
'create_fulltext_index_warning' => 'Želite ponovo indeksirati cijeli tekst. To može duže potrajati i smanjiti sveukupne performanse sustava. Ako zaista želite ponovno indeksirati, molimo potvrdite vašu radnju.',
'creation_date' => 'Izrađeno',
@ -783,6 +784,7 @@ Internet poveznica: [url]',
'my_documents' => 'Moji dokumenti',
'my_transmittals' => 'Moja proslijeđivanja',
'name' => 'Naziv',
'nb_NO' => '',
'needs_correction' => '',
'needs_workflow_action' => 'Ovaj dokument zahtjeva vašu pažnju. Molimo provjerite karticu toka rada.',
'network_drive' => '',

View File

@ -302,6 +302,7 @@ URL: [url]',
'converter_new_cmd' => '',
'converter_new_mimetype' => '',
'copied_to_checkout_as' => '',
'create_download_link' => '',
'create_fulltext_index' => 'Teljes szöveg index létrehozása',
'create_fulltext_index_warning' => 'Ön a teljes szöveg index újraépítését kezdeményezte. Ez a művelet hosszú ideig eltarthat és jelentősen csökkentheti az egész rendszer teljesítményét. Ha biztosan újra kívánja építeni az indexet, kérjük erősítse meg a műveletet.',
'creation_date' => 'Létrehozva',
@ -778,6 +779,7 @@ URL: [url]',
'my_documents' => 'Saját dokumentumok',
'my_transmittals' => '',
'name' => 'Név',
'nb_NO' => '',
'needs_correction' => '',
'needs_workflow_action' => 'Ez a dokumentum az Ön beavatkozására vár. Ellenőrizze a munkafolyamat fület.',
'network_drive' => '',

View File

@ -307,6 +307,7 @@ URL: [url]',
'converter_new_cmd' => 'Comando',
'converter_new_mimetype' => 'Nuovo mimetype',
'copied_to_checkout_as' => 'File copiato come \'[filename]\'',
'create_download_link' => '',
'create_fulltext_index' => 'Crea indice fulltext',
'create_fulltext_index_warning' => 'Stai creando un indice fulltext. Questo può occupare un tempo considerevole e ridurre le prestazioni del sistema. Sei sicuro di voler ricreare l\'indice? Prego conferma l\'operazione.',
'creation_date' => 'Data creazione',
@ -788,6 +789,7 @@ URL: [url]',
'my_documents' => 'Documenti personali',
'my_transmittals' => 'Mie trasmissioni',
'name' => 'Nome',
'nb_NO' => '',
'needs_correction' => 'Necessita correzioni',
'needs_workflow_action' => 'Il documento richiede attenzione. Prego controllare il flusso di lavoro.',
'network_drive' => 'Network drive',

View File

@ -310,6 +310,7 @@ URL: [url]',
'converter_new_cmd' => '명령',
'converter_new_mimetype' => '새 MIME 형태',
'copied_to_checkout_as' => '체크아웃으로 파일(\'[filename]\')이 파일 복사됨',
'create_download_link' => '',
'create_fulltext_index' => '전체 텍스트 인덱스 만들기',
'create_fulltext_index_warning' => '전체 자료의 텍스트 인덱스를 다시 만들 수 있습니다. 이것은 상당한 시간을 요구하며 진행되는 동안 시스템 성능을 감소시킬 수 있습니다. 인덱스를 재 생성하려면, 확인하시기 바랍니다.',
'creation_date' => '생성일',
@ -784,6 +785,7 @@ URL: [url]',
'my_documents' => '내 문서',
'my_transmittals' => '내 송부',
'name' => '이름',
'nb_NO' => '',
'needs_correction' => '',
'needs_workflow_action' => '이 문서는 당신의주의가 필요합니다. 워크플로우 탭을 확인하시기 바랍니다.',
'network_drive' => '네트워크 드라이브',

View File

@ -305,6 +305,7 @@ URL: [url]',
'converter_new_cmd' => 'ຄຳສັ່ງ',
'converter_new_mimetype' => 'ລະຄອນໃບຊະນິດຫນືື່ງ',
'copied_to_checkout_as' => 'ກັອບປີໄຟລໄປຍັງພື້ນທີ່ເຊັກເອົາເປັນ "[filename] " ໃນ [date]',
'create_download_link' => '',
'create_fulltext_index' => 'ສ້າງດັດສະນີແບບເຕັມຮູບແບບ',
'create_fulltext_index_warning' => 'ເຈົ້າກຳລັງສ້າງດັດຊະນີຂໍ້ຄວາມເຕັມໄຫມ່ ອາດໄຊ້ເວລາເປັນຈຳນວນຫຼາຍແລະລົດປະສິດທິພາບໂດຍລວມຂອງລະບົບເຈົ້າ ຖ້າຫາກວ່າຕ້ອງການສ້າງດັດຊະນີໄຫມ່ກະລຸນາຢືນຢັນການດຳເນີນການຂອງເຈົ້າ',
'creation_date' => 'ສ້າງໄວ້',
@ -781,6 +782,7 @@ URL: [url]',
'my_documents' => 'ເອກະສານຂອງຂ້ອຍ',
'my_transmittals' => 'ການຂົນສົ່ງຂອງຂ້ອຍ',
'name' => 'ຊື່',
'nb_NO' => '',
'needs_correction' => '',
'needs_workflow_action' => 'ກະລຸນາກວດສອບແທັບເວີກໂຟລ,ເອກະສານນີ້ຕ້ອງໃຫ້ຄວາມລະອຽດແລະເອົາໃຈໄສ່',
'network_drive' => 'ໄດຣເຄືອຂ່າຍ',

1922
languages/nb_NO/lang.inc Normal file

File diff suppressed because it is too large Load Diff

View File

@ -300,6 +300,7 @@ URL: [url]',
'converter_new_cmd' => 'Wijziging: nieuw commando',
'converter_new_mimetype' => 'Wijziging: nieuw mimetype',
'copied_to_checkout_as' => 'Gekopieerd naar checkout als:',
'create_download_link' => '',
'create_fulltext_index' => 'Creeer volledige tekst index',
'create_fulltext_index_warning' => 'U staat op het punt de volledigetekst opnieuw te indexeren. Dit kan behoorlijk veel tijd en snelheid vergen van het systeem. Als u zeker bent om opnieuw te indexeren, bevestig deze actie.',
'creation_date' => 'Aangemaakt',
@ -776,6 +777,7 @@ URL: [url]',
'my_documents' => 'Mijn Documenten',
'my_transmittals' => 'Mijn zendingen',
'name' => 'Naam',
'nb_NO' => '',
'needs_correction' => '',
'needs_workflow_action' => 'Dit document vereist uw aandacht. Bekijk deze onder het tabblad workflows.',
'network_drive' => 'Networkdrive',

View File

@ -19,7 +19,7 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
//
// Translators: Admin (861), netixw (84), romi (93), uGn (112)
// Translators: Admin (866), netixw (84), romi (93), uGn (112)
$text = array(
'2_factor_auth' => '',
@ -224,8 +224,8 @@ URL: [url]',
'change_assignments' => 'Zmiana przypisania',
'change_password' => 'Zmiana hasła',
'change_password_message' => 'Twoje hasło zostało zmienione.',
'change_recipients' => '',
'change_revisors' => '',
'change_recipients' => 'Zmień odbiorców',
'change_revisors' => 'Zmień recenzentów',
'change_status' => 'Zmień status',
'charts' => 'Wykresy',
'chart_docsaccumulated_title' => 'Liczba dokumentów',
@ -295,6 +295,7 @@ URL: [url]',
'converter_new_cmd' => 'Komenda',
'converter_new_mimetype' => 'Nowy typ MIME',
'copied_to_checkout_as' => '',
'create_download_link' => '',
'create_fulltext_index' => 'Utwórz indeks pełnotekstowy',
'create_fulltext_index_warning' => 'Zamierzasz ponownie utworzyć indeks pełnotekstowy. To może zająć sporo czasu i ograniczyć ogólną wydajność systemu. Jeśli faktycznie chcesz to zrobić, proszę potwierdź tę operację.',
'creation_date' => 'Utworzony',
@ -769,8 +770,9 @@ URL: [url]',
'move_folder' => 'Przenieś folder',
'my_account' => 'Moje konto',
'my_documents' => 'Moje dokumenty',
'my_transmittals' => '',
'my_transmittals' => 'Moi recenzenci',
'name' => 'Nazwa',
'nb_NO' => '',
'needs_correction' => '',
'needs_workflow_action' => 'Dokument wymaga uwagi. Proszę sprawdzić kartę workflow.',
'network_drive' => '',
@ -1536,8 +1538,8 @@ URL: [url]',
'sign_out_user' => 'Wyloguj użytkownika',
'site_brand' => '',
'sk_SK' => 'słowacki',
'sort_by_date' => '',
'sort_by_name' => '',
'sort_by_date' => 'Sortuj według daty',
'sort_by_name' => 'Sortuj według nazwy',
'sort_by_sequence' => '',
'space_used_on_data_folder' => 'Przestrzeń zajęta przez folder danych',
'splash_added_to_clipboard' => 'Dodano do schowka',

View File

@ -19,7 +19,7 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
//
// Translators: Admin (1733), flaviove (627), lfcristofoli (352)
// Translators: Admin (1736), flaviove (627), lfcristofoli (352)
$text = array(
'2_factor_auth' => 'Autenticação de dois fatores',
@ -307,6 +307,7 @@ URL: [url]',
'converter_new_cmd' => 'Comando',
'converter_new_mimetype' => 'Novo mimetype',
'copied_to_checkout_as' => 'Arquivo copiado para o espaço de retirada como \'[nome do arquivo]\' em [date]',
'create_download_link' => '',
'create_fulltext_index' => 'Criar índice de texto completo',
'create_fulltext_index_warning' => 'Você está para recriar o índice de texto completo. Isso pode levar uma quantidade considerável de tempo e reduzir o desempenho geral do sistema. Se você realmente deseja recriar o índice, por favor confirme a operação.',
'creation_date' => 'Criado',
@ -802,6 +803,7 @@ URL: [url]',
'my_documents' => 'Meus Documentos',
'my_transmittals' => 'Minhas Transmissões',
'name' => 'Nome',
'nb_NO' => '',
'needs_correction' => 'Precisa de correção',
'needs_workflow_action' => 'Este documento requer sua atenção. Por favor, verifique a guia de fluxo de trabalho.',
'network_drive' => 'Unidade de rede',
@ -1110,7 +1112,7 @@ URL: [url]',
'revision_status' => 'Estado',
'revision_submit_email_body' => '',
'revision_submit_email_subject' => '',
'revision_summary' => '',
'revision_summary' => 'Resumo das revisões',
'revisors' => 'Revisores',
'revisor_already_assigned' => 'O usuário já está designado como revisor.',
'revisor_already_removed' => 'Revisor já foi removido do processo de revisão ou já revisou o documento.',
@ -1617,8 +1619,8 @@ Nome: [username]
'sign_out_user' => 'Sair usuário',
'site_brand' => '',
'sk_SK' => 'Eslovaco',
'sort_by_date' => '',
'sort_by_name' => '',
'sort_by_date' => 'Ordenar por Data',
'sort_by_name' => 'Ordenar por Nome',
'sort_by_sequence' => '',
'space_used_on_data_folder' => 'Space used on data folder',
'splash_added_to_clipboard' => 'Adicionado a área de transferência',

View File

@ -19,14 +19,14 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
//
// Translators: Admin (1094), balan (87)
// Translators: Admin (1097), balan (87)
$text = array(
'2_factor_auth' => '',
'2_factor_auth_info' => '',
'2_fact_auth_secret' => '',
'accept' => 'Accept',
'access_control' => '',
'access_control' => 'Controlul accesului',
'access_control_is_off' => '',
'access_denied' => 'Acces interzis.',
'access_inheritance' => 'Mostenire acces',
@ -307,6 +307,7 @@ URL: [url]',
'converter_new_cmd' => '',
'converter_new_mimetype' => '',
'copied_to_checkout_as' => '',
'create_download_link' => '',
'create_fulltext_index' => 'Creați indexul pentru tot textul',
'create_fulltext_index_warning' => 'Sunteți pe cale sa recreați indexul pentru tot textul. Acest lucru poate dura o perioadă considerabilă de timp și poate reduce performanța sistemului în ansamblu. Dacă doriți cu adevărat să recreati indexul pentru tot textul, vă rugăm să confirmați operațiunea.',
'creation_date' => 'Creat',
@ -783,6 +784,7 @@ URL: [url]',
'my_documents' => 'Documentele Mele',
'my_transmittals' => 'Trimiterile mele',
'name' => 'Nume',
'nb_NO' => '',
'needs_correction' => '',
'needs_workflow_action' => 'Acest document necesită atenția dumneavoastră. Vă rugăm să verificați tab-ul workflow.',
'network_drive' => '',
@ -1116,7 +1118,7 @@ URL: [url]',
'role_admin' => 'Administrator',
'role_guest' => 'Oaspete',
'role_info' => '',
'role_management' => '',
'role_management' => 'Managementul rolurilor',
'role_name' => '',
'role_type' => '',
'role_user' => 'Utilizator',
@ -1139,7 +1141,7 @@ URL: [url]',
'scheduler_class_description' => '',
'scheduler_class_parameter' => '',
'scheduler_class_tasks' => '',
'scheduler_task_mgr' => '',
'scheduler_task_mgr' => 'Planificator',
'search' => 'Caută',
'search_fulltext' => 'Caută în tot textul',
'search_in' => 'Caută în',

View File

@ -307,6 +307,7 @@ URL: [url]',
'converter_new_cmd' => 'Команда',
'converter_new_mimetype' => 'Новый mime тип',
'copied_to_checkout_as' => 'Файл скопирован в среду загрузки как \'[filename]\' на [date]',
'create_download_link' => '',
'create_fulltext_index' => 'Создать полнотекстовый индекс',
'create_fulltext_index_warning' => 'Вы хотите пересоздать полнотекстовый индекс. Это займёт какое-то время и снизит производительность. Продолжить?',
'creation_date' => 'Создан',
@ -783,6 +784,7 @@ URL: [url]',
'my_documents' => 'Мои документы',
'my_transmittals' => 'Мои пересылки',
'name' => 'Имя',
'nb_NO' => '',
'needs_correction' => '',
'needs_workflow_action' => 'Этот документ требует вашего внимания. См. вкладку «Процесс».',
'network_drive' => 'Сетевой диск',

View File

@ -307,6 +307,7 @@ URL: [url]',
'converter_new_cmd' => 'Príkaz',
'converter_new_mimetype' => 'Nový mime-type',
'copied_to_checkout_as' => 'File copied to checkout space as \'[filename]\' on [date]',
'create_download_link' => '',
'create_fulltext_index' => 'Vytvoriť fulltext index',
'create_fulltext_index_warning' => 'Chystáte sa obnoviť fulltext index, čo môže dlho trvať a môže znížiť výkon systému. Ak chcete pokračovať, potvrďte svoju voľbu.',
'creation_date' => 'Vytvorené',
@ -802,6 +803,7 @@ URL: [url]',
'my_documents' => 'Moje dokumenty',
'my_transmittals' => 'My Transmittals',
'name' => 'Meno',
'nb_NO' => '',
'needs_correction' => 'Vyžaduje opravu',
'needs_workflow_action' => 'Tento dokument si vyžaduje vašu pozornosť. Skontrolujte kartu pracovného postupu.',
'network_drive' => 'Sieťová jednotka',

View File

@ -308,6 +308,7 @@ URL: [url]',
'converter_new_cmd' => 'Kommando',
'converter_new_mimetype' => 'Ny MIME-typ',
'copied_to_checkout_as' => 'Filen har kopierats till utcheckningmappen som \'[filename]\' per [date]',
'create_download_link' => '',
'create_fulltext_index' => 'Skapa fulltext-sökindex',
'create_fulltext_index_warning' => 'Du håller på att skapa fulltext-sökindex. Detta kan ta mycket lång tid och sakta ner den allmänna systemprestandan. Om du verkligen vill skapa indexet, bekräfta åtgärden.',
'creation_date' => 'Skapat',
@ -789,6 +790,7 @@ URL: [url]',
'my_documents' => 'Mina dokument',
'my_transmittals' => 'Mina överföringar',
'name' => 'Namn',
'nb_NO' => '',
'needs_correction' => '',
'needs_workflow_action' => 'Detta dokument behöver din uppmärksamhet. Kontrollera inställningarna för arbetsflödet.',
'network_drive' => 'Nätverkslagring',

View File

@ -19,7 +19,7 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
//
// Translators: Admin (1091), aydin (83)
// Translators: Admin (1094), aydin (83)
$text = array(
'2_factor_auth' => '',
@ -230,7 +230,7 @@ URL: [url]',
'change_assignments' => 'Atamaları Değiştir',
'change_password' => 'Parola degiştir',
'change_password_message' => 'Parolanız değişti.',
'change_recipients' => '',
'change_recipients' => 'Alıcıları değiştir',
'change_revisors' => '',
'change_status' => 'Değişme Durumu',
'charts' => 'Grafikler',
@ -301,6 +301,7 @@ URL: [url]',
'converter_new_cmd' => 'Komut',
'converter_new_mimetype' => '',
'copied_to_checkout_as' => '',
'create_download_link' => '',
'create_fulltext_index' => 'Tam metin indeksi oluştur',
'create_fulltext_index_warning' => 'Tam metin indeksi yeniden oluşturmak üzeresiniz. Bu işlem bir hayli uzun sürebilir ve sistem performansını olumsuz etkileyebilir. Buna rağmen indeksi oluşturmak istiyorsanız lütfen bu işlemi onaylayın.',
'creation_date' => 'Oluşturma tarihi',
@ -777,6 +778,7 @@ URL: [url]',
'my_documents' => 'Dokümanlarım',
'my_transmittals' => '',
'name' => 'İsim',
'nb_NO' => '',
'needs_correction' => '',
'needs_workflow_action' => 'Bu doküman dikkatinizi gerektiriyor. Lütfen iş akış sekmesini kontrol ediniz.',
'network_drive' => '',
@ -1140,7 +1142,7 @@ URL: [url]',
'select_attrdefgrp_show' => '',
'select_attribute_value' => '',
'select_category' => 'Kategori seçmek için tıklayın',
'select_group' => '',
'select_group' => 'Grup Seç',
'select_groups' => 'Grup seçmek için tıklayın',
'select_grp_approvers' => 'Grup onaylayıcı seçmek için tıklayın',
'select_grp_ind_approvers' => '',
@ -1158,7 +1160,7 @@ URL: [url]',
'select_ind_reviewers' => 'Biresysel kontrol edeni seçmek için tıklayın',
'select_ind_revisors' => '',
'select_one' => 'Birini seçiniz',
'select_user' => '',
'select_user' => 'Kullanıcı Seç',
'select_users' => 'Kullanıcı seçmek için tıklayın',
'select_value' => 'Değeri seç',
'select_workflow' => 'İş akışı seç',

View File

@ -307,6 +307,7 @@ URL: [url]',
'converter_new_cmd' => 'Команда',
'converter_new_mimetype' => 'Новий mime тип',
'copied_to_checkout_as' => 'Файл скопійовано в середовище скачування як',
'create_download_link' => '',
'create_fulltext_index' => 'Створити повнотекстовий індекс',
'create_fulltext_index_warning' => 'Ви хочете перестворити повнотекстовий індекс. Це займе деякий час і знизить продуктивність. Продовжити?',
'creation_date' => 'Створено',
@ -783,6 +784,7 @@ URL: [url]',
'my_documents' => 'Мої документи',
'my_transmittals' => 'Мої перенесення',
'name' => 'Назва',
'nb_NO' => '',
'needs_correction' => '',
'needs_workflow_action' => 'Цей документ потребує вашої уваги. Див. вкладку «Процес».',
'network_drive' => '',

View File

@ -299,6 +299,7 @@ URL: [url]',
'converter_new_cmd' => '',
'converter_new_mimetype' => '新建 MIME 类型',
'copied_to_checkout_as' => '',
'create_download_link' => '',
'create_fulltext_index' => '创建全文索引',
'create_fulltext_index_warning' => '你将重新创建全
文索引。这将花费一定的时间但是会提升系统的整体表现。如果你想要重新创建索引,请确
@ -773,6 +774,7 @@ URL: [url]',
'my_documents' => '我的文档',
'my_transmittals' => '',
'name' => '名称',
'nb_NO' => '',
'needs_correction' => '',
'needs_workflow_action' => '',
'network_drive' => '网络驱动器',

View File

@ -282,6 +282,7 @@ URL: [url]',
'converter_new_cmd' => '',
'converter_new_mimetype' => '',
'copied_to_checkout_as' => '',
'create_download_link' => '',
'create_fulltext_index' => '創建全文索引',
'create_fulltext_index_warning' => '',
'creation_date' => '創建日期',
@ -704,6 +705,7 @@ URL: [url]',
'my_documents' => '我的文件',
'my_transmittals' => '',
'name' => '名稱',
'nb_NO' => '',
'needs_correction' => '',
'needs_workflow_action' => '',
'network_drive' => '',

View File

@ -552,7 +552,7 @@ switch($command) {
add_log_line();
} else {
header('Content-Type: application/json');
echo json_encode(array('success'=>false, 'message'=>getMLText('error_remove_document'), 'data'=>''));
echo json_encode(array('success'=>false, 'message'=>getMLText('error_remove_document')."<br />".getMLText($controller->getErrorMsg()), 'data'=>''));
}
} else {
header('Content-Type: application/json');

View File

@ -27,6 +27,7 @@ include("../inc/inc.Init.php");
include("../inc/inc.Extension.php");
include("../inc/inc.DBInit.php");
include("../inc/inc.ClassUI.php");
include("../inc/inc.ClassController.php");
include("../inc/inc.Authentication.php");
/**
@ -34,6 +35,9 @@ include("../inc/inc.Authentication.php");
*/
require_once("SeedDMS/Preview.php");
$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME']));
$controller = Controller::factory($tmp[1], array('dms'=>$dms, 'user'=>$user));
$documentid = $_GET["documentid"];
if (!isset($documentid) || !is_numeric($documentid) || intval($documentid)<1) {
exit;
@ -52,10 +56,13 @@ if(isset($_GET['version'])) {
$version = $_GET["version"];
if (!is_numeric($version))
exit;
if(intval($version)<1)
$object = $document->getLatestContent();
else
$object = $document->getContentByVersion($version);
$controller->setParam('document', $document);
$controller->setParam('version', $version);
$controller->setParam('type', 'version');
if(!$controller->run()) {
UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("invalid_version"));
}
exit;
} elseif(isset($_GET['file'])) {
$file = $_GET['file'];
if (!is_numeric($file) || intval($file)<1)

View File

@ -41,30 +41,31 @@ if(!$settings->_enableFullSearch) {
UI::exitError(getMLText("admin_tools"),getMLText("fulltextsearch_disabled"));
}
$index = null;
if(!isset($_GET['action']) || $_GET['action'] == 'show') {
if(isset($_GET['create']) && $_GET['create'] == 1) {
if(isset($_GET['confirm']) && $_GET['confirm'] == 1) {
$index = $indexconf['Indexer']::create($settings->_luceneDir);
if($indexconf) {
if(isset($_GET['create']) && $_GET['create'] == 1) {
if(isset($_GET['confirm']) && $_GET['confirm'] == 1) {
$index = $indexconf['Indexer']::create($settings->_luceneDir);
if(!$index) {
UI::exitError(getMLText("admin_tools"),getMLText("no_fulltextindex"));
}
$indexconf['Indexer']::init($settings->_stopWordsFile);
} else {
header('Location: out.CreateIndex.php');
exit;
}
} else {
$index = $indexconf['Indexer']::open($settings->_luceneDir);
if(!$index) {
UI::exitError(getMLText("admin_tools"),getMLText("no_fulltextindex"));
$index = $indexconf['Indexer']::create($settings->_luceneDir);
if(!$index) {
UI::exitError(getMLText("admin_tools"),getMLText("no_fulltextindex"));
}
}
$indexconf['Indexer']::init($settings->_stopWordsFile);
} else {
header('Location: out.CreateIndex.php');
exit;
}
} else {
$index = $indexconf['Indexer']::open($settings->_luceneDir);
if(!$index) {
$index = $indexconf['Indexer']::create($settings->_luceneDir);
if(!$index) {
UI::exitError(getMLText("admin_tools"),getMLText("no_fulltextindex"));
}
}
$indexconf['Indexer']::init($settings->_stopWordsFile);
}
} else {
$index = null;
}
if (!isset($_GET["folderid"]) || !is_numeric($_GET["folderid"]) || intval($_GET["folderid"])<1) {

View File

@ -132,7 +132,8 @@ function __getUserData($u) { /* {{{ */
'email'=>$u->getEmail(),
'language' => $u->getLanguage(),
'theme' => $u->getTheme(),
'role' => $u->getRole() == SeedDMS_Core_User::role_admin ? 'admin' : ($u->getRole() == SeedDMS_Core_User::role_guest ? 'guest' : 'user'),
// 'role' => $u->getRole() == SeedDMS_Core_User::role_admin ? 'admin' : ($u->getRole() == SeedDMS_Core_User::role_guest ? 'guest' : 'user'),
'role' => array('id'=>$u->getRole()->getId(), 'name'=>$u->getRole()->getName()),
'hidden'=>$u->isHidden() ? true : false,
'disabled'=>$u->isDisabled() ? true : false,
'isguest' => $u->isGuest() ? true : false,
@ -1459,10 +1460,12 @@ function createUser($request, $response) { /* {{{ */
$language = isset($params['language']) ? $params['language'] : null;;
$theme = isset($params['theme']) ? $params['theme'] : null;
$comment = isset($params['comment']) ? $params['comment'] : null;
$role = isset($params['role']) ? $params['role'] : null;
$roleid = $role == 'admin' ? SeedDMS_Core_User::role_admin : ($role == 'guest' ? SeedDMS_Core_User::role_guest : SeedDMS_Core_User::role_user);
if(isset($params['role']) && $params['role'])
$role = SeedDMS_Core_Role::getInstance($params['role'], $dms, ctype_digit($params['role']) ? '' : 'name');
else
$role = SeedDMS_Core_Role::getInstance('user', $dms, 'name');
$newAccount = $dms->addUser($userName, $password, $fullname, $email, $language, $theme, $comment, $roleid);
$newAccount = $dms->addUser($userName, $password, $fullname, $email, $language, $theme, $comment, $role);
if ($newAccount === false) {
return $response->withJson(array('success'=>false, 'message'=>'Account could not be created, maybe it already exists', 'data'=>''), 500);
}

View File

@ -2684,7 +2684,7 @@ $('body').on('click', '[id^=\"table-row-folder\"] td:nth-child(2)', function(ev)
$content .= count($links)."/".count($revlinks)." ".getMLText("linked_documents")."<br />";
if($status["status"] == S_IN_WORKFLOW && $workflowmode == 'advanced') {
$workflowstate = $latestContent->getWorkflowState();
$content .= '<span title="'.getOverallStatusText($status["status"]).': '.$workflow->getName().'">'.$workflowstate->getName().'</span>';
$content .= '<span title="'.getOverallStatusText($status["status"]).': '.htmlspecialchars($workflow->getName()).'">'.htmlspecialchars($workflowstate->getName()).'</span>';
} else {
$content .= getOverallStatusText($status["status"]);
}

View File

@ -201,6 +201,7 @@ $(document).ready( function() {
$this->contentStart();
$this->pageNavigation(getMLText("admin_tools"), "admin_tools");
$this->contentHeading(getMLText("update_fulltext_index"));
if($index) {
?>
<style type="text/css">
li {line-height: 20px;}
@ -230,7 +231,9 @@ li {line-height: 20px;}
$index->commit();
$index->optimize();
} else {
$this->warningMsg(getMLText('fulltextsearch_disabled'));
}
$this->contentEnd();
$this->htmlEndPage();
} /* }}} */

View File

@ -818,7 +818,7 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style {
echo "<tr>";
echo "<td>".$wkflog->getWorkflow()->getName()."</td>";
echo "<td>".$wkflog->getDate()."</td>";
echo "<td>".$wkflog->getTransition()->getAction()->getName()."</td>";
echo "<td>".htmlspecialchars($wkflog->getTransition()->getAction()->getName())."</td>";
$loguser = $wkflog->getUser();
echo "<td>".htmlspecialchars($loguser->getFullName())."</td>";
echo "<td>".htmlspecialchars($wkflog->getComment())."</td>";
@ -1095,14 +1095,14 @@ class SeedDMS_View_ViewDocument extends SeedDMS_Bootstrap_Style {
foreach($transitions as $transition) {
$nextstate = $transition->getNextState();
$docstatus = $nextstate->getDocumentStatus();
echo "<td><i class=\"icon-circle".($docstatus == S_RELEASED ? " released" : ($docstatus == S_REJECTED ? " rejected" : " in-workflow"))."\"></i> ".$nextstate->getName()."</td>";
echo "<td><i class=\"icon-circle".($docstatus == S_RELEASED ? " released" : ($docstatus == S_REJECTED ? " rejected" : " in-workflow"))."\"></i> ".htmlspecialchars($nextstate->getName())."</td>";
}
echo "</tr>";
echo "<tr>";
echo "<td>".getMLText('action').":</td>";
foreach($transitions as $transition) {
$action = $transition->getAction();
echo "<td>".getMLText('action_'.strtolower($action->getName()), array(), $action->getName())."</td>";
echo "<td>".getMLText('action_'.strtolower($action->getName()), array(), htmlspecialchars($action->getName()))."</td>";
}
echo "</tr>";
echo "<tr>";

View File

@ -86,11 +86,11 @@ $(document).ready( function() {
$workflow = $transition->getWorkflow();
echo "<tr>";
echo "<td>";
echo $workflow->getName();
echo htmlspecialchars($workflow->getName());
echo "</td><td>";
echo '<i class="icon-circle'.($workflow->getInitState()->getId() == $state->getId() ? ' initstate' : ' in-workflow').'"></i> '.$state->getName();
echo '<i class="icon-circle'.($workflow->getInitState()->getId() == $state->getId() ? ' initstate' : ' in-workflow').'"></i> '.htmlspecialchars($state->getName());
echo "</td><td>";
echo '<i class="icon-circle'.($docstatus == S_RELEASED ? ' released' : ($docstatus == S_REJECTED ? ' rejected' : ' in-workflow')).'"></i> '.$nextstate->getName();
echo '<i class="icon-circle'.($docstatus == S_RELEASED ? ' released' : ($docstatus == S_REJECTED ? ' rejected' : ' in-workflow')).'"></i> '.htmlspecialchars($nextstate->getName());
echo "</td></tr>";
}
echo "</tbody>";

View File

@ -117,7 +117,7 @@ $(document).ready(function() {
if($path) {
$names = array();
foreach($path as $state) {
$names[] = $state->getName();
$names[] = htmlspecialchars($state->getName());
}
$this->errorMsg(getMLText('workflow_has_cycle').": ".implode(' <i class="icon-arrow-right"></i> ', $names));
}
@ -219,14 +219,14 @@ $(document).ready(function() {
if(!$transusers && !$transgroups) {
echo " class=\"error\"";
}
echo "><td>".'<i class="icon-circle'.($workflow->getInitState()->getId() == $state->getId() ? ' initstate' : ' in-workflow').'"></i> '.$state->getName()."<br />";
echo "><td>".'<i class="icon-circle'.($workflow->getInitState()->getId() == $state->getId() ? ' initstate' : ' in-workflow').'"></i> '.htmlspecialchars($state->getName())."<br />";
$docstatus = $nextstate->getDocumentStatus();
echo '<i class="icon-circle'.($docstatus == S_RELEASED ? ' released' : ($docstatus == S_REJECTED ? ' rejected' : ' in-workflow')).'"></i> '.$nextstate->getName();
echo '<i class="icon-circle'.($docstatus == S_RELEASED ? ' released' : ($docstatus == S_REJECTED ? ' rejected' : ' in-workflow')).'"></i> '.htmlspecialchars($nextstate->getName());
if($docstatus == S_RELEASED || $docstatus == S_REJECTED) {
echo "<br /><i class=\"icon-arrow-right\"></i> ".getOverallStatusText($docstatus);
}
echo "</td>";
echo "<td><i class=\"icon-sign-blank workflow-action\"></i> ".$action->getName()."</td>";
echo "<td><i class=\"icon-sign-blank workflow-action\"></i> ".htmlspecialchars($action->getName())."</td>";
echo "<td>";
foreach($transusers as $transuser) {
$u = $transuser->getUser();
@ -237,7 +237,7 @@ $(document).ready(function() {
$g = $transgroup->getGroup();
echo '<i class="icon-group"></i> '.getMLText('at_least_n_users_of_group',
array("number_of_users" => $transgroup->getNumOfUsers(),
"group" => $g->getName()));
"group" => htmlspecialchars($g->getName())));
echo "<br />";
}
echo "</td>";
@ -264,20 +264,20 @@ $(document).ready(function() {
echo "<select name=\"state\">";
$states = $dms->getAllWorkflowStates();
foreach($states as $state) {
echo "<option value=\"".$state->getID()."\">".$state->getName()."</option>";
echo "<option value=\"".$state->getID()."\">".htmlspecialchars($state->getName())."</option>";
}
echo "</select><br />";
echo "<select name=\"nextstate\">";
$states = $dms->getAllWorkflowStates();
foreach($states as $state) {
echo "<option value=\"".$state->getID()."\">".$state->getName()."</option>";
echo "<option value=\"".$state->getID()."\">".htmlspecialchars($state->getName())."</option>";
}
echo "</select>";
echo "</td>";
echo "<td>";
echo "<select name=\"action\">";
foreach($actions as $action) {
echo "<option value=\"".$action->getID()."\">".$action->getName()."</option>";
echo "<option value=\"".$action->getID()."\">".htmlspecialchars($action->getName())."</option>";
}
echo "</select>";
echo "</td>";

View File

@ -87,11 +87,11 @@ $(document).ready(function() {
$workflow = $transition->getWorkflow();
echo "<tr>";
echo "<td>";
echo $workflow->getName();
echo htmlspecialchars($workflow->getName());
echo "</td><td>";
echo '<i class="icon-circle'.($workflow->getInitState()->getId() == $state->getId() ? ' initstate' : ' in-workflow').'"></i> '.$state->getName();
echo '<i class="icon-circle'.($workflow->getInitState()->getId() == $state->getId() ? ' initstate' : ' in-workflow').'"></i> '.htmlspecialchars($state->getName());
echo "</td><td>";
echo '<i class="icon-circle'.($docstatus == S_RELEASED ? ' released' : ($docstatus == S_REJECTED ? ' rejected' : ' in-workflow')).'"></i> '.$nextstate->getName();
echo '<i class="icon-circle'.($docstatus == S_RELEASED ? ' released' : ($docstatus == S_REJECTED ? ' rejected' : ' in-workflow')).'"></i> '.htmlspecialchars($nextstate->getName());
echo "</td></tr>";
}
echo "</tbody>";