﻿window.App = window.App || {};
App.Abas = [];
//App.Torres = [];
App.EvolucaoTorres = [];
App.EvolucaoDadosTorres = [];
App.ImagensIndex = 0;
App.ImagensSelecionado = 0;
App.FotosIndex = 0;
App.FotosSelecionado = 0;
page.Empreendimentos = {};
App.TorrePlantaIndex = "0";
App.TorrePlantaAtualIndex = 0;
App.TorreFotoEvolucaoAtualIndex = "0";

App.OnEvolucaoObraMesChange = function( data )
{
}

App.FechaImagemAmpliada = function()
{
	App.ImagemAmpliada.divImagemAmpliada.style.display = 'none';
	App.ExibeTela();
}

App.ExibeImagemAmpliada = function(info1, info2)
{
	if( !info2 )
	{
		var sIndex = info1 + 'Selecionado';
		var sTipo = info1 + 'HotPage';

		info1 = App[sTipo][App[sIndex]].Ampliada;
		info2 = App[sTipo][App[sIndex]].Descricao;
	}

	App.EscondeTela();
	App.ImagemAmpliada.divImagemAmpliada.style.position = 'absolute';
	App.ImagemAmpliada.divImagemAmpliada.style.display	= '';
	App.CentralizaControle(App.ImagemAmpliada.divImagemAmpliada);
	App.ImagemAmpliada.divImagemAmpliada.style.zIndex	= 1001;

	App.ImagemAmpliada.ltImagemAmpliada.innerHTML = info2;
	App.ImagemAmpliada.imgAmpliada.src = info1;
}

App.FechaPopNoCorretorOnline = function()
{
	App.PopCorretorOnline.style.display = 'none';
	App.ExibeTela();
}

App.ExibePopNoCorretorOnline = function()
{
	App.PopCorretorOnline.style.position = 'absolute';
	App.PopCorretorOnline.style.display	= '';
	App.CentralizaControle(App.PopCorretorOnline);
	App.PopCorretorOnline.style.zIndex	= 1001;
	App.EscondeTela();
}

App.Inicializa = function()
{
	App.ConteudoAba = $('aba_conteudo');

	if (!App.ConteudoAba)
		return;

	var aba = $('Aba0');
	var idx = 0;
	while (aba)
	{
		App.Abas[idx] = {};
		App.Abas[idx].Link = aba;
		aba = $('Aba' + (++idx));
	}

	//App.PopCorretorOnline = $('divPopCorretorOnline');
	//App.PopCorretorOnline.style.position = 'absolute';

	App.ImagemAmpliada = {};
	App.ImagemAmpliada.divImagemAmpliada = $('divImagemAmpliada');
	App.ImagemAmpliada.ltImagemAmpliada = $('ltImagemAmpliada');
	App.ImagemAmpliada.imgAmpliada = $('imgAmpliada');

	App.Icones = {};
	App.Icones.imgBotaoMaisImagens = $('imgBotaoMaisImagens');
	App.Icones.imgBotaoMaisFotos = $('imgBotaoMaisFotos');
	App.Icones.imgBotaoMaisVideos = $('imgBotaoMaisVideos');
	App.Icones.imgBotaoMaisTourVirtual = $('imgBotaoMaisTourVirtual');
	App.Icones.imgBotaoMaisFotosEvolucao = $('imgBotaoMaisFotosEvolucao');

	App.Icones.imgBulletImagens = $('imgBulletImagens');
	App.Icones.imgBulletVideos = $('imgBulletVideos');
	App.Icones.imgBulletFotos = $('imgBulletFotos');
	App.Icones.imgBulletTourVirtual = $('imgBulletTourVirtual');
	App.Icones.imgBulletFotosEvolucao = $('imgBulletFotosEvolucao');

	App.DivContainer = {};
	//Alguns container são runat Server então não podem ser acessada com o id abaixo
	//App.DivContainer.Imagens = $('containerImagens');
	//App.DivContainer.Videos = $('containerVideos');
	//App.DivContainer.Fotos = $('containerFotos');
	//App.DivContainer.TourVirtual = $('containerTourVirtual');

	//Desabilitar evolução da obra
	App.DivContainer.FotosEvolucao = $('containerFotosEvolucao');
	//App.DivContainer.FotosEvolucao = document.createElement("div");

	App.Lateral = {};

	var l = $('divImagens');
	if (l) App.Lateral.Imagens = l;

	l = $('divFotos');
	if (l) App.Lateral.Fotos = l;

	l = $('divVideos');
	if (l) App.Lateral.Videos = l;

	l = $('divTourVirtual');
	if (l) App.Lateral.TourVirtual = l;

	l = $('divFotosEvolucao');
	if (l) App.Lateral.FotosEvolucao = l;
}

