function createRequestInstance() {
var request = false;
try {request = new XMLHttpRequest();}
catch(err1) {
try {request = new ActiveXObject('Msxml2.XMLHTTP');}
catch(err2) {
try {request = new ActiveXObject('Microsoft.XMLHTTP');}
catch(err3) {
request = false; }}}
return request;}
function setResults(s) {
document.getElementById("error_info").innerHTML = s;
return;}
function gid(n) {
return document.getElementById(n);}
function cell(a,v) {
var s=document.createElement('option');
s.appendChild(document.createTextNode(a));
s.setAttribute('value',v);
return s;}
function clrsel(a) {
while (a.childNodes.length>1) a.removeChild(a.lastChild);
a.selectedIndex=0;}
function load_wojew(w){
function doit(){
if (req.readyState == 0) {setResults("");}
else if (req.readyState == 1) {setResults("czekaj...");}
else if (req.readyState == 2) {setResults("Oczekiwanie na odpowiedź");}
else if (req.readyState == 3) {setResults("Pobieranie danych");}
else if (req.readyState == 4){
if (req.status == 200){
setResults('<input type="submit" value="ustaw to województwo" class="butt-G154" name="miejsce">');
eval(req.responseText);
var p=gid('powi');
clrsel(p);
var i;
for (i=0;i<powiaty.length;i++) {p.appendChild(cell(powiaty[i].name,powiaty[i].id));}
p.disabled=false;}
else{
setResult("Pobranie danych nie powiodło się: " + req.statusText);}}}
var req;
req = createRequestInstance();
if (!req) {
alert("Nie można utworzyć XMLHttpRequest.");
return;}
req.open("GET","ajax.php?kodWoj="+w, true);
req.onreadystatechange=doit;
req.send(null);}
function load_powiat(n){
function doit(){
if (req.readyState == 0) {setResults("");}
else if (req.readyState == 1) {setResults("czekaj...");}
else if (req.readyState == 2) {setResults("Oczekiwanie na odpowiedź");}
else if (req.readyState == 3) {setResults("Pobieranie danych");}
else if (req.readyState == 4){
if (req.status == 200){
setResults('<input type="submit" value="ustaw ten powiat" class="butt-G154" name="miejsce">');
eval(req.responseText);
var g=gid('gmin');
clrsel(g);
var i;
for (i=0;i<gminy.length;i++) {g.appendChild(cell(gminy[i].name,gminy[i].id));}
g.disabled=false;}
else{setResult("Pobranie danych nie powiodło się: " + req.statusText);}}}
var req;
req = createRequestInstance();
if (!req) {
alert("Nie można utworzyć XMLHttpRequest.");
return;}
req.open("GET","ajax.php?kodPow="+n, true);
req.onreadystatechange=doit;
req.send(null);}
function sel_woj(woj){
gid('gmin').selectedIndex=0;
gid('gmin').disabled=true;
var w=gid('woje').value;
var p=gid('powi');
clrsel(p);
if (w<1){
p.disabled=true;
setResults('<span style="color:red;font-size:9px">Nie wybrano województwa</span>');
return;}
load_wojew(w);}
function sel_powiat(pow){
var p=gid('powi').value;
var g=gid('gmin');
clrsel(g);
var po=gid('powi').selectedIndex;
if (po<1){
g.disabled=true;
setResults('<input type="submit" value="ustaw to województwo" class="butt-G154" name="miejsce">');
return;}
load_powiat(p);}
function sel_miasto(mia){
var p=gid('gmin').name;
var po=gid('gmin').selectedIndex;
if (po<1) {
setResults('<input type="submit" value="ustaw ten powiat" class="butt-G154" name="miejsce">');
return;}
else {setResults('<input type="submit" value="ustaw to miasto" class="butt-G154" name="miejsce">');}}
function setResultsMarka(m) {
document.getElementById("info_marka").innerHTML = m;
return;}
function load_marka(ma){
function doit(){
if (req.readyState == 0) {setResultsMarka("");}
else if (req.readyState == 1) {setResultsMarka("czekaj...");}
else if (req.readyState == 2) {setResultsMarka("Oczekiwanie na odpowiedź");}
else if (req.readyState == 3) {setResultsMarka("Pobieranie danych");}
else if (req.readyState == 4){
if (req.status == 200) {
setResultsMarka("Model");
eval(req.responseText);
var mo=gid('model');
clrsel(mo);
var i;
for (i=0;i<modele.length;i++) {mo.appendChild(cell(modele[i].name,modele[i].id));}
mo.disabled=false; }
else {setResultsMarka("Pobranie danych nie powiodło się: " + req.statusText); }}}
var req;
req = createRequestInstance();
if (!req) {
alert("Nie można utworzyć XMLHttpRequest.");
return;}
req.open("GET","ajax.php?kodMarki="+ma, true);
req.onreadystatechange=doit;
req.send(null);}
function sel_marka(marka){
gid('model').selectedIndex=0;
gid('model').disabled=true;
var ma=gid('marka').value;
var mo=gid('model');
clrsel(mo);
if (ma<1) {
mo.disabled=true;
return;}
load_marka(ma);}
function sel_model(model){
var p=gid('model').name;
var po=gid('model').selectedIndex;
if (po<1) {
setResultsMarka("<strong>Nie wybrano modelu auta</strong>");
return; }
else {setResultsMarka("Model"); }}
function setResultsKat(m) {
document.getElementById("info_kat").innerHTML = m;
return;}
function load_kategoria(ka){
function doit(){
if (req.readyState == 0) {setResultsKat("");}
else if (req.readyState == 1) {setResultsKat("czekaj...");}
else if (req.readyState == 2) {setResultsKat("Oczekiwanie na odpowiedź");}
else if (req.readyState == 3) {setResultsKat("Pobieranie danych");}
else if (req.readyState == 4){
if (req.status == 200)	{
setResultsKat("Podkategoria");
eval(req.responseText);
var po=gid('podkat');
clrsel(po);
var i;
for (i=0;i<podkat.length;i++) {po.appendChild(cell(podkat[i].name,podkat[i].id));}
po.disabled=false;}
else{setResultKat("Pobranie danych nie powiodło się: " + req.statusText);}}}
var req;
req = createRequestInstance();
if (!req){
alert("Nie można utworzyć XMLHttpRequest.");
return;}
req.open("GET",'ajax.php?kodKat='+ka, true);
req.onreadystatechange=doit;
req.send(null);}
function sel_kategoria(kategoria){
gid('podkat').selectedIndex=0;
gid('podkat').disabled=true;
var ka=gid('kategoria').value;
var po=gid('podkat');
clrsel(po);
if (ka<1){
po.disabled=true;
setResultsKat("Nie wybrano kategorii");
return;}
load_kategoria(ka);}
function sel_podkat(podkat){
var p=gid('podkat').name;
var po=gid('podkat').selectedIndex;
if (po<1){
setResultsKat("Nie wybrano podkategorii");
return;}
else{setResultsKat("Podkategoria");}}

