/***************************************************************************************************************
@Tipo Arquivo: 		JS - Java Script
@Dt. Atualizacao: 	2009-12-04
@Versão:			1.0
@Autor: 			Eduardo Chiaradia (Dunix)
@MSN | E-Mail:		eduardo_chiaradia@hotmail.com
@OBS:				O Conteudo desta pagina tem como objetivo Trabalhar com mensagens de navegadores incompativeis.


MODO DE USAR:

	INSERIR AS TAGS DE SCRIPTS ABAIXO POIS O SISTEMA TRADUZ PARA QUALQUER IDIOMA, ENTAO É NECESSARIO ALGUMAS LINHAS DE COMPLEMENTOS DO GOOGLE
	ANTES DO BODY, DE PREFERENCIA DENTRO DO HEAD

		*****************************************************************
        <script type="text/javascript" src="http://www.google.com/jsapi"></script><!-- PORÈM É NECESSARIO OS SCRIPTS DO GOOGLE TRADUTOR-->
        <script type="text/javascript">
              google.load("language", "1");
        </script>
		*****************************************************************


@Funcoes neste Arquivo
	
	001		$showAlertBrowser				Essa função retorna uma mensagem dizendo se o navegador é incompativel(IE6 ou inferior) ou não
	
***************************************************************************************************************/


function $showAlertBrowser(language,DnxPath){
	//$showAlertBrowser("en","../DnxType");
		var userBrowser = browserDetect();
		if (userBrowser.browser=="Explorer" && userBrowser.version<7){
			criaDIVAlertBrowser();
			document.getElementById("_showDivAlertBrowser").innerHTML = textAlertBrowser(language,DnxPath);		
		}		
		
}

function criaDIVAlertBrowser() {
        //Essa função serve para criar a camada de _showDivAlertBrowser, que é a camada que irá mostrar a msg de navegar incompativel			
         if (document.getElementById) {
                //Aqui verifico se a camada existe, se a camada existir saio da rotina, sem a necessidade de cria-la
              if (document.getElementById("_showDivAlertBrowser")) {
               return
              }
        

        //porém se ela não existir continuo criando, aqui estou definindo o estilo css para ela, com transparencia.
          var style= 'position:absolute;top:0px;left:25%;width:50%;background-color:#EEEEEE;'
                  + 'color:#000000;font-family:Verdana, Arial, Helvetica, sans-serif;'
                  + 'visibility:visible;'
				  +	'border-style:solid;border-width:1px;z-index:1000;'
                                          
        //Aqui é praticamente o codigo da minha layer, um codigo comum, com o nome que vc quiser											  
          var camada= '<DIV id="_showDivAlertBrowser" style="'+ style +'" align="center"></DIV>'
        
        //Aqui verifico se o codigo contém body			
          if (document.body) {
            //se sim eu insiro no body a camada que eu criei
           if (document.body.insertAdjacentHTML) document.body.insertAdjacentHTML("BeforeEnd",camada);
           
           else if (document.createElement && document.body.appendChild) {
            
            var newNode = document.createElement('div');
            
			//defino um ID para minha camada
            newNode.setAttribute('id',"_showDivAlertBrowser");

            //aplico o stilo que eu criei acima
            newNode.setAttribute('style',style);
            
            //e insiro no body
            document.body.appendChild(newNode);
            
           }
          }
         }         
}

function pfChangeLanguage(texto,camada,IdiomaDestino){			
	//Essa função altera o idioma da pagina
	
	var IdiomaOrigem = "en";
	var resultado ="";

	google.language.translate(texto, IdiomaOrigem, IdiomaDestino, function(result) {
	  if (!result.error) {		
		resultado = result.translation;
		document.getElementById(camada).innerHTML =resultado;
	  }
	});
		
}

