function $(i){
	return document.getElementById(i);
};

var Refresh = {

	config  : null,
	event   : null,
	counter : 0,

	conf : function(config){
		this.config = config;
	},

	init : function(){
		if(window.addEventListener) window.addEventListener('load', function(){ Refresh.start(); }, false);
		else if(window.attachEvent) window.attachEvent('onload', function(){ Refresh.start(); });
		else window['onload'] = function(){ Refresh.start(); }
	},

	start : function(){
		Refresh.stop();
		if(parseInt(Refresh.config.interval) > 0){
			Refresh.event = window.setInterval("Refresh.tick();", 1000);
			this.counter = 0;
		}
	},

	stop : function(){
		try{
			window.clearInterval(this.event);
			this.event = null;
			$('time_refresh').innerHTML = '';
		}catch(e){}
	},

	setInterval : function(interval){
		this.stop();
		this.config.interval = parseInt(interval);
		this.start();
	},

	getInterval : function(){
		return parseInt(this.config.interval);
	},

	tick : function(){
		this.counter++;
		var interval = this.getInterval();
		if(this.counter % interval == 0)
			this.update();
		else
			$('time_refresh').innerHTML = 'Aktualizacja za: ' + parseInt(interval - (this.counter % interval)) + ' sekund.';
	},
	
	TimeOutRefresh : function(er){
		Refresh.restart();					
							
		/*if(document.getElementById('refTempTimeout')){
			var obj = document.getElementById('refTempTimeout');
			var temp = obj.parentNode;
			temp.removeChild(obj);
		}	
		if(er){						
		var element = document.createElement('span');
		element.innerHTML = "Nie można pobrać wyników";
		element.setAttribute('id', 'refTempTimeout');
		document.getElementById('refresh').appendChild(element);
		}	*/	
	},

	update : function(){
		this.stop();		
		if(this.config.layout == '3'){
			switch(this.config.page){
				case '0' :
					var _parameters = {'layout' : 'ajax'}
					if(new String(this.config.tab) != '') {
						_parameters['zakladka'] = this.config.tab;						
						if(new String(this.config.order) != '')
						_parameters['order'] = this.config.order;
						if(new String(this.config.asceding) != '')
						_parameters['asceding'] = this.config.asceding;
						if(new String(this.config.news_cat_id) != '')
						_parameters['news_cat_id'] = this.config.news_cat_id;
						if(new String(this.config.cl) != '')
						_parameters['cl'] = this.config.cl;
						_parameters['page'] = 'fr';	}			
					advAJAX.get({
						url : 'ajax.jsp',
						parameters : _parameters,
						timeout : 10000,						
						onSuccess : function(obj){ 							
							$('gr01').innerHTML = obj.responseText;	
							SortAfterRequest.sortTables();
							ts_resortTableSort2();
							
							Refresh.TimeOutRefresh();								
						},
						onTimeout : function(){ 						
							Refresh.TimeOutRefresh('er');						
						},
						onError : function(){ 						
							Refresh.TimeOutRefresh('er');							
						}					
					});
					_parameters['page'] = 'indexfr';			
					advAJAX.get({
						url : 'ajax.jsp',
						parameters : _parameters,
						timeout : 10000,						
						onSuccess : function(obj){ 					
							$('indexgr01').innerHTML = obj.responseText; 
							SortAfterRequest.sortTables();
							ts_resortTableSort2();
							
							Refresh.TimeOutRefresh();								
						},
						onTimeout : function(){ 						
							Refresh.TimeOutRefresh('er');						
						},
						onError : function(){ 						
							Refresh.TimeOutRefresh('er');							
						}	
					});

					this._awaitingResponses = 2;
				break;
				case 'notowania' :
					var _parameters = {'layout' : 'ajax', 'action' : 'refresh'};
					if(new String(this.config.tab) != '')
						_parameters['zakladka'] = this.config.tab;

					_parameters['page'] = 'or';
					advAJAX.get({
						url : 'ajax.jsp',
						parameters : _parameters,
						timeout : 10000,
						onSuccess : function(obj){ 
							$('gr01').innerHTML = obj.responseText;
							SortAfterRequest.sortTables();
							ts_resortTableSort2();
							
							Refresh.TimeOutRefresh();								
						},
						onTimeout : function(){ 						
							Refresh.TimeOutRefresh('er');						
						},
						onError : function(){ 						
							Refresh.TimeOutRefresh('er');							
						}	
					});

					this._awaitingResponses = 1;
				break;
				case 'statystyki' :
					var _parameters = {'layout' : 'ajax', 'action' : 'refresh'};
					if(new String(this.config.tab) != '')
						_parameters['zakladka'] = this.config.tab;

					_parameters['page'] = 'statystyki';
					advAJAX.get({
						url : 'ajax.jsp',
						parameters : _parameters,
						timeout : 10000,
						onSuccess : function(obj){ 
							$('gr01').innerHTML = obj.responseText;
							SortAfterRequest.sortTables();
							ts_resortTableSort2();
							
							Refresh.TimeOutRefresh();								
						},
						onTimeout : function(){ 						
							Refresh.TimeOutRefresh('er');						
						},
						onError : function(){ 						
							Refresh.TimeOutRefresh('er');							
						}	
					});

					this._awaitingResponses = 1;
				break;
			}
		}else if(this.config.layout == 'customerRating'){								  
			if(this.config.page == 0){
				var _parameters = {'layout' : 'ajax', 'action' : 'refresh'};
				if(new String(this.config.tab) != '')
					_parameters['zakladka'] = this.config.tab;
					_parameters['page'] = 'customerRating';
				advAJAX.get({
					url : 'ajax.jsp',
					parameters : _parameters,
					timeout : 10000,
					onSuccess : function(obj){ 
						$('cr01').innerHTML = obj.responseText;
						SortAfterRequest.sortTables(); 
						ts_resortTableSort2('customerRating');
						
						Refresh.TimeOutRefresh();								
					},
					onTimeout : function(){ 						
						Refresh.TimeOutRefresh('er');						
					},
					onError : function(){ 						
						Refresh.TimeOutRefresh('er');							
					}	
				});
				this._awaitingResponses = 1;
			}
		}else if(this.config.layout == 'ispagapplet'){								  
			if(this.config.page == 0){
				var _parameters = {'layout' : 'ajax', 'action' : 'refresh'};
				if(new String(this.config.tab) != '')					
					_parameters['page'] = 'ispagapplet';
				advAJAX.get({
					url : '/ajax.jsp',
					parameters : _parameters,
					timeout : 10000,
					onSuccess : function(obj){ 
						$('ispagAppletPlace').innerHTML = obj.responseText;
						/* SortAfterRequest.sortTables(); */
						
						Refresh.TimeOutRefresh();								
					},
					onTimeout : function(){ 						
						Refresh.TimeOutRefresh('er');						
					},
					onError : function(){ 						
						Refresh.TimeOutRefresh('er');							
					}	
				});
				this._awaitingResponses = 1;
			}
		}else if(this.config.layout == 'intraispagapplet'){								  
			if(this.config.page == 0){
				var _parameters = {'layout' : 'ajax', 'action' : 'refresh'};
				if(new String(this.config.tab) != '')
					_parameters['page'] = 'intraispagapplet';
				advAJAX.get({
					url : '/ajax.jsp',
					parameters : _parameters,
					timeout : 10000,
					onSuccess : function(obj){ 
						$('intraIspagAppletPlace').innerHTML = obj.responseText;
						/* SortAfterRequest.sortTables(); */
						
						Refresh.TimeOutRefresh();								
					},
					onTimeout : function(){ 						
						Refresh.TimeOutRefresh('er');						
					},
					onError : function(){ 						
						Refresh.TimeOutRefresh('er');							
					}	
				});
				this._awaitingResponses = 1;
			}
		}
	},

	restart : function(){
		this._awaitingResponses--;
		if(this._awaitingResponses > 0) return;
		else this.start();
	}

};

