$j(document).ready(function(){
		// Beim starten wird history-Plugin initialisiert und ajaxGet mit "" aufgerufen
		// Bei jedem historyLoad oder Zurück im Browser wird ajaxGet aufgerufen.

        $j.history.init(ajaxGet, "content.php");

        $j("a[rel='historyLinks']").live('click',function(){
			//
			var hash = this.href;
			hash = hash.replace(/^.*#/, '');
			// moves to a new page.
			// ajaxGet is called at once.
			// hash don't contain "#", "?"
			$j.history.load(hash);
			return false;
		});
  });

  function ajaxGet(dataid) {
        /*if($j.browser.msie) {
		    // jquery's $.load() function does't work when hash include special characters like aao.
		    dataid = encodeURIComponent(dataid);
		} */

        //lade in den "main"-Bereich den content von dataid und rufe Funktion für Bubbleinfo auf
        $j("#main").load("content.php?content="+dataid+"", function() {
			if(dataid=="termine"||dataid=="kontakt"){
				$j('.bubbleInfo').each(function () {
					// options
					var distance = -10;
					var time = 250;
					var hideDelay = 250;
                    var opacityEnd;
                    var leftPos;

					var hideDelayTimer = null;

					// tracker
					var beingShown = false;
					var shown = false;

					var trigger = $j(this);
                    var popup;

                    if(dataid=="termine"){
                        popup = $j('.popup ul', this).css('opacity', 0);
                        opacityEnd = 0.8;
                        leftPos = -70;
                    }
                    else {
                        popup = $j('.popupKontakt ul', this).css('opacity', 0);
                        opacityEnd = 1.0;
                        leftPos = 30;
                    }


					// set the mouseover and mouseout on both element
					$j([trigger.get(0), popup.get(0)]).mouseover(function () {
						// stops the hide event if we move from the trigger to the popup element
						if (hideDelayTimer) clearTimeout(hideDelayTimer);

						// don't trigger the animation again if we're being shown, or already visible
						if (beingShown || shown) {
							return;
						} else {
							beingShown = true;

							// reset position of popup box
							popup.css({
								bottom: 25,
								left: leftPos,
								display: 'block' // brings the popup back in to view
							})

							// (we're using chaining on the popup) now animate it's opacity and position
							.animate({
								bottom: '+=' + distance + 'px',
								opacity: opacityEnd
							}, time, 'swing', function() {
								// once the animation is complete, set the tracker variables
								beingShown = false;
								shown = true;
							});
						}
					}).mouseout(function () {
						// reset the timer if we get fired again - avoids double animations
						if (hideDelayTimer) clearTimeout(hideDelayTimer);

						// store the timer so that it can be cleared in the mouseover if required
						hideDelayTimer = setTimeout(function () {
							hideDelayTimer = null;
							popup.animate({
								bottom: '-=' + distance + 'px',
								opacity: 0
							}, time, 'swing', function () {
								// once the animate is complete, set the tracker variables
								shown = false;
								// hide the popup entirely after the effect (opacity alone doesn't do the job)
								popup.css('display', 'none');
							});
						}, hideDelay);
					});
				});
			}
            /*prettyPrint();*/
        });

        if(dataid=="gaestebuch"){
            ajaxFunction('myspan','Gaestebuch/include/guestbook.php');
            preloadimg();
        }
  }
