 
var basePrefix = "ctm_";
var activeSuffix = "_a";
var passiveSuffix = "_p";
var imageType = ".gif";
var ImgBaseLocation = "menu/";
var fltFade = 0.2;
var booFadeEnabled = ie && !v4 && !mc;
imageStates = new Array();

function cacheImage(objName,imgURL){
eval(objName + "= new Image(0,0);");
eval(objName + ".src = '" + imgURL + "';");
}
function redrawImage(imgDocID,imgObjName,layerName) {
if(imagesCached){
if(ns && layerName!=-1){
eval("document."+layerName+".document.images['"+imgDocID+"'].src = "+imgObjName+".src");
}else{
if(fltFade>0 && booFadeEnabled){document.images[imgDocID].style.filter="blendTrans(duration="+fltFade+")";document.images[imgDocID].filters.blendTrans.Apply()}
document.images[imgDocID].src = eval(imgObjName + '.src');
if(fltFade>0 && booFadeEnabled){document.images[imgDocID].filters.blendTrans.Play()}
}
}
}
function findObjIndex(objName){
var objIndex = -1;
for(tellerA=0; tellerA<imageStates.length; tellerA++){
if(imageStates[tellerA][0]==objName){objIndex=tellerA}
}
return objIndex;
}
function findObjDocID(objName){
var objID = -1;
for(tellerA=1; tellerA<DBarray.length; tellerA++){
if(DBarray[tellerA][2]==objName){objID=tellerA}
}
return objID;
}
var imagesCached = false;
function cacheImages(){
for(tellerA=0; tellerA<imageStates.length; tellerA++){
for(tellerB=0; tellerB<imageStates[tellerA][5].length; tellerB++){
cacheImage(imageStates[tellerA][0] +"_"+tellerB, imageStates[tellerA][5][tellerB]);
}
}
imagesCached = true;
}
function defineButton(objName,layerName,targetURL,targetName,altTag){
imageStates[imageStates.length] = new Array(objName,layerName,targetURL,targetName,altTag,new Array(ImgBaseLocation+basePrefix+objName+passiveSuffix+imageType,ImgBaseLocation+basePrefix+objName+activeSuffix+imageType),true,0);
}
function writeButton(objName,booFoldoutTrigger){
objIndex = findObjIndex(objName);
if(typeof booFoldoutTrigger == 'undefined' || !booFoldoutTrigger){
strOver = ' onmouseover="changeState(\'' + objName + '\',1)"';
strOut = ' onmouseout="changeState(\'' + objName + '\',imageStates['+objIndex+'][7])"';
}else{
strOver = ' onmouseover="if(typeof inits!=\'undefined\') menuShouldOpen(' + objIndex + ')"';
strOut = ' onmouseout="if(typeof inits!=\'undefined\') menuShouldClose()"';
}
strUrl = ' href="' + imageStates[objIndex][2] + '"';
strTarget = ' target="' + imageStates[objIndex][3] + '"';
strAlt = imageStates[objIndex][4];
strLinkStart = '<a' + strUrl + strTarget + strOver + strOut + '>';
strLinkEnd = '</a>';
strImage = '<img src="' + imageStates[objIndex][5][0] + '" alt="' + strAlt + '" border="0" name="img' + objName + '">';
return strLinkStart+strImage+strLinkEnd;
}
function writeFoldoutTrigger(objName){
strOut = writeButton(objName,true);
return strOut;
}
function makeButton(objName,layerName,targetURL,targetName,altTag,booFoldoutTrigger){
defineButton(objName,layerName,targetURL,targetName,altTag);
document.writeln(writeButton(objName,booFoldoutTrigger));
}
function returnButton(objName,layerName,targetURL,targetName,altTag,booFoldoutTrigger){
defineButton(objName,layerName,targetURL,targetName,altTag);
return writeButton(objName,booFoldoutTrigger);
}
function cloneMakeButton(objName,layerName,targetURL,targetName,altTag,intClone){
strOut = cloneReturnButton(objName,layerName,targetURL,targetName,altTag,intClone);
document.writeln(strOut);
}
function cloneReturnButton(objName,layerName,targetURL,targetName,altTag,intClone){
objIndex = findObjIndex(objName);
strCloneName = imageStates[objIndex][0];
if(layerName=='') layerName = imageStates[objIndex][0];
if(targetURL=='') strUrl = imageStates[objIndex][0];
if(targetName=='') targetName = imageStates[objIndex][0];
if(altTag=='') strAlt = imageStates[objIndex][0];
imageStates[imageStates.length] = new Array(strCloneName,layerName,targetURL,targetName,altTag,new Array(ImgBaseLocation+basePrefix+strCloneName+passiveSuffix+imageType,ImgBaseLocation+basePrefix+strCloneName+activeSuffix+imageType),true,0);
imageStates[imageStates.length-1][0] = imageStates[imageStates.length-1][0] + intClone;
return writeButton(imageStates[imageStates.length-1][0]);
}
function changeState(objName,imgState){
objIndex = findObjIndex(objName);
if(objIndex!=-1){redrawImage("img"+objName, objName+"_"+imgState, imageStates[objIndex][1])}
}
function changeStateToDefault(objName){
objIndex = findObjIndex(objName);
if(objIndex!=-1){redrawImage("img"+objName, objName+"_"+imageStates[objIndex][7], imageStates[objIndex][1])}
}
function defineState(objName,imgStateNum,imgUrlState){
objIndex = findObjIndex(objName);
imageStates[objIndex][5][imgStateNum] = imgUrlState;
cacheImage(objName+"_"+imgStateNum,imgUrlState);
}
function defaultState(objName,imgState){
objIndex = findObjIndex(objName);
if(objIndex!=-1){imageStates[objIndex][7] = imgState}
}
function allDefaultStates(imgState){
for(tellerA=0; tellerA<imageStates.length; tellerA++){
imageStates[tellerA][7] = imgState;
}
}
function redrawAll(){
for(tellerA=0; tellerA<imageStates.length; tellerA++){
if(imageStates[tellerA][6]){redrawImage("img"+imageStates[tellerA][0], imageStates[tellerA][0]+"_"+imageStates[tellerA][7], imageStates[tellerA][1])}
}
}
function showIndex(objIndex){
objName = DBarray[objIndex][2];
allDefaultStates(0);
defaultState(objName,1);
objName = DBarray[getID][2];
showName(objName);
}
function showName(objName){
defaultState(objName,1);
redrawAll();
}
function resetAll(intId){
allDefaultStates(0);
if(intId>-1){
objName = DBarray[intId][2];
defaultState(objName,1);
}
redrawAll();
}
var strPrevCache = 'harabibi';
function redrawMenuById(intActive){
if(intActive>0){
strName = DBarray[intActive][2];
redrawMenuByName(strName);
}else{
changeStateToDefault(strPrevCache);
}
}
function redrawMenuByName(strName){
changeStateToDefault(strPrevCache);
strPrevCache = strName;
changeState(strName,1);
}