function textAlertBrowser(language,DnxPath){

	var textAlert = "";	
	
	var vlMSG = "You are using an older browser, so we can not guarantee full functionality of the system. <br /><br />To fix this please update your browser for a more modern.</div>";
	var vlTitulo = "IMPORTANT";
	var vlLinkFechar = "Close this message";
	
	textAlert = '<table width="100%" border="0" cellspacing="0" cellpadding="0" style="border-style:solid; border-width:1px; border-color:#000; font-family:Verdana, Geneva, sans-serif;font-size:12px;color:#000;" bgcolor="#FCFDDE">';
	textAlert = textAlert + '<tr><td align="right"><b><span style="cursor: pointer;" onclick="document.getElementById(\'_showDivAlertBrowser\').style.visibility = \'hidden\';"><span id="camadaLinkAlertBrowser">' + pfChangeLanguage(vlLinkFechar,"camadaLinkAlertBrowser",language) +'</span></span></b></tr><td>';
	textAlert = textAlert + '<tr>';
	textAlert = textAlert + '<td><table width="100%" border="0" cellspacing="0" cellpadding="0">';
	textAlert = textAlert + '<tr>';
	textAlert = textAlert + '<td colspan="5" align="left"><div><strong><font color="#FF0000" size="3" face="Verdana, Geneva, sans-serif"><span id="camadaTituloAlertBrowser">' + pfChangeLanguage(vlTitulo,"camadaTituloAlertBrowser",language) +'</span><br></font></strong></div>';
	textAlert = textAlert + '<div id="divAlertaNavegador">';
	textAlert = textAlert + '<p><br />';
	textAlert = textAlert + '<div style="color:#000;"><span id="camadaMSGAlertBrowser" style="color:#000;"><font color="#000000" size="1">' + pfChangeLanguage(vlMSG,"camadaMSGAlertBrowser",language) +'</font></span>';
	textAlert = textAlert + '</p>';
	textAlert = textAlert + '<p><font color="#000000" size="2" face="Verdana, Geneva, sans-serif"><br />';
	textAlert = textAlert + '</font></p>';
	textAlert = textAlert + '</div></td>';
	textAlert = textAlert + '</tr>';
	textAlert = textAlert + '<tr>';
	textAlert = textAlert + '<td width="6%" align="center"><img src="' + DnxPath + '/imgs/ie6.gif" width="66" height="57" /></td>';
	textAlert = textAlert + '<td width="4%" align="center" bgcolor="#FCFDDE"><img src="' + DnxPath + '/imgs/green_right_arrow.gif" width="22" height="20" /></td>';
	textAlert = textAlert + '<td width="6%" align="center"><a href="http://www.microsoft.com/windows/internet-explorer/default.aspx"><img src="' + DnxPath + '/imgs/ie7_bt.gif" width="66" height="57" border="0" /></a></td>';
	textAlert = textAlert + '<td width="7%" align="center"><a href="http://www.google.com/chrome/index.html"><img src="' + DnxPath + '/imgs/chrome_bt.gif" width="66" height="57" border="0" /></a></td>';
	textAlert = textAlert + '<td width="7%"><a href="http://www.getfirefox.com/"><img src="' + DnxPath + '/imgs/firefox_bt.gif" width="66" height="57" border="0" /></a></td>';
	textAlert = textAlert + '</tr>';
	textAlert = textAlert + '<tr>';
	textAlert = textAlert + '<td align="center"><span style="color:#000;">IE6</span></td>';
	textAlert = textAlert + '<td align="center" bgcolor="#FCFDDE">&nbsp;</td>';
	textAlert = textAlert + '<td align="center"><a href="http://www.microsoft.com/windows/internet-explorer/default.aspx" target="_NovaTela">IE8</a></td>';
	textAlert = textAlert + '<td align="center"><a href="http://www.google.com/chrome/index.html" target="_NovaTela">Google Chrome</a></td>';
	textAlert = textAlert + '<td><a href="http://www.getfirefox.com/" target="_NovaTela">Firefox</a></td>';
	textAlert = textAlert + '</tr>';
	textAlert = textAlert + '</table></td>';
	textAlert = textAlert + '</tr>';
	textAlert = textAlert + '</table>';
	
	return textAlert;
}
		
		
function browserDetect(){
	
	var BrowserDetect = {
		init: function () {
			this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
			this.version = this.searchVersion(navigator.userAgent)
				|| this.searchVersion(navigator.appVersion)
				|| "an unknown version";
			this.OS = this.searchString(this.dataOS) || "an unknown OS";
		},
		searchString: function (data) {
			for (var i=0;i<data.length;i++)	{
				var dataString = data[i].string;
				var dataProp = data[i].prop;
				this.versionSearchString = data[i].versionSearch || data[i].identity;
				if (dataString) {
					if (dataString.indexOf(data[i].subString) != -1)
						return data[i].identity;
				}
				else if (dataProp)
					return data[i].identity;
			}
		},
		searchVersion: function (dataString) {
			var index = dataString.indexOf(this.versionSearchString);
			if (index == -1) return;
			return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
		},
		dataBrowser: [
			{
				string: navigator.userAgent,
				subString: "Chrome",
				identity: "Chrome"
			},
			{ 	string: navigator.userAgent,
				subString: "OmniWeb",
				versionSearch: "OmniWeb/",
				identity: "OmniWeb"
			},
			{
				string: navigator.vendor,
				subString: "Apple",
				identity: "Safari",
				versionSearch: "Version"
			},
			{
				prop: window.opera,
				identity: "Opera"
			},
			{
				string: navigator.vendor,
				subString: "iCab",
				identity: "iCab"
			},
			{
				string: navigator.vendor,
				subString: "KDE",
				identity: "Konqueror"
			},
			{
				string: navigator.userAgent,
				subString: "Firefox",
				identity: "Firefox"
			},
			{
				string: navigator.vendor,
				subString: "Camino",
				identity: "Camino"
			},
			{		// for newer Netscapes (6+)
				string: navigator.userAgent,
				subString: "Netscape",
				identity: "Netscape"
			},
			{
				string: navigator.userAgent,
				subString: "MSIE",
				identity: "Explorer",
				versionSearch: "MSIE"
			},
			{
				string: navigator.userAgent,
				subString: "Gecko",
				identity: "Mozilla",
				versionSearch: "rv"
			},
			{ 		// for older Netscapes (4-)
				string: navigator.userAgent,
				subString: "Mozilla",
				identity: "Netscape",
				versionSearch: "Mozilla"
			}
		],
		dataOS : [
			{
				string: navigator.platform,
				subString: "Win",
				identity: "Windows"
			},
			{
				string: navigator.platform,
				subString: "Mac",
				identity: "Mac"
			},
			{
				   string: navigator.userAgent,
				   subString: "iPhone",
				   identity: "iPhone/iPod"
			},
			{
				string: navigator.platform,
				subString: "Linux",
				identity: "Linux"
			}
		]
	
	};
	BrowserDetect.init();
	
	return BrowserDetect;
	//alert(BrowserDetect.browser);
	//alert(BrowserDetect.version);
	
}