var next_ajax = '';
var next_ajax2 = '';
var pozicija;

function ajax(str,targetas, anim) {
	
	if (str.length==0) { return; }
	var target = document.getElementById(targetas);
	if (target == undefined) return;

	if (anim) {
		var t = document.getElementById(targetas);
		var paddingTop = parseInt(document.deepCss(t,'padding-top'));
		var paddingBottom = parseInt(document.deepCss(t,'padding-bottom'));
		t.innerHTML='Palaukite...';
		if (typeof jQuery == 'undefined') { 
			t.style.paddingTop = '0px';
			t.style.paddingBottom = '0px';
			t.style.overflow = 'hidden';
			t.style.height = '0px';
			changeOpac(targetas, 0);
		} else $('#'+targetas).hide();
	}
	if (!anim) target.innerHTML='<img src="imgs/loading32.gif" alt="Palaukite..." />';
	
	var xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null) {
		alert ("Jūsų naršyklė nepalaiko AJAX!");
		return;
	} 
	var url = str;
	url=url+"&sid="+Math.random();

	xmlHttp.onreadystatechange=function() {
		if (xmlHttp.readyState==4) { 
			if (target != undefined) { 
				document.getElementById(targetas).innerHTML=xmlHttp.responseText;
				
				if (anim) { 
					if (typeof jQuery == 'undefined') { 
						var t = document.getElementById(targetas);
						var h = t.scrollHeight; 
						var evalMe = "growTo(\""+targetas+"\", \""+h+"\", \""+paddingTop+"\", \""+paddingBottom+"\")";
						fade(targetas, 0, 100, 500, evalMe);
					} else {
						$('#'+targetas).css({'height': ''}).slideDown();
					}
				}

				if (next_ajax != '') { eval(next_ajax); next_ajax = '';	} else	if (next_ajax2 != '')	{ eval(next_ajax2); next_ajax2 = ''; }
			}
		}
	}
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
} 
function growTo(div, s, t, b) {
	var obj = getObj(div);
	var step = 20;
	if (parseInt(obj.style.height) < s) {
		var h = parseInt(obj.style.height);
		obj.style.height = h+(s/step) + 'px';
		//changeOpac(div, h/s*100);
		obj.style.paddingTop = parseInt(obj.style.paddingTop) + (t/step) + 'px';
		obj.style.paddingBottom = parseInt(obj.style.paddingBottom) + (b/step) + 'px';
		setTimeout("growTo('"+div+"', "+s+", "+t+", "+b+")", 10);
	} else {
		obj.style.paddingTop = t+'px';
		obj.style.paddingBottom = b+'px';
		obj.style.height = '';
		obj.style.overflow = 'visible';
	}
}

function fade(id, opacStart, opacEnd, millisec, evalMe) {
	id = document.getElementById(id);
    var speed = Math.round(millisec / 100);
    var timer = 0;
    if(opacStart > opacEnd) {
        for(i = opacStart; i >= opacEnd; i--) {
            setTimeout(		"changeOpac('" + id.id + "','" + i + "')"		,(timer * speed));
            timer++;
        }
		if (eval != undefined) { setTimeout(		"eval('" + evalMe + "')"		,(timer * speed));	}

    } else if(opacStart < opacEnd) {
        for(i = opacStart; i <= opacEnd; i++)
            {
            setTimeout(		"changeOpac('" + id.id + "','" + i + "')"		,(timer * speed));
            timer++;
        } 
		if (eval != undefined) { setTimeout(		"eval('" + evalMe + "')"		,(timer * speed));	}

    } 
} 


