menu_depth_t = 0;menu_depth_s = 0;menu_depth_b = 0;function menu_get_position(target) { if(target.offsetParent) { for(pos_x=0,pos_y=0;target.offsetParent;target=target.offsetParent) { pos_x += target.offsetLeft; pos_y += target.offsetTop; } result = new Array(pos_x, pos_y); } else result = new Array(target.x, target.y); return result; } function menu_gleam(target, position, design, level, switcher) { eval("menu_active = menu_active_" + position + ";"); switch(switcher) { case 0: if(menu_active[level][0]==target) return; if(design=="a" || design=="td") { document.getElementById("menu_" + position + "_" + target).className = "menu_" + position + "_" + design + "_" + (level+1); if(design=="td") document.getElementById("menu_td_" + position + "_" + target).className = "menu_" + position + "_" + design + "_" + (level+1); } document.getElementById("menu_" + position + "_" + target).src = "menus/menu_" + lang_val + "_" + position + "_" + target + "." + design[0]; break; case 1: if(menu_active[level][0]==target) return; if(design=="a" || design=="td") { document.getElementById("menu_" + position + "_" + target).className = "menu_" + position + "_" + design + "_" + (level+1) + "_o"; if(design=="td") document.getElementById("menu_td_" + position + "_" + target).className = "menu_" + position + "_" + design + "_" + (level+1) + "_o"; } else { if(design[1]!="none") document.getElementById("menu_" + position + "_" + target).src = "menus/menu_" + lang_val + "_" + position + "_" + target + "_o." + design[1]; else document.getElementById("menu_" + position + "_" + target).src = "menus/menu_" + lang_val + "_" + position + "_" + target + "." + design[0]; } break; case 2: if(design=="a" || design=="td") { document.getElementById("menu_" + position + "_" + target).className = "menu_" + position + "_" + design + "_" + (level+1) + "_a"; if(design=="td") document.getElementById("menu_td_" + position + "_" + target).className = "menu_" + position + "_" + design + "_" + (level+1) + "_a"; } else { if(design[2]!="none") document.getElementById("menu_" + position + "_" + target).src = "menus/menu_" + lang_val + "_" + position + "_" + target + "_a." + design[2]; else if(design[1]!="none") document.getElementById("menu_" + position + "_" + target).src = "menus/menu_" + lang_val + "_" + position + "_" + target + "_o." + design[1]; } break; } } function menu_gleam_active(position) { eval("menu_active = menu_active_" + position + ";"); eval("menu_depth = menu_depth_" + position + ";"); for(l=0;l<=menu_depth;l++) { if(menu_active[l][0]!=0) menu_gleam(menu_active[l][0], position, menu_active[l][1], l, 2); else break; } } function menu_gleam_pulled(position) { eval("menu_pulled = menu_pulled_" + position + ";"); eval("menu_depth = menu_depth_" + position + ";"); for(l=0;l<=menu_depth;l++) { if(menu_pulled[l][0]!=0) menu_gleam(menu_pulled[l][0], position, menu_pulled[l][1], l, 1); else break; } } function menu_hide_all(position, level, switcher) { eval("menu_active = menu_active_" + position + ";"); eval("menu_depth = menu_depth_" + position + ";"); for(l=menu_depth;l>=level;l--) { if(menu_active[l][0]!=0) { temp = menu_active[l][0]; menu_active[l][0] = 0; menu_gleam(temp, position, menu_active[l][1], l, 0) if(menu_active[l][2]) { if(switcher) menu_show_hide("sub_menu_" + position + "_" + temp); menu_active[l][2] = false; } } } } function menu_pull(target, position, design, level, switcher) { eval("menu_pulled = menu_pulled_" + position + ";"); menu_push_all(position, level); if(switcher) menu_show_hide("sub_menu_" + position + "_" + target); if(position=="b" && switcher) { if(level==0) { coords = menu_get_position(document.getElementById("menu_td_b_" + target)) document.getElementById("sub_menu_b_" + target).style.left = coords[0]; document.getElementById("sub_menu_b_" + target).style.top = coords[1]-document.getElementById("sub_menu_b_" + target).offsetHeight; } else { coords = menu_get_position(document.getElementById("menu_td_b_" + target)) document.getElementById("sub_menu_b_" + target).style.left = coords[0]+document.getElementById("menu_td_b_" + target).offsetWidth; document.getElementById("sub_menu_b_" + target).style.top = coords[1]-document.getElementById("sub_menu_b_" + target).offsetHeight+document.getElementById("menu_td_b_" + target).offsetHeight; } } if(position=="t" && switcher) { if(level==0) { coords = menu_get_position(document.getElementById("menu_td_t_" + target)) document.getElementById("sub_menu_t_" + target).style.left = coords[0]; document.getElementById("sub_menu_t_" + target).style.top = coords[1]+document.getElementById("menu_td_t_" + target).offsetHeight; } else { coords = menu_get_position(document.getElementById("menu_td_t_" + target)) document.getElementById("sub_menu_t_" + target).style.left = coords[0]+document.getElementById("menu_td_t_" + target).offsetWidth; document.getElementById("sub_menu_t_" + target).style.top = coords[1]; } } menu_pulled[level][0] = target; menu_pulled[level][1] = design; menu_pulled[level][2] = switcher; menu_gleam_pulled(position); } function menu_push_all(position, level) { eval("menu_pulled = menu_pulled_" + position + ";"); eval("menu_depth = menu_depth_" + position + ";"); for(l=menu_depth;l>=level;l--) { if(menu_pulled[l][0]!=0) { temp = menu_pulled[l][0]; menu_pulled[l][0] = 0; menu_gleam(temp, position, menu_pulled[l][1], l, 0) if(menu_pulled[l][2]) { menu_show_hide("sub_menu_" + position + "_" + temp); menu_pulled[l][2] = false; } } } } function menu_show_hide(target) { if(document.getElementById(target).style.display=="") document.getElementById(target).style.display = "none"; else document.getElementById(target).style.display = ""; } function menu_switch(target, position, design, level, switcher) { eval("menu_active = menu_active_" + position + ";"); if(position=="s" && switcher) { menu_hide_all(position, level, true); menu_show_hide("sub_menu_s_" + target); } else if(position=="s") menu_hide_all(position, level, true); else { menu_hide_all(position, 0, false); eval("menu_pulled = menu_pulled_" + position + ";"); for(l=0;l<=level;l++) { menu_active[l][0] = menu_pulled[l][0]; menu_active[l][1] = menu_pulled[l][1]; menu_active[l][2] = menu_pulled[l][2]; } } menu_active[level][0] = target; menu_active[level][1] = design; menu_active[level][2] = switcher; menu_gleam_active(position); if(position!="t" && menu_depth_t!="none") { menu_push_all("t", 0, false); menu_hide_all("t", 0, false); } if(position!="s" && menu_depth_s!="none") menu_hide_all("s", 0, true); if(position!="b" && menu_depth_b!="none") { menu_push_all("b", 0); menu_hide_all("b", 0, false); } }