Common subdirectories: schedule.orig/images and schedule/images
diff -u schedule.orig/station_schedule.install schedule/station_schedule.install
--- schedule.orig/station_schedule.install	2008-01-01 11:50:24.000000000 +0100
+++ schedule/station_schedule.install	2007-12-31 21:20:48.000000000 +0100
@@ -28,6 +28,7 @@
           `start` int unsigned NOT NULL default '0',
           `finish` int unsigned NOT NULL default '0',
           `may_archive` tinyint NOT NULL default '1',
+          `is_redifussion` tinyint NOT NULL default '0',
           PRIMARY KEY  (`iid`),
           KEY `station_schedule_start` (`schedule_nid`, `start`),
           KEY `station_schedule_program` (`schedule_nid`, `program_nid`)
@@ -383,3 +384,20 @@
   }
   return $ret;
 }
+
+/**
+ * Add is_redifussion to scheduled items.
+ */
+function station_schedule_update_5204() {
+  $ret = array();
+  switch ($GLOBALS['db_type']) {
+    case 'mysql':
+    case 'mysqli':
+      $ret[] = update_sql("ALTER TABLE {station_schedule_item} ADD COLUMN `is_redifussion` tinyint(1) AFTER `may_archive`");      
+
+      db_query("UPDATE {station_schedule_item} SET is_redifussion = '0'");
+      
+      break;
+  }
+  return $ret;
+}
diff -u schedule.orig/station_schedule.module schedule/station_schedule.module
--- schedule.orig/station_schedule.module	2008-01-01 11:46:33.000000000 +0100
+++ schedule/station_schedule.module	2008-01-01 00:02:45.000000000 +0100
@@ -980,10 +980,14 @@
   $class = 'station-sch-box station-sch-scheduled';
   $height = ($item->finish - $item->start);
   $link = url("node/{$node->nid}/schedule/edit/{$item->iid}");
+  $title = check_plain($item->program->title);
+  if ($item->is_redifussion) {
+    $title .= ' '.t('[redifussion]');
+  }
 
   $output = "<div class='{$class}'><a id='schedule-{$item->start}' href='{$link}' style='height: {$height}px;'>";
   $output .= '<span class="station-sch-time">'. theme('station_hour_range', $item->start, $item->finish) .'</span>';
-  $output .= '<span class="station-sch-title">'. check_plain($item->program->title) .'</span>';
+  $output .= '<span class="station-sch-title">'. $title .'</span>';
   $output .= "</a></div>\n";
 
   return $output;
@@ -1017,6 +1021,7 @@
     $schedule_item->start = (int) $start;
     $schedule_item->finish = (int) $finish;
     $schedule_item->may_archive = TRUE;
+    $schedule_item->is_redifussion = FALSE;
 
     drupal_set_title(t('Add item to %title', array('%title' => $node->title)));
   }
@@ -1092,6 +1097,12 @@
     '#default_value' => $schedule_item->may_archive,
     '#description' => t('Checking this indicates that the Station Archive module can save audio recordings of the program at this timeslot to the archive.'),
   );
+  $form['is_redifussion'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Is a redifussion'),
+    '#default_value' => $schedule_item->is_redifussion,
+    '#description' => t('Checking this indicates that the program is a repeated broadcast.'),
+  );
 
   $form['buttons']['submit'] = array(
     '#type' => 'submit',
@@ -1145,8 +1156,8 @@
 
   if ($form_values['iid']) {
     $old_sch = station_schedule_load_item($form_values['iid']);
-    db_query("UPDATE {station_schedule_item} SET program_nid = %d, start = %d, finish = %d, may_archive = %d WHERE iid = %d",
-      $program->nid, $start, $finish, $form_values['may_archive'], $form_values['iid']);
+    db_query("UPDATE {station_schedule_item} SET program_nid = %d, start = %d, finish = %d, may_archive = %d, is_redifussion = %d WHERE iid = %d",
+      $program->nid, $start, $finish, $form_values['may_archive'], $form_values['is_redifussion'], $form_values['iid']);
     if ($old_sch->program_nid != $program->nid) {
       _station_send_notice('schedule', 'remove', array('schedule_nid' => $schedule_nid, 'program_nid' => $old_sch->program_nid, 'iid' => $form_values['iid']));
       _station_send_notice('schedule', 'add', array('schedule_nid' => $schedule_nid, 'program_nid' => $program->nid, 'iid' => $form_values['iid']));
@@ -1157,8 +1168,8 @@
   }
   else {
     $iid = db_next_id('{station_schedule_item}_iid');
-    db_query("INSERT INTO {station_schedule_item} (schedule_nid, iid, program_nid, start, finish, may_archive) VALUES (%d, %d, %d, %d, %d, %d)",
-     $schedule_nid, $iid, $program->nid, $start, $finish, $form_values['may_archive']);
+    db_query("INSERT INTO {station_schedule_item} (schedule_nid, iid, program_nid, start, finish, may_archive, is_redifussion) VALUES (%d, %d, %d, %d, %d, %d, %d)",
+     $schedule_nid, $iid, $program->nid, $start, $finish, $form_values['may_archive'], $form_values['is_redifussion']);
     _station_send_notice('schedule', 'add', array('schedule_nid' => $schedule_nid, 'program_nid' => $program->nid, 'iid' => $iid));
   }
   drupal_goto("node/{$schedule_nid}/schedule", NULL, "schedule-{$start}");
@@ -1299,10 +1310,15 @@
   $class = 'station-sch-box station-sch-scheduled';
   $height = ($finish - $start);
   $link = url('node/'. $program->nid);
+  $title = check_plain($program->title);
+  $is_redifussion = db_result(db_query('SELECT is_redifussion FROM {station_schedule_item} s WHERE s.program_nid = %s AND s.start = %d AND s.finish = %d', $program->nid, $start, $finish));
+  if ($is_redifussion) {
+    $title .= ' '.t('[redifussion]');
+  }
 
   $output = "<div class='{$class}'><a href='{$link}' style='height: {$height}px;'>";
   $output .= '<span class="station-sch-time">'. theme('station_hour_range', $start, $finish) .'</span>';
-  $output .= '<span class="station-sch-title">'. check_plain($program->title) .'</span>';
+  $output .= '<span class="station-sch-title">'. $title .'</span>';
   if ($program->djs) {
     $output .= '<span class="station-sch-djs">'. check_plain(implode(', ', $program->djs)) .'</span>';
   }
