/**  © annexare.com: interface scripts  **/

var site = location.protocol + '//' + location.host + ( location.pathname.indexOf( '?' ) > 0 ? location.pathname.substring( 0, location.pathname.indexOf( '?' ) - 1 ) : location.pathname );
var target = 'main';
var timers = new Array();
var languages = new Array( 'en', 'ru', 'uk' );

/**  menu & language  **/

function menu( o )
{
	m = (o !== null) ? o.id.indexOf('_') ? o.id.substring(o.id.lastIndexOf('_') + 1) : o.id : '';
	switch ( m )
	{
		case 'about':
			// showHideTimeOut( 'get', false );
			hideID('get');
			showHideID( 'about' );
			break;
		case 'contact':
			hideID('about');
			get( 'contact', 'get' );
			showHideID( 'get' );
			break;
		default:
			hideID('about');
			hideID('get');
			o = getNode('m_logo');
	}
	o.blur();
}

function blockLang( l, b )
{
	for( i = 0; i < languages.length; i++ )
	{
		getNode( b + '_' + languages[i] ).style.display = (l == languages[i] ? "block" : "none");
		getNode( b + '_lang_' + languages[i] ).disabled = (l == languages[i] ? "disabled" : "");
	}
}

/**  xmlHttpRequest  **/

function get( page_name, target_id )
{
	var url;
	target = target_id;
	url = site + 'inc/' + page_name + '.php';
	if ( window.XMLHttpRequest )
	{
		r = new XMLHttpRequest();
		if (r)
		{
			r.onreadystatechange = listen;
			r.open( "GET", url, true );
			r.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
			r.send( null );
		} else {
			// alert("Error creating XMLHttpRequest!");
		}
	} else {
		alert("Your web-browser is incompatible to make such operation. Update it or use another one.");
	}
}

function listen( )
{
	if (r)
	{
		if (r.readyState == 4)
		{
			if (r.status == 200) {
				nodeText( target, r.responseText );
			} else {
				nodeText( target, '<b>Oops:</b><br/>' + r.statusText );
	        }
	    }
	} else {
		alert('Error! XMLHttpRequest object instance not found!');
	}
}


/**  node, visibility  **/

function getNode( nodeId )
{
	if ( document.getElementById )
		return document.getElementById( nodeId );
	else if ( document.all && document.all( nodeId ) )
		return document.all( nodeId );
	else if ( document.layers && document.layers[ nodeId ] )
		return document.layers[ nodeId ];
	else
		return false;
}

function showHideID( target )
{
	node = getNode( target );
	node.style.display = ( node.style.display == "block" ) ? "none" : "block";
}

function showID( target )
{
	getNode( target ).style.display = "block";
}

function hideID( target )
{
	/*if (!timers[target])
	{*/
		getNode( target ).style.display = "none";
		// node.style.visibility = "hidden";
	/*}
	else
	{
		timers[target] = setTimeout( "showHideTimeOut( '" + target + "', false )", 40 );
	}*/
}

function checkPostForm( )
{
	subject = getNode( 'subject' );
	text = getNode( 'post_text' );
	bPost = getNode( 'button_post' );
	
	if ( subject.value == '' || text.value == '' )
	{
		bPost.disabled = "disabled";
		return false;
	}
	else
	{
		bPost.disabled = "";
		return true;
	}
}

function checkContactForm( )
{
	return false;
}

function changeNodeClass( nodeId, newClass )
{
	getNode( nodeId ).className = newClass;
}

/**  I hate IE!  **/

function nodeAppend( nodeId, iHTML, tag )
{
	try
	{
		var nodeNew = document.createElement( tag );
		getNode( nodeId ).appendChild( nodeNew );
		nodeNew.innerHTML = iHTML;
	}
	catch ( ex ) { }
}

function nodeText( nodeId, text )
{
	try
	{
		try
		{
			getNode( nodeId ).innerHTML = text;
		}
		catch( ex ) /**  again, I hate IE!  **/
		{
			getNode( nodeId ).innerText = text;
		}
	}
	catch ( ex ) { }
}


// scrolling

function getScrollY() {
	var sY = 0;
	if ( typeof( window.pageYOffset ) == 'number' ) {
		// Netscape compliant
		sY = window.pageYOffset;
	} else if ( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
    	// DOM compliant
		sY = document.body.scrollTop;
	} else if ( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
    	// IE6 standards compliant mode
		sY = document.documentElement.scrollTop;
	}
	return sY;
}

function pageScrollUp() {
	window.scrollBy(0, -100);

	if ( getScrollY() > 0 )
	{
		timers['scroll'] = setTimeout( 'pageScrollUp()', 20 );
	}
	else
	{
		clearTimeout(timers['scroll']);
	}
}

/*@cc_on @if (@_win32 && @_jscript_version >= 5) if (!window.XMLHttpRequest)
window.XMLHttpRequest = function() { return new ActiveXObject('Microsoft.XMLHTTP') }
@end @*/

/**  © annexare.com  **/
