Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

multiformat size validation checks #1964

Merged
merged 3 commits into from
Jan 5, 2018
Merged

Conversation

jsnellbaker
Copy link
Collaborator

@jsnellbaker jsnellbaker commented Dec 14, 2017

Type of change

  • Feature

Description of change

Add new checks to validate/support declaring size attributes within the mediaType.banner|video|native objects and using these values in place of the adUnits.sizes value. Summary of changes/expected usage (for testing) for each mediaType is listed below:

  • mediaTypes.banner.sizes accepts an array of sizes (either [300, 250] or [[300, 250],[300, 600]]). If the mediaTypes.banner object is present, but sizes is left out - the banner object gets rejected and is removed from the request. At this point, the request would fall back to original behavior (where it assumes a request with no mediaTypes object is a banner); note it will use the adUnits.sizes value in this case. As an additional note - banner width/height sizes must be defined within the bid response object. This validation already exists within the bidderFactory.js file, so no additional changes were made in support of this requirement.

  • mediaTypes.video.playerSize accepts a single array for the WxH of the player (ie [640, 480]). This is an optional field for the mediaTypes.video object, but when it's declared it can only contain one size. If this setting is present, this size will replace the original adUnits.sizes to ensure the player ignores the original value. If the playerSize is misconfigured, we will reject the mediaTypes.video.playerSize attribute from the request (the rest of the video object remains). We are not validating video bid response to have a defined width/height.

  • mediaTypes.native.image.sizes and/or mediaTypes.native.image.aspect_ratios each accept an array of sizes (either single or multiple like banner). Either of these attributes can be present, both can be present, or neither can be present within the mediaTypes.native.image object. If they are present, we are simply validating they are using an array declaration. If they are not configured correctly, then the mediaTypes.native.image.sizes|aspect_ratios attribute is removed from the request (the rest of the native.image object remains).

  • mediaTypes.native.icon.sizes can accept an array of sizes (either single or multiple). This is an optional field. The same logic done for the mediaTypes.native.image applies here as well.

  • For both mediaTypes.native.image and mediaTypes.native.icon objects, we are validating the bid response has a corresponding defined height/width (if the image/icon objects exists). If the dimensions are not present in the supplied object, the bid is rejected. Currently the value in adUnits.sizes is supplied in the request, but it's basically ignored in the subsequent bid response. This functionality hasn't been altered.

  • Added a deprecation warning message when the adUnits.sizes field is defined/used in the original request object. The message currently states:
    Usage of adUnits.sizes will eventually be deprecated. Please define size dimensions within the corresponding area of the mediaTypes. (eg mediaTypes.banner.sizes).

    Other information

    RAD-1954 and related sub-tasks for original requirements.

Copy link
Member

@mkendall07 mkendall07 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great start! Left a few comments on code structure. Also please add unit tests

utils.logWarn('Usage of adUnits.sizes will eventually be deprecated. Please define size dimensions within the corresponding area of the mediaTypes.<object> (eg mediaTypes.banner.sizes).');
}

if (adUnit.mediaTypes) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

generally recommend combining conditions to reduce the number of nested if conditions. For example you could combine into if (adUnit.mediaTypes && adUnit.mediaTypes.banner)

Also since you are doing a lot of testing of on adUnit.mediaTypes - you can also assign this to a var:
const mediaTypes = adUnit.mediaTypes; and that will shorten the conditions:
if (mediaTypes && mediaTypes.banner) {...}

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey @mkendall07 In regards to the condition breakdown, I made them so heavily layered to avoid have the checks run when they shouldn't. As an example if I were to combine `adUnit.mediaTypes && adUnit.mediaTypes.banner), this condition would fail for anyone trying to serve a video or native ad (as the banner doesn't exist) and they would see the subsequent error/warning messages in the console log for something they weren't intentionally using. The same applied when I tried to combine some of the inner checks with the parent object (eg adUnit.mediaTypes.native.image && adUnit.mediaTypes.native.image.size). If they were to intentionally not use the image asset, they would get the warning message because half the condition would fail.

If there's another way to handle this type of setup while still supporting ideal failure conditions, please let me know.

I'll look into establishing variables though to help lessen the length of these statements.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Had a talk with Matt separately. Will make some changes where applicable.

