$(document).ready(function() {
  var img = new Image();

  $(img).load(function() {
    $(img).hide();
    $('#maploader').removeClass('maploading').append(this);

    $(this).fadeIn('slow', function() {
      // $('img[usemap]').maphilight();
    });
  })
  .attr('src', '../images/karte.png')
  .attr('class', 'map')
  .attr('useMap', '#karte');

  var oldMSIE = $.browser.msie && $.browser.version.substr(0, 1) <= 6;

  if ( oldMSIE ) {
    $('.tooltip').css({
      background: 'url(/images/tooltip/bg_tooltip_simple.gif) bottom no-repeat'
    });
  }

  $('.tooltip').scale9Grid({
    top: 25,
    bottom: 38,
    left: 25,
    right: 25
  });

  $('area').tooltip({
    // effect: 'slide',
    // tip: '.tooltip',
    tip: 'div#t_',
    // position: 'top center',
    // relative: true,
    offset: [-5, 0],
    delay: 500,

    onBeforeShow: function(e, pos) {
      var conf = this.getConf();
      var tip = this.getTip();
      var target = this.getTrigger().context;
      // var top = e.pageY;
      // var left = e.pageX;
      var top, left;

      if ( !target.tagName.match(/^area$/i) ) {
        return;
      }

      var coords = target.coords.split(',');

      if ( target.shape.match(/^circle$/i) ) {
        top = Number(coords[1]);
        left = Number(coords[0]);
      }
      else if ( target.shape.match(/^rect$/i) ) {
        top = (Number(coords[3]) - Number(coords[1])) / 2;
        left = (Number(coords[2]) - Number(coords[0])) / 2;
      }
      else {
        return;
      }

      conf.coordY = top;
      conf.coordX = left;

      top -= tip.outerHeight() - conf.offset[0];
      left += conf.offset[1];

      // adjust Y
      var posY = conf.position[0];
      var height = tip.outerHeight();

      if ( posY == 'center' ) {
        top += height / 2;
      }

      if ( posY == 'bottom' ) {
        top += height;
      }

      // adjust X
      var posX = conf.position[1];
      var width = tip.outerWidth();

      if ( posX == 'center' ) {
        left -= width / 2;
      }

      if ( posX == 'left' ) {
        left -= width;
      }

      var offset = $('.map').offset();
      pos.top = top + offset.top;
      pos.left = left + offset.left;

      // pos.top = offset.top;
      // pos.left = offset.left;
    },

    onShow: function() {
      var conf = this.getConf();
      var offset = $('.map').offset();
      var oldMSIE = $.browser.msie && $.browser.version.substr(0, 1) <= 6;
      var ext = oldMSIE ? '.gif' : '.png';

      $('.arrow').css({
        background: 'url(/images/tooltip/arrow' + ext + ') no-repeat',
        width: '25px',
	height: '13px',
	display: 'block',
        position: 'absolute',
	zIndex: 10,
        top: conf.coordY + offset.top - 19,
        left: conf.coordX + offset.left - 13
      });
/*
      $('.tooltip h2').scale9Grid({
        top: 10,
        bottom: 0,
        left: 10,
        right: 10
      });
*/
      // $('.tooltip').corner();
    },
    
    onHide: function() {
      $('.arrow').css({
        display: 'none'
      });

      // $('.tooltip h2').remove9Grid();
    }
  });

  $("a[rel],area").overlay({
    // expose: 'darkred',
    // effect: 'apple',
    target: '#overlay',
    speed: 0,
    closeSpeed: 0,
    top: 0,
    left: 0,

    onBeforeLoad: function() {
      // grab wrapper element inside content
      var wrap = this.getContent().find(".contentWrap");

      // load the page specified in the trigger
      wrap.load(this.getTrigger().attr("href") + "?jquery=1");
/*
      $("#accordion").tabs("#accordion div.pane", {
        tabs: 'h2',
        // effect: 'slide',
        initialIndex: null
      });
*/
    },

    onLoad: function() {
    }
  });
});

