var indicator = new indicatorObj("dotarrow.gif", "spacer.gif", 0, 0);
var indNum = 0;
var itemSeperation = 4;
var menusLoaded = false;
deRef = ""; 

var menusList = new Array();

menusList["SolutionsMenu"] = new createMenuObj("SolutionsMenu", 0, 88, 390, 150, "#ECECEC", 2);

menusList["SoftwareMenu"] = new createMenuObj("SoftwareMenu", 0, 88, 451, 75, "#ECECEC", 3);

menusList["ServicesMenu"] = new createMenuObj("ServicesMenu", 0, 88, 510, 125, "#ECECEC", 4);

menusList["SupportMenu"] = new createMenuObj("SupportMenu", 0, 88, 567, 100, "#ECECEC", 5);

menusList["CompanyMenu"] = new createMenuObj("CompanyMenu", 0, 88, 620, 85, "#ECECEC", 6);

//this shows use of submenu
//menusList["customersMenu"] = new createMenuObj("customersMenu", 1, 74, 596, 162, "#CCCCCC");
//menusList["partnersMenu"] = new createMenuObj("partnersMenu", 1, 90, 596, 162, "#CCCCCC");
//menusList["careersMenu"] = new createMenuObj("careersMenu", 1, 107, 596, 162, "#CCCCCC");

with (menusList["SolutionsMenu"])
{ items[0] = new createMenuItem(1, "Enterprise CRM","/pages?OpenAgent&cmd=page&pagename=sol.entcrm");
  items[1] = new createMenuItem(1, "Small/Medium Business CRM","/pages?OpenAgent&cmd=page&pagename=sol.smbcrm");
  items[2] = new createMenuItem(1, "e-Commerce","/pages?OpenAgent&cmd=page&pagename=sol.e-comm");
  items[3] = new createMenuItem(1, "B-2-B Solutions","/pages?OpenAgent&cmd=page&pagename=sol.b-2-b");
  items[4] = new createMenuItem(1, "Help Desk","/pages?OpenAgent&cmd=page&pagename=sol.helpdesk");
  items[5] = new createMenuItem(1, "Call Center Automation","/pages?OpenAgent&cmd=page&pagename=sol.callcenter");
  items[6] = new createMenuItem(1, "ERP Integration Automation","/pages?OpenAgent&cmd=page&pagename=sol.erpintegrate");
  items[7] = new createMenuItem(1, "Application Dev. & Admin.","/pages?OpenAgent&cmd=page&pagename=sol.appdev");
  items[8] = new createMenuItem(1, "Content Management","/pages?OpenAgent&cmd=page&pagename=sol.contentmgt");
}

with (menusList["SoftwareMenu"])
{ items[0] = new createMenuItem(1, "Overview","/pages?OpenAgent&cmd=page&pagename=software");
  items[1] = new createMenuItem(1, "MSS/Portal","/pages?OpenAgent&cmd=page&pagename=soft.mss/portal");
  items[2] = new createMenuItem(1, "MSS/CRM","/pages?OpenAgent&cmd=page&pagename=soft.mss/crm");
  items[3] = new createMenuItem(1, "MSS/Website","/pages?OpenAgent&cmd=page&pagename=soft.mss/website");
  items[4] = new createMenuItem(1, "MSS/Support","/pages?OpenAgent&cmd=page&pagename=soft.mss/support");
  items[5] = new createMenuItem(1, "MSS/COM","/pages?OpenAgent&cmd=page&pagename=soft.mss/com");
  items[6] = new createMenuItem(1, "MSS/SFA","/pages?OpenAgent&cmd=page&pagename=soft.mss/sfa");
  items[7] = new createMenuItem(1, "Microsoft CRM","/pages?OpenAgent&cmd=page&pagename=soft.microsoftcrm");
}

with (menusList["ServicesMenu"])
{ items[0] = new createMenuItem(1, "Process Engineering", "/pages?OpenAgent&cmd=page&pagename=srv.proceng");
  items[1] = new createMenuItem(1, "e-Business Consulting", "/pages?OpenAgent&cmd=page&pagename=srv.e-bizconsult");
  items[2] = new createMenuItem(1, "Online Collaboration", "/pages?OpenAgent&cmd=page&pagename=srv.collab");
  items[3] = new createMenuItem(1, "ERP Integration", "/pages?OpenAgent&cmd=page&pagename=srv.erpintg");
  items[4] = new createMenuItem(1, "Customer Order Management", "/pages?OpenAgent&cmd=page&pagename=srv.custordmgt");
}

