$(document).ready(
	function() {
		// Flash-ek betöltése IE alatt:
		if ( $.browser.msie ) { makeFlash(); }
		// email címek védelmére:
		$("a.antispam").each( function(i, email) { email.href = email.href.replace('http://', 'mailto:').replace('.anti.spam.', '@').replace('/', ''); });
		kapcsolat_form_init();
		galleryInit();
	}
);

var lang = 'hu';
var labels = {};
function label(str) {
	if (typeof labels[str] == "string") return labels[str];
	return str;
}

function kapcsolat_form_init() {
	$("a.contactform").click( function() {
		
		if ( $.browser.msie ) {
			kapcsolat_form_ie_hash('');
			kapcsolat_form_ie_hash('kapcsolat');
		} else {
			document.location.hash = "kapcsolat";
		}
		timer = window.setInterval(kapcsolat_back_check, 10);
		$(this).blur();
		$('body').append('<div id="popupAlpha" class="popupAlpha"></div>');
		$('body').append('<div id="popupLayer" class="popupLayer"><div class="closelink"><a href="#" title="" alt="">x</a></div><div id="popupLayerInner"></div></div>');
		$('div#popupAlpha').css( {opacity:0} );
		$('div#popupAlpha').animate( {opacity:.5}, 300 );
		$('div#popupLayer').css( {top:-300} );
		$('div#popupLayerInner').load( '/ajax/form', {name:'kapcsolat',ajax:1,lang:lang}, function(){
			$('div#popupLayerInner form').each( function(i,form){ form_validator_init(form); }  );
			$('div#popupLayer').animate( {top:100}, 300 );
			$('div#popupLayer div.closelink a').click( function(){
				window.clearInterval(timer);
				$('iframe#kapcsolat_form_iframe').remove();
				$('div#popupAlpha').animate( {opacity:0}, 300, null, function() { $('div#popupAlpha').remove(); });
				$('div#popupLayer').animate( {top:-300}, 300, null, function() { $('div#popupLayer').remove(); })
			});
		} );
		return false;
	});
}

function kapcsolat_form_ie_hash(hash) {
	if( !$("iframe#kapcsolat_form_iframe").size() ) {
		$("body").append('<iframe src="" id="kapcsolat_form_iframe" style="position:absolute;top:-9999px;"></iframe>');
	}
	if (typeof hash == "undefined") {
		return document.getElementById("kapcsolat_form_iframe").contentWindow.ieHash;
	}
	var doc = document.getElementById("kapcsolat_form_iframe").contentWindow.document;
	doc.open();
	doc.write('<script>var ieHash = "'+hash+'";</script>');
	doc.close();
}

function kapcsolat_back_check() {
	if ( $.browser.msie ) {
		var _hash = '#'+kapcsolat_form_ie_hash();
	} else {
		var _hash = document.location.hash;
	}
	if (_hash != "#kapcsolat") {
		$('div#popupLayer div.closelink a').click();
	}
}


var hibat_elrejtjuk = true;
function form_validator_init(form) {
	$("input.textfield, input.checkboxfield, textarea, select", form).keyup( function(){form_validator_check(form);} ).change( function(){form_validator_check(form);} ).attr("autocomplete", "off");
	$(form).append('<input type="hidden" name="ajax" value="true" /><input type="hidden" name="s" value="true" />');
	form_validator_check(form);
	hibat_elrejtjuk = true;
	$("div.error", form).hide();
	$(form).submit( function(){ form_validator_submit(this); return false; } );
}

function form_validator_check(form) {
	$("div.error", form).remove();
	var email_filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
	$("input.validate-email", form).each( function(i, input) { if ( input.value && !email_filter.test(input.value) ) $(input).after("<div class='error'><span></span><label>"+label("Kérem valós email címet adjon meg!")+"</label></div>"); });
	$("input.required", form).each( function(i, input) { if ( !input.value ) $(input).after("<div class='error'><span></span><label>"+label("Kérem a kötelező mezőket kitölteni!")+"</label></div>"); });
	if (hibat_elrejtjuk) $("div.error", form).hide();
}

function form_validator_submit(form) {
	hibat_elrejtjuk = false;
	if ( $("div.error", form).size() ) { $("div.error", form).show(); return; }
	$(form).animate({'opacity':.5},300);
	$(form).prepend('<div class="waiting"></div><div class="waitinganim">'+label('Kérem várjon!')+'</div>');
	$("div.waiting, div.waitinganim", form).css('position','absolute');
	$.post($(form).attr("action"), $(form).serialize(), function(res, status){
		 if ( $("ok", res).size()) {
		 	$(form).attr("disabled","disabled");
			$("div.waitinganim", form).remove();
		 	$(form).append('<div class="thanxMsg">'+$("ok", res).text()+'</div>');
			$("div.thanxMsg", form).css('position','absolute');
		 } else {
		 	$(form).animate({'opacity':1},300);
		 	alert( $(res).text() );
		 }
	});
}