App.MudaImagem = function(idx, tipo)
{
	var sIndex = tipo + 'Index';
	var sTipo = tipo + 'HotPage';
	
	if( tipo == 'Fotos' )
		App.FotoAtualIndice = App.FotosHotPage.length <= idx+App[sIndex] ? App.FotosHotPage.length-1 : idx+App[sIndex];
	if( tipo == 'Imagens' )
		App.ImagemAtualIndice = App.ImagensHotPage.length <= idx+App[sIndex] ? App.ImagensHotPage.length-1 : idx+App[sIndex];

	if( !App[sTipo][idx+App[sIndex]] )
		return;

	page[String.Format("lb{0}Destaque", tipo)].innerHTML = App[sTipo][idx+App[sIndex]].Descricao;
	page[String.Format("img{0}Destaque", tipo)].src = App[sTipo][idx+App[sIndex]].Normal;
	App[tipo+'Selecionado'] = idx+App[sIndex];
}

App.MudaSeletor = function(tipo, dir)
{
	var sIndex = tipo + 'Index';
	var sTipo = tipo + 'HotPage';

	App[sIndex] += dir;
	App[sIndex] = Math.max( App[sIndex], 0 );
	App[sIndex] = Math.min( App[sIndex], App[sTipo].length-4 );
	
	var l = App[sTipo].length;
	if(App[sTipo].length > 4 )
		for(var i=0; i<Math.min(l,4); i++)
			page[ String.Format('img{0}Lista{1}', tipo, i+1) ].src = App[sTipo][i+App[sIndex]].Normal;

	return false;
}

App.MudaExibicaoLateral = function( item )
{
	for(var p in App.Lateral)
	{
		if(!App.Lateral[p].style)
			continue;

		if( item == p )
		{
			var close = App.Lateral[p].style.display != 'none';
			App.Lateral[p].style.display		= close?'none':'';
			App.Icones['imgBullet' + p].src = String.Format('{2}include/img/bullet_hotpage_{0}_{1}.jpg', p, close ? 'off' : 'on', ResourcePath);
			App.Icones['imgBotaoMais' + p].src = ResourcePath + (close ? "include/img/multimidia_mais.gif" : "include/img/multimidia_menos.gif");
			break;
		}
	}
}

App.MudaExibicaoLateralManual = function( item, exibir )
{
	for(var p in App.Lateral)
	{
		if(!App.Lateral[p].style)
			continue;
        
		if( item == p )
		{
			var close = !exibir;
			App.Lateral[p].style.display		= close?'none':'';
			App.Icones['imgBullet' + p].src = String.Format('{2}include/img/bullet_hotpage_{0}_{1}.jpg', p, close ? 'off' : 'on', ResourcePath);
			App.Icones['imgBotaoMais' + p].src = ResourcePath + (close ? "include/img/multimidia_mais.gif" : "include/img/multimidia_menos.gif");
			break;
		}
	}
}

App.MudaAba = function(idx, tipo)
{
	var img = App.ImagensAbas[idx];

	page.imgLogo.src = img;
	for (var i = 0; i < App.Abas.length; i++)
	{
		if (i == idx)
		{
			App.ConteudoAba.innerHTML = App.Abas[i].Conteudo;
			App.Abas[i].Link.className = 'cinzaM sLinha upperCase b nove';
		}
		else
		{
			App.Abas[i].Link.className = 'azulpisc sLinha upperCase b nove';
		}
	}

	switch (tipo.toLowerCase())
	{
		case "ficha técnica":
			RegistraControlesFichaTecnica();
			for (var j = 0; j < App.Torres.length; j++)
				App.Torres[j].lnkTorreFichaTecnica = $('lnkTorreFichaTecnica' + j)
			App.MudaTorreFichaTecnica(0);
			App.DivContainer['FotosEvolucao'].style.display	= 'none';
			break;
            
		case "plantas":
			RegistraControlesPlanta();
			App.InicializaPlantasTorres();
			App.DivContainer['FotosEvolucao'].style.display	= 'none';
			break;
            
		case "acompanhe a obra":
			RegistraControlesEvolucao();
			if (App.EvolucaoTorres[0])
			{
				App.MudaTorreEvolucao(0, App.EvolucaoTorres[0].TorreID);
			}
			else
				App.MudaTorreEvolucao(0);

			App.DivContainer['FotosEvolucao'].style.display	= '';
			//App.MudaExibicaoLateralManual('Fotos', false);
			//App.MudaExibicaoLateralManual('Imagens', false);
			//App.MudaExibicaoLateralManual('FotosEvolucao', true);
			break;
            
		case "localização":
			InicializaMapa(App.Localizacao);
			App.DivContainer['FotosEvolucao'].style.display	= 'none';
			break;
	}
}

