You are here

class EntityTranslationBeanHandler in Bean (for Drupal 7) 7

Bean translation handler.

Overrides default behaviours for Bean properties.

Hierarchy

Expanded class hierarchy of EntityTranslationBeanHandler

1 string reference to 'EntityTranslationBeanHandler'
bean_entity_info in ./bean.module
Implements hook_entity_info().

File

includes/translation.handler.bean.inc, line 13
Bean translation handler for the translation module.

View source
class EntityTranslationBeanHandler extends EntityTranslationDefaultHandler {
  public function __construct($entity_type, $entity_info, $entity) {
    parent::__construct('bean', $entity_info, $entity);
  }
  public function removeTranslation($langcode) {
    $translations_key = $this
      ->getTranslationsKey();
    if (empty($translations_key)) {
      return;
    }
    $hook_info = array(
      'hook' => 'delete',
    );
    if (!empty($langcode)) {
      unset($this->entity->{$translations_key}->data[$langcode]);

      // Keep track that the current translation has been removed.
      $this->entity->{$translations_key}->hook[$langcode] = $hook_info;
    }
    elseif (!empty($this->entity->{$translations_key}->data)) {
      $keys = array_keys($this->entity->{$translations_key}->data);
      $values = array_fill(0, count($keys), $hook_info);

      // Keep track that the all translations have been removed.
      $this->entity->{$translations_key}->hook = array_combine($keys, $values);

      // Actually remove translations.
      $this->entity->{$translations_key}->data = array();
    }

    // Remove field translations.
    foreach (field_info_instances($this->entityType, $this->bundle) as $instance) {
      $field_name = $instance['field_name'];
      $field = field_info_field($field_name);
      if ($field['translatable']) {
        if (!empty($langcode)) {
          $this->entity->{$field_name}[$langcode] = array();
        }
        else {
          $this->entity->{$field_name} = array();
        }
      }
    }

    // Clear the cache for this entity.
    entity_get_controller($this->entityType)
      ->resetCache(array(
      $this
        ->getEntityBid(),
    ));
  }
  public function getAccess($op) {
    return entity_access($op, 'bean', $this->entity);
  }
  protected function getEntityId() {
    if (isset($this->entity->delta)) {
      return $this->entity->delta;
    }
    return parent::getEntityId();
  }
  protected function getEntityBid() {
    if (isset($this->entity->entityId)) {
      return $this->entity->entityId;
    }
    return parent::getEntityId();
  }

  /**
   * @inheritdoc
   */
  public function isNewEntity() {
    return empty($this->entityId);
  }

}

Members