var ajaxObj = createRequestInstance();
function sugeruj(id, e){
if (document.getElementById(id).value.length < 3)    { return false; }
var keyCode = e.keyCode;
if (keyCode == 40 || keyCode == 38)   { return false; }
var trescinputa = document.getElementById(id).value;
var parametr = "input=" + trescinputa;
sugestID[id] = 0;
sugestILE[id] = 0;
if (trim(trescinputa) !== "") { puscpytanie(id, parametr, trescinputa, ajaxObj, pobierzdane); }
else  { ukryjpole(); }}
function puscpytanie(id, parametr, trescinputa, aObj,  pobierzdane){
if(aObj) {
if (aObj.readyState == 4 || aObj.readyState == 0) {
aObj.open("GET",'ajax.php?kodC='+trescinputa, true);
aObj.onreadystatechange = function () { pobierzdane(id) };
aObj.send(parametr); }}}
function pobierzdane(id){
if (ajaxObj.readyState == 4){
if (ajaxObj.status == 200){
try{
var json_tekst = ajaxObj.responseText;
eval("var json_obiekt = ("+json_tekst+")");
var Tid = new Array();
var Tnazwa = new Array();
var Topis = new Array();
for (i=0; i<json_obiekt.dane.miasto.length; i++){
var nodeA = json_obiekt.dane.miasto[i].id;
var nodeB = json_obiekt.dane.miasto[i].nazwa;
var nodeC = json_obiekt.dane.miasto[i].opis;
Tid.push(nodeA);
Tnazwa.push(nodeB);
Topis.push(nodeC);}
pokazpole(id, Tid, Tnazwa, Topis);}
catch(e){
ukryjpole(id);
if (trim(ajaxObj.responseText) !== "")
alert('Błąd składni');}}}}
var sugestILE = new Array();
function pokazpole(id, nrid, nazwa, opis){
document.getElementById("XM_listamiast").style.display = "block";
document.getElementById("XM_infopole").style.display = "none";
var listCity = document.getElementById("XM_podpowiedzi");
listCity.innerHTML = "";
for(var i = 0; i < nrid.length; i++){
listCity.innerHTML += "<li><a id='"+id + "-" +(i+1)+"' href=\"javascript:void(0);\" onMouseOver=\"this.style.backgroundColor='#555'; this.style.color='#fff';\" onMouseOut=\"this.style.backgroundColor='#777'; this.style.color='#fff';\" onclick=\"addSugest('"+id+"', '"+nazwa[i]+"',  '"+nrid[i]+"');\">" + prim(opis[i]) + "</span></a><span id='b-" +(i+1)+"' style=\"display:none\">" + nazwa[i] + "</span><span id='c-" +(i+1)+"' style=\"display:none\">" + nrid[i] + "</span></li>";}
sugestILE[id] = i;}
function ukryjpole(id){
try{
document.getElementById("XM_listamiast").style.display = "none";
document.getElementById("XM_infopole").style.display = "block";}
catch(e){}}
function keynavON(id, ID){
document.getElementById(ID + "-" + id).style.backgroundColor = "#555";
document.getElementById(ID + "-" + id).style.color = "#fff";}
function keynavOFF(id, ID){
document.getElementById(ID + "-" + id).style.backgroundColor = "#777";
document.getElementById(ID + "-" + id).style.color = "#fff";}
var sugestID = new Array();
function navkey(id, e){
var keyCode = e.keyCode;
if (keyCode == 40){
if (sugestID[id] >= 0 && sugestID[id] < sugestILE[id]){
if (sugestID[id] != 0 && sugestID[id] != sugestILE[id]){
keynavOFF(sugestID[id], id);}
sugestID[id] ++;
keynavON(sugestID[id], id);}}
else if (keyCode == 38 && sugestID[id]){
if (sugestID[id] > 1)	{
keynavOFF(sugestID[id], id);
sugestID[id] --;
keynavON(sugestID[id], id);}
else{
keynavOFF(sugestID[id], id);
sugestID[id] = 0;}}
else if (keyCode == 13 && sugestID[id]){
var nam_area = document.getElementById("b-" + sugestID[id]).innerHTML;
var num_area = document.getElementById("c-" + sugestID[id]).innerHTML;
document.getElementById("XM_name_area").value = nam_area;
document.getElementById("XM_id_area").value = num_area;
ukryjpole(id);
document.getElementById("XM_name_area").focus();}}
function addSugest(id, name, nr){
document.getElementById("XM_name_area").value = name;
document.getElementById("XM_id_area").value = nr;
ukryjpole(id);
document.forms["form_bylemtu"].submit();}
function trim(s) { return s.replace(/(^\s+)|(\s+$)/g, ""); }
function prim(s) { return s.replace(/\),/gi,")<span style=\"float:right\">");}
