// JavaScript Document
function menu_switch(id){
    for (var i = 1; i < 8; i++){
		//document.getElementById('menu0'+i).style.background="url(img/button_off.png)"; 
		if (i==1) document.getElementById('menu0'+i+'img').src="img/menu_wiadomosci_off.png";
		if (i==2) document.getElementById('menu0'+i+'img').src="img/menu_klub_off.png";
		if (i==3) document.getElementById('menu0'+i+'img').src="img/menu_rozgrywki_off.png";				
		if (i==4) document.getElementById('menu0'+i+'img').src="img/menu_media_off.png";		
		if (i==5) document.getElementById('menu0'+i+'img').src="img/menu_obiekty_off.png";		
		if (i==6) document.getElementById('menu0'+i+'img').src="img/menu_galeria_off.png";		
		if (i==7) document.getElementById('menu0'+i+'img').src="img/menu_kontakt_off.png";		
	}
	var selected = document.getElementById('menu'+id+'img');
		//if (id=='01') selected.style.background="url(img/menu_wiadomosci_on.png)"; 
		if (id=='01') selected.src="img/menu_wiadomosci_on.png";
		if (id=='02') selected.src="img/menu_klub_on.png";
		if (id=='03') selected.src="img/menu_rozgrywki_on.png";				
		if (id=='04') selected.src="img/menu_media_on.png";		
		if (id=='05') selected.src="img/menu_obiekty_on.png";		
		if (id=='06') selected.src="img/menu_galeria_on.png";		
		if (id=='07') selected.src="img/menu_kontakt_on.png";	

}

function getHeight(name){
if(document.getElementById(name)){
	var wys = document.getElementById(name).clientHeight;
	var wys_container = document.getElementById("main").clientHeight;
	if(wys > wys_container){
		//document.getElementById("main").style.height = (wys+20)+"px";
		alert(name+"->"+wys+" main->"+wys_container);
	}
}
//alert("brak");
}

function switchWindow(name,img_id,alt_img,container){
	var el     = document.getElementById(name);
	var el_img = document.getElementById(img_id);
	var el_img_alt = document.getElementById(alt_img);

	if(el.style.display == 'block'){
		el.style.display = 'none';
		el_img_alt.style.color = '#DDDDDD';
		el_img.setAttribute('src', 'img/icon_close.png');
		document.getElementById(container).style.background = 'black';
		//break;
	}else{
		el.style.display = 'block';
		el_img_alt.style.color = '#969696';
		el_img.setAttribute('src', 'img/icon_open.png');
		document.getElementById(container).style.background = 'black url(img/box_logo.jpg) no-repeat bottom right';
		//break;
	}
	//pilka();
}

function pokaz_zaw($img, $id){
var name = 'zawodnik_info_'+$id;
document.getElementById(name).style.display = 'block';
document.getElementById(name).innerHTML = "<div style=\"background: #DA251C; font-family: Verdana; font-size: 10px; font-weight: bold; color: White; width: 100%; text-align: left; line-height: 15px;\">&nbsp;Karta Zawodnika</div><div style=\"height: 160px; padding: 10px;\"><img src='img/zawodnicy/"+$id+"/"+$img+"'></div><div style=\"font-family: Verdana; font-size: 10px; font-weight: bold; color: #DA251C; text-align: right; line-height: 20px;\"><span style=\"cursor: pointer;\" onClick=\"document.getElementById('"+name+"').style.display = 'none';\">&laquo; zamknij&nbsp;</span></div>";
}