function sendMeetApp(oForm) {
    advAJAX.post({ url: "/meeting.jsp", form : oForm,
    onLoading  : function() {document.getElementById('loader').style.visibility = "visible";},
    onComplete : function() {document.getElementById('loader').style.visibility = "hidden";},
    onSuccess : function(obj) {
    	
    	var resp1 = obj.responseText.indexOf('<http>');
        var respend1 = obj.responseText.indexOf('</http>');
        var data1 = obj.responseText.substring(resp1+6,respend1);
        
        if( data1.indexOf('http://')!=-1 ){
        	window.location.replace(data1);
        } else {
	        var resp = obj.responseText.indexOf('<endresp>');
	        var respend = obj.responseText.indexOf('<endresp/>');
	        var data = obj.responseText.substring(resp,respend);
	        document.getElementById('loader1').innerHTML = data;
	        document.getElementById('loader2').innerHTML = data;
	                                
	        if( data.indexOf('Dzi\u0119kujemy !')!=-1 ){
	            cleanAppForm(oForm);
	            document.getElementById('captchaImg').innerHTML="";
	        	document.getElementById('captchaImg').innerHTML="<img src=\"captcha.do\" alt=\"\"/>";
	            	
	        }
        }
    },
    onError : function(obj) { alert("Error: " + obj.responseText); }
    });
};

function sendQuestionSubmit(act) {
	document.getElementById("stepAction").value=act;
	document.getElementById("stepForm").submit();
};

function cleanAppForm(obj) {
    if(obj!=null){
        with (obj)
            for (var nr = 0; nr < elements.length; nr++){
                if(elements[nr]["id"] != 'sendApp' && elements[nr]["type"]!='hidden' && elements[nr]["type"]!='select-one'){
                        elements[nr]["value"] = "";
                }else if( elements[nr]["type"] == 'select-one' ){
                        elements[nr].selectedIndex = 0;
                }
        }
    }
};


function getCookie(name) { 
    if (document.cookie != "") { 
    var toCookie = document.cookie.split("; ");
        for (i=0; i<toCookie.length; i++) {  
            var nameCookie = toCookie[i].split("=")[0]; 
            var valueCookie = toCookie[i].split("=")[1];
            if (nameCookie == name) return unescape(valueCookie)
        }
    }
};

