10
           
            
                
     
    
    Okay... So I thought about it a little more and here's some code that will work - most of the time. Just place this code at the top of your theme (or include it) and then you can reference the <{$ishome}> smarty variable to figure out if you're on the home page.
 <{php}> 
global $xoopsConfig; 
$xbase = basename(XOOPS_URL); 
$myloc = $_SERVER['PHP_SELF']; 
 
$xdir = strtolower(DIRECTORY_SEPARATOR . $xbase); 
if ($xdir != DIRECTORY_SEPARATOR) { 
  $pattern = "'/".$xbase."/'"; 
  $myloc = preg_replace($pattern,'',$myloc); 
} 
$startloc= (!empty($xoopsConfig ['startpage'])) ? 'modules'.DIRECTORY_SEPARATOR.$xoopsConfig['startpage'].DIRECTORY_SEPARATOR.'index.php' : 'index.php' ; 
if ( ($myloc == $startloc) && (empty($_SERVER['argv'])) ) { 
 $this->assign('ishome',true); 
}else{ 
  $this->assign('ishome',false); 
} 
<{/php}>  
The code at the beginning, while strange, checks to see if XOOPS is installed in a subdirectory off the site's root. So this will work even if XOOPS is installed in 
http://yoursite.com/xoops instead of in 
http://yoursite.comThere's an instance where if you post variables to the module's index page then it will still tell you it's a home page, even though technically it's not the "home" page. The code in the bug report that nachenko referenced above suffers from the same limitation.
EDIT:Fixed DIRECTORY_SEPARATOR for both WIN and *nix - again 
