You are here

class ProfileType in Profile 2 7.2

Same name and namespace in other branches
  1. 7 profile2.module \ProfileType

Use a separate class for profile types so we can specify some defaults modules may alter.

Hierarchy

Expanded class hierarchy of ProfileType

1 string reference to 'ProfileType'
profile2_entity_info in ./profile2.module
Implements hook_entity_info().

File

./profile2.module, line 1310
Support for configurable user profiles.

View source
class ProfileType extends Entity {

  /**
   * Whether the profile type appears in the user categories.
   */
  public $userCategory = TRUE;

  /**
   * Whether the profile is displayed on the user account page.
   */
  public $userView = TRUE;
  public $type;
  public $label;
  public $weight = 0;
  public function __construct($values = array()) {
    parent::__construct($values, 'profile2_type');
  }

  /**
   * Returns whether the profile type is locked, thus may not be deleted or renamed.
   *
   * Profile types provided in code are automatically treated as locked, as well
   * as any fixed profile type.
   */
  public function isLocked() {
    return isset($this->status) && empty($this->is_new) && ($this->status & ENTITY_IN_CODE || $this->status & ENTITY_FIXED);
  }

  /**
   * Overridden, to introduce the method for old entity API versions (BC).
   *
   * @todo Remove once we bump the required entity API version.
   */
  public function getTranslation($property, $langcode = NULL) {
    if (module_exists('profile2_i18n')) {
      return parent::getTranslation($property, $langcode);
    }
    return $this->{$property};
  }

  /**
   * Overrides Entity::save().
   */
  public function save() {
    parent::save();

    // Clear field info caches such that any changes to extra fields get
    // reflected.
    field_info_cache_clear();
  }

}

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::defaultLabel protected function Defines the entity label if the 'entity_class_label' callback is used. 1
Entity::defaultUri protected function Override this in order to implement a custom default URI and specify 'entity_class_uri' as 'uri callback' hook_entity_info().
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::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.
ProfileType::$label public property
ProfileType::$type public property
ProfileType::$userCategory public property Whether the profile type appears in the user categories.
ProfileType::$userView public property Whether the profile is displayed on the user account page.
ProfileType::$weight public property
ProfileType::getTranslation public function Overridden, to introduce the method for old entity API versions (BC). Overrides Entity::getTranslation
ProfileType::isLocked public function Returns whether the profile type is locked, thus may not be deleted or renamed.
ProfileType::save public function Overrides Entity::save(). Overrides Entity::save
ProfileType::__construct public function Overrides Entity::__construct