var lastImg = null;

function iframeHeight(){
	if(!(document.layers)){
		var doc=document,oe=doc.all?doc.all['ifra']:doc.getElementById('ifra');
		var cdoc=oe.all?document.ifra.document:oe.contentDocument;
		oe.height=cdoc.body.scrollHeight+115;
		cdoc.body.style.border='none';
	}
}

function imgSwap(ev,imgName) {
if (imgName != 0) {
	lastImg = ev.src;
	ev.src = imgName;
	}	
	else
	{
	ev.src = lastImg;
	}
}
function checkFields(newForm) {
	if (newForm.title.value == '') {
		alert('Brak tytułu');
		return ;
	} else if (newForm.body.value == '') {
		alert('Brak treści');
		return ;
	} else if (newForm.nick.value == '') {
		alert('Brak autora');
		return;
	}
//	newForm.nick.value = escape(newForm.nick.value);
	newForm.body.value = escape(newForm.body.value);
	newForm.submit();
}

function checkFieldsNoEscape(newForm) {
	if (newForm.title.value == '') {
		alert('Brak tytułu');
		return ;
	} else if (newForm.body.value == '' || newForm.body.value == ' ') {
		alert('Brak treści');
		return ;
	} else if (newForm.nick.value == '') {
		alert('Brak autora');
		return;
	}
	/**
	 * zamieniam \n na <br />
	 */	
	newForm.body.value = newForm.body.value.replace(/\n/gi, "<br />");		

	newForm.submit();
}


function fullsize(pI,title,desc) {
        if(document.all){picId = "/_uTils/site/gallery.html?" + pI + "&title=" + encodeURIComponent(escape(title)) + "&desc=" + encodeURIComponent(escape(desc));}
        else{picId = "/_uTils/site/gallery.html?" + pI + "&title=" + escape(title) + "&desc=" + escape(desc);}
//picId = encodeURI(picId);
        Win = window.open(picId,'DispalyWindow','width=300, height=300, resizable=yes, scrollbars=auto menubar=no, location=no');
        return;
}
function isN(v,f,n) {
	if(v.length>0)if((v!=~~v)||(v<=0)){alert('Wymagana jest liczba całkowita dodatnia.');o=eval('document.'+f+"."+n);o.value="";}
}
function openInNewWindow(href){
	return window.open(href, null, '');
}

function openWindow(url,top,left,width,height,coto,scrollb) {
	var p = "";
	var sc = "";
	if (top>-1) p=",top="+top;
	if (left>-1) p=p+",left="+left;
	if (width>-1) p=p+",width="+width;
	if (height>-1) p=p+",height="+height;
	if(scrollb != '') sc=scrollb; else sc=0;
	
	//alert('i say: '  + scrollb);
	window.open(url,'','toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars='+sc+',resizable=0'+p);
}

function bookmark (URI, title) {
   if (typeof window.external != "undefined") {
       window.external.AddFavorite (URI, title)
   } else if (typeof window.opera != "undefined") {
       alert ("Press [Ctrl] + [T] to bookmark this page.")
   } else alert ("Press [Ctrl] + [D] to bookmark this page.")
}

function homePage(uri) {
	if (window.external) {
		document.body.style.behavior = "url(#default#homepage)";
    	document.body.setHomePage(uri);
 	}
	else {
		alert("Your browser does not support setting the home page automatically.");
	}
}

function email_ver(str) {
	var supported = 0;
	if (window.RegExp) {
		var tempStr = "a";
		var tempReg = new RegExp(tempStr);
		if (tempReg.test(tempStr)) supported = 1;
	}

	if (!supported)
		return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
	var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
	var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
	var ok = !r1.test(str) && r2.test(str);
	if(ok == false) {
		alert("Błędny adres e-mail, prosze poprawić!");
		return false;
	}
	else { return ok; }
}

function changeBR(stin) {
	while (stin.indexOf("&lt;")>-1){
		stin = stin.replace("&lt;","<");
	}
	while (stin.indexOf("&gt;")>-1){
		stin = stin.replace("&gt;",">");
	}
	return stin;
}


function fields_default(field, fvalue) {
	if (field.value == fvalue) {
		field.value = "";
	}
	else if (field.value == "") {
		field.value = fvalue;
	}
}

/* Stronicowanie wynikow wyszukiwania */
function swapPage(offset) {
   document.forms['search7'].elements['offset'].value = offset;
   document.forms['search7'].submit();
}
	  
