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

///////////////////////////////////////////////////

addLoadEvent(setForm);

///////////////////////////////////////////////////

function swapPics(clicked) {
	var theList = document.getElementById("picList");
	var listPics = theList.getElementsByTagName("li");
	
	//lopp through and hide all
	for (var i=0; i<listPics.length; i++) {
		listPics[i].style.display = "none";
	}
	
	var amHere = clicked.getAttribute("rel");
	
	var showMeID = "pic_" + amHere;
	
	var cnt = listPics.length;
	var newPrev = (amHere * 1) - 1;
	var newNext = (amHere * 1) + 1;
	
	if(newPrev < 0) newPrev = cnt - 1; //goes to last pic
	if(newNext >= cnt) newNext = 0; //goes to first pic
	
	//now show the one we want
	Effect.Appear(showMeID);
	//Effect.Grow(showMeID);
	
	//update the prev/next buttons
	
	document.getElementById("prevCntrl").setAttribute("rel", newPrev);
	document.getElementById("nextCntrl").setAttribute("rel", newNext);
	
	//update the whichPicAt div
	
	var picNum = (amHere * 1) + 1;
	var newText = document.createTextNode(picNum);
	var replaceMe = document.getElementById("whichPicAt").firstChild;
	document.getElementById("whichPicAt").replaceChild(newText, replaceMe);
}

///////////////////////////////////////////////////

function showPic(selectElm) {
	var source = selectElm.value;
	var placeHolder = document.getElementById("placeholder");
	placeHolder.setAttribute("src",source);
}

///////////////////////////////////////////////////

  function selectReplacement(obj) {
      obj.className += ' replaced';
      var ul = document.createElement('ul');
      ul.className = 'selectReplacement';
      var opts = obj.options;
      for (var i=0; i<opts.length; i++) {
        var selectedOpt;
        if (opts[i].selected) {
          selectedOpt = i;
          break;
        } else {
          selectedOpt = 0;
        }
      }
      for (var i=0; i<opts.length; i++) {
        var li = document.createElement('li');
        var txt = document.createTextNode(opts[i].text);
        li.appendChild(txt);
        li.selIndex = opts[i].index;
        li.selectID = obj.id;
        li.onclick = function() {
          selectMe(this);
        }
        if (i == selectedOpt) {
          li.className = 'selected';
          li.onclick = function() {
            this.parentNode.className += ' selectOpen';
            this.onclick = function() {
              selectMe(this);
            }
          }
        }
        if (window.attachEvent) {
          li.onmouseover = function() {
            this.className += ' hover';
          }
          li.onmouseout = function() {
            this.className = 
              this.className.replace(new RegExp(" hover\\b"), '');
          }
        }
        ul.appendChild(li);
      }
      obj.parentNode.insertBefore(ul,obj);
    }
    function selectMe(obj) {
      var lis = obj.parentNode.getElementsByTagName('li');
      for (var i=0; i<lis.length; i++) {
        if (lis[i] != obj) {
          lis[i].className='';
          lis[i].onclick = function() {
            selectMe(this);
          }
        } else {
          setVal(obj.selectID, obj.selIndex);
          obj.className='selected';
          obj.parentNode.className = 
            obj.parentNode.className.replace(new RegExp(" selectOpen\\b"), '');
          obj.onclick = function() {
            obj.parentNode.className += ' selectOpen';
            this.onclick = function() {
              selectMe(this);
            }
          }
        }
      }
    }
    function setVal(objID, selIndex) {
      var obj = document.getElementById(objID);
      obj.selectedIndex = selIndex;
      
     	var source = obj.value;
		var placeHolder = document.getElementById("placeholder");
		placeHolder.setAttribute("src",source);
    }
    function setForm() {
      var s = document.getElementsByTagName('select');
      for (var i=0; i<s.length; i++) {
        selectReplacement(s[i]);
      }
    }
