Index: trunk/core/kernel/db/db_event_handler.php =================================================================== diff -u -r4627 -r4630 --- trunk/core/kernel/db/db_event_handler.php (.../db_event_handler.php) (revision 4627) +++ trunk/core/kernel/db/db_event_handler.php (.../db_event_handler.php) (revision 4630) @@ -57,12 +57,7 @@ */ function CheckPermission(&$event) { - if ($event->Name == 'OnSave') { - // check is made in OnPreSave subevent - return true; - } - - if (substr($event->Name, 0, 9) == 'OnPreSave') { + if ((substr($event->Name, 0, 9) == 'OnPreSave') || ($event->Name == 'OnSave')) { $section = $event->getSection(); if ($this->isNewItemCreate($event)) { return $this->Application->CheckPermission($section.'.add'); @@ -103,6 +98,13 @@ 'OnCancel' => Array('self' => 'add|edit', 'subitem' => 'add|edit'), 'OnSetSorting' => Array('self' => 'view', 'subitem' => 'view'), + 'OnSetSortingDirect' => Array('self' => 'view', 'subitem' => 'view'), + + 'OnSetFilter' => Array('self' => 'view', 'subitem' => 'view'), + 'OnApplyFilters' => Array('self' => 'view', 'subitem' => 'view'), + 'OnRemoveFilters' => Array('self' => 'view', 'subitem' => 'view'), + + 'OnSetPerPage' => Array('self' => 'view', 'subitem' => 'view'), ); $this->permMapping = array_merge($this->permMapping, $permissions); }