- NAME
- DESCRIPTION
  - AvailableRights
  - RightCategories
  - AddRights RIGHT, DESCRIPTION [, ...]
  - AddRightCategories RIGHT, CATEGORY [, ...]
  - id
  - Load
  - QueueCacheNeedsUpdate ( 1 )

# NAME

RT::System

# DESCRIPTION

RT::System is a simple global object used as a focal point for things that are system-wide.

It works sort of like an RT::Record, except it's really a single object that has an id of "1" when instantiated.

This gets used by the ACL system so that you can have rights for the scope "RT::System"

In the future, there will probably be other API goodness encapsulated here.

## AvailableRights

Returns a hash of available rights for this object. The keys are the right names and the values are a description of what the rights do.

This method as well returns rights of other RT objects, like RT::Queue or RT::Group. To allow users to apply those rights globally.

## RightCategories

Returns a hashref where the keys are rights for this type of object and the values are the category (General, Staff, Admin) the right falls into.

## AddRights `RIGHT`, `DESCRIPTION` [, ...]

Adds the given rights to the list of possible rights. This method should be called during server startup, not at runtime.

## AddRightCategories `RIGHT`, `CATEGORY` [, ...]

Adds the given right and category pairs to the list of right categories. This method should be called during server startup, not at runtime.

## id

Returns RT::System's id. It's 1.

## Load

Since this object is pretending to be an RT::Record, we need a load method. It does nothing

## QueueCacheNeedsUpdate ( 1 )

Attribute to decide when SelectQueue needs to flush the list of queues and retrieve new ones. Set when queues are created, enabled/disabled and on certain acl changes. Should also better understand group management.

If passed a true value, will update the attribute to be the current time.

← Back to index