// JavaScript Document
function modalOpen (dialog) {
	dialog.overlay.fadeIn('slow', function () {
		dialog.container.fadeIn('slow', function () {
			dialog.data.hide().slideDown('slow');	 
		});
	});
}
function modalClose (dialog) {
	dialog.data.fadeOut('slow', function () {
		dialog.container.hide('slow', function () {
			dialog.overlay.slideUp('slow', function () {
				$.modal.close();
			});
		});
	});
}

///////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////		   

function initialize2() {
	$('.carga').fadeOut(500);
	
   	if (GBrowserIsCompatible()) {
       
		var map = new GMap2(document.getElementById("googlemap"));
		map.setCenter(new GLatLng(41.562188, 2.001242), 16);
		map.addControl(new GLargeMapControl()); 
		map.addControl(new GMapTypeControl()); 
		//map.addControl(new GOverviewMapControl());
		
		// Create a base icon for all of our markers that specifies the
		// shadow, icon dimensions, etc.
		var baseIcon = new GIcon(G_DEFAULT_ICON);
		baseIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
		baseIcon.iconSize = new GSize(20, 34);
		baseIcon.shadowSize = new GSize(37, 34);
		baseIcon.iconAnchor = new GPoint(9, 34);
		baseIcon.infoWindowAnchor = new GPoint(9, 2);
 
		// Creates a marker whose info window displays the letter corresponding
		// to the given index.
       	function createMarker(point, index) {
			  var Icon = new GIcon(baseIcon);
			  Icon.image = "http://www.google.com/mapfiles/marker.png";
	 
			  // Set up our GMarkerOptions object
			  markerOptions = { icon:Icon };
			  var marker = new GMarker(point, markerOptions);
	 
			  GEvent.addListener(marker, "mouseover", function() {
				marker.openInfoWindowHtml(index);
			  });
			  return marker;
       	}

		var point = new GPoint (2.001242, 41.562188); 
		var nombre = "<b>Informatica Industrial IN2, S.A.</b><br><br><div style='text-align:left;width:auto; height:auto;'>c/ Volta, 202<br>Tel. 937331919<br>Fax. 937331848<br>08224 Terrassa (Barcelona)</div><br><a style='text-decoration:none; color:#000000;' href='http://maps.google.es/maps?f=q&hl=es&geocode=&q=Informatica+Industrial,+IN2+S.A.+c/Volta,+202+08224+Terrassa+-+937331919&ie=UTF8&ll=41.563446,2.00169&spn=0.009619,0.009978&z=17&iwloc=A'>Com arribar</a>";
			
		map.addOverlay(createMarker(point, nombre)); 
		map.addOverlay(new GStreetviewOverlay());
		map.addOverlay(new GStreetviewClient());
   	}
}

var botigaNavPos = 0;
function botigaNav(){
	$('.botigaNav').css('background-position',botigaNavPos + 'px');
	botigaNavPos += 2;
	setTimeout('botigaNav()',50);
}

///////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////
var marker;
var overlayInstance = null;
var map;
var client;
var lastMarkerLocation;
var panorama;
var mapT;

function initialize() {
	client = new GStreetviewClient();
  	var latlng = new GLatLng(41.562188, 2.001242);
	var map = new GMap2(document.getElementById("googlemap"));
		map.setCenter(latlng, 16);
		map.addControl(new GLargeMapControl()); 
		map.addControl(new GMapTypeControl()); 

	var guyIcon = new GIcon(G_DEFAULT_ICON);
		guyIcon.image = "http://maps.google.com/intl/en_us/mapfiles/cb/man_arrow-0.png";
		guyIcon.transparent = "http://maps.google.com/intl/en_us/mapfiles/cb/man-pick.png";
		guyIcon.imageMap = [26,13, 30,14, 32,28, 27,28, 28,36, 18,35, 18,27, 16,26, 16,20, 16,14, 19,13, 22,8];
		guyIcon.iconSize = new GSize(49, 52);
		guyIcon.iconAnchor = new GPoint(25, 35);  // near base of guy's feet
		guyIcon.infoWindowAnchor = new GPoint(25, 5);  // top of guy's head


	var baseIcon = new GIcon(G_DEFAULT_ICON);
		baseIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
		baseIcon.iconSize = new GSize(20, 34);
		baseIcon.shadowSize = new GSize(37, 34);
		baseIcon.iconAnchor = new GPoint(9, 34);
		baseIcon.infoWindowAnchor = new GPoint(9, 2);
	
	function createMarker(point, index) {
		  var Icon = new GIcon(baseIcon);
		  Icon.image = "http://www.google.com/mapfiles/marker.png";
	
		  // Set up our GMarkerOptions object
		  markerOptions = { icon:Icon };
		  var marker = new GMarker(point, markerOptions);
	
		  GEvent.addListener(marker, "click", function() {
			marker.openInfoWindowHtml(index);
		  });
		  return marker;
    }
	var point = new GPoint (2.001242, 41.562188); 
	var nombre = "<b>Informatica Industrial IN2, S.A.</b><br><br><div style='text-align:left;width:auto; height:auto;'>c/ Volta, 202<br>Tel. 937331919<br>Fax. 937331848<br>08224 Terrassa (Barcelona)</div><br><a style='text-decoration:none; color:#000000;' href='http://maps.google.es/maps?f=q&hl=es&geocode=&q=Informatica+Industrial,+IN2+S.A.+c/Volta,+202+08224+Terrassa+-+937331919&ie=UTF8&ll=41.563446,2.00169&spn=0.009619,0.009978&z=17&iwloc=A'>Com arribar</a>";
  	marker = new GMarker(latlng, {icon: guyIcon, draggable: true});
  	map.addOverlay(createMarker(point, nombre)); 
	map.addOverlay(marker);
  	lastMarkerLocation = latlng;
  	
	GEvent.addListener(marker, "dragend", onDragEnd);
	GEvent.addListener(marker, "click", openPanoramaBubble);

	botigaNav();
	setTimeout("$('.carga').slideUp(1000)",50);
}