/* Wstawienie banera z pozycjonowaniem center*/
function loadBannerCenter() {
	var height = document.getElementById('pC_polityka2').offsetHeight;
	var heightTop = document.getElementById('bannerTop1').offsetHeight;
	var heightBottom = document.getElementById('bannerBottom1').offsetHeight;
	var wynikTop = heightTop + 'px';
	var wynikBottom = heightBottom + 'px';
	var heightTopCenter = heightTop + 84; /*height*/
	var wynik = heightTopCenter + 'px';
	//document.getElementById('bannerBottom1').style.top = wynik;
	document.getElementById('pC_polityka2').style.marginTop = 0;
	document.getElementById('pC_polityka2').style.marginBottom = '0px'/*wynikBottom;*/
	var widthBody = document.body.offsetWidth;
	var widthMargins = widthBody - 940;
	var widthOneMargin = widthMargins / 2;
	var positionLeft = widthOneMargin + 'px';
	document.getElementById('bannerTop1').style.top = '5px';
	document.getElementById('bannerTop1').style.left = positionLeft;
	//document.getElementById('bannerBottom1').style.left = "945px"; /*positionLeft;*/
	document.getElementById('bannerTop2').style.textAlign= 'center';
	//document.getElementById('bannerBottom2').style.textAlign= 'center';
}

/* Wstawienie banera z pozycjonowaniem do lewej */
function loadBannerLeft() {
	var height = document.getElementById('pC_polityka2').offsetHeight;
	var heightTop = document.getElementById('bannerTop1').offsetHeight;
	var heightBottom = document.getElementById('bannerBottom1').offsetHeight;
	var wynikTop = heightTop + 'px';
	var wynikBottom = heightBottom + 'px';
	var heightTopCenter = heightTop + 84; /*height;*/
	var wynik = heightTopCenter + 'px';
	document.getElementById('bannerBottom1').style.top = wynik;
	//document.getElementById('pC_polityka2').style.marginTop = wynikTop; //reklamy bbcode same sobie tworza wysokosc i nie jest konieczny dodatkowy margin-top dla tych reklam
	document.getElementById('pC_polityka2').style.marginBottom = '0px' /*wynikBottom;*/
	var widthBody = document.body.offsetWidth;
	var widthMargins = widthBody - 910;
	var widthOneMargin = widthMargins / 2;
	var positionLeft = widthOneMargin + 'px';
	document.getElementById('bannerTop1').style.top = '5px';
	document.getElementById('bannerTop1').style.left = positionLeft;
	document.getElementById('bannerBottom1').style.left = "945px"; /*positionLeft;*/
	document.getElementById('bannerTop2').style.textAlign= 'left';
	document.getElementById('bannerBottom2').style.textAlign= 'left';
}
/* Wstawienie banera dla starych layoutow */
function loadBannerPC() {
	var height = document.getElementById('pC').offsetHeight;
	var heightTop = document.getElementById('bannerTop1').offsetHeight;
	var heightBottom = document.getElementById('bannerBottom1').offsetHeight;
	var wynikTop = heightTop + 10 + 'px';
	var wynikBottom = heightBottom + 'px';
	var heightTopCenter = heightTop + height;
	var wynik = heightTopCenter + 'px';
	document.getElementById('bannerBottom1').style.top = wynik;
	document.getElementById('pC').style.marginTop = wynikTop;
	document.getElementById('pC').style.marginBottom = wynikBottom;
	var widthBody = document.body.offsetWidth;
	var widthMargins = widthBody - 1000;
	var widthOneMargin = widthMargins / 2;
	var positionLeft = widthOneMargin + 'px';
	var positionLeftBottom = widthOneMargin + 10 + 'px';
	document.getElementById('bannerTop1').style.top = '5px';
	document.getElementById('bannerTop1').style.left = positionLeft;
	document.getElementById('bannerBottom1').style.left = positionLeftBottom;
	document.getElementById('bannerTop2').style.textAlign= 'left';
	document.getElementById('bannerBottom2').style.textAlign= 'left';
	document.getElementById('bannerTop2').style.position = 'relative';
	document.getElementById('bannerTop2').style.top = '5px';
	document.getElementById('bannerBottom2').style.position = 'relative';
	document.getElementById('bannerBottom2').style.top = '20px';
	var pie=false;
	if (document.all){pie=(navigator.userAgent.search('Opera')>=0)?false:true}
	if (pie){document.getElementById('bannerBottom2').style.top = '10px';}
}

