var filesArray = new Array(true, false, false, false, false);
var files = 0;
var tmp = new Array('', '');

function checkEmail(email, required)
{
	var pattern = /^[a-z0-9\.]+@([a-z0-9]+\.){1,2}[a-z]+$/mi;
	
    if (required==undefined) {   // if not specified, assume it's required
        required=true;
    }
    if (email==null) {
        if (required) {
            return false;
        }
        return true;
    }
    if (email.length==0) {  
        if (required) {
            return false;
        }
        return true;
    }
	
    if (! pattern.test(email)) {  // check to make sure all characters are valid
        return false;
    }
    if (email.indexOf("@") < 1) { //  must contain @, and it must not be the first character
        return false;
    } else if (email.indexOf("..") >=0) { // two periods in a row is not valid
		return false;
	}
    return true;
}

/****************		CATEGORIES			***********************/
/*
function redraw(elem, str)
{
	arr = str.split(';');
	for(i = 0; i < arr.length; i++)
	{
		arr[i] = arr[i].split(',');
		if(elem.value == arr[i][0])
		{
			document.getElementById('fieldset'+arr[i][1]).style.display = 'block';
		}
		else
		{
			document.getElementById('select'+arr[i][1]).value = -1;
			document.getElementById('fieldset'+arr[i][1]).style.display = 'none';
		}
	}
}
*/
function redraw(elem, str)
{
	arr = str.split(';');
	for(i = 0; i < arr.length; i++)
	{
		arr[i] = arr[i].split(',');
		if(elem.value == arr[i][0])
		{
			document.getElementById('fieldset'+arr[i][1]).style.display = 'block';
		}
		else
		{
			document.getElementById('fieldset'+arr[i][1]).style.display = 'none';
			document.getElementById('select'+arr[i][1]).value = -1;
			//document.getElementById('');
			//alert('hidding');
		}
	}
}

function checkShowFieldbox(elem, str)
{
	arr = str.split(';');
	//alert('value: '+elem.value+' checked: '+elem.checked);
	if(elem.checked == true)
	{
		display = 'block';
	}
	else
	{
		display = 'none';
	}
	for(i = 0; i < arr.length; i++)
	{
		if(elem.checked == false)
		{
			inputs = document.getElementById('fieldset'+arr[i]).getElementsByTagName('input');
			for(k = 0; k < inputs.length; k++)
			{
				inputs[k].checked = false;
			}
		}
		document.getElementById('fieldset'+arr[i]).style.display = display;
	}
}

/*************************		ADD FORM		*********************/

function checkCorrectancy(elem)
{
	err = false;
	errMsg = '';
	if(!elem.regulamin.checked)
	{
		err = true;
		errMsg = '- Aby dodać recenzję musisz zaakceptować nasz regulamin.\n';
	}
	if(!checkEmail(elem.email.value))
	{
		err = true;
		errMsg = errMsg.concat('- Zły format adresu e-mail.\n');
	}
	if(elem.description.value.length < 150)
	{
		err = true;
		errMsg = errMsg.concat('- Recenzja jest za krótka. Powinna zawierać przynajmniej 150 znaków\noraz składać się conajmniej z 3 zdań.'); 
	}
	else if(elem.description.value.length > 2000)
	{
		err = true;
		errMsg = errMsg.concat('- Recenzja jest zbyt długa.\n');
	}
	if(elem.product.value.length < 3)
	{
		err = true;
		errMsg = errMsg.concat('- Niepoprawna nazwa produktu.\n');
	}
	if(err)
	{
		alert('Wystąpiły następujące problemy:\n'+errMsg);
		return false;
	}
	else
	{
		return true;
	}
}

function printFiles()
{
	var outputDiv = document.getElementById('added');
	var filesBox = '';
	var pattern = /[^\\/]*$/;
	var k = 0;
	for(i = 0; i < 5; i++)
	{
		if(!filesArray[i])
		{
			continue;
		}
		currElem = document.getElementById('image'+i);
		if(currElem.value == '')
		{
			continue;
		}
		k++;
		filesBox = filesBox.concat('<div class="fileName"> '+currElem.value.match(pattern)+'</div><div class="remLink" onClick="javascript: remFile('+i+');">Usuń</div><div class="clr"></div>');
	}
	if(filesBox == '')
	{
		outputDiv.innerHTML = '';//Currently there are no files to upload.';
	}
	else
	{
		outputDiv.innerHTML = filesBox;
	}
	if(k < 5)
	{
		document.getElementById('addFile').style.display = 'block';
	}
}

