
	Function.prototype.bind = function(object)
	{
	    var _method = this;
	    var _arguments = Array.copyWithoutFirst(arguments);
	    
	    return function() { return _method.apply(object, Array.concat(_arguments, arguments)); }
	}
	
	// vrati nove pole bez prveho prvku
	// pouziva sa na [arguments] vo funkcii (to nieje potomkom Array)
	Array.copyWithoutFirst = function (sequence)
	{
	    var result = [];
	
	    for (var i = 1; i < sequence.length; i++)
	        result.push(sequence[i]);
	
	    return result;
	}
	
	// spaja polia do jedneho vysledneho noveho pola
	// @ vstupnymi parametrami je n poli (1..n)
	Array.concat = function()
	{
	    var result = [];
	
	    for (var i = 0; i < arguments.length; i++)
	        for (var j = 0; j < arguments[i].length; j++)
	            result.push(arguments[i][j]);
	            
	    return result;
	}
	
	function getById(ElementID)
	{
		var el;

		if(el = document.getElementById(ElementID)) return el; else throw(new Error(ElementID+' not found in DOM'));
	}
	
	function eventElement2(ev)
	{
		
		if(ev.srcElement) 
		{
	//		alert('IE');	
			return ev.srcElement;
		}
		
		if(ev.target)
		{
	//		alert('firefox');
			return ev.target;
		}
		
		return null;	
	}

	function eventElement(ev)
	{
		if(!ev) ev = window.event;
		return eventElement2(ev);
	}
	
	function print_obj(objekt)
	{
		var vlastnosti=new Array();
		for(var vlastnost in objekt)
		{
			vlastnosti[vlastnost]=objekt[vlastnost];
		}
		var text='';
		for(var vlastnost in vlastnosti)
		text+=vlastnost+"<font color=red>="+vlastnosti[vlastnost]+"</font><br>\n";
		win=window.open();
		win.document.write(text);
		win.document.close();
	}
	
	//-------------------------------------------------------------------
	// isArray(obj)
	// Returns true if the object is an array, else false
	//-------------------------------------------------------------------
	function isArray( obj )
	{
		return (typeof(obj.length)=="undefined") ? false : true;
	}

	