/*
 * Draconigena - search tool for A Game of Thrones
 * Copyright (C) 2006
 * Michael Isaacson (michael@redlightning.net)
 * Red Lighting Graphics (http://www.redlightning.net)
 *
 * This software is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public
 * License as published by the Free Software Foundation; either
 * version 2 of the License, or (at your option) any later version.
 *
 * This software is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * General Public License for more details.
 *
 * You should have received a copy of the GNU General Public
 * License along with this software; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA.
 *
 */
 
//Do page specific actions, like showing certian buttons
function pageSpecific()
{
	page = document.getElementById('pageid').innerHTML;
	if(page == 'index') 
	{
		document.getElementById('runsearch').style.display      = 'block';
		document.getElementById('searchmode').style.display     = 'block';
		document.getElementById('resultsdisplay').style.display = 'block';
	}
	else if(page == 'spoiler')
	{
		document.getElementById('runsearch').style.display      = 'none';
		document.getElementById('mainform').action              = 'addcards.php';
		document.getElementById('searchmode').style.display     = 'block';
		document.getElementById('resultsdisplay').style.display = 'block';
	}
	else if(page == 'addcards')
	{
		document.getElementById('runsearch').style.display      = 'none';
		document.getElementById('addtodeck').style.display      = 'none';
		document.getElementById('addtocoll').style.display      = 'none';
	}
	else if(page == 'collection')
	{
		document.getElementById('runsearch').style.display      = 'none';
		document.getElementById('searchmode').style.display     = 'none';
		document.getElementById('resultsdisplay').style.display = 'none';
	}
	else if(page == 'messages')
	{
		document.getElementById('runsearch').style.display      = 'none';
		document.getElementById('resultsdisplay').style.display = 'none';
		document.getElementById('searchmode').style.display     = 'none';
		document.getElementById('messagesblock').style.display  = 'block';
	}
	else
	{
		document.getElementById('runsearch').style.display      = 'none';
		document.getElementById('resultsdisplay').style.display = 'none';
		document.getElementById('searchmode').style.display     = 'none';
	}
}

//Collapse or expand slection groups on the main search page
function toggle(nr)
{
	tog = nr + 'Toggle';
	all = nr + 'All';
	non = nr + 'None';
	
	if(document.getElementById(nr).style.display == 'none')
	{
		document.getElementById(nr).style.display = 'block';
		document.getElementById(tog).src = 'images/collapse.gif';
		document.getElementById(all).style.visibility = 'visible';
		document.getElementById(non).style.visibility = 'visible';
	}
	else
	{
		document.getElementById(nr).style.display = 'none';
		document.getElementById(tog).src = 'images/expand.gif';
		document.getElementById(all).style.visibility = 'hidden';
		document.getElementById(non).style.visibility = 'hidden';
	}
}
//Collapse or expand the deck details
function toggleMode()
{
	//If we're on the spoiler page, toggle box/input for cards
	page = document.getElementById('pageid').innerHTML;
	
	if(page == 'spoiler')
	{
		var count = document.getElementById('count').innerHTML;
		//Deck builder mode
		if(document.getElementById('deck').checked == true)
		{
			for(var i=0; i<count; i++)
			{
				var cbox  = "cbox"   + i;
				var sbox  = "sbox"   + i;
				var cinp  = "cfield" + i;
				var sinp  = "sfield" + i;
				var cdeck = "cdeck"  + i;
				var sdeck = "sdeck"  + i;
				
				document.getElementById(cbox).style.display  = 'none';
				document.getElementById(sbox).style.display  = 'none';
				document.getElementById(cinp).style.display  = 'none';
				document.getElementById(sinp).style.display  = 'none';
				document.getElementById(cdeck).style.display = 'block';
				document.getElementById(sdeck).style.display = 'block';
				//document.getElementById('addtocoll').style.display      = 'none';
				//document.getElementById('addtocollblock').style.display = 'none';
			}
		}
		//Collection builder mode
		else if(document.getElementById('collection').checked == true)
		{
			for(var i=0; i<count; i++)
			{
				var cbox  = "cbox"   + i;
				var sbox  = "sbox"   + i;
				var cinp  = "cfield" + i;
				var sinp  = "sfield" + i;
				var cdeck = "cdeck"  + i;
				var sdeck = "sdeck"  + i;
				
				document.getElementById(cbox).style.display  = 'none';
				document.getElementById(sbox).style.display  = 'none';
				document.getElementById(cinp).style.display  = 'block';
				document.getElementById(sinp).style.display  = 'block';
				document.getElementById(cdeck).style.display = 'none';
				document.getElementById(sdeck).style.display = 'none';
				//document.getElementById('addtocoll').style.display      = 'block';
				//document.getElementById('addtocollblock').style.display = 'block';
			}
		}
		//Normal search mode
		else
		{
			for(var i=0; i<count; i++)
			{
				var cbox  = "cbox"   + i;
				var sbox  = "sbox"   + i;
				var cinp  = "cfield" + i;
				var sinp  = "sfield" + i;
				var cdeck = "cdeck"  + i;
				var sdeck = "sdeck"  + i;
				
				document.getElementById(cbox).style.display  = 'block';
				document.getElementById(sbox).style.display  = 'block';
				document.getElementById(sinp).style.display  = 'none';
				document.getElementById(cinp).style.display  = 'none';
				document.getElementById(cdeck).style.display = 'none';
				document.getElementById(sdeck).style.display = 'none';
				//document.getElementById('addtocoll').style.display      = 'none';
				//document.getElementById('addtocollblock').style.display = 'none';
			}
		}
	}
}

