/*=========================================*\
|			  Army System CORE 3			|
|-------------------------------------------|
|	   A close copy of Kings of Chaos		|
|   No code is copied from Kings of Chaos   |
|-------------------------------------------|
|		 Made by supersmashbrothers			|
|     Copyright removal is not allowed      |
|-------------------------------------------|
| 			   Support sites:				|
|		http://forums.invisionize.com		|
|	  http://supersmashbrothers.2ya.com		|
|-------------------------------------------|
| 				Kings of Chaos 				|
|		 http://www.kingsofchaos.com/ 		|
\*=========================================*/

function togglemenu( add )
{
	var save;
	if ( add == 0 )
	{
		my_hide_div( my_getbyid( 'ucpmenu_0'  ) );
		my_hide_div( my_getbyid( 'ucpextra_1' ) );
		my_show_div( my_getbyid( 'ucpmenu_1'  ) );
		my_hide_div( my_getbyid( 'ucpmenu_2'  ) );
		my_hide_div( my_getbyid( 'ucpextra_2' ) );
		my_hide_div( my_getbyid( 'ucpmenu_3'  ) );
		save = 1;
	}
	else 
	if ( add == 1 )
	{
		my_hide_div( my_getbyid( 'ucpmenu_0'  ) );
		my_hide_div( my_getbyid( 'ucpextra_1' ) );
		my_hide_div( my_getbyid( 'ucpmenu_1'  ) );
		my_show_div( my_getbyid( 'ucpmenu_2'  ) );
		my_show_div( my_getbyid( 'ucpextra_2' ) );
		my_hide_div( my_getbyid( 'ucpmenu_3'  ) );
		save = 2;
	}
	else 
	if ( add == 2 )
	{
		my_hide_div( my_getbyid( 'ucpmenu_0'  ) );
		my_hide_div( my_getbyid( 'ucpextra_1' ) );
		my_hide_div( my_getbyid( 'ucpmenu_1'  ) );
		my_hide_div( my_getbyid( 'ucpmenu_2'  ) );
		my_hide_div( my_getbyid( 'ucpextra_2' ) );
		my_show_div( my_getbyid( 'ucpmenu_3'  ) );
		save = 3;
	}
	else 
	if ( add == 3 )
	{
		my_show_div( my_getbyid( 'ucpmenu_0'  ) );
		my_show_div( my_getbyid( 'ucpextra_1' ) );
		my_hide_div( my_getbyid( 'ucpmenu_1'  ) );
		my_hide_div( my_getbyid( 'ucpmenu_2'  ) );
		my_hide_div( my_getbyid( 'ucpextra_2' ) );
		my_hide_div( my_getbyid( 'ucpmenu_3'  ) );
		save = 0;
	}
	else 
	if ( add == 4 )
	{
		my_hide_div( my_getbyid( 'ucpmenu_0'  ) );
		my_hide_div( my_getbyid( 'ucpextra_1' ) );
		my_hide_div( my_getbyid( 'ucpmenu_1'  ) );
		my_hide_div( my_getbyid( 'ucpmenu_2'  ) );
		my_hide_div( my_getbyid( 'ucpextra_2' ) );
		my_hide_div( my_getbyid( 'ucpmenu_3'  ) );
		save = 4;
	}
	
	my_setcookie( 'army_core_menu', save, 1 );
}
function togglebox( add )
{
	saved = new Array();
	clean = new Array();

	//-----------------------------------
	// Get any saved info
	//-----------------------------------
	
	if ( tmp = my_getcookie('collapseprefs') )
	{
		saved = tmp.split(",");
	}
	
	//-----------------------------------
	// Remove bit if exists
	//-----------------------------------
	
	for( i = 0 ; i < saved.length; i++ )
	{
		if ( saved[i] != 'army_menu_box' && saved[i] != "" )
		{
			clean[clean.length] = saved[i];
		}
	}
	
	//-----------------------------------
	// Add?
	//-----------------------------------
	
	if ( add )
	{
		clean[ clean.length ] = 'army_menu_box';
		my_hide_div( my_getbyid( 'army_menu_box_link_show'  ) );
		my_show_div( my_getbyid( 'army_menu_box_link_hide'  ) );
		my_hide_div( my_getbyid( 'army_menu_box'            ) );
	}
	else
	{
		my_show_div( my_getbyid( 'army_menu_box_link_show'  ) );
		my_hide_div( my_getbyid( 'army_menu_box_link_hide'  ) );
		my_show_div( my_getbyid( 'army_menu_box'            ) );
	}
	
	my_setcookie( 'collapseprefs', clean.join(','), 1 );
}
function togglemenucategory( fid, add )
{
	saved = new Array();
	clean = new Array();

	//-----------------------------------
	// Get any saved info
	//-----------------------------------
	
	if ( tmp = my_getcookie('collapseprefs') )
	{
		saved = tmp.split(",");
	}
	
	//-----------------------------------
	// Remove bit if exists
	//-----------------------------------
	
	for( i = 0 ; i < saved.length; i++ )
	{
		if ( saved[i] != fid && saved[i] != "" )
		{
			clean[clean.length] = saved[i];
		}
	}
	
	//-----------------------------------
	// Add?
	//-----------------------------------
	
	if ( add )
	{
		clean[ clean.length ] = fid;
		my_show_div( my_getbyid( 'fc_'+fid+'_0'  ) );
		my_show_div( my_getbyid( 'fc_'+fid+'_1'  ) );
		my_show_div( my_getbyid( 'fc_'+fid+'_2'  ) );
		my_show_div( my_getbyid( 'fc_'+fid+'_3'  ) );
		my_hide_div( my_getbyid( 'fo_'+fid+'_0'  ) );
		my_hide_div( my_getbyid( 'fo_'+fid+'_1'  ) );
		my_hide_div( my_getbyid( 'fo_'+fid+'_2'  ) );
		my_hide_div( my_getbyid( 'fo_'+fid+'_3'  ) );
	}
	else
	{
		my_show_div( my_getbyid( 'fo_'+fid+'_0'  ) );
		my_show_div( my_getbyid( 'fo_'+fid+'_1'  ) );
		my_show_div( my_getbyid( 'fo_'+fid+'_2'  ) );
		my_show_div( my_getbyid( 'fo_'+fid+'_3'  ) );
		my_hide_div( my_getbyid( 'fc_'+fid+'_0'  ) );
		my_hide_div( my_getbyid( 'fc_'+fid+'_1'  ) );
		my_hide_div( my_getbyid( 'fc_'+fid+'_2'  ) );
		my_hide_div( my_getbyid( 'fc_'+fid+'_3'  ) );
	}
	
	//my_setcookie( 'collapseprefs', clean.join(','), 1 );
}

