// defaultProps settings and extra code for tooltips using ajax





dw_Tooltip.defaultProps = {

    content_source: 'ajax',

	hoverable: true,

    actuatorQual: 'queryVal',

    queryVal: 'prodID'

}



dw_Tooltip.request = null;

dw_Tooltip.requestFailure = function(req) {

    // message on failure (req.statusText not always available for firefox)

    var msg = '.';

    dw_Tooltip.respRecd = true;

    dw_Tooltip.writeTip(msg, true);

    dw_Tooltip.adjust();

}



// Called from dw_Tooltip.getActuatorInfo for ajax requests

// id is value of dw_Tooltip.defaultProps.queryVal for actuator

// useful for holding retrieved data in content_vars

function dw_TooltipRequest(reqData, id) {

    // page that performs the query 

    var url = 'lookup.php';

    // append request data and timestamp (to avoid caching)

    // dw_Tooltip.getActuatorInfo could pass tgt if entire query string needed for request

    url += '?' + reqData + '&rnd=' + new Date().getTime(); 

    

    // abort any pending tooltip request

    if ( dw_Tooltip.request ) {

        dw_Tooltip.request.abort();

    }

    // set success and failure handlers

    var callback = {

        success: function(req) { dw_updateTooltip(req, id); },

        failure: dw_Tooltip.requestFailure

    }

    

    dw_Tooltip.request = dw_XHR.makeRequest(url, callback );

}



function dw_updateTooltip(req, id) {

    // assumes responseText is tooltip content 

    var msg = req.responseText;

    

    // if json or xml result, could  parse here 

    

    // could use id to save result in content_vars 

    

    

    dw_Tooltip.respRecd = true;

    dw_Tooltip.writeTip(msg, true);

    dw_Tooltip.adjust();

    dw_Tooltip.request = null; // dereference when done

}



dw_Tooltip.on_hide = function() {

    if (dw_Tooltip.request) {

        dw_Tooltip.request.abort();

        dw_Tooltip.resetReqFlags();

    }

} 


