From d93baf80abe40e8482575816c5cf77e1be9eac31 Mon Sep 17 00:00:00 2001 From: DebaucheryLibrarian Date: Fri, 6 Feb 2026 21:43:26 +0100 Subject: [PATCH] Improved affiliate URL calculation. --- src/affiliates.js | 18 +++++++++--------- static | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/affiliates.js b/src/affiliates.js index 1261ab5..4ddb9c0 100644 --- a/src/affiliates.js +++ b/src/affiliates.js @@ -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; } diff --git a/static b/static index ea8019c..8f331b4 160000 --- a/static +++ b/static @@ -1 +1 @@ -Subproject commit ea8019c55589c9d991b7623575725217802f4a0f +Subproject commit 8f331b46e75f0863224083a7a5f03e5191a3f060