Only in ../google_analytics/: ga.patch
diff -up ../google_analytics.org/googleanalytics.admin.inc ../google_analytics/googleanalytics.admin.inc
--- ../google_analytics.org/googleanalytics.admin.inc	2009-03-08 12:38:26.000000000 +0100
+++ ../google_analytics/googleanalytics.admin.inc	2010-06-10 15:08:09.000000000 +0200
@@ -20,10 +20,9 @@ function googleanalytics_admin_settings_
     '#type' => 'textfield',
     '#title' => t('Google Analytics account number'),
     '#default_value' => variable_get('googleanalytics_account', 'UA-'),
-    '#size' => 15,
-    '#maxlength' => 20,
+    '#size' => 20,
     '#required' => TRUE,
-    '#description' => t('The account number is unique to the websites domain. Click the <strong>Edit</strong> link in your Google Analytics account next to the appropriate profile on the <strong>Analytics Settings</strong> page, then select <strong>Check Status</strong> at the top-right of the table to find the account number (UA-xxxx-x) of your site. You can obtain a user account from the <a href="@url">Google Analytics</a> website.', array('@url' => 'http://www.google.com/analytics/')),
+    '#description' => t('The account number is unique to the websites domain. Click the <strong>Edit</strong> link in your Google Analytics account next to the appropriate profile on the <strong>Analytics Settings</strong> page, then select <strong>Check Status</strong> at the top-right of the table to find the account number (UA-xxxx-x) of your site. You can obtain a user account from the <a href="@url">Google Analytics</a> website. <p>To track multiple accounts you can enter the account numbers seperated by semicolons.</p>', array('@url' => 'http://www.google.com/analytics/')),
   );
 
   // Standard tracking configurations.
@@ -252,8 +251,13 @@ function googleanalytics_admin_settings_
 }
 
 function googleanalytics_admin_settings_form_validate($form, &$form_state) {
-  if (!preg_match('/^UA-\d{4,}-\d+$/', $form_state['values']['googleanalytics_account'])) {
-    form_set_error('googleanalytics_account', t('A valid Google Analytics account number is case sensitive and formatted like UA-xxxxxx-x.'));
+
+  $ids = explode(';', $form_state['values']['googleanalytics_account']);
+  foreach ($ids as $id)
+  {
+    if (!preg_match('/^UA-\d{4,}-\d+$/', $id)) {
+      form_set_error('googleanalytics_account', t('A valid Google Analytics account number is case sensitive and formatted like UA-xxxxxx-x.'));
+    }
   }
 
   // This is for the Newbie's who cannot read a text area description.
diff -up ../google_analytics.org/googleanalytics.module ../google_analytics/googleanalytics.module
--- ../google_analytics.org/googleanalytics.module	2009-04-01 20:10:36.000000000 +0200
+++ ../google_analytics/googleanalytics.module	2010-06-10 15:08:48.000000000 +0200
@@ -91,9 +91,9 @@ function googleanalytics_init() {
 function googleanalytics_footer($main = 0) {
   global $user;
 
-  $id = variable_get('googleanalytics_account', '');
+  $ids = explode(';', variable_get('googleanalytics_account', ''));
 
-  if (!empty($id) && _googleanalytics_visibility_pages() && _googleanalytics_visibility_user($user)) {
+  if (count($ids) > 0 && _googleanalytics_visibility_pages() && _googleanalytics_visibility_user($user)) {
 
     // Add User profile segmentation values.
     if (is_array($profile_fields = variable_get('googleanalytics_segmentation', '')) && ($user->uid > 0)) {
@@ -155,17 +155,28 @@ function googleanalytics_footer($main = 
 
     // Build tracker code for footer.
     $script = 'try{';
-    $script .= 'var pageTracker = _gat._getTracker('. drupal_to_js($id) .');';
-    if (!empty($segmentation)) {
-      $script .= $segmentation;
-    }
-    if (!empty($codesnippet_before)) {
-      $script .= $codesnippet_before;
+
+    for ($i = 0; $i < count($ids); $i++)
+    {
+      $pageTrackerId = $i > 0 ? $i : '';
+      $script .= 'var pageTracker' . $pageTrackerId . ' = _gat._getTracker('. drupal_to_js($id) .');';      
+      if ($i == 0)
+      {
+        if (!empty($segmentation)) {
+          $script .= $segmentation;
+        }
+        if (!empty($codesnippet_before)) {
+          $script .= $codesnippet_before;
+        }
+      }
+      $script .= 'pageTracker'. $pageTrackerId .'._initData();';
+      $script .= 'pageTracker'. $pageTrackerId .'._trackPageview('. $url_custom .');';
     }
-    $script .= 'pageTracker._trackPageview('. $url_custom .');';
+    
     if (!empty($codesnippet_after)) {
       $script .= $codesnippet_after;
     }
+
     $script .= '} catch(err) {}';
 
     drupal_add_js($script, 'inline', 'footer');
Common subdirectories: ../google_analytics.org/tests and ../google_analytics/tests
Common subdirectories: ../google_analytics.org/translations and ../google_analytics/translations
