var heights=[240,244];
var _selected;
var _estado;
var _destacado;
var _fila;
var _indice=-1;
var _prev_indice=-1;
var _width=0;
var _thumb;
var _chain=false;
var _estructura;
var _map={};

function destacadoHandler(event)
{
	event.preventDefault();
	
	//contacto
	$('.gothammini').removeClass('selected');
	$('#contact').fadeOut('fast');
	$("li.contact").animate({marginTop:'150px'},500);
	
	//console.log("---------------- destacado ::"+_estado);
	
	if (_estado==2){
		//console.log("---------------- destacado return wecreate ::"+$.address.path());
		if ($.address.path() != "/wecreate"){
			$.address.value("/wecreate");
		}
	} else if (_estado==1){
		_estado=0;
		_destacado=false;
		$("#destacado").fadeOut();
		$(".topbutton").addClass('show');
		$(".toread .container").removeClass('open');
		$(".toread .container").addClass('close');
		$(".toread .container").animate({height:'150px'},500);
	} else if (_estado==0){
		_estado=1;
		_destacado=true;
		if ($(".toread .container").hasClass('close')){
			$(".toread .container").removeClass('close');
			$(".toread .container").animate({height:'320px'},500);
		}
		$("#destacado").fadeIn();
		$(".topbutton").removeClass('show');
	}
}
function contactoHandler(event)
{
	event.preventDefault();
	
	if ($(event.currentTarget).hasClass('selected')){
	
		$(event.currentTarget).removeClass('selected');
		$.address.value("/wecreate");
		
	} else {
		$.address.value("/contact");
	}
}

function closeDetalleHandler(event)
{
	event.preventDefault();
	_chain=false;
	_prev_indice=_indice;
	_indice=-1;
	//console.log("closeDetalleHandler _prev_indice: "+_prev_indice);
	closeDetalle();
	$.address.value("/wecreate");
}
function closeDetalle()
{	
	if ($("#detalle").length > 0){
		var width=$(".toread .container").width();
		var items;
		if (width==700){
			items=4;
		} else if (width==940) {
			items=5;
		} else {
			items=6;
		}
		//console.log("closeDetalle _prev_indice: "+_prev_indice+" :: "+items);
		var fila=parseInt(_prev_indice/items);
		
		$('.thumb').each(function(index,element){
			if ((index >= (fila*items)) && (index < (fila+1)*items)){
				$(element).animate({'marginBottom':'40px'},600);
			}
		})
		$('#detalle').animate({'height':'0px'},600, function(){
			$('#detalle').remove();
			if (_chain){
				_chain=false;
				openDetalle();
			} else {
				//_thumb.removeClass('selected-proyect');
				$(_thumb).find('.rollover').hide();
				$(_thumb).find('.tip').hide();
				_thumb=null;
				//$.scrollTo('div.toread', 300);
			}
		});
	}
}
function openDetalle()
{
	var width=$(".toread .container").width();
	var items;
	if (width==700){
		items=4;
	} else if (width==940) {
		items=5;
	} else {
		items=6;
	}
	var fila=parseInt(_indice/items);
	//console.log("fila: "+fila+" | indice: "+_indice);
	
	var offset=$('.thumb').eq(fila*items).position();
	var height=$('.thumb').eq(fila*items).height();
	
	$('.thumb').each(function(index,element){
		if ((index >= (fila*items)) && (index < (fila+1)*items)){
			$(element).animate({'marginBottom':'508px'},600);
		} else {
			$(element).animate({'marginBottom':'40px'},600);
		}
	})
	var route=$.address.pathNames();
	var id=_map[route[1]];
	$.get("./cms/functions/desktop/get_detalle_proyecto.php", {id:id},
				function(data){
					//console.log(" /////////////// "+JSON.stringify(data));
					if (data.link==""){
						$(".tosee .container").append(ich.detalle(data));
					} else {
						$(".tosee .container").append(ich.detallefull(data));
					}
					
					$('#detalle').slides({
						preload: true,
						preloadImage: 'images/loading.gif',
						generatePagination: true,
						paginationClass: 'slide-pagination'
					});
			
					$('#detalle').css({top: offset.top+height+40});
					$('#detalle').animate({'height':'428px'},600, function(){
						$.scrollTo('div.thumb:eq('+_indice+')', 300);
					});
				},
				"json");

	
	
}

