function UpdateVisitorAction() { global $_NS_TRACK_VARS; $Db =& $_NS_TRACK_VARS['Db']; $LogId =& $_NS_TRACK_VARS['LogId']; $Actions =& $_NS_TRACK_VARS['Actions']; $StId =& $_NS_TRACK_VARS['StId']; $CompanyId =& $_NS_TRACK_VARS['CompanyId']; $UpdateVisPath =& $_NS_TRACK_VARS['UpdateVisPath']; if (!NS_TRACK_MISC::ValidArr($Actions) || count($Actions) == 0) { return false; } foreach ($Actions as $ActionId => $Arr) { $UpdateVisPath = true; $Item = NS_TRACK_MISC::ValidVar($Actions[$ActionId]['Item']); if (!$LogId) { $LogId = NS_TRACK_GENERAL::GetLogRecord(); } $Query = "\n\t\t\tINSERT INTO " . NS_DB_PFX . "_tracker_" . $CompanyId . "_stat_action \n\t\t\t\t(LOG_ID, ACTION_ID, SITE_ID) VALUES\n\t\t\t\t({$LogId}, {$ActionId}, {$StId})\n\t\t"; $Db->Query($Query); $StatActionId = $Db->LastInsertId; if (NS_TRACK_MISC::ValidVar($Item) != false) { $ItemId = NS_TRACK_ACTION::GetActionItemId($Item, $CompanyId); $Query = "\n\t\t\t\tINSERT INTO " . NS_DB_PFX . "_tracker_action_set \n\t\t\t\t(STAT_ACTION_ID, ACTION_ITEM_ID, COMPANY_ID) VALUES \n\t\t\t\t({$StatActionId}, {$ItemId}, {$CompanyId})\n\t\t\t"; $Db->Query($Query); } $Item = false; } }
function ComparePathTemplate($CurrentPath = false, $Path = false, $Query = false, $Template = false) { if (NS_TRACK_ACTION::CompareStrings($CurrentPath, $Path) && NS_TRACK_ACTION::CompareTemplate($Query, $Template)) { return true; } return false; }
$Skip = NS_TRACK_MISC::ValidId($GetVars['ns_skip']) ? true : false; if ($Skip) { return NS_TRACK_GENERAL::FinishTracking(); } $ClickSubId = NS_TRACK_MISC::ValidId($GetVars[$VarCamp]) ? $GetVars[$VarCamp] : 0; if (!$ClickSubId) { $ClickSubId = NS_TRACK_CAMPAIGN::GetCampaignBySrc(NS_TRACK_MISC::ValidVar($GetVars[$VarCampSource])); } $KeyId = NS_TRACK_MISC::ValidId($GetVars[$VarKeyword]) ? $GetVars[$VarKeyword] : 0; $Keyword = NS_TRACK_MISC::ValidVar($GetVars[$VarKw]) ? $GetVars[$VarKw] : false; if ($Keyword) { $KeyId = NS_TRACK_REFERER::GetKeywordId($Keyword); } $RefSet = NS_TRACK_REFERER::GetRefererSet($RefPageArr, $Ref); $QueryId = NS_TRACK_QUERY::GetQueryId($CurrentPageArr['query']); $Actions = NS_TRACK_ACTION::GetActionIds($PageId, $CurrentPageArr); if (!$KeepNoRef && $RefSet == 0 && !NS_TRACK_MISC::ValidId($_COOKIE['ns_log']) && $ClickSubId != 0) { $Skip = true; } if ($Skip) { return NS_TRACK_GENERAL::FinishTracking(); } if ($NoDblPageLoad) { NS_TRACK_GENERAL::CheckPathDblClick(); } if ($NoDblAdvClick) { NS_TRACK_GENERAL::CheckAdvDblClick(); } if ($Skip) { return NS_TRACK_GENERAL::FinishTracking(); }
$Query = "SELECT * FROM " . NS_DB_PFX . "_tracker_site_page WHERE ID = " . $Event->PAGE_ID; $Page = $Db->Select($Query); $Site = $Db->Select("SELECT * FROM " . NS_DB_PFX . "_tracker_site WHERE ID = " . $Event->SITE_ID); $Current = "http://" . $Site->HOST; if (NS_TRACK_MISC::ValidVar($Page->PATH)) { $Current .= $Page->PATH; } else { $Current .= "/"; } if (NS_TRACK_MISC::ValidVar($NewQr)) { $Current .= "?{$NewQr}"; } NS_TRACK_MISC::Redir($Current); } if (!$CodeAction) { if (NS_TRACK_ACTION::CompareTemplate($Qr, $Event->QUERY)) { $TplGet = NS_TRACK_QUERY::ParseTemplate($Event->QUERY); $NewQr = ""; if (NS_TRACK_MISC::ValidArr($TplGet)) { foreach ($TplGet as $Key => $Value) { $NewQr .= $Key . "="; if ($Value != "*") { $NewQr .= $Value . "&"; } else { $NewQr .= $_GP[$Key] . "&"; } } } if (NS_TRACK_MISC::ValidArr($CurGet)) { foreach ($CurGet as $Key => $Value) { if (!isset($TplGet[$Key])) {