<?
/*
  swap.php:
    used to bounce between development servers and production servers
    when developing web sites.
*/

$url_regexes = array(
    
// define the array of urls and where to bounce them to
    
array(
        
// PCRE regex to match against the current page's url
        
'source'    => '%^https?://devel\.czechboys\.com/*(.*)$%si',

        
// location to bounce to on a match
        
'target'    => 'http://cb/$1',
        ),
    array(
        
'source'    => '%^https?://niki(?:\.instinct\.org)?/~pgl/*(.*)$%si',
        
'target'    => 'http://pgl.yoyo.org/$1',
        ),
    array(
        
'source'    => '%^https?://cb/*(.*)$%si',
        
'target'    => 'http://devel.czechboys.com/$1',
        ),
    array(
        
'source'    => '%^https?://pgl\.yoyo\.org/*(.*)$%si',
        
'target'    => 'http://niki.instinct.org/~pgl/$1',
        ),
    array(
        
'source'    => '%^https?://(?:www\.)?pra(?:gue|ha)\.tv/*(.*)$%si',
        
'target'    => 'http://test.prague.tv/$1',
        ),
    array(
        
'source'    => '%^https?://store\.home\.instinct\.org/*(.*)$%si',
        
'target'    => 'http://store.prague.tv/$1',
        ),
    array(
        
'source'    => '%^https?://store\.prague\.tv/*(.*)$%si',
        
'target'    => 'http://store.home.instinct.org/$1',
        ),
    array(
        
'source'    => '%^https?://test\.prague\.tv/*(.*)$%si',
        
'target'    => 'http://prague.tv/$1',
        ),
    );

// loop through each pair and check for a match
foreach ($url_regexes as $url) {
    
// try to replace current url with target
    
$newurl    preg_replace($url['source'], $url['target'], $comingfrom);

    
// if no change in current url, skip to next url pair
    
if ($newurl == $comingfrom)
        continue;

    
// ... otherwise, redirect and exit
    
header("Location: $newurl");
    exit;
    }

// I have pages load in new windows; change this if you don't:
?>
<body onload="window.close();">