with (menusList["SupportMenu"])
{ items[0] = new createMenuItem(1, "Knowledge Base", "/pages?OpenAgent&cmd=page&pagename=supp.kbase");
  items[1] = new createMenuItem(1, "Download Center", "/pages?OpenAgent&cmd=page&pagename=supp.dl");
  items[2] = new createMenuItem(1, "Help Desk", "/pages?OpenAgent&cmd=page&pagename=supp.hd");
  items[3] = new createMenuItem(1, "Customer Status", "/pages?OpenAgent&cmd=page&pagename=supp.custstatus");
}

with (menusList["CompanyMenu"])
{ items[0] = new createMenuItem(1, "About X1", "/pages?OpenAgent&cmd=page&pagename=x1.aboutx1");
  items[1] = new createMenuItem(1, "Contact Us", "/pages?OpenAgent&cmd=page&pagename=x1.contactus");
  items[2] = new createMenuItem(1, "Request Information", "/pages?OpenAgent&cmd=page&pagename=x1.request");
  items[3] = new createMenuItem(1, "Success Stories", "/pages?OpenAgent&cmd=page&pagename=x1.success");
  items[4] = new createMenuItem(1, "Partners", "/pages?OpenAgent&cmd=page&pagename=x1.partners");
  items[5] = new createMenuItem(1, "Press Releases", "/pages?OpenAgent&cmd=page&pagename=x1.press");
  items[6] = new createMenuItem(1, "News", "/pages?OpenAgent&cmd=page&pagename=x1.news");
  items[7] = new createMenuItem(1, "Made with MSS", "/pages?OpenAgent&cmd=page&pagename=x1.madewithmss");
}

//  items[1] = new createMenuItem(1, "Service Lines", "/services/servicelines", "svclineSubMenu");
//sample submenu
//with (menusList["svclineSubMenu"])
//{ items[0] = new createMenuItem(1, "X1 Learning Services", "/services/servicelines.asp#mls");
//  items[1] = new createMenuItem(1, "SCM Services", "/services/servicelines.asp#scm");
//  items[2] = new createMenuItem(1, "ERP Services", "/services/servicelines.asp#erp");
//  items[3] = new createMenuItem(1, "Custom Software Development, Integration and System Services", "/services/servicelines.asp#dev");
//  items[4] = new createMenuItem(1, "cCommerce Services", "/services/servicelines.asp#ccs");
//}

function createMenuObj(menuId, menuLevel, top, left, width, bgcolor, dwn_index)
{ this.menuId = menuId;
  if (!menuLevel || menuLevel == "")
    this.menuLevel = 0;
  else
    this.menuLevel = menuLevel;
  if (!top || top == "")
    this.top = 79;
  else
    this.top = top;
  if (!left || left == "")
    this.left = 100;
  else
    this.left = left;
  if (!width || width == "")
    this.width = 125;
  else
    this.width = width;
  if (!bgcolor || bgcolor == "")
    this.bgcolor = "#FFFFFF";
  else
    this.bgcolor = bgcolor;
  if (!dwn_index || dwn_index == "")
    this.dwn_index = 1;
  else
    this.dwn_index = dwn_index;
  this.items = new Array();
}

function createMenuItem(sepType, text, URL, showSub)
{ this.sepType = sepType;
  this.text = text;
  this.URL = URL;
  this.showSub = showSub;
}

function generateMenu()
{ if (this.menuLevel == 0)
    genTopMenu(this.top, this.left, this.width, this.menuId, this.bgcolor, this.items, this.dwn_index)
  else
    genSubMenu(this.top, this.left, this.width, this.menuId, this.bgcolor, this.items)
}

if (isDHTML) createMenuObj.prototype.genMenu = generateMenu;

