// JavaScript Document for all Pages on IMDO


/****************************************************
* Call Handlers										*
*													*
*****************************************************/


function addEventFunc(el, evtType, func, capture){
	var ret = 0;
	
	if (el.addEventFuncListener){
		ret = el.addEventFuncListener(evtType, func, capture);
	} else if (el.attachEvent){
		ret = el.attachEvent('on' + evtType, func);
	} else { el['on' + evtType] = func; }
	
	return ret;
}





/****************************************************
* Browser Detection									*
*													*
*****************************************************/


function Detect() {
	
	agent 	= navigator.userAgent.toLowerCase();
						
	// detect OS
	this.isMac		= (agent.indexOf('mac') != -1);
	this.isWin		= (agent.indexOf('win') != -1);
	this.isWin2k	= (this.isWin && (agent.indexOf('nt 5') != -1));
	this.isWinSP2	= (this.isWin && (agent.indexOf('xp') != -1 || agent.indexOf('sv1') != -1));
	this.isOther	= (agent.indexOf('unix') != -1 || agent.indexOf('sunos') != -1 || agent.indexOf('bsd') != -1 || agent.indexOf('x11') != -1 || agent.indexOf('linux') != -1);
	
	// detect browser
	this.isSafari	= (agent.indexOf('safari') != -1);
	this.isSafari2 = (this.isSafari && (parseFloat(agent.substring(agent.indexOf("applewebkit/")+"applewebkit/".length,agent.length).substring(0,agent.substring(agent.indexOf("applewebkit/")+"applewebkit/".length,agent.length).indexOf(' '))) >=  300));
	this.isOpera	= (agent.indexOf('opera') != -1);
	this.isNN		= (agent.indexOf('netscape') != -1);
	this.isIE		= (agent.indexOf('msie') != -1);
	this.isIE6		= (agent.indexOf('msie 6.') != -1);
	this.isIE5		= (agent.indexOf('msie 5.') != -1);
}

var browser = new Detect();





/****************************************************
* Return Objects By ClassName						*
*													*
*****************************************************/

function getElementsByClassName(strClassName, obj) {
    var ar = arguments[2] || [];
    var re = new RegExp("\\b" + strClassName + "\\b", "g");

    if (re.test(obj.className)) {
        ar.push(obj);
    }
    for (var i=0; i<obj.childNodes.length; i++){
        getElementsByClassName(strClassName, obj.childNodes[i], ar);
	}
    
    return ar;
}





/****************************************************
* Highlight Previous/Next Buttons					*
*													*
*****************************************************/

function highlight_prev_next(e){
	if (!e){ e = window.event; }
	var tgt = e.target || e.srcElement;
	var css, origCol;
	
	if(!tgt.getAttribute("origCol")){
		if(tgt.currentStyle){
			origCol = tgt.currentStyle.color;
		} else {
			css = getComputedStyle(tgt,'');
			origCol = css.getPropertyValue("color");
		}
		
		tgt.setAttribute("origCol", origCol);
	}		
	
	if(e.type.indexOf("over") > -1){
		tgt.style.color = "#669933";
	} else {
		tgt.style.color = tgt.getAttribute("origCol");
	}
}





/****************************************************
* Underline Secondary Nav - only for IE6			*
*													*
*****************************************************/

function underlineSecNav(e){
	if (!e){ e = window.event; }
	var tgt = e.target || e.srcElement;
	alert(tgt.innerHTML);
	
	if(!tgt.getAttribute("orig_text")){
		tgt.setAttribute("orig_text", tgt.innerText);
	}
	tgt.innerHTML = "";
	
	
	if(e.type.toLowerCase().indexOf("over") > -1){
		if(tgt.innerHTML.indexOf("text-decoration:underline") == -1){
			tgt.innerHTML = "<span style='text-decoration:underline; margin:0px; display:inline;'>" + tgt.getAttribute("orig_text") + "</span>";
		}
	} else {
		tgt.innerHTML = tgt.getAttribute("orig_text");
	}		
}





/****************************************************
* Event Handlers									*
*													*
*****************************************************/