App.SelecionaTorre = function(idx)
{
	var ctrl = $('lnkTorre0');
	var i = 0;
	while(ctrl)
	{
		ctrl.style.color = (i++==idx?"#7E8381":"#3CA3A5");
		ctrl = $('lnkTorre'+i);
	}
}

App.BotoesPorTorre = 6;
App.MudaTorreEvolucao = function(idx, torreID)
{
	for (var i = 0; i < App.Torres.length; i++)
		if (App.Torres[idx = i].ID == torreID)
		break;

	App.TorreAtual = App.Torres[idx];
	App.TorreAtualIdx = idx;

	var img = App.FotosObraHotPage.FindFirst(function(i) { return i.TorreID == App.TorreAtual.ID; });
	var url = page.ResolveUrl(String.Format('~/EvolucaoObra/Info.ashx?iframe=1&id={0}&torreid={1}', page.QueryString['id'], App.TorreAtual.ID));
	var divIfrEvolucao = $('divIfrEvolucao');

	divIfrEvolucao.style.width = '580px';

	divIfrEvolucao.innerHTML = String.Format('<iframe id="iframeFlex" name="iframeFlex" frameborder="0" src="{0}" style="border-color:Transparent;width:100%;height:400px"></iframe>', url);
	page.lbNomeTorreEvolucao.innerHTML = App.TorreAtual.NomeEvolucao;
	page.lbNomeTorreEvolucao.innerHTML = '<br />';

	App.SelecionaTorre(idx);
	if (App.TorreAtual.Evolucao && App.TorreAtual.Evolucao.length)
	{
		App.EvolucaoDataAtual = App.TorreAtual.Evolucao.Last().Data;
		App.MontaBotoesMeses(idx);
	}
}

App.MontaBotoesMeses = function(torreIdx, idx) 
{
	var torre = App.Torres[torreIdx];
	if (!torre)
		return;

	idx = idx || 0;
	App.IndiceBotoesTorre = idx;
	var arr = torre.Evolucao;

	if (arr.length > App.BotoesPorTorre) {
		var arrTemp = [];
		for (var i = 0; i < App.BotoesPorTorre; i++)
			arrTemp.push(arr[arr.length - App.BotoesPorTorre + i + idx]);
		arr = arrTemp;
	}

	page.rptEvolucaoMeses.Bind(arr);
	$('rptBotoesEvolucaop').innerHTML = page.rptEvolucaoMeses.InnerHTML();
}

App.TestaIndiceBotaoEvol = function( data )
{
	return App.EvolucaoDataAtual == data;
}

App.SelecionaEvolucao = function(idx, data)
{
	if(App.TestaIndiceBotaoEvol(data))
		return;
		
	if( App.TorreAtual.Evolucao.length > App.BotoesPorTorre )
		idx = idx + (App.TorreAtual.Evolucao.length - App.BotoesPorTorre + App.IndiceBotoesTorre);
	App.EvolucaoDataAtual = data
    
    //frames['iframeFlex'].AtualizaMes(idx);
    for (i=0; i<window.frames.length; i++)
    {
        if (window.frames[i].name == 'iframeFlex' && window.frames[i].AtualizaMes)
            window.frames[i].AtualizaMes(idx);
    }
    
    App.MontaBotoesMeses( App.TorreAtualIdx, App.IndiceBotoesTorre );
}

App.MudaTorrePlanta = function(idx, torreID)
{
	var url = page.ResolveUrl(String.Format('~/FotoXml/Info.ashx?iframe=1&id={0}&torreid={1}', page.QueryString['id'], torreID ) );
	$('divTestePrantas').innerHTML = String.Format( '<iframe frameborder="0" src="{0}" style="border-color:Transparent;width:100%;height:100%"></iframe>', url );

	App.TorrePlantaAtualIndex = 0;
	App.TorrePlantaIndex = idx || 0;
	page.rptPlantasTorres.Bind(App.Torres[App.TorrePlantaIndex].Fotos);
	App.TorreFotoEvolucaoAtualIndex = 0;
	
	App.SelecionaTorre(idx);
	page.lbNomeTorrePlanta.innerHTML = App.Torres[idx].Nome;
}

