var skin='default';

function register_newsletter()
{
	if ($("form_register_newsletter_email").value=="" || !IsEmail($("form_register_newsletter_email")))
	{
		alert("Kérem adjon meg egy érvényes e-mail címet!");
	} else {
		var strParam="email="+encodeURIComponent($("form_register_newsletter_email").value);
		window["load_icon"].show_load();
		new Ajax.Request("register_newsletter.php", { 
			  method: 'post', 
			  parameters: strParam,
			  onSuccess: function(transport) {
					var response=transport.responseJSON;
					check_response_code(response)
		    	    if (response.response.error_code=="0") {
		    	    	alert("Sikeresen feliratkozott hírlevelünkre!");
				
	    	
		    	    } else alert("Hiba az üzenetküldésnél!\nPróbálja újra, vagy jelezze a Webmesternek!");
					window["load_icon"].hide_load();
				},
			  onFailure: function(transport) {
					alert('Kommunikációs hiba!\Próbálja újra, vagy jelezze a Webmesternek!');	
					window["load_icon"].hide_load();  
			  }
			});
	}
}
function IsEmail(field)
{
 //this is a regular expression
 var expr = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
 
 //Check if regexp matches the value in the field
 if(expr.test(field.value))
  return true;
 return false;
}  


function findHighestZ(obj){  
    var highestIndex = 0;  
    var currentIndex = 0;  
    var elArray = Array();  
    if(obj){ elArray = obj.getElementsByTagName('*'); }else{ elArray = document.getElementsByTagName('*'); }  
    for(var i=0; i < elArray.length; i++){  
       if (elArray[i].currentStyle){  
          currentIndex = parseFloat(elArray[i].currentStyle['zIndex']);  
       }else if(window.getComputedStyle){  
          currentIndex = parseFloat(document.defaultView.getComputedStyle(elArray[i],null).getPropertyValue('z-index'));  
       }  
       if(!isNaN(currentIndex) && currentIndex > highestIndex){ highestIndex = currentIndex; }  
    }  
    return(highestIndex);  
}  


function comming_soon(obj)
{
	// !!! google-analytics !!! 
	/*if ($(obj).tagName=="FORM")
		pageTracker._trackEvent("ürlapok","submit", $(obj).id);
	else if ($(obj).tagName=="A")
		pageTracker._trackEvent("links", "click", $(obj).title);
	*/
	alert('A szolgáltatás hamarosan elérhető lesz, beindításáról hírlevelünkben értesítjük!');
	return false;
}


function set_text_editors_observ()
{
	$$('textarea.bbedit').each(function(s) {
		Event.observe($(s),'mouseover',bbedit_mouseover.bindAsEventListener(window));
		Event.observe($(s),'mouseout',bbedit_mouseout);
	});	
}
var bbobj;
function bbedit_mouseover(event)
{
	window.clearTimeout(bbTimeoutId);
	var element = Event.element(event); 
	if (element.hasClassName('bbedit'))
		bbobj=element;
	if (!Object.isElement($('bbedit')))
	{
		var d=document.createElement('div');
		d.setAttribute('id', 'bbedit');
		Event.observe($(d),'mouseover',bbedit_mouseover.bindAsEventListener(window));
		Event.observe($(d),'mouseout',bbedit_mouseout);
		document.body.appendChild(d);
		if (this.bbsmiley!=undefined)
		{
			var sm=this.bbsmiley;
			
			$(sm).each(function(s,index) {
				var a=document.createElement('a');
				$(a).setAttribute('id','sm'+index);
				$(a).title=$(s).key;
				Event.observe($(a),'click',bbedit_insert);
				var i=document.createElement('img');
				$(i).src=$(s).value;
				$(a).insert($(i));
				$(d).insert($(a));
			});
			var alma=1;
		}
	} else {
		var d=$('bbedit');
	}
	var leftx=getoffsetleft(bbobj)-110+'px';
	var topy=getoffsettop(bbobj)+'px';
	d.setStyle({
		left:leftx,
		top:topy,
		position:'absolute',
		zIndex:10,
		width:'110px',
		height:'100px',
		backgroundColor:'blue'});
	$(d).show();
	
}
var bbTimeoutId;
function bbedit_mouseout(event)
{
	var element = Event.element(event); 
	bbTimeoutId=window.setTimeout("$('bbedit').hide()",1000);
}