if (adUnit.mediaTypes.video) {
if (adUnit.mediaTypes.video.playerSize) {
if (
Array.isArray(adUnit.mediaTypes.video.playerSize) &&
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

could also do a assignment here for video to make it easier to read the logic.

!isNaN(adUnit.mediaTypes.video.playerSize[0])) {
adUnit.sizes = adUnit.mediaTypes.video.playerSize;
} else {
utils.logError('Detected incorrect configuration of mediaTypes.video.playerSize. Please specify only one set of dimensions in a format like: [640, 480]');
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

when you delete something (video in this case) make sure you add that into the warn message. I.E. "mediaType.video has been removed from this request. "

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll update the messages accordingly.

@jsnellbaker
Copy link
Collaborator Author

@mkendall07 I submitted some changes in lieu of the provided feedback (including the unit tests). Please let me know of any additional feedback. Thanks.

Copy link
Collaborator

@matthewlane matthewlane left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great @jsnellbaker, really good PR notes too! During testing I found a section of the appnexus adapter that should be updated: right now, this section always sets values for native image and icons. Those values can be undefined if the server doesn't respond with anything, but since the appnexus adapter always sets an image and icon object on the native bid response, this causes the new validation in native.js to fail. In that section of the appnexus adapter, changing bid.native.icon/image to be set conditionally only if they are on the nativeAd object might do the trick

@ghost ghost assigned jsnellbaker Jan 4, 2018
@ghost ghost added the in progress label Jan 4, 2018
@jsnellbaker
Copy link
Collaborator Author

@matthewlane Thanks for the review/feedback. I made an update to the appnexusBidAdapter.js file along what you suggested. Can you take a look and let me know your thoughts? Thanks.

@mkendall07 mkendall07 merged commit 87ae6ce into master Jan 5, 2018
@mkendall07 mkendall07 deleted the multiformat_size_checks branch January 5, 2018 18:31
Pupis pushed a commit to adform/Prebid.js that referenced this pull request Jan 10, 2018
* initial commit for multiformat size validation checks

* adding unit tests and changes to checkBidRequestSizes function

* updates to appnexusBidAdapter
Millerrok pushed a commit to Vertamedia/Prebid.js that referenced this pull request Jan 23, 2018
* 'master' of https://github.com/prebid/Prebid.js: (23 commits)
  Update Atomx adapter for Prebid v1.0 (prebid#2026)
  Add vi bid adapter (prebid#2020)
  Add eplanningBidAdapter (prebid#2003)
  OpenX Adapter: Update to support mediaTypes field, instead of the deprecated mediaType field (prebid#1974)
  Separate bids & won calls (prebid#2015)
  1.0 adapter support for mantis (prebid#1840)
  Media.net adapter added (prebid#2038)
  GumGum Adapter for Prebid.js 1.0 (prebid#1966)
  Serverbid Bid Adapter: updated docs and ad sizes (prebid#2023)
  Adding districtm as an alias (prebid#2018)
  Use sudo to workaround Travis regression (prebid#2041)
  Fix uncached video bids triggering callback early (prebid#2017)
  Re-implemented RhythmOne audit beacon in prebid 1.0 interface (prebid#1953)
  Add NasmediaAdmixer adapter for Perbid.js 1.0 (prebid#1937)
  Update Adform adapter to Prebid v1.0 (prebid#1947)
  Upgrade Admixer adapter for Prebid 1.0 (prebid#1755)
  multiformat size validation checks (prebid#1964)
  Gjirafa Bidder Adapter (prebid#1944)
  pin gulp-connect at non-broken version (prebid#2008)
  Added dynamic ttl property for One Display and One Mobile. (prebid#2004)
  ...
jaiminpanchal27 pushed a commit that referenced this pull request Feb 6, 2018
* bid response adId same as bidId

* test

* update adform bid adapter

* update unit tests

* Added adform adapter description file

* updated tests

* Another tests update

* Add auctionId

* Update adapter for auctionId

* add auctionId to adformBidAdapter

* Final updates to fit 1.0 version

* update docs and integration example

* Do not mutate original validBidRequests

* use atob and btoa instead of custom made module

* Renaming one query string parameter

* XDomainRequest.send exception fix (#1942)

* Added YIELDONE Bid Adapter for Prebid.js 1.0 (#1900)

* Added YIELDONE Bid Adapter for Prebid.js 1.0

* Update yieldoneBidAdapter.md

change placementId to 44082

* Changed to get size from bid.sizes

* fix sizes array

* Add user-facing docs reminder to PR template (#1956)

* allow non-mappable sizes to be passed and used in rubicon adapter (#1893)

* Typo correction of YIELDONE md file (#1954)

* Added YIELDONE Bid Adapter for Prebid.js 1.0

* Update yieldoneBidAdapter.md

change placementId to 44082

* Changed to get size from bid.sizes

* fix sizes array

* Fix a typo

* Serverbid bid adapter: update alias config (#1963)

* use auctionId instead of requestId (#1968)

* Add freewheel ssp bidder adapter for prebid 1.0 (#1793)

* add stickyadsTV bidder adapter

* init unit test file

* ad some unit tests

* fix unit test on ad format with parameters

* add some unit tests

* add unit tests on getBid method

* add some test cases in unit tests

* minor fix on component id tag.

* remove adapters-sticky.json test file

* use top most accessible window instead of window.top

* Pass in the bid request in the createBid call.

* use top most accessible window instead of window.top

* add unit tests

* update unit tests

* fix unit test.

* fix CI build

* add alias freewheel-ssp

* update unit tests on bidderCode value

* fix component id values and add unit tests

* allws to use any outstream format.

* fix ASLoader on futur outstream format versions

* minor: fix code format.

* update unit tests

* minor fix code format

* minor: add missing new line at eof

* replace StickyAdsTVAdapter by freewheel ssp bd adapter (for prebid 1.0)

* remove old stickyadstv unittest spec.

* fix server response parsing if sent as object with 'body' field

* use the vastXml field for video mediatype

* add user sync pixel in freewheel ssp adapter

* remove all console log calls (replaced using util helper)

* remove useless bidderCode (automatically added by the bidderFactory)

* Return the SYNC pixel to be added in the page by Prebid.js

* remove instance level properties to enable concurrent bids with the same adapter instance.

* fix the request apss through and corresponding unit tests

* fix 'freeheelssp' typo

* + fixed endpoint request data property names - width to w and height to h (#1955)

+ updated unit test for the adapter to comply with the property name changes

* Added iQM Bid Adapter for Prebid.js 1.0 (#1880)

* Added iQM Bid Adapter for Prebid.js 1.0

* Modified URL from http to https

* Removed geo function which was fetching user location.

* Remove stray console.log (#1975)

* Remove duplicate request id and fix empty response from getHighesCpmBids, getAdserverTargeting (#1970)

* Removed requestId and added auctionId

* Updated module fixtures to use auctionId and not requestId

* remove request id from external bid object and fix bug for empty result in public api

* use auctionId instead of requestId

* fixed lint errors

* [Add BidAdapter] rxrtb adapter for Perbid.js 1.0 (#1950)

* Add: rxrtb prebidAdapter

* Update: params for test

* Update: code format

* Update: code format

* Update: code format

* ServerBid Server BidAdapter (#1819)

* ServerBid Server BidAdapter

Allow S2S configuration with ServerBid.

* Updates to meet 1.0 callBids/config changes.

* Fix linting issues.

* added hb_source to default keys (#1969)

* added hb_source

* dropped function to add hb_source since it is now default key

* fixed lint error

* Prebid 1.1.0 Release

* Increment pre version

* S2s defaults fix in serverbidServerBidAdapter (#1986)

* removed s2s defaults

* start timestamp was missing on s2s requests

* remove hardcoded localhost port for tests (#1988)

* Fixes unit tests in browsers other than chrome (#1987)

* Fixes unit tests in browsers other than chrome

* fixed lint errors

* Prebid 1.1.1 Release

* Add note about docs needed before merge (#1959)

* Add note about docs needed before merge

* Update pr_review.md

* Update pr_review.md

* Update pr_review.md

* Adding optional width and height to display parameters  (#1998)

* adding optional size

* no tabs

* TrustX adapter update (#1979)

* Add trustx adapter and tests for it

* update integration example

* Update trustx adapter

* Post-review fixes of Trustx adapter

* Code improvement for trustx adapter: changed default price type from gross to net

* Update TrustX adapter to support the 1.0 version

* Make requested changes for TrustX adapter

* Updated markdown file for TrustX adapter

* Fix TrustX adapter and spec file

* Update TrustX adapter: r parameter was added to ad request as cache buster

* Serverbid Bid Adapter: Add new ad sizes (#1983)

* Added dynamic ttl property for One Display and One Mobile. (#2004)

* pin gulp-connect at non-broken version (#2008)

* pin gulp-connect at non-broken version

* updated yarn.lock to specify pinned gulp-connect

* Gjirafa Bidder Adapter (#1944)

* Added Gjirafa adapter

* Add gjirafa adapter unit test

* adapter update

* New line

* Requested changes

* change hello_world.html to one bid

* change hello_world.html to one bid

* Dropping changes in gitignore and hello_world example

* hello_world changes

* Drop hello_world and gitignore

* multiformat size validation checks (#1964)

* initial commit for multiformat size validation checks

* adding unit tests and changes to checkBidRequestSizes function

* updates to appnexusBidAdapter

* Upgrade Admixer adapter for Prebid 1.0 (#1755)

* Migrating to Prebid 1.0

* Migrating to Prebid 1.0

* Fix spec

* Add NasmediaAdmixer adapter for Perbid.js 1.0 (#1937)

* add NasmediaAdmixer adapter for Perbid.js 1.0

* add NasmediaAdmixer adapter for Perbid.js 1.0

* add NasmediaAdmixer adapter for Perbid.js 1.0

* add NasmediaAdmixer adapter for Perbid.js 1.0

* add NasmediaAdmixer adapter for Perbid.js 1.0

* add NasmediaAdmixer adapter for Perbid.js 1.0

* Updated stid and unit tests
jsnellbaker pushed a commit that referenced this pull request Apr 13, 2018
* bid response adId same as bidId

* test

* update adform bid adapter

* update unit tests

* Added adform adapter description file

* updated tests

* Another tests update

* Add auctionId

* Update adapter for auctionId

* add auctionId to adformBidAdapter

* Final updates to fit 1.0 version

* update docs and integration example

* Do not mutate original validBidRequests

* use atob and btoa instead of custom made module

* Renaming one query string parameter

* XDomainRequest.send exception fix (#1942)

* Added YIELDONE Bid Adapter for Prebid.js 1.0 (#1900)

* Added YIELDONE Bid Adapter for Prebid.js 1.0

* Update yieldoneBidAdapter.md

change placementId to 44082

* Changed to get size from bid.sizes

* fix sizes array

* Add user-facing docs reminder to PR template (#1956)

* allow non-mappable sizes to be passed and used in rubicon adapter (#1893)

* Typo correction of YIELDONE md file (#1954)

* Added YIELDONE Bid Adapter for Prebid.js 1.0

* Update yieldoneBidAdapter.md

change placementId to 44082

* Changed to get size from bid.sizes

* fix sizes array

* Fix a typo

* Serverbid bid adapter: update alias config (#1963)

* use auctionId instead of requestId (#1968)

* Add freewheel ssp bidder adapter for prebid 1.0 (#1793)

* add stickyadsTV bidder adapter

* init unit test file

* ad some unit tests

* fix unit test on ad format with parameters

* add some unit tests

* add unit tests on getBid method

* add some test cases in unit tests

* minor fix on component id tag.

* remove adapters-sticky.json test file

* use top most accessible window instead of window.top

* Pass in the bid request in the createBid call.

* use top most accessible window instead of window.top

* add unit tests

* update unit tests

* fix unit test.

* fix CI build

* add alias freewheel-ssp

* update unit tests on bidderCode value

* fix component id values and add unit tests

* allws to use any outstream format.

* fix ASLoader on futur outstream format versions

* minor: fix code format.

* update unit tests

* minor fix code format

* minor: add missing new line at eof

* replace StickyAdsTVAdapter by freewheel ssp bd adapter (for prebid 1.0)

* remove old stickyadstv unittest spec.

* fix server response parsing if sent as object with 'body' field

* use the vastXml field for video mediatype

* add user sync pixel in freewheel ssp adapter

* remove all console log calls (replaced using util helper)

* remove useless bidderCode (automatically added by the bidderFactory)

* Return the SYNC pixel to be added in the page by Prebid.js

* remove instance level properties to enable concurrent bids with the same adapter instance.

* fix the request apss through and corresponding unit tests

* fix 'freeheelssp' typo

* + fixed endpoint request data property names - width to w and height to h (#1955)

+ updated unit test for the adapter to comply with the property name changes

* Added iQM Bid Adapter for Prebid.js 1.0 (#1880)

* Added iQM Bid Adapter for Prebid.js 1.0

* Modified URL from http to https

* Removed geo function which was fetching user location.

* Remove stray console.log (#1975)

* Remove duplicate request id and fix empty response from getHighesCpmBids, getAdserverTargeting (#1970)

* Removed requestId and added auctionId

* Updated module fixtures to use auctionId and not requestId

* remove request id from external bid object and fix bug for empty result in public api

* use auctionId instead of requestId

* fixed lint errors

* [Add BidAdapter] rxrtb adapter for Perbid.js 1.0 (#1950)

* Add: rxrtb prebidAdapter

* Update: params for test

* Update: code format

* Update: code format

* Update: code format

* ServerBid Server BidAdapter (#1819)

* ServerBid Server BidAdapter

Allow S2S configuration with ServerBid.

* Updates to meet 1.0 callBids/config changes.

* Fix linting issues.

* added hb_source to default keys (#1969)

* added hb_source

* dropped function to add hb_source since it is now default key

* fixed lint error

* Prebid 1.1.0 Release

* Increment pre version

* S2s defaults fix in serverbidServerBidAdapter (#1986)

* removed s2s defaults

* start timestamp was missing on s2s requests

* remove hardcoded localhost port for tests (#1988)

* Fixes unit tests in browsers other than chrome (#1987)

* Fixes unit tests in browsers other than chrome

* fixed lint errors

* Prebid 1.1.1 Release

* Add note about docs needed before merge (#1959)

* Add note about docs needed before merge

* Update pr_review.md

* Update pr_review.md

* Update pr_review.md

* Adding optional width and height to display parameters  (#1998)

* adding optional size

* no tabs

* TrustX adapter update (#1979)

* Add trustx adapter and tests for it

* update integration example

* Update trustx adapter

* Post-review fixes of Trustx adapter

* Code improvement for trustx adapter: changed default price type from gross to net

* Update TrustX adapter to support the 1.0 version

* Make requested changes for TrustX adapter

* Updated markdown file for TrustX adapter

* Fix TrustX adapter and spec file

* Update TrustX adapter: r parameter was added to ad request as cache buster

* Serverbid Bid Adapter: Add new ad sizes (#1983)

* Added dynamic ttl property for One Display and One Mobile. (#2004)

* pin gulp-connect at non-broken version (#2008)

* pin gulp-connect at non-broken version

* updated yarn.lock to specify pinned gulp-connect

* Gjirafa Bidder Adapter (#1944)

* Added Gjirafa adapter

* Add gjirafa adapter unit test

* adapter update

* New line

* Requested changes

* change hello_world.html to one bid

* change hello_world.html to one bid

* Dropping changes in gitignore and hello_world example

* hello_world changes

* Drop hello_world and gitignore

* multiformat size validation checks (#1964)

* initial commit for multiformat size validation checks

* adding unit tests and changes to checkBidRequestSizes function

* updates to appnexusBidAdapter

* Upgrade Admixer adapter for Prebid 1.0 (#1755)

* Migrating to Prebid 1.0

* Migrating to Prebid 1.0

* Fix spec

* Add NasmediaAdmixer adapter for Perbid.js 1.0 (#1937)

* add NasmediaAdmixer adapter for Perbid.js 1.0

* add NasmediaAdmixer adapter for Perbid.js 1.0

* add NasmediaAdmixer adapter for Perbid.js 1.0

* add NasmediaAdmixer adapter for Perbid.js 1.0

* add NasmediaAdmixer adapter for Perbid.js 1.0

* add NasmediaAdmixer adapter for Perbid.js 1.0

* Added price type global param, changed default value to gross.

* Updated tests

* some console.logs

* Keep the same names

* Update description
jsnellbaker pushed a commit that referenced this pull request Apr 27, 2018
* bid response adId same as bidId

* test

* update adform bid adapter

* update unit tests

* Added adform adapter description file

* updated tests

* Another tests update

* Add auctionId

* Update adapter for auctionId

* add auctionId to adformBidAdapter

* Final updates to fit 1.0 version

* update docs and integration example

* Do not mutate original validBidRequests

* use atob and btoa instead of custom made module

* Renaming one query string parameter

* XDomainRequest.send exception fix (#1942)

* Added YIELDONE Bid Adapter for Prebid.js 1.0 (#1900)

* Added YIELDONE Bid Adapter for Prebid.js 1.0

* Update yieldoneBidAdapter.md

change placementId to 44082

* Changed to get size from bid.sizes

* fix sizes array

* Add user-facing docs reminder to PR template (#1956)

* allow non-mappable sizes to be passed and used in rubicon adapter (#1893)

* Typo correction of YIELDONE md file (#1954)

* Added YIELDONE Bid Adapter for Prebid.js 1.0

* Update yieldoneBidAdapter.md

change placementId to 44082

* Changed to get size from bid.sizes

* fix sizes array

* Fix a typo

* Serverbid bid adapter: update alias config (#1963)

* use auctionId instead of requestId (#1968)

* Add freewheel ssp bidder adapter for prebid 1.0 (#1793)

* add stickyadsTV bidder adapter

* init unit test file

* ad some unit tests

* fix unit test on ad format with parameters

* add some unit tests

* add unit tests on getBid method

* add some test cases in unit tests

* minor fix on component id tag.

* remove adapters-sticky.json test file

* use top most accessible window instead of window.top

* Pass in the bid request in the createBid call.

* use top most accessible window instead of window.top

* add unit tests

* update unit tests

* fix unit test.

* fix CI build

* add alias freewheel-ssp

* update unit tests on bidderCode value

* fix component id values and add unit tests

* allws to use any outstream format.

* fix ASLoader on futur outstream format versions

* minor: fix code format.

* update unit tests

* minor fix code format

* minor: add missing new line at eof

* replace StickyAdsTVAdapter by freewheel ssp bd adapter (for prebid 1.0)

* remove old stickyadstv unittest spec.

* fix server response parsing if sent as object with 'body' field

* use the vastXml field for video mediatype

* add user sync pixel in freewheel ssp adapter

* remove all console log calls (replaced using util helper)

* remove useless bidderCode (automatically added by the bidderFactory)

* Return the SYNC pixel to be added in the page by Prebid.js

* remove instance level properties to enable concurrent bids with the same adapter instance.

* fix the request apss through and corresponding unit tests

* fix 'freeheelssp' typo

* + fixed endpoint request data property names - width to w and height to h (#1955)

+ updated unit test for the adapter to comply with the property name changes

* Added iQM Bid Adapter for Prebid.js 1.0 (#1880)

* Added iQM Bid Adapter for Prebid.js 1.0

* Modified URL from http to https

* Removed geo function which was fetching user location.

* Remove stray console.log (#1975)

* Remove duplicate request id and fix empty response from getHighesCpmBids, getAdserverTargeting (#1970)

* Removed requestId and added auctionId

* Updated module fixtures to use auctionId and not requestId

* remove request id from external bid object and fix bug for empty result in public api

* use auctionId instead of requestId

* fixed lint errors

* [Add BidAdapter] rxrtb adapter for Perbid.js 1.0 (#1950)

* Add: rxrtb prebidAdapter

* Update: params for test

* Update: code format

* Update: code format

* Update: code format

* ServerBid Server BidAdapter (#1819)

* ServerBid Server BidAdapter

Allow S2S configuration with ServerBid.

* Updates to meet 1.0 callBids/config changes.

* Fix linting issues.

* added hb_source to default keys (#1969)

* added hb_source

* dropped function to add hb_source since it is now default key

* fixed lint error

* Prebid 1.1.0 Release

* Increment pre version

* S2s defaults fix in serverbidServerBidAdapter (#1986)

* removed s2s defaults

* start timestamp was missing on s2s requests

* remove hardcoded localhost port for tests (#1988)

* Fixes unit tests in browsers other than chrome (#1987)

* Fixes unit tests in browsers other than chrome

* fixed lint errors

* Prebid 1.1.1 Release

* Add note about docs needed before merge (#1959)

* Add note about docs needed before merge

* Update pr_review.md

* Update pr_review.md

* Update pr_review.md

* Adding optional width and height to display parameters  (#1998)

* adding optional size

* no tabs

* TrustX adapter update (#1979)

* Add trustx adapter and tests for it

* update integration example

* Update trustx adapter

* Post-review fixes of Trustx adapter

* Code improvement for trustx adapter: changed default price type from gross to net

* Update TrustX adapter to support the 1.0 version

* Make requested changes for TrustX adapter

* Updated markdown file for TrustX adapter

* Fix TrustX adapter and spec file

* Update TrustX adapter: r parameter was added to ad request as cache buster

* Serverbid Bid Adapter: Add new ad sizes (#1983)

* Added dynamic ttl property for One Display and One Mobile. (#2004)

* pin gulp-connect at non-broken version (#2008)

* pin gulp-connect at non-broken version

* updated yarn.lock to specify pinned gulp-connect

* Gjirafa Bidder Adapter (#1944)

* Added Gjirafa adapter

* Add gjirafa adapter unit test

* adapter update

* New line

* Requested changes

* change hello_world.html to one bid

* change hello_world.html to one bid

* Dropping changes in gitignore and hello_world example

* hello_world changes

* Drop hello_world and gitignore

* multiformat size validation checks (#1964)

* initial commit for multiformat size validation checks

* adding unit tests and changes to checkBidRequestSizes function

* updates to appnexusBidAdapter

* Upgrade Admixer adapter for Prebid 1.0 (#1755)

* Migrating to Prebid 1.0

* Migrating to Prebid 1.0

* Fix spec

* Add NasmediaAdmixer adapter for Perbid.js 1.0 (#1937)

* add NasmediaAdmixer adapter for Perbid.js 1.0

* add NasmediaAdmixer adapter for Perbid.js 1.0

* add NasmediaAdmixer adapter for Perbid.js 1.0

* add NasmediaAdmixer adapter for Perbid.js 1.0

* add NasmediaAdmixer adapter for Perbid.js 1.0

* add NasmediaAdmixer adapter for Perbid.js 1.0

* Added gdpr to adform adapter

* Added unit tests

* Updated spacing

* Update gdprConsent object due to changes in spec
mkendall07 pushed a commit that referenced this pull request May 1, 2018
* initial commit

* wip update 2

* wip update 3

* example

* clean up

* wip update 3

* hook setup for callBids

* wip update 4

* changed gdpr code to be async-like

* cleaned up the callback chain

* added iab cmp detection logic

* moved hook, reverted unit test changes, and restructed gdpr module

* renaming module from gdpr to consentManagement

* prebidserver adatper update, additional changes in module

* updated unit tests for all areas, updates to module logic and structure of consent data

* adding missing default value

* removing accidentally committed load time testing code

* changes to layout of consentManagement code and other items based on feedback

* moved unit test to different location

* finished incomplete unit test in appnexusBidAdapter_spec file

* altered CMP function call logic

* refactored consentManagement AN lookup function and added gdprDataHandler to help transfer data in auction

* some minor cleanup from previous commit

* change spacing to try to fix travis issue

* added scenario to support consentTimeout=0 skip setTimeout

* updated some comments

* refactored exit logic for module

* added support for consentRequired field in config

* remove internal consentRequired default

* minor comment fixes

* comment fixes that should be have part of last commit

* fix includes issue and added gdprConsent to getUserSyncs function

* renamed default CMP and config field to cmpApi

* wip - using postmessage to call cmp

* postMessage workflow added, removed CMP eventlistener check

* removed if statement

* cleanup; removed variable and unneeded comments

* add gdpr tests pages

* updates for 1.1 CMP spec

* remove rogue debugger in unit test

* restructured 1.1 CMP iframe code, renamed utils function, cleaned up unit tests

* GDPR support in adform adapter (#2396)

* bid response adId same as bidId

* test

* update adform bid adapter

* update unit tests

* Added adform adapter description file

* updated tests

* Another tests update

* Add auctionId

* Update adapter for auctionId

* add auctionId to adformBidAdapter

* Final updates to fit 1.0 version

* update docs and integration example

* Do not mutate original validBidRequests

* use atob and btoa instead of custom made module

* Renaming one query string parameter

* XDomainRequest.send exception fix (#1942)

* Added YIELDONE Bid Adapter for Prebid.js 1.0 (#1900)

* Added YIELDONE Bid Adapter for Prebid.js 1.0

* Update yieldoneBidAdapter.md

change placementId to 44082

* Changed to get size from bid.sizes

* fix sizes array

* Add user-facing docs reminder to PR template (#1956)

* allow non-mappable sizes to be passed and used in rubicon adapter (#1893)

* Typo correction of YIELDONE md file (#1954)

* Added YIELDONE Bid Adapter for Prebid.js 1.0

* Update yieldoneBidAdapter.md

change placementId to 44082

* Changed to get size from bid.sizes

* fix sizes array

* Fix a typo

* Serverbid bid adapter: update alias config (#1963)

* use auctionId instead of requestId (#1968)

* Add freewheel ssp bidder adapter for prebid 1.0 (#1793)

* add stickyadsTV bidder adapter

* init unit test file

* ad some unit tests

* fix unit test on ad format with parameters

* add some unit tests

* add unit tests on getBid method

* add some test cases in unit tests

* minor fix on component id tag.

* remove adapters-sticky.json test file

* use top most accessible window instead of window.top

* Pass in the bid request in the createBid call.

* use top most accessible window instead of window.top

* add unit tests

* update unit tests

* fix unit test.

* fix CI build

* add alias freewheel-ssp

* update unit tests on bidderCode value

* fix component id values and add unit tests

* allws to use any outstream format.

* fix ASLoader on futur outstream format versions

* minor: fix code format.

* update unit tests

* minor fix code format

* minor: add missing new line at eof

* replace StickyAdsTVAdapter by freewheel ssp bd adapter (for prebid 1.0)

* remove old stickyadstv unittest spec.

* fix server response parsing if sent as object with 'body' field

* use the vastXml field for video mediatype

* add user sync pixel in freewheel ssp adapter

* remove all console log calls (replaced using util helper)

* remove useless bidderCode (automatically added by the bidderFactory)

* Return the SYNC pixel to be added in the page by Prebid.js

* remove instance level properties to enable concurrent bids with the same adapter instance.

* fix the request apss through and corresponding unit tests

* fix 'freeheelssp' typo

* + fixed endpoint request data property names - width to w and height to h (#1955)

+ updated unit test for the adapter to comply with the property name changes

* Added iQM Bid Adapter for Prebid.js 1.0 (#1880)

* Added iQM Bid Adapter for Prebid.js 1.0

* Modified URL from http to https

* Removed geo function which was fetching user location.

* Remove stray console.log (#1975)

* Remove duplicate request id and fix empty response from getHighesCpmBids, getAdserverTargeting (#1970)

* Removed requestId and added auctionId

* Updated module fixtures to use auctionId and not requestId

* remove request id from external bid object and fix bug for empty result in public api

* use auctionId instead of requestId

* fixed lint errors

* [Add BidAdapter] rxrtb adapter for Perbid.js 1.0 (#1950)

* Add: rxrtb prebidAdapter

* Update: params for test

* Update: code format

* Update: code format

* Update: code format

* ServerBid Server BidAdapter (#1819)

* ServerBid Server BidAdapter

Allow S2S configuration with ServerBid.

* Updates to meet 1.0 callBids/config changes.

* Fix linting issues.

* added hb_source to default keys (#1969)

* added hb_source

* dropped function to add hb_source since it is now default key

* fixed lint error

* Prebid 1.1.0 Release

* Increment pre version

* S2s defaults fix in serverbidServerBidAdapter (#1986)

* removed s2s defaults

* start timestamp was missing on s2s requests

* remove hardcoded localhost port for tests (#1988)

* Fixes unit tests in browsers other than chrome (#1987)

* Fixes unit tests in browsers other than chrome

* fixed lint errors

* Prebid 1.1.1 Release

* Add note about docs needed before merge (#1959)

* Add note about docs needed before merge

* Update pr_review.md

* Update pr_review.md

* Update pr_review.md

* Adding optional width and height to display parameters  (#1998)

* adding optional size

* no tabs

* TrustX adapter update (#1979)

* Add trustx adapter and tests for it

* update integration example

* Update trustx adapter

* Post-review fixes of Trustx adapter

* Code improvement for trustx adapter: changed default price type from gross to net

* Update TrustX adapter to support the 1.0 version

* Make requested changes for TrustX adapter

* Updated markdown file for TrustX adapter

* Fix TrustX adapter and spec file

* Update TrustX adapter: r parameter was added to ad request as cache buster

* Serverbid Bid Adapter: Add new ad sizes (#1983)

* Added dynamic ttl property for One Display and One Mobile. (#2004)

* pin gulp-connect at non-broken version (#2008)

* pin gulp-connect at non-broken version

* updated yarn.lock to specify pinned gulp-connect

* Gjirafa Bidder Adapter (#1944)

* Added Gjirafa adapter

* Add gjirafa adapter unit test

* adapter update

* New line

* Requested changes

* change hello_world.html to one bid

* change hello_world.html to one bid

* Dropping changes in gitignore and hello_world example

* hello_world changes

* Drop hello_world and gitignore

* multiformat size validation checks (#1964)

* initial commit for multiformat size validation checks

* adding unit tests and changes to checkBidRequestSizes function

* updates to appnexusBidAdapter

* Upgrade Admixer adapter for Prebid 1.0 (#1755)

* Migrating to Prebid 1.0

* Migrating to Prebid 1.0

* Fix spec

* Add NasmediaAdmixer adapter for Perbid.js 1.0 (#1937)

* add NasmediaAdmixer adapter for Perbid.js 1.0

* add NasmediaAdmixer adapter for Perbid.js 1.0

* add NasmediaAdmixer adapter for Perbid.js 1.0

* add NasmediaAdmixer adapter for Perbid.js 1.0

* add NasmediaAdmixer adapter for Perbid.js 1.0

* add NasmediaAdmixer adapter for Perbid.js 1.0

* Added gdpr to adform adapter

* Added unit tests

* Updated spacing

* Update gdprConsent object due to changes in spec

* Add gdpr support for PubMaticBidAdapter (#2469)

* GDPR support for AOL adapter (#2443)

* Added GDPR support for AOL adapter.

* Added unit tests for AOL GDPR changes.

* Added utils for resolving object type and undefined.

* Fixed issues caused by merge.

* Made changes in AOL adapter to support gdprApplies flag.

* Removed bid floor value from test bid config.

* removing iframe example pages

* comment updates
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants