|
1 | 1 | import { ortbConverter } from '../libraries/ortbConverter/converter.js';
|
2 | 2 | import { registerBidder } from '../src/adapters/bidderFactory.js';
|
3 | 3 | import { BANNER, VIDEO } from '../src/mediaTypes.js';
|
4 |
| -import { deepAccess, deepSetValue, isFn, isNumber, isPlainObject, logInfo, logWarn, logError, triggerPixel } from '../src/utils.js'; |
| 4 | +import { deepAccess, deepSetValue, isNumber, logInfo, logWarn, logError, triggerPixel } from '../src/utils.js'; |
| 5 | +import { getBidFloor } from '../libraries/currencyUtils/floor.js'; |
5 | 6 | import { getStorageManager } from '../src/storageManager.js';
|
6 | 7 | import { Renderer } from '../src/Renderer.js';
|
7 | 8 | import { getGptSlotInfoForAdUnitCode } from '../libraries/gptUtils/gptUtils.js';
|
@@ -37,14 +38,13 @@ const converter = ortbConverter({
|
37 | 38 |
|
38 | 39 | // There is no default floor. bidfloor is set only
|
39 | 40 | // if the priceFloors module is activated and returns a valid floor.
|
40 |
| - const floor = getMinFloor(bidRequest); |
| 41 | + const floor = getBidFloor(bidRequest); |
41 | 42 | if (isNumber(floor)) {
|
42 | 43 | imp.bidfloor = floor;
|
43 | 44 | }
|
44 | 45 |
|
45 |
| - // Add floor price |
46 |
| - if (bidRequest.params.bidFloor) { |
47 |
| - imp.bidfloor = parseFloat(bidRequest.params.bidFloor); |
| 46 | + // Add floor currency |
| 47 | + if (bidRequest.params.bidFloorCur) { |
48 | 48 | imp.bidfloorcur = bidRequest.params.bidFloorCur || DEFAULT_CURRENCY;
|
49 | 49 | }
|
50 | 50 |
|
@@ -304,58 +304,6 @@ export const spec = {
|
304 | 304 | },
|
305 | 305 | };
|
306 | 306 |
|
307 |
| -/** |
308 |
| - * Returns floor from priceFloors module or MediaKey default value. |
309 |
| - * |
310 |
| - * @param {*} bid a Prebid.js bid (request) object |
311 |
| - * @param {string} mediaType the mediaType or the wildcard '*' |
312 |
| - * @param {string|Array} size the size array or the wildcard '*' |
313 |
| - * @returns {number|boolean} |
314 |
| - */ |
315 |
| -function getFloor(bid, mediaType, size = '*') { |
316 |
| - if (!isFn(bid.getFloor)) { |
317 |
| - return false; |
318 |
| - } |
319 |
| - |
320 |
| - if (spec.supportedMediaTypes.indexOf(mediaType) === -1) { |
321 |
| - logWarn( |
322 |
| - `${BIDDER_CODE}: Unable to detect floor price for unsupported mediaType ${mediaType}. No floor will be used.` |
323 |
| - ); |
324 |
| - |
325 |
| - return false; |
326 |
| - } |
327 |
| - |
328 |
| - const floor = bid.getFloor({ |
329 |
| - currency: DEFAULT_CURRENCY, |
330 |
| - mediaType, |
331 |
| - size, |
332 |
| - }); |
333 |
| - |
334 |
| - return isPlainObject(floor) && !isNaN(floor.floor) && floor.currency === DEFAULT_CURRENCY |
335 |
| - ? floor.floor |
336 |
| - : false; |
337 |
| -} |
338 |
| - |
339 |
| -function getMinFloor(bid) { |
340 |
| - const floors = []; |
341 |
| - |
342 |
| - for (let mediaType in bid.mediaTypes) { |
343 |
| - const floor = getFloor(bid, mediaType); |
344 |
| - |
345 |
| - if (isNumber(floor)) { |
346 |
| - floors.push(floor); |
347 |
| - } |
348 |
| - } |
349 |
| - |
350 |
| - if (!floors.length) { |
351 |
| - return false; |
352 |
| - } |
353 |
| - |
354 |
| - return floors.reduce((a, b) => { |
355 |
| - return Math.min(a, b); |
356 |
| - }); |
357 |
| -} |
358 |
| - |
359 | 307 | /**
|
360 | 308 | * Build sync URL with privacy parameters
|
361 | 309 | */
|
|
0 commit comments