function show_video(file,title){
	document.getElementById('okno_video_container').style.display='block';
	
	document.getElementById('okno_video_container').innerHTML = '<div id="okno_video"><div id="okno_video_handle" onMouseover="this.style.cursor=\'move\'">&nbsp;'+title+'</div><div id="okno_video_preview"></div><div id="okno_video_footer"><img class="png" src="img/close.png" onClick="hide_video();" onMouseover="this.style.cursor=\'pointer\'"></div></div><div id="okno_video_back"><img class="png" src="img/video_back.png" width="688" height="579"></div>';
	//document.getElementById('okno_video_container').innerHTML = '<div id="okno_video"><div id="okno_video_handle" onMouseover="this.style.cursor=\'move\'">&nbsp;'+title+'</div><div id="okno_video_preview"></div><div id="okno_video_footer"><img class="png" src="img/close.png" onClick="hide_video();" onMouseover="this.style.cursor=\'pointer\'"></div></div>';
	//flowplayer("player", "modules/flowplayer/flowplayer-3.0.7.swf");
	var s1 = new SWFObject('modules/jwplayer/player.swf','player','640','480','9');
	s1.addParam('allowfullscreen','true');
	s1.addParam('allowscriptaccess','always');
	s1.addParam('flashvars','file=../../'+file+'&autostart=true&logo=modules/jwplayer/ico.png&image=modules/jwplayer/sound.png');
	//s1.addParam('flashvars','autostart=true');
	//s1.addParam('flashvars','image=video.flv');
	s1.write('okno_video_preview');
	var theHandle = document.getElementById("okno_video_handle");
	var theRoot = document.getElementById("okno_video_container");
	if(document.getElementById("videoklubu")){
		var  STop = document.getElementById("videoklubu").offsetTop;
	}else{
		var  STop = 100;
	}
	//alert(STop);
	document.getElementById("okno_video_container").style.top= (STop-50)+'px';
	Drag.init(theHandle, theRoot,150, 50,-1,-1, 0,-1);
	
}

function hide_video(){
	document.getElementById('player').sendEvent("STOP");
	document.getElementById('okno_video_container').innerHTML = null;
	document.getElementById('okno_video_container').style.display='none'; 
}

function show(name){
	for(var i=1;i<11;i++){
		if(document.getElementById(i+'_tabela_full'))
			document.getElementById(i+'_tabela_full').style.display = 'none';
	}
	var el     = document.getElementById(name);
	el.style.display = 'block';
}

function hide(name){
	var el     = document.getElementById(name);
	el.style.display = 'none';

}

function GetContent(type,name,year) {

    advAJAX.get({
    url: "modules/submodules/materialy.php?ajax=1&year="+year+"&type="+type,
    onSuccess : function(obj) { 
    	
		document.getElementById(name).innerHTML = obj.responseText;
		//pilka();

    },
    
    onError : function(obj) {
    	ErrorReport("GetContent",obj.status);
    },
    
    
    onLoading : function(obj){
		document.getElementById(type+"_loading").style.display = 'block';   
    },
    onComplete : function(obj){
		document.getElementById(type+"_loading").style.display = 'none'; 
    }
    
    });

} 


function otworz_okno(adres, szer, wys) {

	var szer = szer+20;
	var wys = wys+20;
	
	noweOkno = window.open(adres, '', 'menubar=no, toolbar=no, location=no, scrollbars=no, resizable=no, status=no, width='+szer+', height='+wys+'');
	//window.open(adres, "Zdjęcie", 'menubar=no, toolbar=no, location=no, scrollbars=no, resizable=no, status=no, width='+szer+', height='+wys+'');
	
}



function sonda_check(id) {
	var all_radio=document.getElementsByName('RadioGroup1');
	var all_radio_lenght = all_radio.length;
    var sel = 0;
	var good = 0;
	var str = new String(window.location);
	var str1 = str.substr(0,15);
	var str2 = str.substr(0,19);
	//alert(str1);
	//alert(str2);	

	if ((str1=='http://ksolivia') || (str2=='http://www.ksolivia')){
		good = 1;
	}
	
	for (var c = 0; c < all_radio_lenght; c++){
    	if(all_radio.item(c).checked == true){
			var odpowiedz = all_radio.item(c).value;
			sel = 1;
		}
    }

	if(sel == 0){
		alert("Proszę wybrać opcję");
		return false;		
	}

if(good == 1){
    advAJAX.get({
    url: "modules/submodules/sonda_check.php?action=vote&id="+id+"&odpowiedz="+odpowiedz,
    onSuccess : function(obj) { 
    	if(obj.responseText != ''){
			alert(obj.responseText);
		}else{
			alert("Głos przyjęty!");
		}
    },
    
    onError : function(obj) {
    
    }
 
    });
} else {
	alert('Niepoprawny adres IP. Pytania proszę kierować na adres: webmaster@ksolivia.eu');
}

} 


