var resizeFunction = function() {
	if(jQuery(document).height() <= 700 ) {
		if(!jQuery('body').hasClass('reduced')) jQuery('body').addClass('reduced');
	} else {
		if(jQuery('body').hasClass('reduced')) jQuery('body').removeClass('reduced');
	}
};

jQuery(window).resize(resizeFunction)
jQuery(window).load(function() {
	resizeFunction();
	// -------------------------------------------------------------------------
	// Bilderleiste auf der Startseite
	// -------------------------------------------------------------------------
	var $thumblinks = jQuery('#gallery a.thumblink');

	if($thumblinks.length > 0) {
		var $hiddenContentTarget = jQuery('#column_home_top_2qu_cont');
		var $hiddenLinkTarget = jQuery('#column_home_top_2qu_img');
		var activeThumb = null;

		$thumblinks.click(function() {
			var $thumb = jQuery(this).addClass("akt");
			var $hidden = $thumb.next('div.bigcont').children('div');

			$hiddenContentTarget.html($hidden.filter('.hidden_cont').html());
			$hiddenLinkTarget.html($hidden.filter('.hidden_link').html());
			jQuery(activeThumb).removeClass("akt");
			activeThumb = this;

			return false;
		});

		jQuery('#btn-prev').click(function() {
			var pos = jQuery.inArray(activeThumb, $thumblinks);

			if(pos > 0) {
				$thumblinks.eq(pos - 1).click();
			} else if(pos == 0) {
				$thumblinks.filter(':last').click();
			} else {
				$thumblinks.eq(0).click();
			}

			return false;
		});

		jQuery('#btn-next').click(function() {
			var pos = jQuery.inArray(activeThumb, $thumblinks);
			var last = $thumblinks.length - 1;

			if(pos < last) {
				$thumblinks.eq(pos + 1).click();
			} else if(pos == last) {
				$thumblinks.eq(0).click();
			} else {
				$thumblinks.eq(last).click();
			}

			return false;
		});

		$thumblinks.eq(0).click();
	}

	// -------------------------------------------------------------------------
	// Akkordion Download-Liste
	// -------------------------------------------------------------------------
	if(isDefined("jQuery.fn.accordion")) {
		jQuery('ul.list_downloads').accordion({autoHeight:false, animated:false});
	}

	// -------------------------------------------------------------------------
	// Materialbestellung
	// -------------------------------------------------------------------------
	jQuery('#change_section').change(function() {
		if(jQuery(this).val() != '') {
			switchMaterialTable(jQuery(this).val());
		}
	});

	// -------------------------------------------------------------------------
	// Paginierung
	// -------------------------------------------------------------------------
	if(isDefined("jQuery.fn.kkpagination")) {	
		// Standard-Navigationselemente ueberschreiben. Definiert werden in dieser
		// Reihenfolge:
		// - Bild-Pfeil "zurueck"
		// - Text-Link "vorige Seite"
		// - Seiten-Link "erste Seite" + Abstandshalter rechts "..."
		//   (nur bei Seite > 4)
		// - Abschnittspaginierung mit 3 Seiten vor und nach der Seite
		// - Seiten-Link "letzte Seite" + Abstandshalter links "..."
		//   (nur bei Seite < Seitenanzahl - 3)
		// - Text-Link "naechste Seite"
		// - Bild-Pfeil "vorwaerts"
		jQuery.fn.kkpagination.defaultControls = [{
			type: 'target',
			target: 'previous',
			display: 'always',
			title: 'Zurück',
			html: '<img src="/media/system/images/paginierung_left.png" alt="Zur&uuml;ck" title="Zur&uuml;ck" class="png" />'
		}/*,{
			type: 'target',
			target: 'previous',
			display: 'conditional',
			title: 'Vorige Seite',
			html: 'Vorige Seite'
		}*/,{
			type: 'target',
			target: 'first',
			display: 'conditional',
			condition: '{PAGE_NUM} > 4 && {PAGE_COUNT} > 7',
			title: 'Seite {PAGE_NUM}',
			html: '{PAGE_NUM}',
			spacerAfter: ' ... '
		},{
			type: 'absolute',
			title: 'Seite {PAGE_NUM}',
			html: '{PAGE_NUM}',
			cutout: '3:3'
		},{
			type: 'target',
			target: 'last',
			display: 'conditional',
			condition: '{PAGE_NUM} < {PAGE_COUNT} - 3 && {PAGE_COUNT} > 7',
			title: 'Seite {PAGE_NUM}',
			html: '{PAGE_NUM}',
			spacerBefore: ' ... '
		}/*,{
			type: 'target',
			target: 'next',
			display: 'conditional',
			title: 'Nächste Seite',
			html: 'Nächste Seite'
		}*/,{
			type: 'target',
			target: 'next',
			display: 'always',
			title: 'Vorwärts',
			html: '<img src="/media/system/images/paginierung_right.png" alt="Vorw&auml;rts" title="Vorw&auml;rts" class="png" />'
		}];

		var $pages = jQuery('.maincont .column_content_inner .column_content_right');

		if($pages.length > 1) {
			$pages.kkpagination(
				jQuery('.column_content_footer'), {
					paginationWrapHTML: '<div class="paginierung">Weiterlesen:</div>'
				}
			);
		}
	}

	// -------------------------------------------------------------------------
	// Lightbox (Fancybox)
	// -------------------------------------------------------------------------
	/* if(isDefined("jQuery.fn.fancybox")) {
		jQuery('a[rel="fancybox"]').fancybox({
			'speedIn'       : 0,
			'speedOut'      : 0,
			'overlayShow'   : true,
			'showNavArrows' : false,
			'overlayOpacity': 0.25,
			'overlayColor'  : 'black',
			'titlePosition' : 'inside',
			'transitionIn'  : 'none',
			'transitionOut' : 'none',
			'disableNavButtons' : true,
			'padding'       : 20
		});
	}
	*/
 	if(isDefined("jQuery.fn.fancybox")) {
 		var	fancyboxOptions = {
 			'speedIn'           : 0,
 			'speedOut'          : 0,
 			'overlayShow'       : true,
 			'showNavArrows'     : false,
 			'overlayOpacity'    : 0.25,
 			'overlayColor'      : 'black',
 			'titlePosition'     : 'inside',
 			'transitionIn'      : 'none',
 			'transitionOut'     : 'none',
 			'disableNavButtons' : true,
 			'padding'           : 20
 		};
 	
 		jQuery('a[rel="fancybox"]').click(function() {
 			var link = this;
 			
 			if(link.href.indexOf('youtube') >= 0) {
				var youtubeLink = link.href.replace(new RegExp("watch\\?v=", "i"), 'v/');

				if(youtubeLink.indexOf('&fs=') == -1) youtubeLink += '&fs=1';
				if(youtubeLink.indexOf('&autoplay=') == -1) youtubeLink += '&autoplay=1';
			
 				jQuery.fancybox(jQuery.extend(
 					jQuery.extend({}, fancyboxOptions), {
						'title'     : link.title,
 						'autoScale' : false,
 						'width'     : 680,
 						'height'    : 495,
 						'href'      : youtubeLink,
 						'type'      : 'swf',
 						'swf'       : {'allowfullscreen':'true','wmode':'opaque'}
 					}
 				));
 			} else {
 				jQuery.fancybox(jQuery.extend(
 					jQuery.extend({}, fancyboxOptions), {
						'title'     : link.title,
 						'href'      : link.href
 					}
 				));
 			}
 			
 			return false;
 		});
 	}

	// -------------------------------------------------------------------------
	// Formularvalidierung
	// -------------------------------------------------------------------------
	jQuery('[v-validate="true"]').validator({
		animate: false,
		errorParent: '#form_errors',
		onError: function() {
			var $errorIcon = jQuery('#formErrorIcon');
			if($errorIcon.length == 0) {
				$errorIcon = jQuery('');
				jQuery('#form_errors').append($errorIcon);
			}
		},
		onErrorFree: function() {
			jQuery('#formErrorIcon').hide();
		}
	});
});