var click_delay = 1200; //microseconds (1.2 seconds)
var start = 0;

function menu_event_mousedown( event )
{
	start = _get_time_now();
	
	setTimeout( "menu_event_timer()", 5 );
}

function menu_event_timer( )
{
	var timenow = _get_time_now();
	
	if ( start > 0 && timenow > 0 && ( (timenow - start ) > click_delay ) )
	{
		start = 0;
		togglemenu( 4 );
		xml_menu_init( );
		//alert('it works');
		return false;
	}
	
	if ( start > 0 )
	{
		setTimeout( "menu_event_timer()", 5 );
	}
	else
	{
		return false;
	}
}

function menu_event_mouseup( event )
{
	start = 0;
	
	return false;
}

/*--------------------------------------------*/
// Get time now
/*--------------------------------------------*/

function _get_time_now()
{
	var mydate = new Date();
	return mydate.getTime();
}


var menu_main;
var menu_loaded = 0;

function xml_menu_init( tab )
{
	menu_main = document.getElementById( 'get-core-menu-box' );
	menu_drag = document.getElementById( 'core-menu-drag' );
	
	/*--------------------------------------------*/
	// Main function to do on request
	// Must be defined first!!
	/*--------------------------------------------*/
	
	do_request_function = function()
	{
		//----------------------------------
		// Ignore unless we're ready to go
		//----------------------------------
		
		if ( ! xmlobj.readystate_ready_and_ok() )
		{
			// Could do a little loading graphic here?
			return;
		}
		
		//----------------------------------
		// INIT
		//----------------------------------
		
		var html = xmlobj.xmlhandler.responseText;
		
		//----------------------------------
		// Stop IE showing select boxes over
		// floating div [ 1 ]
		//----------------------------------
		
		if ( is_ie )
		{
			 html = "<iframe id='core-menu-shim' src='javascript:;' class='iframshim' scrolling='no' frameborder='0' style='position:absolute; top:0px; left:0px; display:none;'></iframe>" + html;
		}
		
		menu_content           = document.getElementById('core-menu-content');
		menu_content.innerHTML = html;
		
		//----------------------------------
		// Stop IE showing select boxes over
		// floating div [ 2 ]
		//----------------------------------
		
		if ( is_ie )
		{
			menu_shim               = document.getElementById('core-menu-shim');
			menu_shim.style.width   = menu_content.offsetWidth;
			menu_shim.style.height  = menu_content.offsetHeight;
			menu_shim.style.zIndex  = menu_content.style.zIndex - 1;
			menu_shim.style.top     = menu_content.style.top;
			menu_shim.style.left    = menu_content.style.left;
			menu_shim.style.display = "block";
		}
	}
	
	xmlobj = new ajax_request();
	xmlobj.onreadystatechange( do_request_function );
	
	//----------------------------------
	// LOAD XML
	//----------------------------------
	
	if( tab )
	{
		xmlobj.process( ipb_var_base_url + 'autocom=army&xmlmenu=1&tab=' + tab + '&core=' + core );
	}
	else
	{
		xmlobj.process( ipb_var_base_url + 'autocom=army&xmlmenu=1&core=' + core );
	}
  	
  	menu_main.style.position = 'absolute';
	menu_main.style.display  = 'block';
	menu_main.style.zIndex   = 99;
	
	//----------------------------------
	// Not loaded? INIT
	//----------------------------------
	
	if ( ! menu_loaded )
	{
		//----------------------------------
		// Figure width and height
		//----------------------------------
		
		var my_width  = 0;
		var my_height = 0;
		
		if ( typeof( window.innerWidth ) == 'number' )
		{
			//----------------------------------
			// Non IE
			//----------------------------------
		  
			my_width  = window.innerWidth;
			my_height = window.innerHeight;
		}
		else if ( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) )
		{
			//----------------------------------
			// IE 6+
			//----------------------------------
			
			my_width  = document.documentElement.clientWidth;
			my_height = document.documentElement.clientHeight;
		}
		else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) )
		{
			//----------------------------------
			// Old IE
			//----------------------------------
			
			my_width  = document.body.clientWidth;
			my_height = document.body.clientHeight;
		}
		
		//----------------------------------
		// Get div height && width
		//----------------------------------
		
		var divheight = parseInt( menu_main.style.Height );
		var divwidth  = parseInt( menu_main.style.Width );
		
		divheight = divheight ? divheight : 400;
		divwidth  = divwidth  ? divwidth  : 400;
		
		//----------------------------------
		// Got it stored in a cookie?
		//----------------------------------
		
		var divxy = my_getcookie( 'army-menu-div' );
		var co_ords;
		
		if ( divxy && divxy != null )
		{
			co_ords = divxy.split( ',' );
		
			//----------------------------------
			// Got co-ords?
			//----------------------------------
			
			if ( co_ords.length )
			{
				var final_width  = co_ords[0];
				var final_height = co_ords[1];
				
				if ( co_ords[0] > my_width )
				{
					//----------------------------------
					// Keep it on screen
					//----------------------------------
					
					final_width = my_width - divwidth;
				}
				
				if ( co_ords[1] > my_height )
				{
					//----------------------------------
					// Keep it on screen
					//----------------------------------
					
					final_height = my_height - divheight;
				}
				
				menu_main.style.left = final_width  + 'px';
				menu_main.style.top  = final_height + 'px';
			}
		}
		else
		{
			//----------------------------------
			// Reposition DIV roughly centered
			//----------------------------------
			
			menu_main.style.left = my_width  / 2  - (divwidth / 2)  + 'px';
			menu_main.style.top  = my_height / 2 - (divheight / 2 ) + 'px';
		}
		
		Drag.cookiename = 'army-menu-div';
		Drag.init( menu_drag, menu_main );
		
		menu_loaded = 1;
	}
}

