var siteURL = 'http://bukuj.pl/';

function getElement(id)
{
	with (document) var element = getElementById ? getElementById(id) : all ? all[id] : layer[id];
	if(!element.style) element.style = element;
	return element;
}

function hideElement(name)
{
	getElement(name).style.display = 'none';
}

function viewElement(name)
{
	getElement(name).style.display = '';
}

function elementOnOff(name)
{
	if (getElement(name).style.display == 'block')
		getElement(name).style.display = 'none';
	else
		getElement(name).style.display = 'block';

	// zapisanie do cookie
	Set_Cookie(name, getElement(name).style.display);
}

function menuOff(name)
{
	getElement(name).style.visibility = 'hidden';
}

function menuOn(name)
{
	getElement(name).style.visibility = 'visible';
}

function getSelectedValue(selectObject)
{
	var listValue = '';

	for(i = 0; i < selectObject.options.length; i++)
	{
		if(selectObject.options[i].selected == true)
		{
			if(listValue.length > 0) separator = '|'; else separator = '';
			listValue = listValue + separator + selectObject.options[i].value;
		}
	}

	return listValue;
}

function getCheckedValue(checkObject)
{
}

function setCategoryLink()
{
	getElement('idFormRegion').action = siteURL + getElement('idid_region').value;
}


function ereg(pattern, text)
{
	var pattern = new RegExp(pattern, 'i');
	return pattern.test(text);
}

function number_format(number, decimals, dec_point, thousands_sep)
{
	var n = number, c = isNaN(decimals = Math.abs(decimals)) ? 2 : decimals;
	var d = dec_point == undefined ? "." : dec_point;
	var t = thousands_sep == undefined ? "," : thousands_sep, s = n < 0 ? "-" : "";
	var i = parseInt(n = Math.abs(+n || 0).toFixed(c)) + "", j = (j = i.length) > 3 ? j % 3 : 0;
	return s + (j ? i.substr(0, j) + t : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + t) + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : "");
}

function exeAjax(module, params)
{
	url = siteURL + 'ajax/' + module + '?' + params + '&temporary=' + parseInt(Math.random()*99999999);
	myRequest.open('GET', url, true);
	myRequest.onreadystatechange = responseAjax;
	myRequest.send(null);
}

