Example #1
0
 /**
  * @link http://code.google.com/p/gaforflash/source/browse/trunk/src/com/google/analytics/core/GIFRequest.as#123
  * @param \UnitedPrototype\GoogleAnalytics\Internals\ParameterHolder $p
  * @return \UnitedPrototype\GoogleAnalytics\Internals\ParameterHolder
  */
 protected function buildCookieParameters(ParameterHolder $p)
 {
     $domainHash = $this->generateDomainHash();
     $p->__utma = $domainHash . '.';
     $p->__utma .= $this->visitor->getUniqueId() . '.';
     $p->__utma .= $this->visitor->getFirstVisitTime()->format('U') . '.';
     $p->__utma .= $this->visitor->getPreviousVisitTime()->format('U') . '.';
     $p->__utma .= $this->visitor->getCurrentVisitTime()->format('U') . '.';
     $p->__utma .= $this->visitor->getVisitCount();
     $p->__utmb = $domainHash . '.';
     $p->__utmb .= $this->session->getTrackCount() . '.';
     // FIXME: What does "token" mean? I only encountered a value of 10 in my tests.
     $p->__utmb .= 10 . '.';
     $p->__utmb .= $this->session->getStartTime()->format('U');
     $p->__utmc = $domainHash;
     $cookies = array();
     $cookies[] = '__utma=' . $p->__utma . ';';
     if ($p->__utmz) {
         $cookies[] = '__utmz=' . $p->__utmz . ';';
     }
     if ($p->__utmv) {
         $cookies[] = '__utmv=' . $p->__utmv . ';';
     }
     $p->utmcc = implode('+', $cookies);
     return $p;
 }