/**
  * Used to update update activities of user or a guest
  *
  * @access private
  * @return void
  */
 private function updateActivity($c, $actionUrl)
 {
     if (!in_array($actionUrl, explode(', ', USERS_NOT_AIMED_ACTIONS))) {
         $useragent = $this->Session->read('Config.userAgent');
         $user_id = $this->User->id();
         $last_action = $this->Session->read('Config.time');
         $last_url = $c->here;
         $user_browser = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : "";
         $ip = isset($_SERVER['REMOTE_ADDR']) ? $_SERVER['REMOTE_ADDR'] : "";
         App::import("Model", "Users.UserActivity");
         $activityModel = new UserActivity();
         $activityModel->id = null;
         $activity = $activityModel->findByUseragent($useragent);
         if (!empty($activity['UserActivity']['logout'])) {
             $c->redirect(array('plugin' => 'users', 'controller' => 'users', 'action' => 'logout'));
         }
         if (!empty($res['UserActivity']['deleted'])) {
             $c->redirect(array('plugin' => 'users', 'controller' => 'users', 'action' => 'logout'));
         }
         $status = $user_id ? 1 : 0;
         $activity['UserActivity']['useragent'] = $useragent;
         $activity['UserActivity']['user_id'] = $user_id;
         $activity['UserActivity']['last_action'] = $last_action;
         $activity['UserActivity']['last_url'] = $last_url;
         $activity['UserActivity']['params'] = json_encode($c->request->params);
         $activity['UserActivity']['user_browser'] = $user_browser;
         $activity['UserActivity']['ip_address'] = $ip;
         $activity['UserActivity']['status'] = $status;
         unset($activity['UserActivity']['modified']);
         $activityModel->save($activity, false);
     }
 }