function addOnLoad(func){
	if (window.addEventListener) {
		window.addEventListener("load",func,false);
	} else if (window.attachEvent) {
		window.attachEvent("onload",func);
	} else {
		if ((typeof window.onload) != 'function' ) {
			var func2 = window.onload;
			window.onload = function() {func2(); func();};
		} else
			window.onload = func;
	}
}
function var_dump(element, maxdepth, depth, tab) {
    if(!depth)
        depth = 0;
    if(!maxdepth)
        maxdepth = 3;
    if (depth+1>maxdepth)
    	return "";
    if(!tab)
        tab = '';
    tab += '\t';
    string = '';
    for(property in element) if(typeof element[property] != 'function') {
        string += tab + property           
        if(typeof element[property] == 'object')
            string += '\n'+ var_dump(element[property], maxdepth, depth+1, tab) + '\n';
        else {
			var s = new String(element[property]);
            string += ': '+ s.substr(0, 50) + ' ...'+ '\n';
		}
    }
    if(depth == 0) alert(string);  
 
    return string;
};

function quote_like(id) { return _quote_like(id,1); }
function quote_dislike(id) { return _quote_like(id,-1); }
function _quote_like(id,score) {
	doAjax('/aranykopesek/lajk/'+id, quote_like_handler.bind(id, id), {"score": score});
	return false;
}
function quote_like_handler(id, transport) {
	var obj = $('quote_'+id);
	if (obj) obj.innerHTML = transport.responseText;
}

function radio_like(id) { return _radio_like(id,1); }
function radio_dislike(id) { return _radio_like(id,-1); }
function _radio_like(id,score) {
	doAjax('/radio/lajk/'+id, radio_like_handler.bind(id, id), {"score": score});
	return false;
}
function radio_like_handler(id, transport) {
	var obj = $('radio_'+id);
	if (obj) obj.innerHTML = transport.responseText;
}

function doAjax(url, callback, postData) {
	new Ajax.Request(url, {
		method: postData==undefined ? 'get' : 'post',
		parameters: postData,
		onSuccess: callback
	});
}
function toggle_object(id) {
	var obj = $(id);
	if (obj.style.display) {
		obj.style.display = '';
	} else {
		obj.style.display = 'none';
	}
	return false;
}
function toggle_box(id, size) {
	size = size || 'wide';
	size = '_'+size;
	var pixels = size == '_wide' ? 300 : 200;
	var obj = $(id);
	if (obj_big = $(id+size)) {
		obj_big.parentNode.removeChild(obj_big);
	} else {
		var cont = document.createElement('div');
		cont.id = id+size;
		cont.innerHTML = obj.innerHTML;
		cont.className = 'sidebar_box'+size;
		var pos = findPos(obj);
		if (obj.parentNode.id == 'sidebar1') {
			cont.style.left = pos[0]+'px';
		} else {
			cont.style.left = (pos[0]-pixels)+'px';
		}
		cont.style.top = pos[1]+'px';
		cont.style.height = obj.offsetHeight+'px';
		cont.childNodes[5].style.height = obj.childNodes[3].offsetHeight+'px';
		obj.parentNode.appendChild(cont);
	}
	return false;
}
function findPos(obj) {
	var curleft = curtop = 0;
	if (obj.offsetParent) {
	do {
			curleft += obj.offsetLeft;
			curtop += obj.offsetTop;
	} while (obj = obj.offsetParent);
	}
	return [curleft,curtop];
}
function showSpoiler(id) {
	if ($(id).style.display == 'none') {
		$(id).style.display = 'block';
	} else {
		$(id).style.display = 'none';
	}
	return false;
}
var active_tab = '';
function switch_tab(id) {
	var obj;
	if (active_tab) {
		obj = document.getElementById(active_tab+'_container');
		if (obj) {
			obj.style.display = 'none';
		}
		obj = document.getElementById(active_tab+'_switch');
		if (obj) {
			obj.className = 'switch';
		}
	}
	active_tab = id;
	obj = document.getElementById(active_tab+'_container');
	if (obj) {
		obj.style.display = 'block';
	}
	obj = document.getElementById(active_tab+'_switch');
	if (obj) {
		obj.className = 'switch_active';
	}
	return false;
}
function radio_toggle_content(id) {
	var obj = $('radio_'+id+'_content');
	if (obj.style.display) {
		obj.style.display = '';
		obj.innerHTML = '<iframe width="100%" height="315" src="/radio/elonezet/'+id+'" frameborder="0"></iframe>';
	} else {
		obj.innerHTML = '';
		obj.style.display = 'none';
	}
	return false;
}
var search_timer=null;
var search_url='';
function search_radio(url, searchstring) {
	if (search_timer != null) {
		clearTimeout(search_timer);
	}
	search_url = url+'?q='+encodeURIComponent(searchstring);
	search_timer = setTimeout('_search_radio()',200);
}
function _search_radio() {
	var obj = $('search_iframe');
	obj.src = search_url;
}
function radio_add(id) {
	doAjax('/radio/kivansag/'+id, radio_add_handler.bind(id, id), {});
	return false;
}
function radio_add_handler(id, transport) {
	var msg = transport.responseText;
	if (msg == 'ok') {
		var obj = $('queue');
		if (obj) obj.src = obj.src;
		showInfoMessage('A zene felkerült a lejátszási listára');
	} else {
		showInfoMessage('Hiba a felvételkor ('+msg+')');
	}
}
function radio_remove(order, id) {
	doAjax('/radio/levesz/'+order+'/'+id, radio_remove_handler.bind(order, order), {});
	return false;
}
function radio_remove_handler(order, transport) {
	var msg = transport.responseText;
	if (msg == 'ok') {
		var obj = $('queue');
		if (obj) obj.src = obj.src;
		showInfoMessage('A zene lekerült a lejátszási listáról');
	} else {
		showInfoMessage('Hiba a levételkor ('+msg+')');
	}
}

