DialogPerfect = function() { };

$(window).load(function() {
	$('body').supersleight();
});


$(document).ready(function() {
	$('ul.submenu').css('visibility', 'hidden');

	$('ul.menu > li').hover(function() {
		$(this).children('ul.submenu').css('visibility', 'visible');
	}, function() {
		$(this).children('ul.submenu').css('visibility', 'hidden');
	});

	$('.mediumBeschriftung').each(function() {
		$(this).parent().prev('a').attr('title', $(this).text());
	});

	$('label.optional').next('input[type=text][value=""]').attr('value', formOptionalText).css('color', '#AAA').focus(function() {
		if(this.value === formOptionalText) {
			this.value = '';
			$(this).css('color', '#333');
		}
	}).blur(function() {
		if(this.value === '') {
			this.value = formOptionalText;
			$(this).css('color', '#AAAAAA');
		}
	});

	/*$("a.fancybox").fancybox({ 'hideOnContentClick': false });*/

	$('.bilderGalerie .right a').bind('click', function() {
		var contentEle = $('.bilderGalerie .bilderGalerieContent');
		var leftPos = $(contentEle).position().left;

		if(contentEle.width() < $('.bilderGalerieInner').width() || (contentEle.width() - Math.abs(leftPos)) < $('.bilderGalerieInner').width()) return;

		contentEle.css('left', (leftPos - 30) + 'px');
	});

	$('.bilderGalerie .left a').bind('click', function() {
		var contentEle = $('.bilderGalerie .bilderGalerieContent');
		var leftPos = $(contentEle).position().left;

		if(leftPos >= 0) return;

		contentEle.css('left', (leftPos + 30) + 'px');
	});
	$('.page_header').ticker();
});

DialogPerfect.initMap = function(options) {
	if (GBrowserIsCompatible())
	{
		var defaults = {
			zoom: 13,
			center: new GLatLng(51.726284, 8.797302),
			divContainer: 'googleMap'
		};

		var options = $.extend(defaults, options);

		this.searchAddress = options.searchAddress;

		this.map = new GMap2(document.getElementById(options.divContainer));
		this.map.setCenter(options.center, options.zoom);
		this.map.enableScrollWheelZoom();
		var mapui = this.map.getDefaultUI();
		this.map.setUI(mapui);

		marker = new GMarker(options.center);
		this.map.addOverlay(marker);

		GEvent.addListener(marker, "mouseover", function() {
			marker.openInfoWindowHtml(options.markerText);
		});

		GEvent.addListener(marker, "mouseout", function() {
			marker.closeInfoWindow();
		});
	}
};

DialogPerfect.findAddress = function(from, to) {
	if(this.gdir === undefined)
	{
		this.gdir = new GDirections(this.map, document.getElementById("maps_ergebnis"));

		GEvent.addListener(this.gdir, "load", function() { });
		GEvent.addListener(this.gdir, "error", function() {
			var statusCode = DialogPerfect.gdir.getStatus().code;

			if (statusCode == G_GEO_UNKNOWN_ADDRESS || statusCode == G_GEO_MISSING_QUERY)
			{
				alert("Die gesuchte Adresse wurde nicht gefunden.");
			}
			else if (statusCode == G_GEO_SERVER_ERROR || statusCode == G_GEO_BAD_KEY || statusCode == G_GEO_BAD_REQUEST)
			{
				alert("Der Geo-Server wurde nicht erreicht.");
			}
			else alert("Es ist ein fehler aufgetreten.");
		});
	}

	if(to === undefined) to = this.searchAddress;

	this.gdir.load("from: " + from + " to: " + to, { "locale": "de_DE" });
};

jQuery.fn.ticker = function(options) {
	var defaults = {
		speed: 50
	};

	var options = $.extend(defaults, options);

	var leftPosition = 0;
	//var startPosition = leftPosition;
	var tickerDiv = $(this);
	//var isMouseOver = false;

	//$(tickerDiv).css('background-position', leftPosition + 'px');

	jQuery.fn.ticker.tickerTimer = function() {
        leftPosition = leftPosition + 1;
		/*if(leftPosition < -(tickerDiv.width()))
		{
			leftPosition = startPosition;
		}*/

		$(tickerDiv).css('background-position', leftPosition + 'px 0px');

		setTimeout("jQuery.fn.ticker.tickerTimer()", options.speed);
	};

	jQuery.fn.ticker.tickerTimer();
};

jQuery.fn.supersleight = function(settings) {
	settings = jQuery.extend({
		imgs: true,
		backgrounds: true,
		shim: baseUrl + 'images/blank.gif',
		apply_positioning: false
	}, settings);

	return this.each(function(){
		if (jQuery.browser.msie && parseInt(jQuery.browser.version, 10) < 7 && parseInt(jQuery.browser.version, 10) > 4) {
			jQuery(this).find('*').andSelf().each(function(i,obj) {
				var self = jQuery(obj);
				if (settings.backgrounds && self.css('background-image').match(/\.png/i) !== null) {
					var bg = self.css('background-image');
					var src = bg.substring(5,bg.length-2);
					var mode = (self.css('background-repeat') == 'no-repeat' ? 'crop' : 'scale');
					var styles = {
						'filter': "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "', sizingMethod='" + mode + "')",
						'background-image': 'url('+settings.shim+')'
					};
					self.css(styles);
				};
				if (settings.imgs && self.is('img[src$=png]')){
					var styles = {
						'width': self.width() + 'px',
						'height': self.height() + 'px',
						'filter': "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + self.attr('src') + "', sizingMethod='scale')"
					};
					self.css(styles).attr('src', settings.shim);
				};
				if (settings.apply_positioning && self.is('a, input') && (self.css('position') === '' || self.css('position') == 'static')){
					self.css('position', 'relative');
				};
			});
		};
	});
};

/**
 *
 * @access public
 * @return void
 * direction 0=leftClick 1=rightClick
 **/
function changeText(direction){

    $("#projektId"+projektAktiv).hide();
    if(direction){
        projektAktiv++;
        if(projektAktiv > projekteGesamt){projektAktiv = 1;}
    }
    else{
        projektAktiv--;
        if(projektAktiv < 1){projektAktiv = projekteGesamt;}
    }
    $("#projektId"+projektAktiv).show();


}