function digthis(){var ds=typeof digg_skin=='string'?digg_skin:'';var h=80;var w=52;if(ds=='compact'){h=18;w=120;}
var u=typeof digg_url=='string'?digg_url:(typeof DIGG_URL=='string'?DIGG_URL:window.location.href);window.open("http://digg.com/submit?phase=2&url="+escape(u)+(typeof digg_title=='string'?('&t='+escape(digg_title)):'')+(typeof digg_bodytext=='string'?('&b='+escape(digg_bodytext)):'')+(typeof digg_topic=='string'?('&c='+escape(digg_topic)):'')+(typeof digg_bgcolor=='string'?('&k='+escape(digg_bgcolor)):'')+(ds?('&s='+ds):''));}


function getJSVoters() {
   if(document.getElementById("jsDynVoter")) {
	   var voterHolder = document.getElementById("jsDynVoter");
	   var countBlocks = voterHolder.getElementsByTagName("div");
	
	   for (var i=0;i<(countBlocks.length);i++) {
	   		if(countBlocks[i].id.match("MB_") && countBlocks[i].id.match("MB_")) {
	   			var srep = countBlocks[i].id.replace("MB_","");
				if(document.getElementById(srep)) {
	   				document.getElementById(srep).innerHTML = countBlocks[i].innerHTML;
	   			}
	   		}
	   }
	}
}