function remFile(id)
{
	var removeDiv = document.getElementById('image'+id);
	
	removeDiv.parentNode.removeChild(removeDiv);
	filesArray[id] = false;
	if(files == id || document.getElementById('image'+files).style.display == 'none')
	{
		createFileElement(id);
	}
	printFiles();
}

/*function getFreeId()
{
	var imageId = 5;
	for(i = 0; i < 5; i++)
	{
		if(filesArray[i] == false)
		{
			imageId = i;
			filesArray[i] = true;
			break;
		}
	}
	
	return imageId;
}*/

function createFileElement(imageId)
{
	var fileInput = document.createElement('input');
	var formDiv = document.getElementById('addedInputs');

	filesArray[imageId] = true;
	fileInput.setAttribute('name', 'image'+imageId);
	fileInput.setAttribute('type', 'file');
	fileInput.setAttribute('id', 'image'+imageId);
	//fileInput.setAttribute('onChange', 'javascript: addFile();');
	fileInput.onchange = function() {
		addFile();
	};
	files = imageId;
	formDiv.appendChild(fileInput);

}

function addFile()
{
	var inputDiv = document.getElementById('image'+files);
	for(i = 0; i < 5; i++)
	{
		if(i == files)
		{
			continue;
		}
		if(filesArray[i] == true)
		{
			if(document.getElementById('image'+i).value == inputDiv.value)
			{
				alert('Plik o podanej nazwie już istnieje.');
				return '';
			}
		}
	}
	try{
		fsize = document.getElementById('mxfsize').value-inputDiv.files[0].fileSize;
		if((fsize) < 0)
		{
			alert('Plik jest za duży.');
			return '';
		}
	}catch(e){ }
	if(inputDiv.value == '')
	{
		return '';
	}
	if(inputDiv.value.match("[\\/]*$").length > 64)
	{
		alert('Nazwa załączanego pliku jest zbyt długa.\nPowinna zawierać pomiędzy 1, a 61 znaków.');
		return '';
	}
	
	imgTypes = new RegExp(".jpg$|.png$|.gif$|.tiff$","i");
	
	if(!imgTypes.test(inputDiv.value))
	{
		alert('Załączane pliki mogą posiadać tylko następujące rozszerzenia:\n- .jpg\n- .png\n- .gif\n- .tiff');
		return '';
	}
	
	var imageId = 5;
	for(i = 0; i < 5; i++)
	{
		if(filesArray[i] == false)
		{
			imageId = i;
			break;
		}
	}
	
	inputDiv.style.display = 'none';
	document.getElementById('addFile').style.display = 'none';
	if(imageId < 5)
	{
		createFileElement(imageId);
	}
	printFiles();
}

/****************		WYSIWYG			***********************/

function wysiwygAction(cont)//ent
{
  el=document.getElementById('addForm').description;
  if(cont != '\n')
  {
	openTag="<"+cont+">";
	closeTag="</"+cont+">";
  }
  else
  {
	openTag=cont;
	closeTag = '';
  }
  
  if (el.setSelectionRange )//&& (el.selectionEnd-el.selectionStart)!=0)
  {
    // W3C/Mozilla
    el.value = el.value.substring(0,el.selectionStart) + openTag + el.value.substring(el.selectionStart,el.selectionEnd) + closeTag + el.value.substring(el.selectionEnd,el.value.length);
    el.focus();
  }
  else if(document.selection && document.selection.createRange)
  {
    // IE code goes here
    el.focus(); //or else text is added to the activating control
    var range = document.selection.createRange();
    //if(range.boundingWidth!=0)
      range.text = openTag + range.text + closeTag;
    document.newsletter.content.focus();
  }
}

/****************		ADDOPINION			***********************/