App.MudaPlanta = function(img, texto, ampliada, idx)
{
	App.TorrePlantaAtualIndex = idx || 0;
	page.rptPlantasTorres.Bind(App.Torres[App.TorrePlantaIndex].Fotos);
	App.Torres.divFotosTorres.innerHTML = page.rptPlantasTorres.InnerHTML();
	App.Torres.ltPlantaGrande.innerHTML = texto;
	App.DescricaoPlanta = texto;
}

App.InicializaPlantasTorres = function()
{
	if( App.Torres.length )
	{
		App.Torres.ltPlantaGrande = $('ltPlantaGrande');

		for(var i=0; i<App.Torres.length; i++)
			App.Torres[i].Link = $( String.Format('lnkTorre{0}', i) );

		App.MudaTorrePlanta(0, App.Torres[0].ID);
	}
}

App.MudaTorreFichaTecnica = function(torreIdx)
{
	var torre = App.Torres[torreIdx];

	App.SelecionaTorre(torreIdx);

	page.lbNomeTorreFichaTecnica.innerHTML = torre.Nome;
	page.lbAptosAndar.innerHTML = torre.AptosAndar;
	page.lbArea.innerHTML = torre.Area;
	page.lbDataEntrega.innerHTML = (torre.DataEntrega||'').ToString('MMM/yyyy').Capitalize();
	page.lbDataLancamento.innerHTML = (torre.DataLancamento||'').ToString('MMM/yyyy').Capitalize();
	page.lbDormitorios.innerHTML = torre.Dormitorios;
	page.lbFase.innerHTML = torre.Fase;
	page.lbSuites.innerHTML = torre.Suites;
	page.lbUnidadesAndar.innerHTML = torre.UnidadesAndar || '';
	page.lbVagas.innerHTML = torre.Vagas;
	if (!page.IsPaginaCorretor && torre.Valor.EndsWith('mil'))
	{
		page.lbValor.innerHTML = torre.Valor + '*';
		$('lbAvisoPreco').innerHTML = '* Valor sujeito à confirmação. Consulte o <a href="javascript:CorretorOnline.ExibePopup();" style="text-decoration:none;color:#D21034"><b>Corretor On Line</b></a>.';
	}
	else
	{
		page.lbValor.innerHTML = torre.Valor;
		$('lbAvisoPreco').innerHTML = '&nbsp;';
	}

	App.FichaTecnica = {};
	var ctrl = $('divConteudoFichaTecnica');
	for (var i = 0; i < ctrl.childNodes.length; i++)
	{
		var node = ctrl.childNodes[i];
		for (var j = 0; j < node.childNodes.length; j++)
		{
			var tipo = $$(node.childNodes[j], 'tipo');
			if (!String.IsNullOrEmpty(tipo))
				App.FichaTecnica[tipo] = node.childNodes[j];
		}
	}

	if (App.Empreendimento.TipoID == 3 || App.Empreendimento.TipoID == 4)
	{
		if (page.IsIE6)
		{
			App.FichaTecnica.Dormitorios.style.position = 'absolute';
			App.FichaTecnica.Dormitorios2.style.position = 'absolute';
			App.FichaTecnica.Suites.style.position = 'absolute';
			App.FichaTecnica.Suites2.style.position = 'absolute';
		}
		else
		{
			App.FichaTecnica.Dormitorios.style.display = 'none';
			App.FichaTecnica.Dormitorios2.style.display = 'none';
			App.FichaTecnica.Suites.style.display = 'none';
			App.FichaTecnica.Suites2.style.display = 'none';
		}
	}
}


page.AddOnLoad( App.Inicializa );

