function change(picture) {

    if (document.gallerypic.src) {
        document.gallerypic.src = picture;
    }

    return false;
}

function init() {
	var y = document.getElementsByTagName('img');
	for (var i=0; i<y.length; i++) {
		var classtext = '';
		if (y[i].getAttribute('class') && y[i].getAttribute('class').substr(0, 4) == 'icon') {
			createIconAlt(y[i]);
		}
		if (y[i].getAttribute('contentslide')) {
			y[i].onclick = contentslide;
		}
		if (y[i].getAttribute('slidemove') == 'left') {
			y[i].onclick = moveslideleft;
		}
		if (y[i].getAttribute('slidemove') == 'right') {
			y[i].onclick = moveslideright;
		}
	}
	
	var y = document.getElementsByTagName('a');
	for (var i=0; i<y.length; i++) {
		if (y[i].getAttribute('contentslide')) {
			y[i].onclick = contentslide;
		}
		else if (y[i].getAttribute('show') || y[i].getAttribute('hide')) {
			y[i].onclick = showhideElement;
		}
		else if (y[i].getAttribute('openpopup')) {
			y[i].onclick = openPopup;
		}
		else if (y[i].getAttribute('submit')) {
			y[i].onclick = submit_form;
		}
		else if (y[i].getAttribute('warning')) {
			y[i].onclick = link_onclick;
		}
    }
	
	var y = document.getElementsByTagName('input');
	for (var i=0; i<y.length; i++) {
		if (y[i].getAttribute('submit')) {
			y[i].onchange = submit_form;
		}
    }
	
	var y = document.getElementsByTagName('form');
	for (var i=0; i<y.length; i++) {
		y[i].onsubmit = form_onsubmit;
	}

	var y = document.getElementsByTagName('div');
	for (var i=0; i<y.length; i++) {
		var classPieces = y[i].className.split(" ");
		if (classPieces[0] == 'slidechooser') {
			y[i].onclick = moveslide;
		}
		if ((y[i].className == 'text') && (y[i].getAttribute('submit'))) {
			if (y[i].getAttribute('inactivated')) {
				y[i].style.color = '#999';
			}
			y[i].onclick = submit_form;
		}
		else if (y[i].getAttribute('location')) {
			if (y[i].getAttribute('inactivated')) {
				y[i].style.color = '#999';
			}
			y[i].onclick = link_onclick;
		}
	}

	var y = document.getElementsByTagName('span');
	for (var i=0; i<y.length; i++) {
		if ((y[i].className == 'text') && (y[i].getAttribute('submit'))) {
			if (y[i].getAttribute('inactivated')) {
				y[i].style.color = '#999';
			}
			y[i].onclick = submit_form;
		}
		else if ((y[i].className == 'text' || y[i].className == 'leftselector' || y[i].className == 'rightselector') && (y[i].getAttribute('location'))) {
			if (y[i].getAttribute('inactivated')) {
				y[i].style.color = '#999';
			}
			y[i].onclick = link_onclick;
		}
	}

	var y = document.getElementsByTagName('li');
	for (var i=0; i<y.length; i++) {
		if (y[i].getAttribute('location')) {
			if (y[i].getAttribute('inactivated')) {
				y[i].style.color = '#999';
			}
			y[i].onclick = link_onclick;
		}
	}
}

function addEvent(object, event, fn) {
	if (object.addEventListener){
    	object.addEventListener(event, fn, false);
    	return true;
  	} else if (object.attachEvent){
		var r = object.attachEvent("on" + event, fn);
    	return r;
  	} else {
		return false;
  	}
}

function showhideElement() {

	var show = this.getAttribute('show');
	var hide = this.getAttribute('hide');

	if (show) {
		visible(show, true, 'block');
	}
	if (hide) {
		visible(hide, false);
	}
	
	return false;
}