function sonda_show(id) {


    advAJAX.get({
    url: "modules/submodules/sonda_check.php?action=show&id="+id,
    onSuccess : function(obj) { 

		document.getElementById('sonda_wyniki').style.display = 'block';
		document.getElementById('sonda_wyniki').innerHTML = obj.responseText;
		 
    },
    
    onError : function(obj) {
    
    }
 
    });

} 


function MOver(id){
	document.getElementById(id).style.visibility = 'visible';
	document.getElementById(id+"_reflection").style.visibility = 'visible';
	//alert('bla');
	//this.style.border = '1px solid White';
}

function MOut(id){
	document.getElementById(id).style.visibility = 'hidden';
	document.getElementById(id+"_reflection").style.visibility = 'hidden';
}

function MUp(img){

    advAJAX.get({
    url: "test2.php?action=img_size&pic=img/galeria/"+img,
    onSuccess : function(obj) { 
		document.getElementById("galeria_zoom").style.display = 'block';
		var prevb = document.getElementById("galeria_zoom_prev_container");
		var nextb = document.getElementById("galeria_zoom_next_container");
		//document.getElementById(name).innerHTML = obj.responseText;
		//alert(obj.responseText);
		var onerow = document.getElementById("onerow").value;
		var onerow = onerow.split("*");
		
		for (var nr = 0; nr < (onerow.length-1); nr++) {
			var temp = onerow[nr].split("#");
			var onerow_pic = temp[0];
			//var onerow_autor = temp[1];
			
			if(onerow_pic == img){
				if(nr == (onerow.length-2)){
					var next = onerow[0].split("#");
					var next_f = next[0];
				}else{
					var next = onerow[nr+1].split("#");
					var next_f = next[0];
				}
				
				if(nr == 0){
					var prev = onerow[(onerow.length-2)].split("#");
					var prev_f = prev[0];
				}else{
					var prev = onerow[nr-1].split("#");
					var prev_f = prev[0];
				}
				//var temp = onerow[nr].split("#");
				var onerow_autor = temp[1];
				var onerow_opis = temp[2];
			}
		}
		
		var size = obj.responseText.split("%");

		//var size = dane[0].split("%");
		//var prevnext = dane[1].split("%");		
		var width = parseInt(size[0]);
		var height = parseInt(size[1]);
		//var prev = prevnext[1];
		//var next = prevnext[0];
//		var width = 500;
//		var height = 500;
		//alert(obj.responseText);
		
		document.getElementById("galeria_zoom_img").style.width = width+"px";
		document.getElementById("galeria_zoom_img").style.height = height+"px";
		document.getElementById("galeria_zoom_img").innerHTML = '<img src="img/galeria/'+img+'">';
		document.getElementById("galeria_zoom_info").style.width = (width-100)+"px";

		document.getElementById("galeria_zoom_info_title").innerHTML = onerow_opis;
		document.getElementById("galeria_zoom_info_author").innerHTML = "fot. "+onerow_autor;
		//document.getElementById("galeria_zoom_prev").setAttribute('onMouseUp', 'MUp("'+prev_f+'")');
		//document.getElementById("galeria_zoom_next").setAttribute('onMouseUp', 'MUp("'+next_f+'")');
		//prevb.innerHTML = MUp(prev_f);
		prevb.innerHTML = "<div id=\"galeria_zoom_prev\" onMouseOver=\"alpha100(this.id)\" onMouseOut=\"alpha50(this.id)\" onMouseDown=\"MUp('"+prev_f+"')\" title=\"Poprzedni\">&laquo;</div>";
		nextb.innerHTML = "<div id=\"galeria_zoom_next\" onMouseOver=\"alpha100(this.id)\" onMouseOut=\"alpha50(this.id)\" onMouseDown=\"MUp('"+next_f+"')\" title=\"Następny\">&raquo;</div>";
		//if (navigator.appName != "Microsoft Internet Explorer")
		//alert(navigator.appName+'<>'+navigator.userAgent);
		
		
		var theHandle = document.getElementById("galeria_zoom_img");
		var theRoot = document.getElementById("galeria_zoom");
		Drag.init(theHandle, theRoot, 150, 50, -1, -1, 0, -1);
		
		//var img = document.getElementById("galeria_zoom_img").offsetWidth;

		//alert(size[0]);
			 
    },
    
    onError : function(obj) {
   		ErrorReport("MUp",obj.status);
    }
 
    });

} 