function openPanoramaBubble() {
  var contentNode = document.createElement('div');
  contentNode.style.textAlign = 'center';
  contentNode.style.width = '500px';
  contentNode.style.height = '300px';
  contentNode.innerHTML = 'Loading panorama';

  var smallNode = document.createElement('div');
  smallNode.style.width = '550px';
  smallNode.style.height = '300px';
  smallNode.id = 'pano';
  marker.openInfoWindow(smallNode, {maxContent: contentNode, maxTitle: "Full screen"});

myPOV = {yaw:225,pitch:15};

  panorama = new GStreetviewPanorama(smallNode);
  panorama.setLocationAndPOV(marker.getLatLng(), myPOV);
  GEvent.addListener(panorama, "newpano", onNewLocation);
  GEvent.addListener(panorama, "yawchanged", onYawChange); 

  var iw = map.getInfoWindow();
  GEvent.addListener(iw, "maximizeend", function() {
    panorama.setContainer(contentNode);  
    window.setTimeout("panorama.checkResize()", 5);
  });
  GEvent.addListener(marker, "infowindowbeforeclose", function() {
    panorama.remove();
  });
}


function onYawChange(newYaw) {
  var GUY_NUM_ICONS = 16;
  var GUY_ANGULAR_RES = 360/GUY_NUM_ICONS;
  if (newYaw < 0) {
    newYaw += 360;
  }
  guyImageNum = Math.round(newYaw/GUY_ANGULAR_RES) % GUY_NUM_ICONS;
  guyImageUrl = "http://maps.google.com/intl/en_us/mapfiles/cb/man_arrow-" + guyImageNum + ".png";
  marker.setImage(guyImageUrl);
}

function onNewLocation(lat, lng) {
  var latlng = new GLatLng(lat, lng);
  marker.setLatLng(latlng);
}

function onDragEnd() {
  var latlng = marker.getLatLng();
  if (panorama) {
    client.getNearestPanorama(latlng, onResponse);
  }
}

function onResponse(response) {
  if (response.code != 200) {
    marker.setLatLng(lastMarkerLocation);
  } else {
    var latlng = new GLatLng(response.Location.lat, response.Location.lng);
    marker.setLatLng(latlng);
    lastMarkerLocation = latlng;
    openPanoramaBubble();
  }
}

///////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////



///////////////////////////////////////////////////////////////

