--- click.module	2007-02-25 22:18:03.000000000 +0000
+++ clickNew.module	2010-03-23 11:50:17.000000000 +0000
@@ -22,56 +22,41 @@ function click_perm() {
   return array ('view click links', 'view click stats');
 }
 
-function click_menu($may_cache) {
+function click_menu() {
   $items = array();
 
-  $nid = 0;
-  $gid = 0;
-
-  if (is_numeric(arg(1))) {
-    $nid = (int)arg(1);
-  }
-
-  if (is_numeric(arg(2))) {
-    $gid = (int)arg(2);
-  }
-
-  if (arg(0) == 'node' && $nid) {
-    $items[] = array(
-      'path'     => "node/$nid/click",
-      'callback' => 'click_view',
-      'title'    => t('clicks'),
-      'access'   => user_access('view click stats'),
-      'weight'   => 10,
-      'type'     => MENU_LOCAL_TASK,
-      );
-  }
+  $items["node/%node/click"] = array(
+  	'title'    => t('clicks'),
+  	'page callback' => 'click_view',
+  	'access callback' => 'user_access',
+  	'access arguments'   => array('view click stats'),
+  	'weight'   => 10,
+  	'type'     => MENU_LOCAL_TASK,
+  );
 
-  $items[] = array(
-    'path'     => "click/$nid/$gid",
-    'callback' => 'click_do',
-    'access'   => TRUE,
+  $items['click/%/%'] = array(
+    'page callback' => 'click_do',
+  	'page arguments' => array(1,2),
+    'access callback' => TRUE,
     'type'     => MENU_CALLBACK,
     );
 
-  if ($may_cache) {
-    $items[] = array(
-      'path' => 'admin/settings/click',
+  $items['admin/settings/click'] = array(
       'title' => 'Click Thru tracking',
       'description' => t('Settings of the Click Thru tracking module'),
-      'callback' => 'drupal_get_form',
-      'callback arguments' => array('click_admin_settings'),
-      'access' => user_access('administer site configuration'),
-      );
+      'page callback' => 'drupal_get_form',
+      'access callback' => 'user_access',
+      'page arguments' => array('click_admin_settings'),
+      'access arguments' => array('administer site configuration'),
+  );
 
-    $items[] = array(
-      'path'     => 'admin/logs/click',
+  $items['admin/reports/click'] = array(
       'title'    => t('clicks'),
-      'callback' => 'click_report',
-      'access'   => user_access('view click stats'),
+      'page callback' => 'click_report',
+      'access callback' => 'user_access',
+      'access arguments' => array('administer site configuration'),
       'type'     => MENU_NORMAL_ITEM,
-      );
-  }
+  );
 
   return $items;
 }
@@ -105,7 +90,7 @@ function click_admin_settings() {
   return system_settings_form($form);
 }
 
-function click_link($type, $node = null, $teaser = false) {
+function click_link($type, $object, $teaser = FALSE) {
   global $user;
   $group = CLICK_GROUP . $user->uid;
 
@@ -116,16 +101,16 @@ function click_link($type, $node = null,
   if (user_access('view click links')) {
     $links['click_link'] = array(
       'title'      => t('click link'),
-      'href'       => "click/$node->nid/$click_group",
+      'href'       => "click/$object->nid/$click_group",
       'attributes' => array('title' => t('Link to track click thrus.')),
       );
   }
 
   if (user_access('view click stats')) {
-    $clicks = _click_count($node->nid);
+    $clicks = _click_count($object->nid);
     if ($clicks > 0) {
     $links['click_link_stats'] = array(
-      'title'      => t('!num clicks', array('!num' => $clicks)),
+      'title' => format_plural($clicks, '1 click', '@count clicks'),
       );
     }
   }
@@ -148,7 +133,7 @@ function click_view() {
     $rows[] = array(array('data' => ('Last  click at: ')),  array('data' => format_date($click->last, 'custom', $fmt)));
     $output .= $group . theme('table', array(), $rows);
   }
-  print theme('page', $output);
+  return $output;
 }
 
 function click_report() {
@@ -178,7 +163,7 @@ function click_report() {
   if (!empty($pager)) {
     $rows[] = array(array('data' => $pager, 'colspan' => '4'));
   }
-  print theme('page', theme('table', $header, $rows), t('Click Thru Report'));
+  return theme('table', $header, $rows);
 }
 
 function click_do() {
