function onAfterInitialise()
 {
     // Get Lifetime / Session Time from Global Configuration of Joomla!
     $config =& JFactory::getConfig();
     $lifetime = (int) $config->getValue('config.lifetime');
     $offset = (double) $config->getValue('config.offset');
     // Get duration to insert new log. Default = 15 minutes / 900 seconds
     $vlifetime = $this->params->get('session_time', 15);
     $vlifetime = min($vlifetime, $lifetime);
     $vlifetime *= 60;
     // Determine Date/Time Now
     $now = mktime();
     $hour_start = $now - $now % 3600;
     $vvisit_path = JPATH_ADMINISTRATOR . DS . "components" . DS . "com_vvisit_counter" . DS . "helpers";
     $vvisit_exists = file_exists($vvisit_path . DS . "vinaora_visitors_counter.php");
     if ($vvisit_exists) {
         require_once $vvisit_path . DS . "vinaora_visitors_counter.php";
     } else {
         return;
     }
     // Get Last Time in the table #__vvcounter_logs
     $ltime = extVinaoraVisitorsCounter::lastTimeLog();
     if (!$ltime) {
         $visits = extVinaoraVisitorsCounter::getVisitsOnline($vlifetime);
         extVinaoraVisitorsCounter::insertLog($now, $visits);
         // Update $ltime
         $ltime = $now;
     } else {
         if ($ltime < $hour_start) {
             // Get visits from Session and insert new Log
             $visits = extVinaoraVisitorsCounter::getVisitsFromSession($ltime + 1, $hour_start);
             extVinaoraVisitorsCounter::insertLog($hour_start, $visits);
             $ltime = $hour_start;
         }
         // Update $now
         $now = mktime();
         if ($now >= $ltime + $vlifetime) {
             $visits = extVinaoraVisitorsCounter::getVisitsFromSession($ltime + 1);
             extVinaoraVisitorsCounter::insertLog($now, $visits);
             $ltime = $now;
         }
     }
 }
 function &getToday()
 {
     $config =& JFactory::getConfig();
     $offset = (double) $config->getValue('config.offset');
     $lifetime = (int) $config->getValue('config.lifetime') * 60;
     $now = mktime();
     $daystart = $now - $now % 86400;
     $local_daystart = extVisitCounterDateTime::localTimeStart($daystart, $offset, "day");
     if ($now - $local_daystart < $lifetime) {
         $visits = extVinaoraVisitorsCounter::getVisitsFromSession($local_daystart);
     } else {
         $visitsLogs = extVinaoraVisitorsCounter::getVisitsFromLogs($local_daystart);
         $visitsSession = extVinaoraVisitorsCounter::getVisitsFromSession($visitsLogs['lasttime'] + 1);
         $visits = extVinaoraVisitorsCounter::array_add($visitsLogs, $visitsSession);
     }
     return $visits;
 }