// JS-Menu 0.5.1 by Vitaly Polonetsky (faqer@topxioft.com) 
// GNU GENERAL PUBLIC LICENSE

//  ####################    SIZE / PLACE  CONFIGURATION    ####################
right_sided=0;                                      // Right sided (0-no,1-yes)
one_open_menu=0;                           // Show only one open menu at a time

right_side_margin=10;                               // HTML page's right margin
page_width=140;                                            // HTML page's width
top_menu=120;                             // Top location of the first main menu
left_main_menu=20;                               // Left location of main menus
left_sub_menu=30;                                 // Left location of sub menus
top_after_sub_menu=25;                          // Skip N pixels after sub menu
top_before_sub_menus=25;                       // Skip N pixels after main menu
top_after_sub_menus=30;                       // Skip N pixels before main menu

//  ####################    MENU  AMOUNT  CONFIGURATION    ####################
menu_len=5;                                               // Num. of main menus

var menucount;
menucount=new Array(menu_len+1);
menucount[0]=menu_len;
menucount[1]=5;                     // Num. of sub menus in the first main menu
menucount[2]=4;
menucount[3]=0;
menucount[4]=0;
menucount[5]=0;

var menu;
menu=new Array(menucount[0]+1);
for(i=1;i<=menucount[0];i++)
  menu[i] = new Array(menucount[i]+1);
menu[0]=new Array(menucount[0]+1);

//  #####################    MENU  TEXT  CONFIGURATION    #####################
menu[1][0]='Offices';
menu[1][1]='<a href=# onclick=showoffice(\'Norfolk\') >Norfolk</a>';
menu[1][2]='<a href=# onclick=showoffice(\'VirginiaBeach\') >Va Beach</a>';
menu[1][3]='<a href=# onclick=showoffice(\'NewtonRoad\')>Newtown Road</a>';
menu[1][4]='<a href=# onclick=showoffice(\'Portsmouth\')>Portsmouth</a>';
menu[1][5]='<a href=# onclick=showoffice(\'Suffolk\')>Suffolk</a>';
menu[1][6]='<a href=# onclick=showoffice(\'Chesapeake\')>Chesapeake</a>';
menu[2][0]='Practice Areas';
menu[2][1]='<a href=# onclick=showpractice(\'Bankruptcy\')>Bankruptcy</a>';
menu[2][2]='<a href=# onclick=showpractice(\'cri\')>Criminal</a>';
menu[2][3]='<a href=# onclick=showpractice(\'Divorce\')>Divorce</a>';
menu[2][4]='<a href=# onclick=showpractice(\'tra\')>Traffic</a>';
menu[3][0]='<a href=# onclick=showprofiles()>Attorney Profiles</a>';
menu[4][0]='<a href=# onclick=showjobs()>Employment</a>';
menu[5][0]='<a href=# onclick=showform()>Contact an Attorney</a>';

// Public Variables
var timerevent=0;
var can_redraw=0;
//var net_ie=netscape_ie();
//var net6=netscape6();

    var agt=navigator.userAgent.toLowerCase();

    var is_major = parseInt(navigator.appVersion);
    var is_minor = parseFloat(navigator.appVersion);

    var is_nav  = ((agt.indexOf('mozilla')!=-1) && (agt.indexOf('spoofer')==-1)
                && (agt.indexOf('compatible') == -1) && (agt.indexOf('opera')==-1)
                && (agt.indexOf('webtv')==-1) && (agt.indexOf('hotjava')==-1));
    var is_nav2 = (is_nav && (is_major == 2));
    var is_nav3 = (is_nav && (is_major == 3));
    var is_nav4 = (is_nav && (is_major == 4));
    var is_nav4up = (is_nav && (is_major >= 4));
    var is_navonly      = (is_nav && ((agt.indexOf(";nav") != -1) ||
                          (agt.indexOf("; nav") != -1)) );
    var is_nav6 = (is_nav && (is_major == 5));
    var is_nav6up = (is_nav && (is_major >= 5));
    var is_gecko = (agt.indexOf('gecko') != -1);

    var is_ie     = ((agt.indexOf("msie") != -1) && (agt.indexOf("opera") == -1));
    var is_ie3    = (is_ie && (is_major < 4));
    var is_ie4    = (is_ie && (is_major == 4) && (agt.indexOf("msie 5")==-1) );
    var is_ie4up  = (is_ie && (is_major >= 4));
    var is_ie5    = (is_ie && (is_major == 4) && (agt.indexOf("msie 5.0")!=-1) );	
    var is_ie5_5  = (is_ie && (is_major == 4) && (agt.indexOf("msie 5.5") !=-1));
    var is_ie5up  = (is_ie && !is_ie3 && !is_ie4);
    var is_ie5_5up =(is_ie && !is_ie3 && !is_ie4 && !is_ie5);