function materialOrderSetStep(step) {

 jQuery('div.form_step_1').hide().find('#material_table_container').hide();
 jQuery('div.form_step_2').hide();
 jQuery('div.form_step_3').hide();

 switch(step) {
  default:
  case 1:
   jQuery('div.form_step_1').show().find('#material_table_container').show();
   break;

  case 2:
   if(createSummary()) {
	jQuery('div.form_step_2').show();
   } else {
	jQuery('div.form_step_1').show().find('#material_table_container').show();
   }
   break;

  case 3:
   jQuery('div.form_step_3').show();
   break;
 }
}

function switchMaterialTable(id) {
	var $dataStore = jQuery('#material_table_data_store');
	var $container = jQuery('#material_table_container');

	$container.find('.material_table').appendTo($dataStore);
	$dataStore.find('#table_' + id).appendTo($container);
}

function createSummary() {
	var tableSelector = '';
	var pageHTML = '';
	var listHTML = '';
	var title;
	var value;
	var itemCount = 0;
	var pageCount = 0;

	jQuery('#change_section').children('option').each(function() {
		value = jQuery(this).val();

		if(value != '') {
			title = jQuery(this).html();
			itemCount = 0;

			tableSelector = '#table_' + value;
			pageHTML = '<li><span class="big_blue">' + title + '</span>';

			jQuery(tableSelector).find('input[type="text"],select,textarea').each(function() {
				var description = jQuery(this).closest('td').next('td').html();
				var quantity = parseInt(jQuery(this).val(), 10);

				if(quantity > 0) {
					pageHTML += quantity + ' x ' + description + ' | ';
					itemCount++;
				}
			});

			if(itemCount > 0) {
				pageHTML = pageHTML.substr(0, pageHTML.length - 3);
				listHTML += pageHTML;
				pageCount++;
			}
		}
	});

	if(jQuery('.column_content_footer').length == 0) {
		jQuery('.column_content_inner').after('<div class="column_content_footer"></div>');
	}

	if(listHTML != '') {
		jQuery('#list_material').html(
			'<div class="content_page">' +
				'<ul class="list_material">' + listHTML + '</ul>' +
			'</div>'
		);

		return true;
	} else {
		return false;
	}
}