//Collapse or expand the header and menu
function toggleHeader()
{
	if(document.getElementById('main_header').style.display == 'none')
	{
		document.getElementById('main_header').style.display  = 'block';
		document.getElementById('small_header').style.display = 'none';
		document.getElementById('side_menu').style.display    = 'block';
		document.getElementById('menu_cell').style.width      = 200;
	}
	else
	{
		document.getElementById('main_header').style.display  = 'none';
		document.getElementById('small_header').style.display = 'block';
		document.getElementById('side_menu').style.display    = 'none';
		document.getElementById('menu_cell').style.width      = 0;
	}
}

//Hide or show the Spoiler list and spoiler options
function toggleSpoiler()
{
	if(document.getElementById('mainform').elements['checklist'].checked)
	{
		document.getElementById('spoiler').style.display = 'none';
		if(document.getElementById('pageid').innerHTML == "spoiler")
		{
			document.getElementById('spoilerblock').style.display = 'none';
			document.getElementById('checklistblock').style.display = 'block';
			
			//set input values for deck builder and collection builder to be the same for both display modes
			//checklist = spoilerlist
			var count = document.getElementById('count').innerHTML;
			for(var i=0; i<count; i++)
			{
				var cinp = "check" + i;
				var sinp = "spoiler" + i;
				document.getElementById(cinp).value = document.getElementById(sinp).value;
			}
		}
	}
	else
	{
		document.getElementById('spoiler').style.display = 'block';
		if(document.getElementById('pageid').innerHTML == "spoiler")
		{
			document.getElementById('spoilerblock').style.display = 'block';
			document.getElementById('checklistblock').style.display = 'none';
			
			//set input values for deck builder and collection builder to be the same for both display modes
			//spoilerlist = checklist
			var count = document.getElementById('count').innerHTML;
			for(var i=0; i<count; i++)
			{
				var cinp = "check" + i;
				var sinp = "spoiler" + i;
				document.getElementById(sinp).value = document.getElementById(cinp).value;
			}
		}
	}
}

