function changeLanguage(newLang) {
	var myForm = document.changeLanguageForm;
	if (myForm) {
		if (newLang) {
			myForm.change_language.value = newLang;
		}
		myForm.submit();
	}
}

function viewpix(pic_id, dir_prefix, singleMode, gallery_id) {
	var params = '?id=' + pic_id;
	if (!dir_prefix) {
		dir_prefix = '';
	}
	if (singleMode) {
		params += '&mode=single';
	}
	if (gallery_id) {
		params += '&gallery=' + gallery_id;
	}
	var w = window.open(dir_prefix + 'album.php' + params, 'viewpix', 'top=3,left=3,width=100,height=100,location=0,menubar=0,directories=0,resizable=0,status=1,toolbar=0,scrollbars=0');
	w.focus();
	return w;
}

var opacityArrayShow = new Array(20, 40, 60, 80, 100);
var opacityArrayHide = new Array(80, 60, 40, 20, 0);

var commandsToRunNowShowHideDetails = new Array('setOpacityItemShow', 'setOpacityItemHide');

function showHideMenuItem(time, command, id) {
	removeToDo('showItem');
	runNowToDo('hideItem');
	runNowToDoDetails(commandsToRunNowShowHideDetails);
	addToDo(createCommand(time, command, id));
}

function menuItemOver(id) {
	showHideMenuItem(0, 'showItem', id);
}

function menuItemOut(id) {
	showHideMenuItem(20, 'hideItem', id);
}

function menuItemsOver(id) {
	resetToDo(true);
	addToDo(createCommand(0, 'onItem', id));
}

function menuItemsOut(id) {
	showHideMenuItem(20, 'hideItem', id);
}

function addItemDetails(itemArray, opacArray, command) {
	var itemLength = itemArray.length;
	var opacLength = opacArray.length;
	var i, j;
	for (i = 0; i < itemLength; i++) {
		var itemId = itemArray[i];
		for (j = 0; j < opacLength; j++) {
			addToDoDetails(createCommand(1, command, new Array(itemId, opacArray[j])));
		}
	}
}

function buildAddItemDetails(id, opacArray, show) {
	var submenuItemsCount = submenuItems[id - 1];
	var itemArray = new Array();
	var i;
	var command = show ? 'setOpacityItemShow' : 'setOpacityItemHide';
	opacArray = new Array().concat(opacArray);
	if (show) {
		addToDoDetails(createCommand(0, command, new Array('menu-selected-' + id, 100)));
		for (i = 0; i <= submenuItemsCount; i++) {
			itemArray.push('menu-subitem-' + id + '-' + i);
		}
		addItemDetails(itemArray, opacArray, command);
	} else {
		for (i = submenuItemsCount; i >= 0; i--) {
			itemArray.push('menu-subitem-' + id + '-' + i);
		}
		addItemDetails(itemArray, opacArray, command);
		addToDoDetails(createCommand(0, command, new Array('menu-selected-' + id, 0)));
	}
}

function processTimer(commandArray) {
	var command = commandArray[1];
	var id = commandArray[2];
	if (command == 'showItem') {
		buildAddItemDetails(id, opacityArrayShow, true);
	} else if (command == 'hideItem') {
		buildAddItemDetails(id, opacityArrayHide, false);
	} else if (command == 'onItem') {
		buildAddItemDetails(id, 100, true);
	} else if (command == 'offItem') {
		buildAddItemDetails(id, 0, false);
	} else if ((command == 'setOpacityItemShow') || (command == 'setOpacityItemHide')) {
		setOpacity(id, commandArray[3]);
	}
}

function checkRunNow(commandLine) {
	if (commandLine[1] == 'setOpacityItemHide') {
		if (commandLine[3] != 0) {
			commandLine = false;
		}
	} else if (commandLine[1] == 'hideItem') {
		commandLine[1] = 'offItem';
	}
	return commandLine;
}

/*
	functions "setOpacity..." based on a script from http://brainerror.net/
*/

function setOpacityShowHide(id, opac, visibility, display) {
	var div = document.getElementById(id);
	if (div) {
		if (opac == 0) {
			if (visibility) {
				div.style.visibility = 'hidden';
			}
			if (display) {
				div.style.display = 'none';
			}
		} else {
			div.style.filter = opac > 50 ? 'none' : 'alpha(opacity=' + opac + ')';
			var opacPercent = opac / 100;
			div.style.opacity = opacPercent;
			div.style.MozOpacity = opacPercent;
			div.style.KhtmlOpacity = opacPercent;
			if (visibility) {
				div.style.visibility = 'visible';
			}
			if (display) {
				div.style.display = '';
			}
		}
	}
}

function setOpacity(id, opac) {
	setOpacityShowHide(id, opac, false, true);
}

function music_change(url, img, mOn) {
	window.parent.zene.location.href = url;
	var i = document.getElementById('speaker_img');
	if (i) {
		i.src = img;
	}
	music_on = mOn;
}

function music_start(imgPathCss) {
	music_change('zene01.php', imgPathCss + 'hang_be.gif', true);
}

function music_stop(imgPathCss) {
	music_change('zene_off.php', imgPathCss + 'hang_ki.gif', false);
}

function swap_music(imgPathCss) {
	if (music_on) {
		music_stop(imgPathCss);
	} else {
		music_start(imgPathCss);
	}
}

function showSpeaker() {
	if (window.parent.zene) {
		var speaker = document.getElementById('speaker');
		if (speaker) {
			speaker.style.display = '';
		}
	}
}

function highlightDesign(show) {
	var design = document.getElementById('design');
	if (design) {
		design.className = show ? 'design design-highlight' : 'design';
	}
}

function showProduct(productId, dir_prefix, singleMode) {
	var params = '?id=' + productId;
	if (!dir_prefix) {
		dir_prefix = '';
	}
	if (singleMode) {
		params += '&mode=single';
	}
	var w = window.open(dir_prefix + 'product.php' + params, 'viewproduct', 'top=3,left=3,width=1000,height=640,location=0,menubar=0,directories=0,resizable=0,status=1,toolbar=0,scrollbars=0');
	w.focus();
	return w;
}