function works()
{
	if (_thumb != null){
		$(_thumb).find('.rollover').hide();
		$(_thumb).find('.tip').hide();
	}
	//console.log(":::::::: "+$.address.path())
	var path=$.address.path().substr(1);
	if ($('a[href="'+path+'"]').length==0){
		$.address.value("/wecreate");
	} else {
		_thumb=$('a[href="'+path+'"]').closest('.thumb');
		_thumb.find('.rollover').show();
		_thumb.find('.tip').show();
		if (_indice != -1){
			_prev_indice=_indice;
		}
		_indice=$('.thumb').index(_thumb);
		
		if ($('#detalle').length > 0){
			//console.log("click closeDetalle");
			closeDetalle();
			_chain=true;
		} else {
			//console.log("click openDetalle");
			openDetalle();
		}
	}
}
function wecreate()
{
	_estado=1;
	_destacado=true;
	
	if (_thumb != null){
		_chain=false;
		_prev_indice=_indice;
		_indice=-1;
		closeDetalle();
	}
	//contacto
	$('.gothammini').removeClass('selected');
	$('#contact').fadeOut('fast');
	$("li.contact").animate({marginTop:'150px'},500);
			
	$("#destacado").fadeIn();
	$(".topbutton").removeClass('close');
	$('.gotham').removeClass('selected');
	$('.content').each(function(index,element){
		$(element).animate({height:'0px'},500);
	})
	$('.gotham')
		.not(function(index){
			return ($(this).attr('href')!='#wecreate');
		}).addClass('selected');
	_selected=null;
	$(".toread .container").animate({height:'320px'},500);
	
	//$.scrollTo('div.toread', 300);
}
function open_content(what)
{
	var _content=$('a[href="'+what+'"]').siblings('.content').get(0);
	
	if (_content == _selected){
		$.address.value("/wecreate");
	} else {
		//contacto
		$('.gothammini').removeClass('selected');
		$('#contact').fadeOut('fast');
		$("li.contact").animate({marginTop:'150px'},500);
			
		var indice=$('.gotham').index($('a[href="'+what+'"]'));
		var _height=heights[indice];
		$(".topbutton").removeClass('show');
		$(".toread .container").removeClass('close');
	
		_estado=2;
		_destacado=false;
		$("#destacado").fadeOut();
		$(".topbutton").addClass('close');
		_selected=_content;
		$('a[href="'+what+'"]').addClass('selected');
		$('.gotham').not($('a[href="'+what+'"]')).removeClass('selected');
		$('.content').not($(_selected)).each(function(index,element){
			$(element).animate({height:'0px'},500);
		})
		$(_selected).animate({height:_height+'px'},500);
		$(".toread .container").animate({height:(_height+320)+'px'},500);
	}
}

function contact()
{
	_estado=2;
	_destacado=false;
	$('.content').each(function(index,element){
		$(element).animate({height:'0px'},500);
	})
	$(".topbutton").removeClass('show');
	$(".topbutton").addClass('close');
	$('.gotham').removeClass('selected');
	_selected=null;
	$('a[href="#contact"]').addClass('selected');
	$("#destacado").fadeOut();
	$("li.contact").animate({marginTop:'300px'},500);
	$(".toread .container").animate({height:'470px'},500);
	$('#contact').fadeIn();
	$.scrollTo('div.toread', 300);
}
$(window).load(function () {

	//console.log("window.load::"+$.address.pathNames());
	
	$.address.change(function(event) {   
    	//console.log("Route::"+$.address.pathNames());
    	var route=$.address.pathNames();
    	if (route.length==0){
			$.address.value("/wecreate");
    	} else {
    		if (route[0]=="wecreate"){
    			//console.log("Route::We create "+$.address.path());
    			wecreate();
    		}
    		if (route[0]=="work"){
    			//console.log("Route::Work "+$.address.path());
    			works();
    		}
    		if (route[0]=="weare"){
    			//console.log("Route::We are "+$.address.path());
    			open_content('#weare');
    		}
    		if (route[0]=="what"){
    			//console.log("Route::What "+$.address.path());
    			open_content('#what');
    		}
    		if (route[0]=="contact"){
    			//console.log("Route::Contact "+$.address.path());
    			contact();
    		}
    	}
	})
	
	$.address.update();
})
	
