// konfiguracja

// maksymalna ilsoc zapisywanych aukcji
var MaxZapisanychAukcji = 10; 

// url do my_results.php
var url = "/mw_results.php?szukaj_w_opisie=";

// api cookie set
function setCookie(c_name,value,expiredays){
  var exdate=new Date();
  exdate.setDate(exdate.getDate()+expiredays);
  document.cookie=c_name+ "=" +escape(value)+((expiredays==null) ? "" : ";expires="+exdate.toGMTString())
} 
	
// api cookie get
function getCookie(c_name)
{
if (document.cookie.length>0)
  {
  c_start=document.cookie.indexOf(c_name + "=")
  if (c_start!=-1)
    { 
    c_start=c_start + c_name.length+1 
    c_end=document.cookie.indexOf(";",c_start)
    if (c_end==-1) c_end=document.cookie.length
    return unescape(document.cookie.substring(c_start,c_end))
    } 
  }
return ""
}	

function HTMLentities(texte) {
  texte = texte.replace(/</g,'&lt;');
  texte = texte.replace(/>/g,'&gt;');
  return texte;
}

function HTMLParamEntities(texte){
  texte = texte.replace(/'/g,'');
  texte = texte.replace(/"/g,'');
  return texte;
}


// Parsuje szukaj_w_opisie=1&text=war1
// zwracajac tablice z kluczami
function query2params(query){
  var wynik = new Array();  
  wynik['szukaj_w_opisie'] = "";
  wynik['text'] = "";

  if (query.length>0){  
    wynik['szukaj_w_opisie'] = query.substring(16, 17);
    wynik['text'] = query.substring(23, query.length);
  }
   
  if (wynik['szukaj_w_opisie'].length<1 || wynik['text'].length<1){
    wynik['szukaj_w_opisie'] = "";
    wynik['text'] = "";
  }
  return wynik;
}

// aktualizowanie wczesniej szukanych
function Szukane(text, szukaj_w_opisie){
  var szukane = new Array();
  var l = 0;
  var nowy_text = "szukaj_w_opisie="+szukaj_w_opisie+"&text="+text;
  var temp = '';

  // wczytanie do tablicy z cookies
  for (l=0; l<MaxZapisanychAukcji; l++){
    slowo = getCookie("slowo"+l);
    if (slowo != 'undefined' && slowo.length>0){
      szukane[l] = slowo;
    }else{
      szukane[l] = '';
    }
  }

  // usuniecie z tablicy elementow o takiej nazwie

  for (l=0; l<MaxZapisanychAukcji; l++){
    fraza = szukane[l].substr(23);
    if (fraza == text){
       szukane.splice(l, 1);
       break;
    }
  }

  // dodanie elementu na pierwszej pozycji
  szukane.splice(0, 0, nowy_text);

  // zapisanie tablicy w cookies
  for (l=0; l<MaxZapisanychAukcji; l++){
   setCookie("slowo"+l, szukane[l], 365);
  }

}

function ini(){
  cookiesWczytaj();
  // text_frm = document.getElementById("mw_text").value = text;
  // document.getElementById("mw_text").value = text;
}

function cookiesWczytaj(){
  var ostatnie = document.getElementById("ostatnie");
  var l;
  var wyniki = "<p>Twoje poprzednie wyszukiwania: <br/>";
  var slowo = "";
  var sloto_text = "";
  var sloto_szukaj_w_opisie = "";
  var query2 = "";
  var licznik = 0;

  for (l=0; l<MaxZapisanychAukcji; l++){
    slowo = getCookie("slowo"+l);
    query2 = query2params(slowo);

    if (query2['text'].length>0){
      slowo_text = query2['text'];
      slowo_szukaj_w_opisie = query2['szukaj_w_opisie'];
      if (slowo_text.length>0){
        wyniki += "<a href=\"javascript: szukaj('"+slowo_szukaj_w_opisie+"', '"+HTMLParamEntities(slowo_text)+"');\">"+HTMLentities(slowo_text)+'</a>, ';
        licznik++;
      }
    } 
  }
  		  wyniki += "</p>";
   if (licznik>0) ostatnie.innerHTML = wyniki;
}

function szukaj(szukaj_w_opisach, text){
  document.getElementById("mw_text").value = text;
  if (szukaj_w_opisach == "1"){
    document.getElementById("tytul").checked = false;
    document.getElementById("opisy").checked = true;
  }else{
    document.getElementById("tytul").checked = true;
    document.getElementById("opisy").checked = false;
  }
  pobierzDane();
}

function pobierzDane(){

  var t = query2params('szukaj_w_opisie=0&text=star');

  cookiesWczytaj();

  var text = document.getElementById("mw_text").value;
  var div = document.getElementById("dataDiv");
  var tryb = document.getElementById("tytul");

  if (text == '') return;

  var szukaj_w_opisie = (tryb.checked) ? "0" : "1";
  Szukane(text, szukaj_w_opisie);
  
  temp_url = url + szukaj_w_opisie + "&text=" + encodeURIComponent(text);

  var XMLHttpRequestObject = false;
  
  if(window.XMLHttpRequest){
    XMLHttpRequestObject = new XMLHttpRequest();
  }else if(window.ActiveXObject){
    XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
  }

  if(XMLHttpRequestObject){

    XMLHttpRequestObject.open("GET", temp_url);
    XMLHttpRequestObject.setRequestHeader("Content-Type", "text/xml; charset=UTF-8"); 
    div.innerHTML = '<img src="../images/loading.gif" /> Pobieranie danych.';    

    XMLHttpRequestObject.onreadystatechange = function(){

      if (XMLHttpRequestObject.readyState == 4){
        if(XMLHttpRequestObject.status == 200){
          div.innerHTML = '';
          var response_txt = XMLHttpRequestObject.responseText;
          div.innerHTML = response_txt;
		  cookiesWczytaj();
        }else{
          div.innerHTML = 'Brak połączenia. Spróbuj później.';
        }
     }
    }
    XMLHttpRequestObject.send(null);
  }
}