/*-------------------------GLOBALS-------------------------------*/
var season_id = get_Cookie("CFC_Season_Id");
var current_hash = ""; //window.location.hash;
/*---------------------------------------------------------------*/

function processCMD(cmd, parms) {
    // If we are not based off ../index.php then we need to reload the page!
	if (location.pathname.indexOf("index.php") == -1) {
		window.location="index.php#"+cmd;
	}
	else 
	{
		cursor_wait();
		if (cmd != "teamresults" && cmd != "teamreports" && cmd != "teamscorers"  && cmd != "fxadmin") {
			//alert("Page:"+cmd);
			$('rightmenu').hide();
		}
		else $('rightmenu').show();
		//setCurrent(cmd,parms);
		//alert(cmd+parms);

		var myAjax = new Ajax.Request(
			'processcmd.php?action='+cmd+parms, 
			{
				method: 'get', 
				parameters: '', 
				onComplete: function(response) {
					$('col1').innerHTML = response.responseText;
					
					if (cmd == "home" || cmd == "news" || cmd == "events" || cmd == "teamreports" || cmd == "teamscorers" || cmd == "newsletter") {
						var welcome=new switchcontent("welcome", "div"); //Limit scanning of switch contents to just "div" elements
						welcome.setStatus('<img src="images/minus.gif" /> ', '<img src="images/plus.gif" /> ');
						welcome.setPersist(true);
						welcome.collapsePrevious(true); //Only one content open at any given time
						welcome.defaultExpanded(1);
						welcome.init();
					}
					//if (cmd == "fxadmin") alert(response.responseText)
					setHash(cmd);
					cursor_clear();
				}
			});	
	}
}

function menuCMD(cmd,title,parms) {
	if (location.pathname.indexOf("index.php") == -1) {
		window.location="index.php#"+cmd;
	}
	else 
	{
		cursor_wait();
		//setCurrent(cmd,parms);
		$('teammenu_title').innerHTML = title+"<img src='images/minus.gif' class='statusicon' /><span class='accordsuffix'></span>"; // This replicates the ddaccordion menu header toggle
		var myAjax = new Ajax.Request(
			'processcmd.php?action='+cmd+parms,
			{
				method: 'get', 
				parameters: '', 
				onComplete: function(response) {
					//alert(response.responseText);
					//$('teammenu_title').innerHTML = menu_title+"<img src='images/plus.gif' class='statusicon'/>";
					$('teammenu').innerHTML = response.responseText;
					//setHash(cmd);
					//cursor_clear();
					$('rightmenu').show();
				}
			});	
		var myAjax1 = new Ajax.Request(
			'processcmd.php?action=results&title='+title, 
			{
				method: 'get', 
				parameters: '', 
				onComplete: function(response) {
					$('col1').innerHTML = response.responseText;
					setHash(cmd);
					//ddaccordion.collapseall('menuheader');
					ddaccordion.expandone('menuheader', 6);
					
					cursor_clear();
				}
			});
	}
}

function cursor_wait() {
$('status_msg').innerHTML = '<b>Processing...</b>';
document.body.style.cursor = 'wait';
}

function cursor_clear() {
document.body.style.cursor = 'default';
$('status_msg').innerHTML = '&nbsp;';
}

// Called by processCMD to set the hidden fields at top of page - used only to go back a page...
function setCurrent(cmd,parms) {
	var frm = document.getElementById("prevPage_form");
	//alert('PreP: '+frm.p_page.value+' PreParms:'+frm.p_parms.value+'CMD:'+cmd+'Parms:'+parms);
	frm.p_page.value = frm.c_page.value;
	frm.p_parms.value = frm.c_parms.value;
	//$('prevpage').innerHTML = $('curpage').innerHTML;
	//$('prevparms').innerHTML = $('curparms').innerHTML;
	//$('curpage').innerHTML = "<input type=text value='"+cmd+"'>";
	frm.c_page.value = cmd;
	if (parms == undefined) frm.c_parms.value = '';
	else frm.c_parms.value = parms;
}

