/*
 * vyvolani AJAXU pro reload tabulky her pri pretrideni
 */
Event.onDOMReady(function() {
	var mygames = $('score-games');
	if(mygames == undefined) return;
	var xid = null;
	var xtype = null;
	if(mygames.hasClassName('score-games-resort')) {
		xtype = 'resort';
		xid = mygames.readAttribute('resort_id');
	} else if(mygames.hasClassName('score-games-user')) {
		xtype = 'user';
		xid = mygames.readAttribute('user_id');
	}
	if(xid == null || xtype == null) return;
	var sorts = $$('a.sort-item');
	sorts.each(function(sort_elem) {
		Event.observe(sort_elem, 'click', function(event) {
			var sort_th = sort_elem.up('th');
			var last_sort_th = sort_elem.up('tr').down('th.active');
			if(sort_th != undefined && last_sort_th != undefined && sort_th != last_sort_th) {
				last_sort_th.removeClassName('active');
				sort_th.addClassName('active');
				// trideni pri zmene sloupce je primarne vzestupny
				sort_elem.removeClassName('sort-desc');
				sort_elem.addClassName('sort-asc');
			}
			sortMyGames(sort_elem, xtype, xid);
			// pro opakovae trideni stejneho sloupce prehodim poradi
			if(sort_elem.hasClassName('sort-desc')) {
				sort_elem.removeClassName('sort-desc');
				sort_elem.addClassName('sort-asc');
			} else {
				sort_elem.addClassName('sort-desc');
				sort_elem.removeClassName('sort-asc');
			}
			Event.stop(event);
		});
	});
});

function sortMyGames(sort_elem, xtype, xid) {
	var tbody = sort_elem.up('table').down('tbody');
	var dir = sort_elem.hasClassName('sort-desc') ? 'desc' : 'asc';
	var order = 'date';
	if(sort_elem.hasClassName('sort-date'))       order = 'date';
	if(sort_elem.hasClassName('sort-course'))     order = 'course';
	if(sort_elem.hasClassName('sort-name'))       order = 'name';
	if(sort_elem.hasClassName('sort-hcp'))        order = 'accurate_hcp';
	if(sort_elem.hasClassName('sort-new-hcp'))    order = 'new_hcp';
	if(sort_elem.hasClassName('sort-result'))     order = 'result';
	if(sort_elem.hasClassName('sort-sf'))         order = 'stableford';
	if(sort_elem.hasClassName('sort-holes'))      order = 'holes';
	if(sort_elem.hasClassName('sort-tournament')) order = 'tournament';
	if(sort_elem.hasClassName('sort-comment'))    order = 'has_comment';
	if(sort_elem.hasClassName('sort-public'))     order = 'public';
	tbody.up('table').down('img.loading').show();
	tbody.update();
	//alert('volam xajax_sortMyGames(' + tbody.id + ', ' + xtype + ', ' + xid + ', ' + order + ', ' + dir + ')');
	if(xtype == 'resort') {
		// trideni her ruznych hracu na resortu
		xajax_sortResortGames(tbody.id, xid, order, dir);
	} else {
		// trideni her jednoho hrace na ruznych hristich
		var year = $F('games-year');
		xajax_sortUserGames(tbody.id, xid, order, dir, year);
	}
	return;
}

function addMyGameRow(tbody_id, trclass, items) {
	//alert('addMyGameRow(' + tbody_id + ', ' + trclass + ', ' + items + '), itemslen: ' + items.length);
	tbody = $(tbody_id);
	var tr = document.createElement('tr');
	Element.extend(tr).addClassName(trclass);
	for(i = 0; i < items.length; i++) {
		//alert(i + ': ' + items[i][0] + ', ' + items[i][1] + ', ' + items[i][2]);
		var td = document.createElement('td');
		Element.extend(td).addClassName(items[i][2]);
		if(items[i][1] != '') {
			td.innerHTML = '<a href="' + items[i][1] + '">' + items[i][0] + '</a>';
		} else {
			td.innerHTML = items[i][0];
		}
		tr.appendChild(td);
	}
	tbody.appendChild(tr);
	return;
}

function sortMyGamesDone(tbody_id) {
	//alert('Done');
	$(tbody_id).up('table').down('img.loading').hide();
	$(tbody_id).show();
}
