// JavaScript Document
function menuitem(itemtext,itemurl){
    var mystr = '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="200" height="32" align="middle">';
    mystr+= '<param name="allowScriptAccess" value="sameDomain" />';
    mystr+= '<param name="allowFullScreen" value="false" />';
    mystr+= '<param name="scale" value="noscale" />';
    mystr+='<param name="movie" value="' + templateurl + 'flash/menubutton.swf" />';
    mystr+='<param name="quality" value="high" />';
    mystr+='<param name="scale" value="noscale" />';
    mystr+='<param name="bgcolor" value="#ffffff" />';
    mystr+='<param name="flashvars" value="itemtext=' + itemtext + '&itemurl=' + itemurl + '" />';
    mystr+='<embed src="' + templateurl + 'flash/menubutton.swf" bgcolor="#ffffff" flashvars="itemtext=' + itemtext + '&itemurl=' + itemurl + '" quality="high" scale="noscale" width="200" height="32" align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.adobe.com/go/getflashplayer" /></object>';
    return mystr;
}

function flashlogo(){
    var mystr = '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="200" height="200" id="logo" align="middle">';
    mystr+= '<param name="allowScriptAccess" value="sameDomain" />';
    mystr+= '<param name="allowFullScreen" value="false" />';
    mystr+= '<param name="scale" value="noscale" />';
    mystr+='<param name="movie" value="' + templateurl + 'flash/logo.swf" />';
    mystr+='<param name="quality" value="high" />';
    mystr+='<param name="scale" value="noscale" />';
    mystr+='<param name="bgcolor" value="#ffffff" />';
    mystr+='<param name="flashvars" value="websiteurl=' + websiteurl + '" />';
    mystr+='<embed src="' + templateurl + 'flash/logo.swf" bgcolor="#ffffff" quality="high"  flashvars="websiteurl=' + websiteurl + '" scale="noscale" width="200" height="200" id="logo" align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.adobe.com/go/getflashplayer" /></object>';
    document.write(mystr);
}

function initmenu(){
    $('menu').getElementsBySelector('li').each(function(element){
        var link = element.firstDescendant();
        var itemtext = link.innerHTML;
        var itemurl = link.href;
        var flash = menuitem(itemtext,itemurl);
        element.update(flash);
    });
}

function alignmenus(){
    var mainmenuitems = $('menu').getElementsBySelector('li');
    var submenuitems = $('submenu').getElementsBySelector('li');
    var top = 0;
    var height = 0;
    var top2 = 0;
    var height2 = 0;
    if(mainmenuitems.length > 0 && submenuitems.length>0){
            mainmenuitems.each(function(el){
                if(el.hasClassName('active')){
                    height = el.offsetHeight;
                    top = el.offsetTop + height;
                }
            });
            submenuitems.each(function(el){
                if(el.hasClassName('active')){
                    height2 = el.offsetHeight;
                    top2 = el.offsetTop + height2;
                   
                }
            });
            var diff = top - top2;            
            var lists = $('submenu').getElementsBySelector('ul');
            var submenu = lists[0];
            submenu.style.marginTop = diff + "px";
    }
}

function artistmenu(){
    var mainmenuitems = $('menu').getElementsBySelector('li');
    var submenuitems = $('submenu').getElementsBySelector('li');
    var top = 0;
    var height = 0;
    var top2 = 0;
    var height2 = 0;
    if(mainmenuitems.length > 0 && submenuitems.length>0){
        mainmenuitems.each(function(el){
            if(el.hasClassName('active')){
                height = el.offsetHeight;
                top = el.offsetTop + height;
                
            }
        });
        
        submenuitems.each(function(el){
            if(el.hasClassName('active')){
                height2 = el.offsetHeight;
                top2 = el.offsetTop + height2;
            }
        });
        var diff = top - top2;        
        var lists = $('submenu').getElementsBySelector('ul');
        var submenu = lists[0];
        submenu.style.marginTop = diff + "px";
        if(submenu.offsetHeight + 30 > $('submenu').offsetHeight){
            $('submenu').observe("mouseover",startArtistScroll);
            $('submenu').observe("mouseout",stopArtistScroll);
            $('submenu').observe("mousemove",setScrollSpeed);
        }
    }
}

var artistTimer;
var scrollSpeed = 1;

function startArtistScroll(event){
	artistTimer = setInterval("artistScroll()",10);
}

function stopArtistScroll(event){
	clearInterval(artistTimer);
}

function setScrollSpeed(event){
        var arrow = $('arrowdiv').select('.arrow1')[0];
	var arrowY = parseFloat(arrow.getStyle('marginTop'));
	var mouseY = event.pointerY();	
	var pos = $('submenu').cumulativeOffset();
	var menuY = mouseY - pos.top;
        var mypos = (menuY - arrowY) / (0.3 * $('submenu').offsetHeight);
        
        if(mypos > -0.4 && mypos < 0.4){
            scrollSpeed = 0;
        }else{
            scrollSpeed = mypos * 2;
        }
	
	
}

function artistScroll(){
	var artistmenu = $('submenu').getElementsBySelector('ul')[0];
	var menutop = parseFloat(artistmenu.getStyle('marginTop'));
	var arrow = $('arrowdiv').select('.arrow1')[0];
	var arrowY = parseFloat(arrow.getStyle('marginTop'));
	var min = arrowY - artistmenu.offsetHeight + arrow.offsetHeight;	
	var max = arrowY;
	menutop-= scrollSpeed;
	if(menutop < min)menutop = min;
	if(menutop > max)menutop = max;
	artistmenu.style.marginTop = menutop + "px";
	
}

function align(){
    var height = document.viewport.getHeight();
    if(height < $('container').getHeight() + 40){
        $('container').style.top = "20px";
        $('container').style.marginTop = "0px";
        $('container').style.marginBottom = "20px";
    }
    var width = document.viewport.getWidth();
    if(width < $('container').getWidth() + 40){
        $('container').style.left = "20px";
        $('container').style.marginLeft = "0px";
        $('container').style.marginRight = "20px";
    }
}

function placearrows(){
    var active = $('submenu').select('li.active');
    if(active.length>0){
        var activeitem = active[0];
        var top = activeitem.offsetTop;       
        var arrowdiv = new Element('div');
        var arrow = new Element('img',{src:templateurl + 'images/arrow1.gif'})
        arrowdiv.insert(arrow);
        arrowdiv.setAttribute('class','arrow1');
        $('arrowdiv').insert(arrowdiv);
        arrowdiv.style.marginTop = top + "px";
    }
    if($('pagemenu')){
        var active2 = $('pagemenu').select('li.active');       
        if(active2.length>0){
            var activeitem2 = active2[0];
            var top2 = activeitem2.offsetTop;
            var arrowdiv2 = new Element('div');
            var arrow2 = new Element('img',{src:templateurl + 'images/arrow2.gif'})
            arrowdiv2.setAttribute('class','arrow2');
            arrowdiv2.insert(arrow2)
            $('artistarrow').insert(arrowdiv2);
            arrowdiv2.style.marginTop = top2 + "px";
        }
    }
}

document.observe('dom:loaded', function () {
    align();
    initmenu();
    artistmenu();
    placearrows();
    Event.observe(document.onresize ? document : window, "resize",function(e){align();} );
});


