var oProductImage, oProductContent, aWindowContents = new Array(), bIsIE = false;

function checkForm(oForm) {
	var aVariant = oForm.elements['variant'], oBoxMsg, oNewBoxMsg, oError;
	if(typeof aVariant != 'undefined') {
		if (typeof aVariant.length == 'undefined') {
			aVariant = [aVariant];
		}
		for(var i = 0, n = aVariant.length; i < n; i++) {
			if(aVariant[i].checked) {
				return true;
			}
		}
	}
	
	oBoxMsg = oForm.getElementsByTagName('div')[0];
	oNewBoxMsg = oBoxMsg.cloneNode(false);
	oForm.replaceChild(oNewBoxMsg, oBoxMsg);
	
	oError = document.createElement('div');
	oError.className = "error";
	oError.appendChild(document.createTextNode('Prosimy w pierwszej kolejności wybrać wariant produktu z tabeli wariantów.'));
	oNewBoxMsg.appendChild(oError);
	
	return false;
}

function getTableProductSize(aProduct) {
	var oTHead, oTbody, oTRow, oTCell;
	var oTable = document.createElement('table');
	oTable.setAttribute('class', 'table_sizes');
	oTable.setAttribute('cellspacing', '1');
	oTHead = oTable.createTHead();
	oTable.appendChild(oTBody = document.createElement('tbody'));
	
	for (var i = 0; i < aProduct.length; i++) {
		oTRow = oTBody.insertRow(i);
		for (var j = 0; j < aProduct[i].length; j++) {
			if(j == 0) {
				oTRow.appendChild(oTCell = document.createElement('th'));
			} else {
				oTCell = oTRow.insertCell(j);
			}
			oTCell.appendChild(document.createTextNode(aProduct[i][j]));
		}
	}
	oTHead.appendChild(oTable.rows[0]);
	return oTable;
}

function prepareWindowImage(oWindow) {
	var oCopyright = document.createElement('span');
	var oImage = oWindow.getImage();
	oImage.title = "Kliknij, aby zamknąć";
	oCopyright.appendChild(document.createTextNode('To zdjęcie chronione jest prawami autorskimi!'));
	oCopyright.style.visibility = 'hidden';
	oWindow.getWindow().appendChild(oCopyright);
}

function prepareWindowContent(oWindow, aContents, sWindowId) {
	var oTable, oImage, oFragment, oDocument = new DocumentBuilder();
	oImage = oDocument.addElement('img');
	oDocument.addElement('a', 'X', {title : 'Zamknij', onclick : function () {oWindow.close();}});
	for (var i = 0; i < aContents.length; i++) {
		oDocument.addElement('p', aContents[i]);
	}
	oTable = oDocument.addElement('table');
	oFragment = oDocument.getDocument();
	oWindow.__construct(sWindowId, oFragment);
	oWindow.setReferences(oImage, oTable);
}

function handleWindowImage(oWindow, iAction) {
	var oCopyright = oWindow.getWindow().lastChild;
	switch(iAction) {
		case Window.WINDOW_CLOSE:
			oCopyright.style.visibility = 'hidden';
			break;
		case Window.WINDOW_OPEN:
			break;
		case ImageWindow.IMAGE_LOADED:
			oCopyright.style.visibility = 'visible';
			break;
		case ImageWindow.IMAGE_ERROR:
			alert('Ładowanie zdjęcia nie powiodło się... Nastąpi zamknięcie okna podglądu.');
			oWindow.close();
			break;
		case ImageWindow.IMAGE_ABORT:
			oWindow.close();
			break;
	}
}

function createWindows() {
	oProductImage = ImageWindow.getObject('product_image');
	oProductImage.addObserver(new Caller(handleWindowImage));
	prepareWindowImage(oProductImage);
	oProductContent = new ContentWindow();
	prepareWindowContent(oProductContent, aWindowContents, 'product_content');
}

