var panel;
var resize;
var propozycje = new Array();
var propozycjeL = '';
var myDataSourceId2;

function usunZaproszenie(e) {
	var target = YAHOO.util.Event.getTarget(e);
	var data = target.id.split('_');
	var id = 'z_' + data[1];
	YAHOO.util.Dom.setStyle(id, 'display', 'none');
	var el = YAHOO.util.Dom.get(id);
	el.innerHTML = '';
	var data = 'usun=' + data[1];
	var callback = {};
	var request = YAHOO.util.Connect.asyncRequest("POST",
			'/ajax/W2OZnajomi?akcja=zapAnuluj', callback, data);
}

function akceptujZaproszenie(e) {
	var target = YAHOO.util.Event.getTarget(e);
	var data = target.id.split('_');
	var id = 'z_' + data[1];
	YAHOO.util.Dom.setStyle(id, 'display', 'none');
	var el = YAHOO.util.Dom.get(id);
	el.innerHTML = '';
	var data = 'dodaj=' + data[1];
	var callback = {};
	var request = YAHOO.util.Connect.asyncRequest("POST",
			'/ajax/W2OZnajomi?akcja=zapOK', callback, data);

}

function getPropozycje() {
	if (YAHOO.util.Dom.get("propozycje")) {
		myDataSourceId2 = new YAHOO.util.DataSource(
				"/ajax/W2OZnajomi?akcja=pobierz");
		myDataSourceId2.responseType = YAHOO.util.DataSource.TYPE_TEXT;
		myDataSourceId2.connMethodPost = true;
		myDataSourceId2.responseSchema = {
			recordDelim : "\n",
			fieldDelim : "|",
			fields : [ "uid", "img", "name", "full" ]
		};

		myDataSourceId2.sendRequest("lista=" + propozycjeL + "&ilosc=30&"
				+ new String(Math.random()).substring(2, 11), {
			success : showPropozycje
		});
	}
}

function usunElement(e) {
	var target = YAHOO.util.Event.getTarget(e);
	var data = target.id.split('_');
	var id = 'c_' + data[1];
	var el = YAHOO.util.Dom.get(id);
	el.innerHTML = '';
	myDataSourceId2.sendRequest("usun=" + data[2] + "&lista=" + propozycjeL
			+ "&ilosc=1&" + new String(Math.random()).substring(2, 11), {
		success : changePropozycje,
		argument : {
			id : data[1]
		}
	});
}

function usunElement(e) {
	var target = YAHOO.util.Event.getTarget(e);
	var data = target.id.split('_');
	var id = 'c_' + data[1];
	var el = YAHOO.util.Dom.get(id);
	el.innerHTML = '';
	myDataSourceId2.sendRequest("usun=" + data[2] + "&lista=" + propozycjeL
			+ "&ilosc=1&" + new String(Math.random()).substring(2, 11), {
		success : changePropozycje,
		argument : {
			id : data[1]
		}
	});
}

function dodajZnajomego(e) {
	var data = this.ID.split('_');
	var id = 'c_' + data[1];
	var el = YAHOO.util.Dom.get(id);
	el.innerHTML = '';
	myDataSourceId2.sendRequest("dodaj=" + data[2] + "&lista=" + propozycjeL
			+ "&ilosc=1&" + new String(Math.random()).substring(2, 11), {
		success : changePropozycje,
		argument : {
			id : data[1]
		}
	});
	this.hide();
}

function panelCancel() {
	this.cancel();
}

function wyslijZaproszenie(e) {
	var target = YAHOO.util.Event.getTarget(e);

	panel = new YAHOO.widget.Dialog('demo', {
		draggable : false,
		close : false,
		autofillheight : "body", // default value, specified here to
		// highlight its use in the example
		underlay : 'none',
		width : '400px',
		height : '200px',
		fixedcenter : true,
		buttons : [ {
			text : "Wylij zaproszenie",
			handler : dodajZnajomego,
			isDefault : true
		}, {
			text : "Anuluj",
			handler : panelCancel
		} ]
	});
	panel.ID = target.id;
	panel.setHeader('Czy dodać do znajomych?');
	var data = target.id.split('_');
	var i = data[1];
	var sMarkup = '';
	if (propozycje[i].img) {
		sMarkup += '<img src="' + propozycje[i].img + '">';
	}
	sMarkup += '<a href="http://' + propozycje[i].name + '.w2o.pl">'
			+ propozycje[i].name + '</a>';
	panel
			.setBody('<div id="layout"><div class="oknoZnajomi"><div>Do tej osoby zostanie wysłane zaproszenie, gdy je potwierdzi dołączy ona do twojej listy znajomych.</div>' + sMarkup + '</div></div>');
	panel.render('gl');
}

