
/*
 * param:
 *		type : type of display i.e. "about"
 *		team : team "hold" id
 *		insertId : where to put the data
*/


function queryTeam( param )
{
	var queryString = "http://spreadsheets.google.com/tq?key=0As8yTIMYNMU0dFZvX3IxN3c4cmRpd3VkcE5lR2R0S1E&pub=1";
	var query = new google.visualization.Query( queryString );
	query.setQuery( "SELECT *" );

	query.send( function( response ) {
		if (response.isError()) {
			alert('Error in query: ' + response.getMessage() + ' ' + response.getDetailedMessage());
			return;
		}

		var data = response.getDataTable();

		switch ( param.type )
		{
			case "about": displayAbout( data, param ); break;
		}
	});
}

function convertToBr(dataStr) {
	return dataStr.replace(/(\r\n|[\r\n])/g, "<br />");
}

function pad2(number) {

	 return (number < 10 ? '0' : '') + number
}

function getCol( data, text )
{
	for ( var i=0; i<data.getNumberOfColumns(); i++ )
	{
		if ( data.getColumnLabel( i )==text )
			return i;
	}

	return -1;
}

function getValue( data, row, colName )
{
	var iCol = getCol( data, colName );
	if ( iCol==null || iCol==-1 )
		return "";

	return data.getValue( row, iCol );
}

function displayAbout( data, param )
{
	// create an array of row indices to the team id we are querying
	var arData = new Array();
	var count = 0;
	for ( var row=0; row<data.getNumberOfRows(); row++ )
	{
		var team	= getValue( data, row, "Hold" );

		if ( team==param.team )
		{
			arData[count] = row;
			count++;
		}
	}

	// process collect data for team here
	var lastDay = "";
	var note = "";
	var feeHalf	= "";
	var feeWhole = "";
	var contactName = "";
	var contactEmail = "";
	var contactTelephone = "";
	for ( var i=0; i<arData.length; i++ )
	{
		row = arData[i];

		var department			= getValue( data, row, "Afdeling" );
		var teamId				= getValue( data, row, "Hold" );
		var title				= getValue( data, row, "Title" );
		var subTitle			= getValue( data, row, "Undertitle" );
		var location			= getValue( data, row, "Sted" );
		var locationSubText		= getValue( data, row, "Sted Undertekst" );
		var day					= getValue( data, row, "Dag" );
		var startTime			= getValue( data, row, "Start Tid" );
		var endTime				= getValue( data, row, "Slut Tid" );
		var startDate			= getValue( data, row, "Start Dato" );
		var endDate				= getValue( data, row, "Slut Dato" );
		var instructor			= getValue( data, row, "Instruktør" );
		var trainer				= getValue( data, row, "Træner" );
		var helper				= getValue( data, row, "Hjælpetræner" );
		var description			= getValue( data, row, "Beskrivelse" );
		var girls				= getValue( data, row, "Piger" );
		var boys				= getValue( data, row, "Drenge" );
		var max					= getValue( data, row, "maks. deltager" );

		var time = "ikke fastsat endnu...";
		if ( startTime!=null )
		{
			time = " kl. "+pad2(startTime[0])+"."+pad2(startTime[1])+" - "+pad2(endTime[0])+"."+pad2(endTime[1]);
		}

		// first instance of team
		if ( i==0 )
		{
			var frontNote = getValue( data, row, "Front Note" );
			if ( frontNote!="" )
				$(param.insertId).append( "<br/><div style='padding:10px; border: solid black 1px;background-color:#ffffcc;color:black'>"+convertToBr(frontNote)+"<div>" );

				console.log( frontNote );

			if ( girls!="" && boys!="" )
				title += " (Piger & Drenge)";
			else if ( girls!="" )
				title += " (Piger)";
			else if ( boys!="" )
				title += " (Drenge)";

			var dateSpan = "";
			if ( startDate!=null && endDate!=null )
			{
				var sd = startDate.getDate()+"/"+(startDate.getMonth()+1)+"-"+startDate.getFullYear();
				var ed = endDate.getDate()+"/"+(endDate.getMonth()+1)+"-"+endDate.getFullYear();
				dateSpan = " ("+sd+" - "+ed+")";
			}

			$(param.insertId).append( "<h2  class='about_h2'>"+department+"</h2>" );
			$(param.insertId).append( "<h3 class='about_h3' style='margin-bottom: 2px;'>"+title+"</h3>" );
			$(param.insertId).append( "<i style='font-size:12px;'>"+subTitle+"</i>" );
			$(param.insertId).append( "<hr/>" );

			if ( description!="" )
			{
				$(param.insertId).append( "<b>Beskrivelse</b><br/>" );
				$(param.insertId).append( "<p>"+convertToBr(description)+"</p>" );
			}

			$(param.insertId).append( "<b>Tr&#230;ning "+dateSpan+"</b><br/><br/>" );

			contactName			= getValue( data, row, "Kontakt" );
			contactEmail		= getValue( data, row, "Kontakt Email" );
			contactTelephone	= getValue( data, row, "Kontakt Telefon" );
			feeHalf				= getValue( data, row, "Fee Half Year" );
			feeWhole			= getValue( data, row, "Fee Full Year" );
			note				= getValue( data, row, "Note" );
		}

		if ( lastDay!=day )
		{
			if ( lastDay!="" )
				$(param.insertId).append( "<br/>" );

			$(param.insertId).append( day+"<br/>" );
			lastDay = day;
		}

		$(param.insertId).append( "&nbsp;&nbsp;&nbsp;&nbsp;"+time+" "+location );

		if ( locationSubText!="" )
			$(param.insertId).append( " ("+locationSubText+")"+"<br/>" );
		else
			$(param.insertId).append( "<br/>" );

		if ( i==arData.length-1 )
		{
			$(param.insertId).append( "<br/>" );

			if ( note!="" && note!=null )
				$(param.insertId).append( note+"<br/><br/>" );

			if ( feeHalf!="" && feeHalf!=null )
				$(param.insertId).append( "Kontingent "+feeHalf+",- for halv s&#230;son<br/><br/>" );
			else if (feeWhole!="" && feeWhole!=null )
				$(param.insertId).append( "Kontingent "+feeWhole+",- for hele s&#230;sonen<br/><br/>" );

			$(param.insertId).append( "<b>Kontakt</b><br/><br/>" );
			$(param.insertId).append( contactName+"<br/>" );

			if ( contactEmail!="" )
				$(param.insertId).append( "email: <a href='"+contactEmail+"'>"+contactEmail+"</a><br/>" );

			if ( contactTelephone!="" && contactTelephone!=null )
			{
				$(param.insertId).append( "<table><tr><td style='color:white;vertical-align:top'>tlf:</td><td style='color:white;'> "+convertToBr(contactTelephone)+"</td></tr></table><br/>" );
			}
		}
	}

	$(param.insertId).show();
}