//Hide or show columns on the spoiler list view
function toggleColumn(name)
{
	if(document.getElementById('count').innerHTML != null)
	{
		if(document.getElementById('mainform').elements[name].checked) { display='block'; }
		else { display='none'; }
		var top;
		top = name + "Top";
		document.getElementById(top).style.display = display;
		
		count = parseInt(document.getElementById('count').value);
		for(var i=0; i<count; i++)
		{
			spanID = name + i;
			document.getElementById(spanID).style.display = display;
		}
	}
}
function checks(group, check)
{
	if(check == 1) check = true;
	else check = false;
		
	if(group == 'sets')
	{
		//Iron Throne
		document.getElementById('mainform').elements['tal'].checked = check;
		document.getElementById('mainform').elements['hot'].checked = check;
		document.getElementById('mainform').elements['ite'].checked = check;
		document.getElementById('mainform').elements['leg'].checked = check;
		document.getElementById('mainform').elements['itp'].checked = check;
		//Winter
		document.getElementById('mainform').elements['wep'].checked = check;
		document.getElementById('mainform').elements['wes'].checked = check;
		document.getElementById('mainform').elements['son'].checked = check;
		document.getElementById('mainform').elements['sot'].checked = check;
		document.getElementById('mainform').elements['win'].checked = check;
		//Valyrian	
		document.getElementById('mainform').elements['vep'].checked = check;
		document.getElementById('mainform').elements['ves'].checked = check;
		document.getElementById('mainform').elements['rok'].checked = check;
		document.getElementById('mainform').elements['tos'].checked = check;
		document.getElementById('mainform').elements['ved'].checked = check;
		//Ice and Fire	
		document.getElementById('mainform').elements['ifp'].checked = check;
		document.getElementById('mainform').elements['ifs'].checked = check;
		document.getElementById('mainform').elements['cos'].checked = check;
		document.getElementById('mainform').elements['tob'].checked = check;
		document.getElementById('mainform').elements['iaf'].checked = check;
		//Westeros	
		document.getElementById('mainform').elements['pro'].checked = check;
		document.getElementById('mainform').elements['prs'].checked = check;
		document.getElementById('mainform').elements['fod'].checked = check;
		document.getElementById('mainform').elements['sos'].checked = check;
		document.getElementById('mainform').elements['wst'].checked = check;
		//Special	
		//document.getElementById('mainform').elements['wla'].checked = check;
		//document.getElementById('mainform').elements['spy'].checked = check;
	}
	
	else if(group == "standard")
	{
		//Iron Throne
		document.getElementById('mainform').elements['tal'].checked = true;
		document.getElementById('mainform').elements['hot'].checked = true;
		document.getElementById('mainform').elements['ite'].checked = true;
		document.getElementById('mainform').elements['leg'].checked = true;
		document.getElementById('mainform').elements['itp'].checked = true;
		//Winter
		document.getElementById('mainform').elements['wep'].checked = true;
		document.getElementById('mainform').elements['wes'].checked = true;
		document.getElementById('mainform').elements['son'].checked = true;
		document.getElementById('mainform').elements['sot'].checked = true;
		document.getElementById('mainform').elements['win'].checked = true;
		//Valyrian	
		document.getElementById('mainform').elements['vep'].checked = true;
		document.getElementById('mainform').elements['ves'].checked = true;
		document.getElementById('mainform').elements['rok'].checked = true;
		document.getElementById('mainform').elements['tos'].checked = true;
		document.getElementById('mainform').elements['ved'].checked = true;
		//Ice and Fire	
		document.getElementById('mainform').elements['ifp'].checked = false;
		document.getElementById('mainform').elements['ifs'].checked = false;
		document.getElementById('mainform').elements['cos'].checked = false;
		document.getElementById('mainform').elements['tob'].checked = false;
		document.getElementById('mainform').elements['iaf'].checked = false;
		//Westeros	
		document.getElementById('mainform').elements['pro'].checked = false;
		document.getElementById('mainform').elements['prs'].checked = false;
		document.getElementById('mainform').elements['fod'].checked = false;
		document.getElementById('mainform').elements['sos'].checked = false;
		document.getElementById('mainform').elements['wst'].checked = false;
		//Special	
		//document.getElementById('mainform').elements['wla'].checked = false;
		//document.getElementById('mainform').elements['spy'].checked = false;
	}
	
	else if(group == "houses")
	{
		document.getElementById('mainform').elements['bar'].checked = check;
		document.getElementById('mainform').elements['gre'].checked = check;
		document.getElementById('mainform').elements['lan'].checked = check;
		document.getElementById('mainform').elements['mar'].checked = check;
		document.getElementById('mainform').elements['sta'].checked = check;
		document.getElementById('mainform').elements['tar'].checked = check;
		document.getElementById('mainform').elements['neu'].checked = check;
	}
	
	else if(group == "type")
	{
		document.getElementById('mainform').elements['character'].checked  = check;
		document.getElementById('mainform').elements['location'].checked   = check;
		document.getElementById('mainform').elements['attachment'].checked = check;
		document.getElementById('mainform').elements['event'].checked      = check;
		document.getElementById('mainform').elements['plot'].checked       = check;
		document.getElementById('mainform').elements['agenda'].checked     = check;
		document.getElementById('mainform').elements['house'].checked      = check;
		document.getElementById('mainform').elements['title'].checked      = check;
	}
	
	else if (group == "rarity")
	{
		document.getElementById('mainform').elements['common'].checked   = check;
		document.getElementById('mainform').elements['uncommon'].checked = check;
		document.getElementById('mainform').elements['rare'].checked     = check;
		document.getElementById('mainform').elements['fixed'].checked    = check;
		document.getElementById('mainform').elements['promo'].checked    = check;
	}
	
	else if (group == "character")
	{
		document.getElementById('mainform').elements['str_low'].value           = "0";
		document.getElementById('mainform').elements['str_high'].value          = "11";
		document.getElementById('mainform').elements['c_cost_low'].value        = "0";
		document.getElementById('mainform').elements['c_cost_high'].value       = "8";
		document.getElementById('mainform').elements['c_cost_X'].checked        = check;
		document.getElementById('mainform').elements['str_X'].checked           = check;
		document.getElementById('mainform').elements['c_military'].checked      = check;
		document.getElementById('mainform').elements['c_intrigue'].checked      = check;
		document.getElementById('mainform').elements['c_power'].checked         = check;
		document.getElementById('mainform').elements['c_unique'].checked        = check;
		document.getElementById('mainform').elements['c_endless'].checked       = check;
		document.getElementById('mainform').elements['c_doomed'].checked        = check;
		document.getElementById('mainform').elements['c_income'].checked        = check;
		document.getElementById('mainform').elements['c_initiative'].checked    = check;
		document.getElementById('mainform').elements['c_influence'].checked     = check;
		document.getElementById('mainform').elements['c_stealth'].checked       = check;
		document.getElementById('mainform').elements['c_renown'].checked        = check;
		document.getElementById('mainform').elements['c_deadly'].checked        = check;
		document.getElementById('mainform').elements['c_noattachments'].checked = check;
		document.getElementById('mainform').elements['c_noble'].checked         = check;
		document.getElementById('mainform').elements['c_holy'].checked          = check;
		document.getElementById('mainform').elements['c_war'].checked           = check;
		document.getElementById('mainform').elements['c_learned'].checked       = check;
	}
	
	else if (group == "location")
	{
		document.getElementById('mainform').elements['l_cost_low'].value     = "0";
		document.getElementById('mainform').elements['l_cost_high'].value    = "5";
		document.getElementById('mainform').elements['l_cost_X'].checked     = check;
		document.getElementById('mainform').elements['l_unique'].checked     = check;
		document.getElementById('mainform').elements['l_income'].checked     = check;
		document.getElementById('mainform').elements['l_initiative'].checked = check;
		document.getElementById('mainform').elements['l_influence'].checked  = check;
		document.getElementById('mainform').elements['l_limited'].checked    = check;
		document.getElementById('mainform').elements['l_doomed'].checked     = check;
		document.getElementById('mainform').elements['l_deathbound'].checked = check;
	}
	
	else if (group == "attachment")
	{
		document.getElementById('mainform').elements['a_cost_low'].value     = "0";
		document.getElementById('mainform').elements['a_cost_high'].value    = "5";
		document.getElementById('mainform').elements['a_cost_X'].checked     = check;
		document.getElementById('mainform').elements['a_unique'].checked     = check;
		document.getElementById('mainform').elements['a_income'].checked     = check;
		document.getElementById('mainform').elements['a_initiative'].checked = check;
		document.getElementById('mainform').elements['a_influence'].checked  = check;
		document.getElementById('mainform').elements['a_endless'].checked    = check;
		document.getElementById('mainform').elements['a_doomed'].checked     = check;
		document.getElementById('mainform').elements['a_deathbound'].checked = check;
		
	}
	
	else if (group == "event")
	{
		document.getElementById('mainform').elements['e_unique'].checked     = check;
		document.getElementById('mainform').elements['e_deathbound'].checked = check;
		document.getElementById('mainform').elements['e_story'].checked      = check;
		document.getElementById('mainform').elements['e_doomed'].checked     = check;
		document.getElementById('mainform').elements['e_endless'].checked    = check;
	}
	
	else if (group == "plot")
	{
		document.getElementById('mainform').elements['income_low'].value  = "0";
		document.getElementById('mainform').elements['income_high'].value = "8";
		document.getElementById('mainform').elements['init_low'].value    = "0";
		document.getElementById('mainform').elements['init_high'].value   = "11";
		document.getElementById('mainform').elements['claim_low'].value   = "0";
		document.getElementById('mainform').elements['claim_high'].value  = "4";
		document.getElementById('mainform').elements['income_X'].checked  = check;
		document.getElementById('mainform').elements['init_X'].checked    = check;
		document.getElementById('mainform').elements['claim_X'].checked   = check;
	}
	
	else if (group == "keyword")
	{
		document.getElementById('mainform').elements['name_mode'].value   = "contains";
		document.getElementById('mainform').elements['traits_mode'].value = "contains";
		document.getElementById('mainform').elements['ntext_mode'].value  = "contains";
		document.getElementById('mainform').elements['artist_mode'].value = "contains";
		
		document.getElementById('mainform').elements['namekw'].value   = "";
		document.getElementById('mainform').elements['traitskw'].value = "";
		document.getElementById('mainform').elements['textkw'].value   = "";
		document.getElementById('mainform').elements['artistkw'].value = "";
	}
}