--- ../mre-1.1.2/class/MythClient.php.original 2006-04-05 17:39:13.000000000 -0500
+++ ../mre-1.1.2/class/MythClient.php 2010-05-14 10:16:54.000000000 -0500
@@ -112,7 +112,7 @@
return '0';
}
foreach($out as $line)
- if(preg_match('/^Library API version: (.*)$/', $line, $matches))
+ if(preg_match('/^Library API *: (.*)$/', $line, $matches))
return $matches[1];
return '0';
}
--- ../mre-1.1.2/conf/mre.conf.in.original 2006-08-13 16:48:57.000000000 -0500
+++ ../mre-1.1.2/conf/mre.conf.in 2010-05-04 00:25:26.000000000 -0500
@@ -28,9 +28,9 @@
; *** Application settings
; Unprivledged user to run as, if started as root
; This script will not run as root
-user = nobody
+user = mythtv
; Run MRE as daemon? Requires pcntl_* functions built into PHP
-daemon = true
+daemon = false
; Number of minutes to sleep between runs
sleep = 5
; Logging level (0 = normal, 1 = +error, 2 = +warning, 3 = +debug)
--- ../mre-1.1.2/class/EventFactory.php.original 2006-09-22 10:18:07.000000000 -0500
+++ ../mre-1.1.2/class/EventFactory.php 2010-08-28 00:02:37.000000000 -0500
@@ -50,7 +50,7 @@
$obj = new NHLEvent($data['subtitle']); break;
case 'MLB Baseball':
$obj = new MLBEvent($data['subtitle']); break;
- case 'NFL Football':
+ case ($data['title']=='NFL Football' || $data['title']=='NFL Preseason Football'):
$obj = new NFLEvent($data['subtitle']); break;
case 'College Football':
$obj = new NCAAFEvent($data['subtitle']); break;
--- ../mre-1.1.2/class/MLBEvent.php.original 2006-11-05 17:06:57.000000000 -0600
+++ ../mre-1.1.2/class/MLBEvent.php 2010-08-28 00:02:37.000000000 -0500
@@ -27,7 +27,7 @@
/**
* URL to grab game info from
*/
- const url = 'http://scores.espn.go.com/mlb/scoreboard';
+ const url = 'http://sports.espn.go.com/mlb/bottomline/scores';
/**
* Class constructor.
@@ -43,41 +43,25 @@
trigger_error("Unable to generate valid search terms! [$gameInfo]", E_USER_WARNING);
else
{
- $data = file(self::url);
- $games = array();
- if($data !== FALSE)
- {
- // Split the huge string into individual game data
- foreach($data as $line)
- if(preg_match('/\
.*/', $line))
- {
- while(($loc = strrpos($line, 'teamTop')) !== FALSE)
- {
- $games[] = substr($line, $loc);
- $line = substr($line, 0, $loc);
- }
- break;
- }
- if(!sizeof($games))
- trigger_error("Unable to find valid game data within source!", E_USER_WARNING);
- foreach($criteria as $term)
- {
- foreach($games as $game)
- {
- if(preg_match('/' . preg_quote($term) . '/', $game))
- if(preg_match('/teamTop.*\>(.*)\<\/td\>/U', $game, $matches))
- {
- $this->setStatus($matches[1]);
- if(preg_match('/^(Final|Postponed)/', $matches[1]))
- $this->setEventOver(TRUE);
- else
- $this->setEventOver(FALSE);
- $this->setValid(TRUE);
- break 2;
- }
- }
+ $data = file(self::url);
+ if($data)
+ {
+ $data_array=explode("&", $data[0]);
+ foreach($data_array as $line)
+ {
+ $line=str_replace("%20", " ", $line);
+ $line=str_replace("Chicago Sox", "Chicago White Sox", $line); #Program guide gives Chicago White Sox, website gives Chicago Sox
+ if((strpos($line,$criteria[0]))&&(strpos($line,$criteria[1])))
+ {
+ if((strpos($line,'FINAL'))or(strpos($line,'Postponed')))
+ $this->setEventOver(TRUE);
+ else
+ $this->setEventOver(FALSE);
+ $this->setValid(TRUE);
+ break;
+ }
}
- }
+ }
}
if(!$this->isValid())
trigger_error("Unable to find MLB info for '$gameInfo'! The MLB parser may need to be updated.", E_USER_WARNING);
--- ../mre-1.1.2/class/NFLEvent.php.original 2006-11-05 17:06:57.000000000 -0600
+++ ../mre-1.1.2/class/NFLEvent.php 2010-08-28 00:06:56.000000000 -0500
@@ -27,7 +27,7 @@
/**
* URL to grab game info from
*/
- const url = 'http://scores.espn.go.com/nfl/scoreboard';
+ const url = 'http://sports.espn.go.com/nfl/bottomline/scores';
/**
* Class constructor.
@@ -44,33 +44,23 @@
else
{
$data = file(self::url);
- $games = array();
- if($data !== FALSE)
- {
- // Split the huge string into individual game data
- foreach($data as $line)
- if(preg_match('/\
.*/', $line))
- $games[] = $line;
- if(!sizeof($games))
- trigger_error("Unable to find valid game data within source!", E_USER_WARNING);
- foreach($criteria as $term)
- {
- foreach($games as $game)
- {
- if(preg_match('/' . preg_quote($term) . '/', $game))
- if(preg_match('/teamTop.*\>(.*)\<\/td\>/U', $game, $matches))
- {
- $this->setStatus($matches[1]);
- if(preg_match('/^(Final|Postponed)/', $matches[1]))
- $this->setEventOver(TRUE);
- else
- $this->setEventOver(FALSE);
- $this->setValid(TRUE);
- break 2;
- }
- }
- }
- }
+ if($data)
+ {
+ $data_array=explode("&", $data[0]);
+ foreach($data_array as $line)
+ {
+ $line=str_replace("%20", " ", $line);
+ if((strpos($line,$criteria[0]))&&(strpos($line,$criteria[1])))
+ {
+ if(strpos($line,'FINAL'))
+ $this->setEventOver(TRUE);
+ else
+ $this->setEventOver(FALSE);
+ $this->setValid(TRUE);
+ break;
+ }
+ }
+ }
}
if(!$this->isValid())
trigger_error("Unable to find NFL info for '$gameInfo'! The NFL parser may need to be updated.", E_USER_WARNING);
--- ../mre-1.1.2/class/NBAEvent.php.original 2006-11-05 17:06:57.000000000 -0600
+++ ../mre-1.1.2/class/NBAEvent.php 2010-08-28 00:09:50.000000000 -0500
@@ -27,7 +27,7 @@
/**
* URL to grab game info from
*/
- const url = 'http://scores.espn.go.com/nba/scoreboard';
+ const url = 'http://sports.espn.go.com/nba/bottomline/scores';
/**
* Class constructor.
@@ -44,35 +44,23 @@
else
{
$data = file(self::url);
- if($data !== FALSE)
- foreach($criteria as $term)
- {
- $status = '';
- $i = 0;
- while($i < sizeof($data))
- {
- if(preg_match('/' . preg_quote($term) . '/', $data[$i]))
- {
- $status = $data[$i];
- break;
- }
- ++$i;
- }
- if($i == sizeof($data))
- --$i;
-
- if(preg_match('/id.*clock"\>(.*)\<\/div/U', $data[$i], $match) ||
- preg_match('/id.*clock"\>(.*)\<\/div/U', $data[$i-1], $match))
- {
- $this->setStatus($match[1]);
- if(preg_match('/^Final/', $match[1]))
- $this->setEventOver(TRUE);
- else
- $this->setEventOver(FALSE);
- $this->setValid(TRUE);
- break;
- }
+ if($data)
+ {
+ $data_array=explode("&", $data[0]);
+ foreach($data_array as $line)
+ {
+ $line=str_replace("%20", " ", $line);
+ if((strpos($line,$criteria[0]))&&(strpos($line,$criteria[1])))
+ {
+ if(strpos($line,'FINAL'))
+ $this->setEventOver(TRUE);
+ else
+ $this->setEventOver(FALSE);
+ $this->setValid(TRUE);
+ break;
+ }
}
+ }
}
if(!$this->isValid())
trigger_error("Unable to find NBA info for '$gameInfo'! The NBA parser may need to be updated.", E_USER_WARNING);
--- ../mre-1.1.2/class/NHLEvent.php.original 2006-11-05 17:06:57.000000000 -0600
+++ ../mre-1.1.2/class/NHLEvent.php 2010-08-28 00:09:04.000000000 -0500
@@ -27,7 +27,7 @@
/**
* URL to grab game info from
*/
- const url = 'http://scores.espn.go.com/nhl/scoreboard';
+ const url = 'http://sports.espn.go.com/nhl/bottomline/scores';
/**
* Class constructor.
@@ -39,32 +39,29 @@
parent::__construct();
$criteria = $this->generateSearchTerms($gameInfo);
+
if(!sizeof($criteria))
trigger_error("Unable to generate valid search terms! [$gameInfo]", E_USER_WARNING);
else
{
$data = file(self::url);
- if($data !== FALSE)
- foreach($criteria as $term)
- {
- $status = '';
- foreach($data as $line)
- if(preg_match('/' . preg_quote($term) . '/', $line))
- {
- $status = $line;
- break;
- }
- if(preg_match('/id.*st"\>(.*)\<\/td/U', $status, $match))
- {
- $this->setStatus($match[1]);
- if(preg_match('/^Final/', $match[1]))
- $this->setEventOver(TRUE);
- else
- $this->setEventOver(FALSE);
- $this->setValid(TRUE);
- break;
- }
+ if($data)
+ {
+ $data_array=explode("&", $data[0]);
+ foreach($data_array as $line)
+ {
+ $line=str_replace("%20", " ", $line);
+ if((strpos($line,$criteria[0]))&&(strpos($line,$criteria[1])))
+ {
+ if(strpos($line,'FINAL'))
+ $this->setEventOver(TRUE);
+ else
+ $this->setEventOver(FALSE);
+ $this->setValid(TRUE);
+ break;
+ }
}
+ }
}
if(!$this->isValid())
trigger_error("Unable to find NHL info for '$gameInfo'! The NHL parser may need to be updated.", E_USER_WARNING); |