// Scripts gerais da página

//identifica browser
var IE = false, MOZ = false, NN = false;
if (navigator.userAgent.indexOf('MSIE') != -1) IE = true;
else if (navigator.userAgent.indexOf('Firefox') != -1) MOZ = true;
else if (navigator.userAgent.indexOf('Netscape') != -1) NN = true;

//muda fundo da opção do menu, quando o mouse entra ou sai
function selecionar_menu(menu, estado) {
  if (estado) {
    menu.style.backgroundColor = "#A5DEDE";
  } else {
    menu.style.backgroundColor = "";
  }
}

//abre o link do menu espeficidado
function abrir_pagina(celula) {
  //localiza o link cujo pai é a célula passada
  vl = document.links;
  link_atual = null;
  total_links = vl.length;
  for (i = 0; i < total_links; i++) {
    if (vl[i].offsetParent == celula) {
      link_atual = vl[i];
      break;
    }
  }
  //abre o link
  if (link_atual) location.href = link_atual.href;
  else alert('Não foi possível localizar o link...');
}


//Funcões para exibição da janela de contexto das opções do menu
//variável que guarda o timer
var intervalo = null;
//objeto de cada janela
function janela_contexto(nome, texto) {
  this.nome = nome;
  this.id = this.nome + '_contexto';
  this.texto = texto;
  this.aparecendo = false;
  this.ocultando = false;
  this.janela = null;
  this.visibilidade = 0;
  this.imagem = document.getElementById(this.nome);
	this.top = 0;
}

//vetor de janelas
var janelas_contexto = Array();

//inicialização de janelas
function inicializa_janelas() {
  janelas_contexto[0] = new janela_contexto('home', 'Na página inicial do site você encontrará um panorama geral de nossa empresa.');
  janelas_contexto[1] = new janela_contexto('webdesign', 'Na área de <strong>Webdesign</strong> você encontrará informações sobre os sites desenvolvidos e a criação de sites, as vantagens de dos nossos serviços, conhecerá mais sobre a Internet e saberá quais as principais tecnologias e recursos que a <span style="font-weight: bold; color: #CC0000;">Urim Tumim</span> utiliza.');
  janelas_contexto[2] = new janela_contexto('software', 'Na área de <strong>Desenvolvimento de Software</strong> encontram-se as soluções desktop da <span style="font-weight: bold; color: #CC0000;">Urim Tumim</span>. Em breve, um conteúdo mais completo.');
  janelas_contexto[3] = new janela_contexto('design', 'Na área de <strong>Design</strong> estão os trabalhos e artes gráficas produzidas pela <span style="font-weight: bold; color: #CC0000;">Urim Tumim</span>.');
  janelas_contexto[4] = new janela_contexto('sobre', 'Acesse a página para conhecer mais sobre a <span style="font-weight: bold; color: #CC0000;">Urim Tumim</span> e quem a compõe.');
  janelas_contexto[5] = new janela_contexto('faq', '<strong>Alguma dúvida?</strong><br>Então clique aqui e veja as <strong>Perguntas e Respostas</strong> mais freqüentes em nossa área de atuação.');
  janelas_contexto[6] = new janela_contexto('pagamento', 'A <strong>Urim Tumim</strong> deseja um relacionamento com transparência e confiança com seus clientes. Certifique-se aqui em como efetuar o pagamento de nossos serviços.');
  janelas_contexto[7] = new janela_contexto('atendimento', 'Com o <strong>Atendimento Urim Tumim</strong>, através do formulário de contato ou de nosso <strong>e-mail</strong>, você poderá solicitar um orçamento, fazer uma crítica ou sugestão, etc.');
}