App.ExibeFotosAmpliadas = function(idx, tipo)
{
	if(!App.ltTituloImagemAmpliada)
		App.ltTituloImagemAmpliada = $('ltTituloImagemAmpliada');

	idx = parseInt(idx);
	var pics = {};

	switch( tipo )
	{
		case 'Fotos':
			pics = App.FotosHotPage;
			if (isNaN(idx) )
				idx = App.FotoAtualIndice == null ? 0 : App.FotoAtualIndice;
			App.ltTituloImagemAmpliada.innerHTML = 'Imagens do Decorado';
			break;
		case 'Imagens':
			pics = App.ImagensHotPage;
			if (isNaN(idx) )
				idx = App.ImagemAtualIndice == null ? 0 : App.ImagemAtualIndice;
			App.ltTituloImagemAmpliada.innerHTML = 'Imagens do Empreendimento';
			break;
		case 'Plantas':
			pics = App.Torres[parseInt(App.TorrePlantaIndex)].Fotos;
			if ( isNaN(idx) )
				idx = App.TorrePlantaAtualIndex == null ? 0 : App.TorrePlantaAtualIndex;
			App.ltTituloImagemAmpliada.innerHTML = 'Plantas';
			break;
        case 'FotosEvolucao':
            pics = App.TorreAtual.FotosEvolucaoMesAno;
			if ( isNaN(idx) )
				idx = App.TorreFotoEvolucaoAtualIndex == null ? 0 : App.TorreFotoEvolucaoAtualIndex;
			App.ltTituloImagemAmpliada.innerHTML = 'Fotos da Evolução da Obra';
			break;
	}

	idx = idx > pics.length ? pics.length - 1 : idx;
	App.divImagemAmpliada2 = $('divImagemAmpliada2');
	App.imgAmpliada2 = $('imgAmpliada2');
	App.divDescricaoAmpliada2 = $('divDescricaoAmpliada2');
	App.divFotosPosicao = $('divFotosPosicao');
	App.divNomeEmpreendimento = $('divNomeEmpreendimento');
	App.divNomeCidade = $('divNomeCidade');
	App.lnkAnterior = $('lnkAnterior');
	App.lnkProxima = $('lnkProxima');

	if( !App.EscondeTela.Count )
		App.EscondeTela();
		
	App.divImagemAmpliada2.style.position = 'absolute';
	App.divImagemAmpliada2.style.display = '';
	App.CentralizaControle(App.divImagemAmpliada2);
	App.divImagemAmpliada2.style.zIndex = 1001;

	App.imgAmpliada2.src = pics[idx].Ampliada;
	App.divDescricaoAmpliada2.innerHTML = "Descrição: " + pics[idx].Descricao; ;
	App.divFotosPosicao.innerHTML = "Foto " + eval(idx + 1) + " de " + pics.length;
	App.divNomeEmpreendimento.innerHTML = App.Empreendimento.Nome;
	App.divNomeCidade.innerHTML = App.NomeCidade;

	App.lnkAnterior.onclick = function() { App.ExibeFotosAmpliadas(eval(idx - 1) < 0 ? 0 : eval(idx - 1), tipo); return false; };
	App.lnkProxima.onclick = function() { App.ExibeFotosAmpliadas(eval(idx + 1) > pics.length - 1 ? pics.length - 1 : eval(idx + 1), tipo); return false; };
}

App.FechaFotosAmpliadas = function()
{
	App.ExibeTela();
	App.divImagemAmpliada2.style.display = 'none';
}

App.MudaMesEvolucaoObra = function(data, torreID)
{
	var d = Date.Parse(data);

	var divIfrFotosEvolucao = $('divIfrFotosEvolucao');

	var ano = d.getFullYear().toString();
	var mes = (d.getMonth() + 1).toString();
	if (mes.length == 1)
		mes = '0' + mes;

	var mesAno = String.Format("{0}-{1}", ano, mes);

	var urlFotosEvolucaoASHX = page.ResolveUrl(String.Format('~/FotoEvolucaoXml/FotoEvolucao_{0}_{1}.ashx?iframe=1', mesAno, torreID));
	divIfrFotosEvolucao.innerHTML = String.Format('<iframe frameborder="0" src="{0}" style="border-color:Transparent;width:320px;height:216px"></iframe>', urlFotosEvolucaoASHX);

	//Cria array somente com as fotos da torre e do mesAno selecionado
	var torre = App.TorreAtual;
	torre.FotosEvolucaoMesAno = [];
	for (var i = 0; i < torre.FotosEvolucao.length; i++)
	{
		if (torre.FotosEvolucao[i].Data.getFullYear() == d.getFullYear() && torre.FotosEvolucao[i].Data.getMonth() == d.getMonth())
			torre.FotosEvolucaoMesAno.push(torre.FotosEvolucao[i]);
	}
	App.TorreFotoEvolucaoIndex = "0";
	App.TorreFotoEvolucaoAtualIndex = "0";
}

App.GetIpix = function(url)
{
	var html = '<applet name="IPIX_Java_Viewer" code="IpixViewer.class" archive="' + page.ResolveUrl('~/include/IpixViewer.jar') + '" width="520" height="290">' +
              '<param name="url" value="' + page.ResolveUrl(url) + '"/>' +
              '<param name="splash" value="images/black.gif"/>' +
              '<param name="splashbg" value="000000"/>' +
              '<param name="spinspeed" value="6"/>' +
            '</applet>';
	return html;
}