document.write("<iframe id='ajaxIframe' name='ajaxIframe' style='display: none; '></iframe>");
document.write("<div id='blank' style='display: none; '></div>");
document.write("<div id='ajaxLoading' style='display: none; '><img src='images/ajax.gif' border='0' /></div>");

ajaxUnlockTimer = setTimeout("ajaxUnlock()", 1000);

function ajaxUnlock() {
	
	clearTimeout(ajaxUnlockTimer);

	if(typeof(tinyMCE) != "undefined") {
		if(tinyMCE.isLoaded) {
			setAndExecuteUnlock = true;
			jsPendingUnlock = true;
			setAndExecute();
			jsPendingClean();
		} else {
			ajaxUnlockTimer = setTimeout("ajaxUnlock()", 1000);
		}
	} else {
		setAndExecuteUnlock = true;
		jsPendingUnlock = true;
		setAndExecute();
		jsPendingClean();
	}

}


/* za poljubne ukaze */
var jsPendingDb = new Array(100);
var jsPendingNum = 0;
var jsPendingUnlock = false;

function jsPending(command) {
	
	var i = jsPendingNum;
	
	jsPendingDb[i] = command;
	jsPendingNum++;
	
}

function jsPendingClean() {
	for(i = 0; i < jsPendingNum; i++) {
		eval(jsPendingDb[i]);
	}
	jsPendingNum = 0;
}
/* za poljubne ukaze */



/* samo za ajax */
var setAndExecuteDb = new Array(100);
var setAndExecuteDbNum = 0;
var setAndExecuteUnlock = false;

function setAndExecutePending(divId, innerHTML) {
	
	var i = setAndExecuteDbNum;
	
	setAndExecuteDb[i] = new Array(2);
	setAndExecuteDb[i][0] = divId;
	setAndExecuteDb[i][1] = innerHTML;
	setAndExecuteDbNum++;
	
}

function setAndExecutePendingClean() {
	for(i = 0; i < setAndExecuteDbNum; i++) {
		setAndExecute(setAndExecuteDb[i][0], setAndExecuteDb[i][1], true);
	}
	setAndExecuteDbNum = 0;
}


function setAndExecute(divId, innerHTML, ignorePending)
{
	if(!setAndExecuteUnlock) {
		setAndExecutePending(divId, innerHTML)
	} else {
		
		if(setAndExecuteDbNum != 0 && !ignorePending) {
			setAndExecutePendingClean();
		}

		var div = document.getElementById(divId);
		if(div) {
			div.innerHTML = '<!-- improvizacija za script execute --><div style="display: none; ">dopolnilo</div>'+innerHTML;
			var x = div.getElementsByTagName("script"); 
			for(var i=0; i < x.length; i++) {
				eval(x[i].text);
			}
			// balloontip
			//initalizetooltip();
		}

	}
   
}
/* samo za ajax */


function createRequestObject(){

	var req;
	
	if(window.XMLHttpRequest) {
		//For Firefox, Safari, Opera
		req = new XMLHttpRequest();
	} else if(window.ActiveXObject){
		//For IE 5+
		req = new ActiveXObject("Microsoft.XMLHTTP");
	} else {
		//Error for an old browser
		alert('Your browser is not IE 5 or higher, or Firefox or Safari or Opera'); 
	}
	
	return req;
	
}

//Make the XMLHttpRequest Object
var http=new Array()

function ustvariObject() {
	var i;
	
	i = http.length;
	
	http[i] = createRequestObject();
	
	return i;
}


function ajaxFile(url, divID, form, pomoznoOknoNaslov, pomoznoOknoSirina) {
	
	if(!document.getElementById("ajaxIframe")) {
		alert("ajaxIframe ne obstaja, ustvari ga z display: none;");
	} else {
		form.method = 'post';
		form.target = 'ajaxIframe';
		form.action = url;
		form.enctype = 'multipart/form-data';
		
		document.getElementById("ajaxIframe").onload = function() {
			ajaxPomoznoOkno(divID, pomoznoOknoNaslov, pomoznoOknoSirina);
			if(document.getElementById(divID)) {
				document.getElementById(divID).innerHTML = document.getElementById("ajaxIframe").contentDocument.body.innerHTML;
			}
		};
	}
	
	return true;
	
}

function ajaxPost(url, divID, form, pomoznoOknoNaslov, pomoznoOknoSirina) {
	
	ajax('POST', url, divID, pomoznoOknoNaslov, pomoznoOknoSirina, form);
	
	return false;
	
}

function ajaxGet(url, divID, pomoznoOknoNaslov, pomoznoOknoSirina) {
	
	ajax('GET', url, divID, pomoznoOknoNaslov, pomoznoOknoSirina);
	
}



