Array.prototype.inArray = function (value) {
	var i;
	for (i=0; i < this.length; i++) {
		if (this[i] === value) {
			return true;
		}
	}
	return false;
};


function toggle(obj) {
	var el = document.getElementById(obj);
	if ( el.style.display != 'none' ) {
		el.style.display = 'none';
	}
	else {
		el.style.display = '';
	}
}


function $() {
	var elements = new Array();
	for (var i = 0; i < arguments.length; i++) {
		var element = arguments[i];
		if (typeof element == 'string')
			element = document.getElementById(element);
		if (arguments.length == 1)
			return element;
		elements.push(element);
	}
	return elements;
}

function copySelection() {
if (window.getSelection) selection = window.getSelection().toString();
else if (document.getSelection) selection = document.getSelection();
else if (document.selection) selection = document.selection.createRange().text;
}

function pasteSelection( a, b )
{
	if (selection)
	{
		$('comment').focus();
		$('comment').value = '[q='+ a + ']' + selection + '[/q]' + '\n' + $('comment').value;
		
		//text.setSelectedText("[q]"+selection+"[/q]\n");
		
		selection = '';
	}
	else
	{
		$('comment').focus();
		$('comment').value = '[q='+ a + ']' + $(b).innerHTML + '[/q]' + '\n' + $('comment').value;
	}
}

function allActs ( f, a1, a2, a3, a4 )
{
	var req = new JsHttpRequest();
	var t = "";
	
	req.onreadystatechange = function()
	{
		if (req.readyState == 4)
		{
			//mHide( "ajax_win" );

			if ( req.responseJS )
			{
				/*
				if ( req.responseText )
						alert( 'debug: '+req.responseText );
				*/
				
				//alert( 'debug: '+req.responseText );
				
				if ( typeof ( req.responseJS.div ) != "undefined" )
				{
					if ( req.responseJS.div != '' )
					{
						$( req.responseJS.div ).innerHTML = req.responseText;
					}
					else
					{
						if ( req.responseText != '' )
						alert( 'debug: '+req.responseText );
					}
				}
				else
				{
					if ( req.responseText )
					{
						alert( 'debug: '+req.responseText );
						//mPush( req.responseText );
					}
				}
				
				try 
				{
					eval ( req.responseJS.evl );
				}
				catch (e)
				{
					alert ( e + ':' + req.responseJS.evl );
				}
				
				/*
				if ( req.responseJS.mes != '' )
					mPush( req.responseJS.mes );
				*/
			}
			else
			{
				alert( 'debug: '+req.responseText );
			}
		}
	}
	
	//mShow( "ajax_win" );
	
	if ( a1 == 'getItemInfo' )
		req.caching = true;
	else
		req.caching = false;
		
	req.open('POST', f + '.php', true);
	//alert(f + ' ' + a1 + ' ' + a2 + ' ' + a3 + ' ' + a4 );
	req.send({ act : a1, nick: a2, dop : a3, r : a4 });
}