/*
format danych zwracanych przez funkcje:

| 1     | 2   | 3  | 4       | 5     || 6        | 7         | 8     |
+-------+-----+----+---------+-------++----------+-----------+-------+
| akcja | typ | id | wartość | napis || selected | szerokość | label |


- akcja: H - ukrywa obiekt o identyfikatorze id
		 HS - ukrywa obiekt, zeruje zawartość i ustawia wartości
		 S - wypełnia kombo
		 ZS - zeruje zawartość i ustawia wartości
		 M - wyświetla komunikat 'napis' w obiekcie o numerze id, jeżeli brak id to alert
		 MA - dopisuje komunikat do listy komunikatów
- typ: E - combobox
	   I - integer
*/
function pokazParametry (url) { //alert('2: pokazParametry');
	// deklaracje 
	var l = new Array();
	var w = new Array();
	var h = new Array();
	var e, n, c;
	// zwraca listę obiektów 
	//alert(url);
	var d = HTML_AJAX.grab(url);
	//alert(d);
	var r = d.split(String.fromCharCode(10));

	for (i=0; i<r.length; i++) {
		c = r[i].split('|');
		if (c.length>1) {
			// sprawdzamy czy wyswietlic komunikat 
			if (c[1] == 'M' || c[1] == 'MA') {	// wyświetla komunikat
				if (c[3] == '')
					alert (c[5]);
				else if (c[3] == 'message') {
					e = document.getElementById('message');
					if (e) {
						if (c[1] == 'MA') {
							e.innerHTML = e.innerHTML+c[5];
							// wyświetlamy
							e.className = 'messages';
						} else {
							e.innerHTML = c[5];
							// jeżeli czyszczenie okna komunikatów to je ukrywamy
							if (c[5] == '')
								e.className = 'messages-hidden';
							else
								e.className = 'messages';
						}
					}
				} else {
					e = document.getElementById(c[3]);
					if (e) {
						if (e.nodeName == 'INPUT') e.value = c[5];
						else if (e.nodeName == 'SELECT') {
							if (e.value != c[5]) {
								e.value = c[5];
								if (c[3] == 'gmina') {
									// aktualizujemy listę rejonów w gminie
									if (typeof sok_wycena_view_id_kostki == 'function') sok_wycena_view_id_kostki();
									if (typeof sok_user_search_id_kostki == 'function') sok_user_search_id_kostki();
								}
							}
						} else if (e.nodeName == 'LABEL') {
							e.innerHTML = c[5];
						}
					}
				}
			} else {
				e = document.getElementById(c[3]); //alert(c[1]);
				<!-- zapamiętujemy bieżącą wartość -->
				if (e)
					if (l[c[3]] == undefined) {
						l[c[3]] = new Array();
						l[c[3]]['prev_value'] = e.value;
					};
				// znajdujemy element nadrzędny
				if (e) {
					n = e.parentNode.parentNode;
					if (n.nodeName != 'TR') n = e.parentNode.parentNode.parentNode.parentNode;
				}
				// ukrywamy i zerujemy wartości
				if (c[1] == 'HS' || c[1] == 'SH' || c[1] == 'ZS') {	// ukrywamy obiekt td
					if (e) {
						if (c[1] == 'HS' || c[1] == 'SH')  n.style.display = 'none';
						if (e.nodeName == 'SELECT')  e.options.length = 0;
						if (e.nodeName == 'INPUT')  e.value = '';
					}
				}
				//alert (c[3]+' '+n.nodeName)
				if (c[1] == 'S') {	// pokazuje obiekt i wypełnia danymi
					if (e) {
						n.style.display = '';
						if (n.className == 'ukryj-parametr')
							n.className = 'pokaz-parametr';
					}
				}
				// ustawiamy licznik w ramach elementu
				if (l[c[3]] == undefined) {
					l[c[3]] = new Array();
					l[c[3]]['counter'] = 0;
				} else if (l[c[3]]['counter'] == undefined) {
					l[c[3]]['counter'] = 0;
				} else
					l[c[3]]['counter']++;

				// alert(r[i]+"\n"+'-'+c[3]+'-'+l[c[3]]+'-'+c[5]+'-'+c[4]);
				if (e) {
					if (e.nodeName == 'SELECT') {
						e.options[l[c[3]]['counter']] = new Option(c[5], c[4]);
						// ustawiamy wartość poprzednią
						if (l[c[3]]['prev_value'] == c[4]) e.selectedIndex = l[c[3]]['counter'];
					}
					if (e.nodeName == 'INPUT') {
						e.value = l[c[3]]['prev_value'];
					}
					//alert ('b '+e.parentNode.parentNode.parentNode.parentNode.nodeName)
				} else
					; //alert('nieprawidłowy id: '+c[3]);

				<!-- sprawdzamy czy ustawić etykietkę -->
				if (c[8]) {
					w = document.getElementsByTagName('label');
					for (j=0; j<w.length; j++) {
						if (w[j].getAttribute('for') == c[3]) {
							w[j].innerHTML = c[8];
							// wstawiamy pomoc
							if (c[9]) {
								if (h[c[3]] == undefined)
									h[c[3]] ='<p><b>'+c[5]+'</b> - '+c[9]+'</p>';
								else
									h[c[3]] = h[c[3]]+'<p><b>'+c[5]+'</b> - '+c[9]+'</p>';
								w[j].setAttribute('onmouseover', "return tooltip_label('"+c[8]+"','"+h[c[3]]+"','');");
								w[j].setAttribute('onmouseout', "nd();");
								w[j].className = 'label help';
							}
							else if (h[c[3]] == undefined) {
								w[j].setAttribute('onmouseover', "return false;");
								w[j].setAttribute('onmouseout', "nd();");
								w[j].className = '';
							}
						}
					}
				}
			}
		}
	}
}


function ustawLinie (c, b) { //alert ('1: ustawUlice');

	var where_extended = 'category%3D'+c+'+AND+brand%3D'+b;
	pokazParametry('view_data.php?view_name=dynamic/wyszukiwarka_linie.view&where_extended='+where_extended);
	
}