function changePropozycje(oRequest, oResponse, oPayload) {
	var els = oResponse.results;
	if (els.length) {
		var id = 'c_' + oPayload.id;
		var el = YAHOO.util.Dom.get(id);
		var i = 0;
		var sMarkup = '<div id="x_' + oPayload.id + '_' + els[i].uid
				+ '" class="usunCeg">&nbsp;</div>';
		if (els[i].img) {
			sMarkup += '<img src="' + els[i].img + '">';
		}
		sMarkup += '<a href="http://' + els[i].name + '.w2o.pl">' + els[i].name
				+ '</a><div id="d_' + oPayload.id + '_' + els[i].uid
				+ '" class="dodajCeg">dodaj do znajomych</div>';
		propozycjeL += ',' + els[i].uid;
		propozycje[i] = els[i];
		el.innerHTML = sMarkup;
		var items = YAHOO.util.Dom.getElementsByClassName('usunCeg');
		YAHOO.util.Event.removeListener(items, 'click', usunElement);
		YAHOO.util.Event.addListener(items, 'click', usunElement);
		var items = YAHOO.util.Dom.getElementsByClassName('dodajCeg');
		YAHOO.util.Event.removeListener(items, 'click', wyslijZaproszenie);
		YAHOO.util.Event.addListener(items, 'click', wyslijZaproszenie);
	}
}

function showPropozycje(oRequest, oResponse, oPayload) {
	var sMarkup = "";
	var els = oResponse.results;
	for ( var i = 0; i < els.length; i++) {
		sMarkup += '<div class="cegPrzyj" id="c_' + i + '">';
		sMarkup += '<div id="x_' + i + '_' + els[i].uid
				+ '" class="usunCeg">&nbsp;</div>';
		if (els[i].img) {
			sMarkup += '<img src="' + els[i].img + '">';
		}
		sMarkup += '<a href="http://' + els[i].name + '.w2o.pl">' + els[i].name
				+ '</a><div id="d_' + i + '_' + els[i].uid
				+ '" class="dodajCeg">dodaj do znajomych</div></div>';
		propozycjeL += ',' + els[i].uid;
		propozycje[i] = els[i];
	}
	var div = YAHOO.util.Dom.get("propozycje");
	div.innerHTML = sMarkup;
	var items = YAHOO.util.Dom.getElementsByClassName('usunCeg');
	YAHOO.util.Event.removeListener(items, 'click', usunElement);
	YAHOO.util.Event.addListener(items, 'click', usunElement);
	var items = YAHOO.util.Dom.getElementsByClassName('dodajCeg');
	YAHOO.util.Event.removeListener(items, 'click', wyslijZaproszenie);
	YAHOO.util.Event.addListener(items, 'click', wyslijZaproszenie);
}

var loaderFanFanTekst = new YAHOO.util.YUILoader( {
	require : [ 'button', 'connection', 'container', 'resize', 'datasource',
			'dragdrop', 'animation', 'event', 'autocomplete', 'json' ],
	base : 'http://imga.pl/yui/build/',
	onFailure : function(o) {
		alert("error: " + YAHOO.lang.dump(o));
	},
	onSuccess : function() {
		getPropozycje();
		var items = YAHOO.util.Dom.getElementsByClassName('usunZap');
		YAHOO.util.Event.removeListener(items, 'click', usunZaproszenie);
		YAHOO.util.Event.addListener(items, 'click', usunZaproszenie);
		var items = YAHOO.util.Dom.getElementsByClassName('dodajZap');
		YAHOO.util.Event.removeListener(items, 'click', akceptujZaproszenie);
		YAHOO.util.Event.addListener(items, 'click', akceptujZaproszenie);
	}
});

loaderFanFanTekst.insert();