var Dom, Event;
var panel;
var resize;

var loadingDIV;
var loadStatus = 1;

function isLoad() {
	if (loadStatus > 0) {
		window.setTimeout(isLoad, 1000);
	} else {
		Dom.setStyle(loadingDIV, 'visibility', 'hidden');
	}
}

function usunOsobe(e) {
	var target = YAHOO.util.Event.getTarget(e);
	var id = target.id.substr(1);
	var el = YAHOO.util.Dom.setStyle('li' + id, 'display', 'none');
}

function dodajOsobe(e) {
	var target = YAHOO.util.Event.getTarget(e);
	var id = target.id.substr(10, 1);
	var el = YAHOO.util.Dom.get('szukPrawa' + id);
	var val = el.value;
	el.value = '';
	var el = YAHOO.util.Dom.get('listPrawa' + id);
	el.innerHTML += '<div class="osoba" id="li' + id + '_' + val
			+ '"><span class="xxx" id="x' + id + '_' + val + '">x</span>' + val
			+ '</div>';
	var items = YAHOO.util.Dom.getElementsByClassName('xxx');
	YAHOO.util.Event.removeListener(items, 'click', usunOsobe);
	YAHOO.util.Event.addListener(items, 'click', usunOsobe);
}

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

function panelZapisz(ev) {
	YAHOO.util.Event.preventDefault(ev);
	var el = YAHOO.util.Dom.get('id');
	el.value = this.ID;
	var el = YAHOO.util.Dom.get('info');
	var el1 = YAHOO.util.Dom.get('listPrawa1');
	var el2 = YAHOO.util.Dom.get('listPrawa2');
	var el3 = YAHOO.util.Dom.get('listPrawa3');
	var el4 = YAHOO.util.Dom.get('listPrawa4');
	el.value = el1.innerHTML + el2.innerHTML + el3.innerHTML + el4.innerHTML;
	YAHOO.util.Connect.setForm('dodajForm', true);
	var cObj = YAHOO.util.Connect.asyncRequest('POST',
			'/ajax/W2ODostep?akcja=wyslij', {
				upload : function(o) {
					panel.hide();
				}
			});
	this.hide();
}

