function switchImages (showImageKey, numImages) {
	
	for (var i = 0; i < numImages; i++) {
		if (i == showImageKey) {
			document.getElementById('bigImg_'+i).style.display = 'block';
			var imgTitle = document.getElementById('imgTitle_'+i);
			if (imgTitle) imgTitle.style.display = 'block';
		}
		else {
			document.getElementById('bigImg_'+i).style.display = 'none';
			var imgTitle = document.getElementById('imgTitle_'+i);
			if (imgTitle) imgTitle.style.display = 'none';
		}
	
		if (i == showImageKey) document.getElementById('spanImg_'+i).style.border = 'solid #4d93ad 1px;';
		else document.getElementById('spanImg_'+i).style.border = 'solid #e6e4df 1px';
	}
}

function addProductRating(id, cid, name, numStars, starWidth, starHeight, value, sum, folder, errorMessage, successMessage) {
	var url = '/inc/ajaxfunc.php?func=rating&iid='+id+'&cid='+cid+'&v='+value;
	var result = getRemoteFile(url, false, null, null);
	if (result != '0') {
		result = result.split(',');
		
		if (result[0] != 0) {
			var numRating = result[1];
			var sumRating = result[2];
			var rating = result[3];
			htmlRating(id, numRating, sumRating, rating, successMessage);
			setStarRater(id, name, numStars, starWidth, starHeight, rating, folder);
		}
		else {
			document.getElementById('votedtext_'+id).innerHTML = errorMessage;
			if (document.getElementById('votedtext_'+id).style.display == 'none') {
				document.getElementById('star_rater_container_'+id).style.margin = '0';
				document.getElementById('votedtext_'+id).style.display = 'block';
			}
		}
	}
	else {
		document.getElementById('votedtext_'+id).innerHTML = errorMessage;
		if (document.getElementById('votedtext_'+id).style.display == 'none') {
			document.getElementById('star_rater_container_'+id).style.margin = '0';
			document.getElementById('votedtext_'+id).style.display = 'block';
			
		}
	}
	return false;
}

function getRemoteFile(url, doReturnXml, callbackFunc, callbackData) {
	var xmlHttp = createHttpRequester();
	if (xmlHttp == null) return null;
	try {
		var isAsync = (callbackFunc != null);
		xmlHttp.open("GET", url, isAsync);
		xmlHttp.setRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT");
		
		if (isAsync) {
			xmlHttp.onreadystatechange = function() {
				if (xmlHttp.readyState == 4) {
					callbackFunc(doReturnXml ? xmlHttp.responseXML : xmlHttp.responseText, callbackData);
					delete xmlHttp.onreadystatechange;
				}
			};
		}
		
		xmlHttp.send("");
		if (isAsync) return null; // later
		if (doReturnXml) return xmlHttp.responseXML;
		return xmlHttp.responseText;
	}
	catch (e) {}
	return null;
}

function createHttpRequester() {
	if (window.XMLHttpRequest) { // code for Mozilla, Safari, etc
		try {
			return new XMLHttpRequest();
		} 
		catch(e) {}
	} 
	else if (window.ActiveXObject) { // IE/Windows ActiveX version
		try {
			return new ActiveXObject("Msxml2.XMLHTTP");
		} 
		catch(e) {
			try {
				return new ActiveXObject("Microsoft.XMLHTTP");
			} 
			catch(e) {}
		}
	}
	return null;
}

function htmlRating(id, numRating, sumRating, rating, successMessage) {
	rating = formatNumber(rating, 2, '.');
	var ratingResult = document.getElementById('ratingresult_'+id);
	if (ratingResult != null) {
		ratingResult.innerHTML = rating;
	}
	
	var ratingText = document.getElementById('ratingtext_'+id);
	if (ratingText != null) {
		ratingText.innerHTML = numRating;
	}
	var votedText = document.getElementById('votedtext_'+id);
	if (votedText != null) {
		votedText.innerHTML = successMessage;
	}
	if (document.getElementById('votedtext_'+id).style.display == 'none') {
		document.getElementById('star_rater_container_'+id).style.margin = '0';
		document.getElementById('votedtext_'+id).style.display = 'block';
	}
}

