var currentCity = "";
var cityList = {};
var cityListCount = {};
var struct;
function getStructure(root) {
	var d = [];
	for (var n = 0; n < root.feed.entry.length; n++) {
		var row = root.feed.entry[n].content.$t.split(',');
		var row_d = [];
		for (var cell = 0; cell < row.length; cell++) {
			var pos = row[cell].indexOf(':');
			row_d[row[cell].slice(0, pos).replace(' ', '')] = row[cell].slice(pos + 1).replace(' ', '');
		};
		d[n] = row_d;
	};
	return d
};
function listSeminars(data) {
	struct = getStructure(data);
	var cityListColHtml = new Array(4);
	for (var n=0; n<5; n++) cityListColHtml[n] = "";
	cityCount = 1;
	for (seminar in struct) {
		cityList[struct[seminar]['state']] = struct[seminar]['state'];
		if (!cityListCount[struct[seminar]['state']]) cityListCount[struct[seminar]['state']] = 1; else cityListCount[struct[seminar]['state']] += 1;
	};
	for (city in cityList) {
		cityListColHtml[cityCount % 4] += '<li id="city_' + cityList[city].replace(/\ /g, '_') + '"><a href="javascript:showCity(\'' + cityList[city] + '\')">' + cityList[city] + '</a>&nbsp;(' + cityListCount[city] + ')&nbsp;</li>'
		cityCount += 1;
	};
	var allHTML = '<li id="city_all"><a href="javascript:showCity(\'all\')">Alle</a>&nbsp;</li>';
	cityListHTML = '<table><tr><td class="city"><ul>' + allHTML + cityListColHtml[0] + '</ul></td><td class="city"><ul>' + cityListColHtml[1] + '</ul></td><td class="city"><ul>' + cityListColHtml[2] + '</ul></td><td class="city"><ul>' + cityListColHtml[3] + '</ul></td></tr></table>';
	document.getElementById("cities").innerHTML = cityListHTML;
	currentCity = "all";
	showCity(currentCity);
};
function showCity(cityName) {
	var seminarListHtml = '';
	var even = false;
	var countHTML = (currentCity != "all") ? '(' + cityListCount[currentCity] + ')' : '';
	var cityDisplayName = (currentCity != "all") ? currentCity : 'Alle';
	document.getElementById("city_" + currentCity.replace(/\ /g, '_')).innerHTML = '<a href="javascript:showCity(\'' + currentCity + '\')">' + cityDisplayName + '</a>&nbsp;' + countHTML + '&nbsp;';
	currentCity = cityName;
	countHTML = (currentCity != "all") ? '(' + cityListCount[currentCity] + ')' : '';
	cityDisplayName = (currentCity != "all") ? currentCity : 'Alle';
	document.getElementById("city_" + currentCity.replace(/\ /g, '_')).innerHTML = '<strong>' + cityDisplayName + '</strong>&nbsp;' + countHTML + '&nbsp;';
	for (seminar in struct) {
		if (struct[seminar]['state'] == currentCity || cityName == "all") {
		var registration = '<td>Zur Zeit keine Anmeldung möglich</td>';
		if (struct[seminar]['url'] != undefined) {
			registration = '<td><a href="' + struct[seminar]['url'] + '" onclick="urchinTracker(\'/outgoing/registration/\');">Anmelden</a></td>';
		};
		if (even)
		seminarListHtml += '<tr class="even"><td>' + struct[seminar]['city'] + '</td><td>' + struct[seminar]['date'] + '</td><td>' + struct[seminar]['event'] + '</td>' + registration + '</tr>';
		else
		seminarListHtml += '<tr><td>' + struct[seminar]['city'] + '</td><td>' + struct[seminar]['date'] + '</td><td>' + struct[seminar]['event'] + '</td>' + registration + '</tr>';
		even = !even;
		};
	};
	var listInfo = (currentCity != "all") ? 'Seminare in:' : 'Seminare:';
	document.getElementById("city-by").innerHTML = '<h4>' + listInfo + '&nbsp;<strong>' + cityDisplayName + '</strong></h4><table><tr><th>Stadt</th><th>Datum</th><th>Veranstaltung</th><th>Link</th></tr>' + seminarListHtml + '</table>';
};
