/*!
 * $Id: sp-menu.source.js,v 1.5 2009/09/01 18:55:13 florent Exp $
 * IBM Smarter Planet overlay menu script
*/
 /*!
 * Copyright (c) 2009 IBM Corporation
 * Owner: Corporate Webmaster (NUS_N_NIWWW)
*/

(function () {

	/* Namespace for IBM SP menu */
	var ibmSPmenu = {
		cssJSURL: '//www.ibm.com/common/v16/css/',
		imgURL: '//www.ibm.com/i/v16/sp/',		
		init: function () {
			var closeTimer = null;
		
			// dropdown mouseover handler
			jQuery('#ibm-sp-ww a:eq(0)').hover(function() {
					// called on "IN"
					if(closeTimer !== null)
					{
						clearTimeout(closeTimer);
						closeTimer = null;
					}
					//console.log("logo in");
					ibmSPmenu.openMastheadMenu(this);
					return false;
				}, function() {
					// called on "OUT"
					closeTimer = setTimeout(ibmSPmenu.closeMastheadMenu, 1000);
					//console.log("logo out");
				});
			
			// menu handler
			jQuery('#ibm-sp-menu').hover(function() {
					// called on "IN"
					if(closeTimer !== null)
					{
						clearTimeout(closeTimer);
						closeTimer = null;
					}
					//console.log("menu in");
					return false;
				}, function() {
					// called on "OUT"
					closeTimer = setTimeout(ibmSPmenu.closeMastheadMenu, 1000);
					//console.log("menu out");
					return false;
				});

		},

		openMastheadMenu: function () {
			var a = arguments[0] || jQuery('#ibm-sp-ww a:eq(0)');
			if(!a.jquery) a = jQuery(a);
		
			// swap classes
			a.removeClass('menu-closed')
				.addClass('menu-open');
			
			// swap classes
			jQuery('#ibm-sp-menu')
				.removeClass('menu-closed')
				.addClass('menu-open')

		},

		closeMastheadMenu: function () {
			var a = arguments[0] || jQuery('#ibm-sp-ww a:eq(0)');
			if(!a.jquery) a = jQuery(a);
			
			// swap images & classes
				a.removeClass('menu-open')
				.addClass('menu-closed');
			
			// swap classes + set offset
			jQuery('#ibm-sp-menu')
				.removeClass('menu-open')
				.addClass('menu-closed');
		},
		
		preInit: function () {        
		var css = document.createElement('link');
		css.setAttribute('type', 'text/css');
		css.setAttribute('rel', 'stylesheet');
		css.setAttribute('href', ibmSPmenu.cssJSURL +
			'sp-scrolling.css');
		document.getElementsByTagName('head').item(0).appendChild(css);

	var ibmLanguageV = jQuery("meta[name=DC.Language]").attr("content");
	var ibmVs = ibmLanguageV.toLowerCase().split("-");
		
           	/* Preload dropdown background */
            ibmSPmenu.preload(
				ibmSPmenu.imgURL + 'scroll/nav2.gif',
				ibmSPmenu.imgURL + 'scroll/nav3.gif',
				ibmSPmenu.imgURL + ibmVs[1] + '/' + ibmVs[0] + '/mast_nav.gif',
	            ibmSPmenu.imgURL + 'mast_menu_foot_w.png',
                ibmSPmenu.imgURL + 'mast_menu_w_hr.png',
                ibmSPmenu.imgURL + 'mast_menu_foot_w.gif',
                ibmSPmenu.imgURL + 'mast_menu_w_hr.gif'
                                   );
		},

		preload: function () {
			var img;
			for (var i = 0; i < arguments.length; i++) {
				img = new Image();
				img.src = arguments[i];
			}
		}
	};
	
	// execute pre-init & init code
	jQuery(document).ready(function(){
	jQuery(function () {
		if ( jQuery("#ibm-sp-menu-columns").length > 0 ) { return true }
		var ibmLanguageV = jQuery("meta[name=DC.Language]").attr("content");
		var ibmVs = ibmLanguageV.toLowerCase().split("-");
		var ibmRand = new Date().getTime();
		// needs to reflect the directory structure for translated overlay file
		jQuery("#ibm-sp-menu").load("menu-content_hr.html");
	});
	});
	ibmSPmenu.preInit();
	jQuery(ibmSPmenu.init);
	
})();