function addListeners(){
	var as = document.getElementsByTagName("a");
	for(i=0;i<as.length;i++){
		//as[i].hideFocus = true;
		
		try {
			if(as[i].parentNode.parentNode.parentNode){
				if(as[i].parentNode.parentNode.parentNode.id == "secondary-navigation" && (browser.isIE6 || browser.isIE5)){
					//addEventFunc(as[i], "mouseover", underlineSecNav, false);
					//addEventFunc(as[i], "mouseout", underlineSecNav, false);
				}
			}
			
		} catch(err){ }
	}
	
	var aryClassElements = getElementsByClassName("prev-next", document.getElementById("wrapper"));
	for(i=0;i<aryClassElements.length;i++){
		aryClassElements[i].hideFocus = true;
		addEventFunc(aryClassElements[i], "mouseover", highlight_prev_next, false);
		addEventFunc(aryClassElements[i], "mouseout", highlight_prev_next, false);
	}
}







/****************************************************
* Get Flash Object									*
*													*
*****************************************************/


function getFlashMovieObject(movieName){
  if(window.document[movieName]){
	  return window.document[movieName];
  }
  if(navigator.appName.indexOf("Microsoft Internet")==-1){
	  if(document.embeds && document.embeds[movieName]){
		  return document.embeds[movieName];
	  }
  }
  else // if (navigator.appName.indexOf("Microsoft Internet")!=-1)
  {
    return document.getElementById(movieName);
  }
}





/****************************************************
* Write Out JS Browser Stylesheet					*
*													*
*****************************************************/

function writeJsStyles(w){
	var sSheets = document.getElementsByTagName("link");
	var dHeads = document.getElementsByTagName("head");
	var dir = "";
	if(sSheets[0]){
		if(sSheets[0].href.indexOf("css") != -1){
			dir = sSheets[0].href.substring(0,sSheets[0].href.indexOf("css"));
		}
	}

	if(w==1){ document.write('<link href="' + dir + 'css/js-dependant.css" rel="stylesheet" type="text/css" media="screen" />'); }
	if(browser.isSafari){ document.write('<link href="' + dir + 'css/safari.css" rel="stylesheet" type="text/css" media="screen" />'); }
	if(browser.isIE){
		if(dHeads.length > 0){
			if(dHeads[0].innerHTML.indexOf("css/homepage.css") > -1){
				document.write('<link href="' + dir + 'css/ie-homepage.css" rel="stylesheet" type="text/css" media="screen" />');
			} else {
				document.write('<link href="' + dir + 'css/ie.css" rel="stylesheet" type="text/css" media="screen" />');
			}
		}
	}
}









/****************************************************
* On Page Load Functions							*
*													*
*****************************************************/

function init(){
	addListeners();
}





writeJsStyles(1);
addEventFunc(window, "load", init, false);




  


function checkLoad(){
	var url = window.location.toString();
	if(url.indexOf("/about") > -1){
		test(6);
	} else if(url.indexOf("/newsroom") > -1 || url.indexOf("/News+Archives") > -1  ){
		test(2);
	} else if(url.indexOf("/business") > -1){
		test(3);
	} else if(url.indexOf("/shipping") > -1){
		test(4);
	} else if(url.indexOf("/shortsea") > -1){
		test(5);
	}
}







