Example #1
0
 public function pushStat()
 {
     if (!isset($_SESSION['old_logged_in_value'])) {
         $_SESSION['old_logged_in_value'] = false;
     }
     if (defined("DB_DRIVER") && DB_DRIVER == "xml") {
         return;
     }
     if (!$this->enabled || $this->isStatCollected) {
         return false;
     }
     if (defined("STAT_DISABLE")) {
         if (STAT_DISABLE) {
             return false;
         }
     }
     $this->isStatCollected = true;
     $element_id = cmsController::getInstance()->getCurrentElementId();
     if ($element = umiHierarchy::getInstance()->getElement($element_id)) {
         $tags = $element->getValue("tags");
     } else {
         return false;
     }
     $stat = new statistic();
     $stat->setReferer(getServer('HTTP_REFERER'));
     $stat->setUri(getServer('REQUEST_URI'));
     $stat->setServerName(getServer('HTTP_HOST') ? getServer('HTTP_HOST') : getServer('SERVER_NAME'));
     $stat->setRemoteAddr(getServer('REMOTE_ADDR'));
     if ($users_inst = cmsController::getInstance()->getModule("users")) {
         if ($users_inst->is_auth() != $_SESSION['old_logged_in_value']) {
             $stat->doLogin();
         }
         $_SESSION['old_logged_in_value'] = $users_inst->is_auth();
     }
     if (is_array($tags)) {
         foreach ($tags as $tag) {
             $stat->event($tag);
         }
     }
     $stat->run();
 }