src/pubfood.js
function(pfo) {
    var bidProviders = pfo.getBidProviders();

    // check for core api method calls
    for (var apiMethod in pfo.requiredApiCalls) {
      if (pfo.requiredApiCalls[apiMethod] === 0) {
        pfo.configErrors.push('"' + apiMethod + '" was not called');
      }
    }

    // validate through all the slots bid provider
    var slots = pfo.getSlots();
    for (var i = 0; i < slots.length; i++) {
      for (var k = 0; k < slots[i].bidProviders.length; k++) {
        var providerName = slots[i].bidProviders[k];
        // make sure there's config for each bid provider
        if (!bidProviders[providerName]) {
          pfo.configErrors.push('No configuration found for bid provider "' + providerName + '"');
        }
      }
    }

    return {
      hasError: pfo.configErrors.length > 0,
      details: pfo.configErrors
    };
  }
function(pfo) {
    var bidProviders = pfo.getBidProviders();

    // check for core api method calls
    for (var apiMethod in pfo.requiredApiCalls) {
      if (pfo.requiredApiCalls[apiMethod] === 0) {
        pfo.configErrors.push('"' + apiMethod + '" was not called');
      }
    }

    // validate through all the slots bid provider
    var slots = pfo.getSlots();
    for (var i = 0; i < slots.length; i++) {
      for (var k = 0; k < slots[i].bidProviders.length; k++) {
        var providerName = slots[i].bidProviders[k];
        // make sure there's config for each bid provider
        if (!bidProviders[providerName]) {
          pfo.configErrors.push('No configuration found for bid provider "' + providerName + '"');
        }
      }
    }

    return {
      hasError: pfo.configErrors.length > 0,
      details: pfo.configErrors
    };
  }
function ( pfo ) { var bidProviders = pfo . getBidProviders ( ) ; // check for core api method calls for ( var apiMethod in pfo . requiredApiCalls ) { if ( pfo . requiredApiCalls [ apiMethod ] === 0 ) { pfo . configErrors . push ( '"' + apiMethod + '" was not called' ) ; } } // validate through all the slots bid provider var slots = pfo . getSlots ( ) ; for ( var i = 0 ; i < slots . length ; i ++ ) { for ( var k = 0 ; k < slots [ i ] . bidProviders . length ; k ++ ) { var providerName = slots [ i ] . bidProviders [ k ] ; // make sure there's config for each bid provider if ( ! bidProviders [ providerName ] ) { pfo . configErrors . push ( 'No configuration found for bid provider "' + providerName + '"' ) ; } } } return { hasError : pfo . configErrors . length > 0 , details : pfo . configErrors } ; }
validate the api configurations
@param {object} pfo a the pubfood object
@private
@return {{hasError: boolean, details: string[]}}
validate the api configurations