public static function registerView($tableName, $columnName, $id) { $dateTime = ViewsTrack::getDateTime(); if ($id == '') { $id = 0; } $views = 1; $visits = ViewsTrack::getVisitsCount(); $uniqueUsers = ViewsTrack::getUniqueUserCount(); $avgTimeOnPage = ViewsTrack::getAvgTimeOnPage(); $locationId = Yii::app()->user->getLocationId(); if ($locationId == '') { $locationId = 0; } $sql = "INSERT DELAYED INTO {$tableName}(wlabel_id, advertiser_id, date_created, {$columnName}, location_id, views, unique_users, time_on_page, visits)" . " VALUES (" . Yii::app()->user->getWhitelabelId() . ", 0, '" . $dateTime . "', {$id}, {$locationId}, {$views}, {$uniqueUsers}, {$avgTimeOnPage}, {$visits})" . " ON DUPLICATE KEY UPDATE views=views+{$views}, unique_users=unique_users+{$uniqueUsers}, time_on_page=time_on_page+{$avgTimeOnPage}, visits=visits+{$visits}"; $dbCommand = Yii::app()->db->createCommand($sql); $results = $dbCommand->execute(); }