function close_img(){
	document.getElementById("galeria_zoom").style.display = 'none';
}
function alpha100(id){
	document.getElementById(id).style.opacity = 1;
	document.getElementById(id).style.filter = 'alpha(opacity = 100)';
}
function alpha50(id){
	document.getElementById(id).style.opacity = 0.5;
	document.getElementById(id).style.filter = 'alpha(opacity = 50)';
}
function alpha10(id){
	document.getElementById(id).style.opacity = 0.1;
	document.getElementById(id).style.filter = 'alpha(opacity = 10)';
}









/*
 * AdvancedAJAX 1.1.2
 * (c) 2005-2006 Lukasz Lach
 *  mail: anakin@php5.pl
 *  www:  http://advajax.anakin.us/
 *        http://anakin.us/
 * http://creativecommons.org/licenses/LGPL/2.1/
 *
 */

function advAJAX() {

    var obj = new Object();

    obj.url = window.location.href;
    obj.method = "GET";
    obj.parameters = new Object();
    obj.jsonParameters = new Object();
    obj.headers = new Object();
    obj.async = true;
    obj.mimeType = "text/xml";
    obj.username = null;
    obj.password = null;
    obj.form = null;
    obj.disableForm = true;

    obj.unique = true;
    obj.uniqueParameter = "_uniqid";

    obj.requestDone = false;
    obj.queryString = "";
    obj.responseText = null;
    obj.responseXML = null;
    obj.status = null;
    obj.statusText = null;
    obj.aborted = false;
    obj.timeout = 0;
    obj.retryCount = 0;
    obj.retryDelay = 1000;
    obj.tag = null;
    obj.group = null;
    obj.progressTimerInterval = 50;

    obj.xmlHttpRequest = null;

    obj.onInitialization = null;
    obj.onFinalization = null;
    obj.onReadyStateChange = null;
    obj.onLoading = null;
    obj.onLoaded = null;
    obj.onInteractive = null;
    obj.onComplete = null;
    obj.onProgress = null;
    obj.onSuccess = null;
    obj.onFatalError = null;
    obj.onError = null;
    obj.onTimeout = null;
    obj.onRetryDelay = null;
    obj.onRetry = null;
    obj.onGroupEnter = null;
    obj.onGroupLeave = null;

    obj.createXmlHttpRequest = function() {

        if (typeof XMLHttpRequest != "undefined")
            return new XMLHttpRequest();
        var xhrVersion = [ "MSXML2.XMLHttp.5.0", "MSXML2.XMLHttp.4.0","MSXML2.XMLHttp.3.0", "MSXML2.XMLHTTP.6.0",
                "MSXML2.XMLHttp","Microsoft.XMLHttp" ];
        for (var i = 0; i < xhrVersion.length; i++) {
            try {
                var xhrObj = new ActiveXObject(xhrVersion[i]);
                return xhrObj;
            } catch (e) { }
        }
        obj.raiseEvent("FatalError");
        return null;
    };

    obj._oldResponseLength = null;
    obj._progressTimer = null;
    obj._progressStarted = navigator.userAgent.indexOf('Opera') == -1;
    obj._onProgress = function() {

        if (typeof obj.onProgress == "function" &&
            typeof obj.xmlHttpRequest.getResponseHeader == "function") {
            var contentLength = obj.xmlHttpRequest.getResponseHeader("Content-length");
            if (contentLength != null && contentLength != '') {
                var responseLength = obj.xmlHttpRequest.responseText.length;
                if (responseLength != obj._oldResponseLength) {
                    obj.raiseEvent("Progress", obj, responseLength, contentLength);
                    obj._oldResponseLength = obj.xmlHttpRequest.responseText.length;
                }
            }
        }
        if (obj._progressStarted) return;
        obj._progressStarted = true;
        var _obj = this;
        this.__onProgress = function() {
            obj._onProgress();
            obj._progressTimer = window.setTimeout(_obj.__onProgress, obj.progressTimerInterval);
        }
        _obj.__onProgress();
    }

    obj._onInitializationHandled = false;
    obj._initObject = function() {

        if (obj.xmlHttpRequest != null) {
            delete obj.xmlHttpRequest["onreadystatechange"];
            obj.xmlHttpRequest = null;
        }
        if ((obj.xmlHttpRequest = obj.createXmlHttpRequest()) == null)
            return null;
        if (typeof obj.xmlHttpRequest.overrideMimeType != "undefined")
            obj.xmlHttpRequest.overrideMimeType(obj.mimeType);
        obj.xmlHttpRequest.onreadystatechange = function() {

            if (obj == null || obj.xmlHttpRequest == null)
                return;
            obj.raiseEvent("ReadyStateChange", obj, obj.xmlHttpRequest.readyState);
            obj._onProgress();
            switch (obj.xmlHttpRequest.readyState) {
                case 1: obj._onLoading(); break;
                case 2: obj._onLoaded(); break;
                case 3: obj._onInteractive(); break;
                case 4: obj._onComplete(); break;
            }
        };
        obj._onLoadingHandled =
            obj._onLoadedHandled =
            obj._onInteractiveHandled =
            obj._onCompleteHandled = false;
    };

    obj._onLoading = function() {

        if (obj._onLoadingHandled)
            return;
        if (!obj._retry && obj.group != null) {
            if (typeof advAJAX._groupData[obj.group] == "undefined")
                advAJAX._groupData[obj.group] = 0;
            advAJAX._groupData[obj.group]++;
            if (typeof obj.onGroupEnter == "function" && advAJAX._groupData[obj.group] == 1)
                obj.onGroupEnter(obj);
        }
        obj.raiseEvent("Loading", obj);
        obj._onLoadingHandled = true;
    };
    obj._onLoaded = function() {

        if (obj._onLoadedHandled)
            return;
        obj.raiseEvent("Loaded", obj);
        obj._onLoadedHandled = true;
    };
    obj._onInteractive = function() {

        if (obj._onInteractiveHandled)
            return;
        obj.raiseEvent("Interactive", obj);
        obj._onInteractiveHandled = true;
        if (!obj._progressStarted)
            obj._onProgress();
    };
    obj._onComplete = function() {

        if (obj._onCompleteHandled || obj.aborted)
            return;
        if (obj._progressStarted) {
            window.clearInterval(obj._progressTimer);
            obj._progressStarted = false;
        }
        obj.requestDone = true;
        with (obj.xmlHttpRequest) {
            obj.responseText = responseText;
            obj.responseXML = responseXML;
            if (typeof status != "undefined")
                obj.status = status;
            if (typeof statusText != "undefined")
                obj.statusText = statusText;
        }
        obj.raiseEvent("Complete", obj);
        obj._onCompleteHandled = true;
        if (obj.status == 200)
            obj.raiseEvent("Success", obj); else
            obj.raiseEvent("Error", obj);
        delete obj.xmlHttpRequest['onreadystatechange'];
        obj.xmlHttpRequest = null;
        if (obj.disableForm)
            obj.switchForm(true);
        obj._groupLeave();
        obj.raiseEvent("Finalization", obj);
    };

    obj._groupLeave = function() {

        if (obj.group != null) {
            advAJAX._groupData[obj.group]--;
            if (advAJAX._groupData[obj.group] == 0)
                obj.raiseEvent("GroupLeave", obj);
        }
    };

    obj._retry = false;
    obj._retryNo = 0;
    obj._onTimeout = function() {

        if (obj == null || obj.xmlHttpRequest == null || obj._onCompleteHandled)
            return;
        obj.aborted = true;
        obj.xmlHttpRequest.abort();
        obj.raiseEvent("Timeout", obj);
        obj._retry = true;
        if (obj._retryNo != obj.retryCount) {
            obj._initObject();
            if (obj.retryDelay > 0) {
                obj.raiseEvent("RetryDelay", obj);
                startTime = new Date().getTime();
                while (new Date().getTime() - startTime < obj.retryDelay);
            }
            obj._retryNo++;
            obj.raiseEvent("Retry", obj, obj._retryNo);
            obj.run();
        } else {
            delete obj.xmlHttpRequest["onreadystatechange"];
            obj.xmlHttpRequest = null;
            if (obj.disableForm)
                obj.switchForm(true);
            obj._groupLeave();
            obj.raiseEvent("Finalization", obj);
        }
    };

    obj.run = function() {

        obj._initObject();
        if (obj.xmlHttpRequest == null)
            return false;
        obj.aborted = false;
        if (!obj._onInitializationHandled) {
            obj.raiseEvent("Initialization", obj);
            obj._onInitializationHandled = true;
        }
        if (obj.method == "GET" && obj.unique)
            obj.parameters[encodeURIComponent(obj.uniqueParameter)] =
            new Date().getTime().toString().substr(5) + Math.floor(Math.random() * 100).toString();
        if (!obj._retry) {
            for (var a in obj.parameters) {
                if (obj.queryString.length > 0)
                    obj.queryString += "&";
                if (typeof obj.parameters[a] != "object")
                    obj.queryString += encodeURIComponent(a) + "=" + encodeURIComponent(obj.parameters[a]); else {
                    for (var i = 0; i < obj.parameters[a].length; i++)
                        obj.queryString += encodeURIComponent(a) + "=" + encodeURIComponent(obj.parameters[a][i]) + "&";
                    obj.queryString = obj.queryString.slice(0, -1);
                }
            }
            for (var a in obj.jsonParameters) {
                var useJson = typeof [].toJSONString == 'function';
                if (obj.queryString.length > 0)
                    obj.queryString += "&";
                obj.queryString += encodeURIComponent(a) + "=";
                if (useJson)
                    obj.queryString += encodeURIComponent(obj.jsonParameters[a].toJSONString()); else
                    obj.queryString += encodeURIComponent(obj.jsonParameters[a]);
            }
            if (obj.method == "GET" && obj.queryString.length > 0)
                obj.url += (obj.url.indexOf("?") != -1 ? "&" : "?") + obj.queryString;
        }
        if (obj.disableForm)
            obj.switchForm(false);
        try {
            obj.xmlHttpRequest.open(obj.method, obj.url, obj.async, obj.username || '', obj.password || '');
        } catch (e) {
            obj.raiseEvent("FatalError", obj, e);
            return;
        }
        if (obj.timeout > 0)
            setTimeout(obj._onTimeout, obj.timeout);
        if (typeof obj.xmlHttpRequest.setRequestHeader != "undefined")
            for (var a in obj.headers)
                obj.xmlHttpRequest.setRequestHeader(encodeURIComponent(a), encodeURIComponent(obj.headers[a]));
        if (obj.method == "POST" && typeof obj.xmlHttpRequest.setRequestHeader != "undefined") {
            obj.xmlHttpRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
            obj.xmlHttpRequest.send(obj.queryString);
        } else if (obj.method == "GET")
            obj.xmlHttpRequest.send('');
    };

    obj.handleArguments = function(args) {

        if (typeof args.form == "object" && args.form != null) {
            obj.form = args.form;
            obj.appendForm();
        }
        for (a in args) {
            if (typeof obj[a] == "undefined")
                obj.parameters[a] = args[a]; else {
                if (a != "parameters" && a != "headers")
                    obj[a] = args[a]; else
                    for (b in args[a])
                        obj[a][b] = args[a][b];
            }
        }
        obj.method = obj.method.toUpperCase();
    };

    obj.switchForm = function(enable) {

        if (typeof obj.form != "object" || obj.form == null)
            return;
        with (obj.form)
            for (var nr = 0; nr < elements.length; nr++)
                if (!enable) {
                    if (elements[nr]["disabled"])
                        elements[nr]["_disabled"] = true; else
                        elements[nr]["disabled"] = "disabled";
                } else
                    if (typeof elements[nr]["_disabled"] == "undefined")
                        elements[nr].removeAttribute("disabled");
    };

    obj.appendForm = function() {

        with (obj.form) {
            obj.method = getAttribute("method").toUpperCase();
            obj.url = getAttribute("action");
            for (var nr = 0; nr < elements.length; nr++) {
                var e = elements[nr];
                if (e.disabled)
                    continue;
                switch (e.type) {
                    case "text":
                    case "password":
                    case "hidden":
                    case "textarea":
                        obj.addParameter(e.name, e.value);
                        break;
                    case "select-one":
                        if (e.selectedIndex >= 0)
                            obj.addParameter(e.name, e.options[e.selectedIndex].value);
                        break;
                    case "select-multiple":
                        for (var nr2 = 0; nr2 < e.options.length; nr2++)
                            if (e.options[nr2].selected)
                                obj.addParameter(e.name, e.options[nr2].value);
                        break;
                    case "checkbox":
                    case "radio":
                        if (e.checked)
                            obj.addParameter(e.name, e.value);
                        break;
                }
            }
        }
    };

    obj.addParameter = function(name, value) {
        if (typeof obj.parameters[name] == "undefined")
            obj.parameters[name] = value; else
        if (typeof obj.parameters[name] != "object")
            obj.parameters[name] = [ obj.parameters[name], value ]; else
        obj.parameters[name][obj.parameters[name].length] = value;
    };
    obj.delParameter = function(name) {

        delete obj.parameters[name];
    };
    obj.raiseEvent = function(name) {
        var args = [];
        for (var i = 1; i < arguments.length; i++)
            args.push(arguments[i]);
        if (typeof obj["on" + name] == "function")
            obj["on" + name].apply(null, args);
        if (name == "FatalError")
            obj.raiseEvent("Finalization", obj);
    }

    if (typeof advAJAX._defaultParameters != "undefined")
        obj.handleArguments(advAJAX._defaultParameters);
    return obj;
}

