function getElementsByClassName(oElm, strTagName, strClassName){
    var arrElements = (strTagName == "*" && document.all)? document.all : oElm.getElementsByTagName(strTagName);
    var arrReturnElements = new Array();
    strClassName = strClassName.replace(/\-/g, "\\-");
    var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
    var oElement;
    for(var i=0; i<arrElements.length; i++){
        oElement = arrElements[i];
        if(oRegExp.test(oElement.className)){
            arrReturnElements.push(oElement);
        }
    }
    return (arrReturnElements)
}

function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      oldonload();
      func();
    }
  }
}

function clearmedia() {
	var media = document.getElementById("media");
	if (media && media.hasChildNodes()) {
		var child;
		while (child = media.firstChild) {
			media.removeChild(media.firstChild);
		}
	}
}

function showMovie() {
	if (movieinfo[this.id]) {
		clearmedia();
		var s1 = new SWFObject("swf/flvplayer.swf","single","383","310","7");
		s1.addParam("allowfullscreen","true");
		s1.addVariable("displayheight","310");
		s1.addVariable("backcolor","0xdbcf9d");
		s1.addVariable("file",movieinfo[this.id]['movie']);
		s1.addVariable("image",movieinfo[this.id]['image']);
		s1.write("media");
		return false;
	}
}

function swapMainImg() {
	var media = document.getElementById('media');
	if (media != null) {
		var mainImage = document.getElementById('mainImage');
		if (mainImage == null) {
			clearmedia();		
			mainImage = document.createElement('img');
			mainImage.id = "mainImage";
			media.appendChild(mainImage);
		}
	}
	if (mainImage != null) {
		var images = this.getElementsByTagName("img");
		if (images != null && images.length > 0) {
			var newImage = document.createElement("img");
			newImage.setAttribute("title",images[0].getAttribute("title"));
			newImage.setAttribute("alt",images[0].getAttribute("alt"));
			newImage.onload = function() {
				var mainImage = document.getElementById('mainImage');
				mainImage.removeAttribute("width");
				mainImage.removeAttribute("height");
				mainImage.src = this.src;
				mainImage.setAttribute("title",this.getAttribute("title"));
				mainImage.setAttribute("alt",this.getAttribute("alt"));
			}
			newImage.src = this.getAttribute("href");
			return false;
		}
	}
}

function setupMainImageSwitching() {
	var imageActuators = getElementsByClassName(document,"a","mainImgActuator");
	for (i=0; i<imageActuators.length; i++) {
		imageActuators[i].onclick = swapMainImg;
	}
	var movieActuators = getElementsByClassName(document,"a","mainMovieActuator");
	for (i=0; i<movieActuators.length; i++) {
		movieActuators[i].onclick = showMovie;
	}

}

addLoadEvent(setupMainImageSwitching);
