var activeTab = 0; // global
var tabStates = new Array(4);
tabStates[1] = 0;
tabStates[2] = 0;
tabStates[3] = 0;
tabStates[4] = 0;

function switchTab(switchTo) {
	switch(switchTo) {
		case 1:
			if (activeTab == 1) {
				if (tabStates[1] == 1) {
					Effect.BlindUp('smartfacts', {duration: 0.5, queue: 'front'});
					tabStates[1] = 0;
				} else {
					Effect.BlindDown('smartfacts', {duration: 0.5, queue: 'front'});
					tabStates[1] = 1;
				}
			} else {
				activeTab = 1;
				Effect.BlindUp('cookingwith', {duration: 0.5, queue: 'front'});
				Effect.BlindUp('world', {duration: 0.5, queue: 'front'});
				Effect.BlindUp('puzzles', {duration: 0.5, queue: 'front'});
				Effect.BlindDown('smartfacts', {duration: 0.5, queue: 'end'});
				tabStates[1] = 1;
				tabStates[2] = 0;
				tabStates[3] = 0;
				tabStates[4] = 0;
			}
			break;
		case 2:
			if (activeTab == 2) {
				if (tabStates[2] == 1) {
					Effect.BlindUp('puzzles', {duration: 0.5, queue: 'front'});
					tabStates[2] = 0;
				} else {
					Effect.BlindDown('puzzles', {duration: 0.5, queue: 'front'});
					tabStates[2] = 1;
				}
			} else {
				activeTab = 2;
				Effect.BlindUp('cookingwith', {duration: 0.5, queue: 'front'});
				Effect.BlindUp('world', {duration: 0.5, queue: 'front'});
				Effect.BlindUp('smartfacts', {duration: 0.5, queue: 'front'});
				Effect.BlindDown('puzzles', {duration: 0.5, queue: 'end'});
				tabStates[1] = 0;
				tabStates[2] = 1;
				tabStates[3] = 0;
				tabStates[4] = 0;
			}
			break;
		case 3:
			if (activeTab == 3) {
				if (tabStates[3] == 1) {
					Effect.BlindUp('cookingwith', {duration: 0.5, queue: 'front'});
					tabStates[3] = 0;
				} else {
					Effect.BlindDown('cookingwith', {duration: 0.5, queue: 'front'});
					tabStates[3] = 1;
				}
			} else {
				activeTab = 3;
				Effect.BlindUp('puzzles', {duration: 0.5, queue: 'front'});
				Effect.BlindUp('smartfacts', {duration: 0.5, queue: 'front'});
				Effect.BlindUp('world', {duration: 0.5, queue: 'front'});
				Effect.BlindDown('cookingwith', {duration: 0.5, queue: 'end'});
				tabStates[1] = 0;
				tabStates[2] = 0;
				tabStates[3] = 1;
				tabStates[4] = 0;
			}
			break;
		case 4:
			if (activeTab == 4) {
				if (tabStates[4] == 1) {
					Effect.BlindUp('world', {duration: 0.5, queue: 'front'});
					tabStates[4] = 0;
				} else {
					Effect.BlindDown('world', {duration: 0.5, queue: 'front'});
					tabStates[4] = 1;
				}
			} else {
				activeTab = 4;
				Effect.BlindUp('puzzles', {duration: 0.5, queue: 'front'});
				Effect.BlindUp('smartfacts', {duration: 0.5, queue: 'front'});
				Effect.BlindUp('cookingwith', {duration: 0.5, queue: 'front'});
				Effect.BlindDown('world', {duration: 0.5, queue: 'end'});
				tabStates[1] = 0;
				tabStates[2] = 0;
				tabStates[3] = 0;
				tabStates[4] = 1;
			}
			break;
	}
	
	return false;
}
