--- event_all_day.module	2006-04-27 04:36:21.000000000 +0000
+++ new_event_all_day.module	2008-03-31 14:56:48.000000000 +0000
@@ -11,13 +11,22 @@ function event_all_day_help($section) {
 }
 
 function event_all_day_form_alter($form_id, &$form) {
+	$node = isset($form['#node']) ? $form['#node'] : NULL;
   $type = (isset($form['type']) && isset($form['type']['#value'])) ? $form['type']['#value'] : NULL;
+  $default_value = 0;
   if ($form_id == $type .'_node_form' && variable_get('event_nodeapi_'. $type, 'never') != 'never') {
     // add all day checkbox
+    if($node != NULL){
+      $object = db_fetch_object(db_query('SELECT  event_allday FROM {event} WHERE nid = %d', $node->nid));
+    
+      if(isset($object)){
+        $default_value = $object->event_allday;
+      }
+    }
     $form['start_minute_all_day'] = array(
       '#type' => 'checkbox',
       '#title' => t('All day'),
-      '#default_value' => 0,
+      '#default_value' => $default_value,
       '#weight' => -14,
     );
     
@@ -26,3 +35,13 @@ function event_all_day_form_alter($form_
     // theme_add_style($path . '/event_all_day.css');
   }
 }
+
+function event_all_day_nodeapi(&$node, $op, $teaser = NULL, $page = NULL) {
+  // make sure it's an event enabled node
+  if(variable_get('event_nodeapi_'. $node->type, 'never') != 'never') {
+    if(isset($node->start_minute_all_day) && $node->start_minute_all_day == 1)
+      $node->event_allday = 1;
+    else
+      $node->event_allday = 0;
+  }
+}
