ypSlideOutMenu.Registry = []
ypSlideOutMenu.aniLen = 200
ypSlideOutMenu.hideDelay = 100
ypSlideOutMenu.minCPUResolution = 10
// constructor
function ypSlideOutMenu(id, dir, left, top, width, height)
{
this.ie = document.all ? 1 : 0
this.ns4 = document.layers ? 1 : 0
this.dom = document.getElementById ? 1 : 0
if (this.ie || this.ns4 || this.dom) {
this.id = id
this.dir = dir
this.orientation = dir == "left" || dir == "right" ? "h" : "v"
this.dirType = dir == "right" || dir == "down" ? "-" : "+"
this.dim = this.orientation == "h" ? width : height
this.hideTimer = false
this.aniTimer = false
this.open = false
this.over = false
this.startTime = 0
this.gRef = "ypSlideOutMenu_"+id
eval(this.gRef+"=this")
ypSlideOutMenu.Registry[id] = this
var d = document
d.write('<style type="text/css">')
d.write('#' + this.id + 'Container { visibility:hidden; z-index:100;')
d.write('left:' + left + 'px; ')
d.write('top:' + top + 'px; ')
d.write('overflow:hidden; }')
d.write('#' + this.id + 'Container, #' + this.id + 'Content { position:absolute; ')
d.write('width:' + width + 'px; ')
d.write('height:' + height + 'px; ')
d.write('clip:rect(0 ' + width + 'px' + ' ' + height + 'px' + ' 0); ')
d.write('}')
d.write('</style>')
this.load()
}
}
ypSlideOutMenu.prototype.load = function() {
var d = document
var lyrId1 = this.id + "Container"
var lyrId2 = this.id + "Content"
var obj1 = this.dom ? d.getElementById(lyrId1) : this.ie ? d.all[lyrId1] : d.layers[lyrId1]
if (obj1) var obj2 = this.ns4 ? obj1.layers[lyrId2] : this.ie ? d.all[lyrId2] : d.getElementById(lyrId2)
var temp
if (!obj1 || !obj2) window.setTimeout(this.gRef + ".load()", 1000)
else {
this.container = obj1
this.menu = obj2
this.style = this.ns4 ? this.menu : this.menu.style
this.homePos = eval("0" + this.dirType + this.dim)
this.outPos = 0
this.accelConst = (this.outPos - this.homePos) / ypSlideOutMenu.aniLen / ypSlideOutMenu.aniLen 
// set event handlers.
if (this.ns4) this.menu.captureEvents(Event.MOUSEOVER | Event.MOUSEOUT);
this.menu.onmouseover = new Function("ypSlideOutMenu.showMenu('" + this.id + "')")
this.menu.onmouseout = new Function("ypSlideOutMenu.hideMenu('" + this.id + "')")
//set initial state
this.endSlide()
}
}
ypSlideOutMenu.showMenu = function(id)
{
var reg = ypSlideOutMenu.Registry
var obj = ypSlideOutMenu.Registry[id]
if (obj.container) {
obj.over = true
for (menu in reg) if (id != menu) ypSlideOutMenu.hide(menu)
if (obj.hideTimer) { reg[id].hideTimer = window.clearTimeout(reg[id].hideTimer) }
if (!obj.open && !obj.aniTimer) reg[id].startSlide(true)
}
}
ypSlideOutMenu.hideMenu = function(id)
{
var obj = ypSlideOutMenu.Registry[id]
if (obj.container) {
if (obj.hideTimer) window.clearTimeout(obj.hideTimer)
obj.hideTimer = window.setTimeout("ypSlideOutMenu.hide('" + id + "')", ypSlideOutMenu.hideDelay);
}
}
ypSlideOutMenu.hideAll = function()
{
var reg = ypSlideOutMenu.Registry
for (menu in reg) {
ypSlideOutMenu.hide(menu);
if (menu.hideTimer) window.clearTimeout(menu.hideTimer);
}
}
ypSlideOutMenu.hide = function(id)
{
var obj = ypSlideOutMenu.Registry[id]
obj.over = false
if (obj.hideTimer) window.clearTimeout(obj.hideTimer)
obj.hideTimer = 0
if (obj.open && !obj.aniTimer) obj.startSlide(false)
}
ypSlideOutMenu.prototype.startSlide = function(open) {
//this[open ? "onactivate" : "ondeactivate"]()
this.open = open
if (open) this.setVisibility(true)
this.startTime = (new Date()).getTime() 
this.aniTimer = window.setInterval(this.gRef + ".slide()", ypSlideOutMenu.minCPUResolution)
}
ypSlideOutMenu.prototype.slide = function() {
var elapsed = (new Date()).getTime() - this.startTime
if (elapsed > ypSlideOutMenu.aniLen) this.endSlide()
else {
var d = Math.round(Math.pow(ypSlideOutMenu.aniLen-elapsed, 2) * this.accelConst)
if (this.open && this.dirType == "-") d = -d
else if (this.open && this.dirType == "+") d = -d
else if (!this.open && this.dirType == "-") d = -this.dim + d
else d = this.dim + d
this.moveTo(d)
}
}
ypSlideOutMenu.prototype.endSlide = function() {
this.aniTimer = window.clearTimeout(this.aniTimer)
this.moveTo(this.open ? this.outPos : this.homePos)
if (!this.open) this.setVisibility(false)
if ((this.open && !this.over) || (!this.open && this.over)) {
this.startSlide(this.over)
}
}
ypSlideOutMenu.prototype.setVisibility = function(bShow) { 
var s = this.ns4 ? this.container : this.container.style
s.visibility = bShow ? "visible" : "hidden"
}
ypSlideOutMenu.prototype.moveTo = function(p) { 
this.style[this.orientation == "h" ? "left" : "top"] = this.ns4 ? p : p + "px"
}
ypSlideOutMenu.prototype.getPos = function(c) {
return parseInt(this.style[c])
}
ypSlideOutMenu.prototype.onactivate = function() { }
ypSlideOutMenu.prototype.ondeactivate = function() { }
//////////////////////////////////////////////////////////////////////////
// positioning dropdown menus + selecting CSS external file
// HOW TO USE AND MODIFY THE POSITION COORDONATES:
// At the end of each line you see 4 numbers.
// The first two ones determine the LEFT and TOP position of each menu in the window.
// The two last ones determine the active zone of the menu list : WIDTH and HEIGHT. This zone is invisible, you can consider it as a mask. 
// In conclusion, we have: LEFT, TOP, MASK-WIDTH, MASK-HEIGHT
var agt=navigator.userAgent.toLowerCase();
var menus;
//alert("agt:" + agt);