function isDefined() {
	var currentObj;
	var objects;

	for(var i = 0; i < arguments.length; i++) {
		if(arguments[i].indexOf('.') > 0) {
			objects = arguments[i].split(".");
			currentObj = window;
			for(var c in objects) {
				if(typeof currentObj[objects[c]] == "undefined") {
					return false;
				} else {
					currentObj = currentObj[objects[c]];
				}
			}
		} else if(typeof window[arguments[i]] == "undefined") {
			return false;
		}
	}

	return true;
}

// Schepp 01.09.2010
// Dunkler Hintergrund Menue

var menu_bg_overlay_timer = null;
var menu_bg_overlay_timer_command = function(){};

jQuery(document).ready(function() {
  jQuery('<div id="menu_bg_overlay"></div>').appendTo('.outerframe');
  //jQuery('#menu_bg_overlay').delay(10).addClass('menu_bg_overlay_visible');
  jQuery('ul.mainnavi').delegate('*', 'mouseenter', function(){
	window.clearTimeout(menu_bg_overlay_timer);
	menu_bg_overlay_timer = null;
	menu_bg_overlay_timer_command();
	jQuery(this).closest('ul.mainnavi > li').addClass('menu_bg_overlay_show');
	jQuery('#menu_bg_overlay').delay(0).addClass('menu_bg_overlay_visible');
  });
  jQuery('ul.mainnavi > li').mouseout(function(){
	menu_bg_overlay_timer_command = function(){
	  jQuery('#menu_bg_overlay').removeClass('menu_bg_overlay_visible');
	  jQuery('ul.mainnavi > li').removeClass('menu_bg_overlay_show');
	};
	menu_bg_overlay_timer = window.setTimeout("menu_bg_overlay_timer_command()",10);
  });
});

