Documentation ¶
Index ¶
- Constants
- func QueryOperatorName(opID string, mentixHost, dataEndpoint string) (string, error)
- func QueryOperatorSites(opID string, mentixHost, dataEndpoint string) ([]string, error)
- func QuerySiteName(siteID string, fullName bool, mentixHost, dataEndpoint string) (string, error)
- type Account
- func (acc *Account) CheckScopeAccess(scope string) bool
- func (acc *Account) Cleanup()
- func (acc *Account) Clone(erasePassword bool) *Account
- func (acc *Account) Configure(other *Account) error
- func (acc *Account) Update(other *Account, setPassword bool, copyData bool) error
- func (acc *Account) UpdatePassword(pwd string) error
- type AccountData
- type AccountSettings
- type Accounts
- type FileStorage
- func (storage *FileStorage) AccountAdded(account *Account)
- func (storage *FileStorage) AccountRemoved(account *Account)
- func (storage *FileStorage) AccountUpdated(account *Account)
- func (storage *FileStorage) OperatorAdded(op *Operator)
- func (storage *FileStorage) OperatorRemoved(op *Operator)
- func (storage *FileStorage) OperatorUpdated(op *Operator)
- func (storage *FileStorage) ReadAccounts() (*Accounts, error)
- func (storage *FileStorage) ReadOperators() (*Operators, error)
- func (storage *FileStorage) WriteAccounts(accounts *Accounts) error
- func (storage *FileStorage) WriteOperators(ops *Operators) error
- type Operator
- type OperatorInformation
- type Operators
- type Site
- type SiteConfiguration
- type SiteInformation
- type Storage
Constants ¶
const ( // ScopeDefault is the default account panel scope. ScopeDefault = "" // ScopeGOCDB is used to access the GOCDB. ScopeGOCDB = "gocdb" // ScopeSites is used to access the global sites configuration. ScopeSites = "sites" )
Variables ¶
This section is empty.
Functions ¶
func QueryOperatorName ¶ added in v0.0.14
QueryOperatorName uses Mentix to query the name of an operator given by its ID.
func QueryOperatorSites ¶ added in v0.0.14
QueryOperatorSites uses Mentix to query the sites associated with the specified operator.
Types ¶
type Account ¶
type Account struct { Email string `json:"email"` Title string `json:"title"` FirstName string `json:"firstName"` LastName string `json:"lastName"` Operator string `json:"operator"` Role string `json:"role"` PhoneNumber string `json:"phoneNumber"` Password credentials.Password `json:"password"` DateCreated time.Time `json:"dateCreated"` DateModified time.Time `json:"dateModified"` Data AccountData `json:"data"` Settings AccountSettings `json:"settings"` }
Account represents a single sites account.
func NewAccount ¶
func NewAccount(email string, title, firstName, lastName string, operator, role string, phoneNumber string, password string) (*Account, error)
NewAccount creates a new sites account.
func (*Account) CheckScopeAccess ¶
CheckScopeAccess checks whether the user can access the specified scope.
func (*Account) Clone ¶
Clone creates a copy of the account; if erasePassword is set to true, the password will be cleared in the cloned object.
func (*Account) UpdatePassword ¶
UpdatePassword assigns a new password to the account, hashing it first.
type AccountData ¶
type AccountData struct { GOCDBAccess bool `json:"gocdbAccess"` SitesAccess bool `json:"sitesAccess"` }
AccountData holds additional data for a sites account.
type AccountSettings ¶
type AccountSettings struct {
ReceiveAlerts bool `json:"receiveAlerts"`
}
AccountSettings holds additional settings for a sites account.
type FileStorage ¶
type FileStorage struct { Storage // contains filtered or unexported fields }
FileStorage implements a filePath-based storage.
func NewFileStorage ¶
func NewFileStorage(conf *config.Configuration, log *zerolog.Logger) (*FileStorage, error)
NewFileStorage creates a new file storage.
func (*FileStorage) AccountAdded ¶
func (storage *FileStorage) AccountAdded(account *Account)
AccountAdded is called when an account has been added.
func (*FileStorage) AccountRemoved ¶
func (storage *FileStorage) AccountRemoved(account *Account)
AccountRemoved is called when an account has been removed.
func (*FileStorage) AccountUpdated ¶
func (storage *FileStorage) AccountUpdated(account *Account)
AccountUpdated is called when an account has been updated.
func (*FileStorage) OperatorAdded ¶ added in v0.0.14
func (storage *FileStorage) OperatorAdded(op *Operator)
OperatorAdded is called when a sites has been added.
func (*FileStorage) OperatorRemoved ¶ added in v0.0.14
func (storage *FileStorage) OperatorRemoved(op *Operator)
OperatorRemoved is called when a sites has been removed.
func (*FileStorage) OperatorUpdated ¶ added in v0.0.14
func (storage *FileStorage) OperatorUpdated(op *Operator)
OperatorUpdated is called when a sites has been updated.
func (*FileStorage) ReadAccounts ¶
func (storage *FileStorage) ReadAccounts() (*Accounts, error)
ReadAccounts reads all stored accounts into the given data object.
func (*FileStorage) ReadOperators ¶ added in v0.0.14
func (storage *FileStorage) ReadOperators() (*Operators, error)
ReadOperators reads all stored operators into the given data object.
func (*FileStorage) WriteAccounts ¶
func (storage *FileStorage) WriteAccounts(accounts *Accounts) error
WriteAccounts writes all stored accounts from the given data object.
func (*FileStorage) WriteOperators ¶ added in v0.0.14
func (storage *FileStorage) WriteOperators(ops *Operators) error
WriteOperators writes all stored operators from the given data object.
type Operator ¶ added in v0.0.14
Operator represents the global operator-specific settings stored in the service.
func NewOperator ¶ added in v0.0.14
NewOperator creates a new operator.
type OperatorInformation ¶ added in v0.0.14
type OperatorInformation struct { ID string Name string Sites []SiteInformation }
OperatorInformation holds the most basic information about an operator and its sites.
func QueryAvailableOperators ¶ added in v0.0.14
func QueryAvailableOperators(mentixHost, dataEndpoint string) ([]OperatorInformation, error)
QueryAvailableOperators uses Mentix to query a list of all available operators and sites.
type Operators ¶ added in v0.0.14
type Operators = []*Operator
Operators holds an array of operators.
type Site ¶
type Site struct { ID string `json:"id"` Config SiteConfiguration `json:"config"` }
Site represents the global sites-specific settings stored in the service.
func (*Site) Clone ¶
Clone creates a copy of the sites; if eraseCredentials is set to true, the (test user) credentials will be cleared in the cloned object.
type SiteConfiguration ¶
type SiteConfiguration struct {
TestClientCredentials credentials.Credentials `json:"testClientCredentials"`
}
SiteConfiguration stores the global configuration of a sites.
type SiteInformation ¶
SiteInformation holds the most basic information about a sites.
type Storage ¶
type Storage interface { // ReadOperators reads all stored operators into the given data object. ReadOperators() (*Operators, error) // WriteOperators writes all stored operators from the given data object. WriteOperators(ops *Operators) error // OperatorAdded is called when an operator has been added. OperatorAdded(op *Operator) // OperatorUpdated is called when an operator has been updated. OperatorUpdated(op *Operator) // OperatorRemoved is called when an operator has been removed. OperatorRemoved(op *Operator) // ReadAccounts reads all stored accounts into the given data object. ReadAccounts() (*Accounts, error) // WriteAccounts writes all stored accounts from the given data object. WriteAccounts(accounts *Accounts) error // AccountAdded is called when an account has been added. AccountAdded(account *Account) // AccountUpdated is called when an account has been updated. AccountUpdated(account *Account) // AccountRemoved is called when an account has been removed. AccountRemoved(account *Account) }
Storage defines the interface for operators and accounts storages.