function galleryInit() {
	$("div.gallery a").click( function() {
		var val_curImage = 0;
		var val_imageList = '';
		var val_galleryTitle = $(this).parents("div.gallery").children("h2").html();
		$t = $(this)
		$(this).parents("div.gallery").find("a").each( function(i, elem) {
			val_imageList += (val_imageList)?' '+ $(elem).attr("href") : $(elem).attr("href") ;
			if ($(elem).attr("href") == $t.attr("href")) {
				val_curImage = i;
			}
		});
		galleryOpen( val_curImage, val_imageList, val_galleryTitle );
		return false;
	});
	
	if ($("div.gallery a").size())return;
	
	
	var val_imageList = '';
	$("div.round_shadow a").each( function(i, elem) {
		val_imageList += (val_imageList)?' '+ $(elem).attr("href").replace('.jpg', '_600x600.php') : $(elem).attr("href").replace('.jpg', '_600x600.php') ;
	});
	
	$("div.round_shadow a").each( function(i, elem) {
		$(elem).click( function() { galleryOpen( i, val_imageList, ""); return false; } );
	});
}


function makeFlash() {
	$("div.makeflash").each( function(i, flash) {
		var p = {}; eval("p = {"+flash.title+"}");
		appendFlash(flash, p);
		flash.title = '';
	});
}
/*
function felugroablak(url, param) {
	if (! $('div#popupAlpha').size() ) {
		$(document.body).append('<div id="popupAlpha"></div>');
	}
	$('div#popupAlpha').css( {display:"block"} );
	$('div#popupAlpha').animate( {opacity:.5}, 300 );

			var ablak = $("form.uzenetkuldes").parents("div.felugroablak");
			var left = parseInt( ($('div#container').width()-ablak.width() ) / 2);
			ablak.css({display:"block",zIndex:50,top:-ablak.height()-30,left:left});
			ablak.animate({top:150,opacity:1},"slow");

	alert( url );
}
*/
function appendFlash(obj, params) {
	if (params.version == null) params.version = 0;
	if (params.width == null) params.width = '100%';
	if (params.height == null) params.height = '100%';
	if (params.flashVars == null) params.flashVars = '';
	if (params.wmode == null) params.wmode = 'transparent';
	if (params.scale == null) params.scale = 'scale';
	if (params.salign == null) params.salign = 'tl';
	if (params.name == null) params.salign = '';
	var d = new Date();
	params.src += (( params.src.indexOf('?') != -1 )?"&":"?")+parseInt(d.getTime());
	if (getFlashVersion() < parseInt(params.version) ) {
		if (getFlashVersion() >= 6 && params.flash6) {
			params.src = params.flash6;
		} else {
			obj.innerHTML = '<a href="http://macromedia.com/go/flashplayer" class="popup">Kérem töltse le a legújabb Flash lejátszót!</a>';
			return;
		}
	}
	var is_opera = (navigator.userAgent.indexOf('Opera')!=-1);
	var is_ie = (!is_opera && navigator.userAgent.indexOf('MSIE')!=-1);
	if (is_ie) {
		var str = '';
		str = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="'+params.width+'" height="'+params.height+'" id="'+params.name+'">';
		str+= '  <param name="movie" value="'+params.src+'" />';
		str+= '  <param name="scale" value="'+params.scale+'" />';
		str+= '  <param name="wmode" value="'+params.wmode+'" />';
		str+= '  <param name="salign" value="'+params.salign+'" />';
		str+= '  <param name="quality" value="high" />';
		str+= '  <param name="allowScriptAccess" value="sameDomain" />';
		str+= '  <param name="quality" value="high" />';
		str+= '  <param name="swliveconnect" value="true"/>';
		str+= '  <param name="FlashVars" value="'+params.flashVars+'" />';
		str+= '  <embed name="'+params.name+'" src="'+params.src+'" scale="'+params.scale+'" salign="'+params.salign+'" wmode="'+params.wmode+'" width="'+params.width+'" height="'+params.height+'" flashvars="'+params.flashVars+'" quality="high" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" swLiveConnect="true" />';
		str+= '</object>';
		obj.innerHTML += str;
	} else {
		object = document.createElement("object");
		embed = document.createElement("embed");
		if (params.name) {
			object.setAttribute('id', params.name);
			embed.setAttribute('name',params.name);
		}
		embed.setAttribute('src',params.src);
		embed.setAttribute('scale',params.scale);
		embed.setAttribute('salign',params.salign);
		embed.setAttribute('wmode',params.wmode);
		embed.setAttribute('quality','high');
		embed.setAttribute('allowScriptAccess','sameDomain');
		embed.setAttribute('type','application/x-shockwave-flash');
		embed.setAttribute('pluginspage','http://www.macromedia.com/go/getflashplayer');
		embed.setAttribute('width',params.width);
		embed.setAttribute('height',params.height);
		embed.setAttribute('flashvars', params.flashVars);
		object.appendChild(embed);
		obj.appendChild(object);
	}
}
function getFlashVersion() { var v = 0; if ( navigator.plugins && navigator.mimeTypes.length ) { var x = navigator.plugins["Shockwave Flash"]; if( x && x.description ) { var y = x.description; v = y.charAt( y.indexOf( '.' ) - 1 ); } } else { result = false; for( var i = 15; ( ( i >= 3 ) && ( result != true ) ); i-- ) { execScript('on error resume next: result = IsObject( CreateObject( "ShockwaveFlash.ShockwaveFlash.' + i + '" ) )', 'VBScript' ); v = i; } if( v == 15) return 0; } return v; }


