window.addEvent('domready', function() {

  /* external links */
  var objs = $$('a');
  objs.each(function(obj, i) {
    if (obj.get('href') && (obj.get('rel') == 'external')){
      obj.set('target', '_blank');
    }
  });

  /* IE hovers */
  if (Browser.Engine.trident){
    var objs = $$('button');
    objs.each(function(obj, i) {
      obj.addEvent("mouseover", function(event) {
        this.addClass('hover');
      });
    	obj.addEvent("mouseout", function(event) {
        this.removeClass('hover');
      });
    });
    var objs = $$('input').extend($$('textarea'));
    objs.each(function(obj, i) {
      obj.addEvent("focus", function(event) {
        this.addClass('focus');
    	});
    	obj.addEvent("blur", function(event) {
        this.removeClass('focus');
    	});
    });
  }

  if ($chk($('slideshow'))) {
    fobj = new Swiff('swf/slideshow.swf', {
      id: 'fObject',
      width: 328,
      height: 417,
      version: 8,
      container: 'slideshow',
      params: {
      	wmode: 'transparent',
      	bgcolor: '#86888a'
      },
      vars: {
        img: 'swf/imports/rsh-flash01.jpg,swf/imports/rsh-flash02.jpg,swf/imports/rsh-flash03.jpg,swf/imports/rsh-flash04.jpg,swf/imports/rsh-flash06.jpg'
      }
    });
  }

  if ($chk($('subject'))) {

    var prev = $('subject').get('value');
    var reserve = new Fx.Slide('reservation');
    var functions = new Fx.Slide('functions');

    switch(prev){
      case 'Restaurant reservation':
        functions.hide();
      break;
      case 'Functions':
        reserve.hide();
      break;
      default:
        reserve.hide();
        functions.hide();
      break;
    }

    $('subject').addEvent("change", function(event) {
      var val = this.get('value');
      switch(val){
        case 'Restaurant reservation':
          if (prev == 'Functions') {
            functions.slideOut().chain(function(){
              reserve.slideIn();
            });
          } else {
            reserve.slideIn();
          }
        break;
        case 'Functions':
          if (prev == 'Restaurant reservation') {
            reserve.slideOut().chain(function(){
              functions.slideIn();
            });
          } else {
            functions.slideIn();
          }
        break;
        default:
          functions.slideOut();
          reserve.slideOut();
        break;
      }
      prev = val;
    });
  }

});