function bbedit_insert(event)
{
	var element = Event.element(event);
	str=$(element).parentNode.title;
	if (Object.isElement($(bbobj)))
	{
		//var startPos=$(bbobj).selectionStart;
		//var endPos=$(bbobj).selectionEnd;
		
		var selection = new Selection($(bbobj));
		var s = selection.create();
		//alert("start:" + s.start + ", end:" + s.end);

		startPos=s.start;
		endPos=s.end;
		
		$(bbobj).value=$(bbobj).value.substring(0,startPos)+str+$(bbobj).value.substring(endPos,$(bbobj).value.length);
		$(bbobj).setSelectionRange(startPos+str.length,startPos+str.length);
	}
}

function getoffsetleft(obj)
{		
	var ret=obj.offsetLeft;
	while ((obj=obj.offsetParent)!=null)
	{
		if (obj.tagName!="HTML") ret+=obj.offsetLeft;
	}
	return ret;
}
function getoffsettop(obj)
{		
	var ret=obj.offsetTop;
	while ((obj=obj.offsetParent)!=null)
	{
		if (obj.tagName!="HTML") ret+=obj.offsetTop;
	}
	return ret;
}



function overlay()
{
	this.add=add;
	this.remove=remove;
	
	function add()
	{
		var g=document.createElement('div');
		$(g).addClassName('overlay_gray');
		$(g).setStyle({
			zIndex:findHighestZ()+1});
		$(document.body).insert($(g));
		this.obj=$(g);
	}
	
	function remove()
	{
		this.obj.remove();
	}
}

function  change_mnu_in(obj)
{
	$(obj).firstDescendant().src=$(obj).firstDescendant().src.replace('\.jpg','_o.jpg');
	$(obj).firstDescendant().src=$(obj).firstDescendant().src.replace('\.png','_o.png');
	//$(obj).firstDescendant().src=$(obj).firstDescendant().src.gsub(/.(?!_o)(?=\.(png|jpg))/i,'_o.#{1}');
}
function change_mnu_out(obj)
{
	$(obj).firstDescendant().src=$(obj).firstDescendant().src.replace('\_o.jpg','.jpg');
	$(obj).firstDescendant().src=$(obj).firstDescendant().src.replace('\_o.png','.png');
}


function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}
function createCookie(name,value,days,domain) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/"+( ( domain ) ? ";domain=" + domain : "" );
}

function observe_menu_div2()
{
	$$('#menu a').each(function(s) {
		Event.observe($(s),'mouseover',function() {
			$(this).firstDescendant().src=$(this).firstDescendant().src.replace('\.jpg','_o.jpg');
			$(this).firstDescendant().src=$(this).firstDescendant().src.replace('\.png','_o.png');
		}.bindAsEventListener($(s)))
	});
	$$('#menu a').each(function(s) {
		Event.observe($(s),'mouseout',function() {
			$(this).firstDescendant().src=$(this).firstDescendant().src.replace('\_o.jpg','.jpg');
			$(this).firstDescendant().src=$(this).firstDescendant().src.replace('\_o.png','.png');
		}.bindAsEventListener($(s)))
	});
}

/*selection*/
function Selection(textareaElement) {
    this.element = textareaElement;
}

Selection.prototype.create = function() {
    if (document.selection != null && this.element.selectionStart == null) {
        return this._ieGetSelection();
    } else {
        return this._mozillaGetSelection();
    }
}

Selection.prototype._mozillaGetSelection = function() {
    return { 
        start: this.element.selectionStart, 
        end: this.element.selectionEnd 
    };
}

Selection.prototype._ieGetSelection = function() {
    this.element.focus();

    var range = document.selection.createRange();
    var bookmark = range.getBookmark();

    var contents = this.element.value;
    var originalContents = contents;
    var marker = this._createSelectionMarker();
    while(contents.indexOf(marker) != -1) {
        marker = this._createSelectionMarker();
    }

    var parent = range.parentElement();
    if (parent == null || parent.type != "textarea") {
        return { start: 0, end: 0 };
    }
    range.text = marker + range.text + marker;
    contents = this.element.value;

    var result = {};
    result.start = contents.indexOf(marker);
    contents = contents.replace(marker, "");
    result.end = contents.indexOf(marker);

    this.element.value = originalContents;
    range.moveToBookmark(bookmark);
    range.select();

    return result;
}

Selection.prototype._createSelectionMarker = function() {
    return "##SELECTION_MARKER_" + Math.random() + "##";
}
 