diff -ruN visitors.original/visitors.module visitors/visitors.module
--- visitors.original/visitors.module	2009-03-30 02:22:51.000000000 +0700
+++ visitors/visitors.module	2009-04-21 01:25:59.000000000 +0700
@@ -169,10 +169,9 @@
 
 function visitors_exit()
 {
-	drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
-
 	global $user;
-	
+	if ($user->uid == '1' && variable_get('visitors_exclude_root_user', 1))
+		return;
 	$visitors_ip = ip2long(visitors_get_ip());
 	$visitors_url = urldecode('http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']);
 	$visitors_path = $_GET['q'];
@@ -246,6 +245,69 @@
 			$output .= '<li>'.t('Unique Visitor: ').$uniq.'</li>';
 		}
 		
+		if (variable_get('visitors_show_last_day', 0)) {
+			$sql = 'SELECT count(*) as total 
+					FROM 
+					(
+						SELECT visitors_ip 
+						FROM {visitors} 
+						WHERE visitors_date_time > (UNIX_TIMESTAMP(NOW())-86400)
+						GROUP BY visitors_ip
+					) v';
+			
+			$data    = db_fetch_object(db_query($sql));
+			$hosts   = $data->total;
+			
+			$sql = 'SELECT count(*) as total FROM {visitors} v WHERE visitors_date_time > (UNIX_TIMESTAMP(NOW())-86400)';
+			
+			$data    = db_fetch_object(db_query($sql));
+			$pages   = $data->total;
+			
+			$output .= '<li>'.t('Within last day:'). '<ul><li>' . t('Pages: @pages', array('@pages' => $pages)) . '</li><li>' . t('Hosts: @hosts', array('@hosts' => $hosts)) . '</li></ul></li>';
+		}
+		
+		if (variable_get('visitors_show_last_week', 0)) {
+			$sql = 'SELECT count(*) as total 
+					FROM 
+					(
+						SELECT visitors_ip 
+						FROM {visitors} 
+						WHERE visitors_date_time > (UNIX_TIMESTAMP(NOW())-604800)
+						GROUP BY visitors_ip
+					) v';
+			
+			$data    = db_fetch_object(db_query($sql));
+			$hosts   = $data->total;
+			
+			$sql = 'SELECT count(*) as total FROM {visitors} v WHERE visitors_date_time > (UNIX_TIMESTAMP(NOW())-604800)';
+			
+			$data    = db_fetch_object(db_query($sql));
+			$pages   = $data->total;
+			
+			$output .= '<li>'.t('Within last week:'). '<ul><li>' . t('Pages: @pages', array('@pages' => $pages)) . '</li><li>' . t('Hosts: @hosts', array('@hosts' => $hosts)) . '</li></ul></li>';
+		}
+		
+		if (variable_get('visitors_show_last_month', 0)) {
+			$sql = 'SELECT count(*) as total 
+					FROM 
+					(
+						SELECT visitors_ip 
+						FROM {visitors} 
+						WHERE visitors_date_time > (UNIX_TIMESTAMP(NOW())-2592000)
+						GROUP BY visitors_ip
+					) v';
+			
+			$data    = db_fetch_object(db_query($sql));
+			$hosts   = $data->total;
+			
+			$sql = 'SELECT count(*) as total FROM {visitors} v WHERE visitors_date_time > (UNIX_TIMESTAMP(NOW())-2592000)';
+			
+			$data    = db_fetch_object(db_query($sql));
+			$pages   = $data->total;
+			
+			$output .= '<li>'.t('Within last month:'). '<ul><li>' . t('Pages: @pages', array('@pages' => $pages)) . '</li><li>' . t('Hosts: @hosts', array('@hosts' => $hosts)) . '</li></ul></li>';
+		}
+		
 		if (variable_get('visitors_registered_user', 1)) {
 			$sql = 'SELECT count(*) as total 
 			 		FROM {users} 
@@ -303,7 +365,7 @@
 	if ($counter_show_administer_only && !user_access('administer visitors')) {
 		return;
 	} else {
-	  return $block;	
+	  return $block;
 	}
 } 
 
diff -ruN visitors.original/visitors.settings.inc visitors/visitors.settings.inc
--- visitors.original/visitors.settings.inc	2009-03-28 20:22:04.000000000 +0600
+++ visitors/visitors.settings.inc	2009-04-21 00:22:15.000000000 +0700
@@ -29,7 +29,6 @@
     '#type' => 'checkbox',
     '#title' => t('Show Total Visitors'),
     '#default_value' => variable_get('visitors_show_total_visitors', 1),
-    '#description' => t('Show Total Visitors')
   );    
     
   $form['visitors_settings']['visitors_show_unique_visitor'] = array(
@@ -38,41 +37,66 @@
     '#default_value' => variable_get('visitors_show_unique_visitor', 1),
     '#description' => t('Show Unique Visitors based on their IP')
   );
+  $form['visitors_settings']['visitors_show_last_day'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Show pages and visitors within last day'),
+    '#default_value' => variable_get('visitors_show_last_day', 0),
+  );
+  
+  $form['visitors_settings']['visitors_show_last_week'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Show pages and visitors within last week'),
+    '#default_value' => variable_get('visitors_show_last_week', 0),
+  );
+  
+  $form['visitors_settings']['visitors_show_last_month'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Show pages and visitors within last month'),
+    '#default_value' => variable_get('visitors_show_last_month', 0),
+  );
   
   $form['visitors_settings']['visitors_registered_user'] = array(
     '#type' => 'checkbox',
     '#title' => t('Show Registered Users'),
     '#default_value' => variable_get('visitors_registered_user', 1),
-    '#description' => t('Show Registered Users')
   );
   
   $form['visitors_settings']['visitors_last_registered_user'] = array(
     '#type' => 'checkbox',
     '#title' => t('Show Last Registered User'),
     '#default_value' => variable_get('visitors_last_registered_user', 1),
-    '#description' => t('Show Last Registered User')
   );
   
   $form['visitors_settings']['visitors_published_nodes'] = array(
     '#type' => 'checkbox',
     '#title' => t('Show Published Nodes'),
     '#default_value' => variable_get('visitors_published_nodes', 1),
-    '#description' => t('Show Published Nodes')
   );
   
   $form['visitors_settings']['visitors_user_ip'] = array(
     '#type' => 'checkbox',
     '#title' => t('Show User IP'),
     '#default_value' => variable_get('visitors_user_ip', 1),
-    '#description' => t('Show User IP')
   );
   
   $form['visitors_settings']['visitors_since_date'] = array(
     '#type' => 'checkbox',
     '#title' => t('Show Since Date'),
     '#default_value' => variable_get('visitors_since_date', 1),
-    '#description' => t('Show Since Date')
   );
   
+  $form['visitors_statistics'] = array(
+    '#type' => 'fieldset',
+    '#title' => t('Visitors statistics'),
+    '#collapsible' => TRUE, 
+    '#collapsed' => FALSE,
+    '#description' => t('Visitors statistics settings'),
+    'visitors_exclude_root_user' => array(
+      '#type' => 'checkbox',
+      '#title' => t('Exclude user #1 from statistics'),
+      '#default_value' => variable_get('visitors_exclude_root_user', 1),
+      '#description' => t('Exclude hits of user #1 from statistics'),
+    ),
+  );
    return system_settings_form($form);
 }