BuildMenu();
setTimeout('RedrawMenu();',500);


// ############################################################################


function RedrawMenu(menuindex)
{
  var layer_top=top_menu;
  var x1,y1;
  for(i=1;i<=menucount[0];i++)
  {
    if(menu[0][i]+''=='undefined')
    {
      menu[0][i]=-1;
      is_nav4?
      document.layers['menu'+i].top=top_menu+((i-1)/2)*((i-1)/2)*100:
      is_ie4?
      document.all('menu'+i).style.top=top_menu+(((i-1)/2)*((i-1)/2))*100:
      document.getElementById('menu'+i).style.top=top_menu+(((i-1)/2)*((i-1)/2))*100;
      if(!right_sided)
      {
        is_nav4?
        document.layers['menu'+i].left=-page_width:
  is_ie4?
        document.all('menu'+i).style.left=-page_width:  
        document.getElementById('menu'+i).style.left=-page_width;
      }
      else
      {
        is_nav4?
        document.layers['menu'+i].left=page_width:
  is_ie4?
        document.all('menu'+i).style.left=page_width:
        document.getElementById('menu'+i).style.left=page_width;
      }
      is_nav4?
      document.layers['menu'+i].visibility='show':
      is_ie4?
      document.all('menu'+i).style.visibility='visible':
      document.getElementById('menu'+i).style.visibility='visible';
      MoveLayer('menu'+i,left_main_menu,layer_top);
    }
    else
    {
      // SUB menus
      if((menu[0][i]==1)&&(!one_open_menu||can_redraw==1))
      {
        layer_top+=top_before_sub_menus;
        sub_menu_top=layer_top;
        add_top=top_before_sub_menus;
        for(j=1;j<=menucount[i];j++)
        {
          // SUB MENU LAYER HEADER
          if(is_nav4)
            document.layers['menu'+i+'submenu'+j].top=layer_top;
          else
            if(menuindex==i)
              is_ie4?
        document.all('menu'+i+'submenu'+j).style.top=layer_top:
        document.getElementById('menu'+i+'submenu'+j).style.top=layer_top;

          // SUB MENU LAYER FOOTER      
          if(j<menucount[i])
          {
            layer_top+=top_after_sub_menu;
            add_top+=top_after_sub_menu;
          }
        }

        if(menuindex==i)
        {
          // MOVE MAIN MENUS
          for(temp0=menucount[0];temp0>i;temp0--)
          {
            if(menu[0][temp0]==1)
              for(temp02=menucount[temp0];temp02>0;temp02--)
        {	
                MoveLayer('menu'+temp0+'submenu'+temp02,'undefined',is_nav4?document.layers['menu'+temp0+'submenu'+temp02].top+add_top:net6px(is_ie4?document.all('menu'+temp0+'submenu'+temp02).style.top:document.getElementById('menu'+temp0+'submenu'+temp02).style.top)+add_top);
        }
            MoveLayer('menu'+temp0,'undefined',is_nav4?document.layers['menu'+temp0].top+add_top:net6px(is_ie4?document.all('menu'+temp0).style.top:document.getElementById('menu'+temp0).style.top)+add_top);
          }

          // BRING SUB MENUS
          for(j=1;j<=menucount[i];j++)
          {
            is_nav4?
            y2=document.layers['menu'+i+'submenu'+j].top:
            y2=net6px(is_ie4?document.all('menu'+i+'submenu'+j).style.top:document.getElementById('menu'+i+'submenu'+j).style.top);
            is_nav4?
            document.layers['menu'+i+'submenu'+j].top=sub_menu_top+((j-1)/2)*((j-1)/2)*100:
      is_ie4?
            document.all('menu'+i+'submenu'+j).style.top=sub_menu_top+(((j-1)/2)*((j-1)/2))*100:
            document.getElementById('menu'+i+'submenu'+j).style.top=sub_menu_top+(((j-1)/2)*((j-1)/2))*100;
            if(!right_sided)
            {
              is_nav4?
              document.layers['menu'+i+'submenu'+j].left=-page_width:
        is_ie4?
              document.all('menu'+i+'submenu'+j).style.left=-page_width:
              document.getElementById('menu'+i+'submenu'+j).style.left=-page_width;
            }
            else
            {
              is_nav4?
              document.layers['menu'+i+'submenu'+j].left=page_width:
        is_ie4?
              document.all('menu'+i+'submenu'+j).style.left=page_width:
              document.getElementById('menu'+i+'submenu'+j).style.left=page_width;
            }
            is_nav4?
            document.layers['menu'+i+'submenu'+j].visibility='show':
      is_ie4?
            document.all('menu'+i+'submenu'+j).style.visibility='visible':
            document.getElementById('menu'+i+'submenu'+j).style.visibility='visible';
            !right_sided?
            MoveLayer('menu'+i+'submenu'+j,left_sub_menu,y2):
            MoveLayer('menu'+i+'submenu'+j,left_sub_menu-right_side_margin,y2);
          }
        }
      }	
      else
      {
        if(!(one_open_menu&&menuindex==i&&menu[0][menuindex]==1))
        if(!(one_open_menu&&menuindex!=i&&menu[0][i]==-1))
        {
          menu[0][i]=-1;
          add_top=-top_before_sub_menus;
          for(j=1;j<=menucount[i];j++)
          {
            if((menuindex==i)||(one_open_menu))
            {
              if(!right_sided)
        {
                is_ie4?
    MoveLayer('menu'+i+'submenu'+j,-page_width,layer_top+top_before_sub_menus+((j-1)/2)*((j-1)/2)*100,"document.all('menu"+i+"submenu"+j+"').style.visibility=\"hidden\";"):
    MoveLayer('menu'+i+'submenu'+j,-page_width,layer_top+top_before_sub_menus+((j-1)/2)*((j-1)/2)*100,"document.getElementById('menu"+i+"submenu"+j+"').style.visibility=\"hidden\";");
        }
        else
        {
                is_ie4?
                MoveLayer('menu'+i+'submenu'+j,page_width,layer_top+top_before_sub_menus+((j-1)/2)*((j-1)/2)*100,"document.all('menu"+i+"submenu"+j+"').style.visibility=\"hidden\";"):
                MoveLayer('menu'+i+'submenu'+j,page_width,layer_top+top_before_sub_menus+((j-1)/2)*((j-1)/2)*100,"document.getElementById('menu"+i+"submenu"+j+"').style.visibility=\"hidden\";");
        }
              if(is_nav4)
                document.layers['menu'+i+'submenu'+j].visibility="hide";
            }

            if(j<menucount[i])
            {
              add_top-=top_after_sub_menu;
            }
          }

          // MOVE MAIN MENUS
          if(menuindex==i||one_open_menu)
            for(temp0=i+1;temp0<=menucount[0];temp0++)
            {
              MoveLayer('menu'+temp0,'undefined',is_nav4?document.layers['menu'+temp0].top+add_top:net6px(is_ie4?document.all('menu'+temp0).style.top:document.getElementById('menu'+temp0).style.top)+add_top);
              if(menu[0][temp0]==1)
                for(temp02=1;temp02<=menucount[temp0];temp02++)
                  MoveLayer('menu'+temp0+'submenu'+temp02,'undefined',is_nav4?document.layers['menu'+temp0+'submenu'+temp02].top+add_top:net6px(is_ie4?document.all('menu'+temp0+'submenu'+temp02).style.top:document.getElementById('menu'+temp0+'submenu'+temp02).style.top)+add_top);
            }
        }
      }70
    }
    layer_top+=top_after_sub_menus;
  }

  // OPEN ONE MENU
  if(one_open_menu&&menu[0][menuindex]==1)
  {
    if(can_redraw==1)
      can_redraw=0;
    else
    {
      can_redraw=1;
      timerevent+=10;
      setTimeout('RedrawMenu('+menuindex+'); timerevent-=10;',timerevent);
    }
  }
}

