예제 #1
0
 public function insertVisit($visit = array())
 {
     $defaultProperties = array('idsite' => 1, 'idvisitor' => $this->getDummyVisitorId(), 'visit_last_action_time' => '2012-01-01 00:00:00', 'config_id' => $this->getDummyVisitorId(), 'location_ip' => IPUtils::stringToBinaryIP('1.2.3.4'), 'visitor_localtime' => '2012-01-01 00:00:00', 'location_country' => 'xx', 'config_os' => 'xxx', 'visit_total_events' => 0, 'visitor_days_since_last' => 0, 'config_quicktime' => 0, 'config_pdf' => 0, 'config_realplayer' => 0, 'config_silverlight' => 0, 'config_windowsmedia' => 0, 'config_java' => 0, 'config_gears' => 0, 'config_resolution' => 0, 'config_resolution' => '', 'config_cookie' => 0, 'config_director' => 0, 'config_flash' => 0, 'config_browser_version' => '', 'visitor_count_visits' => 1, 'visitor_returning' => 0, 'visit_total_time' => 123, 'visit_entry_idaction_name' => 0, 'visit_entry_idaction_url' => 0, 'visitor_days_since_order' => 0, 'visitor_days_since_first' => 0, 'visit_first_action_time' => '2012-01-01 00:00:00', 'visit_goal_buyer' => 0, 'visit_goal_converted' => 0, 'visit_exit_idaction_name' => 0, 'referer_url' => '', 'location_browser_lang' => 'xx', 'config_browser_engine' => '', 'config_browser_name' => '', 'referer_type' => 0, 'referer_name' => '', 'visit_total_actions' => 0, 'visit_total_searches' => 0);
     $visit = array_merge($defaultProperties, $visit);
     $this->insertInto('log_visit', $visit);
     $idVisit = Db::fetchOne("SELECT LAST_INSERT_ID()");
     return $this->getVisit($idVisit, $allColumns = true);
 }
예제 #2
0
 /**
  * @group IpIsKnownBot
  */
 public function testIsVisitor_ipIsKnownBot()
 {
     $isIpBot = array('66.249.85.36' => true, '66.249.91.150' => true, '64.233.172.1' => true, '64.233.172.200' => true, '66.249.88.216' => true, '66.249.83.204' => true, '64.233.172.6' => true, '1.202.218.8' => true, '66.248.91.150' => false, '66.250.91.150' => false, '66.249.2.1' => false, '66.249.60.1' => false);
     $idsite = API::getInstance()->addSite("name", "http://piwik.net/");
     $request = new Request(array('idsite' => $idsite, 'bots' => 0));
     foreach ($isIpBot as $ip => $isBot) {
         $excluded = new VisitExcluded_public($request, IPUtils::stringToBinaryIP($ip));
         $this->assertSame($isBot, $excluded->public_isNonHumanBot(), $ip);
     }
 }
예제 #3
0
파일: Request.php 프로젝트: normimuc/piwik
 public function getIp()
 {
     return IPUtils::stringToBinaryIP($this->getIpString());
 }
예제 #4
0
        }
    }
    $f = fopen($clickheatConf['logPath'] . $final . '/' . date('Y-m-d') . '.log', 'a');
}
if (is_resource($f)) {
    $logMe = true;
    if (isset($_COOKIE['clickheat-admin'])) {
        echo 'OK, but click not logged as you selected it in the admin panel ("Log my clicks/Enregistrer mes clics")';
        $logMe = false;
    } elseif (IS_PIWIK_MODULE === true) {
        $site = (string) (int) $site;
        // prevents path injection
        if (file_exists(PIWIK_INCLUDE_PATH . '/tmp/cache/tracker/' . $site . '.php')) {
            require_once PIWIK_INCLUDE_PATH . '/tmp/cache/tracker/' . $site . '.php';
            if (isset($content['excluded_ips'])) {
                $ip = IPUtils::stringToBinaryIP(\Piwik\Network\IP::fromStringIP(IP::getIpFromHeader()));
                if (isIpInRange($ip, $content['excluded_ips']) === true) {
                    echo 'OK, but click not logged as you prevent this IP to be tracked in Piwik\'s configuration';
                    $logMe = false;
                }
            }
        }
    }
    if ($logMe === true) {
        echo 'OK';
        fputs($f, (int) $_GET['x'] . '|' . (int) $_GET['y'] . '|' . (int) $_GET['w'] . '|' . $browser . '|' . (int) $_GET['c'] . "\n");
    }
    fclose($f);
} else {
    echo 'KO, file not writable';
}
 private function insertVisit($visit = array())
 {
     $defaultProperties = array('location_ip' => IPUtils::stringToBinaryIP(self::TEST_IP));
     return $this->logInserter->insertVisit(array_merge($defaultProperties, $visit));
 }
예제 #6
0
 public function test_getIp()
 {
     $ip = $_SERVER['REMOTE_ADDR'];
     $this->assertEquals(IPUtils::stringToBinaryIP($ip), $this->request->getIp());
 }