function galleryOpen(cur,list,title, text) {
	if (is_ie) { hiddenAllSelect(); }
	if (! $('div#popupAlpha').size() ) {
		$(document.body).append('<div id="popupAlpha" class="popupAlpha"></div><div id="popupGallery" class="popupGallery"></div>');
	}
	$('div#popupAlpha').css( {opacity:0, display:"block"} );
	$('div#popupGallery').css( {display:"block"} );
	$('div#popupAlpha').animate( {opacity:.5}, 300 );
	var flashVars = 'lang='+lang+'&val_curImage='+cur+'&val_imageList='+list+'&val_galleryTitle='+title+'&val_textList='+text;
	var flashParam = {'src':'/flash/gallery.swf', 'flashVars':flashVars};
	appendFlash(  getFirstElementByClass('popupGallery',null,'div') , flashParam);
}
function galleryClose() {
	$('div#popupAlpha').animate( {opacity:0}, 300, null, function() {
		$('div#popupAlpha').remove();
		$('div#popupGallery').remove();
		if(is_ie){ visibleAllSelect(); }
	});
}
function galleryInit() {
	$("div.gallery a").click( function() {
		var val_curImage = 0;
		var val_imageList = '';
		var val_textList = '';
		var val_galleryTitle = $(this).parents("div.gallery").children("h2").html();
		$t = $(this)
		$(this).parents("div.gallery").find("a").each( function(i, elem) {
			val_imageList += (val_imageList)?' '+ $(elem).attr("href") : $(elem).attr("href") ;
			if ($(elem).attr("href") == $t.attr("href")) {
				val_curImage = i;
			}
		});
		$(this).parents("div.gallery").find("img").each( function(i, elem) {
			val_textList += (val_textList)?'::'+ $(elem).attr("alt") : $(elem).attr("alt") ;
		});
		galleryOpen( val_curImage, val_imageList, val_galleryTitle, val_textList );
		return false;
	});
}
var is_opera = (navigator.userAgent.indexOf('Opera')!=-1);
var is_ie = (!is_opera && navigator.userAgent.indexOf('MSIE')!=-1);
function getElementsByClass(searchClass,node,tag) {
	var classElements = [];
	if (node == null) node = document.body;
	if (tag == null) tag = '*';
	var elems = node.getElementsByTagName(tag);
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	var i = 0;
	for (var j = 0; j < elems.length; j++) {
		if ( pattern.test(elems[j].className) ) {
			classElements[i++] = elems[j];
		}
	}
	return classElements;
}

function getFirstElementByClass(searchClass,node,tag) {
	if (node == null) node = document.body;
	if (tag == null) tag = '*';
	var elems = node.getElementsByTagName(tag);
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	for (var j = 0; j < elems.length; j++) {
		if ( pattern.test(elems[j].className) ) {
			return elems[j];
		}
	}
	return null;
}

function hiddenAllSelect() {
	var s = document.getElementsByTagName('select');
	for (i=0; i<s.length; i++) {
		s[i].style.visibility = 'hidden';
	}
}

function visibleAllSelect() {
	var s = document.getElementsByTagName('select');
	for (i=0; i<s.length; i++) {
		s[i].style.visibility = 'visible';
	}
}


if (window.attachEvent) {
	window.attachEvent("onbeforeunload", function(){
		__flash_unloadHandler = function() {};
		__flash_savedUnloadHandler = function() {};
	});
}