GameLevel Class Reference

Inheritance diagram for GameLevel:
Item CustomFieldsModel RedBeanModel BeanModel ObservableComponent

Public Member Functions

 __toString ()
 addValue ($value)

Static Public Member Functions

static resolveByTypeAndPerson ($type, Item $person)
static resolvePersonAndAvailableTypes (Item $person, $levelTypes)
static getModuleClassName ()
static canSaveMetadata ()
static getDefaultMetadata ()
static isTypeDeletable ()
static processBonusPointsOnLevelChange (GameLevel $gameLevel, User $user)

Data Fields

const TYPE_GENERAL = 'General'
const TYPE_SALES = 'Sales'
const TYPE_NEW_BUSINESS = 'NewBusiness'
const TYPE_ACCOUNT_MANAGEMENT = 'AccountManagement'
const TYPE_COMMUNICATION = 'Communication'
const TYPE_TIME_MANAGEMENT = 'TimeManagement'

Static Protected Member Functions

static getLabel ($language=null)
static getPluralLabel ($language=null)

Detailed Description

Model for game levels.

Definition at line 40 of file GameLevel.php.


Member Function Documentation

__toString (  ) 

Returns the displayable string for the class. Should be overridden in any model that can provide a meaningful string representation of itself.

Returns:
A string.

Reimplemented from RedBeanModel.

Definition at line 73 of file GameLevel.php.

static resolveByTypeAndPerson ( type,
Item person 
) [static]

Given a point type and Item (Either User or Person), try to find an existing model. If the model does not exist, create it and populate the Item and type.

Returns:
The found or created model.
Parameters:
string $type
Item $person

Definition at line 88 of file GameLevel.php.

static resolvePersonAndAvailableTypes ( Item person,
levelTypes 
) [static]

Given an Item (Either User or Person), try to find an existing model for each type. If the model does not exist, create it and populate the Item and type.

Returns:
models found or created indexed by type.
Parameters:
Item $person
array $levelTypes - Level types

Definition at line 132 of file GameLevel.php.

static canSaveMetadata (  )  [static]

By default models cannot save their metadata, allowing them to be loaded quickly because the loading of of metadata can be avoided as much as possible. To make a model able to save its metadata override this method to return true. PUT it before the getDefaultMetadata in the derived class.

Reimplemented from RedBeanModel.

Definition at line 180 of file GameLevel.php.

static getDefaultMetadata (  )  [static]

Returns the default meta data for the class. It must be appended to the meta data from the parent model, if any.

Reimplemented from Item.

Definition at line 185 of file GameLevel.php.

static isTypeDeletable (  )  [static]

To be overriden on intermediate derived classes to return false so that deletes are not done on intermediate classes because the object relational mapping will not clean up properly. For example if User is a Person, and Person is a RedBeanModel delete should be called only on User, not on Person. So User must override isDeletable to return false.

Reimplemented from Item.

Definition at line 220 of file GameLevel.php.

addValue ( value  ) 

Add specified value.

Parameters:
int $value

Definition at line 229 of file GameLevel.php.

static processBonusPointsOnLevelChange ( GameLevel gameLevel,
User user 
) [static]

Given a user and a gameLevel, process the bonus points, if applicable for the badge. This will also process grade change points for the given badge.

Parameters:
GameBadge $gameBadge
User $user

Definition at line 241 of file GameLevel.php.

static getLabel ( language = null  )  [static, protected]

Returns the display name for the model class.

Parameters:
null | string $language
Returns:
dynamic label name based on module.

Reimplemented from RedBeanModel.

Definition at line 269 of file GameLevel.php.

static getPluralLabel ( language = null  )  [static, protected]

Returns the display name for plural of the model class.

Parameters:
null | string $language
Returns:
dynamic label name based on module.

Reimplemented from RedBeanModel.

Definition at line 279 of file GameLevel.php.


The documentation for this class was generated from the following file:
 All Data Structures Functions Variables
Generated on Fri Mar 24 07:10:26 2017