var menuOpen = null;
var menuParent = null;
var menustate='closed';
var aswitch='';
var block_close='NO';

function findPosX(obj)
 {
  var curleft = 0;
  if(obj.offsetParent)
  while(1)
   {
    curleft += obj.offsetLeft;
    if(!obj.offsetParent)
     break;
    obj = obj.offsetParent;
   }
  else if(obj.x)
   curleft += obj.x;
   return curleft;
 }

function findPosY(obj)
 {
  var curtop = 0;
  if(obj.offsetParent)
  while(1)
   {
    curtop += obj.offsetTop;
    if(!obj.offsetParent)
     break;
    obj = obj.offsetParent;
   }
  else if(obj.y)
        curtop += obj.y;
  return curtop;
 }

function close_popups(className)
 {
  var hasClassName = new RegExp("(?:^|\\s)" + className + "(?:$|\\s)");
  var allElements = document.getElementsByTagName("*");
  var results = [];
  var element;
  for (var i = 0; (element = allElements[i]) != null; i++)
   {
    var elementClass = element.className;
    if (elementClass && elementClass.indexOf(className) != -1 && hasClassName.test(elementClass))
     {
      element.style.display = 'none';
      menustate='closed';
     }
   }
 }

if(document.addEventListener)
 {
  document.addEventListener('click', function(e) { window.event = e; }, true);
 }

function eee_menu_click(menuName, parent)
 {
  var m = document.getElementById(menuName);
  var p = document.getElementById(parent);
  menuOpen = m;
  menuParent = p;
  block_close='NO';
  try
   {
    var src = event.target || event.srcElement;
    if (src.nodeType == 3) { src = src.parentNode; }
   }
  catch(e){ }
  try { if(src.id=='block_close' && (src.tagName=='INPUT' || src.tagName=='input')) { block_close='YES'; } }
  catch(e){ }
  if(menustate=='open' && block_close=='NO') { eee_menu_close(); var runtwo='on'; } //detect background clicks
  if(m)
   {
    m.style.left = findPosX(p) + 'px';
    if(m.style.display == 'none')
     {
      if(menustate=='closed')
       {
        runtwo='';
        menustate='open';
        m.style.display = '';
        
        //MY MENU OVERFLOW CORRECTOR!
        var winW = 630, winH = 460;
        if (document.body && document.body.offsetWidth) { winW = document.body.offsetWidth; winH = document.body.offsetHeight; }
        if (document.compatMode=='CSS1Compat' && document.documentElement && document.documentElement.offsetWidth ) { winW = document.documentElement.offsetWidth; winH = document.documentElement.offsetHeight; }
        if (window.innerWidth && window.innerHeight) { winW = window.innerWidth; winH = window.innerHeight; }
        var temp = findPosX(p); var tamp = parseInt(m.offsetWidth + 20); //Moves over the window
        if(parseInt(temp + tamp) > winW) { m.style.left = parseInt(temp - tamp) + 'px'; }
        
        //Prevent the imagelist menu from appearing on top of the button that controls it
        if(menuName=='imagelistdrop_menu') { m.style.left = findPosX(p) + parseInt(15) + 'px'; }
        //END OF MENU OVERFLOW CORRECTOR
        
        //Force menus to appear at top of screen so we can put div code in the footer for SEO
        if(menuName!='imagelistdrop_menu') { m.style.top='25px'; }
       }
     }
   }
   
  //Detects link clicks (will not work unless you add class='enable_menu' to the link and image)
  if(runtwo=='on' && (src.tagName=='A' || src.tagName=='a' || src.tagName=='img' || src.tagName=='IMG' || src.tagName=='IMG') && (src.className=='enable_menu' || src.className=='arrow') && (block_close=='NO')) { eee_menu_close(); return false; }
 }


function eee_menu_close()
 {
  close_popups('sub_menu');
  close_popups('dropdown-menu-wrapper');
  close_popups('dropdown_menu');
  if (!e) var e = window.event;
 }
document.onclick = eee_menu_click;
if (document.captureEvents) document.captureEvents(Event.CLICK);

function notEmpty(elem, helperMsg)
 {
  if(elem.value.length == 0)
   {
    alert(helperMsg);
    return false;
   }
  document.search_box.submit();
 }