function dodajPanel(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 : '980px',
		buttons : [ {
			text : "Zapisz",
			handler : panelZapisz,
			isDefault : true
		}, {
			text : "Anuluj",
			handler : panelCancel
		} ],
		context : [ 'glw', 'tl', 'tl' ]
	});
	panel.ID = target.id;
	panel.setHeader('Kto może zobaczy te informacje?');
	panel
			.setBody('<div id="layout"><div class="ladowanie">Trwa ładowanie...</div></div>');
	panel.renderEvent.subscribe(function() {
		var data = 'typ=' + target.id;
		var callback = {
			failure : function(o) {
				var el = YAHOO.util.Dom.get('layout');
				el.innerHTML = '<div class="ladowanie">błąd</div>';
			},
			success : function(o) {
				var el = YAHOO.util.Dom.get('layout');
				el.innerHTML = o.responseText;
				var oDS1 = new YAHOO.util.XHRDataSource("/ajax/W2ODostep");
				oDS1.responseType = YAHOO.util.XHRDataSource.TYPE_TEXT;
				oDS1.responseSchema = {
					recordDelim : "\n",
					fieldDelim : "\t",
					fields : [ "name" ]
				};

				var oAC1 = new YAHOO.widget.AutoComplete("szukPrawa1",
						"listPPrawa1", oDS1, {
							allowBrowserAutocomplete : false,
							autoHighlight : true,
							maxResultsDisplayed : 8
						});
				oAC1.queryDelay = .5;
				oAC1.generateRequest = function(sQuery) {
					return "?akcja=osoba&q=" + sQuery;
				};

				YAHOO.util.Event
						.addListener('szukPrawaS1', 'click', dodajOsobe);

				var oDS2 = new YAHOO.util.XHRDataSource("/ajax/W2ODostep");
				oDS2.responseType = YAHOO.util.XHRDataSource.TYPE_TEXT;
				oDS2.responseSchema = {
					recordDelim : "\n",
					fieldDelim : "\t",
					fields : [ "name" ]
				};

				var oAC2 = new YAHOO.widget.AutoComplete("szukPrawa2",
						"listPPrawa2", oDS2, {
							allowBrowserAutocomplete : false,
							autoHighlight : true,
							maxResultsDisplayed : 8
						});
				oAC2.queryDelay = .5;
				oAC2.generateRequest = function(sQuery) {
					return "?akcja=grupa&q=" + sQuery;
				};

				YAHOO.util.Event
						.addListener('szukPrawaS2', 'click', dodajOsobe);

				var oDS3 = new YAHOO.util.XHRDataSource("/ajax/W2ODostep");
				oDS3.responseType = YAHOO.util.XHRDataSource.TYPE_TEXT;
				oDS3.responseSchema = {
					recordDelim : "\n",
					fieldDelim : "\t",
					fields : [ "name" ]
				};

				var oAC3 = new YAHOO.widget.AutoComplete("szukPrawa3",
						"listPPrawa3", oDS3, {
							allowBrowserAutocomplete : false,
							autoHighlight : true,
							maxResultsDisplayed : 8
						});
				oAC3.queryDelay = .5;
				oAC3.generateRequest = function(sQuery) {
					return "?akcja=osoba&q=" + sQuery;
				};

				YAHOO.util.Event
						.addListener('szukPrawaS3', 'click', dodajOsobe);

				var oDS4 = new YAHOO.util.XHRDataSource("/ajax/W2ODostep");
				oDS4.responseType = YAHOO.util.XHRDataSource.TYPE_TEXT;
				oDS4.responseSchema = {
					recordDelim : "\n",
					fieldDelim : "\t",
					fields : [ "name" ]
				};

				var oAC4 = new YAHOO.widget.AutoComplete("szukPrawa4",
						"listPPrawa4", oDS4, {
							allowBrowserAutocomplete : false,
							autoHighlight : true,
							maxResultsDisplayed : 8
						});
				oAC4.queryDelay = .5;
				oAC4.generateRequest = function(sQuery) {
					return "?akcja=grupa&q=" + sQuery;
				};

				YAHOO.util.Event
						.addListener('szukPrawaS4', 'click', dodajOsobe);
				var items = YAHOO.util.Dom.getElementsByClassName('xxx');
				YAHOO.util.Event.removeListener(items, 'click', usunOsobe);
				YAHOO.util.Event.addListener(items, 'click', usunOsobe);

			}
		};
		var request = YAHOO.util.Connect.asyncRequest("POST",
				'/ajax/W2ODostep?akcja=pobierz', callback, data);

	});
	panel.render('gl');
}

function onOpisOver(e) {
	Dom.setStyle('txt_pr_op', 'border', 'solid 1px #f78d20');
	Dom.setStyle('img_pr_op', 'visibility', 'visible');
	Dom.setStyle('txt_pr_op', 'background', 'white');
	Dom.setStyle('txt_pr_op', 'margin', '0px');
}

function onOpisOut(e) {
	Dom.setStyle('txt_pr_op', 'border', 'none');
	Dom.setStyle('txt_pr_op', 'background', 'transparent');
	Dom.setStyle('img_pr_op', 'visibility', 'hidden');
	Dom.setStyle('txt_pr_op', 'margin', '1px');
}

function onOpisChange(e) {
	var elOpis = Dom.get("txt_pr_op");
	var adres = '/ajax/Profil/';
	var data = 'opis=' + elOpis.value;
	var callback = {};
	var request = YAHOO.util.Connect
			.asyncRequest('POST', adres, callback, data);
}

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() {
		Dom = YAHOO.util.Dom;
		Event = YAHOO.util.Event;
		var items = YAHOO.util.Dom.getElementsByClassName('widocznosc');
		YAHOO.util.Event.removeListener(items, 'click', dodajPanel);
		YAHOO.util.Event.addListener(items, 'click', dodajPanel);
		loadingDIV = YAHOO.util.Dom.get('loading');
		isLoad();
		var elOpis = Dom.get("pr_op");
		if (elOpis) {
			Event.addListener(elOpis, 'mouseover', onOpisOver);
			Event.addListener(elOpis, 'mouseout', onOpisOut);
			Event.addListener("img_pr_op", 'click', onOpisChange);
		}
	}
});

loaderFanFanTekst.insert();