function BuildMenu()
{
  var layer_top=top_menu;
  for(i=1;i<=menucount[0];i++)
  {
    // MAIN MENU LAYER HEADER
    is_nav4?
    document.writeln('<LAYER ID="menu'+i+'" VISIBILITY="hide" TOP='+layer_top+' LEFT='+left_main_menu+' WIDTH='+(page_width-left_main_menu-right_side_margin)+'>'):
    document.writeln('<DIV ID="menu'+i+'" BORDER=1 STYLE="visibility:hidden;position:absolute;top:'+layer_top+'px;left:'+left_main_menu+'px;">');

    if(right_sided)
    {
      is_nav4?
      document.writeln('<DIV ALIGN="right">'):
      document.writeln('<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 WIDTH="'+(page_width-left_main_menu-right_side_margin)+'px"><TR><TD ALIGN="right">');
    }

    // MAIN MENU LAYER BODY
    if(menucount[i]>0)
    {
      is_ie4up||is_nav6up?
      document.write('<A HREF="javascript:open_close_sub_menus('+i+');" CLASS="menu" onMouseOver="setTimeout(\'self.status=\\\''+menu[i][0]+'\\\';\',1);" onMouseOut="self.status=\'\';">'):
      document.write('<A HREF="javascript:open_close_sub_menus('+i+');" CLASS="menu" onMouseOver="self.status=\''+menu[i][0]+'\'; return true;" onMouseOut="self.status=\'\'; return true;">');
    }
    document.write(menu[i][0]);
    if(menucount[i]>0)
      document.write('</A>');
    document.writeln();

    // MAIN MENU LAYER FOOTER
    if(right_sided)
    {
      is_nav4?
      document.writeln('</DIV>'):
      document.writeln('</TD></TR></TABLE>');
    }

    is_nav4?
    document.writeln('</LAYER>'):
    document.writeln('</DIV>');

    // SUB MENUS
    for(j=1;j<=menucount[i];j++)
    {
      // SUB MENU LAYER HEADER
      is_nav4?
      document.writeln('<LAYER ID="menu'+i+'submenu'+j+'" VISIBILITY="hide" TOP='+layer_top+' LEFT='+left_sub_menu+' WIDTH='+(page_width-left_sub_menu-right_side_margin)+'>'):
      document.writeln('<DIV ID="menu'+i+'submenu'+j+'" STYLE="visibility:hidden;position:absolute;top:'+layer_top+'px;left:'+left_sub_menu+'px;">');

      if(right_sided)
      {
  is_nav4?
        document.writeln('<DIV ALIGN="right">'):
        document.writeln('<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 WIDTH="'+(page_width-left_sub_menu-right_side_margin)+'px"><TR><TD ALIGN="right">');
      }

      // SUB MENU LAYER BODY
      document.writeln(menu[i][j]+'<BR>');

      // SUB MENU LAYER FOOTER
      if(right_sided)
      {
  is_nav4?
        document.writeln('</DIV>'):
        document.writeln('</TD></TR></TABLE>');
      }

      is_nav4?
      document.writeln('</LAYER>'):
      document.writeln('</DIV>');
    }
    layer_top+=top_after_sub_menus;
  }
}

