You are here

class UserpointsTransactionMetadataController in User Points 7.2

Extends property metadata for the Userpoints Transaction entity.

Hierarchy

Expanded class hierarchy of UserpointsTransactionMetadataController

1 string reference to 'UserpointsTransactionMetadataController'
userpoints_entity_info in ./userpoints.module
Implements hook_entity_info().

File

./userpoints.transaction.inc, line 1296
Contains the UserpointsTransaction and related classes.

View source
class UserpointsTransactionMetadataController extends EntityDefaultMetadataController {

  /**
   * Overrides EntityDefaultMetadataController::entityPropertyInfo().
   */
  public function entityPropertyInfo() {
    $info = parent::entityPropertyInfo();
    $properties =& $info['userpoints_transaction']['properties'];
    $properties['user'] = array(
      'type' => 'user',
      'label' => t('User'),
      'description' => t('The user that will receive the !points', userpoints_translation()),
      'setter callback' => 'userpoints_transaction_property_set',
      'getter callback' => 'userpoints_transaction_property_get',
      'schema field' => 'uid',
    );
    $properties['points']['label'] = t('!Points', userpoints_translation());
    $properties['points']['description'] = t('Amount of !points to give or take.', userpoints_translation());
    $properties['type'] = array(
      'label' => t('!Points transaction type', userpoints_translation()),
      'description' => t('The bundle entity for !points transactions.', userpoints_translation()),
      'type' => 'userpoints_transaction_type',
    );
    $properties['points_abs'] = array(
      'label' => t('!Points absolute', userpoints_translation()),
      'description' => t('The absolute (positive) amount of !points of this transaction.', userpoints_translation()),
      'type' => 'integer',
      'getter callback' => 'userpoints_transaction_get_points_absolute',
    );
    $properties['tid'] = array(
      'label' => t('!Points category', userpoints_translation()),
      'description' => t('The category to which these transaction belongs.'),
      'options list' => 'userpoints_rules_get_categories',
    ) + $properties['tid'];
    $properties['entity'] = array(
      'label' => t('Entity'),
      'type' => 'entity',
      'description' => t('The entity to which this transaction refers.'),
      'optional' => TRUE,
      'getter callback' => 'userpoints_transaction_property_get',
    );
    $properties['description'] = array(
      'label' => t('Description'),
      'description' => t('Can contain the reason why the points have been given.'),
      'optional' => TRUE,
    ) + $properties['description'];
    $properties['reference'] = array(
      'label' => t('Reference'),
      'description' => t('Can contain a reference for this transaction.'),
      'optional' => TRUE,
    ) + $properties['reference'];
    $properties['operation'] = array(
      'label' => t('Operation'),
      'description' => t('Describes the operation (Insert/Remove/...).'),
    ) + $properties['operation'];
    $properties['reason'] = array(
      'label' => t('Reason'),
      'type' => 'text',
      'description' => t('The reason why the points were granted.'),
      'getter callback' => 'userpoints_transaction_property_get',
    );
    $properties['parent_txn_id'] = array(
      'label' => t('Parent transaction'),
      'description' => t('ID of the parent transaction.'),
    ) + $properties['parent_txn_id'];
    $properties['entity_id'] = array(
      'label' => t('Entity ID'),
      'description' => t('Id of the referenced entity.'),
    ) + $properties['entity_id'];
    $properties['entity_type'] = array(
      'label' => t('Entity type'),
      'description' => t('Type of the referenced entity.'),
    ) + $properties['entity_type'];
    $properties['uid'] = array(
      'label' => t('User ID'),
      'description' => t('ID of the user who received the point.'),
    ) + $properties['uid'];
    $properties['approver_uid'] = array(
      'label' => t('Approver UID'),
      'description' => t('User ID of the user who approved the transaction.'),
    ) + $properties['approver_uid'];
    $properties['time_stamp'] = array(
      'label' => t('Timestamp'),
      'type' => 'date',
      'description' => t('Time when the points were given.'),
    ) + $properties['time_stamp'];
    $properties['changed'] = array(
      'label' => t('Changed'),
      'type' => 'date',
      'description' => t('Time when the transaction was last changed.'),
    ) + $properties['time_stamp'];
    $properties['expired'] = array(
      'label' => t('Expired'),
      'type' => 'boolean',
      'description' => t('If the transaction is expired.'),
    ) + $properties['expired'];
    $properties['expirydate'] = array(
      'label' => t('Expiry date'),
      'type' => 'date',
      'description' => t('Time when the points will expire.'),
    ) + $properties['expirydate'];
    $properties['display'] = array(
      'label' => t('Display'),
      'type' => 'boolean',
      'description' => t('Whether to show a message to the user for this transaction or not.'),
      'setter callback' => 'userpoints_transaction_property_set',
      'getter callback' => 'userpoints_transaction_property_get',
    );
    $properties['status'] = array(
      'label' => t('Status'),
      'description' => t('Status of this transaction.'),
      'options list' => 'userpoints_txn_status',
    ) + $properties['status'];

    // Add default setter callback.
    foreach ($properties as $key => &$property) {
      if (isset($property['setter callback'])) {
        continue;
      }

      // Exclude some read only properties.
      if (in_array($key, array(
        'display',
        'reason',
        'entity',
        'points_abs',
      ))) {
        continue;
      }
      $property['setter callback'] = 'entity_property_verbatim_set';
    }
    return $info;
  }

}

Members

Namesort descending Modifiers Type Description Overrides
EntityDefaultMetadataController::$type protected property
EntityDefaultMetadataController::bundleOptionsList public static function A options list callback returning all bundles for an entity type.
EntityDefaultMetadataController::convertSchema protected function Return a set of properties for an entity based on the schema definition
EntityDefaultMetadataController::__construct public function
UserpointsTransactionMetadataController::entityPropertyInfo public function Overrides EntityDefaultMetadataController::entityPropertyInfo(). Overrides EntityDefaultMetadataController::entityPropertyInfo