
function inc(filename)
{
	var body = document.getElementsByTagName('body').item(0);
	script = document.createElement('script');
	script.src = filename;
	script.type = 'text/javascript';
	body.appendChild(script)
}
//inc("http://www.jegy.hu/js/ajaxclass.js");
//inc("http://www.jegy.hu/js/scripts.js");

var it_boxes = [];

var it_search_citylist = [];
var it_search_venuelist = [];
var it_search_timelist = [];

 function addbox (urlbase, name, city, venue, time, lang) {
 	var newbox = [];
 	if (typeof urlbase=='undefined' || urlbase==null) urlbase = "http://www.jegy.hu/searchbox.php";
 	if (typeof name=='undefined' || name==null) name = "s_name";
 	if (typeof city=='undefined' || city==null) city = "s_city";
 	if (typeof venue=='undefined' || venue==null) venue = "s_venue";
 	if (typeof time=='undefined' || time==null) time = "s_time";
 	if (typeof lang=='undefined' || lang==null) lang = "hu";
 	newbox['urlbase'] = urlbase;
 	newbox['name'] = name;
 	newbox['citylist'] = city;
 	newbox['venuelist'] = venue;
 	newbox['timelist'] = time;
 	newbox['lang'] = lang;
 	var boxid = it_boxes.length;
 	it_boxes[boxid] = newbox;
 	start_it_form_load(boxid);
 }

 function string_to_url (target) {
 	var result = "";
 	//alert(target);
 	if (typeof target !== 'undefined') {
 		target = target.value.replace("ő", "_C5_91").replace("Ő", "_C5_90");
	    target = escape(target);
    	target = target.replace('_C5_91', '%C5%91').replace('_C5_90', '%C5%90')
    	result = target;
    }
 	return result;
 }
 
 function loadcity (boxid) {
  if (it_boxes.length == 0) {
		addbox();
		boxid = 0;
	}
  if (boxid==undefined) {
  	boxid = 0;
  } 
  var cdata = it_boxes[boxid];
  if (typeof cdata !== 'undefined') {
    var target = document.getElementById(cdata['citylist']);
    var target2 = document.getElementById(cdata['timelist']);
	target.disabled = true;
	target2.disabled = true;
	//alert(cdata['urlbase']+"?citylist&boxid="+boxid+"&lang="+cdata['lang']);
    inc(cdata['urlbase']+"?citylist&boxid="+boxid+"&lang="+cdata['lang']);
    inc(cdata['urlbase']+"?timelist&boxid="+boxid+"&lang="+cdata['lang']);
  }
 }
 function feedcitytolist(boxid) {
	if (boxid==undefined) {
		boxid = 0;
  	} 
 	var cdata = it_boxes[boxid];
	var target = document.getElementById(cdata['citylist']);
	while (target.options.length > 0) {
    	target.options[0] = null;
	}
	var beforelen = target.options.length;
    var newopt;
    var n = 0;
    //alert(it_search_citylist);
    for ( key in it_search_citylist[boxid] ) {
	    if (typeof it_search_citylist[boxid][key]=="string") {
	    	keytowrite = key;
		    if (key=='-') keytowrite = "";
       		newopt = new Option(it_search_citylist[boxid][key], keytowrite, false, false);
	   		target.options[beforelen+n] = newopt;
   			n++;
    	}
    }
    target.options.length=beforelen+n;
    target.disabled = false;
 }
 
 function citychanged (boxid) {
	if (boxid==undefined) {
	  	boxid = 0;
	} else if (typeof boxid == 'object') {
		var oname = boxid.id;
		for ( key in it_boxes ) {
			if (it_boxes[key]['citylist'] == oname) boxid = [key];
		}
	}
	var cdata = it_boxes[boxid];
	var citycontrol = document.getElementById(cdata['citylist']);
	var target = document.getElementById(cdata['venuelist']);
	target.disabled = true;
	inc(cdata['urlbase']+"?venuelist&boxid="+boxid+"&lang="+cdata['lang']+"&city="+string_to_url(citycontrol));
 }
 function feedvenuetolist(boxid, debug) {
 	if (boxid==undefined) {
		boxid = 0;
  	} 
 	var cdata = it_boxes[boxid];
	var target = document.getElementById(cdata['venuelist']);
	while (target.options.length > 0) {
    	target.options[0] = null;
	}
    var newopt;
    var n = 0;
    for ( key in it_search_venuelist[boxid] ) {
	    if (typeof it_search_venuelist[boxid][key]=="string") {
	    	keytowrite = key;
		    if (key=='-') keytowrite = "";
       		newopt = new Option(it_search_venuelist[boxid][key], keytowrite, false, false);
	   		target.options[n] = newopt;
   			n++;
    	}
    }
    target.disabled = false;
 }

 function feedtimetolist(boxid) {
 	if (boxid==undefined) {
		boxid = 0;
  	} 
 	var cdata = it_boxes[boxid];
	var target = document.getElementById(cdata['timelist']);
	while (target.options.length > 0) {
    	target.options[0] = null;
	}
	var beforelen = target.options.length;
    var newopt;
    var n = 0;
    for ( key in it_search_timelist[boxid] ) {
    	if (typeof it_search_timelist[boxid][key][1]=="string") {
       		newopt = new Option(it_search_timelist[boxid][key][1], it_search_timelist[boxid][key][0], false, false);
	   		target.options[beforelen+n] = newopt;
   			n++;
   		}
    }
    target.options.length=beforelen+n;
    target.disabled = false;
 }




 function yearchanged () {
  var target_y = document.getElementById("s_year");
  var target_m = document.getElementById("s_month");
  var target_d = document.getElementById("s_day");
  var d=new Date();
  var n=0;
  if (target_y.value==d.getYear()) {
   target_m.options.length = 0;
   for (i=d.getMonth()+1;i<=12;i++) {
    newopt = new Option(monthnames[i], i, false, false);
    target_m.options[n] = newopt;
    n++;
   }
   n=0;
   target_d.options.length = 0;
   for (i=d.getDate();i<=31;i++) {
    newopt = new Option(i, i, false, false);
    target_d.options[n] = newopt;
    n++;
   }
  } else {
   target_m.options.length = 0;
   for (i=1;i<=12;i++) {
    newopt = new Option(monthnames[i], i, false, false);
    target_m.options[n] = newopt;
    n++;
   }
   n=0;
   target_d.options.length = 0;
   for (i=1;i<=31;i++) {
    newopt = new Option(i, i, false, false);
    target_d.options[n] = newopt;
    n++;
   }
  }
 }
 
 function monthchanged () {
  var target_y = document.getElementById("s_year");
  var target_m = document.getElementById("s_month");
  var target_d = document.getElementById("s_day");
  var d=new Date();
  var n=0;
  if (target_y.value==d.getYear() && target_m.value==d.getMonth()+1 ) {
   target_d.options.length = 0;
   for (i=d.getDate();i<=31;i++) {
    newopt = new Option(i, i, false, false);
    target_d.options[n] = newopt;
    n++;
   }
  } else {
   for (i=1;i<=31;i++) {
    newopt = new Option(i, i, false, false);
    target_d.options[n] = newopt;
    n++;
   }
  }
 }
 
 function searchsubmit () {
  AjaxUpdMode = "html";
  AjaxUpdTarget = "searchresults";
  var target = document.getElementById("searchresults");
  var sname = document.forms.searchform.s_name;
  var scity = document.getElementById("s_city");
  var svenue = document.getElementById("s_venue");
  var stime = document.getElementById("s_time");
  var syear = document.getElementById("s_year");
  var smonth = document.getElementById("s_month");
  var sday = document.getElementById("s_day");
  target.innerHTML="...";
  //AjaxObj.Open("search.php", '?notemplate=1&s_name='+Url.encode(sname.value)+'&s_city='+Url.encode(scity.value)+'&s_time='+stime.value+'&s_venue='+Url.encode(svenue.value)+'&s_year='+syear.value+'&s_month='+smonth.value+'&s_day='+sday.value, AjaxUpd, null, AjaxUpdTarget, AjaxUpdMode);
 }

 function start_it_form_load (boxid) {
 	if (it_boxes.length == 0) {
		addbox();
		boxid = 0;
	}
	var cdata = it_boxes[boxid];
	if (document.getElementById(cdata['citylist'])!==null) {
		loadcity(boxid); 
	} else {
		startimer = setTimeout("start_it_form_load("+boxid+")",50);
	}
 }
 
 function print_r(theObj){
  if(theObj.constructor == Array ||
     theObj.constructor == Object){
    document.write("<ul>")
    for(var p in theObj){
      if(theObj[p].constructor == Array||
         theObj[p].constructor == Object){
		document.write("<li>["+p+"] => "+typeof(theObj)+"</li>");
        document.write("<ul>")
        print_r(theObj[p]);
        document.write("</ul>")
      } else {
		document.write("<li>["+p+"] => "+theObj[p]+"</li>");
      }
    }
    document.write("</ul>")
  }
}

