// $RCSfile: general.js,v $
// $Source: /cvs/vintenradamecweb-live/javascript/general.js,v $, $Revision: 1.3 $, $Date: 2008/05/16 07:55:52 $, $State: Exp $
function bpToolTip(attach, content){
	new Tip(attach,
					$(content).innerHTML,
					{className: 'dannas-tooltip',
						closeButton: true,
						showOn: 'click',
						fixed: true,
						hideOn: {element: 'closeButton',
											event: 'click'},
						hideOthers: true,
						offset: {x:-306, y:-118}} );
}

Event.observe(window,'load', function(){
	setupLinks();
	closeMe();
	MM_preloadImages('images/close.gif','images/close_hover.gif','images/dannas-toolbar.gif');
	
	// TECH SUPPORT category
	var cat = $('category');
	if(cat) {
		bpCategory(cat);
	}
});

var play = new Array;

function bpDivSwap(divIn,divOut){
	if (Tips) { // hide all tooltips
		for(var i=0;i<Tips.tips.length;i++) {
			Tips.tips[i].hide();
		}
  }

	$(divIn).show();
	$(divOut).hide();
}

function bpCategory(elt) {
	var val = elt.options[elt.selectedIndex].value;
//alert(val);	
	var bSoft=false,bHard=false;
	
	switch(val) {
	case 'Software':
		bSoft = true;
		break;
	case 'Hardware':
		bHard = true;
		break;
	case 'Both':
		bSoft = true;
		bHard = true;
		break;
	}
	
	if(bSoft) {
		$('soft').show();
	} else {
		$('soft').hide();
	}
	
	if(bHard) {
		$('hard').show();
	} else {
		$('hard').hide();
	}
}

function setupLinks(){
    var links = document.getElementsByClassName('toplevel');
    var numof = links.length;
    for(i=0;i<numof;i++){
        play[i] = false;
        links[i].onmouseover = function(){
            var currentid = findNum(this);
            play[currentid] = true;
            var height = howhigh(this);
            var currentheight = this.parentNode.style.height;
            if((currentheight=='')||(currentheight=='34px')){
                this.parentNode.className = this.parentNode.className + ' menubg';
                xbrowserTransparency('.menubg', 0.8);
                new Effect.Morph(this.parentNode,{
                  style:{
                    height: height + 'px'
                  }
                });
                var refbit = this.id + 'ref';
                $(refbit).className = $(refbit).className + ' menuref';
                new Effect.Morph(refbit,{
                  style:{
                    height: '48px'
                  }
                });
            }
        }
        
        links[i].onmouseout = function(){
            var currentid = findNum(this);
            play[currentid] = false;
            setTimeout("closeit('" + this.id + "');",1000);
        }
        
        /*Do the preset bit*/
        var currentheight1 = links[i].parentNode.style.height;
        if(currentheight1!=''){
            var currentid1 = findNum(links[i]);
            play[currentid1] = false;
            setTimeout("closeit('" + links[i].id + "');",2000);
        }
    }
}


function howhigh(item){
    var submenus = item.getElementsByTagName('li');
    var height = 34+(25*submenus.length);
    return height;
}

function findNum(item){
    var links = document.getElementsByClassName('toplevel');
    var numof = links.length;
    for(i=0;i<numof;i++){
        if(links[i].className==item.className){
            return i;
        }
    }
}

function closeit(itemid){
    var item = $(itemid);
    var currentid = findNum(item);
    if(play[currentid]==false){
        var currentheight = item.parentNode.style.height;
        var height = howhigh(item);
        var height = height + 'px';
        if(currentheight==height){
            new Effect.Morph(item.parentNode,{
                style:{
                    height: '34px'
                },
                afterFinish: function(){
                    xbrowserTransparency('.menubg', 1);
                    item.parentNode.className = item.parentNode.className.replace(' menubg','');
                }
            });
            var refbit = item.id + 'ref';
            new Effect.Morph(refbit,{
                  style:{
                    height: '1px'
                  },
                  afterFinish: function(){
                    $(refbit).className = $(refbit).className.replace(' menuref','');
                  }
            });
        }
    }
}


function closeMe(){
	if($('CloseMe')){
        $('CloseMe').onclick = function(){
		    new Effect.BlindUp("formError");
		}
	}
}

function xbrowserTransparency(selector, opacity) {
    if (browser == "IE6") {
        switch(selector.substr(0,1)) {
            case ".":
                var classElements = document.getElementsByClassName(selector.substr(1, (selector.length-1)));
                if (classElements.length > 0) {  
                    classElements.each(function(item, key) {
                        new Effect.Fade(item, {
                            to: opacity,
                            duration: 0.2
                        });
                    });
                    return true;
                } else {
                    return false;
                }
            break;
            
            case "#":
                if ($(selector.substr(1, (selector.length-1)))){
                    new Effect.Fade(selector.substr(1, (selector.length-1)), {
                        to: opacity,
                        duration: 0.2
                    });
                    return true;
                } else {
                    return false;
                }
            break;
            
            default:
                return false;
            break;
        }
    }
}
        
Event.observe(window, 'load', function() {
 roboticsFader();									   
    if(xbrowserTransparency('.menubg', 0.8)) {
        //alert('success');
    } else {
        //alert('failure');
    }
});


function roboticsFader() {
	var roboticLinks = document.getElementsByClassName('textLinks');
	for (i=0; i<roboticLinks.length; i++){
		roboticLinks[i].onclick= function(){
			
			var id = this.id.replace('text',''); 
			
			new Effect.Fade('robotic-content', {
				duration: 0.3,
				afterFinish: function(){
					var pars = "id=" + id;
					var url = "robotic-desc.php";
					var myRequest = new Ajax.Updater('robotic-content', url, {
						parameters: pars,
						method: 'get',
						evalScripts: true,
						onComplete: function() {
							new Effect.Appear('robotic-content');
							roboticsReverseFader();
						}
					});
				}
			});
			
			
		}
	}  
}


function roboticsReverseFader() {
	var roboticLinks = document.getElementsByClassName('goBack');
	for (i=0; i<roboticLinks.length; i++){
		roboticLinks[i].onclick= function(){
			
			new Effect.Fade('robotic-content', {
				duration: 0.3,
				afterFinish: function(){
					var pars = "id=start";
					var url = "robotic-desc.php";
					var myRequest = new Ajax.Updater('robotic-content', url, {
						parameters: pars,
						method: 'get',
						evalScripts: true,
						onComplete: function() {
							new Effect.Appear('robotic-content');
							roboticsFader();
						}
					});
				}
			});
			
			
		}
	}  
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}