function checkBanner(){

var lis = document.getElementById("billboard");
var title=document.getElementById("Htmlplaceholdercontrol1");
var archive=document.getElementById("archive");


	var url = window.location.toString();
	
	   if(url.indexOf("/News+Archives")> -1 || url.indexOf("/Press+Archives") > -1)
		{
		//alert(archive.innerHTML);
		//archive.style.display="none";
		}
	
	
	
	if(url.indexOf("/about") > -1)
	
	{
		lis.className="about-imdo";
		title.style.display="none";
		
		if(url.indexOf("/about/communications-pack/")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="IMDO Corporate<br/> Communications";
	    }
	    else if(url.indexOf("/about/statutory-mandate/")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="Statutory Mandate";
	    }
	    else if(url.indexOf("/about/imdo-team/")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="The IMDO Team";
	    }
	    else
	    {
		lis.getElementsByTagName('h1')[0].innerHTML="About IMDO";
	    }
	    
	}
	
	
	
	 else if(url.indexOf("/newsroom") > -1 || url.indexOf("/News+Archives") > -1 || url.indexOf("/Press+Archives") > -1)
	
	{
	
		lis.className="newsroom";
				
		if(url.indexOf("/newsroom/downloadables")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="Downloads";
	    }
	    else if(url.indexOf("/newsroom/e-news")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="E-news";
	    }
	    else if(url.indexOf("/newsroom/events-calendar")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="Events Calendar";
	    }
	    else if(url.indexOf("/newsroom/recent-publications")> -1)
		{
		title.style.display="none";
		lis.getElementsByTagName('h1')[0].innerHTML="Recent Publications";
		}
	    else if(url.indexOf("/newsroom/useful-links")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="Useful Links";
	    }
	    else if(url.indexOf("/newsroom/press-releases")> -1 || url.indexOf("/Press+Archives") > -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="Press Releases";
	    } 
	         
	    else
	    {
		lis.getElementsByTagName('h1')[0].innerHTML="Newsroom";
	    }

	}
		 
	else if(url.indexOf("/business") > -1)
	
	{
		lis.className="business-in-ireland";
		
		
		
		if(url.indexOf("/business/business-expertise/")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="Business Expertise";
	    }
	    else if(url.indexOf("/business/i-brochure/")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="I-Brochure";
	    }
	    else if(url.indexOf("/business/innovation/")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="Innovation, Research</br> &amp; Development";
	    }
	    else if(url.indexOf("/business/maritime-development/")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="Maritime Development";
	    }
	    else if(url.indexOf("/business/useful-links/")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="Useful Links";
	    }
	    else if(url.indexOf("/business/tax-environment/")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="Taxation";
	    }  
	    else if(url.indexOf("/business/skilled-workforce/")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="Workforce";
	    }
	    else
	    {
		lis.getElementsByTagName('h1')[0].innerHTML="Business in Ireland";
	    }
		
	} 
	
	
	
	
	else if(url.indexOf("/shipping") > -1)
	
	{
		lis.className="shipping";
		title.style.display="none";
		
		if(url.indexOf("/shipping/IMDOCentralstat/")> -1)
		{
		
		try
		{
		//document.getElementById("phcBody").innerHTML="test";
		//window.alert(database);
		}
		
		catch(err){}
		
		
		lis.getElementsByTagName('h1')[0].innerHTML="IMDO Centralstat";
        
        
	    }
	    
	    else if(url.indexOf("/shipping/international-directory/")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="International Directory";
	    }
	    else if(url.indexOf("/shipping/shipping-markets/")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="Shipping Markets";
	    }
	    else if(url.indexOf("/shipping/shipping-reviews/")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="IMDO shipping reviews";
	    }
	    else if(url.indexOf("/shipping/transport-economist/")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="Irish Maritime</br> Transport Economist";
	    }
	    else
	    {
		lis.getElementsByTagName('h1')[0].innerHTML="Shipping Statistics";
	    }

	} 
	
	
	
	
	else if(url.indexOf("/shortsea") > -1)
	
	{
		lis.className="shortsea-shipping";
		lis.getElementsByTagName('h1')[0].innerHTML="Shortsea Shipping";
		
		
		
		if(url.indexOf("/shortsea/definitions/")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="Definitions";
	    }
	    else if(url.indexOf("/shortsea/eu-programme/")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="EU Programme";
	    }
	    else if(url.indexOf("/shortsea/new-developments/")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="News &amp; Developments";
	    }
	    else if(url.indexOf("/shortsea/route-map/")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="Interactive Route Map";
	    }
	    else if(url.indexOf("/shortsea/scope-objectives/")> -1)
		{
		lis.getElementsByTagName('h1')[0].innerHTML="Scope &amp; Objectives";
	    }
	    else
	    {
		lis.getElementsByTagName('h1')[0].innerHTML="Shortsea Shipping";
		
	    }
		
		
		
		
		
		
		
		
	}

}












function test(num)
{

var lis = document.getElementById("primary-navigation").getElementsByTagName("li");

for(var i=0;i<lis.length;i++)
{
if(lis[i].className=="nav-on")
{lis[i].className="";}
}

try
{
lis[num-1].className="nav-on"
} catch(err){}


}






  
