diff --git a/SeedDMS_Core/Core/inc.ClassUser.php b/SeedDMS_Core/Core/inc.ClassUser.php index 4f55bbc29..1f77848b6 100644 --- a/SeedDMS_Core/Core/inc.ClassUser.php +++ b/SeedDMS_Core/Core/inc.ClassUser.php @@ -169,7 +169,7 @@ class SeedDMS_Core_Role { /* {{{ */ function setNoAccess($noaccess) { /* {{{ */ $db = $this->_dms->getDB(); - $queryStr = "UPDATE tblRoles SET noaccess = " . $db->qstr(implode(',',$noaccess)) . " WHERE id = " . $this->_id; + $queryStr = "UPDATE tblRoles SET noaccess = " . $db->qstr($noaccess ? implode(',',$noaccess) : '') . " WHERE id = " . $this->_id; if (!$db->getResult($queryStr)) return false; diff --git a/controllers/class.RoleMgr.php b/controllers/class.RoleMgr.php new file mode 100644 index 000000000..fa11b08c0 --- /dev/null +++ b/controllers/class.RoleMgr.php @@ -0,0 +1,56 @@ + + * @copyright Copyright (C) 2010-2013 Uwe Steinmann + * @version Release: @package_version@ + */ + +/** + * Class which does the busines logic for role manager + * + * @category DMS + * @package SeedDMS + * @author Uwe Steinmann + * @copyright Copyright (C) 2010-2013 Uwe Steinmann + * @version Release: @package_version@ + */ +class SeedDMS_Controller_RoleMgr extends SeedDMS_Controller_Common { + + public function run() { + } + + public function addrole() { + $dms = $this->params['dms']; + $name = $this->params['name']; + $role = $this->params['role']; + + return($dms->addRole($name, $role)); + } + + public function removerole() { + $roleobj = $this->params['roleobj']; + return $roleobj->remove(); + } + + public function editrole() { + $dms = $this->params['dms']; + $name = $this->params['name']; + $role = $this->params['role']; + $roleobj = $this->params['roleobj']; + $noaccess = $this->params['noaccess']; + + if ($roleobj->getName() != $name) + $roleobj->setName($name); + if ($roleobj->getRole() != $role) + $roleobj->setRole($role); + $roleobj->setNoAccess($noaccess); + + return true; + } +} diff --git a/inc/inc.ClassAccessOperation.php b/inc/inc.ClassAccessOperation.php index 0eb6f48ab..303b72ff2 100644 --- a/inc/inc.ClassAccessOperation.php +++ b/inc/inc.ClassAccessOperation.php @@ -348,11 +348,16 @@ class SeedDMS_AccessOperation { * Check for access permission on view * * If the parameter $view is an array then each element is considered the - * name of a view and true will be returned if one is accesible. + * name of a view and true will be returned if one is accessible. + * Whether access is allowed also depends on the currently logged in user + * stored in the view object. If the user is an admin the access + * on a view must be explicitly disallowed. For regular users the access + * must be explicitly allowed. * * @param mixed $view Instanz of view, name of view or array of view names * @param string $get query parameters - * @return boolean true if access is allowed otherwise false + * @return boolean true if access is allowed, false if access is disallowed + * no specific access right is set, otherwise false */ function check_view_access($view, $get=array()) { /* {{{ */ if(!$this->settings->_advancedAcl) @@ -373,7 +378,8 @@ class SeedDMS_AccessOperation { $this->_aro = SeedDMS_Aro::getInstance($this->user->getRole(), $this->dms); foreach($scripts as $script) { $aco = SeedDMS_Aco::getInstance($scope.'/'.$script.'/'.$action, $this->dms); - if($acl->check($this->_aro, $aco)) + $ll = $acl->check($this->_aro, $aco); + if($ll === 1 && !$this->user->isAdmin() || $ll !== -1 && $this->user->isAdmin()) return true; } return false; @@ -408,7 +414,8 @@ class SeedDMS_AccessOperation { $this->_aro = SeedDMS_Aro::getInstance($this->user->getRole(), $this->dms); foreach($scripts as $script) { $aco = SeedDMS_Aco::getInstance($scope.'/'.$script.'/'.$action, $this->dms); - if($acl->check($this->_aro, $aco)) + $ll = $acl->check($this->_aro, $aco); + if($ll === 1 && !$this->user->isAdmin() || $ll !== -1 && $this->user->isAdmin()) return true; } return false; diff --git a/inc/inc.ClassAcl.php b/inc/inc.ClassAcl.php index 5fbd7e8ed..27ff9691e 100644 --- a/inc/inc.ClassAcl.php +++ b/inc/inc.ClassAcl.php @@ -42,6 +42,15 @@ class SeedDMS_Acl { /* {{{ */ $this->_dms = $dms; } /* }}} */ + /** + * Check if Aro has access on Aco + * + * @param object $aro access request object + * @param object $aco access control object + * @return integer/boolean -1 if access is explictly denied, 1 if access + * is explictly allow, 0 if no access restrictions exists, false if + * an error occured. + */ public function check($aro, $aco) { /* {{{ */ $db = $this->_dms->getDB(); @@ -52,12 +61,12 @@ class SeedDMS_Acl { /* {{{ */ if (is_bool($resArr) && $resArr === false) return false; if (count($resArr) == 1) - return($resArr[0]['read'] == 1 ? true : false); + return((int) $resArr[0]['read']); $aco = $aco->getParent(); } - return false; + return 0; } /* }}} */ public function toggle($aro, $aco) { /* {{{ */ diff --git a/inc/inc.ClassControllerCommon.php b/inc/inc.ClassControllerCommon.php index 308872d43..cff8df973 100644 --- a/inc/inc.ClassControllerCommon.php +++ b/inc/inc.ClassControllerCommon.php @@ -41,6 +41,24 @@ class SeedDMS_Controller_Common { $this->errormsg = ''; } + /** + * Call methods with name in $get['action'] + * + * @params array $get $_GET or $_POST variables + * @return mixed return value of called method + */ + function __invoke($get=array()) { + if(isset($get['action']) && $get['action']) { + if(method_exists($this, $get['action'])) { + return $this->{$get['action']}(); + } else { + echo "Missing action '".$get['action']."'"; + return false; + } + } else + return $this->run(); + } + function setParams($params) { $this->params = $params; } diff --git a/inc/inc.ClassViewCommon.php b/inc/inc.ClassViewCommon.php index c0fb7ba81..00ecbe8f3 100644 --- a/inc/inc.ClassViewCommon.php +++ b/inc/inc.ClassViewCommon.php @@ -171,13 +171,30 @@ class SeedDMS_View_Common { * Check if the access on the view with given name or the current view itself * may be accessed. * + * The function behaves differently for admins and other users. For admins + * a view must be explitly disallowed for this function to return false. + * For other users access on a view must be explicitly allow for the this + * function to return true. + * * @param string|array $name name of view or list of view names * @return boolean true if access is allowed otherwise false */ protected function check_access($name='') { /* {{{ */ if(!$name) $name = $this; - return ((isset($this->params['user']) && $this->params['user']->isAdmin()) || (isset($this->params['accessobject']) && $this->params['accessobject']->check_view_access($name))); + if(!isset($this->params['accessobject'])) + return false; + $access = $this->params['accessobject']->check_view_access($name); + return $access; + + if(isset($this->params['user']) && $this->params['user']->isAdmin()) { + if($access === -1) + return false; + else + return true; + } + + return ($access === 1); } /* }}} */ /** diff --git a/inc/inc.Version.php b/inc/inc.Version.php index 7725e48cc..0cef2e0ce 100644 --- a/inc/inc.Version.php +++ b/inc/inc.Version.php @@ -23,8 +23,7 @@ class SeedDMS_Version { public $_number = "5.1.0"; private $_string = "SeedDMS"; - function SeedDMS_Version() { - return; + function __construct() { } function version() { diff --git a/languages/ar_EG/lang.inc b/languages/ar_EG/lang.inc index 156043ef8..b2e430937 100644 --- a/languages/ar_EG/lang.inc +++ b/languages/ar_EG/lang.inc @@ -219,6 +219,7 @@ URL: [url]', 'choose_workflow' => 'اختر مسار عمل', 'choose_workflow_action' => 'اختر اجراء مسار عمل', 'choose_workflow_state' => 'اختر حالة مسار عمل', +'class_name' => '', 'clear_clipboard' => '', 'clear_password' => '', 'clipboard' => 'لوحة القصاصات', @@ -261,6 +262,7 @@ URL: [url]', 'databasesearch' => 'بحث قاعدة البيانات', 'date' => 'التاريخ', 'days' => 'أيام', +'debug' => '', 'december' => 'ديسمبر', 'default_access' => 'حالة الدخول الافتراضية', 'default_keywords' => 'كلمات بحثية اساسية', @@ -488,6 +490,7 @@ URL: [url]', 'guest_login_disabled' => 'دخول ضيف غير متاح.', 'help' => 'المساعدة', 'home_folder' => '', +'hook_name' => '', 'hourly' => 'بالساعة', 'hours' => 'ساعات', 'hr_HR' => 'ﺎﻠﻛﺭﻭﺎﺘﻳﺓ', @@ -495,6 +498,8 @@ URL: [url]', 'hu_HU' => 'مجرية', 'id' => 'معرف', 'identical_version' => 'الاصدار الجديد مماثل للاصدار الحالي.', +'import' => '', +'importfs' => '', 'include_content' => '', 'include_documents' => 'اشمل مستندات', 'include_subdirectories' => 'اشمل مجلدات فرعية', @@ -566,6 +571,7 @@ URL: [url]', 'linked_documents' => 'مستندات متعلقة', 'linked_files' => 'ملحقات', 'link_alt_updatedocument' => 'اذا كنت تود تحميل ملفات اكبر من حجم الملفات المتاحة حاليا, من فضلك استخدم البديل صفحة التحميل.', +'list_hooks' => '', 'local_file' => 'ملف محلي', 'locked_by' => 'محمي بواسطة', 'lock_document' => 'حماية', @@ -1336,6 +1342,7 @@ URL: [url]', 'tr_TR' => 'ﺕﺮﻜﻳﺓ', 'tuesday' => 'الثلاثاء', 'tuesday_abbr' => 'ث', +'type_of_hook' => '', 'type_to_search' => 'اكتب لتبحث', 'uk_UA' => 'ﺍﻮﻛﺭﺎﻨﻳ', 'under_folder' => 'في المجلد', diff --git a/languages/bg_BG/lang.inc b/languages/bg_BG/lang.inc index ad5c97ade..69c768c43 100644 --- a/languages/bg_BG/lang.inc +++ b/languages/bg_BG/lang.inc @@ -204,6 +204,7 @@ $text = array( 'choose_workflow' => 'Изберете workflow', 'choose_workflow_action' => 'Изберете workflow действие', 'choose_workflow_state' => 'Изберете състояние на workflow', +'class_name' => '', 'clear_clipboard' => '', 'clear_password' => '', 'clipboard' => '', @@ -246,6 +247,7 @@ $text = array( 'databasesearch' => 'Търсене по БД', 'date' => 'Дата', 'days' => 'дни', +'debug' => '', 'december' => 'Декември', 'default_access' => 'достъп по-подразбиране', 'default_keywords' => 'достъпни ключови думи', @@ -419,6 +421,7 @@ $text = array( 'guest_login_disabled' => 'Входът като гост изключен', 'help' => 'Помощ', 'home_folder' => '', +'hook_name' => '', 'hourly' => 'Ежечасно', 'hours' => 'часа', 'hr_HR' => '', @@ -426,6 +429,8 @@ $text = array( 'hu_HU' => '', 'id' => 'ID', 'identical_version' => 'Новата версия е идентична с текущата.', +'import' => '', +'importfs' => '', 'include_content' => '', 'include_documents' => 'Включи документи', 'include_subdirectories' => 'Включи под-папки', @@ -497,6 +502,7 @@ $text = array( 'linked_documents' => 'Свързани документи', 'linked_files' => 'Приложения', 'link_alt_updatedocument' => 'Ако искате да качите файлове над текущия лимит, използвайте друг начин.', +'list_hooks' => '', 'local_file' => 'Локален файл', 'locked_by' => 'Блокиран', 'lock_document' => 'Блокирай', @@ -1192,6 +1198,7 @@ $text = array( 'tr_TR' => '', 'tuesday' => 'вторник', 'tuesday_abbr' => '', +'type_of_hook' => '', 'type_to_search' => 'Тип за търсене', 'uk_UA' => '', 'under_folder' => 'В папка', diff --git a/languages/ca_ES/lang.inc b/languages/ca_ES/lang.inc index 4fc0358fb..2fc27cfec 100644 --- a/languages/ca_ES/lang.inc +++ b/languages/ca_ES/lang.inc @@ -209,6 +209,7 @@ URL: [url]', 'choose_workflow' => '', 'choose_workflow_action' => '', 'choose_workflow_state' => '', +'class_name' => '', 'clear_clipboard' => '', 'clear_password' => '', 'clipboard' => '', @@ -251,6 +252,7 @@ URL: [url]', 'databasesearch' => 'Database search', 'date' => 'Data', 'days' => '', +'debug' => '', 'december' => 'Desembre', 'default_access' => 'Mode d\'accés predeterminat', 'default_keywords' => '', @@ -424,6 +426,7 @@ URL: [url]', 'guest_login_disabled' => 'El compte d\'invitat està deshabilitat.', 'help' => 'Ajuda', 'home_folder' => '', +'hook_name' => '', 'hourly' => 'Hourly', 'hours' => '', 'hr_HR' => '', @@ -431,6 +434,8 @@ URL: [url]', 'hu_HU' => '', 'id' => 'ID', 'identical_version' => '', +'import' => '', +'importfs' => '', 'include_content' => '', 'include_documents' => 'Incloure documents', 'include_subdirectories' => 'Incloure subdirectoris', @@ -502,6 +507,7 @@ URL: [url]', 'linked_documents' => 'Documents relacionats', 'linked_files' => 'Adjunts', 'link_alt_updatedocument' => '', +'list_hooks' => '', 'local_file' => 'Arxiu local', 'locked_by' => 'Locked by', 'lock_document' => 'Bloquejar', @@ -1197,6 +1203,7 @@ URL: [url]', 'tr_TR' => '', 'tuesday' => 'Dimarts', 'tuesday_abbr' => '', +'type_of_hook' => '', 'type_to_search' => '', 'uk_UA' => '', 'under_folder' => 'A carpeta', diff --git a/languages/cs_CZ/lang.inc b/languages/cs_CZ/lang.inc index aba3f06f8..3cfc6c030 100644 --- a/languages/cs_CZ/lang.inc +++ b/languages/cs_CZ/lang.inc @@ -226,6 +226,7 @@ URL: [url]', 'choose_workflow' => 'Zvolte pracovní postup', 'choose_workflow_action' => 'Zvolte akci pracovního postupu', 'choose_workflow_state' => 'Zvolit akci pracovního postupu', +'class_name' => '', 'clear_clipboard' => 'Vyčistit schránku', 'clear_password' => '', 'clipboard' => 'Schránka', @@ -268,6 +269,7 @@ URL: [url]', 'databasesearch' => 'Vyhledání v databázi', 'date' => 'Datum', 'days' => 'dny', +'debug' => '', 'december' => 'Prosinec', 'default_access' => 'Standardní režim přístupu', 'default_keywords' => 'Dostupná klíčová slova', @@ -495,6 +497,7 @@ URL: [url]', 'guest_login_disabled' => 'Přihlášení jako host je vypnuté.', 'help' => 'Pomoc', 'home_folder' => 'Domácí složka', +'hook_name' => '', 'hourly' => 'Hodinově', 'hours' => 'hodiny', 'hr_HR' => 'Chorvatština', @@ -502,6 +505,8 @@ URL: [url]', 'hu_HU' => 'Maďarština', 'id' => 'ID', 'identical_version' => 'Nová verze je identická s verzí současnou', +'import' => '', +'importfs' => '', 'include_content' => '', 'include_documents' => 'Včetně dokumentů', 'include_subdirectories' => 'Včetně podadresářů', @@ -573,6 +578,7 @@ URL: [url]', 'linked_documents' => 'Související dokumenty', 'linked_files' => 'Přílohy', 'link_alt_updatedocument' => 'Hodláte-li nahrát soubory větší než je maximální velikost pro nahrávání, použijte prosím alternativní stránku.', +'list_hooks' => '', 'local_file' => 'Lokální soubor', 'locked_by' => 'Zamčeno kým', 'lock_document' => 'Zamknout', @@ -1345,6 +1351,7 @@ URL: [url]', 'tr_TR' => 'Turecky', 'tuesday' => 'Úterý', 'tuesday_abbr' => 'Út', +'type_of_hook' => '', 'type_to_search' => 'Zadejte hledaný výraz', 'uk_UA' => 'Ukrajnština', 'under_folder' => 'Ve složce', diff --git a/languages/de_DE/lang.inc b/languages/de_DE/lang.inc index 8533cbec4..b3e8db79b 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 (2220), dgrutsch (21) +// Translators: Admin (2227), dgrutsch (21) $text = array( 'accept' => 'Übernehmen', @@ -231,6 +231,7 @@ URL: [url]', 'choose_workflow' => 'Workflow wählen', 'choose_workflow_action' => 'Workflow-Aktion wählen', 'choose_workflow_state' => 'Workflow-Status wählen', +'class_name' => 'Klassenname', 'clear_clipboard' => 'Zwischenablage leeren', 'clear_password' => 'Passwort löschen', 'clipboard' => 'Zwischenablage', @@ -273,6 +274,7 @@ URL: [url]', 'databasesearch' => 'Datenbanksuche', 'date' => 'Datum', 'days' => 'Tage', +'debug' => 'Debug', 'december' => 'Dezember', 'default_access' => 'Standardberechtigung', 'default_keywords' => 'Verfügbare Schlüsselworte', @@ -500,6 +502,7 @@ URL: [url]', 'guest_login_disabled' => 'Anmeldung als Gast ist gesperrt.', 'help' => 'Hilfe', 'home_folder' => 'Heimatordner', +'hook_name' => 'Name des Aufrufs', 'hourly' => 'stündlich', 'hours' => 'Stunden', 'hr_HR' => 'Kroatisch', @@ -507,6 +510,8 @@ URL: [url]', 'hu_HU' => 'Ungarisch', 'id' => 'ID', 'identical_version' => 'Neue Version ist identisch zu aktueller Version.', +'import' => 'Importiere', +'importfs' => 'Importiere aus Dateisystem', 'include_content' => 'Inhalte mit exportieren', 'include_documents' => 'Dokumente miteinbeziehen', 'include_subdirectories' => 'Unterverzeichnisse miteinbeziehen', @@ -578,6 +583,7 @@ URL: [url]', 'linked_documents' => 'verknüpfte Dokumente', 'linked_files' => 'Anhänge', 'link_alt_updatedocument' => 'Wenn Sie ein Dokument hochladen möchten, das größer als die maximale Dateigröße ist, dann benutzen Sie bitte die alternative Upload-Seite.', +'list_hooks' => 'Liste interne Aufrufe', 'local_file' => 'Lokale Datei', 'locked_by' => 'Gesperrt von', 'lock_document' => 'Sperren', @@ -1382,6 +1388,7 @@ URL: [url]', 'tr_TR' => 'Türkisch', 'tuesday' => 'Dienstag', 'tuesday_abbr' => 'Di', +'type_of_hook' => 'Typ', 'type_to_search' => 'Hier tippen zum Suchen', 'uk_UA' => 'Ukrainisch', 'under_folder' => 'In Ordner', diff --git a/languages/en_GB/lang.inc b/languages/en_GB/lang.inc index 84ee3ee12..01a63f74e 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 (1366), dgrutsch (7), netixw (14) +// Translators: Admin (1373), dgrutsch (7), netixw (14) $text = array( 'accept' => 'Accept', @@ -231,6 +231,7 @@ URL: [url]', 'choose_workflow' => 'Choose workflow', 'choose_workflow_action' => 'Choose workflow action', 'choose_workflow_state' => 'Choose workflow state', +'class_name' => 'Name of class', 'clear_clipboard' => 'Clear clipboard', 'clear_password' => 'Clear password', 'clipboard' => 'Clipboard', @@ -273,6 +274,7 @@ URL: [url]', 'databasesearch' => 'Database search', 'date' => 'Date', 'days' => 'days', +'debug' => 'Debug', 'december' => 'December', 'default_access' => 'Default Access Mode', 'default_keywords' => 'Available keywords', @@ -500,6 +502,7 @@ URL: [url]', 'guest_login_disabled' => 'Guest login is disabled.', 'help' => 'Help', 'home_folder' => 'Home folder', +'hook_name' => 'Name of hook', 'hourly' => 'Hourly', 'hours' => 'hours', 'hr_HR' => 'Croatian', @@ -507,6 +510,8 @@ URL: [url]', 'hu_HU' => 'Hungarian', 'id' => 'ID', 'identical_version' => 'New version is identical to current version.', +'import' => 'Import', +'importfs' => 'Import from Filesystem', 'include_content' => 'Include content', 'include_documents' => 'Include documents', 'include_subdirectories' => 'Include subdirectories', @@ -578,6 +583,7 @@ URL: [url]', 'linked_documents' => 'Related Documents', 'linked_files' => 'Attachments', 'link_alt_updatedocument' => 'If you would like to upload files bigger than the current maximum upload size, please use the alternative upload page.', +'list_hooks' => 'List hooks', 'local_file' => 'Local file', 'locked_by' => 'Locked by', 'lock_document' => 'Lock', @@ -1383,6 +1389,7 @@ URL: [url]', 'tr_TR' => 'Turkish', 'tuesday' => 'Tuesday', 'tuesday_abbr' => 'Tu', +'type_of_hook' => 'Type', 'type_to_search' => 'Type to search', 'uk_UA' => 'Ukrainian', 'under_folder' => 'In Folder', diff --git a/languages/es_ES/lang.inc b/languages/es_ES/lang.inc index 39382aca9..bb7ea56fe 100644 --- a/languages/es_ES/lang.inc +++ b/languages/es_ES/lang.inc @@ -226,6 +226,7 @@ URL: [url]', 'choose_workflow' => 'Seleccione flujo de trabajo', 'choose_workflow_action' => 'Seleccione acción del flujo de trabajo', 'choose_workflow_state' => 'Seleccione estado del flujo de trabajo', +'class_name' => '', 'clear_clipboard' => 'Limpiar portapapeles', 'clear_password' => '', 'clipboard' => 'Portapapeles', @@ -268,6 +269,7 @@ URL: [url]', 'databasesearch' => 'Búsqueda en base de datos', 'date' => 'Fecha', 'days' => 'días', +'debug' => '', 'december' => 'Diciembre', 'default_access' => 'Modo de acceso por defecto', 'default_keywords' => 'Palabras clave disponibles', @@ -495,6 +497,7 @@ URL: [url]', 'guest_login_disabled' => 'La cuenta de invitado está deshabilitada.', 'help' => 'Ayuda', 'home_folder' => '', +'hook_name' => '', 'hourly' => 'Horaria', 'hours' => 'horas', 'hr_HR' => 'Croata', @@ -502,6 +505,8 @@ URL: [url]', 'hu_HU' => 'Hungaro', 'id' => 'ID', 'identical_version' => 'La nueva versión es idéntica a la actual.', +'import' => '', +'importfs' => '', 'include_content' => '', 'include_documents' => 'Incluir documentos', 'include_subdirectories' => 'Incluir subcarpetas', @@ -573,6 +578,7 @@ URL: [url]', 'linked_documents' => 'Documentos relacionados', 'linked_files' => 'Adjuntos', 'link_alt_updatedocument' => 'Si desea subir archivos mayores que el tamaño máximo actualmente permitido, por favor, utilice la página de subida alternativa.', +'list_hooks' => '', 'local_file' => 'Fichero local', 'locked_by' => 'Bloqueado por', 'lock_document' => 'Bloquear', @@ -1351,6 +1357,7 @@ URL: [url]', 'tr_TR' => 'Turco', 'tuesday' => 'Martes', 'tuesday_abbr' => 'M', +'type_of_hook' => '', 'type_to_search' => 'Tipo de búsqueda', 'uk_UA' => 'Ucraniano', 'under_folder' => 'En carpeta', diff --git a/languages/fr_FR/lang.inc b/languages/fr_FR/lang.inc index f9560aaed..3829d07ce 100644 --- a/languages/fr_FR/lang.inc +++ b/languages/fr_FR/lang.inc @@ -226,6 +226,7 @@ URL: [url]', 'choose_workflow' => 'Choisir un workflow', 'choose_workflow_action' => 'Choose une action de workflow', 'choose_workflow_state' => 'Choisir un état de workflow', +'class_name' => '', 'clear_clipboard' => 'Vider le presse-papier', 'clear_password' => '', 'clipboard' => 'Presse-papier', @@ -268,6 +269,7 @@ URL: [url]', 'databasesearch' => 'Recherche dans la base de données', 'date' => 'Date', 'days' => 'jours', +'debug' => '', 'december' => 'Décembre', 'default_access' => 'Droits d\'accès par défaut', 'default_keywords' => 'Mots-clés disponibles', @@ -495,6 +497,7 @@ URL: [url]', 'guest_login_disabled' => 'Connexion d\'invité désactivée.', 'help' => 'Aide', 'home_folder' => '', +'hook_name' => '', 'hourly' => 'Une fois par heure', 'hours' => 'heures', 'hr_HR' => 'Croate', @@ -502,6 +505,8 @@ URL: [url]', 'hu_HU' => 'Hongrois', 'id' => 'ID', 'identical_version' => 'Nouvelle version identique à l\'actuelle.', +'import' => '', +'importfs' => '', 'include_content' => '', 'include_documents' => 'Inclure les documents', 'include_subdirectories' => 'Inclure les sous-dossiers', @@ -573,6 +578,7 @@ URL: [url]', 'linked_documents' => 'Documents liés', 'linked_files' => 'Fichiers attachés', 'link_alt_updatedocument' => 'Pour déposer des fichiers de taille supérieure, utilisez la page d\'ajout multiple.', +'list_hooks' => '', 'local_file' => 'Fichier local', 'locked_by' => 'Verrouillé par', 'lock_document' => 'Verrouiller', @@ -1318,6 +1324,7 @@ URL: [url]', 'tr_TR' => 'Turc', 'tuesday' => 'Mardi', 'tuesday_abbr' => 'Mar.', +'type_of_hook' => '', 'type_to_search' => 'Effectuer une recherche', 'uk_UA' => 'Ukrénien', 'under_folder' => 'Dans le dossier', diff --git a/languages/hr_HR/lang.inc b/languages/hr_HR/lang.inc index cc6c40edd..13029ad4a 100644 --- a/languages/hr_HR/lang.inc +++ b/languages/hr_HR/lang.inc @@ -231,6 +231,7 @@ Internet poveznica: [url]', 'choose_workflow' => 'Odaberite tok rada', 'choose_workflow_action' => 'Odaberite radnju toka rada', 'choose_workflow_state' => 'Odaberite status toka rada', +'class_name' => '', 'clear_clipboard' => 'Očistite međuspremnik', 'clear_password' => '', 'clipboard' => 'Međuspremnik', @@ -273,6 +274,7 @@ Internet poveznica: [url]', 'databasesearch' => 'Pretraživanje baze podataka', 'date' => 'Datum', 'days' => 'dani', +'debug' => '', 'december' => 'Prosinac', 'default_access' => 'Zadani način pristupa', 'default_keywords' => 'Dostupne ključne riječi', @@ -500,6 +502,7 @@ Internet poveznica: [url]', 'guest_login_disabled' => 'Prijava "kao gost" je onemogućena.', 'help' => 'Pomoć', 'home_folder' => 'Početna mapa', +'hook_name' => '', 'hourly' => 'Po satima', 'hours' => 'sati', 'hr_HR' => 'Hrvatski', @@ -507,6 +510,8 @@ Internet poveznica: [url]', 'hu_HU' => 'Mađarski', 'id' => 'ID', 'identical_version' => 'Nova verzija je identična trenutnoj verziji.', +'import' => '', +'importfs' => '', 'include_content' => 'Uključi sadržaj', 'include_documents' => 'Sadrži dokumente', 'include_subdirectories' => 'Sadrži podmape', @@ -578,6 +583,7 @@ Internet poveznica: [url]', 'linked_documents' => 'Vezani dokumenti', 'linked_files' => 'Prilozi', 'link_alt_updatedocument' => 'Ako želite prenijeti datoteke veće od trenutne maksimalne veličine prijenosa, molimo koristite alternativu upload page.', +'list_hooks' => '', 'local_file' => 'Lokalna datoteka', 'locked_by' => 'Zaključao', 'lock_document' => 'Zaključaj', @@ -1372,6 +1378,7 @@ Internet poveznica: [url]', 'tr_TR' => 'Turski', 'tuesday' => 'Utorak', 'tuesday_abbr' => 'Ut', +'type_of_hook' => '', 'type_to_search' => 'Unesi za pretragu', 'uk_UA' => 'Ukrajinski', 'under_folder' => 'U mapi', diff --git a/languages/hu_HU/lang.inc b/languages/hu_HU/lang.inc index c92da8883..b30c94950 100644 --- a/languages/hu_HU/lang.inc +++ b/languages/hu_HU/lang.inc @@ -226,6 +226,7 @@ URL: [url]', 'choose_workflow' => 'Válasszon munkafolyamatot', 'choose_workflow_action' => 'Válasszon munkafolyamat műveletet', 'choose_workflow_state' => 'Válasszon munkafolyamat állapotot', +'class_name' => '', 'clear_clipboard' => 'Vágólap törlése', 'clear_password' => '', 'clipboard' => 'Vágólap', @@ -268,6 +269,7 @@ URL: [url]', 'databasesearch' => 'Adatbázis keresés', 'date' => 'Dátum', 'days' => 'nap', +'debug' => '', 'december' => 'December', 'default_access' => 'Alapbeállítás szerinti jogosultság', 'default_keywords' => 'Rendelkezésre álló kulcsszavak', @@ -495,6 +497,7 @@ URL: [url]', 'guest_login_disabled' => 'Vendég bejelentkezés letiltva.', 'help' => 'Segítség', 'home_folder' => '', +'hook_name' => '', 'hourly' => 'Óra', 'hours' => 'óra', 'hr_HR' => 'Horvát', @@ -502,6 +505,8 @@ URL: [url]', 'hu_HU' => 'Magyar', 'id' => 'ID', 'identical_version' => 'Az új verzió megegyezik az eredetivel.', +'import' => '', +'importfs' => '', 'include_content' => '', 'include_documents' => 'Tartalmazó dokumentumok', 'include_subdirectories' => 'Tartalmazó alkönyvtárak', @@ -573,6 +578,7 @@ URL: [url]', 'linked_documents' => 'Kapcsolódó dokumentumok', 'linked_files' => 'Mellékletek', 'link_alt_updatedocument' => 'Ha a jelenlegi maximális feltöltési méretnél nagyobb állományokat szeretne feltölteni, akkor használja az alternatív feltöltő oldalt.', +'list_hooks' => '', 'local_file' => 'Helyi állomány', 'locked_by' => 'Zárolta', 'lock_document' => 'Zárol', @@ -1350,6 +1356,7 @@ URL: [url]', 'tr_TR' => 'Török', 'tuesday' => 'Kedd', 'tuesday_abbr' => 'Ke', +'type_of_hook' => '', 'type_to_search' => 'Adja meg a keresendő kifejezést', 'uk_UA' => 'Ukrán', 'under_folder' => 'Mappában', diff --git a/languages/it_IT/lang.inc b/languages/it_IT/lang.inc index 497a48f66..65468eea8 100644 --- a/languages/it_IT/lang.inc +++ b/languages/it_IT/lang.inc @@ -232,6 +232,7 @@ URL: [url]', 'choose_workflow' => 'Seleziona il flusso di lavoro', 'choose_workflow_action' => 'Seleziona l\'azione del flusso di lavoro', 'choose_workflow_state' => 'Seleziona lo stato del flusso di lavoro', +'class_name' => '', 'clear_clipboard' => 'Cancella appunti', 'clear_password' => '', 'clipboard' => 'Appunti', @@ -274,6 +275,7 @@ URL: [url]', 'databasesearch' => 'Ricerca nel Database', 'date' => 'Data', 'days' => 'Giorni', +'debug' => '', 'december' => 'Dicembre', 'default_access' => 'Permesso di default', 'default_keywords' => 'Parole-chiave disponibili', @@ -501,6 +503,7 @@ URL: [url]', 'guest_login_disabled' => 'Il login come Ospite è disabilitato.', 'help' => 'Aiuto', 'home_folder' => 'Cartella Utente', +'hook_name' => '', 'hourly' => 'Ogni ora', 'hours' => 'ore', 'hr_HR' => 'Croato', @@ -508,6 +511,8 @@ URL: [url]', 'hu_HU' => 'Ungherese', 'id' => 'ID', 'identical_version' => 'La nuova versione è identica a quella attuale.', +'import' => '', +'importfs' => '', 'include_content' => 'Includi contenuto', 'include_documents' => 'Includi documenti', 'include_subdirectories' => 'Includi sottocartelle', @@ -579,6 +584,7 @@ URL: [url]', 'linked_documents' => 'Documenti collegati', 'linked_files' => 'Allegati', 'link_alt_updatedocument' => 'Se vuoi caricare file più grandi del limite massimo attuale, usa la pagina alternativa di upload.', +'list_hooks' => '', 'local_file' => 'File locale', 'locked_by' => 'Bloccato da', 'lock_document' => 'Blocca', @@ -1374,6 +1380,7 @@ URL: [url]', 'tr_TR' => 'Turco', 'tuesday' => 'Martedì', 'tuesday_abbr' => 'Mar', +'type_of_hook' => '', 'type_to_search' => 'Digitare per cercare', 'uk_UA' => 'Ucraino', 'under_folder' => 'Nella cartella', diff --git a/languages/ko_KR/lang.inc b/languages/ko_KR/lang.inc index c738c17e8..66363097e 100644 --- a/languages/ko_KR/lang.inc +++ b/languages/ko_KR/lang.inc @@ -233,6 +233,7 @@ URL: [url]', 'choose_workflow' => '워크플로우 선택', 'choose_workflow_action' => '워크플로우 작업 선택', 'choose_workflow_state' => '워크플로우 상태 선택', +'class_name' => '', 'clear_clipboard' => '클립 보드 제거', 'clear_password' => '', 'clipboard' => '클립보드', @@ -275,6 +276,7 @@ URL: [url]', 'databasesearch' => '데이터베이스 검색', 'date' => '날짜', 'days' => '일', +'debug' => '', 'december' => '12월', 'default_access' => '기본 접근 모드', 'default_keywords' => '사용 가능한 키워드', @@ -500,6 +502,7 @@ URL: [url]', 'guest_login_disabled' => '고객 로그인을 사용할 수 없습니다.', 'help' => '도움말', 'home_folder' => '홈 폴더', +'hook_name' => '', 'hourly' => '시간별', 'hours' => '시간', 'hr_HR' => '크로아티아어', @@ -507,6 +510,8 @@ URL: [url]', 'hu_HU' => '헝가리어', 'id' => 'ID', 'identical_version' => '새 버전은 최신 버전으로 동일하다.', +'import' => '', +'importfs' => '', 'include_content' => '내용을 포함', 'include_documents' => '문서 포함', 'include_subdirectories' => '서브 디렉토리를 포함', @@ -578,6 +583,7 @@ URL: [url]', 'linked_documents' => '관련 문서', 'linked_files' => '첨부 파일', 'link_alt_updatedocument' => '최대 업로드 크기보다 큰 파일을 업로드하려는 경우, 대체 업로드 페이지를 upload page 사용하십시오.', +'list_hooks' => '', 'local_file' => '로컬 파일', 'locked_by' => '잠금', 'lock_document' => '잠금', @@ -1365,6 +1371,7 @@ URL : [url]', 'tr_TR' => '터키어', 'tuesday' => '화요일', 'tuesday_abbr' => '화', +'type_of_hook' => '', 'type_to_search' => '유형 검색', 'uk_UA' => '우크라이나어', 'under_folder' => '폴더', diff --git a/languages/nl_NL/lang.inc b/languages/nl_NL/lang.inc index f1311133e..20263bdd8 100644 --- a/languages/nl_NL/lang.inc +++ b/languages/nl_NL/lang.inc @@ -224,6 +224,7 @@ URL: [url]', 'choose_workflow' => 'Kies workflow', 'choose_workflow_action' => 'Kies workflow actie', 'choose_workflow_state' => 'kiest workflowstatus', +'class_name' => '', 'clear_clipboard' => 'Vrijgeven klembord', 'clear_password' => '', 'clipboard' => 'Klembord', @@ -266,6 +267,7 @@ URL: [url]', 'databasesearch' => 'Zoek in Database', 'date' => 'Datum', 'days' => 'Dagen', +'debug' => '', 'december' => 'december', 'default_access' => 'Standaard toegang', 'default_keywords' => 'Beschikbare sleutelwoorden', @@ -493,6 +495,7 @@ URL: [url]', 'guest_login_disabled' => 'Gast login is uitgeschakeld.', 'help' => 'Help', 'home_folder' => 'Thuismap', +'hook_name' => '', 'hourly' => 'Elk uur', 'hours' => 'uren', 'hr_HR' => 'Kroatisch', @@ -500,6 +503,8 @@ URL: [url]', 'hu_HU' => 'Hongaars', 'id' => 'ID', 'identical_version' => 'Nieuwe versie is identiek aan de huidige versie', +'import' => '', +'importfs' => '', 'include_content' => 'inclusief inhoud', 'include_documents' => 'Inclusief documenten', 'include_subdirectories' => 'Inclusief submappen', @@ -571,6 +576,7 @@ URL: [url]', 'linked_documents' => 'Gerelateerde Documenten', 'linked_files' => 'Bijlagen', 'link_alt_updatedocument' => 'Als u bestanden wilt uploaden groter dan het huidige maximum, gebruik aub de alternatieve upload pagina.', +'list_hooks' => '', 'local_file' => 'Lokaal bestand', 'locked_by' => 'In gebruik door', 'lock_document' => 'Blokkeer', @@ -1378,6 +1384,7 @@ URL: [url]', 'tr_TR' => 'Turks', 'tuesday' => 'dinsdag', 'tuesday_abbr' => 'di', +'type_of_hook' => '', 'type_to_search' => 'zoeken naar', 'uk_UA' => 'Oekraïne', 'under_folder' => 'In map', diff --git a/languages/pl_PL/lang.inc b/languages/pl_PL/lang.inc index 989102470..b0c2f1971 100644 --- a/languages/pl_PL/lang.inc +++ b/languages/pl_PL/lang.inc @@ -219,6 +219,7 @@ URL: [url]', 'choose_workflow' => 'Wybierz proces', 'choose_workflow_action' => 'Wybierz działanie procesu', 'choose_workflow_state' => 'Wybierz stan obiegu', +'class_name' => '', 'clear_clipboard' => 'Oczyść schowek', 'clear_password' => '', 'clipboard' => 'Schowek', @@ -261,6 +262,7 @@ URL: [url]', 'databasesearch' => 'Przeszukiwanie bazy danych', 'date' => 'Data', 'days' => 'dni', +'debug' => '', 'december' => 'Grudzień', 'default_access' => 'Domyślny tryb dostępu', 'default_keywords' => 'Dostępne słowa kluczowe', @@ -488,6 +490,7 @@ URL: [url]', 'guest_login_disabled' => 'Logowanie dla gościa jest wyłączone.', 'help' => 'Pomoc', 'home_folder' => '', +'hook_name' => '', 'hourly' => 'Co godzinę', 'hours' => 'godzin', 'hr_HR' => 'Chorwacki', @@ -495,6 +498,8 @@ URL: [url]', 'hu_HU' => 'Węgierski', 'id' => 'ID', 'identical_version' => 'Nowa wersja jest identyczna z obecną', +'import' => '', +'importfs' => '', 'include_content' => '', 'include_documents' => 'Uwzględnij dokumenty', 'include_subdirectories' => 'Uwzględnij podkatalogi', @@ -566,6 +571,7 @@ URL: [url]', 'linked_documents' => 'Powiązane dokumenty', 'linked_files' => 'Załączniki', 'link_alt_updatedocument' => 'Jeśli chcesz wczytać pliki większe niż bieżące maksimum, użyj alternatywnej strony wczytywania.', +'list_hooks' => '', 'local_file' => 'Lokalny plik', 'locked_by' => 'Zablokowane przez', 'lock_document' => 'Zablokuj', @@ -1330,6 +1336,7 @@ URL: [url]', 'tr_TR' => 'Turecki', 'tuesday' => 'Wtorek', 'tuesday_abbr' => 'Wt', +'type_of_hook' => '', 'type_to_search' => 'Wpisz wyszukiwane', 'uk_UA' => 'Ukrainski', 'under_folder' => 'W folderze', diff --git a/languages/pt_BR/lang.inc b/languages/pt_BR/lang.inc index 0ad74508a..323c73d6a 100644 --- a/languages/pt_BR/lang.inc +++ b/languages/pt_BR/lang.inc @@ -226,6 +226,7 @@ URL: [url]', 'choose_workflow' => 'Escolha de fluxo de trabalho', 'choose_workflow_action' => 'Escolha a ação de fluxo de trabalho', 'choose_workflow_state' => 'Escolha um estado de fluxo de trabalho', +'class_name' => '', 'clear_clipboard' => 'Limpar área de transferência', 'clear_password' => '', 'clipboard' => 'Área de transferência', @@ -268,6 +269,7 @@ URL: [url]', 'databasesearch' => 'Pesquisar Base de dados', 'date' => 'Data', 'days' => 'dias', +'debug' => '', 'december' => 'December', 'default_access' => 'Padrão de acesso', 'default_keywords' => 'Palavras-chave disponíveis', @@ -494,6 +496,7 @@ URL: [url]', 'guest_login_disabled' => 'Guest login is disabled.', 'help' => 'Ajuda', 'home_folder' => '', +'hook_name' => '', 'hourly' => 'De hora em hora', 'hours' => 'horas', 'hr_HR' => 'Croata', @@ -501,6 +504,8 @@ URL: [url]', 'hu_HU' => 'Húngaro', 'id' => 'ID', 'identical_version' => 'Nova versão é idêntica à versão atual.', +'import' => '', +'importfs' => '', 'include_content' => '', 'include_documents' => 'Include documents', 'include_subdirectories' => 'Include subdirectories', @@ -572,6 +577,7 @@ URL: [url]', 'linked_documents' => 'Documentos relacionados', 'linked_files' => 'Arquivos anexados', 'link_alt_updatedocument' => 'Se você gostaria de fazer envio de arquivos maiores que o tamanho permitido, por favor use a página alternativa de envio.', +'list_hooks' => '', 'local_file' => 'Arquivo local', 'locked_by' => 'Bloqueado por', 'lock_document' => 'Travar', @@ -1348,6 +1354,7 @@ URL: [url]', 'tr_TR' => 'Turco', 'tuesday' => 'Tuesday', 'tuesday_abbr' => 'Tu', +'type_of_hook' => '', 'type_to_search' => 'Tipo de pesquisa', 'uk_UA' => 'Ucraniano', 'under_folder' => 'Na pasta', diff --git a/languages/ro_RO/lang.inc b/languages/ro_RO/lang.inc index e2876b183..9d9455d17 100644 --- a/languages/ro_RO/lang.inc +++ b/languages/ro_RO/lang.inc @@ -231,6 +231,7 @@ URL: [url]', 'choose_workflow' => 'Alege workflow', 'choose_workflow_action' => 'Alege acțiune workflow', 'choose_workflow_state' => 'Alege stare workflow', +'class_name' => '', 'clear_clipboard' => 'Goleste clipboard', 'clear_password' => '', 'clipboard' => 'Clipboard', @@ -273,6 +274,7 @@ URL: [url]', 'databasesearch' => 'Căutare baza de date', 'date' => 'Data', 'days' => 'zile', +'debug' => '', 'december' => 'Decembrie', 'default_access' => 'Modul de acces implicit', 'default_keywords' => 'Cuvinte cheie disponibile', @@ -500,6 +502,7 @@ URL: [url]', 'guest_login_disabled' => 'Logarea ca oaspete este dezactivată.', 'help' => 'Ajutor', 'home_folder' => 'Folder Home', +'hook_name' => '', 'hourly' => 'Orare', 'hours' => 'ore', 'hr_HR' => 'Croată', @@ -507,6 +510,8 @@ URL: [url]', 'hu_HU' => 'Ungureste', 'id' => 'ID', 'identical_version' => 'Noua versiune este identică cu versiunea curentă.', +'import' => '', +'importfs' => '', 'include_content' => '', 'include_documents' => 'Include documente', 'include_subdirectories' => 'Include subfoldere', @@ -578,6 +583,7 @@ URL: [url]', 'linked_documents' => 'Documente relationate', 'linked_files' => 'Atașamente', 'link_alt_updatedocument' => 'Dacă doriți să încărcați fișiere mai mari decât dimensiunea maximă curentă de încărcare, vă rugăm să folosiți alternativa pagină de încărcare.', +'list_hooks' => '', 'local_file' => 'Fișier local', 'locked_by' => 'Blocat de', 'lock_document' => 'Blocare', @@ -1373,6 +1379,7 @@ URL: [url]', 'tr_TR' => 'Turcă', 'tuesday' => 'Marți', 'tuesday_abbr' => 'Ma', +'type_of_hook' => '', 'type_to_search' => 'Tastați pentru a căuta', 'uk_UA' => 'Ucraineană', 'under_folder' => 'In Folder', diff --git a/languages/ru_RU/lang.inc b/languages/ru_RU/lang.inc index 7b1fb97c5..512561d70 100644 --- a/languages/ru_RU/lang.inc +++ b/languages/ru_RU/lang.inc @@ -231,6 +231,7 @@ URL: [url]', 'choose_workflow' => 'Выберите процесс', 'choose_workflow_action' => 'Выберите действие процесса', 'choose_workflow_state' => 'Выберите статус процесса', +'class_name' => '', 'clear_clipboard' => 'Очистить буфер обмена', 'clear_password' => '', 'clipboard' => 'Буфер обмена', @@ -273,6 +274,7 @@ URL: [url]', 'databasesearch' => 'Поиск по БД', 'date' => 'Дата', 'days' => 'дни', +'debug' => '', 'december' => 'Декабрь', 'default_access' => 'Доступ по умолчанию', 'default_keywords' => 'Доступные метки', @@ -500,6 +502,7 @@ URL: [url]', 'guest_login_disabled' => 'Гостевой вход отключён', 'help' => 'Помощь', 'home_folder' => 'Домашний каталог', +'hook_name' => '', 'hourly' => 'Ежечасно', 'hours' => 'часы', 'hr_HR' => 'Хорватский', @@ -507,6 +510,8 @@ URL: [url]', 'hu_HU' => 'Hungarian', 'id' => 'Идентификатор', 'identical_version' => 'Новая версия идентична текущей.', +'import' => '', +'importfs' => '', 'include_content' => 'Включая содержимое', 'include_documents' => 'Включая документы', 'include_subdirectories' => 'Включая подкаталоги', @@ -578,6 +583,7 @@ URL: [url]', 'linked_documents' => 'Связанные документы', 'linked_files' => 'Приложения', 'link_alt_updatedocument' => 'Для загрузки файлов, превышающих ограничение размера, используйте другой способ.', +'list_hooks' => '', 'local_file' => 'Локальный файл', 'locked_by' => 'Заблокирован', 'lock_document' => 'Заблокировать', @@ -1380,6 +1386,7 @@ URL: [url]', 'tr_TR' => 'Турецкий', 'tuesday' => 'Вторник', 'tuesday_abbr' => 'Вт', +'type_of_hook' => '', 'type_to_search' => 'Введите запрос', 'uk_UA' => 'Украинский', 'under_folder' => 'В каталоге', diff --git a/languages/sk_SK/lang.inc b/languages/sk_SK/lang.inc index 3c0321961..d09ebbc8a 100644 --- a/languages/sk_SK/lang.inc +++ b/languages/sk_SK/lang.inc @@ -208,6 +208,7 @@ URL: [url]', 'choose_workflow' => '', 'choose_workflow_action' => '', 'choose_workflow_state' => '', +'class_name' => '', 'clear_clipboard' => '', 'clear_password' => '', 'clipboard' => 'Schránka', @@ -250,6 +251,7 @@ URL: [url]', 'databasesearch' => '', 'date' => 'Dátum', 'days' => '', +'debug' => '', 'december' => 'December', 'default_access' => 'Štandardný režim prístupu', 'default_keywords' => 'Dostupné kľúčové slová', @@ -423,6 +425,7 @@ URL: [url]', 'guest_login_disabled' => 'Prihlásenie ako hosť je vypnuté.', 'help' => 'Pomoc', 'home_folder' => '', +'hook_name' => '', 'hourly' => '', 'hours' => '', 'hr_HR' => 'Chorváčtina', @@ -430,6 +433,8 @@ URL: [url]', 'hu_HU' => 'Maďarčina', 'id' => 'ID', 'identical_version' => '', +'import' => '', +'importfs' => '', 'include_content' => '', 'include_documents' => 'Vrátane súborov', 'include_subdirectories' => 'Vrátane podzložiek', @@ -501,6 +506,7 @@ URL: [url]', 'linked_documents' => 'Súvisiace dokumenty', 'linked_files' => 'Prílohy', 'link_alt_updatedocument' => '', +'list_hooks' => '', 'local_file' => 'Lokálny súbor', 'locked_by' => 'Uzamkol', 'lock_document' => 'Zamknúť', @@ -1196,6 +1202,7 @@ URL: [url]', 'tr_TR' => 'Turecky', 'tuesday' => 'Utorok', 'tuesday_abbr' => '', +'type_of_hook' => '', 'type_to_search' => 'Vyhľadať typ', 'uk_UA' => 'Ukrajinsky', 'under_folder' => 'V zložke', diff --git a/languages/sv_SE/lang.inc b/languages/sv_SE/lang.inc index d3c4e734f..2f6d533c9 100644 --- a/languages/sv_SE/lang.inc +++ b/languages/sv_SE/lang.inc @@ -219,6 +219,7 @@ URL: [url]', 'choose_workflow' => 'Välj arbetsflöde', 'choose_workflow_action' => 'Välj åtgärd för arbetsflödet', 'choose_workflow_state' => 'Välj status för arbetsflödet', +'class_name' => '', 'clear_clipboard' => 'Rensa urklipp', 'clear_password' => '', 'clipboard' => 'Urklipp', @@ -261,6 +262,7 @@ URL: [url]', 'databasesearch' => 'Sök databas', 'date' => 'Datum', 'days' => 'dagar', +'debug' => '', 'december' => 'december', 'default_access' => 'Standardrättigheter', 'default_keywords' => 'Möjliga nyckelord', @@ -488,6 +490,7 @@ URL: [url]', 'guest_login_disabled' => 'Gästinloggningen är inaktiverad.', 'help' => 'Hjälp', 'home_folder' => '', +'hook_name' => '', 'hourly' => 'timvis', 'hours' => 'timmar', 'hr_HR' => 'Kroatiska', @@ -495,6 +498,8 @@ URL: [url]', 'hu_HU' => 'ungerska', 'id' => 'ID', 'identical_version' => 'Ny version är lika med den aktuella versionen.', +'import' => '', +'importfs' => '', 'include_content' => '', 'include_documents' => 'Inkludera dokument', 'include_subdirectories' => 'Inkludera under-kataloger', @@ -566,6 +571,7 @@ URL: [url]', 'linked_documents' => 'Relaterade dokument', 'linked_files' => 'Bilagor', 'link_alt_updatedocument' => 'Om du vill ladda upp filer som är större än den aktuella största tillåtna storleken, använd dig av den alternativa metoden att ladda upp filer Alternativ uppladdning.', +'list_hooks' => '', 'local_file' => 'Lokal fil', 'locked_by' => 'Låst av', 'lock_document' => 'Lås', @@ -1336,6 +1342,7 @@ URL: [url]', 'tr_TR' => 'Turkiska', 'tuesday' => 'tisdag', 'tuesday_abbr' => 'ti', +'type_of_hook' => '', 'type_to_search' => 'Skriv för att söka', 'uk_UA' => 'Ukrainska', 'under_folder' => 'I katalogen', diff --git a/languages/tr_TR/lang.inc b/languages/tr_TR/lang.inc index 8eda7450e..d9b7aaf52 100644 --- a/languages/tr_TR/lang.inc +++ b/languages/tr_TR/lang.inc @@ -225,6 +225,7 @@ URL: [url]', 'choose_workflow' => 'İş akışı seçiniz', 'choose_workflow_action' => 'İş akış eylemi seçiniz', 'choose_workflow_state' => 'İş akış durumunu seçiniz', +'class_name' => '', 'clear_clipboard' => 'Panoyu temizle', 'clear_password' => '', 'clipboard' => 'Pano', @@ -267,6 +268,7 @@ URL: [url]', 'databasesearch' => 'Veritabanı arama', 'date' => 'Tarih', 'days' => 'gün', +'debug' => '', 'december' => 'Aralık', 'default_access' => 'Varsayılan Erişim Modu', 'default_keywords' => 'Kullanılabilir anahtar kelimeler', @@ -494,6 +496,7 @@ URL: [url]', 'guest_login_disabled' => 'Misafir girişi devre dışı.', 'help' => 'Yardım', 'home_folder' => 'Temel klasör', +'hook_name' => '', 'hourly' => 'Saatlik', 'hours' => 'saat', 'hr_HR' => 'Hırvatça', @@ -501,6 +504,8 @@ URL: [url]', 'hu_HU' => 'Macarca', 'id' => 'ID', 'identical_version' => 'Yeni versiyon güncel versiyonla aynı.', +'import' => '', +'importfs' => '', 'include_content' => '', 'include_documents' => 'Dokümanları kapsa', 'include_subdirectories' => 'Alt klasörleri kapsa', @@ -572,6 +577,7 @@ URL: [url]', 'linked_documents' => 'İlgili Dokümanlar', 'linked_files' => 'Ekler', 'link_alt_updatedocument' => 'Mevcut maksimum yükleme boyutundan daha büyük dosya yüklemek istiyorsanız alternatif yükleme sayfası için tıklayın.', +'list_hooks' => '', 'local_file' => 'Yerel dosya', 'locked_by' => 'Kilitleyen', 'lock_document' => 'Kilitle', @@ -1352,6 +1358,7 @@ URL: [url]', 'tr_TR' => 'Türkçe', 'tuesday' => 'Salı', 'tuesday_abbr' => 'Sa', +'type_of_hook' => '', 'type_to_search' => 'Aranacak sözcük yazınız', 'uk_UA' => 'Ukraynaca', 'under_folder' => 'Klasörde', diff --git a/languages/uk_UA/lang.inc b/languages/uk_UA/lang.inc index c0842da69..5531dcb8f 100644 --- a/languages/uk_UA/lang.inc +++ b/languages/uk_UA/lang.inc @@ -231,6 +231,7 @@ URL: [url]', 'choose_workflow' => 'Оберіть процес', 'choose_workflow_action' => 'Оберіть дію процесу', 'choose_workflow_state' => 'Оберіть статус процесу', +'class_name' => '', 'clear_clipboard' => 'Очистити буфер обміну', 'clear_password' => '', 'clipboard' => 'Буфер обміну', @@ -273,6 +274,7 @@ URL: [url]', 'databasesearch' => 'Пошук по БД', 'date' => 'Дата', 'days' => 'дні', +'debug' => '', 'december' => 'Грудень', 'default_access' => 'Доступ по замовчуванню', 'default_keywords' => 'Доступні ключові слова', @@ -500,6 +502,7 @@ URL: [url]', 'guest_login_disabled' => 'Гостьовий вхід відключено', 'help' => 'Допомога', 'home_folder' => 'Домашній каталог', +'hook_name' => '', 'hourly' => 'Щогодини', 'hours' => 'години', 'hr_HR' => 'Хорватська', @@ -507,6 +510,8 @@ URL: [url]', 'hu_HU' => 'Hungarian', 'id' => 'Ідентифікатор', 'identical_version' => 'Нова версія ідентична поточній.', +'import' => '', +'importfs' => '', 'include_content' => 'Включно з вмістом', 'include_documents' => 'Включно з документами', 'include_subdirectories' => 'Включно з підкаталогами', @@ -578,6 +583,7 @@ URL: [url]', 'linked_documents' => 'Пов\'язані документи', 'linked_files' => 'Пов\'язані файли', 'link_alt_updatedocument' => 'Для завантаження файлів, які перевищують обмеження розміру, використовуйте інший метод.', +'list_hooks' => '', 'local_file' => 'Локальний файл', 'locked_by' => 'Заблоковано', 'lock_document' => 'Заблокувати', @@ -1373,6 +1379,7 @@ URL: [url]', 'tr_TR' => 'Turkish', 'tuesday' => 'Вівторок', 'tuesday_abbr' => 'Вв', +'type_of_hook' => '', 'type_to_search' => 'Введіть запит', 'uk_UA' => 'Українська', 'under_folder' => 'В каталозі', diff --git a/languages/zh_CN/lang.inc b/languages/zh_CN/lang.inc index 4c86a30d3..6f5e9432e 100644 --- a/languages/zh_CN/lang.inc +++ b/languages/zh_CN/lang.inc @@ -208,6 +208,7 @@ URL: [url]', 'choose_workflow' => '', 'choose_workflow_action' => '', 'choose_workflow_state' => '', +'class_name' => '', 'clear_clipboard' => '清除粘贴板', 'clear_password' => '', 'clipboard' => '剪切板', @@ -252,6 +253,7 @@ URL: [url]', 'databasesearch' => '数据库搜索', 'date' => '日期', 'days' => '', +'debug' => '', 'december' => '十二月', 'default_access' => '缺省访问模式', 'default_keywords' => '可用关键字', @@ -425,6 +427,7 @@ URL: [url]', 'guest_login_disabled' => '来宾登录被禁止', 'help' => '帮助', 'home_folder' => '', +'hook_name' => '', 'hourly' => '小时', 'hours' => '', 'hr_HR' => '克罗地亚人', @@ -432,6 +435,8 @@ URL: [url]', 'hu_HU' => '匈牙利语', 'id' => '序号', 'identical_version' => '', +'import' => '', +'importfs' => '', 'include_content' => '', 'include_documents' => '包含文档', 'include_subdirectories' => '包含子目录', @@ -503,6 +508,7 @@ URL: [url]', 'linked_documents' => '相关文档', 'linked_files' => '附件', 'link_alt_updatedocument' => '超过20M大文件,请选择上传大文件.', +'list_hooks' => '', 'local_file' => '本地文件', 'locked_by' => '锁定人', 'lock_document' => '锁定', @@ -1198,6 +1204,7 @@ URL: [url]', 'tr_TR' => '土耳其', 'tuesday' => 'Tuesday', 'tuesday_abbr' => '', +'type_of_hook' => '', 'type_to_search' => '搜索类型', 'uk_UA' => '乌克兰语', 'under_folder' => '文件夹内', diff --git a/languages/zh_TW/lang.inc b/languages/zh_TW/lang.inc index 16c6240c9..0d6f0fa44 100644 --- a/languages/zh_TW/lang.inc +++ b/languages/zh_TW/lang.inc @@ -208,6 +208,7 @@ URL: [url]', 'choose_workflow' => '選擇流程', 'choose_workflow_action' => '選擇流程行為', 'choose_workflow_state' => '選擇流程狀態', +'class_name' => '', 'clear_clipboard' => '清除剪貼簿', 'clear_password' => '', 'clipboard' => '剪貼簿', @@ -250,6 +251,7 @@ URL: [url]', 'databasesearch' => '資料庫搜索', 'date' => '日期', 'days' => '', +'debug' => '', 'december' => '十二月', 'default_access' => '缺省訪問模式', 'default_keywords' => '可用關鍵字', @@ -423,6 +425,7 @@ URL: [url]', 'guest_login_disabled' => '來賓登錄被禁止', 'help' => '幫助', 'home_folder' => '', +'hook_name' => '', 'hourly' => '', 'hours' => '', 'hr_HR' => '克羅埃西亞語', @@ -430,6 +433,8 @@ URL: [url]', 'hu_HU' => '匈牙利語', 'id' => '序號', 'identical_version' => '', +'import' => '', +'importfs' => '', 'include_content' => '', 'include_documents' => '包含文檔', 'include_subdirectories' => '包含子目錄', @@ -501,6 +506,7 @@ URL: [url]', 'linked_documents' => '相關文檔', 'linked_files' => '附件', 'link_alt_updatedocument' => '超過20M大檔,請選擇上傳大檔.', +'list_hooks' => '', 'local_file' => '本地檔', 'locked_by' => '鎖定人', 'lock_document' => '鎖定', @@ -1196,6 +1202,7 @@ URL: [url]', 'tr_TR' => '土耳其語', 'tuesday' => 'Tuesday', 'tuesday_abbr' => '', +'type_of_hook' => '', 'type_to_search' => '搜索類型', 'uk_UA' => '烏克蘭語', 'under_folder' => '資料夾內', diff --git a/op/op.RoleMgr.php b/op/op.RoleMgr.php index 8b2080014..2bfa947f2 100644 --- a/op/op.RoleMgr.php +++ b/op/op.RoleMgr.php @@ -27,51 +27,29 @@ 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"); -include("../inc/inc.ClassPasswordStrength.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$controller = Controller::factory($tmp[1]); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_controller_access($controller, $_POST)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } if (isset($_POST["action"])) $action=$_POST["action"]; else $action=NULL; -// add new role --------------------------------------------------------- -if ($action == "addrole") { - - /* Check if the form data comes for a trusted request */ - if(!checkFormKey('addrole')) { - UI::exitError(getMLText("admin_tools"),getMLText("invalid_request_token")); - } +if(!in_array($action, array('addrole', 'removerole', 'editrole'))) + UI::exitError(getMLText("admin_tools"),getMLText("unknown_command")); - $name = $_POST["name"]; - $role = preg_replace('/[^0-2]+/', '', $_POST["role"]); - - if (is_object($dms->getRoleByName($name))) { - UI::exitError(getMLText("admin_tools"),getMLText("role_exists")); - } - - $newRole = $dms->addRole($name, $role); - if ($newRole) { - } - else UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); - - $roleid=$newRole->getID(); - - $session->setSplashMsg(array('type'=>'success', 'msg'=>getMLText('splash_add_role'))); - - add_log_line(".php&action=addrole&name=".$name); +/* Check if the form data comes for a trusted request */ +if(!checkFormKey($action)) { + UI::exitError(getMLText("admin_tools"),getMLText("invalid_request_token")); } -// delete role ------------------------------------------------------------ -else if ($action == "removerole") { - - /* Check if the form data comes for a trusted request */ - if(!checkFormKey('removerole')) { - UI::exitError(getMLText("admin_tools"),getMLText("invalid_request_token")); - } - +$roleid = 0; +if(in_array($action, array('removerole', 'editrole'))) { if (isset($_POST["roleid"])) { $roleid = $_POST["roleid"]; } @@ -80,16 +58,52 @@ else if ($action == "removerole") { UI::exitError(getMLText("admin_tools"),getMLText("invalid_role_id")); } - $roleToRemove = $dms->getRole($roleid); - if (!is_object($roleToRemove)) { + $roleobj = $dms->getRole($roleid); + + if (!is_object($roleobj)) { UI::exitError(getMLText("admin_tools"),getMLText("invalid_role_id")); } - if (!$roleToRemove->remove()) { + $controller->setParam('roleobj', $roleobj); +} + +// add new role --------------------------------------------------------- +if ($action == "addrole") { + + $name = $_POST["name"]; + $role = preg_replace('/[^0-2]+/', '', $_POST["role"]); + + if (is_object($dms->getRoleByName($name))) { + UI::exitError(getMLText("admin_tools"),getMLText("role_exists")); + } + + if ($role === '') { + UI::exitError(getMLText("admin_tools"),getMLText("missing_role_type")); + } + + $controller->setParam('name', $name); + $controller->setParam('role', $role); + + $newRole = $controller($_POST); + if ($newRole) { + } + else UI::exitError(getMLText("admin_tools"),getMLText("error_occured")); + + $roleid=$newRole->getID(); + + $session->setSplashMsg(array('type'=>'success', 'msg'=>getMLText('splash_add_role'))); + + add_log_line(".php&action=".$action."&name=".$name); +} + +// delete role ------------------------------------------------------------ +else if ($action == "removerole") { + + if (!$controller($_POST)) { UI::exitError(getMLText("admin_tools"),getMLText("error_occured")); } - add_log_line(".php&action=removerole&roleid=".$roleid); + add_log_line(".php&action=".$action."&roleid=".$roleid); $session->setSplashMsg(array('type'=>'success', 'msg'=>getMLText('splash_rm_role'))); $roleid=-1; @@ -98,36 +112,21 @@ else if ($action == "removerole") { // modify role ------------------------------------------------------------ else if ($action == "editrole") { - /* Check if the form data comes for a trusted request */ - if(!checkFormKey('editrole')) { - UI::exitError(getMLText("admin_tools"),getMLText("invalid_request_token")); - } - - if (!isset($_POST["roleid"]) || !is_numeric($_POST["roleid"]) || intval($_POST["roleid"])<1) { - UI::exitError(getMLText("admin_tools"),getMLText("invalid_role_id")); - } - - $roleid=$_POST["roleid"]; - $editedRole = $dms->getRole($roleid); - - if (!is_object($editedRole)) { - UI::exitError(getMLText("admin_tools"),getMLText("invalid_role_id")); - } - $name = $_POST["name"]; $role = preg_replace('/[^0-2]+/', '', $_POST["role"]); $noaccess = isset($_POST['noaccess']) ? $_POST['noaccess'] : null; - if ($editedRole->getName() != $name) - $editedRole->setName($name); - if ($editedRole->getRole() != $role) - $editedRole->setRole($role); - $editedRole->setNoAccess($noaccess); + $controller->setParam('name', $name); + $controller->setParam('role', $role); + $controller->setParam('noaccess', $noaccess); + + if (!$controller($_POST)) { + UI::exitError(getMLText("admin_tools"),getMLText("error_occured")); + } $session->setSplashMsg(array('type'=>'success', 'msg'=>getMLText('splash_edit_role'))); - add_log_line(".php&action=editrole&roleid=".$roleid); + add_log_line(".php&action=".$action."&roleid=".$roleid); } -else UI::exitError(getMLText("admin_tools"),getMLText("unknown_command")); header("Location:../out/out.RoleMgr.php?roleid=".$roleid); diff --git a/out/out.Acl.php b/out/out.Acl.php index 04efdb7bf..f6665ef48 100644 --- a/out/out.Acl.php +++ b/out/out.Acl.php @@ -28,7 +28,7 @@ include("../inc/inc.Authentication.php"); $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); $view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); $accessop = new SeedDMS_AccessOperation($dms, $user, $settings); -if (!$accessop->check_view_access($view, $_GET) && !$user->isAdmin()) { +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } diff --git a/out/out.AdminTools.php b/out/out.AdminTools.php index 4b02373c5..780a8946a 100644 --- a/out/out.AdminTools.php +++ b/out/out.AdminTools.php @@ -27,7 +27,7 @@ include("../inc/inc.Authentication.php"); $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); $view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); $accessop = new SeedDMS_AccessOperation($dms, $user, $settings); -if (!$accessop->check_view_access($view, $_GET) && !$user->isAdmin()) { +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } diff --git a/out/out.AttributeMgr.php b/out/out.AttributeMgr.php index 44d6748fb..d35029a79 100644 --- a/out/out.AttributeMgr.php +++ b/out/out.AttributeMgr.php @@ -32,7 +32,10 @@ include("../inc/inc.Authentication.php"); */ require_once("SeedDMS/Preview.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -44,8 +47,6 @@ if(isset($_GET['attrdefid']) && $_GET['attrdefid']) { $selattrdef = null; } -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); if($view) { $view->setParam('attrdefs', $attrdefs); $view->setParam('selattrdef', $selattrdef); @@ -55,6 +56,7 @@ if($view) { $view->setParam('maxRecursiveCount', $settings->_maxRecursiveCount); $view->setParam('previewWidthList', $settings->_previewWidthList); $view->setParam('timeout', $settings->_cmdTimeout); + $view->setParam('accessobject', $accessop); $view($_GET); } diff --git a/out/out.BackupTools.php b/out/out.BackupTools.php index 25e4fb75d..dd861aabe 100644 --- a/out/out.BackupTools.php +++ b/out/out.BackupTools.php @@ -25,17 +25,19 @@ include("../inc/inc.Utils.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); if($view) { if($settings->_backupDir && file_exists($settings->_backupDir)) $view->setParam('backupdir', $settings->_backupDir); else $view->setParam('backupdir', $settings->_contentDir); + $view->setParam('accessobject', $accessop); $view($_GET); exit; } diff --git a/out/out.Calendar.php b/out/out.Calendar.php index f32994371..6a79e2e3c 100644 --- a/out/out.Calendar.php +++ b/out/out.Calendar.php @@ -25,6 +25,13 @@ include("../inc/inc.DBInit.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { + UI::exitError(getMLText("calendar"),getMLText("access_denied")); +} + if ($_GET["mode"]) $mode=$_GET["mode"]; // get required date else use current @@ -37,8 +44,6 @@ else $month = (int)date("m", $currDate); if (isset($_GET["day"])&&is_numeric($_GET["day"])) $day=$_GET["day"]; else $day = (int)date("d", $currDate); -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); if($view) { $view->setParam('mode', $mode); $view->setParam('year', $year); diff --git a/out/out.Categories.php b/out/out.Categories.php index 049e12163..5ea509876 100644 --- a/out/out.Categories.php +++ b/out/out.Categories.php @@ -29,7 +29,7 @@ include("../inc/inc.Authentication.php"); $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); $view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); $accessop = new SeedDMS_AccessOperation($dms, $user, $settings); -if (!$accessop->check_view_access($view, $_GET) && !$user->isAdmin()) { +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -44,5 +44,6 @@ if(isset($_GET['categoryid']) && $_GET['categoryid']) { if($view) { $view->setParam('categories', $categories); $view->setParam('selcategory', $selcat); + $view->setParam('accessobject', $accessop); $view($_GET); } diff --git a/out/out.Charts.php b/out/out.Charts.php index 56c8166ce..98b5f51b9 100644 --- a/out/out.Charts.php +++ b/out/out.Charts.php @@ -27,10 +27,11 @@ include("../inc/inc.Authentication.php"); $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); $view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); - -if (!$user->isAdmin()) { +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } + $rootfolder = $dms->getFolder($settings->_rootFolderID); $type = 'docsperuser'; @@ -50,6 +51,7 @@ if($view) { $view->setParam('rootfolder', $rootfolder); $view->setParam('type', $type); $view->setParam('data', $data); + $view->setParam('accessobject', $accessop); $view($_GET); exit; } diff --git a/out/out.CreateIndex.php b/out/out.CreateIndex.php index 39bb6c176..6ea0380c8 100644 --- a/out/out.CreateIndex.php +++ b/out/out.CreateIndex.php @@ -29,7 +29,10 @@ include("../inc/inc.DBInit.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -37,10 +40,9 @@ if(!$settings->_enableFullSearch) { UI::exitError(getMLText("admin_tools"),getMLText("fulltextsearch_disabled")); } -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); if($view) { $view->setParam('enablefullsearch', $settings->_enableFullSearch); + $view->setParam('accessobject', $accessop); $view($_GET); exit; } diff --git a/out/out.DefaultKeywords.php b/out/out.DefaultKeywords.php index fa5b616a4..d8b153ebc 100644 --- a/out/out.DefaultKeywords.php +++ b/out/out.DefaultKeywords.php @@ -26,7 +26,10 @@ include("../inc/inc.DBInit.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -37,9 +40,10 @@ else $categories = $dms->getAllUserKeywordCategories($user->getID()); -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'categories'=>$categories, 'selcategoryid'=>$selcategoryid)); if($view) { + $view->setParam('categories', $categories); + $view->setParam('selcategoryid', $selcategoryid); + $view->setParam('accessobject', $accessop); $view($_GET); exit; } diff --git a/out/out.ExtensionMgr.php b/out/out.ExtensionMgr.php index 11a0cc871..f5eb48963 100644 --- a/out/out.ExtensionMgr.php +++ b/out/out.ExtensionMgr.php @@ -25,17 +25,19 @@ include("../inc/inc.DBInit.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } $v = new SeedDMS_Version; -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); if($view) { $view->setParam('httproot', $settings->_httpRoot); $view->setParam('version', $v); + $view->setParam('accessobject', $accessop); $view($_GET); exit; } diff --git a/out/out.GroupMgr.php b/out/out.GroupMgr.php index 4fdd806b5..250a125e0 100644 --- a/out/out.GroupMgr.php +++ b/out/out.GroupMgr.php @@ -35,7 +35,7 @@ require_once("SeedDMS/Preview.php"); $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); $view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); $accessop = new SeedDMS_AccessOperation($dms, $user, $settings); -if (!$accessop->check_view_access($view, $_GET) && !$user->isAdmin()) { +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -64,5 +64,6 @@ if($view) { $view->setParam('previewWidthList', $settings->_previewWidthList); $view->setParam('workflowmode', $settings->_workflowMode); $view->setParam('timeout', $settings->_cmdTimeout); + $view->setParam('accessobject', $accessop); $view($_GET); } diff --git a/out/out.Hooks.php b/out/out.Hooks.php index 63870eb9e..ac452281d 100644 --- a/out/out.Hooks.php +++ b/out/out.Hooks.php @@ -24,13 +24,16 @@ include("../inc/inc.DBInit.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'settings'=>$settings)); if($view) { + $view->setParam('settings', $settings); + $view->setParam('accessobject', $accessop); $view($_GET); exit; } diff --git a/out/out.ImportFS.php b/out/out.ImportFS.php index ff9a44ded..8dff5cccd 100644 --- a/out/out.ImportFS.php +++ b/out/out.ImportFS.php @@ -17,19 +17,23 @@ // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. include("../inc/inc.Settings.php"); -include("../inc/inc.DBInit.php"); -include("../inc/inc.Utils.php"); include("../inc/inc.Language.php"); +include("../inc/inc.Init.php"); +include("../inc/inc.Extension.php"); +include("../inc/inc.DBInit.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'dropfolderdir'=>$settings->_dropFolderDir)); if($view) { + $view->setParam('dropfolderdir', $settings->_dropFolderDir); + $view->setParam('accessobject', $accessop); $view($_GET); exit; } diff --git a/out/out.IndexInfo.php b/out/out.IndexInfo.php index 34e1f6367..15aaca03d 100644 --- a/out/out.IndexInfo.php +++ b/out/out.IndexInfo.php @@ -28,7 +28,10 @@ include("../inc/inc.DBInit.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -41,12 +44,11 @@ if(!$index) { UI::exitError(getMLText("admin_tools"),getMLText("no_fulltextindex")); } -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); if($view) { $view->setParam('luceneclassdir', $settings->_luceneClassDir); $view->setParam('lucenedir', $settings->_luceneDir); $view->setParam('index', $index); + $view->setParam('accessobject', $accessop); $view($_GET); exit; } diff --git a/out/out.Indexer.php b/out/out.Indexer.php index 89e549e35..43ea6af13 100644 --- a/out/out.Indexer.php +++ b/out/out.Indexer.php @@ -29,7 +29,10 @@ include("../inc/inc.DBInit.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -64,8 +67,6 @@ else { } $folder = $dms->getFolder($folderid); -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); if($view) { $view->setParam('index', $index); $view->setParam('indexconf', $indexconf); @@ -73,6 +74,7 @@ if($view) { $view->setParam('folder', $folder); $view->setParam('converters', $settings->_converters['fulltext']); $view->setParam('timeout', $settings->_cmdTimeout); + $view->setParam('accessobject', $accessop); $view($_GET); exit; } diff --git a/out/out.Info.php b/out/out.Info.php index d32d5d338..a41cf366d 100644 --- a/out/out.Info.php +++ b/out/out.Info.php @@ -30,7 +30,7 @@ include("../inc/inc.Authentication.php"); $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); $view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); $accessop = new SeedDMS_AccessOperation($dms, $user, $settings); -if (!$accessop->check_view_access($view, $_GET) && !$user->isAdmin()) { +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } diff --git a/out/out.LogManagement.php b/out/out.LogManagement.php index 599094ba6..7e483ba55 100644 --- a/out/out.LogManagement.php +++ b/out/out.LogManagement.php @@ -25,7 +25,10 @@ include("../inc/inc.DBInit.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -35,9 +38,11 @@ else $logname=NULL; if (isset($_GET["mode"])) $mode=$_GET["mode"]; else $mode='web'; -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'logname'=>$logname, 'mode'=>$mode, 'contentdir'=>$settings->_contentDir)); if($view) { + $view->setParam('logname', $logname); + $view->setParam('mode', $mode); + $view->setParam('contentdir', $settings->_contentDir); + $view->setParam('accessobject', $accessop); $view($_GET); exit; } diff --git a/out/out.ObjectCheck.php b/out/out.ObjectCheck.php index d1868c44d..f3a682e4f 100644 --- a/out/out.ObjectCheck.php +++ b/out/out.ObjectCheck.php @@ -31,7 +31,7 @@ include("../inc/inc.Authentication.php"); $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); $view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); $accessop = new SeedDMS_AccessOperation($dms, $user, $settings); -if (!$accessop->check_view_access($view, $_GET) && !$user->isAdmin()) { +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -81,6 +81,7 @@ if($view) { $view->setParam('setchecksum', $setchecksum); $view->setParam('repair', $repair); $view->setParam('rootfolder', $rootfolder); + $view->setParam('accessobject', $accessop); $view($_GET); exit; } diff --git a/out/out.RemoveArchive.php b/out/out.RemoveArchive.php index 2d11942f3..d8bc7b1d0 100644 --- a/out/out.RemoveArchive.php +++ b/out/out.RemoveArchive.php @@ -24,7 +24,10 @@ include("../inc/inc.DBInit.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -34,8 +37,6 @@ if (!isset($_GET["arkname"]) || !file_exists($settings->_contentDir.$_GET["arkna $arkname = $_GET["arkname"]; -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); if($view) { $view->setParam('archive', $arkname); $view($_GET); diff --git a/out/out.RemoveDump.php b/out/out.RemoveDump.php index 7b182bf87..6d32bf837 100644 --- a/out/out.RemoveDump.php +++ b/out/out.RemoveDump.php @@ -24,7 +24,10 @@ include("../inc/inc.DBInit.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -34,8 +37,6 @@ if (!isset($_GET["dumpname"]) || !file_exists($settings->_contentDir.$_GET["dump $dumpname = $_GET["dumpname"]; -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); if($view) { $view->setParam('dumpfile', $dumpname); $view($_GET); diff --git a/out/out.RemoveFolderFiles.php b/out/out.RemoveFolderFiles.php index c9a1eab0b..e201426a0 100644 --- a/out/out.RemoveFolderFiles.php +++ b/out/out.RemoveFolderFiles.php @@ -24,7 +24,10 @@ include("../inc/inc.DBInit.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -38,8 +41,6 @@ if (!is_object($folder)) { UI::exitError(getMLText("admin_tools"),getMLText("invalid_folder_id")); } -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); if($view) { $view->setParam('folder', $folder); $view($_GET); diff --git a/out/out.RemoveGroup.php b/out/out.RemoveGroup.php index d995d1893..8f3c4b48a 100644 --- a/out/out.RemoveGroup.php +++ b/out/out.RemoveGroup.php @@ -26,7 +26,10 @@ include("../inc/inc.DBInit.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -39,8 +42,6 @@ if (!is_object($group)) { UI::exitError(getMLText("rm_group"),getMLText("invalid_group_id")); } -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); if($view) { $view->setParam('group', $group); $view($_GET); diff --git a/out/out.RemoveLog.php b/out/out.RemoveLog.php index 5b4202a3f..5d579ca47 100644 --- a/out/out.RemoveLog.php +++ b/out/out.RemoveLog.php @@ -24,7 +24,10 @@ include("../inc/inc.DBInit.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -48,8 +51,6 @@ foreach($lognames as $file) { } } -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); if($view) { $view->setParam('lognames', $lognames); $view->setParam('mode', $mode); diff --git a/out/out.RemoveUser.php b/out/out.RemoveUser.php index 8717bf430..214b7e1d6 100644 --- a/out/out.RemoveUser.php +++ b/out/out.RemoveUser.php @@ -26,7 +26,10 @@ include("../inc/inc.DBInit.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -49,8 +52,6 @@ if ($rmuser->getID()==$user->getID()) { $allusers = $dms->getAllUsers($settings->_sortUsersInList); -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); if($view) { $view->setParam('rmuser', $rmuser); $view->setParam('allusers', $allusers); diff --git a/out/out.RemoveWorkflow.php b/out/out.RemoveWorkflow.php index 77da1890d..6f7ffbc6c 100644 --- a/out/out.RemoveWorkflow.php +++ b/out/out.RemoveWorkflow.php @@ -27,7 +27,10 @@ include("../inc/inc.DBInit.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -40,8 +43,6 @@ if (!is_object($workflow)) { UI::exitError(getMLText("workflow_title"),getMLText("invalid_workflow_id")); } -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); if($view) { $view->setParam('workflow', $workflow); $view($_GET); diff --git a/out/out.RemoveWorkflowFromDocument.php b/out/out.RemoveWorkflowFromDocument.php index 52729944b..ae841a829 100644 --- a/out/out.RemoveWorkflowFromDocument.php +++ b/out/out.RemoveWorkflowFromDocument.php @@ -28,7 +28,10 @@ include("../inc/inc.ClassUI.php"); include("../inc/inc.ClassAccessOperation.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -59,11 +62,6 @@ if (!is_object($workflow)) { $folder = $document->getFolder(); -/* Create object for checking access to certain operations */ -$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); - -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); if($view) { $view->setParam('folder', $folder); $view->setParam('document', $document); diff --git a/out/out.RewindWorkflow.php b/out/out.RewindWorkflow.php index 52729944b..ae841a829 100644 --- a/out/out.RewindWorkflow.php +++ b/out/out.RewindWorkflow.php @@ -28,7 +28,10 @@ include("../inc/inc.ClassUI.php"); include("../inc/inc.ClassAccessOperation.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -59,11 +62,6 @@ if (!is_object($workflow)) { $folder = $document->getFolder(); -/* Create object for checking access to certain operations */ -$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); - -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); if($view) { $view->setParam('folder', $folder); $view->setParam('document', $document); diff --git a/out/out.RoleMgr.php b/out/out.RoleMgr.php index 1873fde98..1c720d2a8 100644 --- a/out/out.RoleMgr.php +++ b/out/out.RoleMgr.php @@ -29,7 +29,7 @@ include("../inc/inc.Authentication.php"); $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); $view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); $accessop = new SeedDMS_AccessOperation($dms, $user, $settings); -if (!$accessop->check_view_access($view, $_GET) && !$user->isAdmin()) { +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } diff --git a/out/out.Settings.php b/out/out.Settings.php index 99fe2025e..271f089ac 100644 --- a/out/out.Settings.php +++ b/out/out.Settings.php @@ -24,7 +24,10 @@ include("../inc/inc.DBInit.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -32,9 +35,9 @@ if (!$user->isAdmin()) { if(!trim($settings->_encryptionKey)) $settings->_encryptionKey = md5(uniqid()); -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'settings'=>$settings, 'currenttab'=>(isset($_REQUEST['currenttab']) ? $_REQUEST['currenttab'] : ''))); if($view) { + $view->setParam('settings', $settings); + $view->setParam('currenttab', (isset($_REQUEST['currenttab']) ? $_REQUEST['currenttab'] : '')); $view($_GET); exit; } diff --git a/out/out.Statistic.php b/out/out.Statistic.php index 7c390d1c0..22861debc 100644 --- a/out/out.Statistic.php +++ b/out/out.Statistic.php @@ -25,14 +25,17 @@ include("../inc/inc.DBInit.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } $rootfolder = $dms->getFolder($settings->_rootFolderID); -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'rootfolder'=>$rootfolder)); if($view) { + $view->setParam('rootfolder', $rootfolder); + $view->setParam('accessobject', $accessop); $view($_GET); exit; } diff --git a/out/out.Timeline.php b/out/out.Timeline.php index e3f993870..a4760d9e3 100644 --- a/out/out.Timeline.php +++ b/out/out.Timeline.php @@ -30,7 +30,10 @@ include("../inc/inc.Authentication.php"); */ require_once("SeedDMS/Preview.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } $rootfolder = $dms->getFolder($settings->_rootFolderID); @@ -53,8 +56,6 @@ if(isset($_GET['version']) && $_GET['version'] && is_numeric($_GET['version'])) } else $content = null; -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); if($view) { $view->setParam('fromdate', isset($_GET['fromdate']) ? $_GET['fromdate'] : ''); $view->setParam('todate', isset($_GET['todate']) ? $_GET['todate'] : ''); @@ -65,6 +66,7 @@ if($view) { $view->setParam('previewWidthList', $settings->_previewWidthList); $view->setParam('previewWidthDetail', $settings->_previewWidthDetail); $view->setParam('timeout', $settings->_cmdTimeout); + $view->setParam('accessobject', $accessop); $view($_GET); exit; } diff --git a/out/out.UserList.php b/out/out.UserList.php index f95547e96..6d9e7e34d 100644 --- a/out/out.UserList.php +++ b/out/out.UserList.php @@ -28,7 +28,7 @@ include("../inc/inc.ClassPasswordStrength.php"); $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); $view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); $accessop = new SeedDMS_AccessOperation($dms, $user, $settings); -if (!$accessop->check_view_access($view, $_GET) && !$user->isAdmin()) { +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -39,6 +39,7 @@ if($view) { $view->setParam('httproot', $settings->_httpRoot); $view->setParam('quota', $settings->_quota); $view->setParam('pwdexpiration', $settings->_passwordExpiration); + $view->setParam('accessobject', $accessop); $view($_GET); exit; } diff --git a/out/out.UsrMgr.php b/out/out.UsrMgr.php index 2a5688f20..dc8160101 100644 --- a/out/out.UsrMgr.php +++ b/out/out.UsrMgr.php @@ -29,7 +29,7 @@ include("../inc/inc.Authentication.php"); $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); $view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); $accessop = new SeedDMS_AccessOperation($dms, $user, $settings); -if (!$accessop->check_view_access($view, $_GET) && !$user->isAdmin()) { +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } diff --git a/out/out.WorkflowActionsMgr.php b/out/out.WorkflowActionsMgr.php index 60b509d79..fa1307649 100644 --- a/out/out.WorkflowActionsMgr.php +++ b/out/out.WorkflowActionsMgr.php @@ -27,7 +27,10 @@ include("../inc/inc.DBInit.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -42,8 +45,6 @@ if (is_bool($workflowactions)) { UI::exitError(getMLText("admin_tools"),getMLText("internal_error")); } -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); if($view) { $view->setParam('allworkflowactions', $workflowactions); $view->setParam('selworkflowaction', $selworkflowaction); diff --git a/out/out.WorkflowMgr.php b/out/out.WorkflowMgr.php index aac3249ae..bdfbcab3d 100644 --- a/out/out.WorkflowMgr.php +++ b/out/out.WorkflowMgr.php @@ -27,7 +27,10 @@ include("../inc/inc.DBInit.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -47,8 +50,6 @@ if(isset($_GET['workflowid']) && $_GET['workflowid']) { $selworkflow = null; } -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); if($view) { $view->setParam('selworkflow', $selworkflow); $view->setParam('allworkflows', $workflows); diff --git a/out/out.WorkflowStatesMgr.php b/out/out.WorkflowStatesMgr.php index c8de1f7c7..4380a3737 100644 --- a/out/out.WorkflowStatesMgr.php +++ b/out/out.WorkflowStatesMgr.php @@ -27,7 +27,10 @@ include("../inc/inc.DBInit.php"); include("../inc/inc.ClassUI.php"); include("../inc/inc.Authentication.php"); -if (!$user->isAdmin()) { +$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); +$accessop = new SeedDMS_AccessOperation($dms, $user, $settings); +if (!$accessop->check_view_access($view, $_GET)) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } @@ -37,8 +40,6 @@ if(isset($_GET['workflowstateid']) && $_GET['workflowstateid']) { $selworkflowstate = null; } -$tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user)); if($view) { $view->setParam('selworkflowstate', $selworkflowstate); $view($_GET); diff --git a/views/bootstrap/class.Bootstrap.php b/views/bootstrap/class.Bootstrap.php index 02c42c3f0..ebfb54343 100644 --- a/views/bootstrap/class.Bootstrap.php +++ b/views/bootstrap/class.Bootstrap.php @@ -406,7 +406,7 @@ $(document).ready(function () { echo " \n"; } + if($this->check_access(array('Hooks'))) { + echo " \n"; + } + echo "\n"; echo "\n"; diff --git a/views/bootstrap/class.DashBoard.php b/views/bootstrap/class.DashBoard.php index e154ca33c..a6d46c3b4 100644 --- a/views/bootstrap/class.DashBoard.php +++ b/views/bootstrap/class.DashBoard.php @@ -113,7 +113,7 @@ class SeedDMS_View_DashBoard extends SeedDMS_Bootstrap_Style { -contentEnd(); $this->htmlEndPage(); } /* }}} */ diff --git a/views/bootstrap/class.GroupMgr.php b/views/bootstrap/class.GroupMgr.php index f04581e39..951e19309 100644 --- a/views/bootstrap/class.GroupMgr.php +++ b/views/bootstrap/class.GroupMgr.php @@ -165,7 +165,7 @@ $(document).ready( function() { ?> check_access('RemoveGroup')) { ?> diff --git a/views/bootstrap/class.Hooks.php b/views/bootstrap/class.Hooks.php index b3c50af14..2e16594d7 100644 --- a/views/bootstrap/class.Hooks.php +++ b/views/bootstrap/class.Hooks.php @@ -39,7 +39,7 @@ class SeedDMS_View_Hooks extends SeedDMS_Bootstrap_Style { echo "
\n"; echo ""; - echo "\n"; + echo "\n"; echo ""; echo ""; foreach(array('controller', 'view') as $type) { @@ -71,7 +71,7 @@ class SeedDMS_View_Hooks extends SeedDMS_Bootstrap_Style { $this->globalNavigation(); $this->contentStart(); $this->pageNavigation(getMLText("admin_tools"), "admin_tools"); - $this->contentHeading("Hooks"); + $this->contentHeading(getMLText("list_hooks")); self::list_hooks(); diff --git a/views/bootstrap/class.RoleMgr.php b/views/bootstrap/class.RoleMgr.php index 031d77238..08beeb2e1 100644 --- a/views/bootstrap/class.RoleMgr.php +++ b/views/bootstrap/class.RoleMgr.php @@ -111,9 +111,10 @@ $(document).ready( function() { function showRoleForm($currRole) { /* {{{ */ $dms = $this->params['dms']; $user = $this->params['user']; + $accessop = $this->params['accessobject']; $roles = $this->params['allroles']; - if($currRole && !$currRole->isUsed()) { + if($currRole && !$currRole->isUsed() && $accessop->check_controller_access('RoleMgr', array('action'=>'removerole'))) { ?> @@ -150,7 +151,7 @@ $(document).ready( function() { getRole() == SeedDMS_Core_Role::role_user) { + if($currRole && $currRole->getRole() != SeedDMS_Core_Role::role_admin) { echo ""; echo ""; echo ""; echo ""; } + if($currRole && $accessop->check_controller_access('RoleMgr', array('action'=>'editrole')) || !$currRole && $accessop->check_controller_access('RoleMgr', array('action'=>'addrole'))) { ?> +
TypeName of hookName of classFile
".getMLText('type_of_hook')."".getMLText('hook_name')."".getMLText('class_name')."".getMLText('file')."
".getMLText('restrict_access').""; @@ -160,11 +161,15 @@ $(document).ready( function() { echo "
params['dms']; $user = $this->params['user']; + $accessop = $this->params['accessobject']; $selrole = $this->params['selrole']; $roles = $this->params['allroles']; @@ -189,7 +195,9 @@ $(document).ready( function() { :