diff --git a/CHANGELOG b/CHANGELOG index 70973b2e9..ca60ed594 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -298,6 +298,11 @@ -------------------------------------------------------------------------------- Changes in version 5.1.36 -------------------------------------------------------------------------------- +- add new page for send test notification +- remove deprecated function formatted_size() +- fix bugs when importing files from filesystem with metadata, better logging +- fix potential xss attack when showing log file +- support for different storage of documents (not yet used) -------------------------------------------------------------------------------- Changes in version 5.1.35 diff --git a/doc/README.Converters b/doc/README.Converters index fc4d18eb2..e2cdebf72 100644 --- a/doc/README.Converters +++ b/doc/README.Converters @@ -78,6 +78,14 @@ message/rfc822 text/plain iconv -c -f utf-8 -t latin1 '%f' | a2ps -1 -q -a1 -R -B -o - - | ps2pdf - - +application/x-xopp + + xournalpp -p "%o" "%f" + + Converting from application/x-xopp to pdf only works if the xopp file + does not use a pdf document as a background, because this pdf is not + stored in the xopp fіle. + Conversion to png for preview images ===================================== @@ -111,7 +119,12 @@ application/pdf convert -density 100 -resize %wx '%f[0]' 'png:%o' - mutool draw -F png -w %w -q -N -o %o %f 1 + mutool draw -F png -w %w -q -N -o '%o' '%f' 1 + + pdftocairo '%f' -png -singlefile -scale-to-x %w -scale-to-y -1 - > '%o' + + pdftocairo needs to output to stdout because the output file name passed + to pdftocairo will be suffixed with png application/postscript convert -density 100 -resize %wx '%f[0]' 'png:%o' @@ -150,3 +163,10 @@ video/mp4 audio/mpeg sox "%f" -n spectrogram -x 600 -Y 550 -r -l -o - | convert -resize %wx png:- "png:%o" + +application/x-xopp + xournalpp -i "%o" --export-png-width=%w "%f" + + Converting from application/x-xopp to png only works if the xopp file + does not use a pdf document as a background, because this pdf is not + stored in the xopp fіle. diff --git a/inc/inc.ClassController.php b/inc/inc.ClassController.php index f0dcddf19..679747c7e 100644 --- a/inc/inc.ClassController.php +++ b/inc/inc.ClassController.php @@ -30,7 +30,7 @@ class Controller { * @return object an object of a class implementing the view */ static function factory($class, $params=array()) { /* {{{ */ - global $settings, $session, $extMgr, $request, $logger; + global $settings, $session, $extMgr, $request, $logger, $notifier; if(!$class) { return null; } @@ -60,6 +60,7 @@ class Controller { $controller->setParam('request', $request); $controller->setParam('settings', $settings); $controller->setParam('logger', $logger); + $controller->setParam('notifier', $notifier); return $controller; } return null; diff --git a/inc/inc.ClassEmailNotify.php b/inc/inc.ClassEmailNotify.php index 2f461bfe3..a74ad9f51 100644 --- a/inc/inc.ClassEmailNotify.php +++ b/inc/inc.ClassEmailNotify.php @@ -197,7 +197,7 @@ class SeedDMS_EmailNotify extends SeedDMS_Notify { $headers['Return-Path'] = $returnpath; $headers['To'] = $to; $preferences = array("input-charset" => "UTF-8", "output-charset" => "UTF-8"); - $encoded_subject = iconv_mime_encode("Subject", getMLText($subject, $params, "", $lang), $preferences); + $encoded_subject = iconv_mime_encode("Subject", getMLText($subject, $params, null, $lang), $preferences); $headers['Subject'] = substr($encoded_subject, strlen('Subject: ')); $headers['Date'] = date('r', time()); $headers['MIME-Version'] = "1.0"; diff --git a/inc/inc.ClassUI.php b/inc/inc.ClassUI.php index 73b2e42c6..adf8c8049 100644 --- a/inc/inc.ClassUI.php +++ b/inc/inc.ClassUI.php @@ -46,7 +46,7 @@ class UI extends UI_Default { * @return object an object of a class implementing the view */ static function factory($theme, $class='', $params=array()) { /* {{{ */ - global $settings, $dms, $user, $session, $extMgr, $request, $logger; + global $settings, $dms, $user, $session, $extMgr, $request, $logger, $notifier; if(!$class) { $class = 'Bootstrap'; $class = 'Style'; @@ -129,6 +129,7 @@ class UI extends UI_Default { $view = new $classname($params, $theme); /* Set some configuration parameters */ $view->setParam('accessobject', new SeedDMS_AccessOperation($dms, $user, $settings)); + $view->setParam('referer', isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : ''); $view->setParam('refferer', $_SERVER['REQUEST_URI']); $view->setParam('absbaseprefix', $settings->_httpRoot.$httpbasedir); $view->setParam('theme', $theme); @@ -136,6 +137,7 @@ class UI extends UI_Default { $view->setParam('session', $session); $view->setParam('request', $request); $view->setParam('logger', $logger); + $view->setParam('notifier', $notifier); // $view->setParam('settings', $settings); $view->setParam('sitename', $settings->_siteName); $view->setParam('rootfolderid', $settings->_rootFolderID); diff --git a/inc/inc.DBInit.php b/inc/inc.DBInit.php index 16ced7e8d..8d5b5339f 100644 --- a/inc/inc.DBInit.php +++ b/inc/inc.DBInit.php @@ -45,7 +45,22 @@ if(isset($GLOBALS['SEEDDMS_HOOKS']['initDMS'])) { } } -$dms = new SeedDMS_Core_DMS($db, $settings->_contentDir.$settings->_contentOffsetDir); +$storage = null; +if(isset($GLOBALS['SEEDDMS_HOOKS']['initStorage'])) { + foreach($GLOBALS['SEEDDMS_HOOKS']['initStorage'] as $hookObj) { + if (method_exists($hookObj, 'getStorage')) { + $storage = $hookObj->getStorage(array('db'=>$db, 'settings'=>$settings, 'logger'=>$logger)); + } + } +} + +if($storage) { + $dms = new SeedDMS_Core_DMS($db, $storage); +} else { +// $storage = new SeedDMS_Core_Storage_File($settings->_contentDir.$settings->_contentOffsetDir); +// $dms = new SeedDMS_Core_DMS($db, $storage); + $dms = new SeedDMS_Core_DMS($db, $settings->_contentDir.$settings->_contentOffsetDir); +} if(!$settings->_doNotCheckDBVersion && !$dms->checkVersion()) { echo "Database update needed."; diff --git a/inc/inc.Utils.php b/inc/inc.Utils.php index bb3c53a27..e115f5341 100644 --- a/inc/inc.Utils.php +++ b/inc/inc.Utils.php @@ -18,14 +18,6 @@ // along with this program; if not, write to the Free Software // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -/* deprecated! use SeedDMS_Core_File::format_filesize() instead */ -function formatted_size($size_bytes) { /* {{{ */ - if ($size_bytes>1000000000) return number_format($size_bytes/1000000000,1,".","")." GBytes"; - else if ($size_bytes>1000000) return number_format($size_bytes/1000000,1,".","")." MBytes"; - else if ($size_bytes>1000) return number_format($size_bytes/1000,1,".","")." KBytes"; - return number_format($size_bytes,0,"","")." Bytes"; -} /* }}} */ - /* Date picker needs a different syntax for date formats using * yyyy for %Y * yy for %y @@ -726,6 +718,7 @@ function get_extension($mimetype) { /* {{{ */ case 'image/gif': return '.gif'; case 'image/ief': return '.ief'; case 'image/jpeg': return '.jpg'; + case 'image/jpg': return '.jpg'; case 'image/pipeg': return '.jfif'; case 'image/tiff': return '.tif'; case 'image/x-cmu-raster': return '.ras'; @@ -752,6 +745,7 @@ function get_extension($mimetype) { /* {{{ */ case 'application/x-gzip': return '.gz'; case 'application/x-rar': return '.rar'; case 'application/x-compressed-tar': return '.tgz'; + case 'application/x-xopp': return '.xopp'; case 'application/pdf': return '.pdf'; case 'application/dxf': return '.dxf'; case 'application/msword': return '.doc'; diff --git a/languages/ar_EG/lang.inc b/languages/ar_EG/lang.inc index d7ae27e2b..f89d2c36f 100644 --- a/languages/ar_EG/lang.inc +++ b/languages/ar_EG/lang.inc @@ -283,6 +283,7 @@ URL: [url]', 'checkout_is_disabled' => 'السحب معطل', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => 'من فضلك اختر تعريف السمة', @@ -304,6 +305,7 @@ URL: [url]', 'clear_cache' => 'مسح المحفوظات', 'clear_clipboard' => 'مسح الحافظة', 'clear_password' => 'مسح الرقم السري', +'click_to_expand_filter_results' => '', 'clipboard' => 'لوحة القصاصات', 'close' => 'إغلاق', 'color' => '', @@ -1093,6 +1095,17 @@ URL: [url]', 'nl_NL' => 'الهولندي', 'no' => 'لا', 'notification' => '', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => 'نوفمبر', 'now' => 'الان', @@ -1479,6 +1492,7 @@ URL: [url]', 'send_login_data' => 'ارسل بيانات تسجيل الدخول', 'send_login_data_body' => 'ارسل محتوى بيانات تسجيل الدخول', 'send_login_data_subject' => 'ارسل موضوع بيانات تسجيل الدخول', +'send_notification' => '', 'send_test_mail' => 'ارسل رسالة تجريبية', 'september' => 'سبتمبر', 'sequence' => 'تتابع', diff --git a/languages/bg_BG/lang.inc b/languages/bg_BG/lang.inc index f5933d90a..a14674e6b 100644 --- a/languages/bg_BG/lang.inc +++ b/languages/bg_BG/lang.inc @@ -270,6 +270,7 @@ $text = array( 'checkout_is_disabled' => '', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => 'Изберете attribute definition', @@ -291,6 +292,7 @@ $text = array( 'clear_cache' => 'Изчистване на кеша', 'clear_clipboard' => '', 'clear_password' => '', +'click_to_expand_filter_results' => '', 'clipboard' => 'Клипборд', 'close' => 'Затвори', 'color' => '', @@ -971,6 +973,17 @@ $text = array( 'nl_NL' => 'Холандски', 'no' => 'Не', 'notification' => '', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => 'ноември', 'now' => 'сега', @@ -1321,6 +1334,7 @@ $text = array( 'send_login_data' => '', 'send_login_data_body' => '', 'send_login_data_subject' => '', +'send_notification' => '', 'send_test_mail' => '', 'september' => 'септември', 'sequence' => 'Последователност', diff --git a/languages/ca_ES/lang.inc b/languages/ca_ES/lang.inc index f76aaedfc..8a3c75f10 100644 --- a/languages/ca_ES/lang.inc +++ b/languages/ca_ES/lang.inc @@ -275,6 +275,7 @@ URL: [url]', 'checkout_is_disabled' => '', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => '', @@ -296,6 +297,7 @@ URL: [url]', 'clear_cache' => 'Neteja memòria cau', 'clear_clipboard' => '', 'clear_password' => '', +'click_to_expand_filter_results' => '', 'clipboard' => 'Portapapers', 'close' => 'Tancar', 'color' => '', @@ -976,6 +978,17 @@ URL: [url]', 'nl_NL' => 'Holandès', 'no' => 'No', 'notification' => '', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => 'Novembre', 'now' => '', @@ -1326,6 +1339,7 @@ URL: [url]', 'send_login_data' => '', 'send_login_data_body' => '', 'send_login_data_subject' => '', +'send_notification' => '', 'send_test_mail' => '', 'september' => 'Setembre', 'sequence' => 'Seqüència', diff --git a/languages/cs_CZ/lang.inc b/languages/cs_CZ/lang.inc index 9e8aec22b..20fbd1219 100644 --- a/languages/cs_CZ/lang.inc +++ b/languages/cs_CZ/lang.inc @@ -295,6 +295,7 @@ URL: [url]', 'checkout_is_disabled' => 'Kontrola dokumentů je zakázána v konfiguraci.', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => 'Zvolte definici atributů', @@ -316,6 +317,7 @@ URL: [url]', 'clear_cache' => 'Vymazat vyrovnávací paměť', 'clear_clipboard' => 'Vyčistit schránku', 'clear_password' => 'Vymazat heslo', +'click_to_expand_filter_results' => '', 'clipboard' => 'Schránka', 'close' => 'Zavřít', 'color' => '', @@ -1124,6 +1126,17 @@ URL: [url]', 'nl_NL' => 'Holandština', 'no' => 'Ne', 'notification' => '', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => 'Listopad', 'now' => 'nyní', @@ -1551,6 +1564,7 @@ Jméno: [username] [comment]', 'send_login_data_subject' => '[sitename]: [login] - Přihlašovací údaje', +'send_notification' => '', 'send_test_mail' => 'Poslat zkušební zprávu', 'september' => 'Září', 'sequence' => 'Posloupnost', diff --git a/languages/de_DE/lang.inc b/languages/de_DE/lang.inc index 839fba5f5..57f4cc71f 100644 --- a/languages/de_DE/lang.inc +++ b/languages/de_DE/lang.inc @@ -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 (3381), dgrutsch (22) +// Translators: Admin (3395), dgrutsch (22) $text = array( '2_factor_auth' => '2-Faktor Authentifizierung', @@ -328,6 +328,7 @@ URL: [url]
', 'checkout_is_disabled' => 'Auschecken von Dokumenten ist in der Konfiguration ausgeschaltet.', 'check_directory_layout' => 'Prüfe Verzeichnise', 'check_failed' => 'fehlgeschlagen', +'check_notification_filter' => 'Prüfe Benachrichtigungsfilter', 'check_passed' => 'erfolgreich', 'check_secure_installation' => 'Prüfe auf sichere Installation', 'choose_attrdef' => 'Attributdefinition wählen', @@ -349,6 +350,7 @@ URL: [url]', 'clear_cache' => 'Cache löschen', 'clear_clipboard' => 'Zwischenablage leeren', 'clear_password' => 'Passwort löschen', +'click_to_expand_filter_results' => 'Klicken zum Ausklappen der Filterprüfung', 'clipboard' => 'Zwischenablage', 'close' => 'Schließen', 'color' => 'Farbe', @@ -1357,6 +1359,17 @@ URL: [url]', 'nl_NL' => 'Niederländisch', 'no' => 'Nein', 'notification' => 'Beobachter', +'notification_msg_tmpl' => 'Schablone', +'notification_recvtype' => 'Empfängertyp', +'notification_recv_any' => 'Jeder', +'notification_recv_approver' => 'Freigeber', +'notification_recv_notification' => 'Beobachter', +'notification_recv_owner' => 'Besitzer', +'notification_recv_reviewer' => 'Prüfer', +'notification_recv_uploader' => 'Hochlader', +'notification_recv_workflow' => 'Workflow', +'notification_service_no_filter' => 'Dieser Benachrichtigungsdienst hat keinen Filter.', +'notification_tmpl' => 'Schablone', 'not_subscribed' => 'Nicht abonniert', 'november' => 'November', 'now' => 'sofort', @@ -1942,6 +1955,7 @@ Name: [username] Sollten Sie kein Passwort bekommen haben, dann nutzen Sie bitte die Passwort-Vergessen-Funktion auf der Anmeldeseite, um ein neues Passwort zu setzen.', 'send_login_data_subject' => '[sitename]: [login] - Ihre Login-Daten', +'send_notification' => 'Benachrichtigung verschicken', 'send_test_mail' => 'Sende Test-E-mail', 'september' => 'September', 'sequence' => 'Reihenfolge', diff --git a/languages/el_GR/lang.inc b/languages/el_GR/lang.inc index c0f860bd0..fc9eab65f 100644 --- a/languages/el_GR/lang.inc +++ b/languages/el_GR/lang.inc @@ -270,6 +270,7 @@ $text = array( 'checkout_is_disabled' => '', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => '', @@ -291,6 +292,7 @@ $text = array( 'clear_cache' => 'Εκκαθάριση στιγμιαίας μνήμης', 'clear_clipboard' => '', 'clear_password' => '', +'click_to_expand_filter_results' => '', 'clipboard' => 'Πρόχειρο', 'close' => 'Κλέισιμο', 'color' => '', @@ -982,6 +984,17 @@ URL: [url]', 'nl_NL' => 'Δανέζικα', 'no' => 'Όχι', 'notification' => '', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => 'Νοέμβριος', 'now' => 'τώρα', @@ -1332,6 +1345,7 @@ URL: [url]', 'send_login_data' => '', 'send_login_data_body' => '', 'send_login_data_subject' => '', +'send_notification' => '', 'send_test_mail' => '', 'september' => 'Σεπτέμβριος', 'sequence' => 'Σειρά', diff --git a/languages/en_GB/lang.inc b/languages/en_GB/lang.inc index d009d034b..b36bdd435 100644 --- a/languages/en_GB/lang.inc +++ b/languages/en_GB/lang.inc @@ -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 (2481), archonwang (3), dgrutsch (9), netixw (14) +// Translators: Admin (2495), archonwang (3), dgrutsch (9), netixw (14) $text = array( '2_factor_auth' => '2-factor authentication', @@ -328,6 +328,7 @@ URL: [url]', 'checkout_is_disabled' => 'Check out of documents is disabled in the configuration.', 'check_directory_layout' => 'Check directory layout', 'check_failed' => 'failed', +'check_notification_filter' => 'Check notification filter', 'check_passed' => 'passed', 'check_secure_installation' => 'Check for a secure installation', 'choose_attrdef' => 'Please choose attribute definition', @@ -349,6 +350,7 @@ URL: [url]', 'clear_cache' => 'Clear cache', 'clear_clipboard' => 'Clear clipboard', 'clear_password' => 'Clear password', +'click_to_expand_filter_results' => 'Click to expand filter check', 'clipboard' => 'Clipboard', 'close' => 'Close', 'color' => 'Color', @@ -1359,6 +1361,17 @@ URL: [url]', 'nl_NL' => 'Dutch', 'no' => 'No', 'notification' => 'Notification', +'notification_msg_tmpl' => 'Template', +'notification_recvtype' => 'Type of receiver', +'notification_recv_any' => 'Any', +'notification_recv_approver' => 'Approver', +'notification_recv_notification' => 'Notifier', +'notification_recv_owner' => 'Owner', +'notification_recv_reviewer' => 'Reviewer', +'notification_recv_uploader' => 'Uploader', +'notification_recv_workflow' => 'Workflow', +'notification_service_no_filter' => 'This notification services does not have a filter.', +'notification_tmpl' => 'Template', 'not_subscribed' => 'Not subscribed', 'november' => 'November', 'now' => 'now', @@ -1944,6 +1957,7 @@ Name: [username] If you did not receive a password, please use the password forgotten function on the login page to set a new password.', 'send_login_data_subject' => '[sitename]: [login] - Your login data', +'send_notification' => 'Send notification', 'send_test_mail' => 'Send test mail', 'september' => 'September', 'sequence' => 'Sequence', diff --git a/languages/es_ES/lang.inc b/languages/es_ES/lang.inc index 0934f21e7..d92b7285b 100644 --- a/languages/es_ES/lang.inc +++ b/languages/es_ES/lang.inc @@ -290,6 +290,7 @@ URL: [url]', 'checkout_is_disabled' => '', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => 'Por favor, seleccione definición de atributo', @@ -311,6 +312,7 @@ URL: [url]', 'clear_cache' => 'Borrar cache', 'clear_clipboard' => 'Limpiar portapapeles', 'clear_password' => '', +'click_to_expand_filter_results' => '', 'clipboard' => 'Portapapeles', 'close' => 'Cerrar', 'color' => '', @@ -1108,6 +1110,17 @@ URL: [url]', 'nl_NL' => 'Holandes', 'no' => 'No', 'notification' => 'Notificación', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => 'Noviembre', 'now' => 'ahora', @@ -1502,6 +1515,7 @@ URL: [url]', 'send_login_data' => '', 'send_login_data_body' => '', 'send_login_data_subject' => '', +'send_notification' => '', 'send_test_mail' => 'Enviar correo de prueba', 'september' => 'Septiembre', 'sequence' => 'Secuencia', diff --git a/languages/fr_FR/lang.inc b/languages/fr_FR/lang.inc index 3a490dbfe..be04c5b8a 100644 --- a/languages/fr_FR/lang.inc +++ b/languages/fr_FR/lang.inc @@ -319,6 +319,7 @@ URL : [url]', 'checkout_is_disabled' => 'Le blocage (check-out) de documents est désactivé dans la configuration.', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => 'Choisissez une définition d\'attribut', @@ -340,6 +341,7 @@ URL : [url]', 'clear_cache' => 'Vider le cache', 'clear_clipboard' => 'Vider le presse-papier', 'clear_password' => 'Sans mot de passe', +'click_to_expand_filter_results' => '', 'clipboard' => 'Presse-papier', 'close' => 'Fermer', 'color' => 'Couleur', @@ -1314,6 +1316,17 @@ URL : [url]', 'nl_NL' => 'Danois', 'no' => 'Non', 'notification' => 'Notification', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => 'Non inscrit', 'november' => 'Novembre', 'now' => 'Maintenant', @@ -1889,6 +1902,7 @@ Nom : [username] [comment]', 'send_login_data_subject' => '[sitename] : [login] - Vos informations de connexion', +'send_notification' => '', 'send_test_mail' => 'Envoyer un e-mail test', 'september' => 'Septembre', 'sequence' => 'Position dans le dossier', diff --git a/languages/hr_HR/lang.inc b/languages/hr_HR/lang.inc index 67a010e70..239320f31 100644 --- a/languages/hr_HR/lang.inc +++ b/languages/hr_HR/lang.inc @@ -295,6 +295,7 @@ Internet poveznica: [url]', 'checkout_is_disabled' => 'Odjava dokumenata je onemogućena u konfiguraciji.', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => 'Molim odaberite definiciju atributa', @@ -316,6 +317,7 @@ Internet poveznica: [url]', 'clear_cache' => 'Obriši keš', 'clear_clipboard' => 'Očistite međuspremnik', 'clear_password' => '', +'click_to_expand_filter_results' => '', 'clipboard' => 'Međuspremnik', 'close' => 'Zatvori', 'color' => '', @@ -1104,6 +1106,17 @@ Internet poveznica: [url]', 'nl_NL' => 'Nizozemski', 'no' => 'Ne', 'notification' => '', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => 'Studeni', 'now' => 'sada', @@ -1515,6 +1528,7 @@ Internet poveznica: [url]', 'send_login_data' => '', 'send_login_data_body' => '', 'send_login_data_subject' => '', +'send_notification' => '', 'send_test_mail' => '', 'september' => 'Rujan', 'sequence' => 'Redoslijed', diff --git a/languages/hu_HU/lang.inc b/languages/hu_HU/lang.inc index 4a1a9ee3d..96ed73b58 100644 --- a/languages/hu_HU/lang.inc +++ b/languages/hu_HU/lang.inc @@ -290,6 +290,7 @@ URL: [url]', 'checkout_is_disabled' => '', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => 'Kérem válasszon jellemző meghatározást', @@ -311,6 +312,7 @@ URL: [url]', 'clear_cache' => 'Gyorsítótár törlése', 'clear_clipboard' => 'Vágólap törlése', 'clear_password' => 'jelszó törlése', +'click_to_expand_filter_results' => '', 'clipboard' => 'Vágólap', 'close' => 'Bezár', 'color' => '', @@ -1099,6 +1101,17 @@ URL: [url]', 'nl_NL' => 'Holland', 'no' => 'Nem', 'notification' => '', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => 'November', 'now' => 'most', @@ -1492,6 +1505,7 @@ URL: [url]', 'send_login_data' => '', 'send_login_data_body' => '', 'send_login_data_subject' => '', +'send_notification' => '', 'send_test_mail' => 'Teszt e-mail küldése', 'september' => 'September', 'sequence' => 'Sorrend', diff --git a/languages/id_ID/lang.inc b/languages/id_ID/lang.inc index 031773441..08301f618 100644 --- a/languages/id_ID/lang.inc +++ b/languages/id_ID/lang.inc @@ -299,6 +299,7 @@ URL: [url]', 'checkout_is_disabled' => 'Check out dokumen dinonaktifkan dalam konfigurasi', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => 'Harap memilih definisi label', @@ -320,6 +321,7 @@ URL: [url]', 'clear_cache' => 'Hapus cache', 'clear_clipboard' => 'Hapus Papan klip', 'clear_password' => 'Hapus kata sandi', +'click_to_expand_filter_results' => '', 'clipboard' => 'Papan klip', 'close' => 'Tutup', 'color' => 'Warna', @@ -1192,6 +1194,17 @@ URL: [url]', 'nl_NL' => 'Belanda', 'no' => 'Tidak', 'notification' => 'Notifikasi', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => 'Tidak berlangganan', 'november' => 'November', 'now' => 'sekarang', @@ -1582,6 +1595,7 @@ Nama: [username] Jika Anda tidak menerima kata sandi, silakan gunakan fitur lupa kata sandi di halaman login untuk mengatur kata sandi baru.', 'send_login_data_subject' => '[sitename]: [login] - Data login anda', +'send_notification' => '', 'send_test_mail' => 'Kirim surel percobaan', 'september' => 'September', 'sequence' => 'Urutan', diff --git a/languages/it_IT/lang.inc b/languages/it_IT/lang.inc index e3fd4dbf9..1441cae0e 100644 --- a/languages/it_IT/lang.inc +++ b/languages/it_IT/lang.inc @@ -295,6 +295,7 @@ URL: [url]', 'checkout_is_disabled' => 'Approvazione dei documenti disabilitata', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => 'Seleziona l\'Attributo', @@ -316,6 +317,7 @@ URL: [url]', 'clear_cache' => 'Pulisci cache', 'clear_clipboard' => 'Cancella appunti', 'clear_password' => 'Cancella la password', +'click_to_expand_filter_results' => '', 'clipboard' => 'Appunti', 'close' => 'Chiudi', 'color' => '', @@ -1106,6 +1108,17 @@ URL: [url]', 'nl_NL' => 'Olandese', 'no' => 'No', 'notification' => 'Notifica', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => 'Novembre', 'now' => 'Adesso', @@ -1538,6 +1551,7 @@ Name: [username] [comment]', 'send_login_data_subject' => '[sitename]: [login] - I tuoi dati di login', +'send_notification' => '', 'send_test_mail' => 'Invia messagio di prova', 'september' => 'Settembre', 'sequence' => 'Posizione', diff --git a/languages/ko_KR/lang.inc b/languages/ko_KR/lang.inc index ccddc7c19..71e52bd64 100644 --- a/languages/ko_KR/lang.inc +++ b/languages/ko_KR/lang.inc @@ -297,6 +297,7 @@ URL: [url]', 'checkout_is_disabled' => '체크아웃된 문서는 설정에서 비활성화됩니다.', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => '속성의 정의를 선택하세요', @@ -318,6 +319,7 @@ URL: [url]', 'clear_cache' => '캐시 비우기', 'clear_clipboard' => '클립 보드 제거', 'clear_password' => '암호 비우기', +'click_to_expand_filter_results' => '', 'clipboard' => '클립보드', 'close' => '닫기', 'color' => '', @@ -1106,6 +1108,17 @@ URL [url]', 'nl_NL' => '네덜란드', 'no' => '아니오', 'notification' => '', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => '11월', 'now' => '지금', @@ -1509,6 +1522,7 @@ URL : [url]', 'send_login_data' => '', 'send_login_data_body' => '', 'send_login_data_subject' => '', +'send_notification' => '', 'send_test_mail' => '테스트 메일', 'september' => '9월', 'sequence' => '순서', diff --git a/languages/lo_LA/lang.inc b/languages/lo_LA/lang.inc index 320d9969c..8a501b79d 100644 --- a/languages/lo_LA/lang.inc +++ b/languages/lo_LA/lang.inc @@ -293,6 +293,7 @@ URL: [url]', 'checkout_is_disabled' => 'ໃນການກຳນົດຄ່າເຊັກເອົາເອກະສານໄດ້ຖືກປິດໄຊ້ງານ', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => 'ກະລຸນາເລືອກນິຍາມແອັດທິບິວ', @@ -314,6 +315,7 @@ URL: [url]', 'clear_cache' => 'ລ້າງແຄຣ', 'clear_clipboard' => 'ລ້າງຄິບບອສ', 'clear_password' => 'ລ້າງລະຫັດ', +'click_to_expand_filter_results' => '', 'clipboard' => 'ຄິບບອດ', 'close' => 'ປຶດ', 'color' => '', @@ -1103,6 +1105,17 @@ URL: [url]', 'nl_NL' => 'ດັສ', 'no' => 'ບໍ່', 'notification' => '', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => 'ເດືອນພະຈິກ', 'now' => 'ຕອນນີ້', @@ -1535,6 +1548,7 @@ URL: [url]', [comment]', 'send_login_data_subject' => '[sitename]:[login] - ຂໍ້ມູນການເຂົ້າສູ້ລະບົບຂອງເຈົ້າ', +'send_notification' => '', 'send_test_mail' => 'ສົ່ງອີເມວທົດສອບ', 'september' => 'ເດືອນກັນຍາ', 'sequence' => 'ລຳດັບ', diff --git a/languages/nb_NO/lang.inc b/languages/nb_NO/lang.inc index 6efad18c9..3f70a4374 100644 --- a/languages/nb_NO/lang.inc +++ b/languages/nb_NO/lang.inc @@ -295,6 +295,7 @@ URL: [url]', 'checkout_is_disabled' => 'Sjekk ut av dokumentene er deaktivert i konfigurasjonen.', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => 'Velg egenskaps definition', @@ -316,6 +317,7 @@ URL: [url]', 'clear_cache' => 'Tøm cache', 'clear_clipboard' => 'Tøm utklippstavle', 'clear_password' => 'Slett passord', +'click_to_expand_filter_results' => '', 'clipboard' => 'Utklippstavle', 'close' => 'Lukk', 'color' => '', @@ -1124,6 +1126,17 @@ URL: [url]', 'nl_NL' => 'Nederland', 'no' => 'Nei', 'notification' => 'Melding', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => 'November', 'now' => 'nå', @@ -1548,6 +1561,7 @@ Loginn: [login] Bruker: [username] [comment]', 'send_login_data_subject' => '[sitename]: [login] - Dine innloggingsdata', +'send_notification' => '', 'send_test_mail' => 'Send test mail', 'september' => 'September', 'sequence' => 'Sekvens', diff --git a/languages/nl_NL/lang.inc b/languages/nl_NL/lang.inc index 084a39eac..493703249 100644 --- a/languages/nl_NL/lang.inc +++ b/languages/nl_NL/lang.inc @@ -288,6 +288,7 @@ URL: [url]', 'checkout_is_disabled' => 'Checkout is niet mogelijk', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => 'Kies een attribuutdefinitie', @@ -309,6 +310,7 @@ URL: [url]', 'clear_cache' => 'Cache leegmaken', 'clear_clipboard' => 'Vrijgeven klembord', 'clear_password' => 'Verwijder het wachtwoord', +'click_to_expand_filter_results' => '', 'clipboard' => 'Klembord', 'close' => 'Sluiten', 'color' => '', @@ -1116,6 +1118,17 @@ URL: [url]', 'nl_NL' => 'Nederlands', 'no' => 'Nee', 'notification' => 'Bericht', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => 'november', 'now' => 'nu', @@ -1547,6 +1560,7 @@ Name: [username] [comment]', 'send_login_data_subject' => 'Onderwerp', +'send_notification' => '', 'send_test_mail' => 'Testmail versturen', 'september' => 'september', 'sequence' => 'Volgorde', diff --git a/languages/pl_PL/lang.inc b/languages/pl_PL/lang.inc index f81f3298f..74533c5b5 100644 --- a/languages/pl_PL/lang.inc +++ b/languages/pl_PL/lang.inc @@ -283,6 +283,7 @@ URL: [url]', 'checkout_is_disabled' => 'Wyewidencjonowywanie dokumentów jest wyłączone w konfiguracji.', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => 'Proszę wybrać definicję atrybutu', @@ -304,6 +305,7 @@ URL: [url]', 'clear_cache' => 'Wyczyść cache', 'clear_clipboard' => 'Oczyść schowek', 'clear_password' => 'Wyczyść hasło', +'click_to_expand_filter_results' => '', 'clipboard' => 'Schowek', 'close' => 'Zamknij', 'color' => 'Kolor', @@ -1093,6 +1095,17 @@ URL: [url]', 'nl_NL' => 'holenderski', 'no' => 'Nie', 'notification' => 'Powiadomienie', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => 'Listopad', 'now' => 'teraz', @@ -1478,6 +1491,7 @@ Name: [username] [comment]', 'send_login_data_subject' => '[sitename]: [login] - Twoje dane logowania', +'send_notification' => '', 'send_test_mail' => 'Wyślij wiadomość testową', 'september' => 'Wrzesień', 'sequence' => 'Kolejność', diff --git a/languages/pt_BR/lang.inc b/languages/pt_BR/lang.inc index aa48c8128..e9b9a991a 100644 --- a/languages/pt_BR/lang.inc +++ b/languages/pt_BR/lang.inc @@ -295,6 +295,7 @@ URL: [url]', 'checkout_is_disabled' => 'A retirada de documentos está desativada na configuração.', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => 'Por favor escolha a definição de atributo', @@ -316,6 +317,7 @@ URL: [url]', 'clear_cache' => 'Limpar o Cache', 'clear_clipboard' => 'Limpar área de transferência', 'clear_password' => 'Limpar senha', +'click_to_expand_filter_results' => '', 'clipboard' => 'Área de transferência', 'close' => 'Fechar', 'color' => '', @@ -1123,6 +1125,17 @@ URL: [url]', 'nl_NL' => 'Holandês', 'no' => 'Não', 'notification' => 'Notificação', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => 'Novembro', 'now' => 'agora', @@ -1554,6 +1567,7 @@ Nome: [username] [comment]', 'send_login_data_subject' => '[sitename]: [login] - Suas informações para login', +'send_notification' => '', 'send_test_mail' => 'Enviar email de teste', 'september' => 'Setembro', 'sequence' => 'Sequência', diff --git a/languages/ro_RO/lang.inc b/languages/ro_RO/lang.inc index f525cf9b0..5dd34f0a2 100644 --- a/languages/ro_RO/lang.inc +++ b/languages/ro_RO/lang.inc @@ -295,6 +295,7 @@ URL: [url]', 'checkout_is_disabled' => 'Verificarea documentelor este dezactivata in configurari.', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => 'Vă rugăm să alegeți definiția atributului', @@ -316,6 +317,7 @@ URL: [url]', 'clear_cache' => 'Sterge cache', 'clear_clipboard' => 'Goleste clipboard', 'clear_password' => '', +'click_to_expand_filter_results' => '', 'clipboard' => 'Clipboard', 'close' => 'Inchide', 'color' => '', @@ -1105,6 +1107,17 @@ URL: [url]', 'nl_NL' => 'Olandeză', 'no' => 'Nu', 'notification' => '', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => 'Noiembrie', 'now' => 'nou', @@ -1516,6 +1529,7 @@ URL: [url]', 'send_login_data' => '', 'send_login_data_body' => '', 'send_login_data_subject' => '', +'send_notification' => '', 'send_test_mail' => 'Trimite e-mail de test', 'september' => 'Septembrie', 'sequence' => 'Poziție', diff --git a/languages/ru_RU/lang.inc b/languages/ru_RU/lang.inc index 184d0bd21..9862259a0 100644 --- a/languages/ru_RU/lang.inc +++ b/languages/ru_RU/lang.inc @@ -295,6 +295,7 @@ URL: [url]', 'checkout_is_disabled' => 'Загрузка отключена.', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => 'Выберите атрибут', @@ -316,6 +317,7 @@ URL: [url]', 'clear_cache' => 'Очистить кэш', 'clear_clipboard' => 'Очистить буфер обмена', 'clear_password' => 'Сбросить пароль', +'click_to_expand_filter_results' => '', 'clipboard' => 'Буфер обмена', 'close' => 'Закрыть', 'color' => '', @@ -1104,6 +1106,17 @@ URL: [url]', 'nl_NL' => 'Dutch', 'no' => 'Нет', 'notification' => 'Уведомление', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => 'Ноябрь', 'now' => 'сейчас', @@ -1523,6 +1536,7 @@ URL: [url]', 'send_login_data' => '', 'send_login_data_body' => '', 'send_login_data_subject' => '', +'send_notification' => '', 'send_test_mail' => 'Отправить тестовое сообщение', 'september' => 'Сентябрь', 'sequence' => 'Позиция', diff --git a/languages/sk_SK/lang.inc b/languages/sk_SK/lang.inc index 33d0db9ac..0770d1d8f 100644 --- a/languages/sk_SK/lang.inc +++ b/languages/sk_SK/lang.inc @@ -295,6 +295,7 @@ URL: [url]', 'checkout_is_disabled' => 'Kontrola dokumentov je zakázaná v konfigurácii.', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => 'Vyberte prosím definíciu atribútu', @@ -316,6 +317,7 @@ URL: [url]', 'clear_cache' => 'Vyčistiť pamäť cache', 'clear_clipboard' => 'Vymazať schránku', 'clear_password' => 'Vymazať heslo', +'click_to_expand_filter_results' => '', 'clipboard' => 'Schránka', 'close' => 'Zavrieť', 'color' => '', @@ -1124,6 +1126,17 @@ URL: [url]', 'nl_NL' => 'Holandština', 'no' => 'Nie', 'notification' => '', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => 'November', 'now' => 'teraz', @@ -1556,6 +1569,7 @@ Meno: [username] [comment]', 'send_login_data_subject' => '[sitename]: [login] - Vaše prihlasovacie údaje', +'send_notification' => '', 'send_test_mail' => 'Poslať testovací E-mail', 'september' => 'September', 'sequence' => 'Postupnosť', diff --git a/languages/sv_SE/lang.inc b/languages/sv_SE/lang.inc index 60ddfdf5e..f47b98153 100644 --- a/languages/sv_SE/lang.inc +++ b/languages/sv_SE/lang.inc @@ -296,6 +296,7 @@ URL: [url]', 'checkout_is_disabled' => 'Utcheckning av dokument är invaktiverad i systemets inställningar.', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => 'Välj attributdefinition', @@ -317,6 +318,7 @@ URL: [url]', 'clear_cache' => 'Rensa cache', 'clear_clipboard' => 'Rensa urklipp', 'clear_password' => 'Ta bort lösenord', +'click_to_expand_filter_results' => '', 'clipboard' => 'Urklipp', 'close' => 'Stäng', 'color' => '', @@ -1111,6 +1113,17 @@ URL: [url]', 'nl_NL' => 'Holländska', 'no' => 'Nej', 'notification' => '', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => 'November', 'now' => 'nu', @@ -1529,6 +1542,7 @@ Namn: [username] Kommentar: [comment]', 'send_login_data_subject' => '[sitename]: [login] - Dina inloggningsuppgifter', +'send_notification' => '', 'send_test_mail' => 'Skicka testmail', 'september' => 'September', 'sequence' => 'Position', diff --git a/languages/tr_TR/lang.inc b/languages/tr_TR/lang.inc index 7b6123467..db37ad551 100644 --- a/languages/tr_TR/lang.inc +++ b/languages/tr_TR/lang.inc @@ -290,6 +290,7 @@ URL: [url]', 'checkout_is_disabled' => '', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => 'Lütfen nitelik tanımını seçiniz', @@ -311,6 +312,7 @@ URL: [url]', 'clear_cache' => 'Ön belleği temizle', 'clear_clipboard' => 'Panoyu temizle', 'clear_password' => '', +'click_to_expand_filter_results' => '', 'clipboard' => 'Pano', 'close' => 'Kapat', 'color' => '', @@ -1097,6 +1099,17 @@ URL: [url]', 'nl_NL' => 'Hollandaca', 'no' => 'Hayır', 'notification' => 'Notlar', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => 'Kasım', 'now' => 'şimdi', @@ -1493,6 +1506,7 @@ URL: [url]', 'send_login_data' => '', 'send_login_data_body' => '', 'send_login_data_subject' => '', +'send_notification' => '', 'send_test_mail' => 'Test maili gönder', 'september' => 'Eylül', 'sequence' => 'Sıralama', diff --git a/languages/uk_UA/lang.inc b/languages/uk_UA/lang.inc index b1c7f664b..cf4aae837 100644 --- a/languages/uk_UA/lang.inc +++ b/languages/uk_UA/lang.inc @@ -295,6 +295,7 @@ URL: [url]', 'checkout_is_disabled' => 'Завантаження відключене', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => 'Оберіть атрибут', @@ -316,6 +317,7 @@ URL: [url]', 'clear_cache' => 'Очистити кеш', 'clear_clipboard' => 'Очистити буфер обміну', 'clear_password' => '', +'click_to_expand_filter_results' => '', 'clipboard' => 'Буфер обміну', 'close' => 'Закрити', 'color' => '', @@ -1103,6 +1105,17 @@ URL: [url]', 'nl_NL' => 'Dutch', 'no' => 'Ні', 'notification' => '', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => 'Листопад', 'now' => 'зараз', @@ -1515,6 +1528,7 @@ URL: [url]', 'send_login_data' => '', 'send_login_data_body' => '', 'send_login_data_subject' => '', +'send_notification' => '', 'send_test_mail' => 'Надіслати тестове повідомлення', 'september' => 'Вересень', 'sequence' => 'Позиція', diff --git a/languages/zh_CN/lang.inc b/languages/zh_CN/lang.inc index f30e33587..1694824fb 100644 --- a/languages/zh_CN/lang.inc +++ b/languages/zh_CN/lang.inc @@ -287,6 +287,7 @@ URL: [url]', 'checkout_is_disabled' => '不允许签出', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => '请选择属性', @@ -308,6 +309,7 @@ URL: [url]', 'clear_cache' => '清除缓存', 'clear_clipboard' => '清除粘贴板', 'clear_password' => '清除密码', +'click_to_expand_filter_results' => '', 'clipboard' => '剪切板', 'close' => '关闭', 'color' => '', @@ -1107,6 +1109,17 @@ URL: [url]', 'nl_NL' => '荷兰语', 'no' => '否', 'notification' => '', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => '十一月', 'now' => '现在', @@ -1503,6 +1516,7 @@ URL: [url]', [comment]', 'send_login_data_subject' => '[sitename]: [login] - 您的登录数据', +'send_notification' => '', 'send_test_mail' => '发送测试邮件', 'september' => '九 月', 'sequence' => '次序', diff --git a/languages/zh_TW/lang.inc b/languages/zh_TW/lang.inc index 3b17ffa30..16389fe9a 100644 --- a/languages/zh_TW/lang.inc +++ b/languages/zh_TW/lang.inc @@ -295,6 +295,7 @@ $text = array( 'checkout_is_disabled' => '在配置中禁用了簽出文件功能。', 'check_directory_layout' => '', 'check_failed' => '', +'check_notification_filter' => '', 'check_passed' => '', 'check_secure_installation' => '', 'choose_attrdef' => '請選擇屬性', @@ -316,6 +317,7 @@ $text = array( 'clear_cache' => '清除緩存', 'clear_clipboard' => '清除剪貼簿', 'clear_password' => '清除密碼', +'click_to_expand_filter_results' => '', 'clipboard' => '剪貼簿', 'close' => '關閉', 'color' => '', @@ -1124,6 +1126,17 @@ URL: [url]', 'nl_NL' => '荷蘭語', 'no' => '否', 'notification' => '通知', +'notification_msg_tmpl' => '', +'notification_recvtype' => '', +'notification_recv_any' => '', +'notification_recv_approver' => '', +'notification_recv_notification' => '', +'notification_recv_owner' => '', +'notification_recv_reviewer' => '', +'notification_recv_uploader' => '', +'notification_recv_workflow' => '', +'notification_service_no_filter' => '', +'notification_tmpl' => '', 'not_subscribed' => '', 'november' => '十一月', 'now' => '現在', @@ -1554,6 +1567,7 @@ URL: [url]', [comment]', 'send_login_data_subject' => '[sitename]: [login] - 您的登入資料', +'send_notification' => '', 'send_test_mail' => '寄送測試信件', 'september' => '九 月', 'sequence' => '次序', diff --git a/op/op.Ajax.php b/op/op.Ajax.php index 8bd9bb46e..99f85b4fb 100644 --- a/op/op.Ajax.php +++ b/op/op.Ajax.php @@ -667,7 +667,7 @@ switch($command) { if($content) { $document = $content->getDocument(); if ($document->getAccessMode($user) >= M_READWRITE) { - $realmimetype = SeedDMS_Core_File::mimetype($dms->contentDir . $content->getPath()); + $realmimetype = $content->getRealMimeType(); if (!$content->setMimeType($realmimetype)) { header('Content-Type: application/json'); echo json_encode(array('success'=>false, 'message'=>'Error setting mimetype', 'data'=>'')); diff --git a/op/op.ImportFS.php b/op/op.ImportFS.php index 260b2c487..d5f3f90c2 100644 --- a/op/op.ImportFS.php +++ b/op/op.ImportFS.php @@ -61,7 +61,7 @@ function getAttributeData($attrdef, $coldata, $objdata) { /* {{{ */ function getCategoryData($colname, $coldata, $objdata) { /* {{{ */ global $catids; $kk = explode(',', $coldata); - $objdata['category'][] = array(); + $objdata['category'] = array(); foreach($kk as $k) { if(isset($catids[$k])) $objdata['category'][] = $catids[$k]; @@ -90,7 +90,7 @@ if(!empty($_GET["dropfolderfileform2"])) { $colmap[$i] = array("getCategoryData", $colname); } elseif(in_array($colname, array('owner'))) { $colmap[$i] = array("getUserData", $colname); - } elseif(in_array($colname, array('filename', 'category', 'name', 'comment'))) { + } elseif(in_array($colname, array('filename', 'keywords', 'name', 'comment'))) { $colmap[$i] = array("getBaseData", $colname); } elseif(substr($colname, 0, 5) == 'attr:') { $kk = explode(':', $colname, 2); @@ -100,7 +100,7 @@ if(!empty($_GET["dropfolderfileform2"])) { } } } -// echo "";print_r($colmap);echo ""; +// echo "
";var_dump($colmap);echo "";exit; if(count($colmap) > 1) { $nameprefix = dirname($dirname).'/'; $allcats = $dms->getDocumentCategories(); @@ -113,8 +113,6 @@ if(!empty($_GET["dropfolderfileform2"])) { $userids[$muser->getLogin()] = $muser; while(!feof($fp)) { if($data = fgetcsv($fp, 0, $csvdelim, $csvencl)) { - $mi = $nameprefix.$data[$colmap['filename']]; -// $metadata[$mi] = array('category'=>array()); $md = array(); $md['attributes'] = array(); foreach($data as $i=>$coldata) { @@ -130,7 +128,6 @@ if(!empty($_GET["dropfolderfileform2"])) { } } //echo "
";print_r($metadata);echo ""; -//exit; $setfiledate = false; if(isset($_GET['setfiledate']) && $_GET["setfiledate"]) { @@ -143,7 +140,7 @@ if(isset($_GET['setfolderdate']) && $_GET["setfolderdate"]) { } function import_folder($dirname, $folder, $setfiledate, $setfolderdate, $metadata) { /* {{{ */ - global $user, $doccount, $foldercount; + global $user, $doccount, $foldercount, $logger; $d = dir($dirname); $sequence = 1; @@ -172,7 +169,9 @@ function import_folder($dirname, $folder, $setfiledate, $setfolderdate, $metadat $comment = !empty($metadata[$path]['comment']) ? $metadata[$path]['comment'] : ''; $owner = !empty($metadata[$path]['owner']) ? $metadata[$path]['owner'] : $user; - echo $mimetype." - ".$filetype." - ".$path."
".print_r($res, true).""; -// return false; + if($logger) + $logger->log('ImportFS: importing \''.$path.'\' failed.', PEAR_LOG_ERR); } set_time_limit(30); } elseif(is_dir($path)) { @@ -198,10 +198,13 @@ function import_folder($dirname, $folder, $setfiledate, $setfolderdate, $metadat if($setfolderdate) { $newfolder->setDate(filemtime($path)); } + if($logger) + $logger->log('ImportFS: creating folder \''.$path.'\' as folder '.$newfolder->getId(), PEAR_LOG_INFO); if(!import_folder($path, $newfolder, $setfiledate, $setfolderdate, $metadata)) return false; } else { -// return false; + if($logger) + $logger->log('ImportFS: creating folder \''.$path.'\' failed.', PEAR_LOG_ERR); } } $sequence++; @@ -211,9 +214,26 @@ function import_folder($dirname, $folder, $setfiledate, $setfolderdate, $metadat } /* }}} */ $foldercount = $doccount = 0; -if($newfolder = $folder->addSubFolder($_GET["dropfolderfileform1"], '', $user, 1)) { - if($setfolderdate) { - $newfolder->setDate(filemtime($dirname)); +if(!empty($_GET['createfolder'])) { + if($newfolder = $folder->addSubFolder($_GET["dropfolderfileform1"], '', $user, 1)) { + if($setfolderdate) { + $newfolder->setDate(filemtime($dirname)); + } + if($logger) + $logger->log('ImportFS: creating folder \''.$_GET["dropfolderfileform1"].'\' as folder '.$newfolder->getId(), PEAR_LOG_INFO); + } else { + if($logger) + $logger->log('ImportFS: creating folder \''.$_GET["dropfolderfileform1"].'\' failed.', PEAR_LOG_ERR); + } +} else { + $newfolder = $folder; +} + +if($newfolder) { + if($logger) { + $logger->log('ImportFS: importing into folder '.$newfolder->getId(), PEAR_LOG_INFO); + if($metadata) + $logger->log('ImportFS: using metadata for '.count($metadata).' files from file \''.$metadatafile.'\'', PEAR_LOG_INFO); } if(!import_folder($dirname, $newfolder, $setfiledate, $setfolderdate, $metadata)) $session->setSplashMsg(array('type'=>'error', 'msg'=>getMLText('error_importfs'))); diff --git a/op/op.SendNotification.php b/op/op.SendNotification.php new file mode 100644 index 000000000..0fbd3b076 --- /dev/null +++ b/op/op.SendNotification.php @@ -0,0 +1,78 @@ +$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, null, $user, $settings); +if (!$accessop->check_controller_access($controller, $_GET)) { + header('Content-Type: application/json'); + echo json_encode(array('success'=>false, 'message'=>getMLText('access_denied'))); + exit; +} + +/* Check if the form data comes from a trusted request */ +if(!checkFormKey('sendnotification', 'GET')) { + header('Content-Type: application/json'); + echo json_encode(array('success'=>false, 'message'=>getMLText('invalid_request_token'))); + exit; +} + +if (!isset($_GET["userid"]) || !is_numeric($_GET["userid"]) || intval($_GET["userid"])<1) { + header('Content-Type: application/json'); + echo json_encode(array('success'=>false, 'message'=>getMLText('invalid_user_id'))); +} +$userid = $_GET["userid"]; +$newuser = $dms->getUser($userid); + +if (!is_object($newuser)) { + header('Content-Type: application/json'); + echo json_encode(array('success'=>false, 'message'=>getMLText('invalid_user_id'))); + exit; +} + +$recvtype = 1; +if (isset($_GET["recvtype"])) { + $recvtype = (int) $_GET["recvtype"]; +} +$template = 'send_notification'; +if (isset($_GET["template"])) { + $template = $_GET["template"]; +} + +if($notifier) { + header('Content-Type: application/json'); + if($notifier->toIndividual($user, $newuser, $template.'_email_subject', $template.'_email_body', [], $recvtype)) { + echo json_encode(array('success'=>true, 'message'=>getMLText('splash_send_notification'))); + } else { + echo json_encode(array('success'=>false, 'message'=>getMLText('error_send_notification'))); + } +} + diff --git a/out/out.SendNotification.php b/out/out.SendNotification.php new file mode 100644 index 000000000..b44176930 --- /dev/null +++ b/out/out.SendNotification.php @@ -0,0 +1,60 @@ +$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, null, $user, $settings); +if (!$settings->_enableDebugMode) { + UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); +} +if (!$accessop->check_view_access($view, $_GET)) { + UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); +} + +$seluser = null; +if(!empty($_GET['userid'])) { + $userid = (int) $_GET['userid']; + $seluser = $dms->getUser($userid); +} else { + $seluser = $user; +} + +$allusers = $dms->getAllUsers($settings->_sortUsersInList); + +if($view) { + $view->setParam('settings', $settings); + $view->setParam('accessobject', $accessop); + $view->setParam('notifier', $notifier); + $view->setParam('allusers', $allusers); + $view->setParam('seluser', $seluser); + $view($_GET); + exit; +} + + diff --git a/utils/importfs.php b/utils/importfs.php index ede4570d7..68cf1ebd2 100644 --- a/utils/importfs.php +++ b/utils/importfs.php @@ -233,7 +233,7 @@ function import_folder($dirname, $folder, $setfiledate, $setfolderdate, $metadat $sequence = 1; while(false !== ($entry = $d->read())) { $path = $dirname.'/'.$entry; - if($entry != '.' && $entry != '..' && $entry != '.svn') { + if(!in_array($entry, $excludefiles)) { if(is_file($path)) { $name = utf8_basename($path); $filetmp = $path; diff --git a/views/bootstrap/class.Bootstrap.php b/views/bootstrap/class.Bootstrap.php index 9cfeba05d..ce7213173 100644 --- a/views/bootstrap/class.Bootstrap.php +++ b/views/bootstrap/class.Bootstrap.php @@ -1086,6 +1086,8 @@ background-image: linear-gradient(to bottom, #882222, #111111);; $menuitems['debug']['children']['hooks'] = array('link'=>$this->params['settings']->_httpRoot."out/out.Hooks.php", 'label'=>getMLText('list_hooks')); if ($accessobject->check_view_access('NotificationServices')) $menuitems['debug']['children']['notification_services'] = array('link'=>$this->params['settings']->_httpRoot."out/out.NotificationServices.php", 'label'=>getMLText('list_notification_services')); + if ($accessobject->check_view_access('SendNotification')) + $menuitems['debug']['children']['send_notification'] = array('link'=>$this->params['settings']->_httpRoot."out/out.SendNotification.php", 'label'=>getMLText('send_notification')); if ($accessobject->check_view_access('ConversionServices')) $menuitems['debug']['children']['conversion_services'] = array('link'=>$this->params['settings']->_httpRoot."out/out.ConversionServices.php", 'label'=>getMLText('list_conversion_services')); } diff --git a/views/bootstrap/class.Charts.php b/views/bootstrap/class.Charts.php index b379f17e4..7cc076860 100644 --- a/views/bootstrap/class.Charts.php +++ b/views/bootstrap/class.Charts.php @@ -90,6 +90,48 @@ if(in_array($type, array('docspermonth'))) { } }); + var data = [ +$rec) { + $key = mktime(12, 0, 0, substr($rec['key'], 5, 2), 1, substr($rec['key'], 0, 4)) * 1000; + echo '["'.$rec['key'].'",'.$rec['total'].'],'."\n"; + } + } +?> + ]; + $.plot("#chart", [data], { + xaxis: { + mode: "categories", + tickLength: 0, + }, + series: { + bars: { + show: true, + align: "center", + barWidth: 0.8, + }, + }, + grid: { + hoverable: true, + clickable: true + } + }); + + $("#chart").bind("plothover", function (event, pos, item) { + if(item) { + var x = item.datapoint[0];//.toFixed(2), + y = item.datapoint[1];//.toFixed(2); + $("#tooltip").html(item.series.xaxis.ticks[x].label + ": " + formatFileSize(y, false, 2)) + .css({top: pos.pageY-35, left: pos.pageX+5}) + .fadeIn(200); + } else { + $("#tooltip").hide(); + } + }); + var data = [ @@ -208,7 +250,7 @@ $(document).ready( function() { $this->columnStart(3); $this->contentHeading(getMLText("chart_selection")); $this->contentContainerStart(); - foreach(array('docsperuser', 'foldersperuser', 'sizeperuser', 'docspermimetype', 'docspercategory', 'docsperstatus', 'docspermonth', 'docsaccumulated') as $atype) { + foreach(array('docsperuser', 'foldersperuser', 'sizeperuser', 'sizepermonth','docspermimetype', 'docspercategory', 'docsperstatus', 'docspermonth', 'docsaccumulated') as $atype) { echo "\n"; } $this->contentContainerEnd(); @@ -265,6 +307,7 @@ $(document).ready( function() { } break; case 'sizeperuser': + case 'sizepermonth': foreach($data as $item) { echo "
\n"; - readfile($this->logdir.$logname); + echo htmlspecialchars(file_get_contents($this->logdir.$logname)); echo "\n"; } else { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); diff --git a/views/bootstrap/class.SendNotification.php b/views/bootstrap/class.SendNotification.php new file mode 100644 index 000000000..91f2de1e3 --- /dev/null +++ b/views/bootstrap/class.SendNotification.php @@ -0,0 +1,278 @@ + + * @copyright Copyright (C) 2002-2005 Markus Westphal, + * 2006-2008 Malcolm Cowe, 2010 Matteo Lucarelli, + * 2010-2024 Uwe Steinmann + * @version Release: @package_version@ + */ + +/** + * Class which outputs the html page for sending a notification + * + * @category DMS + * @package SeedDMS + * @author Uwe Steinmann
".getMLText('notification_msg_tmpl')."/".getMLText('notification_recvtype')." | "; + array_shift($this->recvtypes); + foreach($this->recvtypes as $recvtype) { + $content .= "".$recvtype[1]." | "; + } + $content .= "|
---|---|---|
".$subject." | "; + foreach($this->recvtypes as $recvtype) { + if($service->filter($user, $seluser, $subject.'_email_subject', $subject.'_email_body', [], $recvtype[0])) { + $content .= ""; + } else { + $content .= " | "; + } + } + $content .= " |