
var myTimeOut;
var myInterval;


function toggleSomething(_id){
	var content = document.getElementById(_id);
	if(content.style.visibility == 'hidden'){
		content.style.visibility='visible';
	}else{
		content.style.visibility='hidden';
	}
}

function changeName(str){
	stopBlinking();
	var an = document.getElementById('artistNameHolder');
	an.innerHTML = str;
	an.style.visibility='visible';
}
function stopBlinking(){
	clearTimeout(myTimeOut);
	var content = document.getElementById('artistNameHolder');
	content.style.visibility='visible';
}
function blinkMe(){
	toggleSomething('artistNameHolder');
	myTimeOut = setTimeout(blinkMe,700);
}
// find ineer and outer elements height

function initScrollers(){

	var nodeList = getElementsByClassName("selectedArtist","a")
	// set up artist scroller
	//alert("init!");
	ArtistListObj = document.getElementById('ArtistList');
	
	//alert("init!");
	if (ArtistListObj){
		var nodeList = getElementsByClassName("selectedArtist","a",ArtistListObj);
		
		ArtistListInnerObj = document.getElementById('ArtistListInner');
		
		ArtistListHeight = ArtistListObj.offsetHeight;
		ArtistListInnerHeight = ArtistListInnerObj.offsetHeight;
		avarageSize = ArtistListInnerHeight-ArtistListHeight;
		if (nodeList[0]){
			var Menuposition = nodeList[0].offsetTop;
			Menuposition = Math.min(avarageSize,Menuposition);
			ArtistListInnerObj.style.top = "-"+Menuposition+"px";
			
		}else{
			Menuposition=0;
		}
		positionNo = Menuposition;
		
		/*if (window.addEventListener)
			window.addEventListener('DOMMouseScroll', wheel, false);
		
		window.onmousewheel = document.onmousewheel = wheel;
	*/
	}
	
	
	// set up second scroller
	scrollBox2Obj = document.getElementById('scrollBox2');
	if (scrollBox2Obj){
		scrollBox2holderObj = document.getElementById('scrollBox2holder');
		ScrollBox2Height = scrollBox2Obj.offsetHeight;
		scrollBox2holderHeight = scrollBox2holderObj.offsetHeight;
		avarageSize2 = ScrollBox2Height-scrollBox2holderHeight;
		positionNo2 = 0;
		
		// show scrollers for main Holder content if needed
		if (avarageSize2>0){
			document.getElementById('scrollUp2').style.display = 'block';
			document.getElementById('scrollDown2').style.display = 'block';
		}else{
			document.getElementById('scrollUp2').style.display = 'none';
			document.getElementById('scrollDown2').style.display = 'none';
		}
		
	}
	
	if (window.addEventListener)
		window.addEventListener('DOMMouseScroll', wheel, false);
	
	window.onmousewheel = document.onmousewheel = wheel;
	
	defaultSpeed = 1;
	maxSpeed = 8;
	accelaration = 0.05;
	speed = defaultSpeed;
	fps = 33;
	//alert("initiated! "+avarageSize2);

}
// when mouse hovers over up button
function mouseOverUp(){
		myInterval = window.setInterval(moveContentDown,fps);
}
function mouseOverDown(){
		myInterval = window.setInterval(moveContentUp,fps);
}

function mouseOverUp2(){
		myInterval = window.setInterval(moveContentDown2,fps);
}
function mouseOverDown2(){
		myInterval = window.setInterval(moveContentUp2,fps);
}

function mouseOutHandler(){
	if(myInterval!="undefined") 
		clearInterval(myInterval);
	speed = defaultSpeed;
}

function moveContentDown(){
	if (ArtistListObj){
		speed = Math.min(speed+accelaration,maxSpeed);
		positionNo -= speed;
		if (positionNo<0){
			positionNo=0;
			mouseOutHandler();
		}
		var topPos = new String('-'+positionNo+'px');
		
		ArtistListInnerObj.style.top = topPos;
		//alert(speed + " : "+positionNo+  " : "+topPos);
	}
}

function moveContentUp(){
	if (ArtistListObj){
		speed = Math.min(speed+accelaration,maxSpeed);
		positionNo += speed;
		
		if (positionNo>avarageSize){
			positionNo = avarageSize;
			mouseOutHandler();
		}
		var topPos = new String('-'+positionNo+'px');
		
		ArtistListInnerObj.style.top = topPos;
		
		//alert(speed + " : "+positionNo+  " : "+topPos);
	}
}

function moveContentDown2(){
	if (scrollBox2Obj){
		speed = Math.min(speed+accelaration,maxSpeed);
		positionNo2 -= speed;
		if (positionNo2<0){
			positionNo2=0;
			mouseOutHandler();
		}
		var topPos = new String('-'+positionNo2+'px');
		scrollBox2Obj.style.top = topPos;
	}
}
function moveContentUp2(){
	if (scrollBox2Obj){
		speed = Math.min(speed+accelaration,maxSpeed);
		positionNo2 += speed;
		
		if (positionNo2>avarageSize2){
			positionNo2 = avarageSize2;
			mouseOutHandler();
		}
		var topPos = new String('-'+positionNo2+'px');
		//alert(topPos);
		scrollBox2Obj.style.top = topPos;
	}
}

