function getCookie(c_name) {
if (document.cookie.length>0)
  {
  c_start=document.cookie.indexOf(c_name + "=");
  if (c_start!=-1)
    { 
    c_start=c_start + c_name.length+1; 
    c_end=document.cookie.indexOf(";",c_start);
    if (c_end==-1) c_end=document.cookie.length;
    return unescape(document.cookie.substring(c_start,c_end));
    } 
  }
return "";
}

function setCookie(c_name,value,expiredays) {
	var exdate = new Date();
	exdate.setDate(exdate.getDate() + expiredays);
	document.cookie = c_name + "=" + escape(value) + ((expiredays==null) ? "" : ";expires="+exdate.toGMTString());
	//document.print(c_name + ', ' + expiredays + ', ' + value + ', ');
}

function hover(obj, id, sfx) {
	obj.childNodes[0].src = 'images/' + id + sfx;
}

function createRequestObject() {
    var ro;
    var browser = navigator.appName;
    if(browser == "Microsoft Internet Explorer"){
        ro = new ActiveXObject("Microsoft.XMLHTTP");
    }else{
        ro = new XMLHttpRequest();
    }
    return ro;
}


var http = createRequestObject();

function handleResponse() {
        var error_all=0;
    if(http.readyState == 4){

        var response = http.responseText;
        var update = new Array();
        var form_errors =  new Array();
        if(response.indexOf('|') != -1) {
            update = response.split('|');
            if (response.indexOf('=') != -1){
                                  for (var i = 0; i < update.length; ++i){
                         var values = update[i].split('=');
                                         form_errors[i]=values[1];
                          }
                }else {
                        alert("Hib�s adatvisszaad�s");
                        }
        }else{
                        alert("Hib�s adatvisszaad�s");
                }

                if(form_errors[0]==1){
                        document.getElementById('error').innerHTML='Nincs megadva email c�m!';
                        document.getElementById('user_email').className='inputmezo_error'
                        error_all=1;
                }else if (form_errors[0]==2){
                        document.getElementById('error').innerHTML='A megadott email c�m m�r haszn�latban van!';
                        document.getElementById('user_email').className='inputmezo_error'
                        error_all=1;
                }else if (form_errors[0]==3){
                        document.getElementById('error').innerHTML='&nbsp;';
                }else{
                        document.getElementById('error').innerHTML='Hiba a visszak�rt adatokb�l';
                        error_all=1;
                }
				/*
                if(form_errors[1]==1){
                        document.getElementById('error2').innerHTML='Nincs megadva biztons�gi k�d!';
                        document.getElementById('captcha').className='inputmezo_error'
                        error_all=1;
                }else if (form_errors[1]==2){
                        document.getElementById('error2').innerHTML='Nem megfelel? biztons�gi k�d!';
                        document.getElementById('captcha').className='inputmezo_error'
                        error_all=1;
                }else if (form_errors[1]==3){
                        document.getElementById('error2').innerHTML='&nbsp;';
                }else{
                        document.getElementById('error2').innerHTML='Hiba a visszak�rt adatokb�l';
                        error_all=1;
                }
				*/

                if(error_all==0){
                        document.getElementById('form').submit();
                }
    }
}