function getRequest()
{
	var req = false;
	try
	{
		req = new XMLHttpRequest();
	}
	catch(err1)
	{
		try
		{
			req = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch(err2)
		{
			try
			{
				req = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch(err3)
			{
				req = false;
			}
		}
	}
	return req;
}


function responseAjax()
{
	if (myRequest.readyState == 4)
	{
		if (myRequest.status == 200)
		{
			//alert(myRequest.responseText);
			var xml = myRequest.responseXML;
			var result = xml.getElementsByTagName('result')[0].childNodes[0].nodeValue;
			switch(result)
			{
				case 'CheckForm':
				{
					var element = xml.getElementsByTagName('element')[0].childNodes[0].nodeValue;
					var errorIcon = xml.getElementsByTagName('errorIcon')[0].childNodes[0].nodeValue;
					var errorInfo = xml.getElementsByTagName('errorInfo')[0].childNodes[0].nodeValue;
					formElementValid(element, errorInfo, errorIcon);
					break;
				}
				case 'Info':
				{
					var comment = xml.getElementsByTagName('comment')[0].childNodes[0].nodeValue;
					alert(comment);
					break;
				}
				default:
				{
					alert("DEFAULT:\n\n" + myRequest.responseText);
				}
			}
		}
		else
		{
			//alert('AjaxError: ' + myRequest.status);
		}
	}
}
var myRequest = getRequest();


function formElementValid(element, errorInfo, errorIcon)
{
	if (errorIcon == 'ok')
	{
		getElement('xFormErrorInfo' + element).innerHTML = '';
		getElement('xFormErrorInfo' + element).className = 'errorInfoOff';
		getElement('xFormErrorIcon' + element).innerHTML = '<img src="' + siteURL + 'images/xform/xform-ok.png" style="width: 14px; height: 14px;" alt="poprawnie wypełnione pole" />';
	}
	else if (errorIcon == 'error')
	{
		getElement('xFormErrorInfo' + element).innerHTML = errorInfo;
		getElement('xFormErrorInfo' + element).className = 'errorInfoOn';
		getElement('xFormErrorIcon' + element).innerHTML = '<img src="' + siteURL + 'images/xform/xform-error.png" style="width: 14px; height: 14px;" alt="błędnie wypełnione pole" />';
	}
	else
	{
		getElement('xFormErrorInfo' + element).innerHTML = '';
		getElement('xFormErrorInfo' + element).className = 'errorInfoOff';
		getElement('xFormErrorIcon' + element).innerHTML = '';
	}
}

function checkFormAjax(form, element, idelement, value, confirmvalue)
{

	if(confirmvalue != 0) confirmvalue = getElement('id' + confirmvalue).value; else confirmvalue = '0';
	exeAjax('CheckForm', 'form=' + form + '&element=' + element + '&idelement=' + idelement + '&value=' + urlEncode(value) + '&confirmvalue=' + urlEncode(confirmvalue));
}

function checkFormEreg(element, textToCheck, pattern, errorInfo)
{
	if (ereg(pattern, textToCheck) == true)
	{
		formElementValid(element, '', 'ok');
		return true;
	}
	else
	{
		formElementValid(element, errorInfo, 'error');
		return false;
	}
}

function uploadFileReady(fileName, fileSize, element, id, index)
{
	getElement('xFormUploadInfoId' + element).innerHTML = '-> ZAŁADOWANO: <b>' + fileName + '</b> (' + fileSize / 1000 + 'kB) <a href="javascript:uploadFileDelete(\''+element+'\', '+index+')" style="text-decoration: none;" title="kasuj plik">[X]</a>';
	getElement('iduploadid' + element).value = id;
	formElementValid(index, '', '');
}


function uploadFile(formname, iframename, idgap)
{
	// wyswietlenie info o ladowaniu
	getElement('xFormUploadInfoId' + idgap.replace('id','')).innerHTML = '<img src="'+siteURL+'images/upload.gif">';

	// przeslanie danych
	getElement(formname).target = iframename;
	getElement('idxupload').value = 'uploadfile';
	getElement(formname).submit();

	// po przeslaniu
	getElement(formname).target = '_self';
	getElement('idxupload').value = '';
	uploadFileClear(idgap);
}

function uploadFileClear(id)
{
	fileField = getElement(id);
	parentNod = fileField.parentNode;
	tmpForm	= document.createElement("form");
	parentNod.replaceChild(tmpForm,fileField);
	tmpForm.appendChild(fileField);
	tmpForm.reset();
	parentNod.replaceChild(fileField,tmpForm);
}

function uploadFileDelete(element, index)
{
	getElement('iduploadid' + element).value = '';
	getElement('xFormErrorInfo' + index).innerHTML = '';
	getElement('xFormErrorInfo' + index).className = 'errorInfoOff';
	getElement('xFormErrorIcon' + index).innerHTML = '';
	getElement('xFormUploadInfoId' + element).innerHTML = '';
}

function urlEncode(str)
{
	//str = escape(str);
	str = str.replace(/\?/gi, '%3F');
	str = str.replace(/\(/gi, '%28');
	str = str.replace(/\)/gi, '%29');
	str = str.replace(/\+/gi, '%2B');
	str = str.replace(/\*/gi, '%2A');
	str = str.replace('/', '%2F');
	str = str.replace(/@/gi, '%40');
	str = str.replace(/&/gi, '%26');
	str = str.replace(/=/gi, '%3D');
	return str;
}

function showMap(id)
{
	dialogUrl = siteURL + 'mapa/' + id + '/';
	dialogAttrib = "top=200,left=400,toolbar=no,scrollbars=no,directories=no,status=no,menubar=no,resizable=no,width=500,height=350";
	dialogName = 'Mapa' + id;
	window.open(dialogUrl, dialogName, dialogAttrib);
}


function Set_Cookie( name, value, expires, path, domain, secure )
{
	// dzisiejsza data
	var today = new Date();
	today.setTime(today.getTime());

	if (expires) expires = expires * 1000 * 60 * 60 * 24;

	var expires_date = new Date( today.getTime() + (expires) );

	document.cookie = name + "=" +escape( value ) +
	((expires) ? ";expires=" + expires_date.toGMTString() : "" ) +
	((path) ? ";path=" + path : "" ) +
	((domain) ? ";domain=" + domain : "" ) +
	((secure) ? ";secure" : "" );
}

function Delete_Cookie( name, path, domain )
{
	if ( Get_Cookie( name ) ) document.cookie = name + "=" +
	( ( path ) ? ";path=" + path : "") +
	( ( domain ) ? ";domain=" + domain : "" ) +
	";expires=Thu, 01-Jan-1970 00:00:01 GMT";
}

function Get_Cookie( name )
{
	var start = document.cookie.indexOf( name + "=" );
	var len = start + name.length + 1;
	if ( ( !start ) &&
	( name != document.cookie.substring( 0, name.length ) ) )
	{
	return '';
	}
	if ( start == -1 ) return '';
	var end = document.cookie.indexOf( ";", len );
	if ( end == -1 ) end = document.cookie.length;
	return unescape( document.cookie.substring( len, end ) );
}








