// mainNavigation.js
// 'mainnav' function, which navigates taukovaatteet.com on the highest level.
//
// Author: Lauri Moisio < jnsbb at iki dot fi >
// Version 1, 19.11.2011

function mainnav(topnav_id,target_id,file_to_fetch) {

//Muuttujat
    var topnav = document.getElementById(topnav_id);
    var topnav_array = document.getElementsByClassName('topnav_generic');
    var nav_target = document.getElementById(target_id);
    var casualty_class = document.getElementsByClassName('palikka');


//Menettele topnavien kanssa
    for ( i = 0; i < topnav_array.length; i++ ) {

//Sulje väärät
	if ( topnav_array[i] != topnav && topnav_array[i].className.match(/\bactive\b/)) { 
	    topnav_array[i].className = topnav_array[i].className.replace(/\bactive\b/,''); 
	}

//Sulje oikea, mikäli sitä on klikattu
	if ( topnav_array[i] == topnav && topnav_array[i].className.match(/\active\b/)) {
	    topnav_array[i].className = topnav_array[i].className.replace(/\bactive\b/,''); 
	}

//Avaa oikea	
else { if( topnav_array[i] == topnav) topnav_array[i].className += ' active'; } }



//Menettele palikoiden kanssa
    for ( i = 0; i < casualty_class.length; i++ ) {

//Sulje väärät, ja oikea jos se on aktiivinen
	if(casualty_class[i] != nav_target || casualty_class[i] == nav_target && casualty_class[i].className.match(/\bactive\b/)) {
	    casualty_class[i].style.display = 'none'; 
	    casualty_class[i].className = casualty_class[i].className.replace(/\bactive\b/,'');
	}

//Aseta jo noudetut näkyviin	
	else if(casualty_class[i] == nav_target && casualty_class[i].className.match(/\bfetched\b/)) {
	    casualty_class[i].style.display = 'block'; 
	    casualty_class[i].className += ' active'; 
	}

//Nouda, merkkaa noudetuksi ja aseta näkyviin
	else {

	    casualty_class[i].style.display = 'block'; 
	    casualty_class[i].className += ' active fetched';
	    casualty_class[i].innerHTML = "<img id=\"loading\" src=\"ruho/kuva/loading.gif\" />";
	    http = xmlHttpRequestCheck();
	    http.open("GET", file_to_fetch, true);
	    http.onreadystatechange = function() { 
		if(http.readyState == 4) {
		    if(http.status == 200) { nav_target.innerHTML = http.responseText; } } }
	    http.send(null);

	}
    } 
}
