var events = {
    event0:{
       name:'Christ Church Regatta 2008: Men\'s A (1)',
       content:'<a href="/images/CCR08/MA1.jpg"><img class="picture" style="width: 90%;" src="/images/CCR08/MA1.jpg"/></a>'
    },
    event1:{
      name:'Christ Church Regatta 2008: Men\'s A (2)',
      content:'<a href="/images/CCR08/MA2.jpg"><img class="picture" style="width: 90%;" src="/images/CCR08/MA2.jpg"/></a>'
    },
    event2:{
      name:'Christ Church Regatta 2008: Men\'s B',
      content:'<a href="/images/CCR08/MB.jpg"><img class="picture" style="width: 90%;" src="/images/CCR08/MB.jpg"/></a>'
    },
    event3:{
      name:'Christ Church Regatta 2008: Women\'s A',
      content:'<a href="/images/CCR08/WA.jpg"><img class="picture" style="width: 90%;" src="/images/CCR08/WA.jpg"/></a>'
    },
    event4:{
      name:'Christ Church Regatta 2008: Boathouse',
      content:'<a href="/images/CCR08/BH.jpg"><img class="picture" style="width: 90%;" src="/images/CCR08/BH.jpg"/></a>'
    }
};

var Dom = {
    get: function(el) {
        if (typeof el === 'string') {
            return document.getElementById(el);
        } else {
            return el;
        }
    },
    add: function(el, dest, before) {
        var el = this.get(el);
        var dest = this.get(dest);
        if (before) {
            dest.insertBefore(el, dest.firstChild);
        } else {
            dest.appendChild(el);
        }
    },
    remove: function(el) {
        var el = this.get(el);
        el.parentNode.removeChild(el);
    }
};

var Event = {
    add: function() {
        if (window.addEventListener) {
            return function(el, type, fn) {
                Dom.get(el).addEventListener(type, fn, false);
            };
        } else if (window.attachEvent) {
            return function(el, type, fn) {
                var f = function() {
                    fn.call(Dom.get(el), window.event);
                };
                Dom.get(el).attachEvent('on' + type, f);
            };
        }
    }()
};

function updateHTML(elmId, value) {
  document.getElementById(elmId).innerHTML = value;
}

function setResult(id) {
  var resultId = id.replace(/[^0-9]/, "");
  var event = eval("events.event" + resultId);
  if (event) {
    updateHTML('picture', event.content);
    updateHTML('picturetitle', event.name);
    document.title = event.name + " - Pictures - Exeter College Boat Club, Oxford";
  }
}

Event.add(window, 'load', function() {
  
  var resultGetId = findGETVariable('result');
  if (resultGetId != null) {
    setResult(resultGetId);
  }
  
  var anchors = document.getElementById('menu').getElementsByTagName('a');
  for (var i = 0; i < anchors.length; i++) {
    var anchor = anchors.item(i);
    var href = anchor.href;
    
    var closureMaker = function(reference) {
      return function(e) {
        var splitReference = reference.split('=');
        setResult(splitReference[splitReference.length - 1]);
        stopDef(e);
      }
    }
    var closure = closureMaker(href);
    Event.add(anchor, 'click', closure);
  }

});

function findGETVariable(name) {
  var URL = unescape(window.document.location);
  
  if (URL.indexOf("?") > -1) {
    var pairs = URL.split("?")[1].split("&");
    for (var i = 0; i < pairs.length; i++) {
      var parts = pairs[i].split("=");
      if (parts[0] == name) {
        return parts[1];
      }
    }
  }
  return null;
}

function stopDef(e) {
  e = e || event;
  if (e.preventDefault) {
      e.preventDefault(); // All browsers except IE
  } else {
      e.returnValue = false; // IE
  }
}