function SetCookie(cookieName,cookieValue,nDays) {
 var today = new Date();
 var expire = new Date();
 if (nDays==null || nDays==0) nDays=1;
 expire.setTime(today.getTime() + 3600000*24*nDays);
 document.cookie = cookieName+"="+escape(cookieValue)
                 + ";expires="+expire.toGMTString();
}
function getcookie(cookiename) {
 var cookiestring=""+document.cookie;
 var index1=cookiestring.indexOf(cookiename);
 if (index1==-1 || cookiename=="") return "";
 var index2=cookiestring.indexOf(';',index1);
 if (index2==-1) index2=cookiestring.length;
 return unescape(cookiestring.substring(index1+cookiename.length+1,index2));
}
var pages = new Array;
document.separator = '<hr class=\"pagebr\" />';
document.lastshow = 0 ;
document.lastli = 0;
function showBodyPage(aid,page,ppage) {

	
	var last = document.getElementById('page'+aid+'p'+ppage);
	var current = document.getElementById('page'+aid+'p'+page);

	last.style.display="none";
	current.style.display = "";

	if (page != 0) {
		
		if(document.getElementById('leadArt'+aid)){ document.getElementById('leadArt'+aid).style.display="none"; }
		if(document.getElementById('attch'+aid))  { document.getElementById('attch'+aid).style.display="none"; }
		if(document.getElementById('imgArt'+aid)) { document.getElementById('imgArt'+aid).style.display="none"; }
	} else {
		if(document.getElementById('leadArt'+aid)){ document.getElementById('leadArt'+aid).style.display=""; }
		if(document.getElementById('attch'+aid))  { document.getElementById('attch'+aid).style.display=""; }
		if(document.getElementById('imgArt'+aid)) { document.getElementById('imgArt'+aid).style.display=""; }
	}
	
}
function generateBodyPages(formnamePrefix,aid,sourcefield,className) {
	var j = 0
	var hide=false;
	var formname = formnamePrefix + aid;
	if (document.layers) {
		var text = eval("document.nslayer.document."+formname+"."+sourcefield+".value");
		while (text.indexOf(document.separator) > -1)
			text = text.replace(document.separator,"<br><br>");
		document.writeln(text);
	} else {
		var ft = eval("document.forms."+formname+"."+sourcefield+".value");
		var iend = ft.length;
		var exit = false;
		do {
			if (ft.indexOf(document.separator) > -1) {
				iend = ft.indexOf(document.separator);
			} else {
				iend = ft.length;
				exit=true;
			}
			pages[j++] = ft.substring(0,iend);
			if (!exit)
				ft = ft.substr(iend+document.separator.length);
		} while (!exit)
		for (i=0;i<pages.length;i++) {
			document.writeln('<div id="page'+aid+'p'+i+'" class="'+className+'" style="display:'+(hide?"none":"block")+'"><div class="ar"'+pages[i]+'</div>');

			document.writeln('<ul id="pageNavBar" class="pager">');

			var prev = i-1; if (prev < 0) {prev=0;}
			var next = i+1; if (next > pages.length-1) { next = pages.length-1; }

			document.writeln('<li><a href="#pageTop" onclick="showBodyPage('+aid+','+prev+','+i+')"><img src=\"/_iMg/site/ico_page_back.gif\"/></a></li>');
			
			for (ii=0;ii<pages.length;ii++) {
				document.writeln('<li class="'+((ii==i)?"current":"other")+'"><a href="#pageTop" onclick="showBodyPage('+aid+','+ii+','+i+')">'+(ii+1)+'</a></li>');
			}
			document.writeln('<li><a href="#pageTop" onclick="showBodyPage('+aid+','+next+','+i+')"><img src=\"/_iMg/site/ico_page_next.gif\"/></a></li>');

			document.writeln("</ul></div>");

			hide = true;
		}

	}
}
function generateBodyPages2(formnamePrefix,aid,sourcefield,className) {
	var j = 0
	var hide=false;
	var formname = formnamePrefix + aid;
	if (document.layers) {
		var text = eval("document.nslayer.document."+formname+"."+sourcefield+".value");
		while (text.indexOf(document.separator) > -1)
			text = text.replace(document.separator,"<br><br>");
		document.writeln(text);
	} else {
		var ft = eval("document.forms."+formname+"."+sourcefield+".value");
		var iend = ft.length;
		var exit = false;
		do {
			if (ft.indexOf(document.separator) > -1) {
				iend = ft.indexOf(document.separator);
			} else {
				iend = ft.length;
				exit=true;
			}
			pages[j++] = ft.substring(0,iend);
			if (!exit)
				ft = ft.substr(iend+document.separator.length);
		} while (!exit)
		for (i=0;i<pages.length;i++) {
			document.writeln('<div id="page'+aid+'p'+i+'" class="'+className+'" style="display:'+(hide?"none":"block")+'"><div class="ar"'+pages[i]+'</div>');

			document.writeln('<ul id="pageNavBar" class="pager">');

			var prev = i-1; if (prev < 0) {prev=0;}
			var next = i+1; if (next > pages.length-1) { next = pages.length-1; }

			document.writeln('<li><a href="#pageTop" style="color: #343434; text-decoration: none; font-weight: bold;" onclick="showBodyPage('+aid+','+prev+','+i+')">&lt;&lt;</a></li>');
			
			for (ii=0;ii<pages.length;ii++) {
				document.writeln('<li class="'+((ii==i)?"current":"other")+'"><a href="#pageTop" style="font-weight: bold;" onclick="showBodyPage('+aid+','+ii+','+i+')">'+(ii+1)+'</a></li>');
			}
			document.writeln('<li><a href="#pageTop" style="color: #343434; text-decoration: none; font-weight: bold;" onclick="showBodyPage('+aid+','+next+','+i+')">&gt;&gt;</a></li>');

			document.writeln("</ul></div>");

			hide = true;
		}

	}
}


/***********************************************
* Cross browser Marquee II- ? Dynamic Drive (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit http://www.dynamicdrive.com/ for this script and 100s more.
***********************************************/

var delayb4scroll=2000 //Specify initial delay before marquee starts to scroll on page (2000=2 seconds)
var marqueespeed=1 //Specify marquee scroll speed (larger is faster 1-10)
var pauseit=1 //Pause marquee onMousever (0=no. 1=yes)?

////NO NEED TO EDIT BELOW THIS LINE////////////

var copyspeed=marqueespeed
var pausespeed=(pauseit==0)? copyspeed: 0
var actualheight=''

function scrollmarquee(){
if (parseInt(cross_marquee.style.top)>(actualheight*(-1)+8))
cross_marquee.style.top=parseInt(cross_marquee.style.top)-copyspeed+"px"
else
cross_marquee.style.top=parseInt(marqueeheight)+8+"px"
}