function genTopMenu(top, left, width, menuId, bgcolor, items, dwn_index)
{ var contentWidth = width - 2 - (2 * indicator.width);
  var textOut = "";

  textOut += showDiv(menuId, top, left, width, 0);

  textOut += '<tr><td width="4px" rowspan="' + (items.length * 2 + 1) + '" background="' + img_folder + 'spacer.gif" bgcolor="' + bgcolor + '"><img src="' + img_folder + 'spacer.gif" width="4" height="1" alt="" border="0"></td>';
  textOut += '<td width="' + indicator.width + 'px" bgcolor="' + bgcolor + '"><img src="' + img_folder + 'spacer.gif" width="' + indicator.width + '" height="1" alt="" border="0"></td>';
  textOut += '<td width="' + contentWidth + 'px" bgcolor="' + bgcolor + '"><img src="' + img_folder + 'spacer.gif" width="' + contentWidth + '" height="1" alt="" border="0"></td>';
  textOut += '<td width="' + indicator.width + 'px" align="right"><img src="' + img_folder + 'menu_tr.gif" width="8" height="6" alt="" border="0"></td>';
  textOut += '</tr>\n\n';

  for (i = 0; i < items.length; i++)
  { textOut += '<tr valign="top" bgcolor="' + bgcolor + '">';
    if (items[i].URL == 2)
      textOut += showHeader(contentWidth, items[i].text);
    else
    { textOut += showItem1(contentWidth, items[i].URL) + 'clearCurrent2(\'' + items[i].showSub + '\');';
      textOut += showItem2(items[i].showSub, items[i].URL, items[i].text);

      textOut += '<td width="' + indicator.width + 'px" valign="middle">';
      if (items[i].showSub)
        textOut += '<img src="' + img_folder + 'dotarrow.gif" width="' + indicator.width + '" height="' + indicator.height + '" alt="" border="0">';
      else
        textOut += '<img src="' + img_folder + 'spacer.gif" width="1" height="1" alt="" border="0">';
      textOut += '</td></tr>\n\n';

      indNum++;
    }
    if (i < items.length - 1)
      textOut += showSeparator(items[i].sepType, bgcolor, width);
  }
  textOut += '<tr><td width="' + indicator.width + 'px" bgcolor="' + bgcolor + '"><img src="' + img_folder + 'spacer.gif" width="1" height="1" alt="" border="0"></td>';
  textOut += '<td width="' + contentWidth + 'px" bgcolor="' + bgcolor + '"><img src="' + img_folder + 'spacer.gif" width="' + contentWidth + '" height="1" alt="" border="0"></td>';
  textOut += '<td width="' + indicator.width + 'px" align="right"><img src="' + img_folder + 'menu_br.gif" width="8" height="6" alt="" border="0"></td></tr>\n\n';

  textOut += '<tr><td colspan="5">&nbsp;<!-- <img src="' + img_folder + 'buttons/sub_dwn_' + dwn_index + '.gif" border="0" alt=""> --></td></tr>\n\n';

  textOut += '</table></div>\n\n';
  
  document.write(textOut);
}