//escreve um div que irá conter uma descrição do item (menus principais)
function inicia_janelas_contexto() {
  //pega a referência das linhas da tabela
  linhas = janelas_contexto[0].imagem.offsetParent.offsetParent.rows;
  //escreve cada DIV
  for (i = 0; i < janelas_contexto.length; i++) {
    jan = janelas_contexto[i];
    //calcula a altura
    altura = 167; //início
    if (linhas) {
      for (j = 1; j < linhas.length; j++) {
        celula = linhas[j].cells[0]; //pega a célula da linha j
        if (celula == jan.imagem.offsetParent) break;
        else altura += celula.offsetHeight;
      }
    }
		jan.top = altura;
    //escreve o div 
    document.write('<div id="'+ jan.id +'" style="padding-bottom:3px; padding-right: 3px; top: ' + (altura-90) + '; left: 115; ',
      'visibility: hidden; position: absolute; z-index: 1; filter:alpha(opacity=0,style=0)">',
      '<table border="0" cellspacing="0" cellpadding="0"><tr><td width="40" rowspan="3" align="right" valign="bottom">',
			'<img src="/imagens/janela_contexto_seta.gif" width="30" height="30"></td>',
      '<td width="200"><img src="/imagens/janela_contexto_topo.gif" width="200" height="8"></td>',
      '</tr><tr><td width="200" align="center" valign="top" background="/imagens/janela_contexto_meio.gif">',
			'<table width="200" height="50" border="0" cellpadding="0" cellspacing="0" style="',
			'background-image: url(/imagens/janela_contexto_seta_fundo.gif); background-repeat: no-repeat; background-position: left bottom">',
			'<tr><td class="janela_contexto">' + jan.texto + '</td></tr></table></td></tr><tr>',
      '<td width="200" align="center" valign="top"><img src="/imagens/janela_contexto_base.gif" width="200" height="8">',
			'</td></tr></table></div>' + "\n");
  }
  //captura evento da página
  document.onmousemove = muda_posicao;
}

//inicia a amostragem da janela de contexto
function mostrar_janela_contexto(jan, estado) {
  muda = false;
  if (!jan) return false;
  if (estado && !jan.aparecendo) {
    jan.aparecendo = true;
    muda = true;
  } else if (!estado && !jan.desaparecendo) {
    jan.aparecendo = false;
    muda = true;
  }
  jan.ocultando = !jan.aparecendo;
  //inicia o timer para mostra fade in/fade out
  if (intervalo == null && muda) intervalo = setInterval('muda_visibilidade()', 10);
}

//função que aumenta ou diminui a visibilidade e mostra/oculta os divs
function muda_visibilidade() {
  mudanca = false;
  //percorre janelas
  for (i = 0; i < janelas_contexto.length; i++) {
    jan = janelas_contexto[i];
    if (jan.janela == null) continue;
    mudar_atual = 0;
    //se está sumindo ou aparecendo, coloca valor nas variáveis
    if (jan.aparecendo) mudar_atual = 10;
    else if (jan.ocultando) mudar_atual = -10;
    //muda transparencia
    if (mudar_atual != 0) {
      //realiza alterações
      if (jan.aparecendo && jan.visibilidade < 90) {
        if (jan.visibilidade == 0) {
					jan.janela.style.top = jan.top - jan.janela.offsetHeight;
					jan.janela.style.visibility = '';
				}
        jan.visibilidade += mudar_atual;
        mudanca = true;
      } else if (jan.ocultando) {
        if (jan.visibilidade == 0) jan.janela.style.visibility = 'hidden';
        else {
          jan.visibilidade += mudar_atual;
          mudanca = true;
        }
      }
      //atualiza a visibilidade atual, se mudou
      if (mudanca) {
        if (IE) jan.janela.filters.alpha.opacity = String(jan.visibilidade); //internet explorer
        else if (MOZ || NN) jan.janela.style.MozOpacity = String(jan.visibilidade/100); //mozila/netscape
      }
    } //if mudar
  } //for
  //finaliza o intervalo, caso não tenha mais janelas abertas
  if (!mudanca) {
    clearInterval(intervalo);
    intervalo = null;
  }
}

//atualiza a posição dos divs, de acordo com a posição do mouse
function muda_posicao(e) {
  //pega o objeto de evento
  evt = (e) ? e : eval('event');
  if (!evt) return false;
  target = (evt.target) ? evt.target : eval('evt.srcElement');
  if (!target) return false;
  //verifica o tipo, se não for imagem, ou se não tiver nome, limpa as janelas e sai da rotinas
  if (target.tagName.toUpperCase() != 'IMG' || target.name == '') {
	  if (window.status) window.status = '';
    //verifica se há alguma janela aparecendo e oculta
    for (i = 0; i < janelas_contexto.length; i++) {
      jan = janelas_contexto[i];
      if (!jan.janela) continue;
      mostrar_janela_contexto(jan, false);
    }
  } else { //percorre as janelas e vericica se deve exibir ou ocultar alguma
    if (target.alt) window.status = target.alt;
    for (i = 0; i < janelas_contexto.length; i++) {
      jan = janelas_contexto[i];
      if (!jan.janela) jan.janela = document.getElementById(jan.id);
      if (!jan.janela) continue;
      //verifica se mostra ou oculta a janela
      if (target.name == jan.nome && !jan.aparecendo) mostrar_janela_contexto(jan, true);
      else if (target.name != jan.nome && !jan.ocultando) mostrar_janela_contexto(jan, false);
    }
  }
}