function get_cookie(Name) {
  var search = Name + "="
  var returnvalue = "";
  if (document.cookie.length > 0) {
    offset = document.cookie.indexOf(search)
    // if cookie exists
    if (offset != -1) { 
      offset += search.length
      // set index of beginning of value
      end = document.cookie.indexOf(";", offset);
      // set index of end of cookie value
      if (end == -1) end = document.cookie.length;
      returnvalue=unescape(document.cookie.substring(offset, end))
      }
   }
  return returnvalue;
}

// ARTIST GALLERY FUNC
function switchImage(dir){

	galleryHolder = document.getElementById('galleryArr');
	imgCounter+=dir;
	
	if (imgCounter<=0){ 
		imgCounter=0;
		document.getElementById('prevBT').style.visibility = 'hidden';
	}else{
		document.getElementById('prevBT').style.visibility = 'visible';
	}
	
	if (imgCounter>=(gImg.length-1)){
		imgCounter=gImg.length-1;
		document.getElementById('nextBT').style.visibility = 'hidden';
	}else{
		document.getElementById('nextBT').style.visibility = 'visible';
	}
	
	var myImg = gImg[imgCounter].img_httppath;
	var myImgName = gImg[imgCounter].img_title;
	var img_year = gImg[imgCounter].img_year;
	var img_technique = gImg[imgCounter].img_technique;
	var img_dimensions = gImg[imgCounter].img_dimensions;
	var img_width = gImg[imgCounter].img_width;
	var img_height = gImg[imgCounter].img_height;
	
	var imageNameHolder = document.getElementById('imageName');
	
	imageNameHolder.innerHTML = myImgName;
	document.getElementById('imageData').innerHTML = img_year+'<br />'+img_technique+'<br />'+img_dimensions;
	
	var len = galleryHolder.childNodes.length;
	
	for(var i = 0; i < len; i++)	   {
		galleryHolder.removeChild(galleryHolder.childNodes[i]);
	}
	
	var imgBoxDim = 460;
	var myElement = document.createElement('img');
	myElement.setAttribute('src',myImg);
	if (img_width>=img_height){	
		myElement.setAttribute('width',imgBoxDim);
		
		myElement.setAttribute('height',(imgBoxDim/img_width)*img_height);
		
		offsetX = (imgBoxDim - ((imgBoxDim/img_width)*img_height))/2
		myElement.style.position = 'relative';
		myElement.style.top = offsetX+'px';
		//alert("setting width");
	}else{	
		myElement.setAttribute('height',imgBoxDim);
		myElement.setAttribute('width',(imgBoxDim/img_height)*img_width);
	}
	//alert(myImg);
	myElement.setAttribute('border',0);
	
	galleryHolder.appendChild(myElement);
	galleryHolder.href=myImg;
	galleryHolder.title=myImgName;
	
}

function showArtist(_id){
	var movie = getFlashMovieObject('flashHolder');
	if (movie) movie.js_showArtist(_id);
	var artistElement =document.getElementById('artist'+_id).innerHTML;
	
	renderArtistrName("<p id='artistNameHolder'>"+artistElement+"</p>");
	
}

function hideArtist(_id){
	var movie = getFlashMovieObject('flashHolder');
	if (movie) 	movie.js_hideArtist(_id);
	
	//renderArtistrName("<a href='javascript:void(0)'><span style='color:#6CC'>&gt;</span><strong> Artist list<strong></a>");
	renderArtistrName("");
}

function renderArtistrName(str){
	
	var sortByArtistPlace_obj =document.getElementById('sortByArtistPlace');
	if (sortByArtistPlace_obj){
		sortByArtistPlace_obj.innerHTML = str;
	}
}


function getFlashMovieObject(movieName){
	if (window.document[movieName]){
		return window.document[movieName];
	}
	if (navigator.appName.indexOf("Microsoft Internet")==-1){
		if (document.embeds && document.embeds[movieName])
			return document.embeds[movieName];
	}
	else // if (navigator.appName.indexOf(“Microsoft Internet”)!=-1)
	{
		return document.getElementById(movieName);
	}
}


function handle(delta) {
	if (delta < 0){
		moveContentUp();
		moveContentUp2()
	}else{
		moveContentDown();
		moveContentDown2();
	}
}


function wheel(event){
	var delta = 0;
	
	if (!event) event = window.event;
	if (event.wheelDelta) {
		delta = event.wheelDelta/12; 
		if (window.opera) delta = -delta;
	} else if (event.detail) {
		delta = -event.detail/3;
	}
	
	if (delta)
		handle(delta);
        if (event.preventDefault)
                event.preventDefault();
        event.returnValue = false;
}


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;
}