function genSubMenu(top, left, width, menuId, bgcolor, items)
{ var contentWidth = width - 4 - (2 * indicator.width);
  var textOut = "";

  textOut += showDiv(menuId, top, left, width, 1);

  textOut += '<tr><td width="4px" rowspan="' + (items.length * 2 + 1) + '" background="' + img_folder + 'menu_shad.gif" bgcolor="' + bgcolor + '"><img src="' + img_folder + 'spacer.gif" width="4" height="1" alt="" border="0"></td>';
  textOut += '<td width="' + indicator.width + 'px" bgcolor="' + bgcolor + '"><img src="' + img_folder + 'spacer.gif" width="' + indicator.width + '" height="1" alt="" border="0"></td>';
  textOut += '<td width="' + contentWidth + 'px" bgcolor="' + bgcolor + '"><img src="' + img_folder + 'spacer.gif" width="' + contentWidth + '" height="1" alt="" border="0"></td>';
  textOut += '<td width="' + indicator.width + 'px" align="right"><img src="' + img_folder + 'menu_tr.gif" width="8" height="6" alt="" border="0"></td>';
  textOut += '</tr>\n\n';

  for (i = 0; i < items.length; i++)
  { textOut += '<tr valign="top" bgcolor="' + bgcolor + '">';
    if (items[i].URL == 2)
      textOut += showHeader(contentWidth, items[i].text);
    else
    { textOut += showItem1(contentWidth, items[i].URL);
      textOut += showItem2(items[i].showSub, items[i].URL, items[i].text);
      textOut += '<td width="' + indicator.width + 'px" valign="middle"><img src="' + img_folder + 'spacer.gif" width="1" height="1" alt="" border="0"></td>\n';
      textOut += '</tr>\n\n';
    
      indNum++;
    }
    if (i < items.length - 1)
      textOut += showSeparator(items[i].sepType, bgcolor, width);
  }

  textOut += '<tr><td width="' + indicator.width + 'px" bgcolor="' + bgcolor + '"><img src="' + img_folder + 'spacer.gif" width="1" height="1" alt="" border="0"></td><td width="' + contentWidth + 'px" bgcolor="' + bgcolor + '"><img src="' + img_folder + 'spacer.gif" width="' + contentWidth + '" height="1" alt="" border="0"></td><td width="' + indicator.width + 'px" align="right"><img src="' + img_folder + 'menu_br.gif" width="8" height="6" alt="" border="0"></td></tr>\n\n';

  textOut += '</table></div>\n\n';

  document.write(textOut);
}

function showDiv(menuId, top, left, width, zOffset)
{ tOut = "";
    tOut += '<div id="' + menuId + '" ';
  if (is_nav4)
    tOut += 'class="dropdown"';
  else
    tOut += 'style="position: absolute; z-index: ' + (30 + zOffset) + '; visibility: hidden; top: ' + top + '; left: ' + left + '; width: ' + width + ';"';
  tOut += '><table width="' + width + 'px" border="0" cellspacing="0" cellpadding="0" vspace="0" hspace="0">\n\n';
  
  return tOut;
}

function showHeader(cwidth, htext)
{ return '<td width="' + indicator.width + 'px" valign="middle"><img src="' + img_folder + 'spacer.gif" width="1" height="1" alt="" border="0"></td><td width="' + cwidth + 'px" valign="middle" class="menuBold">' + htext + '</td><td width="' + indicator.width + 'px" valign="middle"><img src="' + img_folder + 'spacer.gif" width="1" height="1" alt="" border="0"></td></tr>\n\n';
}

function showSeparator(type, bgcolor, width)
{ if (type == 2)
    return '<tr bgcolor="' + bgcolor + '"><td colspan="3" valign="middle" align="center"><img src="' + img_folder + 'menu_sep.gif" width="' + (width - 8) + '" height="1" alt="" border="0" vspace="' + itemSeperation + '"></td></tr>\n\n';
  else
    return '<tr bgcolor="' + bgcolor + '"><td colspan="3"><img src="' + img_folder + 'spacer.gif" width="1" height="' + itemSeperation + '" alt="" border="0"></td></tr>\n\n';
}

function showItem1(cwidth, iURL)
{ tOut = "";
  tOut = '<td width="' + indicator.width + 'px" valign="middle"><img src="' + img_folder + indicator.off + '" width="' + indicator.width + '" height="' + indicator.height + '" alt="" border="0" name="ind' + indNum + '"></td><td width="' + cwidth + '" valign="middle" class="menu"><a href="';

  if (iURL == "#")
    tOut += 'JavaScript: myvoid();';
  else
    tOut +=  deRef + iURL;

  tOut += '" class="menu" onMouseover="'
  if (!is_nav5up)
    tOut += 'changeImage(\'ind' + indNum + '\', \'ind_on\');';
  return tOut;
}

function showItem2(showSub, iURL, iText)
{ tOut = "";
  if (showSub)
    tOut += ' showMenu(\'' + showSub + '\');';

  tOut += '" onMouseout="'
  if (!is_nav5up)
    tOut += 'changeImage(\'ind' + indNum + '\', \'ind_off\');';

  if (showSub)
    tOut += ' initCheckMenu();">';
  else
    tOut += '">';
  tOut += iText + '</a></td>';
  return tOut;
}

function generateMenus()
{ for (currMenu in menusList)
  { menusList[currMenu].genMenu();
    add2myLayers(currMenu);
  }
}
