public function getParam($name)
{
static $supportedParams = array('_refts' => array(0, 'int'), '_ref' => array('', 'string'), '_rcn' => array('', 'string'), '_rck' => array('', 'string'), '_idts' => array(0, 'int'), '_viewts' => array(0, 'int'), '_ects' => array(0, 'int'), '_idvc' => array(1, 'int'), 'url' => array('', 'string'), 'urlref' => array('', 'string'), 'res' => array(self::UNKNOWN_RESOLUTION, 'string'), 'idgoal' => array(-1, 'int'), 'ping' => array(0, 'int'), 'bots' => array(0, 'int'), 'dp' => array(0, 'int'), 'rec' => array(0, 'int'), 'new_visit' => array(0, 'int'), 'ec_id' => array('', 'string'), 'ec_st' => array(false, 'float'), 'ec_tx' => array(false, 'float'), 'ec_sh' => array(false, 'float'), 'ec_dt' => array(false, 'float'), 'ec_items' => array('', 'json'), 'e_c' => array('', 'string'), 'e_a' => array('', 'string'), 'e_n' => array('', 'string'), 'e_v' => array(false, 'float'), 'cip' => array('', 'string'), 'cdt' => array('', 'string'), 'cid' => array('', 'string'), 'uid' => array('', 'string'), 'cs' => array('', 'string'), 'download' => array('', 'string'), 'link' => array('', 'string'), 'action_name' => array('', 'string'), 'search' => array('', 'string'), 'search_cat' => array('', 'string'), 'pv_id' => array('', 'string'), 'search_count' => array(-1, 'int'), 'gt_ms' => array(-1, 'int'), 'c_p' => array('', 'string'), 'c_n' => array('', 'string'), 'c_t' => array('', 'string'), 'c_i' => array('', 'string'));
if (isset($this->paramsCache[$name])) {
return $this->paramsCache[$name];
}
if (!isset($supportedParams[$name])) {
throw new Exception("Requested parameter {$name} is not a known Tracking API Parameter.");
}
$paramDefaultValue = $supportedParams[$name][0];
$paramType = $supportedParams[$name][1];
if ($this->hasParam($name)) {
$this->paramsCache[$name] = Common::getRequestVar($name, $paramDefaultValue, $paramType, $this->params);
} else {
$this->paramsCache[$name] = $paramDefaultValue;
}
return $this->paramsCache[$name];
}