function initializemarquee(){
cross_marquee=document.getElementById("vmarquee")
if (cross_marquee) {
cross_marquee.style.top=0
marqueeheight=document.getElementById("marqueecontainer").offsetHeight
actualheight=cross_marquee.offsetHeight
if (window.opera || navigator.userAgent.indexOf("Netscape/7")!=-1){ //if Opera or Netscape 7x, add scrollbars to scroll and exit
cross_marquee.style.height=marqueeheight+"px"
//cross_marquee.style.overflow="scroll"
//return
}
setTimeout('lefttime=setInterval("scrollmarquee()",30)', delayb4scroll)
}
}

if (window.addEventListener)
window.addEventListener("load", initializemarquee, false)
else if (window.attachEvent)
window.attachEvent("onload", initializemarquee)
else if (document.getElementById)
window.onload=initializemarquee

/*
 * Object EODate used to display curent date and time in HTML. Write by DEUTER, @ 2002 EO Networks sp. z o.o.
 */
function EODate() {
	this.d = new Object();
	this.d[0]="Niedziela";
	this.d[1]="Poniedziałek";
	this.d[2]="Wtorek";
	this.d[3]="Środa";
	this.d[4]="Czwartek";
	this.d[5]="Piątek";
	this.d[6]="Sobota";
	this.m = new Object();
	this.m[0]="stycznia";
	this.m[1]="lutego";
	this.m[2]="marca";
	this.m[3]="kwietnia";
	this.m[4]="maja";
	this.m[5]="czerwca";
	this.m[6]="lipca";
	this.m[7]="sierpnia";
	this.m[8]="września";
	this.m[9]="października";
	this.m[10]="listopada";
	this.m[11]="grudnia";
	this.getDate=getDate;
	this.getTime=getTime;
	this.getTimeString=getTimeString;
	this.getDay=getDay;
	this.getDayName=getDayName;
	this.getMonth=getMonth;
	this.getYear=getYear;
	this.getMonthDayFullString=getMonthDayFullString;
	function getDate() {
		n=new Date();
		y=n.getFullYear();
		/* if (navigator.appName == "Netscape") y+=1900; */
		document.writeln(this.d[n.getDay()] + ", "+n.getDate() + " " + this.m[n.getMonth()] + " " + y);
	}
	function getTimeString() {
		n=new Date();
		return n.getHours()+":"+((n.getMinutes()<10)?"0"+n.getMinutes():n.getMinutes())+"."+((n.getSeconds()<10)?"0"+n.getSeconds():n.getSeconds());
	}
	function getTime() {
		document.writeln(this.getTimeString());
	}
	function getDay() {
		n=new Date();
		return n.getDate();
	}
	function getDayName() {
		n=new Date();
		return this.d[n.getDay()];
	}
	function getMonth() {
		n=new Date();
		return this.m[n.getMonth()];
	}
	function getYear() {
		n=new Date();
		y=n.getFullYear(); 
		/* if (navigator.appName == "Netscape") y+=1900; */
		return y;
	}
	function getMonthDayFullString() {
		n=new Date();
		return ((n.getMonth()<9)?"0"+(n.getMonth()+1):(n.getMonth()+1))+"-"+((n.getDate()<10)?"0"+n.getDate():n.getDate());
	}
}

function changeTo ( toShow, toHides ) {

var toHide = toHides.split("|");

for (loop = 0; loop < toHide.length; loop ++) {
 if(toHide[loop]) {
				
document.getElementById('id_'+toHide[loop]).style.display='none';

}
}


document.getElementById('id_'+toShow).style.display='block';


}


/*
 * 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","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();

var otherOnProgres = false;

function removeTag(html) {

	Html0 = html.replace(/^\s+/, '').replace(/\s+$/, '');
	Html1=Html0.replace(/^<div[^>]*>/, '').replace(/^\s+/, '');
	Html2=Html1.replace(/<\/div>$/, '').replace(/\s+$/, '');
	Html3=Html2.replace(/^<div[^>]*>/, '').replace(/^\s+/, '');
	Html4=Html3.replace(/<\/div>$/, '').replace(/\s+$/, '');
	return Html4;
}


function getFormById(coll, id){
	for(i = 0; i< coll.length; i++){
		if((coll[i].getAttribute("id")) == "voter"+id){
			return coll[i]; 
		}
	}
	return null;
}

function hideScore(id){
    try{
    	document.getElementById("vscore"+id).style.display="none";
	    document.getElementById("vform"+id).style.display="none";
    	var ck = getcookie('vote'+id);
    	if(ck != 'true') document.getElementById("vform"+id).style.display="block";
    	else document.getElementById("vscore"+id).style.display="block";	
    }catch(e){}
}

function ltrim(s){ 
        var r = /\s*((\S+\s*)*)/; 
            return new String(s).replace(r, "$1"); 
};

function rtrim(s){ 
        var r = /((\s*\S+)*)\s*/; return new String(s).replace(r, "$1"); 
};

