You are here

class Invite in Invite 7.4

Invite class.

Hierarchy

Expanded class hierarchy of Invite

5 string references to 'Invite'
InviteExpireTest::getInfo in tests/InviteExpireTest.test
invite_entity_info in ./invite.module
Implements hook_entity_info().
invite_menu in ./invite.module
Implements hook_menu().
invite_rules_action_info in ./invite.rules.inc
Implements hook_rules_action_info().
invite_rules_event_info in ./invite.rules.inc
Implements hook_rules_event_info().

File

includes/invite.controller.inc, line 102

View source
class Invite extends Entity {

  /**
   * The user id of the profile owner.
   *
   * @var int
   */
  public $uid;

  /**
   *
   */
  public function type_details() {
    return invite_get_types($this->type);
  }

  /**
   * Returns the user owning this profile.
   */
  public function inviter() {
    return user_load($this->uid);
  }

  /**
   * Returns the user owning this profile.
   */
  public function invitee() {
    if (!empty($this->invitee)) {
      return user_load($this->invitee);
    }
    else {
      return FALSE;
    }
  }

  /**
   *
   */
  public function joinLink() {
    return url('invite/accept/' . $this->reg_code, array(
      'absolute' => TRUE,
    ));
  }

  /**
   *
   */
  public function sendInvite() {
    $result = FALSE;
    if (!empty($this->sendNotification)) {

      // Notify other modules.
      entity_get_controller('invite')
        ->invoke('send', $this);
      $result = TRUE;
    }
    else {
      $result = TRUE;
    }
    return $result;
  }

  /**
   * Sets a new user owning this profile.
   *
   * @param $account
   *   The user account object or the user account id (uid).
   */
  public function setUser($account) {
    $this->uid = is_object($account) ? $account->uid : $account;
  }

  /**
   *
   */
  public function __construct($values = array()) {
    if (isset($values['inviter'])) {
      $this
        ->setUser($values['inviter']);
      unset($values['inviter']);
    }
    if (!isset($values['label']) && isset($values['type']) && ($type = invite_get_types($values['type']))) {

      // Initialize the label with the type label, so newly created profiles
      // have that as interim label.
      $values['label'] = $type->label;
    }
    $this->sendNotification = TRUE;
    parent::__construct($values, 'invite');
  }

  /**
   *
   */
  public function status($readable = FALSE) {
    $options = invite_get_status_options();
    return $readable ? $options[$this->status] : $this->status;
  }

  /**
   *
   */
  protected function defaultLabel() {
    $entity = entity_metadata_wrapper('invite', $this);
    return t('Invitation #@number', array(
      '@number' => $this
        ->identifier(),
    ));
  }

  /**
   *
   */
  protected function defaultUri() {
    return array(
      'path' => 'invite/' . $this
        ->identifier(),
    );
  }

  /**
   *
   */
  public function save() {
    return parent::save();
  }

}

Members

Namesort descending Modifiers Type Description Overrides
Entity::$defaultLabel protected property 1
Entity::$entityInfo protected property
Entity::$entityType protected property
Entity::$idKey protected property
Entity::$wrapper protected property
Entity::buildContent public function Builds a structured array representing the entity's content. Overrides EntityInterface::buildContent 1
Entity::bundle public function Returns the bundle of the entity. Overrides EntityInterface::bundle
Entity::delete public function Permanently deletes the entity. Overrides EntityInterface::delete
Entity::entityInfo public function Returns the info of the type of the entity. Overrides EntityInterface::entityInfo
Entity::entityType public function Returns the type of the entity. Overrides EntityInterface::entityType
Entity::export public function Exports the entity. Overrides EntityInterface::export
Entity::getTranslation public function Gets the raw, translated value of a property or field. Overrides EntityInterface::getTranslation
Entity::hasStatus public function Checks if the entity has a certain exportable status. Overrides EntityInterface::hasStatus
Entity::identifier public function Returns the entity identifier, i.e. the entities name or numeric id. Overrides EntityInterface::identifier
Entity::internalIdentifier public function Returns the internal, numeric identifier. Overrides EntityInterface::internalIdentifier
Entity::isDefaultRevision public function Checks whether the entity is the default revision. Overrides EntityInterface::isDefaultRevision
Entity::label public function Returns the label of the entity. Overrides EntityInterface::label
Entity::setUp protected function Set up the object instance on construction or unserializiation.
Entity::uri public function Returns the uri of the entity just as entity_uri(). Overrides EntityInterface::uri
Entity::view public function Generate an array for rendering the entity. Overrides EntityInterface::view
Entity::wrapper public function Returns the EntityMetadataWrapper of the entity. Overrides EntityInterface::wrapper
Entity::__sleep public function Magic method to only serialize what's necessary.
Entity::__wakeup public function Magic method to invoke setUp() on unserialization.
Invite::$uid public property The user id of the profile owner.
Invite::defaultLabel protected function Defines the entity label if the 'entity_class_label' callback is used. Overrides Entity::defaultLabel
Invite::defaultUri protected function Override this in order to implement a custom default URI and specify 'entity_class_uri' as 'uri callback' hook_entity_info(). Overrides Entity::defaultUri
Invite::invitee public function Returns the user owning this profile.
Invite::inviter public function Returns the user owning this profile.
Invite::joinLink public function
Invite::save public function Permanently saves the entity. Overrides Entity::save
Invite::sendInvite public function
Invite::setUser public function Sets a new user owning this profile.
Invite::status public function
Invite::type_details public function
Invite::__construct public function Overrides Entity::__construct