
function goNext() { if(dir && actLim > act) { if(act == 0) act = 1; selImg(++act); } else { dir = false; selImg(--act); if(act == 1) { act = 1; dir = true; } } }
var act = 0, actpos = 0, dir = true;
function selImg(key) {
	goReturn();
	actObj = key;
	var val = (-300*(key-1));
	new Animator().addSubject(new NumericalStyleSubject(_('AnimInside'), 'left', actpos, val)).play();
	act = key;
	actpos = val;
	return false;
}
var click_obj;
function goLoc(url) {
	document.location.href = url;
	return false;	
}
function _(o) { return document.getElementById(o); }
function findSourceElement(e) {
  // finds event source
  if (typeof e == 'undefined') {
    var e = window.event;
  }
 
  var source;
  if (typeof e.target != 'undefined') {
    source = e.target;
  }
  else if (typeof e.srcElement != 'undefined') {
    source = e.srcElement;
  }
  else {
    return true;
  }
  if (source.nodeType == 3) {
    source = source.parentNode;
  }
  return source;
}
function showElements(evt, direct) {
	if (!evt) var evt = window.event;
	var obj;
	if(direct) obj = evt; else obj = findSourceElement(evt);
	var toobj = obj;
	var tobj = _(toobj.id + '_top');
	var boobj = obj;
	var bstr = false;
	var bobj = _(boobj.id + '_btm');
	while(!tobj) {
		toobj = toobj.parentNode;
		tobj = _(toobj.id + '_top');
	}
	if(tobj) tobj.className = 'corner_on';
	if(tobj && toobj.className.indexOf(' bottom_') !== -1) {
		var aStr = toobj.className.split(' bottom_');
		var str = aStr[1];
		if(str.indexOf(' ') !== -1) {
			var aStr = str.split(' ');
			str = aStr[0];	
		}
		bstr = str;
	}
	if(bstr) {
		 bobj = _(bstr);
	} else {
		while(!bobj) {
			boobj = boobj.parentNode;
			bobj = _(boobj.id + '_btm');
		}
	}
	
	if(bobj) bobj.className = 'corner_on';
	//playSound();
}
function hideElements(evt, direct) {
	if (!evt) var evt = window.event;
	var obj;
	if(direct) obj = evt; else obj = findSourceElement(evt);
	var toobj = obj;
	var tobj = _(toobj.id + '_top');
	var boobj = obj;
	var bstr = false;
	var bobj = _(boobj.id + '_btm');
	while(!tobj) {
		toobj = toobj.parentNode;
		tobj = _(toobj.id + '_top');
	}
	if(tobj) tobj.className = 'corner';
	if(tobj && toobj.className.indexOf(' bottom_') !== -1) {
		var aStr = toobj.className.split(' bottom_');
		var str = aStr[1];
		if(str.indexOf(' ') !== -1) {
			var aStr = str.split(' ');
			str = aStr[0];	
		}
		bstr = str;
	}
	if(bstr) {
		 bobj = _(bstr);
	} else {
		while(!bobj) {
			boobj = boobj.parentNode;
			bobj = _(boobj.id + '_btm');
		}
	}
	if(bobj) bobj.className = 'corner';
}
function recursive(par, showFnc, hideFnc) {
	var vobj;
	for(var i = 0; i < par.childNodes.length; i++) {
		vobj = par.childNodes[i];
		if(typeof(vobj) != "object") continue;
		try {
			vobj.onmouseover = showFnc;
			vobj.onmouseout = hideFnc;
		} catch(e) { }
		recursive(vobj, showFnc, hideFnc);
	}
}
function registerElements() {
	elems = getElementsByClassName('got_corner');
	var obj;
	for(var i = 0; i < elems.length; i++) {
		obj = elems[i];
		obj.onmouseover = showElements;
		obj.onmouseout = hideElements;
		recursive(obj, showElements, hideElements);
	}
	createSound();
}
function getElementsByClassName(className, tag, elm){
	var testClass = new RegExp("(^|\\s)" + className + "(\\s|$)");
	var tag = tag || "*";
	var elm = elm || document;
	var elements = (tag == "*" && elm.all)? elm.all : elm.getElementsByTagName(tag);
	var returnElements = [];
	var current;
	var length = elements.length;
	for(var i=0; i<length; i++){
		current = elements[i];
		if(testClass.test(current.className)){
			returnElements.push(current);
		}
	}
	return returnElements;
}
function showZoom(obj) {
	if(!obj) var obj = _('AnimInfo')
	obj.className = (!actZoom?'zoomin':'zoomout');
}
function hideZoom(obj) {
	if(!obj) var obj = _('AnimInfo')
	obj.className = '';
}
function createSound() {
	/*createElem('sound');
	var so = new SWFObject('objects/click.swf', 'click_obj', 1, 1, 8, '#ffffff');
	so.write("sound");
	click_obj = _('click_obj');
	*/
}
function playSound() {
	click_obj.omo();	
}
function createElem(id) {
	document.write('<' + 'div id="' + id + '"></' + 'div>');	
}
					var actZoom = null, parentObj;
					function goReturn() {
						if(actZoom) {
							goBack(actZoom);
						}
					}
					function moveImage(evt) {
						if(actZoom) {
							var x = mouseX(evt), y = mouseY(evt);
							var posX = x - parentObj.x, posY = y - parentObj.y;
							actZoom.style.left = -(posX) + 'px';
							actZoom.style.top = -(posY) + 'px';
						}	
					}
					function getImagePos(evt) {
						if(actZoom) {
							var x = mouseX(evt), y = mouseY(evt);
							var posX = x - parentObj.x, posY = y - parentObj.y;
							return [-(posX) + 'px', -(posY) + 'px'];
						}	
					}
					function db(v) {
						_('debug').innerHTML = v;	
					}
					function activateMovement() {
						parentObj = new Dimension(actZoom.parentNode.parentNode.parentNode);
						actZoom.onmousemove = moveImage;
					}
					function disableMovement() {
						if(actZoom) {
							actZoom.onmousemove = function() {};	
						}
					}
