﻿$(document).ready(function() {

   /*$('#langswitch ul li')
    .bind('touchstart', function(){ $(this).addClass('hover'); })
    .bind('touchend', function(){ $(this).removeClass('hover');})
    .bind('mouseover', function(){ $(this).addClass('hover'); })
    .bind('mouseout', function(){ $(this).removeClass('hover');});*/
    
  $('a.external').attr('target', '_blank');
  
  $('a.print').click(function(e) {
    e.preventDefault();
    window.print();
  });
  
  $('a.toTop').click(function(e) {
    e.preventDefault();
    $('html,body').animate({ scrollTop: 0 }, 500); 
  });
  
  var fancyBoxOpts = {
    transitionIn: 'elastic',
    transitionOut: 'elastic',
    overlayOpacity: 0.7,
    overlayColor: '#000',/*,
    titleFormat: function(title, currentArray, currentIndex, currentOpts) {
      return '<div id="tip7-title">' + (title && title.length ? title : '' ) + '</div>';
    }*/
    callbackOnShow: function(a) {
      var ft = $('#fancy_title');
      var l = $(a.orig).parents('li').eq(0);
      
	  if(l.length == 0) return;
	  
      var newTitle = l.find('h3').eq(0).text() + ' - ' + l.find('.ref_power span').text() + '<br />' + '<span class="' + l.find('.ref_installation span').attr('class') + '">' + l.find('.ref_installation span').text() + '</span>';
      
      a.title = newTitle;
      
      ft.find('div').html(newTitle);
      
      s = ft.find('span');
      
      //s.css('cursor', 'pointer');
      /*s.hover(function(e) {
        var content = $('#content_' + $(this).attr('class')).text();
        $.tooltip.show(content, { x: $(this).offset().left + $(this).width() + 10, y: $(this).offset().top - 20 });
      }, function() {
        $.tooltip.hide();
      });*/
    }
  }
  
  var referenceBox = $('.referencesOverview');
  var tout = null;
  if (referenceBox.find('a:not(.nofancy)').length > 0) {
    referenceBox.find('a:not(.nofancy)').fancybox(fancyBoxOpts);
  }
  bigpic = referenceBox.find('.bigpic');
  bigpic.each(function() {
    $(this).data('bupimg', $(this).find('img').attr('src'));
  });
  if (referenceBox.find('.thumbs a').length > 0) {
    referenceBox.find('.thumbs a').mouseover(function() {
      if (tout != null)
        clearTimeout(tout);
      var _t = $(this);
      var bigpic = _t.parent().siblings('.bigpic');
      bigpic.find('img').show(0).attr('src', _t.find('.medpicsrc').attr('title')).unbind('click').click(function() {
        _t.click();
      });
    }).mouseout(function() {
      var _t = $(this);
      tout = setTimeout(function() {
        var bigpic = _t.parent().siblings('.bigpic');
        bigpic.find('img').attr('src', bigpic.data('bupimg'));
      }, 250);
    });
  }
  
  var pageHead = $('.home #pageHead');
  if (pageHead.length > 0) {
    var pathToPics = template_url + '/pics/';
    var pics = [
      'header_welcome01.jpg',
      'header_welcome02.jpg'
    ];
    var els = '';
    $.each(pics, function(i, v) {
      els += '<img src="' + pathToPics + v + '" />';
    });
    pageHead.append('<div id="fadingPics"></div>');
    var fadingPics = pageHead.find('#fadingPics');
    fadingPics.append(els);
    var domPics = fadingPics.find('img');
    domPics.hide(0);
    domPics.eq(0).show(0);
    fadingPics.cycle({
      timeout: 6000,
      speed: 2000,
      fx: 'fade'
    });
    $('#pageHead').addClass('pageHead-nobg');
  }
  
  if ($('#gmap_canvas').length > 0) {
	$('#gmap_canvas_form').live('submit', function() {
		var f_dir = $(this).find('[name=dir]:checked').val();
		var f_saddr = $(this).find('[name=saddr]').val();
		var f_daddr = $(this).find('[name=daddr]').val();
		
		if (f_dir == 'from') {
			var tmp = f_saddr;
			f_saddr = f_daddr;
			f_daddr = tmp;
		}
		var tmpopts = {
			frameWidth: 900,
			frameHeight: 500,
			zoomSpeedIn: 0,
			centerOnScroll: false
		}
		var url = 'http://maps.google.com/maps?dir='+f_dir+'&dirflg=&saddr='+f_saddr+'&daddr='+f_daddr+'&hl=de';
		$('<a class="iframe" href="' + url + '"></a>').fancybox(tmpopts).trigger('click');
		
		return false;
	});
	$(window).load(function() {
		var solarstepHQ = new google.maps.LatLng(50.1301500, 8.5960200);
		var opts = {
		  zoom: 14,
		  center: solarstepHQ,
		  mapTypeId: google.maps.MapTypeId.ROADMAP,
		  mapTypeControl: false
		};
		var map = new google.maps.Map(document.getElementById("gmap_canvas"), opts);
		
		var infoWindowContent = '\
			<form id="gmap_canvas_form" action="http://maps.google.com/maps" method="get" target="_blank">\
  			  <fieldset>\
				<p><label>' + _lang.direction + ':</label>\
				<label for="dir_to" class="rdbtn"><input class="radiobtn" type="radio" checked="checked" name="dir" value="to" id="dir_to">' + _lang.from + ':</label>\
				<label for="dir_from" class="rdbtn"><input class="radiobtn" type="radio" name="dir" value="from" id="dir_from">' + _lang.to + ':</label>\
				</p>\
				<p><label for="saddr">' + _lang.address + ':</label><input type="text" class="inputbox" size="20" name="saddr" id="saddr" value="" /></p>\
				<p><input value="' + _lang.calc + '" class="button" type="submit"></p>\
				<input class="button" type="hidden" name="daddr" value="Frankfurt, Stützeläckerweg 14"/>\
			  </fieldset>\
			</form>';
		var infowindow = new google.maps.InfoWindow({
			content: infoWindowContent
		});
		
		var marker = new google.maps.Marker({
			position: solarstepHQ,
			map: map,
			title:"Uluru (Ayers Rock)"
		});
		google.maps.event.addListener(marker, 'click', function() {
		  infowindow.open(map,marker);
		  map.setCenter(solarstepHQ);
		});
		infowindow.open(map,marker);
	});
  }
});

(function($) {
  
  $.tooltip = new function() {
    var _tt = null;
    var _tt_c = null;
    var fxDur = 250;
    
    insert_tooltip = function() {
      var b = $('body');
      b.append('<div id="tooltip"><div class="inner"><div class="content"></div></div></div>');
      _tt = b.find('#tooltip');
      _tt_c = _tt.find('.content');
    }
    
    this.changeContent = function(content) {
      if (content == null)
        return;
      _tt_c.text(content);
    }
    
    this.setPosition = function(pos) {
      if (pos == null || pos.x == null || pos.y == null)
        return;
      _tt.css({
        'position': 'absolute',
        'left': pos.x,
        'top': pos.y,
        'opacity': 0
      });
    }
    
    this.show = function(content, pos) {
      this.changeContent(content);
      this.setPosition(pos);
      _tt.stop(true, false).fadeTo(fxDur, 1);
    }
    
    this.hide = function() {
      _tt.stop(true, false).fadeTo(fxDur, 0, function() { $(this).css('display', 'none'); });
    }
    
    $(document).ready(insert_tooltip);
    
  }
  
  $.debug = function(msg) {
    if(window.console)
        console.debug(msg);
  }
  
})(jQuery);

