var _oldurl = '';
var image = null;
var _detailurl = '';
var _mp3_type = false;

function gallery_image_over(url) {
	var imageobj = document.getElementById('preview_image');

	if (imageobj != null) {
		_oldurl = imageobj.src;
		imageobj.src = url;
	}
}

function gallery_image_out() {
	var imageobj = document.getElementById('preview_image');

	if (imageobj != null) {
		imageobj.src = _oldurl;
	}
}

function detail_image(obj, width, height, scrollbars) {
	if (_detailurl == '')
		_detailurl = obj.href;

	open_popup(_detailurl, width, height, scrollbars);
}

function variant2(pid, variant, form) {
	var variant = new Array();

	if (form.elements['variant[]'] != null) {
		if (form.elements['variant[]'].firstChild == null) {
			for (var x = 0; x < form.elements['variant[]'].length; x++)
				variant.push('variant[]=' + form.elements['variant[]'][x].options[form.elements['variant[]'][x].selectedIndex].value);
		} else
			variant.push('variant[]=' + form.elements['variant[]'].options[form.elements['variant[]'].selectedIndex].value);
	}

	var str = '&' + variant.join('&');

	if (!send_xmlhttprequest(get_variant_service, 'GET', '/index.php?ma=ajax&sid=pvariant&pid=' + pid + '&var=' + variant + str))
		return false;

	return true;
}

function get_variant_service(xmlhttp) {
	if (xmlhttp.readyState == 4) {
		var odpovedi = xmlhttp.responseXML.getElementsByTagName('data')[0].firstChild.data;
		var imageobj = document.getElementById('preview_image');

		if (imageobj != null && xmlhttp.responseXML.getElementsByTagName('image') != null && xmlhttp.responseXML.getElementsByTagName('image')[0])
			imageobj.src = xmlhttp.responseXML.getElementsByTagName('image')[0].firstChild.data;

		if (xmlhttp.responseXML.getElementsByTagName('link') != null && xmlhttp.responseXML.getElementsByTagName('link')[0]) {
			document.getElementById('detail_image_link').href = xmlhttp.responseXML.getElementsByTagName('link')[0].firstChild.data;
		}
	}
}

function get_price(crc, category, produkt, form, radia) {
	var variant = new Array();

	if (form.elements['variant[]'] != null) {
		if (form.elements['variant[]'].firstChild == null) {
			for (var x = 0; x < form.elements['variant[]'].length; x++) {
				if (form.elements['variant[]'][x].options[form.elements['variant[]'][x].selectedIndex].value > 0)
					variant.push('variant[]=' + form.elements['variant[]'][x].options[form.elements['variant[]'][x].selectedIndex].value);
			}
		} else {
			if (form.elements['variant[]'].options[form.elements['variant[]'].selectedIndex].value > 0)
				variant.push('variant[]=' + form.elements['variant[]'].options[form.elements['variant[]'].selectedIndex].value);
		}
	}
	
	var _radia = new Array();
    if(radia != undefined){
        for(i=0; i<radia.length; i++){
           _radia.push('radio[]=' + radia[i]); 
        }        
    
    } else {
        var rad = SJEL.$T('conf','input');         
        for (i=0; i<rad.length;i++ ){
            if(rad[i].type == 'radio' && rad[i].checked){
               _radia.push('radio[]=' + rad[i].value);         
            }        
        }
    }


	var str = variant.join('&');
	var icn = form.elements['item_count'].value;

	if (str != '')
		str = '&' + str;

	if (!(/^\d+$/.test(icn)))
		icn = 1;

	var str2 = _radia.join('&');
	if (str2 != '')
		str2 = '&' + str2;
		
	if (!send_xmlhttprequest(get_price_service, 'GET', '/index.php?ma=ajax&sid=pprice&crc=' + crc + '&cat=' + category + '&idp=' + produkt + '&icn=' + icn + str + str2)) {
		return false;
	}

	return true;
}

function get_price_service(xmlhttp) {
	if (xmlhttp.readyState == 4) {

		var odpovedi = xmlhttp.responseXML.getElementsByTagName('prices')[0].childNodes;

		for (var i = 0; i < odpovedi.length; i++) {
			if (odpovedi[i].childNodes.length > 0) {
				var obj = document.getElementById(odpovedi[i].nodeName);

				if (obj)
					obj.innerHTML = odpovedi[i].childNodes[0].data;
			}
		}
	}
}

function open_calculator_window(form, crc, produkt) {
	var variant = new Array();

	if (form.elements['variant[]'] != null) {
		if (form.elements['variant[]'].firstChild == null) {
			for (var x = 0; x < form.elements['variant[]'].length; x++) {
				if (form.elements['variant[]'][x].options[form.elements['variant[]'][x].selectedIndex].value > 0)
					variant.push('variant[]=' + form.elements['variant[]'][x].options[form.elements['variant[]'][x].selectedIndex].value);
			}
		} else {
			if (form.elements['variant[]'].options[form.elements['variant[]'].selectedIndex].value > 0)
				variant.push('variant[]=' + form.elements['variant[]'].options[form.elements['variant[]'].selectedIndex].value);
		}
	}

	var str = variant.join('&');
	var uix = 1;

	if (typeof(form.elements['unit_index']) != 'undefined')
		 uix = form.elements['unit_index'].value;

	var icn = form.elements['item_count'].value;

	if (str != '')
		str = '&' + str;

	if (!(/^\d+$/.test(icn)))
		icn = 1;

	var url = '/index.php?ma=popup&action=cetelem&crc=' + crc + '&idp=' + produkt + '&uix=' + uix + '&icn=' + icn + str;

	open_popup(url, 400, 300, 1);
}