function contentslide() {

	var slide = this.getAttribute('contentslide');
	
	var y = document.getElementsByTagName('img');
	for (var i=0; i<y.length; i++) {
		regex = /^contentslide_c_.*/;
		match = regex.exec(y[i].getAttribute('id'));
		if (match) {
			y[i].className='';
		}
	}
	
	var y = document.getElementsByTagName('div');
	for (var i=0; i<y.length; i++) {
		regex = /^product_content_slide.*/;
		match = regex.exec(y[i].getAttribute('id'));
		if (match) {
			visible(y[i].getAttribute('id'), false);
		}
	}
	
	if (document.getElementById('contentslide_c_' + slide)) {
		document.getElementById('contentslide_c_' + slide).className='active';
	}
	visible('product_content_slide_' + slide, true, 'block');
	
	return false;
}

function moveslideleft() {
	moveslider(this, 'left');
}

function moveslideright() {
	moveslider(this, 'right');
}

function moveslider(slider, direction) {

	var sliders;
	var prevSlide;
	var activeFound = 0;
	var firstSlide;
	var lastSlide;
	var _firstSlide;
	var _lastSlide;
	var slideNr = 0;

	for (i = 0; i < slider.parentNode.childNodes.length; i++) {
		if (slider.parentNode.childNodes[i].tagName == 'DIV') {
			var classPieces = slider.parentNode.childNodes[i].className.split(" ");
			if (classPieces[0] == 'slidechoosers') {
				sliders = slider.parentNode.childNodes[i];
			}
		}
	}
	
	for (i = 0; i < sliders.childNodes.length; i++) {
		if (sliders.childNodes[i].tagName == 'DIV') {
			if (!firstSlide) {
				firstSlide = sliders.childNodes[i];
			}
			lastSlide = sliders.childNodes[i];
		}
	}
	
	if (direction == 'left') {
		k = 1;
		for (i = 0; i < sliders.childNodes.length; i++) {
			if (sliders.childNodes[i].tagName == 'DIV') {
				var classPieces = sliders.childNodes[i].className.split(" ");
				if (classPieces[1] == 'active') {
					if (prevSlide) {
						_moveslide(prevSlide, false);
					}
					else {
						var slidebox = slider.parentNode.parentNode;
						for (l = 0; l < slidebox.childNodes.length; l++) {
							if (slidebox.childNodes[l].className == 'slides') {
								var slides = slidebox.childNodes[l];
								for (z = 0; z < slides.childNodes.length; z++) {
									if (slides.childNodes[z].tagName == 'DIV') {
										var __slides = slides.childNodes[z]
										break;
									}
								}
								if (__slides) {
									for (k = 0; k < __slides.childNodes.length; k++) {
										if (__slides.childNodes[k].tagName == 'DIV') {
											slideNr++;
											if (!_firstSlide) {
												_firstSlide = __slides.childNodes[k];
											}
											_lastSlide = __slides.childNodes[k];
										}
									}
									var captionEl = _lastSlide.cloneNode(true);
									// __slides.appendChild(captionEl);
									__slides.insertBefore(captionEl, _firstSlide);
									new Effect.MoveBy(__slides, 0, '-' + parseInt(_lastSlide.style.width), { duration: 0 });
									new Effect.MoveBy(__slides, 0, parseInt(_lastSlide.style.width), { duration: 1.0, afterFinish: function () { 
										__slides.removeChild(captionEl);
										__slides.style.left = '-' + ((slideNr - 1) * parseInt(_lastSlide.offsetWidth)) + 'px';
										_moveslide(lastSlide, true);
									} });
								}
							}
						}
					}
					break;
				}
				prevSlide = sliders.childNodes[i];
				k++;
			}
		}
	}
	else if (direction == 'right') {
		k = 1;
		for (i = 0; i < sliders.childNodes.length; i++) {
			if (sliders.childNodes[i].tagName == 'DIV') {
				var classPieces = sliders.childNodes[i].className.split(" ");
				if (activeFound) {
					_moveslide(sliders.childNodes[i], false);
					activeFound = 0;
					break;
				}
				if (classPieces[1] == 'active') {
					activeFound = 1;
				}
				k++;
			}
		}
		
		if (activeFound) {
			var slidebox = slider.parentNode.parentNode;
			for (l = 0; l < slidebox.childNodes.length; l++) {
				if (slidebox.childNodes[l].className == 'slides') {
					var slides = slidebox.childNodes[l];
					for (z = 0; z < slides.childNodes.length; z++) {
						if (slides.childNodes[z].tagName == 'DIV') {
							var __slides = slides.childNodes[z]
						}
					}
					if (__slides) {
						for (k = 0; k < __slides.childNodes.length; k++) {
							if (__slides.childNodes[k].tagName == 'DIV') {
								slideNr++;
								if (!_firstSlide) {
									_firstSlide = __slides.childNodes[k];
								}
								_lastSlide = __slides.childNodes[k];
							}
						}
						var captionEl = _firstSlide.cloneNode(true);
						__slides.appendChild(captionEl);
						// __slides.insertBefore(captionEl, _firstSlide);
						new Effect.MoveBy(__slides, 0, '-' + parseInt(_firstSlide.offsetWidth), { duration: 1.0, afterFinish: function () { 
							__slides.removeChild(captionEl);
							__slides.style.left = '0px';
							_moveslide(firstSlide, true);
						} });
					}
				}
			}
			// _moveslide(firstSlide, false);
		}
	}
}

