function translation_node_access

Implements hook_node_access().

File

drupal/core/modules/translation/translation.module, line 124
Manages content translations.

Code

function translation_node_access($node, $op, $account, $langcode) {
  $query = Drupal::request()->query;
  $translation = $query
    ->get('translation');
  $target = $query
    ->get('target');
  $request_has_translation_arg = !empty($translation) && !empty($target) && is_numeric($translation);
  if ($op == 'create' && $request_has_translation_arg) {
    $source_node = node_load($translation);
    if (empty($source_node) || !translation_user_can_translate_node($source_node, $account)) {
      return NODE_ACCESS_DENY;
    }
  }
  return NODE_ACCESS_IGNORE;
}