// Hides PHP code from DreamWeaver.
//print " %" . "> " . " --" . ">";
$strCurrentPosition =
"strCurrent1=contact";
//print "
 |
 |
// Hides PHP code from DreamWeaver.
//print " %" . "> " . " --" . ">";
/****************************************************************************
* This section defines the 'snippets' of HTML that will be produced for
* each item in the menu, depending on whether they are currently the
* selected item or not.
***************************************************************************/
// The actual interface snippets.
$strSelected1 = "
| \n";
$strUnSelected1 = " | \n";
$strSelected2 = " | \n";
$strUnSelected2 = " | \n";
$strHeader2 = " | \n";
$strSelHeader2 = " | \n";
$strFooter2 = " | \n";
$strSelected3 = " | \n";
$strUnSelected3 = " | \n";
$strHeader3 = " | \n";
$strSelHeader3 = " | \n";
$strFooter3 = " | \n";
$strSelected4 = " | \n";
$strUnSelected4 = " | \n";
/****************************************************************************
* This is the two-dimensional array that describes the structure of the
* site that is being navigated.
***************************************************************************/
$aStructure =
array(
array(array( "home" ),
array( "28", "/" )),
array(array( "contact" ),
array( "25", "/contact.htm" )),
array(array( "aboutus" ),
array( "25", "/aboutus/" )),
array(array( "aboutus", "ourname" ),
array( "21", "/aboutus/ourname.htm" )),
array(array( "aboutus", "personnel" ),
array( "21", "/aboutus/personnel.htm" )),
array(array( "products" ),
array( "25", "/products/" )),
array(array( "products", "sake", "*header*" ),
array( "18", "/products/sake/" )),
array(array( "products", "sake", "features" ),
array( "21", "/products/sake/features.htm" )),
array(array( "products", "sake", "licensing" ),
array( "21", "/products/sake/licensing.htm" )),
array(array( "products", "sake", "reference" ),
array( "21", "/products/sake/doc/" )),
array(array( "products", "sake", "download" ),
array( "21", "/products/sake/download.htm" )),
array(array( "products", "sake", "mail", "*header*" ),
array( "18", "/products/sake/mail/" )),
array(array( "products", "sake", "mail", "licensing" ),
array( "18", "/products/sake/mail/licensing.htm" )),
array(array( "products", "sake", "mail", "wireless" ),
array( "18", "/products/sake/mail/wireless.htm" )),
array(array( "products", "sake", "mail", "*footer*" ),
array( "3", "/products/sake/mail/" )),
array(array( "products", "sake", "*footer*" ),
array( "3", "/products/sake/" )),
array(array( "products", "mailman", "*header*" ),
array( "18", "/products/mailman/" )),
array(array( "products", "mailman", "standard" ),
array( "21", "/products/mailman/standard.htm" )),
array(array( "products", "mailman", "professional" ),
array( "21", "/products/mailman/professional.htm" )),
array(array( "products", "mailman", "demo" ),
array( "21", "/products/mailman/demo.htm" )),
array(array( "products", "mailman", "licensing" ),
array( "21", "/products/mailman/licensing.htm" )),
array(array( "products", "mailman", "reference" ),
array( "21", "/products/mailman/reference.htm" )),
array(array( "products", "mailman", "testimonials" ),
array( "21", "/products/mailman/testimonials.htm" )),
array(array( "products", "mailman", "download" ),
array( "21", "/products/mailman/download.htm" )),
array(array( "products", "mailman", "*footer*" ),
array( "3", "/products/mailman/" )),
array(array( "support" ),
array( "28", "/support/" ))
);
/****************************************************************************
* Support functionality.
***************************************************************************/
function interpolate($strSnippet, $strName, $aParams)
{
$strReturn = ereg_replace("%name%", $strName, $strSnippet);
$strParam = current($aParams);
$iParamNum = 1;
do
{
$strParamName = "%" . $iParamNum++ . "%";
$strReturn = ereg_replace($strParamName, $strParam, $strReturn);
}
while($strParam = next($aParams));
return $strReturn;
}
/****************************************************************************
* This section actually produces output.
***************************************************************************/
// Parse the current position string into variables.
parse_str($strCurrentPosition);
// Loop through the whole site structure, producing output.
$aCurrentRow = current($aStructure);
do
{
list($strLevel1, $strLevel2, $strLevel3, $strLevel4) =
$aCurrentRow[0];
/************************************************************
* Look for top-level positions. (Always displayed.)
***********************************************************/
if((strlen($strLevel1) > 0) &&
(strlen($strLevel2) == 0))
{
// Check to see if this is the correct position.
if(($strLevel1 == $strCurrent1) &&
(strlen($strCurrent2) == 0))
echo interpolate($strSelected1, $strLevel1, $aCurrentRow[1]);
else
echo interpolate($strUnSelected1, $strLevel1, $aCurrentRow[1]);
}
/************************************************************
* Look for second-level positions. (Always displayed.)
***********************************************************/
if((strlen($strLevel2) > 0) &&
(strlen($strLevel3) == 0))
{
$strName = $strLevel1 . "_" . $strLevel2;
// Check to see if this is the correct position.
if(($strLevel1 == $strCurrent1) &&
($strLevel2 == $strCurrent2) &&
(strlen($strCurrent3) == 0))
echo interpolate($strSelected2, $strName, $aCurrentRow[1]);
else
echo interpolate($strUnSelected2, $strName, $aCurrentRow[1]);
}
/************************************************************
* Look for third-level positions. (Only displayed when
* the user is in the correct second-level position.)
***********************************************************/
if((strlen($strLevel3) > 0) &&
(strlen($strLevel4) == 0))
{
$strName = $strLevel1 . "_" . $strLevel2 . "_" . $strLevel3;
// Look for header keyword.
if($strLevel3 == '*header*')
{
// Check to see if this is the correct position.
if(($strLevel1 == $strCurrent1) &&
($strLevel2 == $strCurrent2) &&
(strlen($strCurrent3) == 0))
echo interpolate($strSelHeader2,
$strLevel1 . "_" . $strLevel2,
$aCurrentRow[1]);
else
echo interpolate($strHeader2,
$strLevel1 . "_" . $strLevel2,
$aCurrentRow[1]);
}
else if($strLevel3 == '*footer*')
{
echo interpolate($strFooter2,
$strLevel1 . "_" . $strLevel2,
$aCurrentRow[1]);
}
// Check to see if this is the correct position.
else if(($strLevel1 == $strCurrent1) &&
($strLevel2 == $strCurrent2) &&
($strLevel3 == $strCurrent3) &&
(strlen($strCurrent4) == 0))
echo interpolate($strSelected3, $strName, $aCurrentRow[1]);
else
{
// Only display un-selected third-level items when
// the user is sitting in the correct second-level position.
if($strLevel2 == $strCurrent2)
echo interpolate($strUnSelected3, $strName, $aCurrentRow[1]);
}
}
/************************************************************
* Look for fourth-level positions. (Only displayed when
* the user is in the correct second-level position.)
***********************************************************/
if(strlen($strLevel4) > 0)
{
$strName = $strLevel1 . "_" . $strLevel2 . "_" .
$strLevel3 . "_" . $strLevel4;
// Look for header keyword.
if($strLevel4 == '*header*')
{
// Check to see if this is the correct position.
if(($strLevel1 == $strCurrent1) &&
($strLevel2 == $strCurrent2) &&
($strLevel3 == $strCurrent3) &&
(strlen($strCurrent4) == 0))
echo interpolate($strSelHeader3,
$strLevel1 . "_" . $strLevel2 . "_" .
$strLevel3,
$aCurrentRow[1]);
else
echo interpolate($strHeader3,
$strLevel1 . "_" . $strLevel2 . "_" .
$strLevel3,
$aCurrentRow[1]);
}
else if($strLevel4 == '*footer*')
{
echo interpolate($strFooter3,
$strLevel1 . "_" . $strLevel2 . "_" .
$strLevel3,
$aCurrentRow[1]);
}
// Check to see if this is the correct position.
else if(($strLevel1 == $strCurrent1) &&
($strLevel2 == $strCurrent2) &&
($strLevel3 == $strCurrent3) &&
($strLevel4 == $strCurrent4))
echo interpolate($strSelected4, $strName, $aCurrentRow[1]);
else
{
// Only display un-selected fourth-level items when
// the user is sitting in the correct second-level position.
if($strLevel2 == $strCurrent2)
echo interpolate($strUnSelected4, $strName, $aCurrentRow[1]);
}
}
}
while($aCurrentRow = next($aStructure));
//print "
 |

| Telephone |
|
(352) 692-0803
If you call, please remember
that although in some ways we look like a large company, there are
actually only a handful of us here. We easily follow up on all of
our contacts within 24 hours on business days, and usually within
much less time than that. A lot of calls will end up in voice mail
simply because we are handling other calls already. Please just
leave a message and we will get right back to you.
|
 

| Mailing |
PO Box 142184
Gainesville, FL
32614-2184 USA |

|