function trim(s){ 
        return ltrim(rtrim(s)); 
};

function getVoter(id, news_cat_id) {

	advAJAX.get(
		{
			url : '/polityka/voter.jsp',
			parameters : { place:'Voter01', page:'voter', layout:'ajax', score:'false', vote_id: id.substring(1, id.length), news_cat_id: news_cat_id, rk : Math.round (Math.random () * 1000000000000000000)},
			onSuccess:function(obj){
				var doc = '';
				doc = new String(obj.responseText);
				var oRegExpPre = new RegExp('<form[^>]*id="voter' + id.substring(1, id.length) + '[^>]*>.*', 'gi');
				var oRegExpPost = new RegExp('<\/form>.*', 'gi');
				var frm = (new String(new String(doc).match(oRegExpPre)).replace(oRegExpPost, '') + '</form>');
				var target = document.getElementById("V"+id)
				var nVId = id.substring(1, id.length)
				if(target != null && target != "undefined"){
    					target.innerHTML = frm;
                        if(trim(target.innerHTML) == 'null' || trim(target.innerHTML) == ''){
                            target.style.display = 'none';
                            setTimeout("getVoter('"+id+"',"+ news_cat_id+")", 4000);
                        }
                        else{
                        	target.style.display = 'block';
                        }
	    				hideScore(id.substring(1, id.length));	
				}
			},
			onError : function(obj) { }
		});
}

function isAnyChecked(id){
	var inps = document.getElementById("voter"+id);
	inps = inps.getElementsByTagName("input");
	for(i = 0; i< inps.length; i++){
		if(inps[i].type=="radio" || inps[i].type=="checkbox"){
			if(inps[i].checked){
				return true;
			}
		}	
	}
	return false;
}

function score(id) {
	var options = document.getElementById('voter'+id).vote_item_id;
	var length = options.length;
	var test = isAnyChecked(id);
	var target = document.getElementById("VS"+id);

	if (test) {
		advAJAX.submit(
			document.getElementById('voter'+id),{
				url : '/polityka/voter.jsp', 
				parameters : { place:'Voter01', page:'voter', layout:'ajax', rid: Math.random()*10000000},
				onSuccess:function(obj){
					SetCookie('vote'+id, true, 2);
					var doc = null;
					doc = obj.responseText;
					var oRegExpPre = new RegExp('<form[^>]*id="voter' + id + '[^>]*>.*', 'gi');
					var oRegExpPost = new RegExp('<\/form>.*', 'gi');
					var frm = (new String(new String(doc).match(oRegExpPre)).replace(oRegExpPost, '') + '</form>');
					if(target != null && target != "undefined"){
						target.innerHTML = frm;
						hideScore(id);				
					}
				},
				onError : function(obj) {}
			});
	}
	else{
		target.innerHTML = target.innerHTML + "<div style='color: #f00; font-size: 9px'>Proszę zaznaczyć chociaż jedną odpowedź</div>"
	}
}

document.getElementsByClassName = function(_class){
	var el = document.getElementsByTagName("*");
	var ret = new Array();
	var i = 0;
	for(e in el){
		if(el[e] !=null)
			if(el[e].className !=null && el[e].className != "undefined")
			if(el[e].className!=""){
				if((new RegExp("(^|\\s)" + _class + "(\\s|$)")).test(el[e].className)){
					ret[i] = el[e];
					i++
				}
			}
	}
	if(ret.length>0){
		return ret;
	}
	else{
		return null;
	}
}
document.getElementsByIds = function(_ids){
	var el = document.getElementsByTagName("*");
	var ret = new Array();
	var i = 0;
	for(e in el){
		if(el[e].id!=""){
			if((new RegExp("(^|\\s)" + _class + "(\\s|$)")).test(el[e].id)){
				ret[i] = el[e];
				i++
			}
		}
	}
	if(ret.length>0){
		return ret;
	}
	else{
		return null;
	}
}
/**
* skrďż˝t do document.getElementsByClassName()
*/
function c(_class){
	return document.getElementsByClassName(_class);
}