Namesort descending Modifiers Type Description Overrides
EntityTranslationBeanHandler::getAccess public function Checks if the user can perform the given operation on the wrapped entity. Overrides EntityTranslationDefaultHandler::getAccess
EntityTranslationBeanHandler::getEntityBid protected function
EntityTranslationBeanHandler::getEntityId protected function Returns the entity identifier. Overrides EntityTranslationDefaultHandler::getEntityId
EntityTranslationBeanHandler::isNewEntity public function @inheritdoc Overrides EntityTranslationDefaultHandler::isNewEntity
EntityTranslationBeanHandler::removeTranslation public function Removes a translation from the translation set. Overrides EntityTranslationDefaultHandler::removeTranslation
EntityTranslationBeanHandler::__construct public function Initializes an instance of the translation handler. Overrides EntityTranslationDefaultHandler::__construct
EntityTranslationDefaultHandler::$activeLanguage protected property
EntityTranslationDefaultHandler::$basePath protected property
EntityTranslationDefaultHandler::$bundle protected property
EntityTranslationDefaultHandler::$children protected property The translation handler hierarchy storage.
EntityTranslationDefaultHandler::$editPath protected property
EntityTranslationDefaultHandler::$entity protected property
EntityTranslationDefaultHandler::$entityForm protected property 4
EntityTranslationDefaultHandler::$entityId protected property
EntityTranslationDefaultHandler::$entityInfo protected property
EntityTranslationDefaultHandler::$entityType protected property
EntityTranslationDefaultHandler::$factory protected property The translation handler factory.
EntityTranslationDefaultHandler::$outdated protected property
EntityTranslationDefaultHandler::$pathScheme protected property
EntityTranslationDefaultHandler::$pathWildcard protected property
EntityTranslationDefaultHandler::$revisionable protected property
EntityTranslationDefaultHandler::$routerMap protected property
EntityTranslationDefaultHandler::$sourceLanguage protected property
EntityTranslationDefaultHandler::$translatePath protected property
EntityTranslationDefaultHandler::$translating protected property
EntityTranslationDefaultHandler::$viewPath protected property
EntityTranslationDefaultHandler::addChild public function Overrides EntityTranslationHandlerInterface::addChild
EntityTranslationDefaultHandler::doSaveTranslations protected function Saves entity translation records to the storage.
EntityTranslationDefaultHandler::emptyTranslations protected static function Returns an empty translations data structure.
EntityTranslationDefaultHandler::entityForm public function Overrides EntityTranslationHandlerInterface::entityForm 4
EntityTranslationDefaultHandler::entityFormLanguageWidget public function Overrides EntityTranslationHandlerInterface::entityFormLanguageWidget
EntityTranslationDefaultHandler::entityFormLanguageWidgetSubmit public function Overrides EntityTranslationHandlerInterface::entityFormLanguageWidgetSubmit 2
EntityTranslationDefaultHandler::entityFormSharedElements public function Either remove access or add a translatability clue depending on the current user's "edit translation shared fields" permissions. Overrides EntityTranslationHandlerInterface::entityFormSharedElements
EntityTranslationDefaultHandler::entityFormSubmit public function Overrides EntityTranslationHandlerInterface::entityFormSubmit 1
EntityTranslationDefaultHandler::entityFormTitle protected function Returns the title to be used for the entity form page. 2
EntityTranslationDefaultHandler::entityFormValidate public function Overrides EntityTranslationHandlerInterface::entityFormValidate
EntityTranslationDefaultHandler::findMatchingPathScheme protected function Find a path scheme matching the given path.
EntityTranslationDefaultHandler::getActiveLanguage public function Returns the active language. Overrides EntityTranslationHandlerInterface::getActiveLanguage
EntityTranslationDefaultHandler::getBasePath public function Overrides EntityTranslationHandlerInterface::getBasePath
EntityTranslationDefaultHandler::getDefaultLanguage public function Overrides EntityTranslationHandlerInterface::getDefaultLanguage
EntityTranslationDefaultHandler::getEditPath public function Overrides EntityTranslationHandlerInterface::getEditPath
EntityTranslationDefaultHandler::getEntity public function Overrides EntityTranslationHandlerInterface::getEntity
EntityTranslationDefaultHandler::getEntityType public function Overrides EntityTranslationHandlerInterface::getEntityType
EntityTranslationDefaultHandler::getFormLanguage public function Retrieves the active form language. Overrides EntityTranslationHandlerInterface::getFormLanguage
EntityTranslationDefaultHandler::getLabel public function Overrides EntityTranslationHandlerInterface::getLabel
EntityTranslationDefaultHandler::getLanguage public function Overrides EntityTranslationHandlerInterface::getLanguage 1
EntityTranslationDefaultHandler::getLanguageKey public function Overrides EntityTranslationHandlerInterface::getLanguageKey 1
EntityTranslationDefaultHandler::getPathInstance protected function Returns an instance of the given path.
EntityTranslationDefaultHandler::getPathScheme public function Overrides EntityTranslationHandlerInterface::getPathScheme
EntityTranslationDefaultHandler::getSharedFieldsAccess public function Overrides EntityTranslationHandlerInterface::getSharedFieldsAccess
EntityTranslationDefaultHandler::getSourceLanguage public function Overrides EntityTranslationHandlerInterface::getSourceLanguage
EntityTranslationDefaultHandler::getStatus protected function Returns the entity accessibility. 2
EntityTranslationDefaultHandler::getTranslatePath public function Overrides EntityTranslationHandlerInterface::getTranslatePath
EntityTranslationDefaultHandler::getTranslationAccess public function Overrides EntityTranslationHandlerInterface::getTranslationAccess 1
EntityTranslationDefaultHandler::getTranslations public function Overrides EntityTranslationHandlerInterface::getTranslations
EntityTranslationDefaultHandler::getTranslationsKey protected function Returns the translation object key for the wrapped entity type.
EntityTranslationDefaultHandler::getViewPath public function Overrides EntityTranslationHandlerInterface::getViewPath
EntityTranslationDefaultHandler::initOriginalTranslation public function Overrides EntityTranslationHandlerInterface::initOriginalTranslation
EntityTranslationDefaultHandler::initPathScheme public function Overrides EntityTranslationHandlerInterface::initPathScheme
EntityTranslationDefaultHandler::initPathVariables protected function Initializes handler path variables based on the active path scheme.
EntityTranslationDefaultHandler::initTranslations public function Overrides EntityTranslationHandlerInterface::initTranslations
EntityTranslationDefaultHandler::isAliasEnabled public function Overrides EntityTranslationHandlerInterface::isAliasEnabled
EntityTranslationDefaultHandler::isEntityForm public function Overrides EntityTranslationHandlerInterface::isEntityForm
EntityTranslationDefaultHandler::isEntityTypeRevisionable public static function Returns whether the entity type is revisionable.
EntityTranslationDefaultHandler::isRevision public function Overrides EntityTranslationHandlerInterface::isRevision 1
EntityTranslationDefaultHandler::isRevisionable public function Overrides EntityTranslationHandlerInterface::isRevisionable
EntityTranslationDefaultHandler::isTranslating public function Overrides EntityTranslationHandlerInterface::isTranslating
EntityTranslationDefaultHandler::isTranslationForm protected function Returns TRUE if an entity translation is being edited.
EntityTranslationDefaultHandler::isWrappedEntity public function Overrides EntityTranslationHandlerInterface::isWrappedEntity
EntityTranslationDefaultHandler::languageSwitchLinks public static function Returns the localized links for the given path.
EntityTranslationDefaultHandler::loadMultiple public static function Read the translation data from the storage.
EntityTranslationDefaultHandler::loadTranslations public function Overrides EntityTranslationHandlerInterface::loadTranslations
EntityTranslationDefaultHandler::localTasksAlter public function Overrides EntityTranslationHandlerInterface::localTasksAlter
EntityTranslationDefaultHandler::menuForm protected function Performs alterations to the menu widget if available. 1
EntityTranslationDefaultHandler::notifyChildren protected function Proxies the specified method invocation to a child translation handler.
EntityTranslationDefaultHandler::removeChild public function Overrides EntityTranslationHandlerInterface::removeChild
EntityTranslationDefaultHandler::removeRevisionTranslations public function Overrides EntityTranslationHandlerInterface::removeRevisionTranslations
EntityTranslationDefaultHandler::removeTranslations public function Overrides EntityTranslationHandlerInterface::removeTranslations
EntityTranslationDefaultHandler::saveTranslations public function Overrides EntityTranslationHandlerInterface::saveTranslations
EntityTranslationDefaultHandler::setActiveLanguage public function Sets the active language. Overrides EntityTranslationHandlerInterface::setActiveLanguage
EntityTranslationDefaultHandler::setEntity public function Overrides EntityTranslationHandlerInterface::setEntity
EntityTranslationDefaultHandler::setFactory public function Overrides EntityTranslationHandlerInterface::setFactory
EntityTranslationDefaultHandler::setFormLanguage public function Sets the active form language. Overrides EntityTranslationHandlerInterface::setFormLanguage
EntityTranslationDefaultHandler::setOriginalLanguage public function Overrides EntityTranslationHandlerInterface::setOriginalLanguage
EntityTranslationDefaultHandler::setOutdated public function Overrides EntityTranslationHandlerInterface::setOutdated
EntityTranslationDefaultHandler::setPathScheme public function Overrides EntityTranslationHandlerInterface::setPathScheme
EntityTranslationDefaultHandler::setSourceLanguage public function Overrides EntityTranslationHandlerInterface::setSourceLanguage
EntityTranslationDefaultHandler::setTranslating public function Overrides EntityTranslationHandlerInterface::setTranslating
EntityTranslationDefaultHandler::setTranslation public function Overrides EntityTranslationHandlerInterface::setTranslation
EntityTranslationDefaultHandler::translationTabSort protected function Helper callback. Sorts language tabs by weight.
EntityTranslationDefaultHandler::updateFormLanguage protected function Update the current form language based on the submitted value.
EntityTranslationDefaultHandler::updateTranslations public function Overrides EntityTranslationHandlerInterface::updateTranslations