function moveslide() {

	_moveslide(this, false);
	
}

function _moveslide(_slider, withOutMoving) {

	var slideId = _slider.getAttribute('slide');
	var slideNr = parseInt(_slider.getAttribute('slideto'));
	var slideTo = 0;
	var parentElement;
	var slideNames = new Array();
	var slideLastNames = new Array();
	var slideName = '';
	var sliderElement;
	var slideButtonLeft;
	var slideButtonRight;
	var slideNameLeft;
	var slideNameRight;
	
	if (document.getElementById(slideId)) {
		var slide = document.getElementById(slideId);
		
		//- get elements
		parentElement = slide.parentNode.parentNode;
		for (i = 0; i < parentElement.childNodes.length; i++) {
			if (parentElement.childNodes[i].tagName == 'DIV' && parentElement.childNodes[i].className == 'slider') {
				sliderElement = parentElement.childNodes[i];
				break;
			}
		}
	
		if (sliderElement) {
			k = 1;
			for (i = 0; i < sliderElement.childNodes.length; i++) {
				if (sliderElement.childNodes[i].tagName == 'IMG') {
					var classPieces = sliderElement.childNodes[i].className.split(" ");
					if (classPieces[0] == 'movebutton') {
						if (k == 1) {
							slideButtonLeft = sliderElement.childNodes[i];
						}
						else if (k > 1) {
							slideButtonRight = sliderElement.childNodes[i];
						}
						k++;
					}
				}
			}
			k = 1;
			for (i = 0; i < sliderElement.childNodes.length; i++) {
				if (sliderElement.childNodes[i].tagName == 'SPAN') {
					var classPieces = sliderElement.childNodes[i].className.split("_");
					if (classPieces[0] == 'slidename') {
						if (k == 1) {
							slideNameLeft = sliderElement.childNodes[i];
						}
						else if (k > 1) {
							slideNameRight = sliderElement.childNodes[i];
						}
						k++;
					}
				}
			}
		}
		
		var k = 1;
		for (i = 0; i < slide.childNodes.length; i++) {
			if (slide.childNodes[i].tagName == 'DIV' && slide.childNodes[i].className == 'slide') {
				slideNames[k] = slide.childNodes[i].getAttribute('slidename');
				slideLastNames[k] = slide.childNodes[i].getAttribute('slidelastname');
				k++;
			}
		}
		
		var k = 1;
		for (i = 0; i < slide.childNodes.length; i++) {
			if (slide.childNodes[i].tagName == 'DIV' && slide.childNodes[i].className == 'slide') {
				if (k > 1) {
					slideTo += slide.childNodes[i].offsetWidth;
				}
				if (slideNr == k) {
					break;
				}
				k++;
			}
		}
		
		if (slide.style.left == '') {
			slide.style.left = 0;
		}
		if (parseInt(slide.style.left) != slideTo) {
			slideTo += parseInt(slide.style.left);
			if (!withOutMoving) {
				new Effect.MoveBy(slideId, 0, 0 - slideTo, { duration: 1.0 });
			}
			else {
				// new Effect.MoveBy(slideId, 0, 0 - slideTo, { duration: 0 });
			}
		}
		
		for (i = 0; i < _slider.parentNode.childNodes.length; i++) {
			if (_slider.parentNode.childNodes[i].tagName == 'DIV') {
				var classPieces = _slider.parentNode.childNodes[i].className.split(" ");
				if (classPieces[0] == 'slidechooser') {
					_slider.parentNode.childNodes[i].className = classPieces[0];
				}
			}
		}
		
		var slideL = slideNr-1;
		var slideR = slideNr+1;
		
		if (slideLastNames[slideL]) {
			slideNameLeft.innerHTML = slideLastNames[slideL];
			slideButtonLeft.className = 'movebutton left';
		}
		else if (slideNr == 1) {
			slideNameLeft.innerHTML = slideLastNames[slideLastNames.length-1];
		}
		else {
			slideNameLeft.innerHTML = '';
			slideButtonLeft.className = 'movebutton left_inactive';
		}
		if (slideNames[slideR]) {
			slideNameRight.innerHTML = slideNames[slideR];
			slideButtonRight.className = 'movebutton right';
		}
		else if (slideNr == slideNames.length-1) {
			slideNameRight.innerHTML = slideNames[1];
		}
		else {
			slideNameRight.innerHTML = '';
			slideButtonRight.className = 'movebutton right_inactive';
		}
		
		_slider.className = _slider.className + ' active';
		
		return true;
	}
	
	return false;
}

