dojo.require("dojo.fx.easing");
dojo.require("dojo.fx");
dojo.require("dijit.layout.ContentPane");
dojo.require("dijit.form.Form");
dojo.require("dijit.form.TextBox");
dojo.require("dijit.form.ValidationTextBox");
dojo.require("dijit.form.CheckBox");
dojo.require("dijit.form.Button");
dojo.require("dojox.form.BusyButton");
dojo.require("dijit.form.Select");
dojo.require("dijit.form.Textarea");
dojo.require("dijit.Menu");
dojo.require("dijit.MenuBar");
dojo.require("dijit.MenuItem");
dojo.require("dijit.PopupMenuItem");
dojo.require("dijit.PopupMenuBarItem");
dojo.require("dojo.parser");
dijit._MenuBase.prototype.onItemHover = function(item){

       this.focusChild(item);

       if(this.focusedChild.popup && !this.focusedChild.disabled){
            this._openPopup();
       }
};
dojo.addOnLoad(function () {
	var theme = 'claro';
	if(!dojo.hasClass(dojo.body(),theme)) {
		dojo.addClass(dojo.body(),theme);
	}
});
var lastId='-';
var selectedImg='-';
var animationActive=false;
var currentanimation;
function setupMove() {
      dojo.query('.menucontent').forEach('item.style.display="none";');
      
      function moveIt(node) {

		 
		//console.debug("MoveIt");
		var newId = node.currentTarget.id.substring(2);
		var easeIn = dojo.fx.easing.quadOut;	
		var easeOut = dojo.fx.easing.quadIn;
		
		// Show the new tab in order to be able to get the height of it 
		dojo.style(newId,'display','block');
		var newHeight=dojo.position(newId).h;
		if (newId!=lastId) {
			dojo.style(newId,'display','none');
		}
		var aniIn = dojo.animateProperty({
                    node: newId,
                    properties: {
                        marginTop: {
                            start: -newHeight,
                            end: 0,
                            unit: "px"
                        }
                    },
                    easing: easeIn,
                    duration: 300
                });
	
		if (lastId=='-') {
			// First click => move down
			dojo.style(newId,'display','block');
                	aniIn.play();
		} else {
			// A tab is selected already => prepare move up
			 var lastHeight=dojo.position(lastId).h;
			 var aniOut = dojo.animateProperty({
				node: lastId,
				properties: {
					marginTop: {
						start: 0,
						end: -lastHeight,
						unit: "px"
					}
				 },
				 easing: easeOut,
				 duration: 300
			 });

			if (lastId==newId) {
				// Same tab has been clicked => move out and stop
				/*dojo.connect(aniOut,"onEnd",function(){
					dojo.query('.menucontent').forEach('item.style.display="none";');
				});
				aniOut.play();
				lastId='-'; 
				selectedImg='-';
				showimg('-');*/
				// do nothing
				return;
			} else {
				// Different tab has been clicked => move up the old one and down the one
				
				dojo.connect(aniOut,"onEnd",function(){
					dojo.query('.menucontent').forEach('item.style.display="none";');
					dojo.style(newId,'display','block');
				});
				dojo.connect(aniIn,"onEnd",function(){
					animationActive=false;
				});
				if (animationActive==true) {
					currentanimation.stop(false);
				}
				animationActive=true;
				currentanimation=dojo.fx.chain([ aniOut, aniIn]).play();
				if (newId!='Contact') {
					selectedImg='-';
					showimg('-');
				}
			}
		}
		lastId=newId;
      }
	  
	  function markIt(node) {
		var id = node.currentTarget.children[0];
		var easeOver = dojo.fx.easing.elasticOut;
		dojo.animateProperty({
			node: id,
			properties: { 
				height: { start: 34, end: 44, unit: "px" }
			}, 
			easing: easeOver, duration: 500
		}).play();
	  }
	  function unmarkIt(node) {
			var id = node.currentTarget.children[0];
			var easeOver = dojo.fx.easing.elasticOut;
			dojo.animateProperty({
					node: id,
					properties: {
			height: { start: 44, end: 34, unit: "px" }
					},
					easing: easeOver, duration: 500
			}).play();
	  }

      /*    dojo.query('.menulink').forEach(function(node, data){
		dojo.connect(dijit.byId(node.id),"onClick",moveIt);
	  });*/
      dojo.query('.menulink').forEach(function(node, data){
		dojo.connect(dijit.byId(node.id),"onMouseOver",moveIt);
	  });
	  /*dojo.query('.closemenu').forEach(function(node, data){
		dojo.connect(dijit.byId(node.id),"onClick",closeIt);
	  });
          dojo.query('.menulink').forEach(function(node, data){
		dojo.connect(dijit.byId(node.id),"onMouseOut",unmarkIt);
	  });*/

	dojo.style('tmenu','display','inline');

}
dojo.addOnLoad(setupMove);
function closeIt(node) {
		  console.debug("closeIt!");
		  var easeOut = dojo.fx.easing.quadIn;
		 var lastHeight=dojo.position(lastId).h;
		 var aniOut = dojo.animateProperty({
			node: lastId,
			properties: {
				marginTop: {
					start: 0,
					end: -lastHeight,
					unit: "px"
				}
			 },
			 easing: easeOut,
			 duration: 300
		 });
		 dojo.connect(aniOut,"onEnd",function(){
					dojo.query('.menucontent').forEach('item.style.display="none";');
				});
		aniOut.play();
		lastId='-'; 
		selectedImg='-';
		showimg('-');
		return;
	  }