function ajaxpost(url,targetas, params) {
	var fields = params.split(',');
	var data = '';
	var key = '';
	var rez = '';
	for (var i = 0; i < fields.length; i++) {
		var parts = fields[i].split('|');

		if (parts.length == 2) { key = parts[0]; rez = parts[1]; }
		else { key = fields[i]; rez = fields[i]; }
		
		var obj = document.getElementById(rez);
		if (obj != undefined) {
			data+= key+'='+(obj.value)+'&';
		}
	}
	if (url.length==0) { return; }
	var target = document.getElementById(targetas);
	if (target != undefined) target.innerHTML='<img src="imgs/loading32.gif" alt="Palaukite..." />';
	var xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null) { alert ("Jūsų naršyklė nepalaiko AJAX!"); return; 	} 
	xmlHttp.onreadystatechange=function() {
		if (xmlHttp.readyState==4) { 
			if (target != undefined) { 
				document.getElementById(targetas).innerHTML=xmlHttp.responseText; 
				if (next_ajax != '') { eval(next_ajax); next_ajax = '';	} else	if (next_ajax2 != '')	{ eval(next_ajax2); next_ajax2 = ''; }
			}
		}
	}
	xmlHttp.open('POST',url,true);

	xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xmlHttp.setRequestHeader("Content-length", data.length);
	xmlHttp.setRequestHeader("Connection", "close");
	xmlHttp.send(data);
}

function add_reservation(url, targetas, params) {
	var check = check_reservation('kainos_'+pozicija+',start_date_'+pozicija+',end_date_'+pozicija+',uzsakovas_'+pozicija);
	if (!check) { return false;	} 
	ajaxpost(url,targetas, params);
}


function GetXmlHttpObject()
{
var xmlHttp=null;
try
  {
  // Firefox, Opera 8.0+, Safari
  xmlHttp=new XMLHttpRequest();
  }
catch (e)
  {
  // Internet Explorer
  try
    {
    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
  catch (e)
    {
    xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
  }
return xmlHttp;
}




function omove(sourceID, destID) {
	var src = document.getElementById(sourceID);
	var dest = document.getElementById(destID);

	for(var count=0; count < src.options.length; count++) {

		if(src.options[count].selected == true) {
				var option = src.options[count];

				var newOption = document.createElement("option");
				newOption.value = option.value;
				newOption.text = option.text;
				newOption.selected = true;
				try {
						 dest.add(newOption, null); //Standard
						 src.remove(count, null);
				 }catch(error) {
						 dest.add(newOption); // IE only
						 src.remove(count);
				 }
				count--;
		}
	}
	listbox_selectall(destID, false)
	sortList(destID);
}

function listbox_selectall(listID, isSelect) {
	var listbox = document.getElementById(listID);
	for(var count=0; count < listbox.options.length; count++) {
		listbox.options[count].selected = isSelect;
	}
}

function sortList(listID) {
	var lb = document.getElementById(listID);
	arrTexts = new Array();
	arrValues = new Array();
	arrOldTexts = new Array();
	for(i=0; i<lb.length; i++) 	{
		arrTexts[i] = lb.options[i].text;
		arrValues[i] = lb.options[i].value;
		arrOldTexts[i] = lb.options[i].text;
	}
	arrTexts.sort();
	for(i=0; i<lb.length; i++) 	{
		lb.options[i].text = arrTexts[i];
		for(j=0; j<lb.length; j++) 	{
			if (arrTexts[i] == arrOldTexts[j]) {
				lb.options[i].value = arrValues[j];
				j = lb.length;
			}
		}
	}
}



document.deepCss= function(who, css){
    var val= '', str= '';
    if(!who || who.style== undefined) return '';
    if(/\-/.test(css)){
        str= css.replace(/\-[a-z]/g, function(w){
            return w.charAt(1).toUpperCase() + w.substring(2);
        })
    }
    val= who.style[str];
    if(!val){
        if(who.currentStyle) val= who.currentStyle[str];
        else{
            var dv= document.defaultView || window;
            if(dv && dv.getComputedStyle){
                //str= str.dasher(true);
                val= dv.getComputedStyle(who,'').getPropertyValue(css);
            }
        }
    }
    return (val)? val: '';
}


function changeOpac(id, opacity) {
    var object = document.getElementById(id).style;
    object.opacity = (opacity / 100);
    object.MozOpacity = (opacity / 100);
    object.KhtmlOpacity = (opacity / 100);
    object.filter = "alpha(opacity=" + opacity + ")";
}