function MoveLayer(layer_name,left,top,after_move_action)
{
  var dont_move=0;
  index_menu=layer_name.indexOf("menu");
  index_submenu=layer_name.indexOf("submenu");
  name_length=layer_name.length;
  if(index_menu==0)
  {
    if(index_submenu!=-1)
    {
      if(menu[layer_name.substr(index_menu+4,index_submenu-4)][layer_name.substr(index_submenu+7,name_length)]=="")
        dont_move=1;
    }
    else
    {
      if(menu[layer_name.substr(index_menu+4,name_length)][0]=="")
        dont_move=1;
    }
  }
  if(dont_move!=1)
  {
    layer=is_nav4?document.layers[layer_name]:is_ie4?document.all(layer_name):document.getElementById(layer_name);
    x1=is_nav4?document.layers[layer_name].left:eval(is_ie4?document.all(layer_name).style.pixelLeft:document.getElementById(layer_name).style.pixelLeft);
    y1=is_nav4?document.layers[layer_name].top:eval(is_ie4?document.all(layer_name).style.pixelTop:document.getElementById(layer_name).style.pixelTop);
    if(left+''=='undefined')
      left=x1;
    if(top+''=='undefined')
      left=y1;
    // Netscape 6:
    if(x1+''=='undefined')
      x1=net6px(is_ie4?document.all(layer_name).style.left:document.getElementById(layer_name).style.left);
    if(y1+''=='undefined')
      y1=net6px(is_ie4?document.all(layer_name).style.top:document.getElementById(layer_name).style.top);
    x2=left;
    y2=top;
    speed=30;
    if(is_nav4) waitspeed=Math.sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2))/110*50;
    for(temp=0;temp<speed;temp++)
    {
      // MOVE ACTION
      if(is_nav4)
      {
        layer.left=x1-(x1-x2)/speed*temp;
        layer.top=y1-(y1-y2)/speed*temp;
        for(temp2=0;temp2<waitspeed*5;temp2++);
      }
      else
      {
        timerevent+=10;
  is_ie4?
        setTimeout('document.all(\''+layer_name+'\').style.left='+(x1-(x1-x2)/speed*temp)+'; document.all(\''+layer_name+'\').style.top='+(y1-(y1-y2)/speed*temp)+'; timerevent-=10;',timerevent):
        setTimeout('document.getElementById(\''+layer_name+'\').style.left='+(x1-(x1-x2)/speed*temp)+'; document.getElementById(\''+layer_name+'\').style.top='+(y1-(y1-y2)/speed*temp)+'; timerevent-=10;',timerevent);
      }
    }

    if(is_nav4)
    {
      layer.left=x2;
      layer.top=y2;
    }
    else
    {
      timerevent+=10;
      is_ie4?
      setTimeout('document.all(\''+layer_name+'\').style.left='+x2+'; document.all(\''+layer_name+'\').style.top='+y2+'; timerevent-=10;',timerevent):
      setTimeout('document.getElementById(\''+layer_name+'\').style.left='+x2+'; document.getElementById(\''+layer_name+'\').style.top='+y2+'; timerevent-=10;',timerevent);

      if(after_move_action)
      {
        timerevent+=10;
        setTimeout(after_move_action+" timerevent-=10;",timerevent);
      }
    }
  }
}