if ((agt.indexOf("msie") != -1) && (agt.indexOf("opera") == -1)) {
if(screen.height==1200){
menus = [ new ypSlideOutMenu("menu1", "down", 428, 218, 196, 220),
new ypSlideOutMenu("menu2", "down", 428, 324, 196, 220),
new ypSlideOutMenu("menu3", "down", 428, 282, 196, 220),
new ypSlideOutMenu("menu4", "down", 428, 388, 196, 220),
new ypSlideOutMenu("menu5", "down", 428, 460, 196, 220),
new ypSlideOutMenu("menu7", "down", 428, 450, 196, 140)	];}
if(screen.height==1024){
menus = [ new ypSlideOutMenu("menu1", "down",268, 218, 196, 220),
new ypSlideOutMenu("menu2", "down", 268, 324, 196, 220),
new ypSlideOutMenu("menu3", "down", 268, 282, 196, 220),
new ypSlideOutMenu("menu4", "down", 268, 388, 196, 220),
new ypSlideOutMenu("menu5", "down", 268, 460, 196, 220),
new ypSlideOutMenu("menu7", "down", 268, 450, 196, 140)	];}
if(screen.height==864){
menus = [ new ypSlideOutMenu("menu1", "down", 205, 218, 196, 220),
new ypSlideOutMenu("menu2", "down", 205, 324, 196, 220),
new ypSlideOutMenu("menu3", "down", 205, 282, 196, 220),
new ypSlideOutMenu("menu4", "down", 205, 388, 196, 220),
new ypSlideOutMenu("menu5", "down", 205, 460, 196, 220),
new ypSlideOutMenu("menu7", "down", 205, 450, 196, 140)	];}
if(screen.height==768){
menus = [ new ypSlideOutMenu("menu1", "down", 137, 218, 196, 220),
new ypSlideOutMenu("menu2", "down", 137, 324, 196, 220),
new ypSlideOutMenu("menu3", "down", 137, 356, 196, 220),
new ypSlideOutMenu("menu4", "down", 137, 388, 196, 220),
new ypSlideOutMenu("menu5", "down", 137, 460, 196, 220),
new ypSlideOutMenu("menu7", "down", 137, 450, 196, 140)	];}
if(screen.height==600){
menus = [ new ypSlideOutMenu("menu1", "down", 28, 218, 196, 220),
new ypSlideOutMenu("menu2", "down", 28, 324, 196, 220),
new ypSlideOutMenu("menu3", "down", 28, 282, 196, 220),
new ypSlideOutMenu("menu4", "down", 28, 388, 196, 220),
new ypSlideOutMenu("menu5", "down", 28, 460, 196, 220),
new ypSlideOutMenu("menu7", "down", 28, 450, 196, 140)	];}
if(screen.height==576){
menus = [ new ypSlideOutMenu("menu1", "down", 24, 218, 196, 220),
new ypSlideOutMenu("menu2", "down", 24, 324, 196, 220),
new ypSlideOutMenu("menu3", "down", 24, 282, 196, 220),
new ypSlideOutMenu("menu4", "down", 24, 388, 196, 220),
new ypSlideOutMenu("menu5", "down", 24, 460, 196, 220),
new ypSlideOutMenu("menu7", "down", 24, 450, 196, 140)];}}
else {if(screen.height==1200){
menus = [ new ypSlideOutMenu("menu1", "down", 429, 218, 196, 220),
new ypSlideOutMenu("menu2", "down", 428, 324, 196, 220),
new ypSlideOutMenu("menu3", "down", 428, 282, 196, 220),
new ypSlideOutMenu("menu4", "down", 428, 388, 196, 220),
new ypSlideOutMenu("menu5", "down", 428, 460, 196, 220),
new ypSlideOutMenu("menu7", "down", 428, 450, 196, 140)];}
if(screen.height==1024){
menus = [ new ypSlideOutMenu("menu1", "down",268, 218, 196, 220),
new ypSlideOutMenu("menu2", "down", 268, 324, 196, 220),
new ypSlideOutMenu("menu3", "down", 268, 282, 196, 220),
new ypSlideOutMenu("menu4", "down", 268, 388, 196, 220),
new ypSlideOutMenu("menu5", "down", 268, 460, 196, 220),
new ypSlideOutMenu("menu7", "down", 268, 450, 196, 140)];}
if(screen.height==864){
menus = [ new ypSlideOutMenu("menu1", "down", 205, 218, 196, 220),
new ypSlideOutMenu("menu2", "down", 205, 324, 196, 220),
new ypSlideOutMenu("menu3", "down", 205, 282, 196, 220),
new ypSlideOutMenu("menu4", "down", 205, 388, 196, 220),
new ypSlideOutMenu("menu5", "down", 205, 460, 196, 220),
new ypSlideOutMenu("menu7", "down", 205, 450, 196, 140)	];}
if(screen.height==768){
menus = [ new ypSlideOutMenu("menu1", "down", 138, 218, 196, 220),
new ypSlideOutMenu("menu2", "down", 138, 324, 196, 220),
new ypSlideOutMenu("menu3", "down", 138, 282, 196, 220),
new ypSlideOutMenu("menu4", "down", 138, 388, 196, 220),
new ypSlideOutMenu("menu5", "down", 138, 460, 196, 220),
new ypSlideOutMenu("menu7", "down", 138, 450, 196, 140)	];}
if(screen.height==600){
menus = [ new ypSlideOutMenu("menu1", "down", 27, 218, 196, 220),
new ypSlideOutMenu("menu2", "down", 27, 324, 196, 220),
new ypSlideOutMenu("menu3", "down", 27, 282, 196, 220),
new ypSlideOutMenu("menu4", "down", 27, 388, 196, 220),
new ypSlideOutMenu("menu5", "down", 27, 460, 196, 220),
new ypSlideOutMenu("menu7", "down", 27, 450, 196, 140)	];}
if(screen.height==576){
menus = [ new ypSlideOutMenu("menu1", "down", 24, 218, 196, 220),
new ypSlideOutMenu("menu2", "down", 24, 324, 196, 220),
new ypSlideOutMenu("menu3", "down", 24, 282, 196, 220),
new ypSlideOutMenu("menu4", "down", 24, 388, 196, 220),
new ypSlideOutMenu("menu5", "down", 24, 460, 196, 220),
new ypSlideOutMenu("menu7", "down", 24, 450, 196, 140)	];}
}
for (var i = 0; i < menus.length; i++) {
menus[i].onactivate = new Function("document.getElementById('act" + i + "').className='active';");
menus[i].ondeactivate = new Function("document.getElementById('act" + i + "').className='';");		}