// JavaScript Document

var modNWPortal_prevActiveLink	= 1;
var modNWPortal_lastQueue		= 0;
var modNWPortal_totalLinks 		= 0;
var modNWPortal_timeInterval	= 4000;
var modNWPortal_loadedList		= new Array();

function j_module_nwportal_public_navigation_change (q, s) {
	
	if (!s && modNWPortal_slideTimeout) {
		clearTimeout(modNWPortal_slideTimeout);
	}
	
	if (modNWPortal_nav_items[q]) {
		
		// Images
		if ( j_common_getElement('modNWPortal_navigate_image') ) {
			
			modNWPortal_lastQueue = q;
			
			if (!modNWPortal_loadedList[q]) {
				
				// Show loading image
				var obj = j_common_getElement('modNWPortal_navigate_image_isLoading');
				obj.style.visibility='visible';
	
				var t = new Image();
				t.src = modNWPortal_nav_items[q][2];
				t.onload = j_module_nwportal_public_navigation_change_loaded;
			} else {
				j_module_nwportal_public_navigation_change_loaded();
			}
		}
	}		
}

function j_module_nwportal_public_navigation_change_loaded () {
	
	// Hide loading image
	var obj = j_common_getElement('modNWPortal_navigate_image_isLoading');
	obj.style.visibility='hidden';
	
	if (modNWPortal_nav_items[modNWPortal_lastQueue]) {
		
		// Set as loaded
		modNWPortal_loadedList[modNWPortal_lastQueue] = true;
		
		// Image
		j_public_imageSlideEffect ('modNWPortal_navigate_image', modNWPortal_nav_items[modNWPortal_lastQueue][2], 2 );
		
		// Image alt/title
		if (obj = j_common_getElement('modNWPortal_navigate_image')) {
			obj.alt = modNWPortal_nav_items[modNWPortal_lastQueue][0];
			obj.title = modNWPortal_nav_items[modNWPortal_lastQueue][0];
		}
		
		// Title
		
		if (obj = j_common_getElement('modNWPortal_navigate_title')) {
			obj.innerHTML = modNWPortal_nav_items[modNWPortal_lastQueue][0];
		}
		
		// Link
		if (obj = j_common_getElement('modNWPortal_navigate_link')) {
			obj.href = modNWPortal_nav_items[modNWPortal_lastQueue][1];
		}
	
		// Image link
		if (obj = j_common_getElement('modNWPortal_navigate_link_image')) {
			obj.href = modNWPortal_nav_items[modNWPortal_lastQueue][1];
		}
	
		// Source
		if (obj = j_common_getElement('modNWPortal_navigate_source')) {
			obj.innerHTML = modNWPortal_nav_items[modNWPortal_lastQueue][3];
		}
		
		// Summary
		if (obj = j_common_getElement('modNWPortal_navigate_summary')) {
			obj.innerHTML = j_common_getElement('modNWPortal_navigate_summary_'+modNWPortal_lastQueue).innerHTML;
		}
		
		// Link class
		if (modNWPortal_prevActiveLink!=modNWPortal_lastQueue) {
			if (obj = j_common_getElement('modNWPortal_navigate_navlink_'+modNWPortal_prevActiveLink)) {
				obj.className = modNWPortal_nav_pcp;
			}
			if (obj = j_common_getElement('modNWPortal_navigate_navlink_'+modNWPortal_lastQueue)) {
				obj.className = modNWPortal_nav_pca;
			}
		}
		
		modNWPortal_prevActiveLink=modNWPortal_lastQueue;
	}
}

var modNWPortal_slideTimeout = false;

function j_module_nwportal_public_navigation_onload (t) {
	
	modNWPortal_totalLinks = t;
	
	if (modNWPortal_totalLinks<2) {
		return false;
	}
	
	if ( j_common_getElement('modNWPortal_navigate_image') ){
		modNWPortal_slideTimeout = setTimeout("j_module_nwportal_public_navigation_slide ("+2+")",modNWPortal_timeInterval)
	}
}

function j_module_nwportal_public_navigation_slide (c) {

	if (modNWPortal_slideTimeout) {
		clearTimeout(modNWPortal_slideTimeout);
	}
	
	c = (c%modNWPortal_totalLinks);
	if (!c) {
		c = modNWPortal_totalLinks;
	} else if (c>modNWPortal_totalLinks){
		c = 1;
	}
	
	j_module_nwportal_public_navigation_change(c, true);
	modNWPortal_slideTimeout = setTimeout("j_module_nwportal_public_navigation_slide ("+(c+1)+")",modNWPortal_timeInterval);
}

function j_module_nwportal_public_navigation_continue () {

	if (modNWPortal_totalLinks<2) {
		return false;
	}
	
	if (modNWPortal_slideTimeout) {
		clearTimeout(modNWPortal_slideTimeout);
	}
	
	var c = parseInt (modNWPortal_prevActiveLink) +1;
	modNWPortal_slideTimeout = setTimeout("j_module_nwportal_public_navigation_slide ("+c+")",modNWPortal_timeInterval);
}