Compare commits
2 Commits
5291b11c1f
...
3b3eea193a
Author | SHA1 | Date |
---|---|---|
|
3b3eea193a | |
|
25ce0fe1ec |
|
@ -340,6 +340,7 @@ function updateFilter(prop, value, reload = true) {
|
|||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
flex-shrink: 0;
|
||||
margin-bottom: .5rem;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
{
|
||||
"name": "traxxx-web",
|
||||
"version": "0.25.1",
|
||||
"version": "0.25.2",
|
||||
"lockfileVersion": 2,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"version": "0.25.1",
|
||||
"version": "0.25.2",
|
||||
"dependencies": {
|
||||
"@brillout/json-serializer": "^0.5.8",
|
||||
"@dicebear/collection": "^7.0.5",
|
||||
|
|
|
@ -77,5 +77,5 @@
|
|||
"postcss-custom-media": "^10.0.2",
|
||||
"postcss-nesting": "^12.0.2"
|
||||
},
|
||||
"version": "0.25.1"
|
||||
"version": "0.25.2"
|
||||
}
|
||||
|
|
|
@ -57,12 +57,28 @@ export async function getRandomCampaign(options = {}, context = {}) {
|
|||
return true;
|
||||
});
|
||||
|
||||
const primaryCampaigns = validCampaigns.filter((campaign) => campaign.entity.id === options.entityIds?.[0]);
|
||||
const campaignsByEntityId = validCampaigns.reduce((acc, campaign) => {
|
||||
const entityId = campaign.entity.parent?.id || campaign.entity.id;
|
||||
|
||||
if (!acc[entityId]) {
|
||||
acc[entityId] = [];
|
||||
}
|
||||
|
||||
acc[entityId].push(campaign);
|
||||
|
||||
return acc;
|
||||
}, {});
|
||||
|
||||
// randomize entities first to ensure fair exposure for entities with fewer banners
|
||||
const entityIds = Object.keys(campaignsByEntityId);
|
||||
const randomEntityCampaigns = campaignsByEntityId[entityIds[crypto.randomInt(entityIds.length)]];
|
||||
|
||||
const primaryCampaigns = randomEntityCampaigns.filter((campaign) => campaign.entity.id === options.entityIds?.[0]);
|
||||
|
||||
if (validCampaigns.length > 0) {
|
||||
const randomCampaign = primaryCampaigns.length > 0
|
||||
? primaryCampaigns[crypto.randomInt(primaryCampaigns.length)]
|
||||
: validCampaigns[crypto.randomInt(validCampaigns.length)];
|
||||
const randomCampaign = (primaryCampaigns.length > 0 ? primaryCampaigns[crypto.randomInt(primaryCampaigns.length)] : null)
|
||||
|| (randomEntityCampaigns.length > 0 ? randomEntityCampaigns[crypto.randomInt(randomEntityCampaigns.length)] : null)
|
||||
|| validCampaigns[crypto.randomInt(validCampaigns.length)];
|
||||
|
||||
return randomCampaign;
|
||||
}
|
||||
|
|
2
static
2
static
|
@ -1 +1 @@
|
|||
Subproject commit 6289c5ff5707aac96d306f29805c322393164d3a
|
||||
Subproject commit 76242feb7b3e75bcc581d9b19ee509c6e01a87aa
|
Loading…
Reference in New Issue