function previousPage() {
	var frm = document.getElementById("prevPage_form");
	//alert("P_Page:"+frm.p_page.value+" P_Parms"+frm.p_parms.value);
	if (frm.p_page.value == 'main.php') window.location.href = "index.php?home=1";
	else processCMD(frm.p_page.value,frm.p_parms.value);
}

function set_Cookie(name,value) {
    var expires = 0;
    var path = '/';
    document.cookie = name + "=" + escape(value) + ";path=" + path;
}

function setSeason(frm) {
	seas_id = frm.season_id.value;
	if (seas_id == "") {alert("You must select a season!");}
	else {
		set_Cookie("CFC_Season_Id",seas_id);
		season_id = seas_id;
		window.location.reload();
	}
}
// Gets the location hash and if set gets the page loaded as indicated by the hash
function loadPage() {
	var cur_hash = window.location.hash;
	if (cur_hash == "#" || cur_hash == "" ) {
		processCMD('home','&season_id='+season_id);
	}
	else {
		if (cur_hash == "#location") {
			loadmap();
		}
	}
	hashCheck = setInterval( "checkHash()", 50 );
}

function checkHash() {
	//alert("WH"+window.location.hash+" CH:"+current_hash);
    if ( window.location.hash != current_hash ) {
        current_hash = window.location.hash;
        if (current_hash != "") {
			var page = current_hash.substr( 1,  current_hash.length);
			if (page != "") {
				switch (page) {
					case "location":
						loadmap();
					case "resultsmenu":
					case "reportsmenu":
					case "scorersmenu":
						if (page == "scorersmenu") title = "Scorers";
						if (page == "resultsmenu") title = "Results/Fixtures";
						if (page == "reportsmenu") title = "Reports";
						menuCMD(page,title,'&season_id='+season_id); // Set up the menu entries
						//processCMD('results','&season_id='+season_id); // Build the form to get the criteria for producing the list of results/reports... 
						break;
					default:
						processCMD(page,'&season_id='+season_id);
					}
			}
		}
    }
}
function setHash(new_hash) {
	window.location.hash = '#'+new_hash;
	current_hash = '#'+new_hash;
}

// correctly, this is just to maintain legacy information
function get_Cookie( name ) {

var start = document.cookie.indexOf( name + "=" );
var len = start + name.length + 1;
if ( ( !start ) &&
( name != document.cookie.substring( 0, name.length ) ) )
{
return null;
}
if ( start == -1 ) return null;
var end = document.cookie.indexOf( ";", len );
if ( end == -1 ) end = document.cookie.length;
return unescape( document.cookie.substring( len, end ) );
}

// Called by awardAdmin function in cfc_class.php on clicking the team selection
function buildPlayerList(frm) {
cursor_wait();
var season_id = frm.aa_season_id.value;
var team_id = frm.aa_team_id.value;
if (team_id != "") {

	var myAjax1 = new Ajax.Request(
		'processcmd.php?action=buildPlayerList&team_id='+team_id+'&season_id='+season_id, 
		{
			method: 'get', 
			parameters: '', 
			onComplete: function(response) {
				//alert(response.responseText);
				$('aa_player_id').innerHTML = response.responseText;
				cursor_clear();
			}
		});
	}
}

function showAwardList(frm) {
cursor_wait();
var season_id = frm.aa_season_id.value;
var team_id = frm.aa_team_id.value;
if (team_id != "") {

	var myAjax1 = new Ajax.Request(
		'processcmd.php?action=awards&team_id='+team_id+'&season_id='+season_id, 
		{
			method: 'get', 
			parameters: '', 
			onComplete: function(response) {
				//alert(response.responseText);
				$('aa_award_list').innerHTML = response.responseText;
				cursor_clear();
			}
		});
	}
}

function dateselect(season_id, team_id, df,option) {

	var df_id = df.options[df.selectedIndex].value;
	//alert("DF:"+df_id);
	processCMD('team'+option,'&season_id='+season_id+'&team_id='+team_id+'&date_filter='+df_id);

}