function formatNumber(value, numDecimals, decimalChar) {
	if (numDecimals < 1) numDecimals = 1;
	if (numDecimals > 8) numDecimals = 8;
	if (decimalChar == null) decimalChar = ".";
	var factor = 1;
	for (var i = 0; i < numDecimals; i++) factor *= 10;
	value = Math.floor(factor * value) / factor;
	value = value.toString();
	var dotPos = value.indexOf(".");
	if (dotPos < 0) dotPos = value.indexOf(",");
	if (dotPos >= 0) {
		value = value.substring(0, dotPos) + decimalChar + value.substring(dotPos + 1);
		var numZerosToAdd = numDecimals - (value.length - dotPos);
		while (numZerosToAdd >= 0) {
			value += "0";
			numZerosToAdd--;
		}
	}
	else {
		value += decimalChar;
		for (var i = 0; i < numDecimals; i++) value += "0";
	}
	return value;
}

function slideVote(percent) {
	percent = percent/1 + 2;
	for (var n in pollArr)
	{
		if (pollArr[n] >= percent)
		{
			var el = document.getElementById ('pollBar' + n);
			var el2 = document.getElementById ('pollPer' + n);
			el.style.width = Math.max (1, Math.round (percent/100 * 140)) + 'px';
			el2.innerHTML = '&nbsp;' + percent + '%';
		}
	}

	if (percent < 100) setTimeout ('slideVote("' + percent + '")', 5);
}

function pages(o) {
	var incolel = 5;
	var unit = 11;
	var dl = document.getElementById(o);
	var divs = dl.getElementsByTagName('div');
	var pages = '';
	var issel = -1;
	for (var i=0; i<divs.length; i++) if (divs[i].className.search('pages') != -1) pages = divs[i];
	var uz = pages.getElementsByTagName('div');
	var count = 0;
	var uls = new Array();
	for (var z=0; z<uz.length; z++) {
		if (uz[z].className.search('page') != -1) {
			uls[count] = uz[z];
			count++;
		}
	}
	for (var j=0; j<uls.length; j++) {
		if (uls[j].className != 'page sel') uls[j].className = 'page hide';
		else issel = j;
	}
	
	var pagingul = document.createElement("div");
	pagingul.className = 'pagejump';
	var p;
	var sel = '';
	var allp = Math.ceil(count/incolel);
	var fromr = 0;
	var tor = incolel;
	var setw = '';
	if (tor > count) {
		tor = count;
		setw = ' style="width:'+tor*unit+'px;"';
	}
	var loop = '';
	
	var useHiddenPages = false;
	
	if (count > 1) {
	
		if (count > incolel) useHiddenPages = true;
		
		//for (var s=0; s<allp; s++) {
			loop += '<ul>';
			
			for (var r=0; r<count; r++) {
				p = r+1;
					t1 = count-1;
					t2 = incolel+1
					if (r == issel) sel = ' class="sel"';
					else if (useHiddenPages && ((r == 0) || (r == count-1) || (r == incolel-1) || (r == incolel+1) || (r == 1)) || ((t1 == t2) && (r == 2))) sel = '';
					else if (useHiddenPages) sel = ' class="hide"';
	//				if (useHiddenPages && ((r == 0) || (r == count-1) || (r == incolel-1) || (r == incolel+1) || (r == 1)) || ((t1 == t2) && (r == 2))) {
	//					hidden = ' class="hide"';
	//				}
					loop += '<li'+sel+'><a href="#" onclick="return !pagesw('+p+',this)" title="'+p+'">'+p+'</a>';
						if (r < count-1) loop += ' | ';
						loop += '</li>';
						sel = '';
				
				
			}
			fromr += incolel;
			tor += incolel;
				if (tor >= uls.length) tor = uls.length;
			loop += '</ul>';
		//}
		var firstsel = '';
		var lastsel = '';
		if (issel == 0) firstsel = ' bwdd';
		if (count == 1) lastsel = ' fwdd';
		if (issel+1 == count) lastsel = ' fwdd';
		var setl = 0;
		if (issel+1 > incolel) setl = -(issel*unit-parseInt(incolel-1)*unit);
		//pagingul.innerHTML = '<div class="pages"><strong>'+parseInt(issel+1)+'</strong>/'+count+'</div>';
		pagingul.innerHTML = '<a href="/" onclick="return !pagesw(\'prev\',this)" title="" class="bwd'+firstsel+'"><img src="/dsg/ico/back.gif" alt="" /></a>';
		//pagingul.innerHTML += '<div class="pag"'+setw+'><div class="zb" style="left:'+setl+'px;">'+loop+'</div></div>';
		pagingul.innerHTML += '<div class="pag"><div class="zb" style="left:'+setl+'px;">'+loop+'</div></div>';
		pagingul.innerHTML += '<a href="/" onclick="return !pagesw(\'next\',this)" title="" class="fwd'+lastsel+'"><img src="/dsg/ico/next.gif" alt="" /></a>';
		if(issel < 0) pagingul.innerHTML = '<p>manjka <strong>sel</strong></p>';
		pages.parentNode.appendChild(pagingul);
	}
}


