Improved affiliate URL calculation.
This commit is contained in:
@@ -101,7 +101,15 @@ export function getAffiliateEntityUrl(entity, affiliate) {
|
||||
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({
|
||||
...Object.fromEntries(new URL(entityUrl).searchParams),
|
||||
...Object.fromEntries(new URLSearchParams(entityAffiliate.parameters.query)),
|
||||
@@ -110,14 +118,6 @@ export function getAffiliateEntityUrl(entity, affiliate) {
|
||||
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) {
|
||||
return entityUrl;
|
||||
}
|
||||
|
||||
2
static
2
static
Submodule static updated: ea8019c555...8f331b46e7
Reference in New Issue
Block a user