function showCenterImage(objid,width,height) {
	
	var obj = document.getElementById(objid);
	
	if (self.innerWidth) {
	  var frameWidth = self.innerWidth;
	  var frameHeight = self.innerHeight;
	}
	else if (document.documentElement && document.documentElement.clientWidth) {
	  var frameWidth = document.documentElement.clientWidth;
	  var frameHeight = document.documentElement.clientHeight;
	}
	else if (document.body) {
	  var frameWidth = document.body.clientWidth;
	  var frameHeight = document.body.clientHeight;
	}
	
	if (self.pageYOffset) {
	  var plusx= self.pageXOffset;
	  var plusy = self.pageYOffset;
	}
	else if(document.documentElement && document.documentElement.scrollTop) {
	  var plusx = document.documentElement.scrollLeft;
	  var plusy = document.documentElement.scrollTop;
	}
	else {
	  var plusx = document.body.scrollLeft;
	  var plusy = document.body.scrollTop;
	}

	// -20 : padding
	// -14 : jobb oldali scrollbar

	var posx = Math.round(frameWidth/2 - width/2 + plusx -20 -14);
	var posy = Math.round(frameHeight/2 - height/2 + plusy -20);
	
	obj.style.left = posx + 'px';
	obj.style.top = posy + 'px';


	visible(objid,true,'block');
}
  
function hideCenterImage(objid) {
	var obj = document.getElementById(objid);
	visible(objid,false,'');
}

function link_onclick() {
	
	var timer = 0;
	var location;
	var picWidth = 200;
	var picHeight = 200;
	var warning = '';

	var auditstring = this.getAttribute('clickaudit');
	if (auditstring) {
		audit(auditstring);
	}

	if (timer) clearTimeout(timer);
	location = this.getAttribute('href');
	if (!location) location = this.getAttribute('location');

	warning = this.getAttribute('warning');
	if (warning && warning != '') {
		if (!confirm(warning)) {
			return false;
		}
	}
	
	
	if ((this.getAttribute('inactivated')) && (this.getAttribute('inactivated') != '')) {
		alert(this.getAttribute('inactivated'));
		return false;
	}
	
	if ((location) && (location != '')) {
		timer = setTimeout("document.location='" + location + "'", 10);
	}

	return false;	
}

function form_onsubmit() {
	formname = this.getAttribute('name');
}