// Schepp 01.09.2010
// Hintergrundbild

jQuery(window).load(function() {
  jQuery('#supersize img').fadeIn('slow');

	// Erweiterung 08.10.2010 fuer Login-Weiterleitungen

	jQuery('a[href^=#loginbox_]').fancybox({
		'speedIn'           : 0,
		'speedOut'          : 0,
		'overlayShow'       : true,
		'showNavArrows'     : false,
		'overlayOpacity'    : 0.25,
		'overlayColor'      : 'black',
		'titlePosition'     : 'inside',
		'transitionIn'      : 'none',
		'transitionOut'     : 'none',
		'disableNavButtons' : true,
		'padding'           : 20,
		'onStart'         : function() {
			var $link = jQuery(this.orig);
			jQuery($link.attr('href') + ' input[name=redirectURL]').val($link.attr('rel'));
		}
	});
});

// Schepp 02.09.2010 und 04.10.2010
// Radioinfo (z.B. in Materialbestellung Public)

jQuery(document).ready(function() {
  jQuery('.radioinfo').hide();
  jQuery('.radioinfolink').addClass('radioinfolinkclosed').click(function(){
	if(jQuery(this).hasClass('radioinfolinkclosed')) {
	  jQuery('.radioinfolink:not(.radioinfolinkclosed)').each(function(){
		  jQuery(jQuery(this).attr('href')).slideUp('slow',function(){
			jQuery('a.radioinfolink[href=#' + jQuery(this).attr('id') + ']').addClass('radioinfolinkclosed').html('Info');
		  });
	  });
	  jQuery(jQuery(this).attr('href')).slideDown('slow',function(){
	    jQuery('a.radioinfolink[href=#' + jQuery(this).attr('id') + ']').removeClass('radioinfolinkclosed').html('Schlie&szlig;en');
	  });
	} else {
	  jQuery(jQuery(this).attr('href')).slideUp('slow',function(){
	    jQuery('a.radioinfolink[href=#' + jQuery(this).attr('id') + ']').addClass('radioinfolinkclosed').html('Info');
	  });
	}
	return false;
  });
  jQuery('#materiallieferung_material .radio').click(function(){
	var selector = '';
	var ids = jQuery(this).attr('class').replace(/\s*radio\s*/,'').split(' ');
	for(i=0;i<ids.length;i++)
	{
		if(selector != '') selector += ',';
		selector += '#' + ids[i];
		jQuery('#materiallieferung_zustellung #' + ids[i]).css('opacity',1.0).find('.radio').removeAttr('disabled');
		elem = jQuery('#materiallieferung_zustellung #' + ids[i]).get(0);
		if(elem.filters) elem.style.filter = '';
	}
	jQuery('#materiallieferung_zustellung .form_item').not(selector).css('opacity',0.25).find('.radio').attr('disabled','disabled').removeAttr('checked');
  });
});

// Iframe Fancybox
function fancybox_iframe(url){
  jQuery.fancybox(
	{
	  'type'          : 'iframe',
	  'href'          : url,
	  'width'         : 960,
	  'height'        : (jQuery(window).height() - 40),
	  'centerOnScroll': true,
	  'speedIn'       : 0,
	  'speedOut'      : 0,
	  'overlayShow'   : true,
	  'showNavArrows' : false,
	  'overlayOpacity': 0.25,
	  'overlayColor'  : 'black',
	  'titlePosition' : 'inside',
	  'transitionIn'  : 'none',
	  'transitionOut' : 'none',
	  'margin'        : 20,
	  'padding'       : 20
	}
  );
}