advAJAX.get = function(args) {

    return advAJAX.handleRequest("GET", args);
};

advAJAX.post = function(args) {

    return advAJAX.handleRequest("POST", args);
};

advAJAX.head = function(args) {

    return advAJAX.handleRequest("HEAD", args);
};

advAJAX.submit = function(form, args) {

    if (typeof args == "undefined" || args == null)
        return -1;
    if (typeof form != "object" || form == null)
        return -2;
    var request = new advAJAX();
    args["form"] = form;
    request.handleArguments(args);
    return request.run();
};

advAJAX.assign = function(form, args) {

    if (typeof args == "undefined" || args == null)
        return -1;
    if (typeof form != "object" || form == null)
        return -2;
    if (typeof form["onsubmit"] == "function")
        form["_onsubmit"] = form["onsubmit"];
    form["advajax_args"] = args;
    form["onsubmit"] = function() {
        if (typeof this["_onsubmit"] != "undefined" && this["_onsubmit"]() === false)
            return false;
        if (advAJAX.submit(this, this["advajax_args"]) == false)
            return true;
        return false;
    }
    return true;
};

advAJAX.download = function(targetObj, url) {

    if (typeof targetObj == "string")
        targetObj = document.getElementById(targetObj);
    if (!targetObj)
        return -1;
    advAJAX.get({
        url: url,
        onSuccess : function(obj) {
            targetObj.innerHTML = obj.responseText;
        }
    });
};

advAJAX.scan = function() {

    var obj = document.getElementsByTagName("a");
    for (var i = 0; i < obj.length;) {
        if (obj[i].getAttribute("rel") == "advancedajax" && obj[i].getAttribute("href") !== null) {
            var url = obj[i].getAttribute("href");
            var div = document.createElement("div");
            div.innerHTML = obj[i].innerHTML;
            div.className = obj[i].className;
            var parent = obj[i].parentNode;
            parent.insertBefore(div, obj[i]);
            parent.removeChild(obj[i]);
            advAJAX.download(div, url);
        } else i++;
    }
};

advAJAX.handleRequest = function(requestType, args) {

    if (typeof args == "undefined" || args == null)
        return -1;
    var request = new advAJAX();
    window.advajax_obj = request;
    request.method = requestType;
    request.handleArguments(args);
    return request.run();
};

advAJAX._defaultParameters = new Object();
advAJAX.setDefaultParameters = function(args) {

    advAJAX._defaultParameters = new Object();
    for (a in args)
        advAJAX._defaultParameters[a] = args[a];
};

advAJAX._groupData = new Object();