function open_close_sub_menus(menuindex)
{
  timerevent+=10;
  setTimeout("open_close_sub_menus_call("+menuindex+"); timerevent-=10;",timerevent);
}

function open_close_sub_menus_call(menuindex)
{
  menu[0][menuindex]==-1?menu[0][menuindex]=1:menu[0][menuindex]=-1;
  RedrawMenu(menuindex);
}

function net6px(value)
{
  var text=value;
  var length=text.length;
  var retval=text.substr(0,length-2);
  retval=retval*1;
  return retval;
}


function init()
{ 

 c_canvas = document.getElementById("c");
    ctx = c_canvas.getContext("2d");
}
function bk()
{ 
init();
rect(0,0,250,600,'#00f');
rect(0,100,250,500,'#f00');

var img=new Image();
img.onload=function() { ctx.drawImage(img,0,0,250,111); } 
img.src='logo.gif';
}
function movein(div)
{ 
var object=document.getElementById(div);
object.style.position='absolute';
for (var n=-50; n < 400; n++)
{ 
object.style.left=n;
}


}
function circle(x,y,r) {
    ctx.beginPath();
    ctx.arc(x, y, r, 0, Math.PI*2, true);
    ctx.closePath();
    ctx.fill();
}70
                         
function showimage(img)
{ 
ctx.drawImage(img,0,0,250,111);
}                                                                                 
function rect(x,y,w,h,r) {
    ctx.beginPath();
    ctx.rect(x,y,w,h);
    ctx.closePath();
	ctx.fillStyle=r;	
    ctx.fill(r);
} 
function fillup(m)
{
init();
var y=m+40;
}

function showoffice(office)
{ 
document.getElementById('activecell').value='content';
b=document.getElementById('content');
b.innerHTML=office;
http=createRequestObject();
http.open('get','Locations/'+office+'/'+office+'.htm')
	http.onreadystatechange=handledayresponse;
		http.send(null);	
}



function handledayresponse()
{ 
v=document.getElementById('activecell').value;
	response3=http.responseText;
if (http.readyState == 4)
	{ 
		document.getElementById(v).innerHTML=response3;
	}

	else
	{ 
	}
}

function createRequestObject()
{ 
	var ro;
	var browser=navigator.appName;
	if (browser=="Microsoft Internet Explorer")
	{ 
	ro=new ActiveXObject("Microsoft.XMLHTTP");

	}
	else
	{ 
	ro= new XMLHttpRequest();
	}
	return ro;
}