function ajax(method, url, divID, pomoznoOknoNaslov, pomoznoOknoSirina, form) {
	
	var params = "";
	var i;
	
	i = ustvariObject();
	
	
	if(url.indexOf('&ajax=1') == -1 && url.indexOf('&ajax=0') == -1) {
		if(substr(url, -4) == ".php" || substr(url, -5) == ".html" || substr(url, -4) == ".htm") {
			url = url + '?ajax=1'
		} else {
			url = url + '&ajax=1'
		}
		
	}

	http[i].divID = divID;
	http[i].pomoznoOknoNaslov = pomoznoOknoNaslov;
	http[i].pomoznoOknoSirina = pomoznoOknoSirina;

	if(method == 'get' || method == 'GET' || method == 'post' || method == 'POST') {

		http[i].open(method,url,true);
		if(method == 'POST' || method == 'post') {
			form.method = 'post';
			params = miniajax.serialize(form);
			http[i].setRequestHeader("Content-type", "application/x-www-form-urlencoded");
			http[i].setRequestHeader("Content-length", params.length);
			http[i].setRequestHeader("Connection", "close");
			
		} else {
			params = null;
		}

		http[i].onreadystatechange = handleResponse;
		http[i].send(params);
		if(divID == 'pomoznoOkno' || isOpenedPomoznoOkno()) {
			document.getElementById('ajaxLoading').style.display = 'block';
		} else {
			if(document.getElementById('ajaxLoadingKoledar')) {
				document.getElementById('ajaxLoadingKoledar').style.display = 'block';
			} else {
				document.getElementById('ajaxLoading').style.display = 'block';
			}
		}
		
	}
	
}




function handleResponse(){
	
	if(this.readyState == 4 && this.status == 200){
		var response = this.responseText;
		if(response){
			if(typeof(this.divID) != "undefined") {
		
				ajaxPomoznoOkno(this.divID, this.pomoznoOknoNaslov, this.pomoznoOknoSirina);		
				setAndExecute(this.divID, response);
				
			}
		}
		
		
		
	}
	dcAjaxResize();
	if(typeof(dcAjaxResize) != "undefined" ) {
		dcAjaxResize();
	}
	
	if(document.getElementById('ajaxLoading')) {
		document.getElementById('ajaxLoading').style.display = 'none';
	}
	
}


function ajaxPomoznoOkno(divID, pomoznoOknoNaslov, pomoznoOknoSirina) {
	
	if(divID == 'pomoznoOkno') {
		if(typeof(pomoznoOknoNaslov) != "undefined" || pomoznoOknoNaslov != null) { 
			document.getElementById('awtlTitle').innerHTML = pomoznoOknoNaslov; 
		} else {
			document.getElementById('awtlTitle').innerHTML = '';
		}
		if(typeof(pomoznoOknoSirina) != "undefined" || pomoznoOknoSirina != null) { 
			getEleChil(document.getElementById("admWinLogin"))[2].style.width = pomoznoOknoSirina+'px';
		} else {
			getEleChil(document.getElementById("admWinLogin"))[2].style.width = '900px';
		}
		
		controlAdmWindow(true);;
		
		clearTimeout(document.pomoznoOknoClose);
	}
	
	if(divID == 'pomoznoOkno' || divID == 'userInfo' || divID == 'infoAjax' || divID == 'adEditAdd' || divID == 'slideshowEditAdd' || divID == 'flashSlideshowEditAdd' || divID == 'adEditAdd') {
		setTimeout("controlAdminObjects();", 100);
	}
	
	
	
}



function $(e){if(typeof e=='string')e=document.getElementById(e);return e};
function collect(a,f){var n=[];for(var i=0;i<a.length;i++){var v=f(a[i]);if(v!=null)n.push(v)}return n};

miniajax={};
miniajax.x=function(){try{return new ActiveXObject('Msxml2.XMLHTTP')}catch(e){try{return new ActiveXObject('Microsoft.XMLHTTP')}catch(e){return new XMLHttpRequest()}}};
miniajax.serialize=function(f){var g=function(n){return f.getElementsByTagName(n)};var nv=function(e){if(e.name)return encodeURIComponent(e.name)+'='+encodeURIComponent(e.value);else return ''};var i=collect(g('input'),function(i){if((i.type!='radio'&&i.type!='checkbox')||i.checked)return nv(i)});var s=collect(g('select'),nv);var t=collect(g('textarea'),nv);return i.concat(s).concat(t).join('&');};
miniajax.send=function(u,f,m,a){var x=miniajax.x();x.open(m,u,true);x.onreadystatechange=function(){if(x.readyState==4)f(x.responseText)};if(m=='POST')x.setRequestHeader('Content-type','application/x-www-form-urlencoded');x.send(a)};
miniajax.get=function(url,func){miniajax.send(url,func,'GET')};
miniajax.gets=function(url){var x=miniajax.x();x.open('GET',url,false);x.send(null);return x.responseText};
miniajax.post=function(url,func,args){miniajax.send(url,func,'POST',args)};
miniajax.update=function(url,elm){var e=$(elm);var f=function(r){e.innerHTML=r};miniajax.get(url,f)};
miniajax.submit=function(url,elm,frm){var e=$(elm);var f=function(r){e.innerHTML=r};miniajax.post(url,f,miniajax.serialize(frm))};


function substr( f_string, f_start, f_length ) {
    // http://kevin.vanzonneveld.net
    // +     original by: Martijn Wieringa
    // +     bugfixed by: T.Wild
    // +      tweaked by: Onno Marsman
    // *       example 1: substr('abcdef', 0, -1);
    // *       returns 1: 'abcde'
    // *       example 2: substr(2, 0, -6);
    // *       returns 2: ''
 
    f_string += '';
 
    if(f_start < 0) {
        f_start += f_string.length;
    }
 
    if(f_length == undefined) {
        f_length = f_string.length;
    } else if(f_length < 0){
        f_length += f_string.length;
    } else {
        f_length += f_start;
    }
 
    if(f_length < f_start) {
        f_length = f_start;
    }
 
    return f_string.substring(f_start, f_length);
}

