Skip to content
This repository has been archived by the owner on Sep 30, 2024. It is now read-only.

Commit

Permalink
Merge branch 'release/2.0.3'
Browse files Browse the repository at this point in the history
Release/2.0.3
  • Loading branch information
MdNadimHossain committed Mar 24, 2021
2 parents 90894c2 + 48bbd87 commit 1c45464
Showing 1 changed file with 51 additions and 0 deletions.
51 changes: 51 additions & 0 deletions tide_site.module
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,11 @@ use Drupal\tide_site\TideSitePathAliasListBuilder;
* Implements hook_entity_bundle_create().
*/
function tide_site_entity_bundle_create($entity_type_id, $bundle) {
// Don't do anything else during config sync.
if (\Drupal::isConfigSyncing()) {
return;
}

/** @var \Drupal\tide_site\TideSiteFields $fields_helper */
$fields_helper = \Drupal::service('tide_site.fields');

Expand Down Expand Up @@ -795,3 +800,49 @@ function tide_site_share_link_token_view_alter(array &$build, EntityInterface $t
}
}
}

/**
* Implements hook_tide_card_link_enhancer_undo_transform_alter().
*
* @see Drupal\tide_landing_page\Plugin\jsonapi\FieldEnhancer\CardLinkEnhancer::doUndoTransform()
*/
function tide_site_tide_card_link_enhancer_undo_transform_alter(&$data, &$context) {
if (empty($data['pid']) || empty($data['url'])) {
return;
}

/** @var \Drupal\tide_site\TideSiteHelper $helper */
$helper = \Drupal::service('tide_site.helper');
/** @var \Drupal\tide_site\AliasStorageHelper $alias_helper */
$alias_helper = \Drupal::service('tide_site.alias_storage_helper');

$data['origin_alias'] = $data['alias'];
$data['alias'] = $alias_helper->getPathAliasWithoutSitePrefix($data);

/** @var \Drupal\path_alias\Entity\PathAlias $path_entity */
$path_entity = PathAlias::load($data['pid']);
if ($path_entity) {
$node = $alias_helper->getNodeFromPathEntity($path_entity);
if ($node) {
// Get the Site ID parameter.
$request = \Drupal::request();
$site_id = $request->get('site');
if (!$site_id) {
return;
}

// The URL from Tide API is already relative.
$data['origin_url'] = $data['url'];
// Check if the link belongs to the current site.
if ($helper->isEntityBelongToSite($node, $site_id)) {
$site_url = '';
}
else {
$site_url = $helper->getEntityPrimarySiteBaseUrl($node);
$data['url'] = $helper->getNodeUrlFromPrimarySite($node);
}
// Remove site prefix from the URL.
$data['url'] = $alias_helper->getPathAliasWithoutSitePrefix(['alias' => $data['url']], $site_url);
}
}
}

0 comments on commit 1c45464

Please sign in to comment.