diff --git a/include/class.role.php b/include/class.role.php index b2bcd2c97d0813d7cff5fd03d854bbf607cadeb1..ce4256c5ba75da5a0c67eac8b51319a040758562 100644 --- a/include/class.role.php +++ b/include/class.role.php @@ -310,9 +310,15 @@ class RolePermission { return static::$_permissions; } - static function register($group, $perms) { - static::$_permissions[$group] = array_merge( - static::$_permissions[$group] ?: array(), $perms); + static function register($group, $perms, $prepend=false) { + if ($prepend) { + static::$_permissions[$group] = array_merge( + $perms, static::$_permissions[$group] ?: array()); + } + else { + static::$_permissions[$group] = array_merge( + static::$_permissions[$group] ?: array(), $perms); + } } } ?> diff --git a/include/class.ticket.php b/include/class.ticket.php index 30a5df7fd556d85d55074691e093289992d5aeab..2a14829dc83ed5d3658e7e15a7f750a04a6cc874 100644 --- a/include/class.ticket.php +++ b/include/class.ticket.php @@ -192,7 +192,7 @@ EOF; } } -RolePermission::register(/* @trans */ 'Tickets', TicketModel::getPermissions()); +RolePermission::register(/* @trans */ 'Tickets', TicketModel::getPermissions(), true); class TicketCData extends VerySimpleModel { static $meta = array(