function Dimension(element){
      this.x=-1;
      this.y=-1;
      this.w=0;
      this.h=0;
      if (element==document){
            this.x=element.body.scrollLeft;
            this.y=element.body.scrollTop;
            this.w=element.body.clientWidth;
            this.h=element.body.clientHeight;
      }else if (element!=null){
            var e=element;
            var left=e.offsetLeft;
            while ((e=e.offsetParent)!=null) { 
                  left+=e.offsetLeft; 
            }
            var e=element;
            var top=e.offsetTop;
            while((e=e.offsetParent)!=null) { 
                  top+=e.offsetTop; 
            }
            this.x=left;
            this.y=top;
            this.w=element.offsetWidth;
            this.h=element.offsetHeight;
      }
}
function mouseX(evt) {
	if(!evt) evt = event;
	if (evt.pageX != undefined) return evt.pageX;
	else if (evt.clientX != undefined)
 	  return evt.clientX + (document.documentElement.scrollLeft ?
 	  document.documentElement.scrollLeft :
 	  document.body.scrollLeft);
	else return null;
}
function mouseY(evt) {
	if(!evt) evt = event;
	if (evt.pageY != undefined) return evt.pageY;
	else if (evt.clientY != undefined)
	   return evt.clientY + (document.documentElement.scrollTop ?
	   document.documentElement.scrollTop :
	   document.body.scrollTop);
	else return null;
}
					function goZoom(evt, obj) {
						if(obj.rel == 'iz') return goBack(obj);
						goReturn();
						obj.src = obj.src.replace('.jpg', '.jpg');
						obj.rel = 'iz';
						actZoom = obj;
						parentObj = new Dimension(actZoom.parentNode.parentNode.parentNode);
						_('AnimInfo').className = 'zoomout';
						var poses = getImagePos(evt);
						new Animator({onComplete:activateMovement}).addSubject(new NumericalStyleSubject(obj, 'left', 0, poses[0])).addSubject(new NumericalStyleSubject(obj, 'top', 0, poses[1])).addSubject(new NumericalStyleSubject(obj, 'width', 300, 600)).addSubject(new NumericalStyleSubject(obj, 'height', 400, 800)).seekTo(1);
						return false;
					}
					function goBack(obj) {
						obj.src = obj.src.replace('.jpg', '.jpg');
						obj.rel = '';
						disableMovement();
						_('AnimInfo').className='zoomin';
						actZoom = null;
						new Animator().addSubject(new NumericalStyleSubject(obj, 'width', obj.style.width, 300)).addSubject(new NumericalStyleSubject(obj, 'left', obj.style.left, 0)).addSubject(new NumericalStyleSubject(obj, 'top', obj.style.top, 0)).addSubject(new NumericalStyleSubject(obj, 'height', obj.style.height, 400)).seekTo(1);
					}