// Called by awardAdmin function in cfc_class.php on clicking the GO button
function awardInsert(frm) {

var season_id = frm.aa_season_id.value;
var team_id = frm.aa_team_id.value;
var player_id = frm.aa_player_id.value;
var award_id = frm.aa_award_id.value;
//alert("t: "+team_id+"p: "+player_id+"a: "+award_id);
if (team_id !="" && player_id !="" && award_id !="") {
	cursor_wait();
	var myAjax1 = new Ajax.Request(
		'processcmd.php?action=awardInsert&team_id='+team_id+'&player_id='+player_id+'&season_id='+season_id+'&award_id='+award_id, 
		{
			method: 'get', 
			parameters: '', 
			onComplete: function(response) {
				//alert(response.responseText);
				alert(response.responseText);
				cursor_clear();
			}
		});
	}
else alert("Please esnure you have selected a team, player and award!");
}

function fxCMD(frm,cmd) {

var season_id = frm.fx_season_id.value;
var fx_team = frm.fx_team.value;
var fx_old_team = frm.fx_old_team.value;
var fx_id = frm.fx_id.value;
var fx_date = frm.fx_date.value;
var fx_old_date = frm.fx_old_date.value;
var fx_time = frm.fx_time.value;
var fx_oppo = frm.fx_oppo.value;
var fx_type = frm.fx_type.value;
var fx_venue = frm.fx_venue.value;
var fx_t_score = frm.fx_t_score.value;
var fx_o_score = frm.fx_o_score.value;
var fx_comments = frm.fx_comments.value;
var fx_status = frm.fx_status.value;
var fx_report = frm.fx_report.value;
var cont = true;
if (cmd == "update") {
	if (fx_old_team != fx_team) cont = confirm("Team has changed - you sure you want to update this entry?");
	if (fx_old_date != fx_date && cont) cont = confirm("Date has changed - you sure you want to update this entry?");
}

if (cont) {
	
	if (fx_team !="" && fx_date !="" && fx_type !="" && fx_status !="" ) {
		cursor_wait();
		var myAjax1 = new Ajax.Request(
			'processcmd.php?action=fxcmd&fx_cmd='+cmd+'&fx_id='+fx_id+'&fx_team='+fx_team+'&fx_date='+fx_date+'&fx_time='+fx_time+'&season_id='+season_id+'&fx_oppo='+fx_oppo+'&fx_venue='+fx_venue+'&fx_type='+fx_type+'&fx_t_score='+fx_t_score+'&fx_o_score='+fx_o_score+'&fx_status='+fx_status+'&fx_comments='+fx_comments+'&fx_report='+fx_report, 
			{
				method: 'get', 
				parameters: '', 
				onComplete: function(response) {
					alert(response.responseText);
					cursor_clear();
				}
			});
	}
}
}

function merch_order(frm) {
	// Get all items selected...
	// Check if we have amy quantities > 0 if so then we need to get size 
	// Once got size, we need to re-display the item(s) ordered on screen...  plus get person's details... we should also save the order details in a table for later reference ... maybe...
	// 
	var items = frm.items.value;
	var element_name;
	var element;
	var item_detail;
	var item_name;
	for ( i = 1; i<=items; i++) {
		element_name='quantity'+i;
		item_name = 'id'+i;
		//alert(elementId);
		elements = document.getElementsByName(element_name);
		item_detail = document.getElementsByName(item_name);
		alert(element_name+": "+elements[0].options[elements[0].selectedIndex].value+" "+item_detail.value); // This is the quantity ordered
	}
}