function pagesw(num,o) {
	var incolel = 5;
	var unit = 11;
	var pages = o.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.firstChild;
	
	var notnum = (num/num != 1) ? true : false;
	if (!notnum) num -= 1;
	if (notnum) pages = o.parentNode.parentNode.firstChild;
	if (pages.nodeType == 3) pages = pages.nextSibling;
	var uz = pages.getElementsByTagName('div');
	var count = 0;
	var uls = new Array();
	var issel,thissel;
	for (var z=0; z<uz.length; z++) {
		if (uz[z].className.search('page') != -1) {
			uls[count] = uz[z];
			if (uls[count].className.search('sel') != -1) issel = count;
			count++;
		}
	}
	var zb = o.parentNode.parentNode.parentNode;
	if (num == 'next') zb = o.previousSibling.firstChild;
	if (num == 'prev') zb = o.nextSibling.nextSibling.firstChild;
	if (zb.nodeName != 'DIV') zb = o.nextSibling.firstChild;
	var pul = zb.getElementsByTagName('ul');
	var pli = zb.getElementsByTagName('li');
	var pj = zb.parentNode.parentNode;
	var pjdiv = pj.getElementsByTagName('div');
	var bwd = zb.parentNode.previousSibling;
	if (bwd.nodeType == 3) bwd = bwd.previousSibling;
	
	var useHiddenPages = false;
	if (count > incolel) useHiddenPages = true;
	
	var allp = Math.ceil(count/incolel);
	
	function gtp(num) {
		for (var j=0; j<pli.length; j++) {

			if (j == num) {
				pli[j].className = 'sel';
				thissel = j;
				if (thissel != 0) bwd.className = 'bwd';
				else bwd.className = 'bwd bwdd';
				if (thissel == parseInt(count-1)) zb.parentNode.nextSibling.className = 'fwd fwdd';
				else zb.parentNode.nextSibling.className = 'fwd';
			}
			else {
				if (useHiddenPages) {
					if (num == 0) {
						if ((j > count-allp-1) || (j < num+allp+1)) pli[j].className = '';
						else pli[j].className = 'hide';
					}
					else if (num == 1) {
						if ((j == 0) || (j == count-1) || (j < num+3)) pli[j].className = '';
						else pli[j].className = 'hide';
					}
					else if (num == count-2) {
						if ((j == 0) || (j == count-1) || ( j < num-3) || (j == num-1)) pli[j].className = '';
						else pli[j].className = 'hide';
					
					}
					else if (num == count-1) {
						if ((j > num-allp-1) || (j < count-num+1)) pli[j].className = '';
						else pli[j].className = 'hide';
					}
					else {
						if ((j == 0) || (j == count-1) || (j == num-1) || ( j == num+1)) pli[j].className = '';
						else pli[j].className = 'hide';
					}
				}	
				else {
					pli[j].className = '';
				}
			}
		}
		for (var t=0; t<pjdiv.length; t++) {
			if (pjdiv[t].className.search('pages') != -1) {
				pjdiv[t].firstChild.innerHTML = thissel+1;
			}
		}
		for (var i=0; i<uls.length; i++) {
			if (i == num) uls[i].className = 'page sel';
			else uls[i].className = 'page hide';
		}
	}
	if (!notnum) gtp(num);
	else {
		var stleft = parseInt(zb.style.left);
		if (num == 'next') {
			if(issel < parseInt(count-1)) gtp(issel+1);
			if(count > incolel) if (parseInt(issel+1) >= incolel) if (stleft*(-1) < (parseInt(count*unit)-parseInt(incolel*unit))) zb.style.left = stleft-unit+'px';
		}
		if (num == 'prev') {
			if (issel > 0) gtp(issel-1);
			if (parseInt(issel) < parseInt(count-incolel+1)) if (stleft < 0) zb.style.left = stleft+unit+'px';
		}
	}
return true;
}
