var loading = function(yesnot){

	if(yesnot){$("#loading").show();}else{$("#loading").hide();};

}


var handleKeyPress = function(e,form){
	var key=e.keyCode || e.which;
	if (key==13){
		deleteTweetsMarkers();GettheTweets();
	}	
}

var collapseVertical=false;
var collapseHorizontal=false;

function getParameter(name)
{
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null )
    return "";
  else
    return results[1];
}


var CollapseHorizontal = function(){

	if(collapseHorizontal==true){
		try{circle.setMap(null)}catch(e){};
		collapseHorizontal=false;
		$("#leftpanel").hide();
		$("#collapse-right").hide();
		$("#collapse-left").show();
		$("#map_canvas").css({left: "0px", right:"0px"}); 
		$("#leftshadow").css({left:"0px"});
		google.maps.event.trigger(map, 'resize');
		$("#collapse-top").hide();
		$("#collapse-bottom").hide();
		
	}else{
		collapseHorizontal=true;
		$("#collapse-left").hide();
		$("#collapse-right").show();
		
		$("#leftpanel").show();
		$("#map_canvas").css({left: "300px", right:"0px"});
		$("#leftshadow").css({left: "300px"});
		google.maps.event.trigger(map, 'resize');
	
		if(collapseVertical==true)
			{$("#collapse-bottom").show();}else{$("#collapse-top").show();}
	}
}

var CollapseVertical = function(){

	if(collapseVertical==true){
		collapseVertical=false;
		
		$("#collapse-bottom").hide();
		$("#collapse-top").show();
		$("#timeline").css({top: "0px"}); 
		$("#options").hide(400);
		

	}else{
		collapseVertical=true;
		
		
		$("#collapse-bottom").show();
		$("#collapse-top").hide();
		$("#timeline").css({top: "180px"}); 
		$("#options").show(400);
	}
}


//http://snipt.net/bryant/time-ago-javascript-function-common-on-twitter-posts/
function timeAgo(date1, date2, granularity){
	
	var self = this;
	
	periods = [];
	periods[localtext[currentLanguage()].week] = 604800;
	periods[localtext[currentLanguage()].day] = 86400;
	periods[localtext[currentLanguage()].hour] = 3600;
	periods[localtext[currentLanguage()].minute] = 60;
	periods[localtext[currentLanguage()].second] = 1;
	
	if(!granularity){
		granularity = 5;
	}
	
	(typeof(date1) == 'string') ? date1 = new Date(date1).getTime() / 1000 : date1 = new Date().getTime() / 1000;
	(typeof(date2) == 'string') ? date2 = new Date(date2).getTime() / 1000 : date2 = new Date().getTime() / 1000;
	
	if(date1 > date2){
		difference = date1 - date2;
	}else{
		difference = date2 - date1;
	}

	output = '';
	
	for(var period in periods){
		var value = periods[period];
		
		if(difference >= value){
			time = Math.floor(difference / value);
			difference %= value;
			
			output = output +  time + ' ';
			
			if(time > 1){
				output = output + period + 's ';
			}else{
				output = output + period + ' ';
			}
		}
		
		granularity--;
		if(granularity == 0){
			break;
		}	
	}
	if(currentLanguage()=='es'){
		return 'Hace '+output ;
	}else{
		return output + ' ago';}
	
}



SetHash=function(i){
	if(i==null || i=='')
		i=1;
		
	var p = window.location.hash;
	p = p.split("#");
	p = p[1];
	if(p){
		p = p.split(":");
		if(p[1])
			window.location.hash='#t='+i+':'+p[1];
		else
			window.location.hash='#t='+i;
	}
	else		
		window.location.hash='#t='+i;
}

GetHash=function(str_param){
	var ret=null;
	var p = window.location.hash;		
	p=p.split("#");
	p = p[1];
	if(p){
		p = p.split(":");
		for(var i=0;i<p.length;i++){
			if(p[i]){
				p1 = p[i].split("=");
				if(p1[0]==str_param){
						ret=p1[1];
				}
			}
		}
	}
	
	return ret;
	
	}

PutHashonSearch= function(addr){
	
	Site.SetHash(Site.CurrentSearch);
	
	var p = window.location.hash;
	
	
	p = p.split("#");
	p = p[1];
	if(p){
		p = p.split(":");
		if(p[0])
			window.location.hash='#'+p[0]+':a='+addr;
	}

};


doGeolocation=function() {
    if (navigator.geolocation) {
      navigator.geolocation.getCurrentPosition(positionSuccess, positionError);
    } else {
      positionError(-1);
    }
}
 
positionError=function(err) {
    var msg;
    switch(err.code) {
      case err.UNKNOWN_ERROR:
        msg = "Unable to find your location";
        break;
      case err.PERMISSION_DENINED:
        msg = "Permission denied in finding your location";
        break;
      case err.POSITION_UNAVAILABLE:
        msg = "Your location is currently unknown";
        break;
      case err.BREAK:
        msg = "Attempt to find location took too long";
        break;
      default:
        msg = "Location detection not supported in browser";
    }
    document.getElementById('info').innerHTML = msg;
  }
 
positionSuccess=function(position) {
    // Centre the map on the new location
    var coords = position.coords || position.coordinate || position;
    var latLng = new google.maps.LatLng(coords.latitude, coords.longitude);
    map.setCenter(latLng);
    
    var marker = new google.maps.Marker({
	    map: map,
	    position: latLng,
	    title: 'Why, there you are!'
    });
    document.getElementById('info').innerHTML = 'Looking for <b>' +
        coords.latitude + ', ' + coords.longitude + '</b>...';
 
    // And reverse geocode.
    (new google.maps.Geocoder()).geocode({latLng: latLng}, function(resp) {
		  var place = "You're around here somewhere!";
		  if (resp[0]) {
			  var bits = [];
			  for (var i = 0, I = resp[0].address_components.length; i < I; ++i) {
				  var component = resp[0].address_components[i];
				  if (contains(component.types, 'political')) {
					  bits.push('<b>' + component.long_name + '</b>');
					}
				}
				if (bits.length) {
					place = bits.join(' > ');
				}
				marker.setTitle(resp[0].formatted_address);
			}
			document.getElementById('info').innerHTML = place;
	  });
  }
 
contains=function(array, item) {
	  for (var i = 0, I = array.length; i < I; ++i) {
		  if (array[i] == item) return true;
		}
		return false;
	}