function playerCMD(cmd,frm) {
	var parmlist = "";
	switch (cmd) {
		case "delete":
			if (frm.player_id.value == "") {
				alert("Select a player first!");
			}
			else {
				var answer = confirm("Delete will only work if player does not belong to any team! So you sure you want to delete this player?");
				if (answer) parmlist = '&player_id='+frm.player_id.value;
			}
			break;
		case "add":
			if (frm.fname.value == "" || frm.lname.value == "") {
				alert("Please specify a first and last name!");
			}
			else parmlist = '&fname='+frm.fname.value+'&lname='+frm.lname.value;
			break;
		case "update":
			if (frm.player_id.value == "") {
				alert("Select a player first!");
			}
			else parmlist = '&player_id='+frm.player_id.value+'&fname='+frm.fname.value+'&lname='+frm.lname.value;
			break;
	}
	//alert(parmlist);
	if (parmlist != "") {
		cursor_wait();
		var myAjax1 = new Ajax.Request(
			'processcmd.php?action=playeraction&cmd='+cmd+parmlist,
			{
				method: 'get', 
				parameters: '', 
				onComplete: function(response) {
					if (response.responseText != "") alert(response.responseText);
					cursor_clear();
					window.location.reload(true);
				}
			});
	}
}

function playerhistory(cmd,p_id) {
	if (cmd == "pt_history") {
		player_id = p_id.options[p_id.selectedIndex].value;
	}
	else {
		player_id = p_id;
	}
	//alert("t:"+team_id+" p:"+player_id);
	processCMD("playerhistory","&player_id="+player_id);
}



function playerteamCMD(cmd,t_id,p_id,season_id) {
	if (cmd == "add" || cmd == "history") {
		team_id = t_id.options[t_id.selectedIndex].value;
		player_id = p_id.options[p_id.selectedIndex].value;
	}
	else {
		team_id = t_id;
		player_id = p_id;
	}
	//alert("t:"+team_id+" p:"+player_id);
	cursor_wait();
	var myAjax1 = new Ajax.Request(
		'processcmd.php?action=playerteamCMD&cmd='+cmd+'&team_id='+team_id+'&player_id='+player_id+'&season_id='+season_id, 
		{
			method: 'get', 
			parameters: '', 
			onComplete: function(response) {
				if (response.responseText != "") alert(response.responseText);
				cursor_clear();
				window.location.reload(true);
			}
		});
}

function momaction(cmd,player_id,fx_id) {

	switch (cmd) {
		case "delete":
			parmlist = '&player_id='+player_id+'&fix_id='+fx_id;
			break;
		case "add":
			player = player_id.options[player_id.selectedIndex].value;
			parmlist = '&player_id='+player+'&fix_id='+fx_id;
			break;
	}
	//alert(parmlist);
	cursor_wait();
	var myAjax1 = new Ajax.Request(
		'processcmd.php?action=momaction&cmd='+cmd+parmlist,
		{
			method: 'get', 
			parameters: '', 
			onComplete: function(response) {
				if (response.responseText != "") alert(response.responseText);
				cursor_clear();
				window.location.reload(true);
			}
		});
}


function scoreraction(cmd,parm1,parm2,fx_id) {

// Validate goals is numeric update cmd...

if (isNaN(parm2) && cmd == "update" ) {
	alert("Goals scored is not valid!");
}
else {
	switch (cmd) {
		case "update":
			parmlist = '&scorer_id='+parm1+'&goals='+parm2;
			break;
		case "delete":
			parmlist = '&scorer_id='+parm1;
			break;
		case "add":
			player = parm1.options[parm1.selectedIndex].value;
			parmlist = '&player_id='+player+'&goals='+parm2+'&idfixtures='+fx_id;
			break;
		
	}
	//alert(parmlist);
	cursor_wait();
	var myAjax1 = new Ajax.Request(
		'processcmd.php?action=scoreraction&cmd='+cmd+parmlist,
		{
			method: 'get', 
			parameters: '', 
			onComplete: function(response) {
				if (response.responseText != "") alert(response.responseText);
				cursor_clear();
				window.location.reload(true);
			}
		});
	}
}

function setplayer(frm) {

var player_details = frm.player.options[frm.player.selectedIndex].value.split("|",3);
var p_id = player_details[0];
var f_name = player_details[1];
var l_name = player_details[2];

frm.player_id.value = p_id;
frm.fname.value = f_name;
frm.lname.value = l_name;

}