// Google Maps Fancybox
function fancybox_googlemaps(){
  jQuery.fancybox(
	'<div id="map_canvas"></div>',
	{
	  'autoDimensions': false,
	  'width'         : 560,
	  'scrolling'     : 'no',
	  'centerOnScroll': true,
	  'speedIn'       : 0,
	  'speedOut'      : 0,
	  'overlayShow'   : true,
	  'showNavArrows' : false,
	  'overlayOpacity': 0.25,
	  'overlayColor'  : 'black',
	  'titlePosition' : 'inside',
	  'transitionIn'  : 'none',
	  'transitionOut' : 'none',
	  'margin'        : 20,
	  'padding'       : 20
	}
  );  
  
	// 2012-01-19 | kkriehl rewrite maps v3
	var map = new google.maps.Map(document.getElementById("map_canvas"), {
		center   : new google.maps.LatLng(50.901437, 6.977308),
		zoom     : 13,
		mapTypeId: google.maps.MapTypeId.ROADMAP
	});
	// Marker
	var marker = new google.maps.Marker({
		map     : map,
		position: new google.maps.LatLng(50.901437, 6.977308),
		title   : "JAMESTOWN"
	});
	
	var infoWindow = new google.maps.InfoWindow({
		content: "JAMESTOWN<br/>" +
		         "US-Immobilien GmbH<br/>" +
				 "Marienburger Straße 17<br/>" +
				 "D-50968 Köln<br/>" +
				 "Tel. 0221 / 30 98 - 0<br/>" +
				 "Fax 0221 / 30 98 - 100"
	});
	
	google.maps.event.addListener(marker, "click", function() {
		infoWindow.open(map, marker);
	});
}

// Video Fancybox
function fancybox_video(video_url,poster_url){
  jQuery.fancybox(
	'<div class="media-player">\
		<video poster="' + poster_url + '" controls="controls">\
			<source src="' + video_url + '" />\
		</video>\
		<div class="media-controls">\
			<div class="play-pause">play / pause</div>\
			<div class="timeline-slider">\
				<span class="handle-label">play position</span>\
				<div class="progressbar"></div>\
			</div>\
			<div class="current-time player-display">00:00</div>\
		</div>\
	</div>',
	{
	  'autoDimensions': false,
	  'width'         : 640,
	  'height'        : 425,
	  'scrolling'     : 'no',
	  'centerOnScroll': true,
	  'speedIn'       : 0,
	  'speedOut'      : 0,
	  'overlayShow'   : true,
	  'showNavArrows' : false,
	  'overlayOpacity': 0.25,
	  'overlayColor'  : 'black',
	  'titlePosition' : 'inside',
	  'transitionIn'  : 'none',
	  'transitionOut' : 'none',
	  'margin'        : 20,
	  'padding'       : 20
	}
  );  
  jQuery('div.media-player').jmeControl(); 
}

// WMV Video Fancybox (Schepp 21.09.2010)
function fancybox_wmv_video(video_url,poster_url){
  var width = 640;
  var height = 425;
  jQuery.fancybox(
	'<div id="wmv-media-player"></div>',
	{
	  'autoDimensions': false,
	  'width'         : width,
	  'height'        : height,
	  'scrolling'     : 'no',
	  'centerOnScroll': true,
	  'speedIn'       : 0,
	  'speedOut'      : 0,
	  'overlayShow'   : true,
	  'showNavArrows' : false,
	  'overlayOpacity': 0.25,
	  'overlayColor'  : 'black',
	  'titlePosition' : 'inside',
	  'transitionIn'  : 'none',
	  'transitionOut' : 'none',
	  'margin'        : 20,
	  'padding'       : 20
	}
  );  
	// ID des Objekts, in das der Videplayer hineinkommt
	var cnt = document.getElementById("wmv-media-player");
	var src = '/media/system/scripts/wmvplayer~1.xaml';
	var cfg = {
		file	: video_url,
		image	: poster_url,
		height	: height,
		width	: width
	};
	var ply = new jeroenwijering.Player(cnt,src,cfg);
}
