Index: event.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/event/event.module,v
retrieving revision 1.215.2.2
diff -u -F^f -r1.215.2.2 event.module
--- event.module	31 Jan 2007 11:23:44 -0000	1.215.2.2
+++ event.module	22 Feb 2007 21:51:54 -0000
@@ -1037,7 +1059,7 @@ function event_calendar_data($year, $mon
 
       if (($node_start == $node_end) && (gmdate('m', $node_start) == $month)) {
         $nid->event_state = 'singleday';
-        $data[$year][$month][gmdate('j', $node_start)][] = $nid;
+        $data[$year][$month][gmdate('j', $node_start)][] = drupal_clone($nid);
       }
       else {
         // because $first is a local timestamp we compensate for the tz offset here so we dont have to do repetitive day value comparisons below
@@ -1047,16 +1069,16 @@ function event_calendar_data($year, $mon
           if (gmdate('m', $x) == $month) {
             if ($x == $node_end) {
               $nid->event_state = 'end';
-              $data[$year][$month][gmdate('j', $x)][] = $nid;
+              $data[$year][$month][gmdate('j', $x)][] = drupal_clone($nid);
               $x = $last + 1;
             }
             elseif ($x == $node_start) {
               $nid->event_state = 'start';
-              $data[$year][$month][gmdate('j', $x)][] = $nid;
+              $data[$year][$month][gmdate('j', $x)][] = drupal_clone($nid);
             }
             else {
               $nid->event_state = 'ongoing';
-              $data[$year][$month][gmdate('j', $x)][] = $nid;
+              $data[$year][$month][gmdate('j', $x)][] = drupal_clone($nid);
             }
           }
         }
@@ -1459,12 +1481,13 @@ function event_form_date($timestamp, $pr
   // ...hours
   if (variable_get('event_ampm', '0')) {
     $hour_format = t('g');
-    $hours = drupal_map_assoc(range(1, 12));
+    for ($i = 1; $i <= 12; $i++) $hours[$i] = $i < 10 ? "0$i" : $i;
     $am_pms = array('am' => t('am'), 'pm' => t('pm'));
   }
   else {
     $hour_format = t('H');
-    $hours = drupal_map_assoc(range(0, 23));
+  // ...minutes (with leading 0s)
+    for ($i = 0; $i <= 23; $i++) $hours[$i] = $i < 10 ? "0$i" : $i;
   }
   // ...minutes (with leading 0s)
   for ($i = 0; $i <= 59; $i++) $minutes[$i] = $i < 10 ? "0$i" : $i;
@@ -1491,13 +1514,13 @@ function event_form_date($timestamp, $pr
   $form[$prefix .'_hour'] = array(
     '#prefix' => '</div>&#8212;<div class="time">',
     '#type' => 'select',
-    '#default_value' => _event_date($hour_format, $timestamp, $offset),
+    '#default_value' => intval(_event_date($hour_format, $timestamp, $offset)),
     '#options' => $hours,
     '#required' => TRUE);
   $form[$prefix .'_minute'] = array(
     '#prefix' => ':',
     '#type' => 'select',
-    '#default_value' => _event_date('i', $timestamp, $offset),
+    '#default_value' => intval(_event_date('i', $timestamp, $offset)),
     '#options' => $minutes,
     '#required' => TRUE);
   if (isset($am_pms)) {
@@ -1784,6 +1807,16 @@ function event_block($op = 'list', $delt
   }
 }