function checkOpinionCorrectancy(elem)
{
	return true;
	var pattern = /[0-9]*/;
	err = false;
	errMsg = '';
	if(!elem.regulamin.checked)
	{
		err = true;
		errMsg = '- Aby wystawić opinię musisz zaakceptować regulamin.\n';
	}
	if(!checkEmail(elem.email.value))
	{
		err = true;
		errMsg = errMsg.concat('- Zły format e-mail\'a.\n');
	}
/*	if(elem.description.value.length < 100)
	{
		err = true;
		errMsg = errMsg.concat('- Incorrect description\n'); 
	}
*/	if(elem.catchYa.value < 0 || !elem.catchYa.value.match(pattern))
	{
		err = true;
		errMsg = errMsg.concat('- Niepoprawna nazwa produktu.\n');
	}
	if(err)
	{
		alert('Wystąpiły następujące problemy:\n'+errMsg);
		return false;
	}
	else
	{
		return true;
	}
}

/****************		EDITRECENSE			***********************/

function setCategories(text)
{
	
}

/****************		REGISTER		***********************/

function checkRegisterCorrectancy(form)
{
	errMsg = 'Wykryto następujące błędy:';
	res = true;
	if(form.captcha.value.length == 0)
	{
		errMsg += '\n- wpisz kod z obrazka';
		res = false;
	}
	if(form.user.value.length == 0)
	{
		errMsg += '\n- podaj nazwę użytkownika';
		res = false;
	}
	if(form.pass.value.length < 6)
	{
		errMsg += '\n- hasło jest za krótkie - conajmniej 6 znaków';
	}
	else if(form.pass.value != form.passwd.value)
	{
		errMsg += '\n- hasła są niezgodne';
		res = false;
	}
	if(!form.regulamin.checked)
	{
		errMsg += '\n- regulamin nie został potwierdzony';
	}
	if(!res)
	{
		alert(errMsg);
	}
	return res;
}

/****************		showDetails			***********************/

