You are here

class CommerceCouponEntityController in Commerce Coupon 7.2

Same name and namespace in other branches
  1. 7 classes/commerce_coupon.inc \CommerceCouponEntityController

Commerce Coupon controller class.

Hierarchy

Expanded class hierarchy of CommerceCouponEntityController

1 string reference to 'CommerceCouponEntityController'
commerce_coupon_entity_info in ./commerce_coupon.module
Implements hook_entity_info().

File

includes/commerce_coupon.controller.inc, line 11
Coupon controller class.

View source
class CommerceCouponEntityController extends DrupalCommerceEntityController {
  public $code;
  public $created;
  public $bulk;
  public $type = 'discount_coupon';
  public $status;
  public $uid;

  /**
   * Create a default coupon.
   *
   * @param array $values
   *   An array of values to set, keyed by property name.
   *
   * @return object
   *   A coupon object with all default fields initialized.
   */
  public function create(array $values = array()) {
    $values += array(
      'coupon_id' => '',
      'code' => '',
      'bulk' => FALSE,
      'created' => '',
      'status' => TRUE,
      'uid' => 0,
    );
    return parent::create($values);
  }

  /**
   * Saves a coupon.
   *
   * @param object $coupon
   *   The full coupon object to save.
   * @param \DatabaseTransaction $transaction
   *   An optional transaction object.
   *
   * @return bool|int
   *   SAVED_NEW or SAVED_UPDATED depending on the operation performed.
   */
  public function save($coupon, DatabaseTransaction $transaction = NULL) {
    if (empty($coupon->{$this->idKey}) || !empty($coupon->is_new)) {

      // Set the creation timestamp if not set, for new entities.
      if (empty($coupon->created)) {
        $coupon->created = REQUEST_TIME;
      }
    }

    // Set the "changed" field.
    $coupon->changed = REQUEST_TIME;

    // Trim the code.
    $coupon->code = trim($coupon->code);
    return parent::save($coupon);
  }

  /**
   * Unserialize the data property of loaded coupons.
   */
  public function attachLoad(&$queried_coupons, $revision_id = FALSE) {
    foreach ($queried_coupons as $coupon_id => &$commerce_coupon) {
      $commerce_coupon->data = unserialize($commerce_coupon->data);
    }

    // Call the default attachLoad().
    parent::attachLoad($queried_coupons, $revision_id);
  }

}

Members

Namesort descending Modifiers Type Description Overrides
CommerceCouponEntityController::$bulk public property
CommerceCouponEntityController::$code public property
CommerceCouponEntityController::$created public property
CommerceCouponEntityController::$status public property
CommerceCouponEntityController::$type public property
CommerceCouponEntityController::$uid public property
CommerceCouponEntityController::attachLoad public function Unserialize the data property of loaded coupons. Overrides DrupalDefaultEntityController::attachLoad
CommerceCouponEntityController::create public function Create a default coupon. Overrides DrupalCommerceEntityController::create
CommerceCouponEntityController::save public function Saves a coupon. Overrides DrupalCommerceEntityController::save
DrupalCommerceEntityController::$controllerTransaction protected property Stores our transaction object, necessary for pessimistic locking to work.
DrupalCommerceEntityController::$lockedEntities protected property Stores the ids of locked entities, necessary for knowing when to release a lock by committing the transaction.
DrupalCommerceEntityController::$unchangedEntities protected property Stores the ids of unchanged entities, necessary for knowing if we're dealing with unchanged entities before acting on them.
DrupalCommerceEntityController::buildContent public function Builds a structured array representing the entity's content. Overrides EntityAPIControllerInterface::buildContent 2
DrupalCommerceEntityController::buildQuery protected function Override of DrupalDefaultEntityController::buildQuery(). Overrides DrupalDefaultEntityController::buildQuery
DrupalCommerceEntityController::delete public function Delete permanently saved entities. Overrides EntityAPIControllerInterface::delete 4
DrupalCommerceEntityController::export public function Implements EntityAPIControllerInterface. Overrides EntityAPIControllerInterface::export
DrupalCommerceEntityController::import public function Implements EntityAPIControllerInterface. Overrides EntityAPIControllerInterface::import
DrupalCommerceEntityController::invoke public function (Internal use) Invokes a hook on behalf of the entity. Overrides EntityAPIControllerInterface::invoke
DrupalCommerceEntityController::isUnchanged public function Implements DrupalCommerceEntityControllerInterface::isUnchanged(). Overrides DrupalCommerceEntityControllerInterface::isUnchanged
DrupalCommerceEntityController::releaseLock protected function Checks the list of tracked locked entities, and if it's empty, commits the transaction in order to remove the acquired locks.
DrupalCommerceEntityController::resetCache public function Implements DrupalEntityControllerInterface::resetCache(). Overrides DrupalDefaultEntityController::resetCache
DrupalCommerceEntityController::view public function Generate an array for rendering the given entities. Overrides EntityAPIControllerInterface::view
DrupalDefaultEntityController::$cache protected property Whether this entity type should use the static cache.
DrupalDefaultEntityController::$entityCache protected property Static cache of entities, keyed by entity ID.
DrupalDefaultEntityController::$entityInfo protected property Array of information about the entity.
DrupalDefaultEntityController::$entityType protected property Entity type for this controller instance.
DrupalDefaultEntityController::$hookLoadArguments protected property Additional arguments to pass to hook_TYPE_load().
DrupalDefaultEntityController::$idKey protected property Name of the entity's ID field in the entity database table.
DrupalDefaultEntityController::$revisionKey protected property Name of entity's revision database table field, if it supports revisions.
DrupalDefaultEntityController::$revisionTable protected property The table that stores revisions, if the entity supports revisions.
DrupalDefaultEntityController::cacheGet protected function Gets entities from the static cache. 1
DrupalDefaultEntityController::cacheSet protected function Stores entities in the static entity cache.
DrupalDefaultEntityController::cleanIds protected function Ensures integer entity IDs are valid.
DrupalDefaultEntityController::filterId protected function Callback for array_filter that removes non-integer IDs.
DrupalDefaultEntityController::load public function Implements DrupalEntityControllerInterface::load(). Overrides DrupalEntityControllerInterface::load
DrupalDefaultEntityController::__construct public function Constructor: sets basic variables.