var systemWorking = false;
var t;
var tbl = 'rwelive';
var interval = 60000;
var show = 'all';
var e = new Array();
e['W'] = '<img src="img_layout/14x14/wechsel.png" alt="Spielerwechsel" />';
e['G'] = '<img src="img_layout/14x14/gelbekarte.png" alt="Gelbe Karte" />';
e['GR'] = '<img src="img_layout/14x14/gelbrotekarte.png" alt="Gelbe-Rote Karte" />';
e['R'] = '<img src="img_layout/14x14/rotekarte.png" alt="Rote Karte" />';
e['ET'] = '<img src="img_layout/14x14/eigentor.png" alt="Eigentor" />';
e['T'] = '<img src="img_layout/14x14/tor.png" alt="Tor" />';
e['SH1'] = '<img src="img_layout/14x14/clock.png" alt="" />';
e['EH1'] = '<img src="img_layout/14x14/clock.png" alt="" />';
e['SH2'] = '<img src="img_layout/14x14/clock.png" alt="" />';
e['EH2'] = '<img src="img_layout/14x14/clock.png" alt="" />';
e['SV1'] = '<img src="img_layout/14x14/clock.png" alt="" />';
e['EV1'] = '<img src="img_layout/14x14/clock.png" alt="" />';
e['SV2'] = '<img src="img_layout/14x14/clock.png" alt="" />';
e['EV2'] = '<img src="img_layout/14x14/clock.png" alt="" />';
e[''] = '';
var phasenend = new Array();
phasenend['SH1'] = 45;
phasenend['SH2'] = 90;
phasenend['SV1'] = 105;
phasenend['SV2'] = 120;
$(document).ajaxStart(function(){
	if (systemWorking) {
		var objBox = $('#' + systemWorking);
		var posLeft = (objBox.width() / 2) - 40;
		var posTop  = (objBox.height() / 2);
		objBox.append('<div id="systemWorking"><img src="img_layout/ajax-loader.gif" alt="" /></div>');
		$('#systemWorking').css({'left' : posLeft + 'px'}).css({'top' : posTop + 'px'}).show();
	}
}).ajaxStop(function(){
	systemWorking = false;
	if ($('#systemWorking')) {
		$('#systemWorking').remove();
	}
})
function refresh(){
	systemWorking = 'ticker-liste';
	var wo;
	tbl == 'archiv' ? wo = '&s='+s : wo = '';
	ie = new Date();
	$.ajax({
		type: "GET",
		data: 'tbl='+tbl+'&ie='+ie+wo,
		url: 'json/spiel.json',
		success: function(response){
			obj = eval('('+response+')');
			s = obj.spielID;
			setAnzeige();
			setSpielinformation();
			getTicker();
			getAufstellung();
			clearTimeout(t);
			timer(interval);
		}
	});
}
function getTicker(){
	$.ajax({url: 'json/ticker.json',type: "GET",data: 's='+s+'&tbl='+tbl+'&show='+show+'&ie='+ie,success: function(response){setTicker(response);}});
}
function getAufstellung(){
	$.ajax({url: 'json/aufstellung.json',type: "GET",data: 's='+s+'&tbl='+tbl+'&ie='+ie,success: function(response){setAufstellung(response);}});
}
function setTicker(str){
	var html = '';
	if(str != 'null')
	{
		var minute;
		var restzeit;
		var objT = eval('('+str+')');
		if(objT){
			html=html+'<table cellspacing="0">';
			for(var i=0;i<objT.length;i++){
				if(phasenend[objT[i].spielphase] === undefined){
					minute = objT[i].tickerminute;
					restzeit	= '&nbsp;';
				}else{
					restzeit = objT[i].tickerminute - phasenend[objT[i].spielphase];
					if(restzeit > 0)
					{
						minute		= phasenend[objT[i].spielphase];
						restzeit	= '+'+restzeit;
					}else{
						minute		= objT[i].tickerminute;
						restzeit	= '&nbsp;';
					}
				}

				html=html+'<tr>';
				html=html+'	<td class="minute">'+minute+'.</td>';
				html=html+'	<td class="restzeit">'+restzeit+'</td>';
				e[objT[i].tickerereignis] === undefined ? evalue = '&nbsp;' : evalue = e[objT[i].tickerereignis]
				html=html+'	<td class="ereignis">'+evalue+'</td>';
				html=html+'	<td class="message">'+objT[i].tickermessage.replace(/\n/g,'<br />')+'</td>';
				html=html+'</tr>';
			}
			html=html+'</table>';
		}
	}else{
		html='&nbsp;';
	}
	$('#ticker-liste').html(html);
	if(html != '') highlight('div#ticker-liste tr');
}
function setAnzeige(){
	var html = '';
	if(obj){
		if(obj.spieleort == '1'){
			h	= obj.spielemannschaft1;
			ht	= obj.spieletor1;
			hl	= obj.spielelogo1;
			g	= obj.spielemannschaft2;
			gt	= obj.spieletor2;
			gl	= obj.spielelogo2;
		}else{
			h	= obj.spielemannschaft2;
			ht	= obj.spieletor2;
			hl	= obj.spielelogo2;
			g	= obj.spielemannschaft1;
			gt	= obj.spieletor1;
			gl	= obj.spielelogo1;
		}
		hl == '' ? hl = '' : hl = '<img src="'+hl+'" alt="" />';
		gl == '' ? gl = '' : gl = '<img src="'+gl+'" alt="" />';
		html=html+'<table cellspacing="0">';
		html=html+'	<tr>';
		html=html+'		<td class="logo">'+hl+'</td>';
		html=html+'		<td colspan="2" class="titel">'+h+'</td>';
		html=html+'		<td class="tor">'+ht+'</td>';
		html=html+'		<td class="middle">:</td>';
		html=html+'		<td class="tor">'+gt+'</td>';
		html=html+'		<td colspan="2" class="titel">'+g+'</td>';
		html=html+'		<td class="logo">'+gl+'</td>';
		html=html+'	</tr>';
		html=html+'</table>';
	}
	$('#spiel-anzeige').html(html);
}
function setSpielinformation(){
	var html = '';
	if(obj){
		var z 		= mysqlTimeStampToDate(obj.spieledatum);
		var datum	= zero(z.getDate())+'.'+zero(z.getMonth()+1)+'.'+z.getFullYear();
		var uhrzeit	= zero(z.getHours())+':'+zero(z.getMinutes())+' Uhr';

		html=html+'<div class="toogle" id="spieleinfo1">';
		html=html+'	<table cellspacing="0">';
		html=html+'		<tr>';
		html=html+'			<td style="width:30%"><b>Liga:</b></td>';
		html=html+'			<td style="width:70%">'+obj.spieleliga+'</td>';
		html=html+'		</tr>';
		html=html+'		<tr>';
		html=html+'			<td><b>Datum:</b></td>';
		html=html+'			<td>'+datum+'</td>';
		html=html+'		</tr>';
		html=html+'		<tr>';
		html=html+'			<td><b>Schiedsrichter:</b></td>';
		html=html+'			<td>'+obj.spieleschiedsrichter+'</td>';
		html=html+'		</tr>';
		html=html+'		<tr>';
		html=html+'			<td><b>Wetter:</b></td>';
		html=html+'			<td>'+obj.spielewetter+'</td>';
		html=html+'		</tr>';
		html=html+'	</table>';
		html=html+'</div>';
		html=html+'<div class="toogle" id="spieleinfo2">';
		html=html+'	<table cellspacing="0">';
		html=html+'		<tr>';
		html=html+'			<td style="width:30%"><b>Spieltag:</b></td>';
		html=html+'			<td style="width:70%">'+obj.spielespieltag+'</td>';
		html=html+'		</tr>';
		html=html+'		<tr>';
		html=html+'			<td><b>Anstoss:</b></td>';
		html=html+'			<td>'+uhrzeit+'</td>';
		html=html+'		</tr>';
		html=html+'		<tr>';
		html=html+'			<td><b>Stadion:</b></td>';
		html=html+'			<td>'+obj.spielestadion+'</td>';
		html=html+'		</tr>';
		html=html+'		<tr>';
		html=html+'			<td><b>Zuschauer:</b></td>';
		html=html+'			<td>'+obj.spielezuschauer+'</td>';
		html=html+'		</tr>';
		html=html+'	</table>';
		html=html+'</div>';
		html=html+'<br style="clear:both;" />'
	}
	$('#spielinformation').html(html);
	if(html != '') highlight('#spielinformation tr');
}
function setAufstellung(str){
	var objA = eval('('+str+')');
	if(objA){
		if(obj.spieleort == '1'){
			var HM = '1';
			var GM = '2';
		}else{
			var HM = '2';
			var GM = '1';
		}
		var html = '';
		html=html+'<div id="aufstellung1">';
		html=html + aufstellung(objA, HM, 1);
		html=html+'</div>';
		html=html+'<div id="aufstellung2">';
		html=html + aufstellung(objA, GM, 2);
		html=html+'</div>';
		html=html+'<br style="clear:both;" />'
		$('#aufstellung').html(html);
		highlight('#aufstellung div.toogle tr');
	}
}
function aufstellung(objA, m, id){
	var c = true;
	var f;
	var w, t, k, spielername;
	var et = '';
	var html = '';
	html=html+'	<h3 onclick="rweAccordion(\'aufstellung'+id+'\')">'+eval('obj.spielemannschaft'+m)+'</h3>';
	html=html+'	<div class="toogle">';
	html=html+'		<table cellspacing="0">';
	for(var i=0;i<objA.length;i++){
		t	= '';
		et	= '';
		if(objA[i].mannschaft == m){
			if(objA[i].einsatz == 'r' && c == true){
				html=html+'		</table>';
				html=html+'	</div>';
				html=html+'	<h3 onclick="rweAccordion(\'aufstellung'+id+'\')">Reserve</h3>';
				html=html+'	<div class="toogle" style="display:none;">';
				html=html+'		<table cellspacing="0">';
				c = false;
			}
			html=html+'		<tr>';
			html=html+'			<td class="nr">'+objA[i].spielernummer+'</td>';
			html=html+'			<td class="pos">'+objA[i].spielerposition+'</td>';

			objA[i].wechsel == '1' ? w = '<img src="img_layout/14x14/wechsel.png" alt="" />' : w = '';
			var tor = parseInt(objA[i].tor);
			if(tor > 0){
				for(at=1;at<=tor;at++) t = t + '<img src="img_layout/14x14/tor.png" alt="" />';
			}else{
				t = '';
			}
			var eigentor = parseInt(objA[i].eigentor);
			if(eigentor > 0){
				for(at=1;at<=eigentor;at++) et = et + '<img src="img_layout/14x14/eigentor.png" alt="" />';
			}else{
				et = '';
			}
			objA[i].captain == '1' ? captain = '<img title="Mannschaftskapitän" src="img_layout/14x14/star.png" alt="" />' : captain = '';
			e[objA[i].karte] === undefined ? k = '' : k = e[objA[i].karte];
			objA[i].spielername == '' ? spielername = '&nbsp;' : spielername = objA[i].spielername + captain + w + t + et + k;
			html=html+'			<td class="name">'+spielername+'</td>';
			html=html+'		</tr>';
		}
	}
	html=html+'		</table>';
	html=html+'	</div>';
	return html;
}
function mysqlTimeStampToDate(timestamp) {
	//function parses mysql datetime string and returns javascript Date object
	//input has to be in this format: 2007-06-05 15:26:02
	var regex=/^([0-9]{2,4})-([0-1][0-9])-([0-3][0-9]) (?:([0-2][0-9]):([0-5][0-9]):([0-5][0-9]))?$/;
	var parts=timestamp.replace(regex,"$1 $2 $3 $4 $5 $6").split(' ');
	return new Date(parts[0],parts[1]-1,parts[2],parts[3],parts[4],parts[5]);
}
function zero(v){
	v < 10 ? v = '0'+v : v;
	return v;
}
function init(){
	refresh();
}