function showimg(id) {
	if (id!='-') {
		document.getElementById('mapimg').src='../fileadmin/templates/global/images/map_'+id+'.png';
	}
	var n = document.getElementById('address');
	var txt='';
	if (id=='de') {
		txt+='<strong>Odournet GmbH</strong><br/>';
                txt+='Frauenhoferstr. 13<br/>';
                txt+='24118 Kiel<br/>';
                txt+='Germany<br/><br/>';
                txt+='Contact Person: Christina G&uuml;nther<br/><br/>';
                txt+='ph:  +49 431 22012-0<br/>';
		txt+='fax: +49 431 22012-17<br/>';
		txt+='<a href=mailto:de@odournet.com>de@odournet.com</a><br/>';
		n.innerHTML=txt;
	}	
	if (id=='nl') {
		txt+='<strong>PRA Odournet BV</strong><br/>';
                txt+='Singel 97<br/>';
                txt+='Amsterdam 1012 VG<br/>';
                txt+='The Netherlands<br/><br/>';
                txt+='Contact Person: Frans Vossen<br/><br/>';
                txt+='ph:  +31 20 6255104<br/>';
		txt+='fax: +31 20 6201514<br/>';
		txt+='<a href=mailto:nl@odournet.com>nl@odournet.com</a><br/>';
		n.innerHTML=txt;
	}	
	if (id=='gb') {
		txt+='<strong>Odournet UK Ltd.</strong><br/>';
                txt+='5, St. Margaret\'s Street<br/>';
                txt+='Bradford on Avon<br/>';
                txt+='Wiltshire BA15 1DA<br/>';
                txt+='UK<br/><br/>';
                txt+='Contact Person: Nick Jones<br/><br/>';
                txt+='ph:  +44 12 25 868869<br/>';
		txt+='fax: +44 12 25 865969<br/>';
		txt+='<a href=mailto:uk@odournet.com>uk@odournet.com</a><br/>';
		n.innerHTML=txt;
	}	
	if (id=='es') {
		txt+='<strong>Odournet S.L.</strong><br/>';
                txt+='Parc de Recerca UAB · UAB Research Park<br/>';
                txt+='Edificio Eureka · Easpacio P2M2<br/>';
		txt+='08193 Bellaterra (Cerdanyola del Vall&egrave;s · Barcelona)<br/>';
                txt+='Spain<br/><br/>';
                txt+='Contact Person: Estel·la Pagans<br/>';
                txt+='ph:  +34 93 592 90 48<br/>';
		txt+='fax: +34 93 406 9286<br/>';
		txt+='<a href=mailto:es@odournet.com>es@odournet.com</a><br/>';
		n.innerHTML=txt;
	}	
	if (id=='me') {
		txt+='<strong>Odournet M&eacute;xico S.A. de C.V.</strong><br/>';
                txt+='Jardines de Madrid 7622<br/>';
                txt+='Jardines de Andaluc&iacute;a 67193<br/>';
                txt+='Monterrey, Nuevo Le&oacute;n<br/>';
                txt+='M&eacute;xico<br/><br/>';
                txt+='Contact Person: Walter Marguia<br/><br/>';
                txt+='ph:  +52 (81) 1234 3699<br/>';
		txt+='<a href=mailto:mx@odournet.com>mx@odournet.com</a><br/>';
		n.innerHTML=txt;
	}	
	if (id=='fr') {
		txt+='<strong>AROMA Consult</strong><br/>';
                txt+='ZA La Forge<br/>';
                txt+='1 rue des Vanniers<br/>';
                txt+='35830 Betton<br/>';
                txt+='France<br/><br/>';
                txt+='Contact Person: S&eacute;bastien Cougoulic<br/><br/>';
                txt+='ph:  +332 99 55 14 14<br/>';
		txt+='fax: +332 99 55 14 15<br/>';
		txt+='<a href=mailto:aroma@aromaconsult.fr>aroma@aromaconsult.fr</a><br/>';
		n.innerHTML=txt;
	}
	if (id=='ot') {
		txt+='';
		n.innerHTML=txt;
	}	
	if (id=='-') {
		n.innerHTML='';
		document.getElementById('contactform').style.display='none';	
		document.getElementById('contactcomment').style.display='inline';	
		document.getElementById('mapimg').src='../fileadmin/templates/global/images/map.png';
		setSelectValue('odournetbranch','-');
	}
}
function showselectedimg() {
	showimg(selectedImg);
}
function selectimg(img) {
	selectedImg = img;
	if (selectedImg!='-') {
		document.getElementById('contactcomment').style.display='none';	
		document.getElementById('contactform').style.display='inline';	
		setSelectValue('odournetbranch',img);
	}
}
function selectValue(selectId) {
	var sel = dojo.byId(selectId);
	with (sel)
		return options[selectedIndex].value;
}
function setSelectValue(selectId, value) {
	var sel = dojo.byId(selectId);
	for (i=0; i<sel.options.length; i++) {
		if (sel.options[i].value == value) {
			sel.selectedIndex = i;
		}
	}
	return;
}