function submit_form() {

	var formname = '';
	var submitaction = '';
	
	if ((this.getAttribute('inactivated')) && (this.getAttribute('inactivated') != '')) {
		alert(this.getAttribute('inactivated'));
		return false;
	}

	formname = this.getAttribute('submit');
	submitaction = this.getAttribute('submitaction');
	
	if (submitaction) {
		document.forms['' + formname + ''].setAttribute('action', submitaction);
	}

	if (this.getAttribute('hidecontent')) {
		objname = this.getAttribute('hidecontent');
		if (document.getElementById(objname)) document.getElementById(objname).style.display='none';
	}
	if (this.getAttribute('showcontent')) {
		objname = this.getAttribute('showcontent');
		if (document.getElementById(objname)) document.getElementById(objname).style.display='';
	}
	document.forms['' + formname + ''].submit();

	return false;
}

var bl_pos = 0;

function shift_left(id) {

	var current = 0;
	var l = 1;
	
	if (bl_pos < bl_maxpos) {
		bl_pos = bl_pos + bl_width;
		current = document.getElementById(id).style.left;
		if (current == '') current = 0;
		else current = parseInt(current);
		for (i = (0 - current); i <= bl_pos; i+=(bl_width/10)) {
			setTimeout("changePos('" + id + "', '" + i + "')", l*100);
			l++;
		}
	}
	
	setTimeout("checkButtonbarPos(" + bl_pos + ")", l*100);
}

function shift_right(id) {

	var l = 1;
	var k = 0;

	if (bl_pos > 0) {
		bl_pos = bl_pos - bl_width;
		current = document.getElementById(id).style.left;
		if (current == '') current = 0;
		else current = parseInt(current);
		for (i = current; i <= (0 - bl_pos); i+=(bl_width/10)) {
			k = 0 - i;
			setTimeout("changePos('" + id + "', '" + k + "')", l*100);
			l++;
		}
	}

	setTimeout("checkButtonbarPos(" + bl_pos + ")", l*100);
}

function checkButtonbarPos(bl_pos) {

	if (bl_pos == 0) {
		document.getElementById('buttonbar-left-arrow').style.display = 'none';
		document.getElementById('buttonbar-right-arrow').style.display = 'block';
	}
	
	if (bl_pos > 0) {
		if (bl_pos == bl_maxpos) document.getElementById('buttonbar-right-arrow').style.display = 'none';
		else document.getElementById('buttonbar-right-arrow').style.display = 'block';

		document.getElementById('buttonbar-left-arrow').style.display = 'block';
	}

}

function changePos(id, bl_pos) {
	document.getElementById(id).style.left = -bl_pos + 'px';
}


function visible(obj, visible, display) {
	if (!display) display = '';
	
	if (document.all) {
		if (window.document.all(obj)) {
			if (visible=='change') visible=window.document.all(obj).style.display=='none';
			if (visible) window.document.all(obj).style.display=display;
			else window.document.all(obj).style.display='none';
		}
    }
    else if (document.getElementById) {
		if (document.getElementById(obj)) {
			if (visible=='change') visible=document.getElementById(obj).style.display=='none';
			if (visible) {
				document.getElementById(obj).style.display=display;
			}
			else document.getElementById(obj).style.display='none';
		}
	}
	
    return true;
}

function openPopup() {

	var location;
	var windowName;
	var width;
	var height;
	var usebg;

	location = this.getAttribute('openpopup');
	wName = this.getAttribute('wName');
	pWidth = this.getAttribute('pWidth');
	pHeight = this.getAttribute('pHeight');
	usebg = this.getAttribute('usebg');

	if (usebg == 1) {
		newWindow = window.open("", wName,'resizable=no,width='+pWidth+',height='+pHeight+',scrollbars=no');
		newWindow.document.writeln('<html><head></head><body background='+location+' onclick="self.close();"><div style="height: ' + pHeight + 'px;" onclick="self.close();"></div></body></html>');
	}
	else {
		newWindow = window.open(location, wName ,'width='+pWidth+',height='+pHeight+',status=no,toolbar=no,menubar=no,location=no,directories=no,resizable=yes,scrollbars=yes,titlebar=no');
	}

	return false;
}

function getAbsolutePosition(element) {
    var x = 0, y = 0;
    do {
      x += element.offsetLeft || 0;
      y += element.offsetTop  || 0;
      element = element.offsetParent;
    } while (element);
    return [x, y];
}