You are here

function social_tagging_entity_delete in Open Social 10.1.x

Same name and namespace in other branches
  1. 8.9 modules/social_features/social_tagging/social_tagging.module \social_tagging_entity_delete()
  2. 8 modules/social_features/social_tagging/social_tagging.module \social_tagging_entity_delete()
  3. 8.2 modules/social_features/social_tagging/social_tagging.module \social_tagging_entity_delete()
  4. 8.3 modules/social_features/social_tagging/social_tagging.module \social_tagging_entity_delete()
  5. 8.4 modules/social_features/social_tagging/social_tagging.module \social_tagging_entity_delete()
  6. 8.5 modules/social_features/social_tagging/social_tagging.module \social_tagging_entity_delete()
  7. 8.6 modules/social_features/social_tagging/social_tagging.module \social_tagging_entity_delete()
  8. 8.7 modules/social_features/social_tagging/social_tagging.module \social_tagging_entity_delete()
  9. 8.8 modules/social_features/social_tagging/social_tagging.module \social_tagging_entity_delete()
  10. 10.3.x modules/social_features/social_tagging/social_tagging.module \social_tagging_entity_delete()
  11. 10.0.x modules/social_features/social_tagging/social_tagging.module \social_tagging_entity_delete()
  12. 10.2.x modules/social_features/social_tagging/social_tagging.module \social_tagging_entity_delete()

Implements hook_entity_delete().

File

modules/social_features/social_tagging/social_tagging.module, line 350
Contains social_tagging.module.

Code

function social_tagging_entity_delete(EntityInterface $entity) {

  // When a term from the social_tagging vocbulary is deleted, remove from node.

  /** @var \Drupal\taxonomy\Entity\Term $entity */
  if ($entity instanceof Term && $entity
    ->bundle() === 'social_tagging') {

    /* @see: taxonomy_taxonomy_term_delete(), delete from node field. */

    // We need to use `\Drupal\Core\Database\Database::getConnection()`
    // because we might not yet have access to the container here.
    Database::getConnection()
      ->delete('node__social_tagging')
      ->condition('social_tagging_target_id', $entity
      ->id())
      ->execute();
    Database::getConnection()
      ->delete('node_revision__social_tagging')
      ->condition('social_tagging_target_id', $entity
      ->id())
      ->execute();
  }
}