function initAJAX () {
	var xmlHttp;
	try {
		// Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();
	}
	catch (e) {
		// Internet Explorer
		try {
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e) {
			try {
				xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (e) {
				alert("Your browser does not support AJAX!");
				return false;
			}
		}
	}
	return xmlHttp;
}

function loadContent(url) {
	var xmlHttp = initAJAX();
	xmlHttp.onreadystatechange = function() {
		if(xmlHttp.readyState == 4) {
			var div = document.getElementById('center_article');
			div.innerHTML = xmlHttp.responseText;
			
			var re = new RegExp();
			re = /<script.*?>(.*?)<\//igm;
			var match;
			while (match = re.exec(xmlHttp.responseText)) {
				eval(match[1]);
			}
			//alert(document.getElementById('type_icon').style.backgroundImage);
			//document.write("goodbye");
		}
	}
	xmlHttp.open("GET", url, true);
	xmlHttp.send(null);
}

function addUser(type) {
	var url = "site/functions/adduser.php?email=" + document.getElementById('reg_email').value + "&passw=" +  document.getElementById('reg_passw').value + "&nev=" + document.getElementById('reg_nev').value + "&type=" + type;
	var xmlHttp = initAJAX();
	xmlHttp.onreadystatechange = function() {
		if(xmlHttp.readyState == 4) {
			document.getElementById('results').innerHTML = xmlHttp.responseText;
		}
	}
	xmlHttp.open("GET", url, true);
	xmlHttp.send(null);
}


var Base64 = {

	// private property
	_keyStr : "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",

	// public method for encoding
	encode : function (input) {
		var output = "";
		var chr1, chr2, chr3, enc1, enc2, enc3, enc4;
		var i = 0;

		input = Base64._utf8_encode(input);

		while (i < input.length) {

			chr1 = input.charCodeAt(i++);
			chr2 = input.charCodeAt(i++);
			chr3 = input.charCodeAt(i++);

			enc1 = chr1 >> 2;
			enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
			enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
			enc4 = chr3 & 63;

			if (isNaN(chr2)) {
				enc3 = enc4 = 64;
			} else if (isNaN(chr3)) {
				enc4 = 64;
			}

			output = output +
			this._keyStr.charAt(enc1) + this._keyStr.charAt(enc2) +
			this._keyStr.charAt(enc3) + this._keyStr.charAt(enc4);

		}

		return output;
	},

	// public method for decoding
	decode : function (input) {
		var output = "";
		var chr1, chr2, chr3;
		var enc1, enc2, enc3, enc4;
		var i = 0;

		input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");

		while (i < input.length) {

			enc1 = this._keyStr.indexOf(input.charAt(i++));
			enc2 = this._keyStr.indexOf(input.charAt(i++));
			enc3 = this._keyStr.indexOf(input.charAt(i++));
			enc4 = this._keyStr.indexOf(input.charAt(i++));

			chr1 = (enc1 << 2) | (enc2 >> 4);
			chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
			chr3 = ((enc3 & 3) << 6) | enc4;

			output = output + String.fromCharCode(chr1);

			if (enc3 != 64) {
				output = output + String.fromCharCode(chr2);
			}
			if (enc4 != 64) {
				output = output + String.fromCharCode(chr3);
			}

		}

		output = Base64._utf8_decode(output);

		return output;

	},

	// private method for UTF-8 encoding
	_utf8_encode : function (string) {
		string = string.replace(/\r\n/g,"\n");
		var utftext = "";

		for (var n = 0; n < string.length; n++) {

			var c = string.charCodeAt(n);

			if (c < 128) {
				utftext += String.fromCharCode(c);
			}
			else if((c > 127) && (c < 2048)) {
				utftext += String.fromCharCode((c >> 6) | 192);
				utftext += String.fromCharCode((c & 63) | 128);
			}
			else {
				utftext += String.fromCharCode((c >> 12) | 224);
				utftext += String.fromCharCode(((c >> 6) & 63) | 128);
				utftext += String.fromCharCode((c & 63) | 128);
			}

		}

		return utftext;
	},

	// private method for UTF-8 decoding
	_utf8_decode : function (utftext) {
		var string = "";
		var i = 0;
		var c = c1 = c2 = 0;

		while ( i < utftext.length ) {

			c = utftext.charCodeAt(i);

			if (c < 128) {
				string += String.fromCharCode(c);
				i++;
			}
			else if((c > 191) && (c < 224)) {
				c2 = utftext.charCodeAt(i+1);
				string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
				i += 2;
			}
			else {
				c2 = utftext.charCodeAt(i+1);
				c3 = utftext.charCodeAt(i+2);
				string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
				i += 3;
			}

		}

		return string;
	}

}
function searchUpdate(initValues) { // filter name and invocation method
	var initFilter;
	initFilter = document.getElementById('search_type').value;
	var xmlHttp = initAJAX();
	xmlHttp.onreadystatechange = function() {
		if(xmlHttp.readyState == 4) {
			var initFilter;
			initFilter = document.getElementById('search_type').value;
			var div = document.getElementById(initFilter + '_details');
			div.innerHTML = xmlHttp.responseText;
		}
	}
	
	var filter = '';
	
	if (document.getElementById('nev').value.length < 3 && !initValues) 
		return;
	
	var kategoria;
	kategoria = document.getElementById('kat').options[document.getElementById('kat').selectedIndex].value == '%' ? '' : "AND kat_id = '" + document.getElementById('kat').options[document.getElementById('kat').selectedIndex].value + "'";

	var kedvezmenyezett;
	kedvezmenyezett = document.getElementById('kedv') ? " AND kedv_ids like '%," + document.getElementById('kedv').options[document.getElementById('kedv').selectedIndex].value + ",%'" : '';
	
	var primaryField;
	primaryField = initFilter == 'tender' ? 'cim' : 'nev';
	
	filter = "WHERE (" + primaryField + " LIKE '%" + document.getElementById('nev').value + "%' OR cel LIKE '%" + document.getElementById('nev').value + "%') " + kategoria + kedvezmenyezett;
	filter = Base64.encode(filter);
	
	setCookie('last_search', filter, 5);
	
	xmlHttp.open("GET", 'templates/' + initFilter + '_results.php?searchfilter=' + filter, true);
	xmlHttp.send(null);
	return false;
}

function viewDetails(type, id) {
	
	var xmlHttp = initAJAX();
	xmlHttp.onreadystatechange = function() {
		if(xmlHttp.readyState == 4) {
			var initFilter;
			initFilter = document.getElementById('search_type').value;
			var div = document.getElementById(initFilter + '_details');
			div.innerHTML = xmlHttp.responseText;
			//window.location = xmlHttp.responseText;
		}
	}
	
	xmlHttp.open("GET", 'templates/' + document.getElementById('search_type').value + '_details.php?' + document.getElementById('search_type').value + '_id=' + id, true);
	xmlHttp.send(null);
	return false;
}

function serviceCheckout(serviceType) {
	var xmlHttp = initAJAX();
	xmlHttp.onreadystatechange = function() {
		if(xmlHttp.readyState == 4) {
			var div = document.getElementById('center_article');
			div.innerHTML = xmlHttp.responseText;
		}
	}
	xmlHttp.open("GET", 'templates/service_checkout.php?service_type=' + serviceType + additionalOptions, true);
	xmlHttp.send(null);
}

function checkoutServiceUsing(paymentType, amount) {
	var xmlHttp = initAJAX();
	xmlHttp.onreadystatechange = function() {
		if(xmlHttp.readyState == 4) {
			var div = document.getElementById('center_article');
			div.innerHTML = xmlHttp.responseText;
		}
	}
	xmlHttp.open("GET", 'templates/service_checkout.php?service_type=' + serviceType + '&payment_type=' + paymentType, true);
	xmlHttp.send(null);	
}