$(document).ready(function(){

	var navDuration = 150; //time in miliseconds
    var navJumpHeight = "0.35em";

    $('#nav1 li').hover(function() {
        $(this).animate({ top : "-="+navJumpHeight }, navDuration);            
    }, function() {
        $(this).animate({ top : "15px" }, navDuration);
    });

	
	$('#nav1 li a').click(function(){
		$('#nav1 li a').css('color','#FFF');
		$(this).css('color','#3f5f5a');	
		//carousel.scroll($.jcarousel.intval($(this).attr('id')));
	});
	
	/*$("#con").jcarousel({
        scroll: 1,
		visible: 1,
        initCallback: sec
    });*/
	$("#myController").jFlow({
		slides: "#mySlides",
		controller: ".jFlowControl", // must be class, use . sign
		slideWrapper : "#jFlowSlide", // must be id, use # sign
		selectedWrapper: "jFlowSelected",  // just pure text, no sign
		width: "800px",
		height: "520px",
		duration: 200,
		prev: ".jFlowPrev", // must be class, use . sign
		next: ".jFlowNext" // must be class, use . sign
	});
	
	
	// Tooltips contactar
	$('.tool').tooltip({ 
		delay: 0, 
		showURL: false, 
		bodyHandler: function() { 
			//alert(this.name);
        	return $("<img/>").attr("src", $(this).attr('name')); 
    	},
		fade: 250 
	});
	
	
	$('.tool').click(function(e){
		e.preventDefault();
		$.get("cont/contactar.php", { n: $(this).attr('value') }, function(data){
			$(data).modal({
				onOpen: modalOpen, 
				onClose: modalClose
			});
		});
	});
	
	$('.avis a').click(function(e){
		e.preventDefault();
		$.get("cont/avis.php", function(data){
			$(data).modal({
				onOpen: modalOpen, 
				onClose: modalClose
			});
		});
	});


	$('.item1').hover(
		function(){
			$(this).css('background-color','#06C');				   
		},
		function(){
			$(this).css('background-color','#B3CAFF');	
		}
	);
	
	$('.item2').hover(
		function(){
			$(this).css('background-color','#06C');				   
		},
		function(){
			$(this).css('background-color','#B7DEFF');	
		}
	);

	$("#parent").wslide({
		width: 500,
		height: 350,
		col: 5,
		autolink: 'menu',
		duration: 1000,
		effect: 'easeOutExpo'
	});
	
	$('.item1,.item2').click(function(){
		$('#ofertaImg').attr('src', $(this).find('.imgOferta').html());
		$('#ofertaTit').html($(this).find('.nomOferta').html());
		$('#ofertaCad').html($(this).find('.caducaOferta').html());
	});
	
	$('#menu').hide();
	// Arrodonir bores IE7 FIX
	
	var badBrowser = (/MSIE ((5\.5)|6|7)/.test(navigator.userAgent) && navigator.platform == "Win32");
	if (badBrowser) {
		
		DD_roundies.addRule('.main', 10);
		DD_roundies.addRule('.r-in', '7px 0px 0px 0px');
		DD_roundies.addRule('.r-fi', '0px 7px 0px 0px');
		DD_roundies.addRule('.simplemodal-container', '50px 0px 50px 0px');
		DD_roundies.addRule('.foto', '30px 7px 30px 0px');
		DD_roundies.addRule('.foto2', '30px 0px 30px 0px');
		DD_roundies.addRule('.consultoriaDiv', '30px 0px 30px 0px');
		DD_roundies.addRule('.foto3', '0px 0px 0px 30px');
		DD_roundies.addRule('.foto4', '7px 7px 30px 0px');
		DD_roundies.addRule('.titol3', '7px 7px 0px 0px');
		DD_roundies.addRule('.thumb', 5);
		DD_roundies.addRule('.wslide-wrap', 10);
		DD_roundies.addRule('.item1', 10);
		DD_roundies.addRule('.item2', 10);
		DD_roundies.addRule('.imgOferta2', 10);
		DD_roundies.addRule('.topValues', 10);
		//$('.main').bg(10);
		//$('.consultoriaDiv').bg(['30px', 0, '30px', 0]);
	}
});

function desc(){
	var top = document.formdesc.top[document.formdesc.top.selectedIndex].value;
	if(top != '#'){
		window.open(top);
	}
}

function validarCodi(valor){
	if(valor.length == 0){ return false; }
	var checkOK = "0123456789"; 
	var allValid = true; 
	var Num = ""; 
	for (var i = 0; i < valor.length; i++) { 
		ch = valor.charAt(i);
		for (var j = 0; j < checkOK.length; j++){
			if (ch == checkOK.charAt(j)){ break; } 
			if ((j+1) == checkOK.length) { allValid = false; break; } 
			Num += ch; 
		}
	}
	return allValid;
}

function validarEmail(valor) {
	if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(valor)){ return (true); }
	else { return (false); }
}

function missat(){
	var i = $('#contId');
	var a = $('#contAsun');
	var e = $('#contMail');
	var t = $('#contText');
	var c = $('#contCodi');
	var l = $('#avis');
	
	var ok = 1;
	
	if(a.val().length > 0){
		a.css('border','2px #CCC dashed');
	}else{
		a.css('border','2px #F00 dashed');
		ok = 0;
	}
	
	if(validarEmail(e.val())){
		e.css('border','2px #CCC dashed');
	}else{
		e.css('border','2px #F00 dashed');
		ok = 0;
	}
	
	if(t.val().length > 0){
		t.css('border','2px #CCC dashed');
	}else{
		t.css('border','2px #F00 dashed');
		ok = 0;
	}
	
	if(validarCodi(c.val())){
		c.css('border','2px #CCC dashed');	
	}else{
		c.css('border','2px #F00 dashed');
		ok = 0;
	}
	
	if(l.is(':checked')){
		$('#textAvis').css('color','#666');
	}else{
		$('#textAvis').css('color','#F00');
		ok = 0;
	}
	
	if(ok){
		
		var datos = "";
		datos += "asunto=" 	+ a.val();
		datos += "&id=" 	+ i.val();
		datos += "&text=" 	+ t.val();
		datos += "&cap=" 	+ c.val();
		datos += "&email="	+ e.val();
		
		$.ajax({
			url: 'ajax/contactar.php',
			type: 'POST',
			data: datos,
			success: function(dato){
				if(dato == 1){ $.modal.close(); }
				else if(dato == 2){alert("Error envio mail.");}
				else if(dato == 3){alert("Error codigo");}
				else if(dato == 4){alert("Error variavles");}
			}
		});
	}
}