function setteam(frm) {
	// Called when the team selection in the teamadmin team list changes...
	var t_id = frm.team_id.options[frm.team_id.selectedIndex].value;
	var idseason  = frm.season_id.value;
	// Now call teamadmin with the team_id set....
	processCMD('teamadmin','&season_id='+idseason+'&team_id='+t_id);
}

function submitSetPasswordForm(frm) {
  var myAjax = new Ajax.Request(
		'processcmd.php?action=submitSetPassword&password_new='+frm.password_new.value+'&password_new2='+frm.password_new2.value,
		{
			method: 'get', 
			parameters: '', 
			onComplete: function(response) {
				alert(response.responseText);
			}
		});	
}

function sponsorteamCMD(cmd,t_id,s_id,season_id) {
	if (cmd == "add") {
		team_id = t_id.options[t_id.selectedIndex].value;
		sponsor_id = s_id.options[s_id.selectedIndex].value;
	}
	else {
		team_id = t_id;
		sponsor_id = s_id;
	}
	//alert("t:"+team_id+" p:"+player_id);
	cursor_wait();
	var myAjax1 = new Ajax.Request(
		'processcmd.php?action=sponsorteamCMD&cmd='+cmd+'&team_id='+team_id+'&sponsor_id='+sponsor_id+'&season_id='+season_id, 
		{
			method: 'get', 
			parameters: '', 
			onComplete: function(response) {
				if (response.responseText != "") alert(response.responseText);
				cursor_clear();
				window.location.reload(true);
			}
		});
}


function submitAdminLogin(frm){
	var myAjax = new Ajax.Request(
		'processcmd.php?action=submitAdminLogin&password='+frm.password.value+'&PHPSESSID='+frm.PHPSESSID.value,
		{
			method: 'get', 
			parameters: '', 
			onComplete: function(response) {
				if (trim(response.responseText) != ""  ) {
					alert(response.responseText);
				} 
				else {
					pausecomp(1000);
					window.location.reload(true);
				}
			}
		});
}

function teamCMD(cmd,frm) {
	var parmlist = "";
	switch (cmd) {
		case "delete":
			if (frm.idteams.value == "") {
				alert("Select a team first!");
			}
			else {
				var answer = confirm("Delete will only work if team does not have any other links to players/sponsors/etc! So you sure you want to delete this team?");
				if (answer) parmlist = '&team_id='+frm.idteams.value;
			}
			break;
		case "add":
			if (frm.name.value == "" || frm.sname.value == "" || frm.rname.value == "" || frm.league.value == "") {
				alert("Please specify team name, league, short name and report name!");
			}
			else parmlist = '&name="'+frm.name.value+'"&league="'+frm.league.value+'"&sname='+frm.sname.value+'&rname='+frm.rname.value+'&mgr="'+frm.mgr.value+'"&rlink='+frm.rlink.value+'&llink='+frm.llink.value;
			break;
		case "update":
			if (frm.idteams.value == "") {
				alert("Select a team first!");
			}
			else parmlist = '&idteams='+frm.idteams.value+'&name="'+frm.name.value+'"&league="'+frm.league.value+'"&sname='+frm.sname.value+'&rname='+frm.rname.value+'&mgr="'+frm.mgr.value+'"&rlink='+frm.rlink.value+'&llink='+frm.llink.value;
			break;
	}
	alert(parmlist);
	if (parmlist != "") {
		cursor_wait();
		var myAjax1 = new Ajax.Request(
			'processcmd.php?action=teamaction&cmd='+cmd+parmlist,
			{
				method: 'get', 
				parameters: '', 
				onComplete: function(response) {
					if (response.responseText != "") alert(response.responseText);
					cursor_clear();
					window.location.reload(true);
				}
			});
	}
}


function pausecomp(millis) {
	var date = new Date();
	var curDate = null;

	do { curDate = new Date(); }
	while(curDate-date < millis);
}