function showDetailedImg(elem, address)
{
	var theHeight, theWidth;
	wrapper = document.getElementsByTagName('body')[0];
	if(tmp[0].length > 0)
	{
		wrapper.innerHTML = tmp[0];
		wrapper.style.background = '#FFFFFF';//tmp[1];
		tmp[0] = ''; tmp[1] = '';
		return;
	}
	//alert(document.body.background);
	tmp[1] = wrapper.style.background;
	tmp[0] = wrapper.innerHTML;
	closeDiv = '<div style="color: #000; text-align: center; cursor: pointer; width: 40px; height: 40px; line-height: 40px; position: absolute; right: 0px; top: 0px; z-index: 9999; background-color: #fff;" onclick="javascript: showDetailedImg(this);">X</div>';
	wrapper.innerHTML = elem.innerHTML.replace(/(src=\")[^\"]+\"/, "$1"+address+"\"")+closeDiv;
	if (window.innerWidth)
	{
		theWidth=window.innerWidth;
	}
	else if (document.documentElement && document.documentElement.clientWidth)
	{
		theWidth=document.documentElement.clientWidth;
	}
	else if (document.body)
	{
		theWidth=document.body.clientWidth;
	}
	
	if (window.innerHeight)
	{
		theHeight=window.innerHeight;
	}
	else if (document.documentElement && document.documentElement.clientHeight)
	{
		theHeight=document.documentElement.clientHeight;
	}
	else if (document.body)
	{
		theHeight=document.body.clientHeight;
	}
	//alert(elem.getElementsByTagName('img')[0].height+'<br />'+elem.getElementsByTagName('img')[0].width);
	//wrapper.style.width = '100%';
	//wrapper.style.height = theHeight;
	wrapper.style.background = '#000';
	//wrapper.style.textAlign = 'center';
	obr = wrapper.getElementsByTagName('img')[0];
	obr.style.position = 'absolute';
	if(theHeight < obr.height)
	{
		obr.style.top = '10px';
		obr.style.marginTop = '0';
	}
	else
	{
		obr.style.top = ''+(theHeight / 2)+'px';
		obr.style.marginTop = '-'+(obr.height / 2)+'px';
	}
	if(theWidth < obr.width)
	{
		obr.style.left = '10px';
		obr.style.marginLeft = '0';
	}
	else
	{
		obr.style.left = '50%';
		obr.style.marginLeft = '-'+(obr.width / 2)+'px';
	}
}//function showDetailedImg()
/*
function showDetailedImg(elem)
{
	var theHeight, theWidth;
	obr = elem.getElementsByTagName('img')[0];
	alert(obr);
	if(tmp[0].length > 0)
	{
		elem.innerHTML = tmp[0];
		elem.style.width = tmp[1];
		elem.style.height = tmp[2];
		elem.style.overflow = tmp[3];
		elem.style.background = tmp[4];
		elem.style.position = tmp[5];
		elem.style.top = tmp[6];
		elem.style.left = tmp[7];
		obr.style.width = '80px';
		obr.style.height = '80px';
		tmp[0] = ''; tmp[1] = ''; tmp[2] = ''; tmp[3] = ''; tmp[4] = ''; tmp[5] = ''; tmp[6] = ''; tmp[7] = '';
		return;
	}
	tmp[0] = elem.innerHTML;
	tmp[3] = elem.style.overflow;
	tmp[4] = elem.style.background;
	tmp[5] = elem.style.position;
	tmp[6] = elem.style.top;
	tmp[7] = elem.style.left;
	closeDiv = '';//'<div style="color: #000; text-align: center; cursor: pointer; width: 40px; height: 40px; line-height: 40px; float:right; margin-right: 40px; z-index: 9999; background-color: #fff;" onclick="javascript: showDetailedImg(this);">X</div>';
	elem.innerHTML = closeDiv+elem.innerHTML;

	if (window.innerWidth)
	{
		theWidth=window.innerWidth;
	}
	else if (document.documentElement && document.documentElement.clientWidth)
	{
		theWidth=document.documentElement.clientWidth;
	}
	else if (document.body)
	{
		theWidth=document.body.clientWidth;
	}
	
	if (window.innerHeight)
	{
		theHeight=window.innerHeight;
	}
	else if (document.documentElement && document.documentElement.clientHeight)
	{
		theHeight=document.documentElement.clientHeight;
	}
	else if (document.body)
	{
		theHeight=document.body.clientHeight;
	}
	//alert('widht: '+elem.style.width+' height:'+elem.style.height);
	elem.style.position = 'absolute';
	elem.style.overflow = 'auto';
	elem.style.background = '#000';
	elem.style.top = '0';
	elem.style.left = '0';
	elem.style.width = ''+theWidth+'px';
	elem.style.height = ''+theHeight+'px';
	//alert('widht: '+elem.style.width+' height:'+elem.style.height);
	obr.style.position = 'absolute';
	if(theHeight < obr.height)
	{
		obr.style.top = '10px';
		obr.style.marginTop = '0';
	}
	else
	{
		obr.style.top = ''+(theHeight / 2)+'px';
		obr.style.marginTop = '-'+(obr.height / 2)+'px';
	}
	if(theWidth < obr.width)
	{
		obr.style.left = '10px';
		obr.style.marginLeft = '0';
	}
	else
	{
		obr.style.left = '50%';
		obr.style.marginLeft = '-'+(obr.width / 2)+'px';
	}
}
*/

/****************		SENDCONTACTEMAIL			***********************/

function checkMessageCorrectancy(elem)
{
	err = false;
	errMsg = '';
	if(!checkEmail(elem.email.value))
	{
		err = true;
		errMsg = '- Wrong e-mail format\n';
	}
	if(elem.title.value.length < 3)
	{
		err = true;
		errMsg = errMsg.concat('- Tytuł wiadomości wygląda na nieistniejący\n');
	}
	if(elem.wiadomosc.value.length < 3)
	{
		err = true;
		errMsg = errMsg.concat('- Wiadomość wygląda na nieistniejącą\n');
	}
	if(elem.captcha.value.length < 6)
	{
		err = true;
		errMsg = errMsg.concat('- Kod z obrazka za krótki\n');
	}
	if(err)
	{
		alert('Wystąpiły następujące problemy:\n'+errMsg);
		return false;
	}
	else
	{
		return true;
	}
}
/*******************************flash******************************/

function flash(w, h, path)
{
 
document.write
(
'<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="'+w+'" height="'+h+'">'
+'<param name="movie" value="'+path+'" />'
+'<param name="quality" value="high" />'
+'<param name="menu" value="0" />'
+'<param name="wmode" value="transparent" />'
+'<embed src="'+path+'" width="'+w+'" height="'+h+'" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" menu="0" wmode="transparent"></embed>'
+'</object>'
);
 
}