/**
 * Troche przydatnych roznosci
 */

function MoveFocusToNextTabIndex(field, e)
{
	key = GetKeyCode(GetEvent(e));

	if (key == 13) 
	{
		e.returnValue = false;
		e.cancel = true;
		
		for (i = 0; i < field.form.elements.length; i++)
		{
			if (field.form.elements[i].tabIndex == field.tabIndex+1) 
			{
				field.form.elements[i].focus();
				if(field.form.elements[i].type == "text")
				{
					field.form.elements[i].select();
				}
				break;
			}			
		}		
		return false;
	}	
	return false;
}

// Funkcja zaznacza wybrany fragment tekstu w podanym polu typu 'text'
function SelectTextRange(object, start, end)
{
	// Internet Exploder
	if(object.createTextRange)
	{
		var range = object.createTextRange();
		if(start == end)
		{
			range.move('character', start);
		}
		else
		{
			range.moveStart('character', start);
			if(object.nodeType == Node.ELEMENT_NODE)
			{
				range.moveEnd('character', end - object.value.length);
			}
			else if(object.nodeType == Node.TEXT_NODE)
			{
				rande.moveEnd('character', end - object.nodeValue.length);
			}
		}
		range.select();
	}
	// FireFox
	else if(object.selectionStart)
	{
		object.focus();
		object.setSelectionRange(start, end);
	}
}

function GetEvent(event)
{
	if(!event && window.event)
	{
		event = window.event;
	}
	return event;
}

function GetKeyCode(event)
{
    if(typeof(event.keyCode ) == 'number') //DOM
    {
    	return event.keyCode;
    }
    else if( typeof( e.which ) == 'number' ) //NS 4 compatible
    {
    	return event.which;
    }
    else if( typeof( e.charCode ) == 'number'  ) //also NS 6+, Mozilla 0.9+
    {
    	return event.charCode;
    }
    else //total failure, we have no way of obtaining the key code
    {
    	return 0;
    }
}
