" . " --" . ">"; $strCurrentPosition = "strCurrent1=contact"; //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 "

Contact


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.

email
Please direct sales and miscellaneous inquiries to:
sales@endymion.com

Please direct technical support inquiries to:
support@endymion.com

Mailing
PO Box 142184
Gainesville, FL
32614-2184 USA

Shipping
3700 NW 91st Street, Suite B300
Gainesville, FL
32606 USA
Copyright © 1996 - 2001 Endymion Corporation
" . " --" . ">"; $time = filemtime(__FILE__); $strModDate = date("F j, Y", $time); $strModTime = date("h:i A", $time); print "File last modified $strModDate at $strModTime"; //print "
Carpe Noctem