Author: glen Date: Sun May 28 11:59:04 2006 GMT Module: SOURCES Tag: HEAD ---- Log message: - release 0.19 fixes up to svn 10051
---- Files affected: SOURCES: mythtv-branch.diff (NONE -> 1.1) (NEW) ---- Diffs: ================================================================ Index: SOURCES/mythtv-branch.diff diff -u /dev/null SOURCES/mythtv-branch.diff:1.1 --- /dev/null Sun May 28 13:59:04 2006 +++ SOURCES/mythtv-branch.diff Sun May 28 13:58:59 2006 @@ -0,0 +1,6215 @@ +Index: mythplugins/mythweb/themes/wml/header.php +=================================================================== +--- mythplugins/mythweb/themes/wml/header.php (.../tags/release-0-19) (revision 10051) ++++ mythplugins/mythweb/themes/wml/header.php (.../branches/release-0-19-fixes) (revision 10051) +@@ -26,4 +26,4 @@ + <p><a href="<?php echo root ?>tv/upcoming"><?php echo t('Upcoming Recordings') ?></a></p> + <p><a href="<?php echo root ?>tv/recorded"><?php echo t('Recorded Programs') ?></a></p> + <p><a href="<?php echo root ?>tv/search"><?php echo t('Search') ?></a></p> +-<p><a href="<?php echo root ?>status?xml"><?php echo t('Backend Status') ?></a></p> ++<p><a href="<?php echo root ?>status/xml"><?php echo t('Backend Status') ?></a></p> +Index: mythplugins/mythweb/themes/default/weather/weather.php +=================================================================== +--- mythplugins/mythweb/themes/default/weather/weather.php (.../tags/release-0-19) (revision 10051) ++++ mythplugins/mythweb/themes/default/weather/weather.php (.../branches/release-0-19-fixes) (revision 10051) +@@ -93,13 +93,13 @@ + $tomorrow = date("m/d/Y", mktime(0, 0, 0, date("m") , date("d")+1, date("Y"))); + + switch($forecast->dayofweek) { ++ case 0: $day = t('Sunday'); break; + case 1: $day = t('Monday'); break; + case 2: $day = t('Tuesday'); break; + case 3: $day = t('Wednesday'); break; + case 4: $day = t('Thursday'); break; + case 5: $day = t('Friday'); break; + case 6: $day = t('Saturday'); break; +- case 7: $day = t('Sunday'); break; + default: $day = $forecast->date; break; + } + +Index: mythplugins/mythweb/themes/default/music/music.php +=================================================================== +--- mythplugins/mythweb/themes/default/music/music.php (.../tags/release-0-19) (revision 10051) ++++ mythplugins/mythweb/themes/default/music/music.php (.../branches/release-0-19-fixes) (revision 10051) +@@ -164,10 +164,12 @@ + + function print_header($filterPlaylist,$filterArtist,$filterAlbum,$filterGenre) { + $this->filterPlaylist=$filterPlaylist; +-// Set the desired page title +- $page_title = 'MythWeb - '.t('Music'); +-// Print the page header +- require_once theme_dir.'/header.php'; ++ // Set the desired page title ++ global $page_title, $Modules, $headers; ++ $page_title = 'MythWeb - '.t('Music'); ++ // Print the page header ++ require_once theme_dir.'/header.php'; ++ + printf("<form action=\"".root."music\" method=\"GET\" >\n"); + printf("<input type=\"hidden\" name=\"mode\" value=\"music\" />\n"); + +Index: mythplugins/mythweb/themes/default/tv/detail.php +=================================================================== +--- mythplugins/mythweb/themes/default/tv/detail.php (.../tags/release-0-19) (revision 10051) ++++ mythplugins/mythweb/themes/default/tv/detail.php (.../branches/release-0-19-fixes) (revision 10051) +@@ -51,7 +51,7 @@ + <?php } ?> + <div id="program_title"> + <h1> +- <a href="<?php echo root ?>tv/search/<?php echo urlencode($program->title) ?>&search_title=yes"><?php echo $schedule->title ?></a> ++ <a href="<?php echo root ?>tv/search/<?php echo str_replace('%2F', '/', rawurlencode($schedule->title)) ?>?search_title=1"><?php echo $schedule->title ?></a> + </h1> + <div id="program_time"> + <?php +Index: mythplugins/mythweb/includes/mythbackend.php +=================================================================== +--- mythplugins/mythweb/includes/mythbackend.php (.../tags/release-0-19) (revision 10051) ++++ mythplugins/mythweb/includes/mythbackend.php (.../branches/release-0-19-fixes) (revision 10051) +@@ -15,10 +15,6 @@ + // The character string used by the backend to separate records + define('backend_sep', '[]:[]'); + +-// A couple of global variables to keep duplicate queries to a minimum +- $Scheduled_Recordings = array(); +- $Recorded_Programs = array(); +- + // MYTH_PROTO_VERSION is defined in libmyth in mythtv/libs/libmyth/mythcontext.h + // and should be the current MythTV protocol version. + define('MYTH_PROTO_VERSION', 26); +Index: mythplugins/mythweb/includes/programs.php +=================================================================== +--- mythplugins/mythweb/includes/programs.php (.../tags/release-0-19) (revision 10051) ++++ mythplugins/mythweb/includes/programs.php (.../branches/release-0-19-fixes) (revision 10051) +@@ -81,7 +81,9 @@ + /**/ + function &load_all_program_data($start_time, $end_time, $chanid = false, $single_program = false, $extra_query = '') { + global $Channels, $db; +- // Make a local hash of channel chanid's with references to the actual channel data ++ // Make a local hash of channel chanid's with references to the actual ++ // channel data (Channels are not indexed by anything in particular, so ++ // that the user can sort by chanid or channum). + $channel_hash = array(); + // An array (that later gets converted to a string) containing the id's of channels we want to load + $these_channels = array(); +@@ -104,7 +106,7 @@ + load_all_channels(); + // Scan through the channels array and actually assign those references + foreach (array_keys($Channels) as $key) { +- $channel_hash[$Channels[$key]->chanid] = &$Channels[$key]; ++ $channel_hash[$Channels[$key]->chanid] =& $Channels[$key]; + // Reinitialize the programs array for this channel + $Channels[$key]->programs = array(); + // Keep track of this channel id in case we're only grabbing info for certain channels - workound included to avoid blank chanid's +@@ -130,11 +132,13 @@ + LEFT JOIN programrating USING (chanid, starttime) + LEFT JOIN oldrecorded + ON oldrecorded.recstatus IN (-3, 11) +- AND IF(oldrecorded.programid OR oldrecorded.seriesid, ++ AND IF(oldrecorded.programid AND oldrecorded.seriesid, + oldrecorded.programid = program.programid + AND oldrecorded.seriesid = program.seriesid, +- oldrecorded.title = program.title +- AND oldrecorded.subtitle = program.subtitle ++ oldrecorded.title AND oldrecorded.subtitle ++ AND oldrecorded.description ++ AND oldrecorded.title = program.title ++ AND oldrecorded.subtitle = program.subtitle + AND oldrecorded.description = program.description + ) + LEFT JOIN channel ON program.chanid = channel.chanid +@@ -156,8 +160,12 @@ + // The extra query, if there is one + if ($extra_query) + $query .= ' AND '.$extra_query; +- // Group, sort and query ++ // Group and sort + $query .= ' GROUP BY program.chanid, program.starttime ORDER BY program.starttime'; ++ // Limit ++ if ($single_program) ++ $query .= ' LIMIT 1'; ++ // Query + $sh = $db->query($query, + star_character, max_stars, max_stars); + // No results +@@ -188,12 +196,8 @@ + // Cleanup + $sh->finish(); + // If channel-specific information was requested, return an array of those programs, or just the first/only one +- if ($chanid) { +- if ($single_program) +- return $channel_hash[$chanid]->programs[0]; +- else +- return $channel_hash[$chanid]->programs; +- } ++ if ($chanid && $single_program) ++ return $these_programs[0]; + // Just in case, return an array of all programs found + return $these_programs; + } +@@ -272,18 +276,18 @@ + $this->endtime = $data[12]; # show end-time + // Is this a previously-recorded program? Calculate the filesize + if (!empty($this->filename)) { +- $this->filesize = ($fs_high + ($fs_low < 0)) * 4294967296 + $fs_low; +- } +- // Ah, a scheduled recording - let's load more information about it, to be parsed in below +- elseif ($this->chanid) { +- unset($this->filename); +- // Kludge to avoid redefining the object, which doesn't work in php5 +- $tmp = @get_object_vars(load_one_program($this->starttime, $this->chanid)); +- if (is_array($tmp) && count($tmp) > 0) { +- foreach ($tmp as $key => $value) { +- $this->$key = $value; +- } ++ if (function_exists('gmp_add')) { ++ // GMP functions should work better with 64 bit numbers. ++ $size = gmp_add($fs_low, ++ gmp_mul('4294967296', ++ gmp_add($fs_high, $fs_low < 0 ? '1' : '0')) ++ ); ++ $this->filesize = gmp_strval($size); + } ++ else { ++ // This is inaccurate, but it's the best we can get without GMP. ++ $this->filesize = ($fs_high + ($fs_low < 0)) * 4294967296 + $fs_low; ++ } + } + // Load the remaining info we got from mythbackend + $this->title = $data[0]; # program name/title +@@ -291,14 +295,14 @@ + $this->description = $data[2]; # episode description + $this->category = $data[3]; + #$chanid = $data[4]; # Extracted a few lines earlier +- #$channum = $data[5]; +- #$callsign = $data[6]; ++ $this->channum = $data[5]; ++ $this->callsign = $data[6]; + $this->channame = $data[7]; + #$pathname = $data[8]; # Extracted a few lines earlier + #$fs_high = $data[9]; # Extracted a few lines earlier + #$fs_low = $data[10]; # Extracted a few lines earlier +- #$starttime = $data[11]; # Extracted a few lines earlier +- #$endtime = $data[12]; # Extracted a few lines earlier ++ #$this->starttime = $data[11]; # Extracted a few lines earlier ++ #$this->endtime = $data[12]; # Extracted a few lines earlier + $this->hostname = $data[16]; + #$this->sourceid = $data[17]; + $this->cardid = $data[18]; +@@ -320,9 +324,9 @@ + $this->programid = $data[34]; + $this->lastmodified = $data[35]; + $this->recpriority = $data[36]; +- #$this->airdate = $data[37]; +- #$this->hasairdate = $data[38]; +- $this->timestretch = $program_data[39]; ++ $this->airdate = date('Y-m-d', $data[37]); ++ $this->hasairdate = $data[38]; ++ $this->timestretch = $data[39]; + $this->recpriority2 = $data[40]; + // Assign the program flags + $this->has_commflag = ($progflags & 0x01) ? true : false; // FL_COMMFLAG = 0x01 +@@ -363,8 +367,8 @@ + $this->title_pronounce = $data['title_pronounce']; + $this->recstatus = $data['recstatus']; + +- if ($program_data['tsdefault']) { +- $this->timestretch = $program_data['tsdefault']; ++ if ($data['tsdefault']) { ++ $this->timestretch = $data['tsdefault']; + } else { + $this->timestretch = 1.0; + } +@@ -387,12 +391,14 @@ + // Now we really should scan the $Channel array and add a link to this program's channel + foreach (array_keys($Channels) as $key) { + if ($Channels[$key]->chanid == $this->chanid) { +- $this->channel = &$Channels[$key]; ++ $this->channel =& $Channels[$key]; + break; + } + } ++ // Not found ++ if (!$this->channel) ++ $this->channel =& load_one_channel($this->chanid); + } +- + // Calculate the duration + if ($this->recendts) + $this->length = $this->recendts - $this->recstartts; +Index: mythplugins/mythweb/includes/utils.php +=================================================================== +--- mythplugins/mythweb/includes/utils.php (.../tags/release-0-19) (revision 10051) ++++ mythplugins/mythweb/includes/utils.php (.../branches/release-0-19-fixes) (revision 10051) +@@ -276,7 +276,7 @@ + static $first_run=true; + if($first_run) { + $first_run=false; +- echo '<script type="text/javascript" src="/js/debug.js"></script>'; ++ echo '<script type="text/javascript" src="'.root.'js/debug.js"></script>'; + } + // Put our data into a string + if (is_array($data) || is_object($data)) +Index: mythplugins/mythweb/includes/init.php +=================================================================== +--- mythplugins/mythweb/includes/init.php (.../tags/release-0-19) (revision 10051) ++++ mythplugins/mythweb/includes/init.php (.../branches/release-0-19-fixes) (revision 10051) +@@ -16,28 +16,15 @@ + * + /**/ + +-/** +- * $Path is an array of PATH_INFO passed into the script via mod_rewrite or some +- * other lesser means. It contains most of the information required for +- * figuring out what functions the user wants to access. +- * +- * @global array $GLOBALS['Path'] +- * @name $Path +-/**/ +- global $Path; +- $Path = explode('/', preg_replace('/^\/+/', '', // Remove leading slashes +- preg_replace('/[\s]+/', ' ', // Convert extra whitespace +- // Grab the path info from various different places. +- array_key_exists('PATH_INFO', $_SERVER) +- && $_SERVER['PATH_INFO'] +- ? $_SERVER['PATH_INFO'] +- : (array_key_exists('PATH_INFO', $_ENV) +- && $_ENV['PATH_INFO'] +- ? $_ENV['PATH_INFO'] +- : $_GET['PATH_INFO'] +- ) +- )) +- ); ++// mod_redirect can do some weird things when php is run in cgi mode ++ $keys = preg_grep('/^REDIRECT_/', array_keys($_SERVER)); ++ if (!empty($keys)) { ++ foreach ($keys as $key) { ++ $key = substr($key, 9); ++ if (!array_key_exists($key, $_SERVER)) ++ $_SERVER[$key] = $_SERVER["REDIRECT_$key"]; ++ } ++ } + + // Clean the document root variable and make sure it doesn't have a trailing slash + $_SERVER['DOCUMENT_ROOT'] = preg_replace('/\/+$/', '', $_SERVER['DOCUMENT_ROOT']); +@@ -94,6 +81,29 @@ + exit; + } + ++/** ++ * $Path is an array of PATH_INFO passed into the script via mod_rewrite or some ++ * other lesser means. It contains most of the information required for ++ * figuring out what functions the user wants to access. ++ * ++ * @global array $GLOBALS['Path'] ++ * @name $Path ++/**/ ++ global $Path; ++ $Path = explode('/', preg_replace('/^\/+/', '', // Remove leading slashes ++ preg_replace('/[\s]+/', ' ', // Convert extra whitespace ++ // Grab the path info from various different places. ++ array_key_exists('PATH_INFO', $_SERVER) ++ && $_SERVER['PATH_INFO'] ++ ? $_SERVER['PATH_INFO'] ++ : (array_key_exists('PATH_INFO', $_ENV) ++ && $_ENV['PATH_INFO'] ++ ? $_ENV['PATH_INFO'] ++ : $_GET['PATH_INFO'] ++ ) ++ )) ++ ); ++ + // Load the database connection routines + require_once 'includes/db.php'; + +Index: mythplugins/mythweb/includes/mobile.php +=================================================================== +--- mythplugins/mythweb/includes/mobile.php (.../tags/release-0-19) (revision 10051) ++++ mythplugins/mythweb/includes/mobile.php (.../branches/release-0-19-fixes) (revision 10051) +@@ -74,58 +74,56 @@ + * If you don't know the screensize of some mobile terminal then use + * an empty array or approximate dimensions. + */ +- $mobiles = array(/* Phones using the Series 60 platform, e.g. Nokia 3650 and 6600. */ +- 'Series 60' => array('width' => 176, 'height' => 208), +- 'Series60' => array('width' => 176, 'height' => 208), +- 'C500' => array('width'=>176, 'height'=> 220), // SPV C500 ++ $mobiles = array( ++ /* Phones using the Series 60 platform, e.g. Nokia 3650 and 6600. */ ++ 'Series 60' => array('width' => 176, 'height' => 208), ++ 'Series60' => array('width' => 176, 'height' => 208), ++ 'C500' => array('width'=>176, 'height'=> 220), // SPV C500 ++ /* Phones using the Series 90 platform, e.g. Nokia 7710. */ ++ 'Series 90' => array('width' => 640, 'height' => 320), ++ 'Series90' => array('width' => 640, 'height' => 320), ++ /* The following strings are added for the Palm browser WebPro ++ * WebPro sometimes supplies the screen dimensions, but sometimes not ++ * but we try to detect the best as possible */ ++ '240x320' => array('width' => 240, 'height' => 320), // PocketPC IE ++ '320x320' => array('width' => 320, 'height' => 320), // For all Palm Tungsten models ++ '320x480' => array('width' => 320, 'height' => 480), // For Palm Tungsten T ++ '480x320' => array('width' => 480, 'height' => 320), // For Palm Tungsten T ++ '320x480x16' => array('width' => 320, 'height' => 480), // For Palm Tungsten T ++ '480x320x16' => array('width' => 480, 'height' => 320), // For Palm Tungsten T ++ '320x320x16' => array('width' => 320, 'height' => 320), ++ 'WebPro' => array('width' => 320, 'height' => 320), // For all Palm Tungsten models ++ /* A generic mobile phone using Symbian OS. All Symbian phones don't ++ * necessarily have the same screen size so if you want to include ++ * some specific Symbian phones then place them above this line. */ ++ 'Symbian' => array('width' => 176, 'height' => 208), + +- /* Phones using the Series 90 platform, e.g. Nokia 7710. */ +- 'Series 90' => array('width' => 640, 'height' => 320), +- 'Series90' => array('width' => 640, 'height' => 320), ++ 'Nokia' => array(), // Nokia phones and emulators ++ 'Eric' => array(), // Ericsson WAP phones and emulators ++ 'WapI' => array(), // Ericsson WapIDE 2.0 ++ 'MC21' => array(), // Ericsson MC218 ++ 'AUR ' => array(), // Ericsson R320 ++ 'R380' => array(), // Ericsson R380 ++ 'UP.B' => array(), // UP.Browser ++ 'WinW' => array(), // WinWAP browser ++ 'UPG1' => array(), // UP.SDK 4.0 ++ 'upsi' => array(), // another kind of UP.Browser ?? ++ 'QWAP' => array(), // unknown QWAPPER browser ++ 'Jigs' => array(), // unknown JigSaw browser ++ 'Java' => array(), // unknown Java based browser ++ 'Alca' => array(), // unknown Alcatel-BE3 browser (UP based?) ++ 'MITS' => array(), // unknown Mitsubishi browser ++ 'MOT-' => array(), // unknown browser (UP based?) ++ 'My S' => array(), // unknown Ericsson devkit browser ? ++ 'WAPJ' => array(), // Virtual WAPJAG www.wapjag.de ++ 'fetc' => array(), // fetchpage.cgi Perl script from www.wapcab.de ++ 'ALAV' => array(), // yet another unknown UP based browser ? ++ 'Wapa' => array(), // another unknown browser (Web based "Wapalyzer"?) ++ 'LGE-' => array(), // LG phones + +- /* The following strings are added for the Palm browser WebPro +- * WebPro sometimes supplies the screen dimensions, but sometimes not +- * but we try to detect the best as possible +- */ +- '320x480' => array('width' => 320, 'height' => 480), // For Palm Tungsten T +- '480x320' => array('width' => 480, 'height' => 320), // For Palm Tungsten T +- '320x320' => array('width' => 320, 'height' => 320), // For all Palm Tungsten models +- '320x480x16' => array('width' => 320, 'height' => 480), // For Palm Tungsten T +- '480x320x16' => array('width' => 480, 'height' => 320), // For Palm Tungsten T +- '320x320x16' => array('width' => 320, 'height' => 320), +- 'WebPro' => array('width' => 320, 'height' => 320), // For all Palm Tungsten models +- +- /* A generic mobile phone using Symbian OS. All Symbian phones don't +- * necessarily have the same screen size so if you want to include +- * some specific Symbian phones then place them above this line. */ +- 'Symbian' => array('width' => 176, 'height' => 208), +- +- 'Nokia' => array(), // Nokia phones and emulators +- 'Eric' => array(), // Ericsson WAP phones and emulators +- 'WapI' => array(), // Ericsson WapIDE 2.0 +- 'MC21' => array(), // Ericsson MC218 +- 'AUR ' => array(), // Ericsson R320 +- 'R380' => array(), // Ericsson R380 +- 'UP.B' => array(), // UP.Browser +- 'WinW' => array(), // WinWAP browser +- 'UPG1' => array(), // UP.SDK 4.0 +- 'upsi' => array(), // another kind of UP.Browser ?? +- 'QWAP' => array(), // unknown QWAPPER browser +- 'Jigs' => array(), // unknown JigSaw browser +- 'Java' => array(), // unknown Java based browser +- 'Alca' => array(), // unknown Alcatel-BE3 browser (UP based?) +- 'MITS' => array(), // unknown Mitsubishi browser +- 'MOT-' => array(), // unknown browser (UP based?) +- 'My S' => array(), // unknown Ericsson devkit browser ? +- 'WAPJ' => array(), // Virtual WAPJAG www.wapjag.de +- 'fetc' => array(), // fetchpage.cgi Perl script from www.wapcab.de +- 'ALAV' => array(), // yet another unknown UP based browser ? +- 'Wapa' => array(), // another unknown browser (Web based "Wapalyzer"?) +- 'LGE-' => array(), // LG phones +- +- /* For debugging: you can try out the mobile mode without a mobile phone. +- * Replace 'Opera' with your browser. Comment out for release version. */ +- //'Opera' => array('width' => 176, 'height' => 208) ++ /* For debugging: you can try out the mobile mode without a mobile phone. ++ * Replace 'Opera' with your browser. Comment out for release version. */ ++ //'Opera' => array('width' => 176, 'height' => 208) + ); + + /* Scan through $mobiles and try to find matching user agent. */ +Index: mythplugins/mythweb/includes/recording_schedules.php +=================================================================== +--- mythplugins/mythweb/includes/recording_schedules.php (.../tags/release-0-19) (revision 10051) ++++ mythplugins/mythweb/includes/recording_schedules.php (.../branches/release-0-19-fixes) (revision 10051) +@@ -68,10 +68,14 @@ + // Cleanup + mysql_free_result($result); + ++// Initialize ++ global $Scheduled_Recordings, $Num_Conflicts, $Num_Scheduled; ++ $Scheduled_Recordings = array(); ++ $Num_Conflicts = 0; ++ $Num_Scheduled = 0; ++ + // Load all of the scheduled recordings. We will need them at some point, so we + // might as well get it overwith here. +- global $Scheduled_Recordings, $Num_Conflicts, $Num_Scheduled; +- $Scheduled_Recordings = array(); + foreach (get_backend_rows('QUERY_GETALLPENDING', 2) as $key => $program) { + // The offset entry + if ($key === 'offset') { +Index: mythplugins/mythweb/includes/session.php +=================================================================== +--- mythplugins/mythweb/includes/session.php (.../tags/release-0-19) (revision 10051) ++++ mythplugins/mythweb/includes/session.php (.../branches/release-0-19-fixes) (revision 10051) +@@ -19,8 +19,8 @@ + + // Start the session + session_name('mythweb_id'); +- session_set_cookie_params(60 * 60 * 30, '/'); // 30 day timeout on cookies +- ini_set('session.gc_maxlifetime', 60 * 60 * 30); // ... and sessions ++ session_set_cookie_params(60 * 60 * 24 * 365, '/'); // 1 year timeout on cookies ++ ini_set('session.gc_maxlifetime', 60 * 60 * 24 * 30); // 30 day timeout on sessions + session_set_save_handler('sess_do_nothing', 'sess_do_nothing', 'sess_read', 'sess_write', 'sess_destroy', 'sess_gc'); + session_start(); + +Index: mythplugins/mythweb/modules/weather/handler.php +=================================================================== +--- mythplugins/mythweb/modules/weather/handler.php (.../tags/release-0-19) (revision 10051) ++++ mythplugins/mythweb/modules/weather/handler.php (.../branches/release-0-19-fixes) (revision 10051) +@@ -222,8 +222,10 @@ + + $data = explode("|", $data); + for($i = 0;$i<5;$i++) { +- $forecast = new Forecast($data[5 + $i],$data[$i]); +- $forecast->dayofweek = $data[$i]; ++ # mktime uses 0-6; msnbc gives us 1-7; adjust msnbc to match mktime ++ $dayofweek = $data[$i] - 1; ++ $forecast = new Forecast($data[5 + $i],$dayofweek); ++ $forecast->dayofweek = $dayofweek; + list($forecast->DescImage,$forecast->DescText) = getImageAndDescFromId($data[15 + $i]); + $forecast->DescImage = (strlen($forecast->DescImage) > 0) ? $forecast->DescImage : "unknown.png"; + $forecast->DescText = (strlen($forecast->DescText) > 0) ? $forecast->DescText : t('Unknown') . " (" . $data[15+$i] . ")"; +Index: mythplugins/mythweb/modules/status/handler.php +=================================================================== +--- mythplugins/mythweb/modules/status/handler.php (.../tags/release-0-19) (revision 10051) ++++ mythplugins/mythweb/modules/status/handler.php (.../branches/release-0-19-fixes) (revision 10051) +@@ -18,14 +18,17 @@ + $masterhost = get_backend_setting('MasterServerIP'); + $statusport = get_backend_setting('BackendStatusPort'); + ++// XML mode? ++ $xml_param = ($Path[1] == 'xml') ? '/xml' : ''; ++ + // Make sure the content is interpreted as UTF-8 + header('Content-Type: text/html; charset=UTF-8'); + + // Load the status page + if (function_exists('file_get_contents')) +- $status = file_get_contents("http://$masterhost:$statusport"); ++ $status = file_get_contents("http://$masterhost:$statusport$xml_param"); + else +- $status = implode("\n", file("http://$masterhost:$statusport")); ++ $status = implode("\n", file("http://$masterhost:$statusport$xml_param")); + + // Extract the page title + preg_match('#<title>(.+?)</title>#s', $status, $title); +Index: mythplugins/mythweb/modules/backend_log/handler.php +=================================================================== +--- mythplugins/mythweb/modules/backend_log/handler.php (.../tags/release-0-19) (revision 10051) ++++ mythplugins/mythweb/modules/backend_log/handler.php (.../branches/release-0-19-fixes) (revision 10051) +@@ -16,7 +16,7 @@ + // Where to start searching from + $_GET['start'] = intVal($_GET['start']); + if ($_GET['start'] < 1) +- $_GET['start'] = 1; ++ $_GET['start'] = 0; + + // How many entries to show? + $_GET['show'] = intVal($_GET['show']); +Index: mythplugins/mythweb/modules/tv/upcoming.php +=================================================================== +--- mythplugins/mythweb/modules/tv/upcoming.php (.../tags/release-0-19) (revision 10051) ++++ mythplugins/mythweb/modules/tv/upcoming.php (.../branches/release-0-19-fixes) (revision 10051) +@@ -103,8 +103,9 @@ + continue; + } + // Skip deactivated shows? +- elseif (!$_SESSION['scheduled_recordings']['disp_deactivated']) { +- continue; ++ elseif ($show->recstatus != 'Recording') { ++ if (!$_SESSION['scheduled_recordings']['disp_deactivated']) ++ continue; + } + // Assign a reference to this show to the various arrays + $all_shows[] =& $Scheduled_Recordings[$channum][$starttime][$key]; +Index: mythplugins/mythweb/modules/tv/recorded.php +=================================================================== +--- mythplugins/mythweb/modules/tv/recorded.php (.../tags/release-0-19) (revision 10051) ++++ mythplugins/mythweb/modules/tv/recorded.php (.../branches/release-0-19-fixes) (revision 10051) +@@ -128,9 +128,21 @@ + continue; + // Get the length (27 == recendts; 26 == recstartts) + $length = $record[27] - $record[26]; +- // Keep track of the total time and disk space used ++ // Keep track of the total time and disk space used (9 == fs_high; 10 == fs_low) + $Total_Time += $length; +- $Total_Used += ($record[9] + ($record[10] < 0)) * 4294967296 + $record[10]; // 9 == fs_high; 10 == fs_low; ++ if (function_exists('gmp_add')) { ++ // GMP functions should work better with 64 bit numbers. ++ $size = gmp_add($record[10], ++ gmp_mul('4294967296', ++ gmp_add($record[9], $record[10] < 0 ? '1' : '0') ++ ) ++ ); ++ $Total_Used = gmp_strval(gmp_add($Total_Used, $size)); ++ } ++ else { ++ // This is inaccurate, but it's the best we can get without GMP. ++ $Total_Used += ($record[9] + ($record[10] < 0)) * 4294967296 + $record[10]; ++ } + // keep track of their names and how many episodes we have recorded + $Total_Programs++; + $Groups[$record[30]]++; +@@ -223,8 +235,28 @@ + + // How much free disk space on the backend machine? + list($size_high, $size_low, $used_high, $used_low) = explode(backend_sep, backend_command('QUERY_FREE_SPACE')); +- define(disk_size, (($size_high + ($size_low < 0)) * 4294967296 + $size_low) * 1024); +- define(disk_used, (($used_high + ($used_low < 0)) * 4294967296 + $used_low) * 1024); ++ if (function_exists('gmp_add')) { ++ // GMP functions should work better with 64 bit numbers. ++ $size = gmp_mul('1024', ++ gmp_add($size_low, ++ gmp_mul('4294967296', ++ gmp_add($size_high, $size_low < 0 ? '1' : '0')) ++ ) ++ ); ++ define(disk_size, gmp_strval($size)); ++ $size = gmp_mul('1024', ++ gmp_add($used_low, ++ gmp_mul('4294967296', ++ gmp_add($used_high, $used_low < 0 ? '1' : '0')) ++ ) ++ ); ++ define(disk_used, gmp_strval($size)); ++ } <<Diff was trimmed, longer than 597 lines>> _______________________________________________ pld-cvs-commit mailing list pld-cvs-commit@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit