Added parameter affiliates.

This commit is contained in:
DebaucheryLibrarian
2021-07-12 01:41:18 +02:00
parent 8967907893
commit 488d1082e4
6 changed files with 27 additions and 3 deletions

View File

@@ -149,8 +149,15 @@ async function fetchEntity(scroll = true) {
this.pageTitle = entity.name;
const campaign = entity.campaigns.find(campaignX => !campaignX.banner);
this.entityUrl = campaign?.url || campaign?.affiliate?.url || entity.url;
const campaign = entity.campaigns.find(campaignX => !campaignX.banner)
|| entity.parent?.campaigns.find(campaignX => !campaignX.banner);
const affiliateParams = new URLSearchParams({
...(entity.url && Object.fromEntries(new URL(entity.url).searchParams)), // preserve any query in entity URL, e.g. ?siteId=5
...(campaign?.affiliate?.parameters && Object.fromEntries(new URLSearchParams(campaign.affiliate.parameters))), // append affiliate parameters
}).toString();
this.entityUrl = campaign?.url || campaign?.affiliate?.url || `${entity.url}${campaign?.affiliate?.parameters ? `?${affiliateParams}` : ''}`;
if (scroll && this.$refs.filter?.$el) {
this.$refs.filter.$el.scrollIntoView();