var old_stars = new Array();
var starfull = '/images/star.gif';
var starnone = '/images/star2.gif';
var starblock = false;

function show_star(pocet, mamdatruku) {
	if (starblock)
		return;

	var obj = null;

	for (var i = 1; i <= 5; i++) {
		obj = document.getElementById('_rating_star' + i);

		if (obj) {
			if (old_stars.length < 5)
				old_stars.push(obj.src);

			if (i <= pocet)
				obj.src = starfull;
			else
				obj.src = starnone;

			if (mamdatruku)
				obj.style.cursor = "pointer";
			else
				obj.style.cursor = "default";
		}
	}
}

function hide_star() {
	if (starblock)
		return;

	if (old_stars.length > 0) {
		for (var i = 0; i < old_stars.length; i++) {
			obj = document.getElementById('_rating_star' + (i + 1));

			if (obj) {
				obj.src = old_stars[i];
				obj.style.cursor = "default";
			}
		}
	}
}

function click_star(produkt, pocet) {
	if (starblock)
		return;

	if (!send_xmlhttprequest(click_star_service, 'GET', '/index.php?ma=ajax&sid=pstar&idp=' + produkt + '&star=' + pocet)) {
		return false;
	}

	Set_Cookie('_rating_' + produkt , 1, 365, '/', '', '');

	return true;
}

function click_star_service(xmlhttp) {
	if (xmlhttp.readyState == 4) {
		var pocet = xmlhttp.responseXML.getElementsByTagName('rating')[0].childNodes[0].data;

		show_star(pocet, false);
		old_stars = new Array();
		starblock = true;
	}
}

function Set_Cookie(name, value, expires, path, domain, secure) {
	var today = new Date();
	today.setTime( today.getTime() );

	if ( expires )
		expires = expires * 1000 * 60 * 60 * 24;

	var expires_date = new Date( today.getTime() + (expires) );

	document.cookie = name + "=" +escape( value ) +
	( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) +
	( ( path ) ? ";path=" + path : "" ) +
	( ( domain ) ? ";domain=" + domain : "" ) +
	( ( secure ) ? ";secure" : "" );
}

/**
 * _cid - id obalovaciho divu konfiguratoru
 * _bl - nazev tridy jednoho bloku
 * _r - id reset tlacitka  
 */ 
function Configurator (_cid, _bl, _r, _cur, _cat, _pr) {
	var ref = this,
		block = new Array(),
		onclickFunc = null;
		
	this.cid = SJEL.$(_cid);
	this.bl = SJEL.$A(this.cid, "class", _bl);
	this.reset = SJEL.$(_r);
	
	for (var i = 0; i < this.bl.length; i++) {
		block.push({tr: SJEL.$T(this.bl[i], "tr"), active: -1});
		for (var j = 0; j < block[i].tr.length; j++) {
			SJEL.SStyle(block[i].tr[j], {cursor: "pointer"});
			block[i].tr[j].radio = SJEL.$T(block[i].tr[j], "input")[0];
			if (j == 1) {
				block[i].tr[j].radio.checked = true;
				SJEL.AddClass(block[i].tr[j], "tractive");
				block[i].active = j;
			}
			block[i].tr[j].blockId = i;
			block[i].tr[j].id = j;
			block[i].tr[j].onclick = function() {
				if (block[this.blockId].active != -1)
					SJEL.RemoveClass(block[this.blockId].tr[block[this.blockId].active], "tractive");
				block[this.blockId].active = this.id;
				SJEL.AddClass(this, "tractive");
				this.radio.checked = "checked";
				if (onclickFunc != null) 
					onclickFunc(this.radio.value);

				 get_price(_cur, _cat, _pr, document.getElementById('detail_price'), checked_radio());		
			}
		}
	}
    get_price(_cur, _cat, _pr, document.getElementById('detail_price'), checked_radio());

	if(this.reset != null) {
    	this.reset.onclick = function() {
    		for (var i = 0; i < block.length; i++)
    			if (block[i].active != -1) {
    				SJEL.RemoveClass(block[i].tr[block[i].active], "tractive");
    				block[i].tr[block[i].active].radio.checked = false;
    			}
    		get_price(_cur, _cat, _pr, document.getElementById('detail_price'), checked_radio());		
    		/*var inp = SJEL.$T(this.cid, "input");
    		for (var i = 0; i < inp.length; i++)
    			if (inp[i].type == "radio")
    				inp[i].checked = false;*/
    	}
	}
	
	function checked_radio() {
	    ids = new Array();
	    for (var i = 0; i < ref.bl.length; i++) {
	        for (var j = 1; j < block[i].tr.length; j++) {
	             if(block[i].tr[j].radio.checked)
	               ids.push(block[i].tr[j].radio.value);          
	        }   
	    }
	    return ids;
	}
	
	if (SJEL.ie == 6)
		SetIE6Stuffs();

	this.OnClick = function (_func) {
		onclickFunc = _func;
	}
	
	// kraviny jen pro ie6
	function SetIE6Stuffs() {
		for (var i = 0; i < block.length; i++) {
			for (var j = 0; j < block[i].tr.length; j++) {
				block[i].tr[j].onmouseover = function() {
					SJEL.AddClass(this, "trhover");
				}
				block[i].tr[j].onmouseout = function() {
					SJEL.RemoveClass(this, "trhover");
				}
			}
		}
	}
}
