Improved affiliate URL calculation.
This commit is contained in:
@@ -101,7 +101,15 @@ export function getAffiliateEntityUrl(entity, affiliate) {
|
|||||||
return entityUrl;
|
return entityUrl;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (entityAffiliate.parameters?.query) { // used by e.g. Bang
|
const affiliateUrl = entityAffiliate.parameters?.replaceEntity?.hostname === new URL(entityUrl).hostname
|
||||||
|
? entityAffiliate.parameters.replaceEntity.url
|
||||||
|
: entityAffiliate.url;
|
||||||
|
|
||||||
|
if (affiliateUrl && (entity.id === entityAffiliate.entityId || entityUrl === entity.parent?.url)) {
|
||||||
|
return affiliateUrl;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (entityAffiliate.parameters?.query) {
|
||||||
const newParams = new URLSearchParams({
|
const newParams = new URLSearchParams({
|
||||||
...Object.fromEntries(new URL(entityUrl).searchParams),
|
...Object.fromEntries(new URL(entityUrl).searchParams),
|
||||||
...Object.fromEntries(new URLSearchParams(entityAffiliate.parameters.query)),
|
...Object.fromEntries(new URLSearchParams(entityAffiliate.parameters.query)),
|
||||||
@@ -110,14 +118,6 @@ export function getAffiliateEntityUrl(entity, affiliate) {
|
|||||||
return `${entityUrl}?${newParams.toString()}`;
|
return `${entityUrl}?${newParams.toString()}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
const affiliateUrl = entityAffiliate.parameters?.replaceEntity?.hostname === new URL(entityUrl).hostname
|
|
||||||
? entityAffiliate.parameters.replaceEntity.url
|
|
||||||
: entityAffiliate.url;
|
|
||||||
|
|
||||||
if (entity.id === entityAffiliate.entityId || entityUrl === entity.parent?.url) {
|
|
||||||
return affiliateUrl;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (entity.type === 'network' || entity.isIndependent) {
|
if (entity.type === 'network' || entity.isIndependent) {
|
||||||
return entityUrl;
|
return entityUrl;
|
||||||
}
|
}
|
||||||
|
|||||||
2
static
2
static
Submodule static updated: ea8019c555...8f331b46e7
Reference in New Issue
Block a user