$(document).ready(function(){
	
	//console.log("document.ready");
	
	_estado=1;
	_destacado=true;
	jQuery.easing.def = "easeOutQuad";
	
	$.address.crawlable(true).init(function(event) {
		$('div.thumb a').address();
		$('ul.nav a').address();
		//$('.foot a[href^=#]').address();
	})
	
	$.get("./cms/functions/desktop/get_proyectos.php", {},
				function(data){
					_estructura=data;
					for (var i = 0; _estructura.length > i; i++) {  
					    _map[_estructura[i].url_friendly] = _estructura[i].id;  
					}
					//console.log(JSON.stringify(_estructura));
				},
				"json");
				
	$(window).bind('resize', function(event){
		var width=$(".toread .container").width();
		if (width==700){
			$('ul.nav li div.content').css('font-size', '24px');
			$('ul.nav li div.content').css('line-height', '26px');
		} else if (width==940) {
			$('ul.nav li div.content').css('font-size', '28px');
			$('ul.nav li div.content').css('line-height', '30px');			
		} else {
			$('ul.nav li div.content').css('font-size', '30px');
			$('ul.nav li div.content').css('line-height', '34px');			
		}
		
		if ((_indice != -1) && (_width != width)){
			var items;
			_width=width;
			if (width==700){
				items=4;
			} else if (width==940) {
				items=5;
			} else {
				items=6;
			}
			_fila=parseInt(_indice/items);
			
			$('.thumb').each(function(index,element){
				if ((index >= (_fila*items)) && (index < (_fila+1)*items)){
					$(element).css({'marginBottom':'508px'});
				} else {
					$(element).css({'marginBottom':'40px'});
				}
			})
			var offset=$('.thumb').eq(_fila*items).position();
			var height=$('.thumb').eq(_fila*items).height();
		
			$('#detalle').css({top: offset.top+height+40});
		}
	})
	
	
	$(window).trigger('resize');
   	$('.content').css('height','0px');
	
	$('body').removeClass('prehidden');
	QueryLoader.init();
	
	$('#detalle a.detallebutton').live('click', closeDetalleHandler);
	$('ul.nav .gothammini').bind('click',contactoHandler);
	$('.topbutton').bind('click',destacadoHandler);
	
	$("a[rel^='prettyPhoto']").prettyPhoto({
		deeplinking: false,
		markup: '<div class="pp_pic_holder"> \
						<div class="ppt">&nbsp;</div> \
						<div class="pp_top"> \
							<div class="pp_left"></div> \
							<div class="pp_middle"></div> \
							<div class="pp_right"></div> \
						</div> \
						<div class="pp_content_container"> \
							<div class="pp_left"> \
							<div class="pp_right"> \
								<div class="pp_content"> \
									<div class="pp_loaderIcon"></div> \
									<div class="pp_fade"> \
										<a href="#" class="pp_expand" title="Expand the image">Expand</a> \
										<div class="pp_hoverContainer"> \
											<a class="pp_next" href="#">next</a> \
											<a class="pp_previous" href="#">previous</a> \
										</div> \
										<div id="pp_full_res"></div> \
										<div class="pp_details"> \
											<div class="pp_nav"> \
												<a href="#" class="pp_arrow_previous">Previous</a> \
												<p class="currentTextHolder">0/0</p> \
												<a href="#" class="pp_arrow_next">Next</a> \
											</div> \
											<p class="pp_description"></p> \
											<a class="pp_close" href="#">Close</a> \
										</div> \
									</div> \
								</div> \
							</div> \
							</div> \
						</div> \
						<div class="pp_bottom"> \
							<div class="pp_left"></div> \
							<div class="pp_middle"></div> \
							<div class="pp_right"></div> \
						</div> \
					</div> \
					<div class="pp_overlay"></div>'
	});
		
	$('a[rel=tooltip]').mouseover(function(e) {
		var tip = $(this).attr('title');    
		$(this).attr('title','');
		$('body').append('<div id="tooltip">' + tip + '</div>');     
		$('#tooltip').css('top', e.pageY+20 );
		$('#tooltip').css('left', e.pageX+20 );
		$('#tooltip').fadeIn('500');
		$(e.currentTarget).find('.rollover').show();
	}).mousemove(function(e) {
		$('#tooltip').css('top', e.pageY+20);
		$('#tooltip').css('left', e.pageX+20);
	}).mouseout(function(e) {
		$(this).attr('title',$('#tooltip').html());
		if ($(e.currentTarget).attr('href') != $(_thumb).find('a').attr('href')){
			$(e.currentTarget).find('.rollover').hide();
		}
		$('body').children('div#tooltip').remove(); 
	});
})
