Index: includes/programs.php
===================================================================
--- includes/programs.php	(revision 10048)
+++ includes/programs.php	(working copy)
@@ -184,6 +184,20 @@
         // This program has already been loaded, and is attached to a recording schedule
             if ($Scheduled_Recordings[$data['channum']][$data['starttime_unix']]) {
                 $program =& $Scheduled_Recordings[$data['channum']][$data['starttime_unix']][0];
+
+                // set the class members which don't get sent from the backend
+                $program->rater                   = $data['rater'];
+                $program->rating                  = $data['rating'];
+                $program->category_type           = _or($data['category_type'],   t('Unknown'));
+                $program->showtype                = $data['showtype'];
+                $program->starstring              = $data['starstring'];
+                $program->stars                   = $data['stars'];
+                $program->subtitled               = $data['subtitled'];
+                $program->partnumber              = $data['partnumber'];
+                $program->parttotal               = $data['parttotal'];
+                $program->colorcode               = $data['colorcode'];
+                $program->syndicatedepisodenumber = $data['syndicatedepisodenumber'];
+                $program->title_pronounce         = $data['title_pronounce'];
             }
         // Otherwise, create a new instance of the program
             else {
@@ -343,11 +357,17 @@
                 $this->thumb_url = root.cache_dir.'/'.str_replace('%2F', '/', rawurlencode(basename($this->filename)));
             }
         // Assign the program flags
-            $this->has_commflag = ($progflags & 0x01) ? true : false;    // FL_COMMFLAG  = 0x01
-            $this->has_cutlist  = ($progflags & 0x02) ? true : false;    // FL_CUTLIST   = 0x02
-            $this->auto_expire  = ($progflags & 0x04) ? true : false;    // FL_AUTOEXP   = 0x04
-            $this->is_editing   = ($progflags & 0x08) ? true : false;    // FL_EDITING   = 0x08
-            $this->bookmark     = ($progflags & 0x10) ? true : false;    // FL_BOOKMARK  = 0x10
+            $this->has_commflag   = ($progflags & 0x001) ? true : false;    // FL_COMMFLAG       = 0x001
+            $this->has_cutlist    = ($progflags & 0x002) ? true : false;    // FL_CUTLIST        = 0x002
+            $this->auto_expire    = ($progflags & 0x004) ? true : false;    // FL_AUTOEXP        = 0x004
+            $this->is_editing     = ($progflags & 0x008) ? true : false;    // FL_EDITING        = 0x008
+            $this->bookmark       = ($progflags & 0x010) ? true : false;    // FL_BOOKMARK       = 0x010
+                                                                            // FL_INUSERECORDING = 0x020
+                                                                            // FL_INUSEPLAYING   = 0x040
+            $this->stereo         = ($progflags & 0x080) ? true : false;    // FL_STEREO         = 0x080
+            $this->closecaptioned = ($progflags & 0x100) ? true : false;    // FL_CC             = 0x100
+            $this->hdtv           = ($progflags & 0x200) ? true : false;    // FL_HDTV           = 0x200
+                                                                            // FL_TRANSCODED     = 0x400
         // Add a generic "will record" variable, too
             $this->will_record = ($this->rectype && $this->rectype != rectype_dontrec) ? true : false;
         }
